luckybackup-0.5.0/0000777000175000017500000000000013367645635013423 5ustar luckybluckybluckybackup-0.5.0/license/0000777000175000017500000000000013160536210015020 5ustar luckybluckybluckybackup-0.5.0/license/gpl.txt0000666000175000017500000010462612720520332016353 0ustar luckybluckyb luckybackup This program is distributed under the terms of the GPL v3. 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 . luckybackup-0.5.0/license/gpl.html0000666000175000017500000021637613157767344016533 0ustar luckybluckyb

(C) 2012-2017, Loukas Avgeriou

This program is distributed under the terms of the GPL v3.



GNU GENERAL PUBLIC LICENSE

Version 3, 29 June 2007

Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>

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.



<one line to give the program's name and a brief idea of what it does.>

Copyright (C) <year> <name of author>



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 <http://www.gnu.org/licenses/>.



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:



<program> Copyright (C) <year> <name of author>

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

<http://www.gnu.org/licenses/>.



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

<http://www.gnu.org/philosophy/why-not-lgpl.html>.

luckybackup-0.5.0/menu/0000777000175000017500000000000013367342200014345 5ustar luckybluckybluckybackup-0.5.0/menu/luckybackup.xpm0000666000175000017500000002103711153764332017420 0ustar luckybluckyb/* XPM */ static char *OrzEra[]={ "32 32 407 2", "Qt c None", "aF c #c0b6b6", "aT c #c2bbbb", "cf c #c3bebe", "el c #c3c3c4", "#A c #c4c4c5", "cp c #c4c5c5", "a3 c #c5c4c4", "b4 c #c5c5c5", ".# c #c5c5c6", "an c #babac0", "aZ c #bdafaf", "cM c #bdc0c5", "ab c #bdc3c8", "aR c #beb0b0", "dT c #bebfc2", "aB c #bfb2b2", "aq c #bfc0c4", "ar c #c0c3c6", "#z c #c1c4c7", "ax c #c2bdbd", "#O c #c2c3c5", "#1 c #c2c4c5", ".B c #c2c4c6", "av c #c2c4c7", "#b c #c3c4c5", "#t c #c3c4c6", "dx c #c3c5c7", "cj c #c4c5c6", ".A c #c4c5c7", "dz c #c5c5c5", ".l c #c5c5c6", "eo c #979cb5", "ap c #a2a5b7", "en c #a3a6b8", ".3 c #a3abbf", ".2 c #a3adc1", "es c #a7afc2", ".1 c #a7b3c6", "cn c #a8afc0", "ao c #acadba", "a5 c #b28f8f", "bh c #b49393", "em c #b5b6be", "et c #b5b9c4", "bb c #b79c9c", "cq c #b7bfc8", "bT c #b8a1a1", "cr c #b8c0c8", ".j c #b8c3ce", "aI c #b9a3a3", "co c #b9bdc5", "a1 c #baa5a5", "aV c #baa6a6", "aS c #baa7a7", ".S c #bac2cb", "br c #bba8a8", "aN c #bba9a9", "aM c #bcaaaa", "a2 c #bcabab", "a0 c #bdaeae", "aG c #beb0b0", "aY c #beb1b1", "aJ c #bfb3b3", "aU c #bfb4b4", ".a c #bfc5cb", "bw c #c0b6b6", "bC c #c0b7b7", "#P c #c0c0c3", "aH c #c1baba", "da c #c1c3c6", "eu c #c3c4c5", ".k c #c3c6c9", "at c #b89f9f", "cg c #b9a5a5", "e. c #b9b9c0", "c4 c #bdbec1", "#k c #c0c0c3", ".m c #c0c5c8", "ch c #c1baba", "au c #c3c0c0", "#W c #c3c4c6", "cR c #c3c5c6", "aA c #c4c1c1", "cm c #949ebb", "bS c #aa7878", "bg c #ac7f7f", "bt c #ad8282", "bI c #af8787", "bL c #b18b8b", "aW c #b18d8d", "c3 c #b2c2cf", ".b c #b3c5d3", "d9 c #b5c0cc", "bE c #b8a0a0", "c. c #baa6a6", "bX c #bba9a9", "aL c #bcaaaa", "bK c #bcabab", "ae c #6e75a3", "ad c #9397b1", "aD c #a15e5e", "aQ c #a36363", "ai c #a7b5c6", "bn c #a87373", "ac c #aaabb9", "cS c #acacb7", "bm c #ad8181", "cG c #adadb9", "bA c #ae8585", "cu c #aeaeba", "cA c #b0bac8", "am c #b0bfcd", "dg c #b1c3d3", "be c #b28f8f", "dp c #b2bbc7", "bU c #b39393", "dA c #b3b4bd", "dS c #b3c2cf", "cY c #b5bdc8", "cF c #b5c2cd", "b2 c #b69b9b", "#c c #b7bec8", "ck c #b8b9bf", ".T c #b8bfc5", "#j c #b8c1ca", "aw c #b9a2a2", "#8 c #b9bfc7", "#V c #bac1c7", "#9 c #bac1c8", "#I c #bbc1c7", "ci c #bbc3ca", "bf c #bcabab", "aC c #bcadad", "bz c #bdaeae", "dy c #bebec1", "aj c #bec2c6", "#d c #bfc3c6", "az c #c0b6b6", "dq c #c0c5cb", "ay c #c1baba", "e# c #787ca4", "#l c #898cac", ".4 c #9ba4bd", "bQ c #a26161", "dr c #a3b6d0", ".n c #a4c0d9", "d# c #a5b1c7", "bP c #a87373", "b3 c #a87474", "ba c #aa7979", "bN c #ac7e7e", "a7 c #ad8181", "bv c #af8888", "#2 c #b1b5c1", "#B c #b2b4bd", "cs c #b2bfcc", "b8 c #b39494", "#a c #b3bfcc", "bO c #b49595", "b7 c #b49696", "ce c #b49797", "ek c #b5bdc9", "aE c #bba7a7", "db c #bcc3ca", "a8 c #bdaeae", "cB c #bdc1c7", "cX c #6c87be", "dB c #6f739f", "af c #6f7aaa", "cL c #798cbc", "cz c #7f94c0", "aa c #8db5db", ".U c #90b1d3", "#i c #95b8d9", "#u c #9bb8d4", "#N c #9db3ca", "as c #a3bbd2", "ct c #a4bed5", "cZ c #abbbd0", ".z c #b5c3d0", "cI c #222576", "cU c #222676", "cV c #222677", "cJ c #222778", "c8 c #272e7f", "cK c #283589", "cW c #28368a", "dl c #293385", "cT c #2c327f", "c7 c #2c3381", "cH c #2d3480", "c6 c #2e3783", "dD c #2e398a", "dE c #2e3c8f", "dm c #2e3f93", "c9 c #2e4296", "dk c #2f3886", "cw c #2f3c8b", "cv c #313d8a", "dF c #33489a", "#T c #334d9a", "dC c #343f8b", "dX c #344493", "dY c #344797", "#6 c #344c99", "dW c #354493", "#S c #364d99", "dZ c #384f9d", "#5 c #3b519c", "#G c #3b58a4", "ec c #3c509c", "#F c #3c55a1", "c5 c #3d4487", "cx c #3e4f97", "#E c #3e57a2", "d0 c #3e58a8", "ed c #3f56a4", "dV c #404a90", "ee c #425ba8", "#p c #4264ae", "d1 c #435ead", "dG c #4461ad", "#7 c #4670b8", "#o c #4864ab", "ef c #4866b0", "d2 c #4867b3", ".9 c #486bb3", "dj c #494e8d", "eb c #49599e", "#4 c #4a63a7", "d3 c #4a6ab6", "#. c #4a73b9", "#U c #4b77bc", "dn c #4c68b1", "eg c #4d6bb4", "d4 c #4d70ba", "#R c #4e67a9", ".P c #5078bc", "d5 c #5176bf", "ah c #5471b0", ".O c #547bbd", "dh c #555b91", "d. c #5572b7", "#H c #5581c2", "ea c #56619c", "#n c #5771b1", "cy c #586aa8", ".8 c #5879ba", "d6 c #5880c6", "dO c #5881c6", "#D c #596dab", "eh c #5b7abd", "dP c #5b85ca", "dH c #5c7abb", "#q c #5d83c1", ".Q c #5e89c7", "ag c #6071a9", ".N c #6088c6", ".7 c #6380bc", ".w c #6491cd", ".v c #6491ce", "du c #6494d2", ".u c #6495d1", "dN c #6589c8", "dQ c #6593d1", "dt c #6692cf", ".M c #678ec9", ".L c #688fc9", "d7 c #6891cf", ".t c #689ad4", ".K c #6991ca", "#C c #6a72a3", ".6 c #6a7db1", ".J c #6a96cf", "de c #6b9dd5", ".s c #6ca0d9", "eq c #6e7aa9", ".I c #6e9dd6", "#m c #6f7aab", "#s c #6f92c6", "dd c #6f9bd3", ".r c #6fa4dd", "a. c #709fd5", "c1 c #70a0d5", "a# c #71a4db", "#Y c #71a5de", ".x c #729cd1", "#L c #72aae4", "#f c #72ace6", "#w c #72ade6", "ei c #7390c5", ".H c #73a8e0", "#v c #73ace5", "#g c #73aee7", ".G c #74ace5", "#Z c #75ace3", "#M c #75aee5", ".W c #75b1e9", "er c #7682af", "c0 c #76a1d5", "cO c #76a2d5", "cP c #76a7d9", "dv c #76a8db", ".V c #76afe5", ".F c #76b0e7", "al c #77a8da", "#K c #77a9df", ".q c #77ade4", ".X c #77b3e9", "## c #789ecf", "#h c #78b1e7", ".E c #78b3ea", "dM c #7998cc", "#x c #79b0e5", "df c #7aabde", ".Y c #7ab1e6", "#Q c #7b82ab", "ak c #7ba0cc", "dU c #7d81a6", "dR c #7da8d6", "cl c #7e88b0", "do c #7e96c3", ".p c #7eb3e5", ".5 c #7f8cb4", "#3 c #7f91bd", "#r c #7f94be", "ds c #7fa1d0", "di c #8087aa", "dI c #8197c4", "#e c #81adda", "c2 c #81b1df", ".D c #81b6e6", "cD c #82a9d2", "ep c #848cb0", "#X c #84add8", "cE c #84b2dd", ".Z c #86acd6", ".R c #88abd3", "dJ c #8ca0c7", "dL c #8ea2c8", ".y c #8eafd5", ".f c #8eb9e1", ".o c #8ebbe3", "dK c #8fa4c9", "cC c #8fadd2", "bM c #913232", ".e c #91bce3", "d8 c #92aed3", ".g c #92bae0", "ej c #93a8ca", "dc c #93afd3", "cQ c #93b9db", "#0 c #96b6d6", ".0 c #97afcc", "by c #984444", "bx c #994848", "bF c #9a4a4a", "bH c #9a4c4c", "#y c #9ab8d4", "bB c #9b4e4e", "bc c #9b4f4f", ".d c #9bbfe0", "cN c #9cb4d1", "aO c #9d5252", ".h c #9dbcdb", "bD c #9f5a5a", "bJ c #a15f5f", ".C c #a1bbd4", "dw c #a1bed8", "a9 c #a26161", "bG c #a26262", "bd c #a36464", "aK c #a36565", "bu c #a56969", "b. c #a56a6a", "bi c #a56c6c", "bR c #a66c6c", "#J c #a7bacf", ".c c #a7c3db", "bk c #a87171", "bo c #a87373", ".i c #a8c0d7", "aP c #a97575", "bq c #a97777", "bp c #aa7979", "a6 c #aa7a7a", "cd c #ab7c7c", "bs c #ac7d7d", "a4 c #ad8080", "b9 c #ad8181", "aX c #ae8282", "ca c #ae8585", "cc c #af8686", "b5 c #af8888", "bj c #b08989", "cb c #b08a8a", "b6 c #b18c8c", "bY c #b28e8e", "bW c #b28f8f", "bl c #b29090", "b1 c #b29191", "b0 c #b49595", "b# c #b79d9d", "c# c #b79f9f", "bV c #baa7a7", "bZ c #bcaaaa", "QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQtQt.#.a.b.c.d.e.f.g.h.i.j.k.lQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQt.m.n.o.p.q.r.s.t.u.v.w.x.y.z.AQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQt.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.#QtQtQtQtQtQt", "QtQtQtQtQtQt.T.U.V.W.X.Y.Z.0.1.2.3.4.5.6.7.8.9#.###a#b#cQtQtQtQt", "QtQtQtQtQt#d#e#f#g#h#i#jQtQtQtQtQtQtQt#k#l#m#n#o#p#q#r#s#tQtQtQt", "QtQtQtQt.B#u#v#w#x#y#zQtQtQtQtQtQtQtQtQt#A#B#C#D#E#F#G#H#IQtQtQt", "QtQtQtQt#J#K#L#M#N#OQtQtQtQtQtQtQtQtQtQtQtQt#P#Q#R#S#T#U#VQtQtQt", "QtQtQt#W#X#Y#Z#0#1QtQtQtQtQtQtQtQtQtQtQtQtQt#2#3#4#5#6#7#8QtQtQt", "QtQtQt#9a.a#aaabQtQtQtQtQtQtQtQtQtQtQtQtQtQtacadaeafagahaiQtQtQt", "QtQtQtajakalamQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtanaoapaqQtQtQt", "QtQtQtQtarasQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", "QtatauQtQtavQtQtawaxQtQtQtQtayazaAQtQtQtQtQtaBaCQtQtQtQtQtQtQtQt", "QtaDaEaFaGaHaIaJaKaLaMaNaFaFaOaPaQaRaSaTaUaVaWaXaYaGaBaZa0a1a2a3", "QtaDa4a5a6aPa7a8a9b.b#aKbabbbcbdbebfbgbhbib#bjbkaPblbmbnbobpbqbr", "QtaDbsbtbuaKbvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbLbMbNbObPbQbRbSaPbT", "QtbUbVblbWbXbYbZb0b1b2b2b3b4b5b6b7b8b9b#bEb0c.c#cabKcbcccdbdcecf", "QtQtQtQtQtQtQtQtQtQtQtcgchQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtaRaRQtQt", "QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtcicjQtQt", "QtQtQtckclcmcnco#bQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtcpcqcrcsctcjQtQt", "QtQtQtcucvcwcxcyczcAQtQtQtQtQtQtQtQtQtQtQtQtQtQtcBcCcDcEcFQtQtQt", "QtQtQtcGcHcIcJcKcLcMQtQtQtQtQtQtQtQtQtQtQtQtQtcjcNcOcPcQcRQtQtQt", "QtQtQtcScTcUcVcWcXcYQtQtQtQtQtQtQtQtQtQtQtQtcjcZc0c1c2c3QtQtQtQt", "QtQtQtc4c5c6c7c8c9d.d#daQtQtQtQtQtQtQtQt.#dbdcdddedfdgQtQtQtQtQt", "QtQtQtQtdhdidjdkdldmdndodp#tQtQtQtQt.ldqdrdsdtdudvdwdxQtQtQtQtQt", "QtQtQtQtdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdS.lQtQtQtQtQtQt", "QtQtQtQtQtQtQtdTdUdVdWdXdYdZd0d1d2d3d4d5d6d7d8d9QtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQte.e#eaebecedeeefegeheiejekQtQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQtQtelemeneoepeqercmeseteub4QtQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", "QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"}; luckybackup-0.5.0/menu/luckybackup-su.desktop0000666000175000017500000001204513367342142020711 0ustar luckybluckyb[Desktop Entry] Name=luckyBackup (super user) Name[en]=luckyBackup (super user) Name[en_US]=luckyBackup (super user) Name[ara]=luckyBackup (الرووت) Name[bs]=luckyBackup (super user) Name[bg]=luckyBackup (супер потребител) Name[ca]=luckyBackup (superusuari) Name[zh_TW]=luckyBackup (超級使用者) Name[cs]=luckyBackup (Super uživatel) Name[nl]=luckyBackup (systeembeheerder) Name[eo]=luckyBackup (ĉefuzanto) Name[et]=luckyBackup (super user) Name[fr]=luckyBackup (super user) Name[gl]=luckyBackup (superusuario) Name[de]=luckyBackup (super user) Name[el]=luckyBackup (υπερχρήστης) Name[it]=luckyBackup (super utente) Name[ja_JP]=luckyBackup (スーパーユーザー) Name[no]=luckyBackup (super user) Name[pl]=luckyBackup (super user) Name[pt_BR]=luckyBackup (super usuário) Name[pt_PT]=luckyBackup (super utilizador) Name[ro]=luckyBackup (administrator) Name[ru]=luckyBackup (суперпользователь) Name[sk]=luckyBackup (super user) Name[sl]=luckyBackup (skrbniški način) Name[es]=luckyBackup (súper usuario) Name[sv]=luckyBackup (superanvändare) Name[tr]=luckyBackup (süper kullanıcı) Name[vi]=luckyBackup (super user) GenericName=Backup & Sync tool GenericName[en]=Backup & Sync tool GenericName[en_US]=Backup & Sync tool GenericName[ara]=أداة حفظ ومزامنة GenericName[bs]=Backup & Sync tool GenericName[bg]=Инструмент за бекъп и синхронизация GenericName[ca]=Eina de còpia de seguretat i sincronització GenericName[zh_TW]=備份與同步工具 GenericName[cs]=Zálohovací a seřizovací nástroj GenericName[nl]=Backup- & sync-toepassing GenericName[eo]=Savkopia & Sinkroniga ilo GenericName[et]=Backup & Sync tool GenericName[fr]=Outil de Sauvegarde & de Synchronisation GenericName[gl]=Ferramenta de copias de seguranza e sincronización GenericName[de]=Sicherungs & Synchronisations Werkzeug GenericName[el]=Εργαλείο αντιγράφων ασφαλείας & συγχρονισμού GenericName[it]=Strumento di Backup & Sincronizzazione GenericName[ja_JP]=Backup & Sync tool GenericName[no]=Backup & Sync tool GenericName[pl]=Narzędzie do kopii zapasowych i synchronizacji GenericName[pt_BR]=Ferramente de Backup & Sincronização GenericName[pt_PT]=Ferramenta de Backup & Sincronização GenericName[ro]=Unealtă pentru backup & sincronizare GenericName[ru]=Резервное копирование и синхронизация GenericName[sk]=Backup & Sync tool GenericName[sl]=Orodje za usklajevanje in varnostne kopije GenericName[es]=Herramienta de respaldo y sincronización GenericName[sv]=Verktyg för säkerhetskopiering och synkronisering GenericName[tr]=Yedekleme & Şipşaklama aracı GenericName[vi]=Backup & Sync tool Comment=Backup & sync your data with the power of rsync Comment[en]=Backup & sync your data with the power of rsync Comment[en_US]=Backup & sync your data with the power of rsync Comment[ara]=احفظ وزامن بياناتك مستخدماً قوة rsync Comment[bs]=Backup & sync your data with the power of rsync Comment[bg]=Бекъп и синхронизация на данните ви със силата на rsync Comment[ca]=Crear còpia de seguretat i sincronitzar dades amb el poder de rsync Comment[zh_TW]=借助 rsync 之力備份並同步您的資料 Comment[cs]=Zálohujte a seřizujte svá data pomocí síly nástroje rsync Comment[nl]=Backup & sync je bestanden met de kracht van rsync Comment[eo]=Savkopiu & sinkronigu viajn datumojn per la potenco de rsync Comment[et]=Backup & sync your data with the power of rsync Comment[fr]=Sauvegarde et Synchronise vos données avec la puissance de rsync Comment[gl]=Faga copias e sincronice os seus datos co poder de rsync Comment[de]=Sichere & Synchronisiere mit der Kraft von rsync Comment[el]=Αντίγραφα ασφαλείας & συγχρονισμός δεδομένων με τη δύναμη του rsync Comment[it]=Effettua il backup e sincronizza i tuoi dati col potere di rsync Comment[ja_JP]=Backup & sync your data with the power of rsync Comment[no]=Backup & sync your data with the power of rsync Comment[pl]=Kopie zapasowe i synchronizacja danych z siłą rsync Comment[pt_BR]=Backup & sincronize seus dados com o poder do rsync Comment[pt_PT]=Backup e sincronização dos seus dados com o poder do rsync Comment[ro]=Faceți copii de siguranță & sincronizați datele cu puterea aplicației rsync Comment[ru]=Резервное копирование и синхронизация с помощью rsync Comment[sk]=Backup & sync your data with the power of rsync Comment[sl]=Ustvarjanje varnostnih kopij in usklajevanje z uporabo rsync Comment[es]=Respalda y sincroniza tus datos con el poder de rsync Comment[sv]=Säkerhetskopiera och synkronisera din data med hjälp av rsync Comment[tr]=rsync gücüyle verinizi yedekleyin & şipşaklayın Comment[vi]=Backup & sync your data with the power of rsync Exec=/usr/bin/luckybackup-pkexec Terminal=false Type=Application Icon=/usr/share/pixmaps/luckybackup.png StartupNotify=true Categories=KDE;Qt;System; Keywords=rsync;backup;restore;data;synchronization;safety; luckybackup-0.5.0/menu/luckybackup-pkexec0000777000175000017500000000005613367060343020073 0ustar luckybluckyb#!/bin/sh pkexec "/usr/bin/luckybackup" "$@" luckybackup-0.5.0/menu/luckybackup.png0000666000175000017500000001775611073053522017406 0ustar luckybluckybPNG  IHDR<9j1HsRGB7MS tiCCPiccxgPi CD HIdQ20$L "AD\]"QP ."**7}y>?UoU x"')6 sg2Nj'J/z7 =?ύJ9Mȱ$J>™i v2/@!p7N\okb2 G~e}kk3E$jv^b+<2=.1M7?ʼ|7V_bT|6 HL0t|"YSN:?[ZYI:@h]`̀%Nx6I2AA!(A 35p #1)̃w` ,Dh C:Ć!'Bp(AP*J*j~Af0`:k0=`xYpSp|%0eDa#7D#|d;R#H+ҍ#2|@aP4DPT j;U:@&P/h2Z@1Lt>݈nG_E0 ˜a\1!xL6sӆLbX VkF`ӰJ)E0v G)pθP+5zpøi^{b|?_"HX+?!PAh%\%D9їGI &^'N?$m)NG:ADzHzC&5ȶPry|^&'&!V-!6,S()YrYʜ8^\CAM[Mgjt}mno S43YZ&X6[άaZӰfJ*ªJ`ʹ>j-Qyfj˵mӲ;eon`#X8Du przć/Ƿ__:ںM׽/H l \ r * o " m ]X0 [6(1qMMΆÃ›?ExGG,DEDs88/2lUTitUtiLÚXع8 'ےpIIxT^o-u))ST(uCjW]aHL!}"::}f`-[x[joݻu:9x6*ݛ+gbݶ;Tw.®]s rKsݝ3oZc{,1VR-YhPX^St'ß*~ZoشH W2fRҬ^:ʘeeon:xܸP!AgEWZeI姪تj5iU-x4:zccǞ76gojm,l|wBpd_YSS|sq ܒ2{*ݟjmkcO%3gzϲ϶kM;1) :~۲7NW>_}ABq'gbŅKɗ.\J}}W=^|J]V߰q&f-[&Mnv1unКa]vڑрcac3~hqx'O{Tpaqbٺg'9/HTsiγw_12\ּ|_ O^̛o.,<}ni?}^TYs/I"D. r \@"D. r \?TV %SZ(IDAThZ gugfgҮuK$|&8T.*(*RIP@*$&'F Lۀl>tdKZ=3;h%ymQt^7!=~{:k9پBNr*r2L۰0Ejw]k_=yľL^*IOlq`-^Faa(0 1 &E۟Prpcv=`0PZq๶ٖڦtbjl5h_10E V]Ps0tAbZZw:l2|=}GuۧC^4u@gn.r Y{u7NMu 0( X'pj~r'zgg`p FajU3ZmL^DphКɾiGC~pԔntt+*O .z-W"F7N\F0s}hW ϏcZ\cS@EBX`EQ+ [=7F%/q yzތ.ެ}J ިs.-`+QsV z͇3+.!jɷ]GB)#sv EO!8FL]{hN2CjropL{&#Mj5b "9Zf(8g˓_G_Rz%q%cGIH=~&|߁}~kȓϱs0@ TQTTcf'`XsKŅ{]άWo8JeEmVp%Rt2_~@2ǹ#}N+mu{DT jl7*Νط23~hwwnx.!wF~{ yf!`֫Ag\&N ½SGRʹ{{QDсr=<OτepV}w`ƭ!@VXW.unW}_SںyQQ̈́\9Hȷ~6y-!7:,!w@zUv^ O87c1i9`y=!/j1_O|yQt#6EH wI1n_ ľ B遬 W6D.П$ @?vN~c!&,؀:a}1&& oi|}N6W%*~Ŀ0jxw o}GEЮGz鉹@ey_nn:3.*aY~J,flڴo5.H{3  , 3!?/Bȟ$|o K0 M ]c$K֩6M%O " ɂJz`G4_{ `]X`#LT{}XK6xV~&OH?I#00*RRB &09] ?41 ? !g0@VmJ_unOGwyGH3pSkپ7J$4^G`dss`SyЫU jjK>#J7s`Ck3CZY;.^;aqڋR\g:@RpolV<:zg(+Қ:o(Kjf ς(5Xp# /ɴ&~ӝpÑZSM;ƪY(Nqyh2 TP|PE1Umf9Xkamnu?2{A,R_wf,ٖ$URm~iii^O KJj7T+wEu[ OiIpIP&GG]5&:Jp#^ Yy\k,VYC$IRzV9_T)/t)24ͥ;͊Rr*[ZMer[GmW^g/c$5Kpbaz^/Ox^:ӹ &`z$J$uyiTJřJVGnigiY׶9Ha1B2Q.=/?Ij;٨M"b\7CqI/~D4uіypN;zskt"IÜ"툺,k'=xq%cq_N@sLf`Q~TJJN޽αZ:]o=J)}k|ы$P;}dr#۬gv!Z"K إ]F-&‚#wv^O7Li䮇.]lzr7Y> yYyPjV8w;@o\RT%S`xnmFb2uІE-ۗIX\{Z;6RUdMG`' $ *zГ?W5^| \oу AkTB9tLMѕ43]dT;s}grk3/4jqjOb]>_qn)ּնjCA, T=S^՘`<71sԆW|mƜ4 #U#3x& 'įi"fW]ܿvvM<Ef^cPqz0Rwv5ӏ  )8s~s㝱LF."2%e%X*.re9V#5$-nQ Q" j:;^C+Sޤ.H*n/nhu_)W\Rudp g kK7moR &uѕݻ~|W+'ibY<9y@r-HR'oKں6h.- 9Ώ|E+ @74[7LFnoO3Y}A$KnaLH ;X9*NU/TDYtC|͚ QQ7K GRi )>VЩYdDΆ!=ӛUC )sm_s]i(WJJ Jޕ$ޔ$!p'S]? X$; Ω؄_cyzm N*Oy--q[e 0gmpujӁ4AE ( nEߛE o{ĵZ=Dy~v<[@fUJ8^ӸG,VB]=ػ򦫴dWFT4u/#x/:"_Hjqls5׮ߨGo[x'Aӯ݅|>RȶwHIUĄ6AH0sc]3].@,?nVagXIBPՓe@ꋚU%m%nQ5AM/)Nސ44#~lv|샵?bEGAPgE0q8=o X+G} cjˋ/En-$0XozZumpux)7oX\uc=j?l>$nu7Fg@E'IENDB`luckybackup-0.5.0/menu/net.luckybackup.su.policy0000666000175000017500000000153213367025642021327 0ustar luckybluckyb luckyBackup (Superuser) http://luckybackup.sourceforge.net/ Launch luckyBackup as Superuser Authentication is required to launch luckyBackup auth_admin auth_admin auth_admin /usr/bin/luckybackup true luckybackup-0.5.0/menu/luckybackup.desktop0000666000175000017500000001102613367342200020255 0ustar luckybluckyb[Desktop Entry] Name=luckyBackup Name[en]=luckyBackup Name[en_US]=luckyBackup Name[ara]=luckyBackup Name[bs]=luckyBackup Name[bg]=luckyBackup Name[ca]=luckyBackup Name[zh_TW]=luckyBackup Name[cs]=luckyBackup Name[nl]=luckyBackup Name[eo]=luckyBackup Name[et]=luckyBackup Name[fr]=luckyBackup Name[gl]=luckyBackup Name[de]=luckyBackup Name[el]=luckyBackup Name[it]=luckyBackup Name[ja_JP]=luckyBackup Name[no]=luckyBackup Name[pl]=luckyBackup Name[pt_BR]=luckyBackup Name[pt_PT]=luckyBackup Name[ro]=luckyBackup Name[ru]=luckyBackup Name[sk]=luckyBackup Name[sl]=luckyBackup Name[es]=luckyBackup Name[sv]=luckyBackup Name[tr]=luckyBackup Name[vi]=luckyBackup GenericName=Backup & Sync tool GenericName[en]=Backup & Sync tool GenericName[en_US]=Backup & Sync tool GenericName[ara]=أداة حفظ ومزامنة GenericName[bs]=Backup & Sync tool GenericName[bg]=Инструмент за бекъп и синхронизация GenericName[ca]=Eina de còpia de seguretat i sincronització GenericName[zh_TW]=備份與同步工具 GenericName[cs]=Zálohovací a seřizovací nástroj GenericName[nl]=Backup- & sync-toepassing GenericName[eo]=Savkopia & Sinkroniga ilo GenericName[et]=Backup & Sync tool GenericName[fr]=Outil de Sauvegarde & de Synchronisation GenericName[gl]=Ferramenta de copias de seguranza e sincronización GenericName[de]=Sicherungs & Synchronisations Werkzeug GenericName[el]=Εργαλείο αντιγράφων ασφαλείας & συγχρονισμού GenericName[it]=Strumento di Backup & Sincronizzazione GenericName[ja_JP]=Backup & Sync tool GenericName[no]=Backup & Sync tool GenericName[pl]=Narzędzie do kopii zapasowych i synchronizacji GenericName[pt_BR]=Ferramente de Backup & Sincronização GenericName[pt_PT]=Ferramenta de Backup & Sincronização GenericName[ro]=Unealtă pentru backup & sincronizare GenericName[ru]=Резервное копирование и синхронизация GenericName[sk]=Backup & Sync tool GenericName[sl]=Orodje za usklajevanje in varnostne kopije GenericName[es]=Herramienta de respaldo y sincronización GenericName[sv]=Verktyg för säkerhetskopiering och synkronisering GenericName[tr]=Yedekleme & Şipşaklama aracı GenericName[vi]=Backup & Sync tool Comment=Backup & sync your data with the power of rsync Comment[en]=Backup & sync your data with the power of rsync Comment[en_US]=Backup & sync your data with the power of rsync Comment[ara]=احفظ وزامن بياناتك مستخدماً قوة rsync Comment[bs]=Backup & sync your data with the power of rsync Comment[bg]=Бекъп и синхронизация на данните ви със силата на rsync Comment[ca]=Crear còpia de seguretat i sincronitzar dades amb el poder de rsync Comment[zh_TW]=借助 rsync 之力備份並同步您的資料 Comment[cs]=Zálohujte a seřizujte svá data pomocí síly nástroje rsync Comment[nl]=Backup & sync je bestanden met de kracht van rsync Comment[eo]=Savkopiu & sinkronigu viajn datumojn per la potenco de rsync Comment[et]=Backup & sync your data with the power of rsync Comment[fr]=Sauvegarde et Synchronise vos données avec la puissance de rsync Comment[gl]=Faga copias e sincronice os seus datos co poder de rsync Comment[de]=Sichere & Synchronisiere mit der Kraft von rsync Comment[el]=Αντίγραφα ασφαλείας & συγχρονισμός δεδομένων με τη δύναμη του rsync Comment[it]=Effettua il backup e sincronizza i tuoi dati col potere di rsync Comment[ja_JP]=Backup & sync your data with the power of rsync Comment[no]=Backup & sync your data with the power of rsync Comment[pl]=Kopie zapasowe i synchronizacja danych z siłą rsync Comment[pt_BR]=Backup & sincronize seus dados com o poder do rsync Comment[pt_PT]=Backup e sincronização dos seus dados com o poder do rsync Comment[ro]=Faceți copii de siguranță & sincronizați datele cu puterea aplicației rsync Comment[ru]=Резервное копирование и синхронизация с помощью rsync Comment[sk]=Backup & sync your data with the power of rsync Comment[sl]=Ustvarjanje varnostnih kopij in usklajevanje z uporabo rsync Comment[es]=Respalda y sincroniza tus datos con el poder de rsync Comment[sv]=Säkerhetskopiera och synkronisera din data med hjälp av rsync Comment[tr]=rsync gücüyle verinizi yedekleyin & şipşaklayın Comment[vi]=Backup & sync your data with the power of rsync Exec=/usr/bin/luckybackup Terminal=false Type=Application Icon=/usr/share/pixmaps/luckybackup.png StartupNotify=true Categories=KDE;Qt;Utility; Keywords=rsync;backup;restore;data;synchronization;safety; luckybackup-0.5.0/src/0000777000175000017500000000000013367645635014212 5ustar luckybluckybluckybackup-0.5.0/src/qdirdialog.h0000666000175000017500000000672312720304064016466 0ustar luckybluckyb/********************************************************************** ** Author: Nicolas Remy ** Copyright (C) 2002-2004 The Board of Trustees of the Leland Stanford Junior ** University ** All rights reserved. ** ** This file is part of the luckybackup project ** ** This file may be distributed and/or modified under the terms of the ** license defined by the Stanford Center for Reservoir Forecasting and ** appearing in the file LICENSE.XFREE included in the packaging of this file. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.gnu.org/copyleft/gpl.html for GPL licensing information. ** ** Contact the Stanford Center for Reservoir Forecasting, Stanford University ** if any conditions of this licensing are not clear to you. ** **********************************************************************/ /* =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #ifndef __GSTLAPPLI_GUI_UTILS_QDIRDIALOG_H__ #define __GSTLAPPLI_GUI_UTILS_QDIRDIALOG_H__ //#include //#include #include class QDirDialog : public QFileDialog { Q_OBJECT public: QDirDialog( const QString& extension, const QString& dirName, QWidget* parent = 0, const char* name = 0, QFileDialog::FileMode mode = QFileDialog::DirectoryOnly, bool modal = false ); QDirDialog( const QString& extension, QWidget* parent = 0, const char* name = 0, QFileDialog::FileMode mode = QFileDialog::DirectoryOnly, bool modal = false ); QString selectedDirectory() const { return selected_directory_; } protected slots: virtual void check_selected_directory( const QString& dirName ); virtual void accept(); protected: virtual void init_dialog( QFileDialog::FileMode mode ); protected: QString selected_directory_; QString extension_; }; #endif luckybackup-0.5.0/src/emailDialog.h0000666000175000017500000000602112722006224016544 0ustar luckybluckyb/* ---------------------------------- emailDialog.h --------------------------------------------------------------------------- header file used by emailDialog.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 06 Feb 2014 =============================================================================================================================== =============================================================================================================================== */ #ifndef EMAILDIALOG_H #define EMAILDIALOG_H #include "ui_emailDialog.h" //============================================================================================================== //Declaration of emailDialog class // accessor function getGoOn returns true or false class emailDialog : public QDialog { Q_OBJECT public: emailDialog (QDialog *parent=0); int getGoOn(); QString getCommand(); private slots: void okay(); // Okay pressed void cancel(); // Cancel pressed void revertDefault(const int); // SLOT to revert a field to the default value void emailTest(); // Send an email now, using current fields void enableTLS(); // Enable/disable the TLS option private: Ui::emailDialog uiE; bool checkFields(); // Function to check if all fields are ok int GoOn; // return an integer according to exit status void fillWindow(); // Fill all gui fields from variables void fillVariables(); // Fill relevant variables from gui fields QString warningMessage; // Warning message to display if the fields are not ok protected: void closeEvent(QCloseEvent *); }; #endif // end of emailDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/global.h0000666000175000017500000003525212720515723015614 0ustar luckybluckyb/* ------------------ global.h -------------------------------------------------------------------------------------- header file for luckyBackup project =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #ifndef GLOBAL_H #define GLOBAL_H #include #include #include #include #include #include #include class operation; namespace Global { extern QString myHome; // user's home directory extern QString currentUser; // will hold the current username (definition at luckybackupwindow.cpp) extern QString const appName; // application name extern double const appVersion; // application version extern QString appVersionString; // application version extern double const validProfileVersion; // profile version before this a profile won't be loaded extern double const validScheduleVersion; // schedule version before this a schedule won't be loaded extern double const validSettingsVersion; // Settings file valid version extern QString luckyBackupDir; // app working directory extern QString luckyBackupDefaultDir; // same as above. WINDOWS use extern QString settingsFile; // settings file extern QString profileDir; // profiles directory extern QString defaultProfile; // default profile extern QString standardDefaultProfile; // standard default profile extern QString logDir; // logs directory extern QString logfilename; // logfile filename - this will change according to the profile an task executed extern QString cronlogString; // cron logfile full filename: "ProfileName-LastCronLog.log" extern QString emailLogString; // logfile to send by email (all task logs merged) full filename: "ProfileName-email.log" extern QString emailLastLogString; // email logfile full filename: "ProfileName-email-LastLog.log" extern QString snapDefaultDir; // This is the directory where snapshots are placed. It lies inside the destination extern QString snapChangesDir; // Snapshots changes files are stored here. It lies inside ~ extern QString snapEmptyDir; // empty directory used to delete older snapshots extern QString snapchangesfilename; // Snapshot changes filename. This will change according to the snapshot extern QString snapChangesString; // The log lines format of the "changes" file that stores changes made for every snapshot extern QString scheduleDir; // schedule directory extern QString schedulefilename; // cron data filename extern QString cronfilename; // cron filename extern QString relativeTransDir; // translation directory when app executed but not installed extern QString systemTransDir; // system translation directory (when app is installed) extern QDir transDir; // the current translations directory extern QTranslator appTranslator; // QTranslator that holds the applications translation extern QTranslator translator_qt; //QTranslator that holds the standard Qt translations extern QString locale; // String that holds the current language locale extern QString relativeLicense; // licence directory when app executed but not installed extern QString systemLicense; // system licence directory (when app is installed) extern QString suseLicense; // system licence directory (when app is installed) - openSuse extern QString debianLicense; // system licence directory (when app is installed) - debian extern QString relativeManual; // manual directory when app executed but not installed extern QString systemManual; // system manual directory (when app is installed) extern QString suseManual; // system manual directory (when app is installed) - opensuse extern QString countStr; // this helps displaying integers as strings extern QString message; // this is really handy to hold messages for dialogs extern QString messageCLI; // this is really handy to hold messages for the Command-Line extern int errorsFound; // count errors when executing rync or pre/post command extern int filesTransfered; // count files transfered when executing rync extern unsigned long long int bytesTransfered; // count bytes transfered when executing rync // Useful variables for operations --------------------------------------------------------------------------------------------------- extern int const maxOperations; // The maximum number or operations permitted extern int TotalOperations; // The number of available operations "operations list"- starts from 1 extern int currentOperation; // this holds the current row from the operations list- starts from 0 extern int removeCharLimit; // No of characters to remove from lines inside snapshot .changes file extern bool modifyOK; // bool variable that says create or modify opeartion went ok extern bool modifyConnected; // if the operation under modification is connected to another op, this becomes true extern bool DryRun; // shows if dry-run is checked extern bool ask; // becomes true if we want to ask the user if he/she wants to continue with the execution of operations or not extern bool newTaskThisIs; // becomes true if "add task" is pressed and false if "modify" task is pressed extern bool NothingToDo; // Becomes true if there is nothing to do when start button pressed extern bool NothingIncluded; // Becomes true if there is nothing checked ("include" checkboxes) extern bool crontabUpdated; // Becomes true if the user's crontab is updated extern QString currentProfile; // This holds the filename of the currently used profile extern QString profileName; // just holds the profile name not the full path+filename.profile extern QString profileDescription; // holds a description of the profile extern QFile profile; // this is the profile QFile extern QFile logfile; // this is the logfile QFile extern QFile snapfile; // this is the snapshot changes QFile extern QString CheckedData; // String holding the current task message (OK - WARNING - CRITICAL) for info window display extern QString CheckedDataCLI; // String holding the current task message (OK - WARNING - CRITICAL) for CLI display extern operation *Operation[]; //The array that holds name, source, destination & arguments of "Opereations list" extern bool console; // these become true depending on the argument given at command line extern bool NoQuestions; // do not ask any questions at console mode extern bool SkipCritical; // skip critical tasks extern bool silentMode; // start at silent mode extern bool runImmediately; // execute a profile immediately after gui loads extern bool validation; // becomes true if "validation check" button is pressed extern bool KDErunning; // becomes true if desktop running is KDE extern bool GNOMErunning; // becomes true if desktop running is GNOME // functions ------------------------------------------------------------------------------------------------------------------------ extern bool argumentsTest(int , char**); // checks the arguments given at command-line and returns true if everything is ok extern bool loadCurrentProfile(); // loads an already created profile void declareRsyncCommand(); // Declares the rsync & ssh commands (full path for windows) extern bool check_list(); // check the operations list extern bool check_dirs(); // check directories of declared profile data void help(); // Displayes command-line usage void checkSyncDirs(QString, QString); // function to check if the directories to be synced exist or are empty void checkBackupDirs(QString, QString); // function to check if the source & dest dirs exist and are not empty int loadProfile(QString); // loads an existing profile - text mode int loadProfileQV(QString); // loads an existing profile - data mode extern bool saveProfile(QString); // saves an existing profile extern bool exportFullProfile(QString,QString); // function to export the .profile file + logs + snaps extern int importFullProfile(QString,QString); // function to import the .profile file + logs + snaps (whatever is available) extern bool checkTaskList(); // Checks if the Task list is ok to proceed extern bool checkDeclaredDirs(bool); // Check if the declared data are ok by calling checkBackupDirs or checkSyncDirs QStringList AppendArguments(operation*); // Set command's (normally rsync) arguments extern bool writeToLog; // if the log file is ok to write this becomes true extern QString logFileUpdate(QString, QString, int); // Update the logfile with some string extern bool checkMountPoint(QString); // Check if a path belongs to a mountpoint or is a mountpoint itself void setTextMessages(QString,QString,bool,bool,QString,QString,QString); // function to set text feedback for the user extern QString fixWinPathForRsync(QString,bool); // Fixes a windows path for rsync use extern QString calculateLastPath(QString); // Calculates the last part of a path eg path=user@host:destination\path\here -> returns "here" extern QString emailCommand; extern QString emailArguments; extern bool emailNever; extern bool emailError; extern bool emailSchedule; extern bool emailTLS; extern QString emailFrom; extern QString emailTo; extern QString emailSubject; extern QString emailSMTP; extern QString emailBody; extern QString emailDefaultSubject; // Holds the default subject extern QString emailDefaultBody; // Holds the default body text extern QString emailDefaultCommand; // Holds the default email command extern QString emailDefaultArguments; // Holds the default email arguments extern QString emailDefaultWinCommand; // Holds the default email command - WINDOWS extern QString emailDefaultWinArguments; // Holds the default email arguments - WINDOWS extern QString sendEmailNow(bool); // Send an email after a profile run. bool is true if called for testing purposes extern QString rsyncDefaultCommand; // Holds the default rsync command extern QString sshDefaultCommand; // Holds the default ssh command // WINDOWS related variables. Also search variables above for "WINDOWS use" extern QString rsyncDefaultWinCommand; // Holds the default rsync command for windows extern QString sshDefaultWinCommand; // Holds the default ssh command for windows extern QString appPath; // This is used for windows app path. It's also causing a ... //"QCoreApplication::applicationDirPath: Please instantiate the QApplication object first" WARNING message //extern QString rsyncDefaultWinCommand; // Holds the default rsync command for windows //extern QString sshDefaultWinCommand; // Holds the default ssh command for windows extern QString mapdrive; extern QString vshadowDir; extern QString vshadowDefaultDir; extern QString dosdevCommand; extern QString dosdevDefaultCommand; extern QString cygpathCommand; extern QString cygpathDefaultCommand; extern bool isTempDirPath; extern QString tempDirPath; extern QString tempDefaultDirPath; void setAppDir(QString s); /* disable vss until int doVss=0; int vssPos=0; int vssErrPos=0; QTimer *vssTimer; int vssSleepTime=50; int vssReadSize=400; QFile *pipeVssFile; QFile *pipeVssErrFile;*/ //QString createWinMkdirCommand(QString tempPath,bool vss,QStringList rsyncArgs,bool logGui); extern QString createWinRsyncCommand(QString tempPath,bool vss,QStringList rsyncArgs,bool logGui=true); // END of Windows related variables extern QString rsyncCommandPath; // holds the full path of the rsync command for WINDOWS or just "rsync" for *nix extern QString sshCommandPath; // holds the full path of the ssh command for WINDOWS or just "ssh" for *nix extern QString XnixSLASH; // holds the default Xnix slash which is / extern bool OS2running; extern QString SLASH; extern bool WINrunning; extern bool notXnixRunning; } using namespace Global; #endif // end of global.h-------------------------------------------------------------- luckybackup-0.5.0/src/manageWizard.h0000666000175000017500000001135113165410113016746 0ustar luckybluckyb/* ---------------------------------- manageWizard.h --------------------------------------------------------------------------- header file used by manageWizard.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : Loukas Avgeriou last modified : 18 May 2011 =============================================================================================================================== =============================================================================================================================== */ #ifndef MANAGEWIZARD_H #define MANAGEWIZARD_H #include "ui_manageWizard.h" //============================================================================================================== //Declaration of manageWizard class (this is the dialog that launches a restore,delete backup wizard) class manageWizard : public QDialog { Q_OBJECT public: manageWizard (QString, QString, QString, int, QWidget *parent=0); private slots: void cancelPressed(); // close the wizard void startAction(); // start the action (restore/delete) void procFinished(); // actions when a process has finished void appendCommandOutput(); // update browser with command running data void abortAction(); //abort the execution of commands void deleteAfterChanged(); // DeleteAfter checkbox state changed void prevError(); //jumb to previous error void nextError(); //jumb to next error void changeRestorePath(); //Change the restore path private: Ui::manageWizard uiW; QString source; // holds the full path of the original source QString sourceLast; // holds the last child directory of the original source QString dest; // holds the full path of the original destination QString time; // holds the execution time of the selected snapshot in yyyyMMddhhmmss format QString timeReadable; // holds the execution time of the selected snapshot in "yyyy/MM/dd - hh:mm:ss" format int currentSnap; // holds the current snapshot number in the snapshot's list int snapshotsNo; // holds the snapshots number QString wizard_type;// holds the type of the wizard (restore or delete) QStringList commandArguments; // holds the command arguments QString outputString; // holds the standard output of the commands to display at browser QString outputError; // holds the standard error of the commands to display at browser bool procRunning; // this becomes true if a process is running bool procKilled; // this becomes true if a process is aborted int errorCount; // count the errors of the command execution bool DRYrun; // become true if dry-run is checked bool MainRun; // becomes true when main rsync is run. False when the specific backed up snapshot files are transfered bool DeleteAfter; // becomes true if "delete files on the source" is checked bool firstScroll; // becomes false if first time next button pressed bool snapSpecificDirExists; // becomes true if the snapshots specific directory exists int count; // simple count variable int snapToRestore; // holds the current snapshot that is restored void calcCommandArgs(); // function to calculate command arguments for RESTORE purposes void runProcess(); //function to run the desired processes void guiInitialize(); //initialize the gui protected: void closeEvent(QCloseEvent *event); }; #endif // end of manageWizard.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/manage.cpp0000666000175000017500000007230012722006207016124 0ustar luckybluckyb/* ---------------------------------- manage.cpp --------------------------------------------------------------------------- Class to display the manage backups dialog =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "manage.h" #include #include #include "RsyncDirModel.h" #include "calcDiffThread.h" #include "global.h" #include "logDialog.h" #include "manageWizard.h" #include "operationClass.h" // class manageDialog Constructor================================================================================================= // Displays the manage backups of a task dialog manageDialog::manageDialog (QDialog *parent) : QDialog (parent) { // initialize variables CurrentSnapshotString = ""; CurrentSnapshotDirectory = ""; CurrentSnapshotNo = 0; //first set string variables source, dest QStringList arguments = Operation[currentOperation] -> GetArgs(); source = arguments[arguments.size()-2]; dest = arguments[arguments.size()-1]; sourceLast = ""; //fix source and dest if (!source.endsWith(SLASH)) // this means task is of type "backup dir by name" { sourceLast = calculateLastPath(source); // This is the lowest dir of the source source.append(SLASH); if (WINrunning && Operation[currentOperation] -> GetRemote()) { sourceLast.append(XnixSLASH); dest.append(sourceLast); if (dest.endsWith(XnixSLASH+XnixSLASH)) dest.chop(1); } else { sourceLast.append(SLASH); dest.append(sourceLast); if (dest.endsWith(SLASH+SLASH)) dest.chop(1); } } uiG.setupUi(this); calcdiffthread = new CalcDiffThread(this); abortCalcThread = false; connect( calcdiffthread, SIGNAL(updateViewer(const QString, const bool)), this, SLOT(refreshDifWindow(const QString &, const bool &)) ); connect( calcdiffthread, SIGNAL(terminated()), this, SLOT(calcDiffEnd())); connect( calcdiffthread, SIGNAL(finished()), this, SLOT(calcDiffEnd())); //connect pushButton SLOTs ---------------- connect ( uiG.pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) ); connect ( uiG.pushButton_viewLog, SIGNAL( clicked() ), this, SLOT( logView() ) ); connect ( uiG.pushButton_restore, SIGNAL( clicked() ), this, SLOT( restoreBackup() ) ); connect ( uiG.pushButton_delete, SIGNAL( clicked() ), this, SLOT( deleteBackup() ) ); connect ( uiG.checkBox_viewSource, SIGNAL( clicked() ), this, SLOT( hideSourceStuff() ) ); connect ( uiG.listWidget_dates, SIGNAL( itemSelectionChanged() ), this, SLOT( SnapshotsListSelected() ) ); connect ( uiG.pushButton_calculate_diffs, SIGNAL ( clicked() ), this, SLOT ( calculateDifferences() ) ); //____________________Initial gui changes (these will remain the same for as long as the gui is visible)_______________ // set the text to labels profile & task uiG.label_profile -> setText (tr("profile")+ ": " +profileName + ""); uiG.label_task -> setText (tr("task") + ": " + Operation[currentOperation] -> GetName() + ""); //resize the treeview headers uiG.treeView_browser -> header() -> resizeSection(0,230); uiG.treeView_source -> header() -> resizeSection(0,230); uiG.treeView_browser -> header() -> resizeSection(1,80); uiG.treeView_source -> header() -> resizeSection(1,80); uiG.treeView_browser -> header() -> resizeSection(2,60); uiG.treeView_source -> header() -> resizeSection(2,60); uiG.treeView_browser -> header() -> resizeSection(3,100); uiG.treeView_source -> header() -> resizeSection(3,100); // Set the lineEdits source & dest with real paths uiG.lineEdit_destination -> setText(dest); uiG.lineEdit_source -> setText(source); (uiG.textBrowser_snapshot->document())->setMaximumBlockCount(50000); // set maximum blocks to avoid freeze updateSnapshots(); // update the snapshots listWidget SnapshotsListSelected(); //set currentSnapshotString & No. Will also call fixGui() } // SLOTS------------------------------------------------------------------------------------- // --------------------------------cancel pressed------------------------------------------------ void manageDialog::cancel() { close(); } //do the same if the main window close button (or alt+F4) is pressed void manageDialog::closeEvent(QCloseEvent *event) { // do not close the window if a calc thread is still running if (calcdiffthread->isRunning()) event->ignore(); } // SLOT logView ===================================================================================================================== // Display the logfile void manageDialog::logView() { QUrl logURL; logURL.setScheme("file"); logURL.setUrl("Does_not_exist"); //extract the logfilename from the dates listwidget logfilename = CurrentSnapshotString; logfilename.prepend(logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-"); logfilename.append(".log"); logfile.setFileName(logfilename); // this is the logfile of the item selected if (logfile.exists()) //if the logfile exists logURL.setUrl(logfilename); logDialog logdialog (logURL); logdialog.exec(); } // SLOT restoreBackup ===================================================================================================================== // launch the restore wizard void manageDialog::restoreBackup() { manageWizard restoreWizard("restoreBackup", source, dest, CurrentSnapshotNo); //pass the number of the current row restoreWizard.exec(); fixGui(); // update the gui with new dirs data } // SLOT deleteBackup ===================================================================================================================== // Launch the delete backup wizard void manageDialog::deleteBackup() { // launch the delete backup wizard manageWizard deleteWizard("deleteBackup", source, dest, CurrentSnapshotNo); deleteWizard.exec(); updateSnapshots(); // update the snapshots listwidget SnapshotsListSelected(); // set a new currentSnapshot and update the gui } // fixGui ===================================================================================================================== // makes some changes to the gui according to various stuff to make it prettier !! // also update treebrowsers with new snapshot data void manageDialog::fixGui() { // these will become false if dest or source treebrowsers are to be hidden bool destVisible = true; sourceVisible = true; //Thesw will become false if relevant pushButtons have to be disabled viewLogVisible = true; deleteVisible = true; restoreVisible = true; syncTYPE = false; // This will become true if it is a sync task // Destination - Do all things needed to display the current snapshot only. QDir CurrentSnapshotDir(CurrentSnapshotDirectory); // set the model of the treebrowsers (source & destination) sort by name & refresh to use new source & dest //destination QDirModel *d_model = new QDirModel; //d_model -> setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); //d_model -> setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); //uiG.treeView_browser -> setModel(d_model); //uiG.treeView_browser -> sortByColumn (0, Qt::AscendingOrder); //if (CurrentSnapshotDir.exists()) // uiG.treeView_browser -> setRootIndex(d_model->index(CurrentSnapshotDirectory)); //else //uiG.treeView_browser -> setRootIndex(d_model->index(dest)); //source QDirModel *s_model = new QDirModel; //s_model -> setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); //s_model -> setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); //uiG.treeView_source -> setModel(s_model); //uiG.treeView_source -> sortByColumn (0, Qt::AscendingOrder); //uiG.treeView_source -> setRootIndex(s_model->index(source)); RsyncDirModel *rsyncmodel=new RsyncDirModel; // if a snapshot is not selected if (CurrentSnapshotString == "") { viewLogVisible = false; deleteVisible = false; restoreVisible = false; if (!Operation[currentOperation] -> GetTypeSync()) { destVisible = false; uiG.label_destError -> setText("" + tr("Please select a snapshot from the list", "Information message") + ""); } } // if "not available" is selected if (CurrentSnapshotString == "not available") viewLogVisible = false; //disable the "view log" button // _______________________________ source & destination directories checks ____________________________________________ // ___________________________________________________________________________________________________________________ // check if source & destination exist or have read/enter permissions or are remote ---------------------------------- QFileInfo destFile(dest); QFileInfo sourceFile(source); bool sourceRemote = (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteSource()); bool destRemote = (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteDestination()); if (sourceRemote) // If remote is used for source { //sourceVisible = false; //uiG.label_sourceError -> setText("" + tr("Display of remote places is not supported", // "Information message") + ""); // ~~~~~~~~~~~~~~~~ Juan's patch for source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ QStringList remoteArgs; remoteArgs.append("--protect-args"); if ( Operation[currentOperation]-> GetRemoteModule() && Operation[currentOperation] -> GetRemotePassword() != "") remoteArgs.append("--password-file=" + ( Operation[currentOperation] -> GetRemotePassword()) ); if ( Operation[currentOperation] -> GetRemoteSSH()) { QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\" -o \"PasswordAuthentication no\" "; if (WINrunning) { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword() +"\" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword()+"\""); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+""); } else { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword() +" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword()); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath); } } rsyncmodel -> setUrl(QUrl(source),rsyncCommandPath,remoteArgs); uiG.treeView_source -> setModel(rsyncmodel); uiG.treeView_source -> sortByColumn (0, Qt::AscendingOrder); } else { s_model -> setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); s_model -> setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); uiG.treeView_source -> setModel(s_model); uiG.treeView_source -> sortByColumn (0, Qt::AscendingOrder); uiG.treeView_source -> setRootIndex(s_model->index(source)); } if (destRemote) // If remote is used for destination { // destVisible = false; // ********************** WARNING - Change this when you figure out a way to display/delete remote places ************************************* // uiG.label_destError -> setText("" + tr("Display of remote places is not supported", // "Information message") + ""); deleteVisible = false; //disable the delete button // ~~~~~~~~~~~~~~~~ Juan's patch for dest~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ QStringList remoteArgs; remoteArgs.append("--protect-args"); if ( Operation[currentOperation]-> GetRemoteModule() && Operation[currentOperation] -> GetRemotePassword() != "") remoteArgs.append("--password-file=" + ( Operation[currentOperation] -> GetRemotePassword()) ); if ( Operation[currentOperation] -> GetRemoteSSH()) { QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\" -o \"PasswordAuthentication no\" "; if (WINrunning) { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword() +"\" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword()+"\""); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+""); } else { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword() +" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword()); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath); } } rsyncmodel->setUrl(QUrl(dest),rsyncCommandPath,remoteArgs); uiG.treeView_browser -> setModel(rsyncmodel); uiG.treeView_browser -> sortByColumn (0, Qt::AscendingOrder); } else // Local destination { //if (CurrentSnapshotDir.exists()) // uiG.treeView_browser -> setRootIndex(d_model->index(CurrentSnapshotDirectory)); //else d_model -> setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); d_model -> setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); uiG.treeView_browser -> setModel(d_model); uiG.treeView_browser -> sortByColumn (0, Qt::AscendingOrder); uiG.treeView_browser -> setRootIndex(d_model->index(dest)); } // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Juan's patch END~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // If source does not exist (and is not remote) if ((!sourceFile.exists()) && (!sourceRemote)) { sourceVisible = false; uiG.label_sourceError -> setText("" + tr("This directory does not exist") + ""); } // If destination does not exist if ((!destFile.exists()) && !(destRemote)) { destVisible = false; uiG.label_destError -> setText("" + tr("This directory does not exist", "Information message") + ""); if (CurrentSnapshotString == "not available") deleteVisible = false; //disable the delete button restoreVisible = false; //disable the restore button } // If source does not have read/enter permissions if (((!sourceFile.isReadable()) || (!sourceFile.isExecutable())) && (!sourceRemote) && (sourceFile.exists())) { sourceVisible = false; uiG.label_sourceError -> setText("" + tr("I do not have sufficient permissions to read this directory", "Information message") + ""); restoreVisible = false; //disable the restore button } // If destination does not have read/enter permissions if (((!destFile.isReadable()) || (!destFile.isExecutable())) && (!destRemote) && (destFile.exists())) { destVisible = false; uiG.label_destError -> setText("" + tr("I do not have sufficient permissions to read this directory", "Information message") + ""); deleteVisible = false; //disable the delete button restoreVisible = false; //disable the restore button } // _______________________________ source & destination directories checks END____________________________________________ // ___________________________________________________________________________________________________________________ //if this is a "sync" task if (Operation[currentOperation] -> GetTypeSync()) { syncTYPE = true; uiG.label_destination -> setText (tr("sync dir A","full phrase: sync dir a: ")+ ": "); uiG.label_source -> setText (tr("sync dir B","full phrase: sync dir a: ")+ ": "); uiG.pushButton_viewLog -> setToolTip(tr("View the logfile of the selected sync task","'view log' pushbutton tooltip")); deleteVisible = false; restoreVisible = false; uiG.checkBox_viewSource -> setVisible(false); } // hide or show the treebrowsers - textbrowser uiG.textBrowser_snapshot -> setVisible (false); uiG.treeView_browser -> setVisible (destVisible); uiG.label_destError -> setVisible (!destVisible); hideSourceStuff(); //enable/disable the pushbuttons uiG.pushButton_viewLog -> setEnabled(viewLogVisible); uiG.pushButton_calculate_diffs -> setEnabled(destVisible); // Enable the delete button only for the first snapshot in list if (CurrentSnapshotNo > 0) deleteVisible = false; uiG.pushButton_delete -> setEnabled(deleteVisible); uiG.pushButton_restore -> setEnabled(restoreVisible); } // hideSourceStuff ===================================================================================================================== // hides/shows the source treebrowser & label void manageDialog::hideSourceStuff() { // Check the state of the "hide source" checkbox bool boxState = uiG.checkBox_viewSource -> isChecked(); if (boxState) { uiG.label_source -> setVisible(false); uiG.lineEdit_source -> setVisible(false); uiG.label_sourceError -> setVisible (false); uiG.treeView_source -> setVisible (false); } else { uiG.label_source -> setVisible(true); uiG.lineEdit_source -> setVisible(true); uiG.treeView_source -> setVisible (sourceVisible); uiG.label_sourceError -> setVisible (!sourceVisible); } } // SnapshotsListSelected ===================================================================================================================== // disables pushbuttons when nothing is selected at snapshots listwidget // Also sets QString CurrentSnapshotString at current snapshot, format YYYY void manageDialog::SnapshotsListSelected() { CurrentSnapshotNo = uiG.listWidget_dates -> currentRow(); // if a snapshot is not selected if (CurrentSnapshotNo < 0) { CurrentSnapshotString = ""; CurrentSnapshotDirectory = ""; } else { CurrentSnapshotString = Operation[currentOperation] -> GetSnapshotsListItem (CurrentSnapshotNo); if (WINrunning && Operation[currentOperation] -> GetRemote()) CurrentSnapshotDirectory = dest + snapDefaultDir.replace(SLASH,XnixSLASH) + CurrentSnapshotString + XnixSLASH + sourceLast; else CurrentSnapshotDirectory = dest + snapDefaultDir + CurrentSnapshotString + SLASH + sourceLast; if (CurrentSnapshotString == "") // if there is no execution time of the current snapshot CurrentSnapshotString = "not available"; } fixGui(); // update the gui } // calculateDifferences() ======================================================================================== // calculate differences between source and snapshot // Calls readDirEntries() void manageDialog::calculateDifferences() { // if the thread is running (meaning: STOP is pressed) if (calcdiffthread -> isRunning()) { uiG.textBrowser_snapshot -> setText (tr("Please wait until the thread is terminated")); uiG.pushButton_calculate_diffs -> setEnabled(false); calcdiffthread -> setAbort(true); abortCalcThread = true; return; } // change the gui a bit if (syncTYPE) { uiG.label_source -> setVisible(false); uiG.lineEdit_source -> setVisible(false); uiG.treeView_source -> setVisible (false); } uiG.treeView_browser -> setVisible (false); uiG.textBrowser_snapshot -> setVisible (true); if (!snapCalculated.at(CurrentSnapshotNo)) // if the differences have not been calculated yet { //disable some gui stuff during calculations uiG.pushButton_delete -> setEnabled(false); uiG.pushButton_restore -> setEnabled(false); uiG.pushButton_viewLog -> setEnabled(false); uiG.pushButton_cancel -> setEnabled(false); uiG.pushButton_calculate_diffs -> setText(tr("STOP")); uiG.pushButton_calculate_diffs -> setToolTip(tr("Stop calculations NOW")); calcdiffthread -> passParams(dest, dest, CurrentSnapshotDirectory, CurrentSnapshotString, sourceLast, source, CurrentSnapshotNo, currentSnaps, syncTYPE); calcdiffthread -> start(); } else uiG.textBrowser_snapshot -> setText (calculatedDifferences.at(CurrentSnapshotNo)); } // calcDiffEnd ===================================================================================================================== // // diffs have been calculated - update viewer with new text void manageDialog::calcDiffEnd() { // Update the textBrowser_snapshot with differences data calculatedDifferences.replace(CurrentSnapshotNo, calcdiffthread -> returnResult() ); uiG.textBrowser_snapshot -> setText (calculatedDifferences.at(CurrentSnapshotNo)); if (abortCalcThread) uiG.textBrowser_snapshot -> append ("

" + tr("Calculations terminated by user") + "

"); else snapCalculated.replace(CurrentSnapshotNo, true ); abortCalcThread = false; calcdiffthread -> setAbort(false); // re-enable gui stuff uiG.pushButton_delete -> setEnabled(deleteVisible); uiG.pushButton_restore -> setEnabled(restoreVisible); uiG.pushButton_viewLog -> setEnabled(viewLogVisible); uiG.pushButton_cancel -> setEnabled(true); uiG.pushButton_calculate_diffs -> setEnabled(true); uiG.pushButton_calculate_diffs -> setText(tr("Calculate differences")); uiG.pushButton_calculate_diffs -> setToolTip(tr("Calculate the differences between the source and the selected snapshot")); } // FUNCTIONS------------------------------------------------------------------------------------- // refreshDifWindow ===================================================================================================== //Refresh the calc diff window with text void manageDialog::refreshDifWindow(const QString &newText, const bool &appendText) { if (appendText) uiG.textBrowser_snapshot -> append(newText); else uiG.textBrowser_snapshot -> setText(newText); // QCoreApplication::processEvents(); } // updateSnapshots ===================================================================================================================== // update the snapshots date & times listwidget void manageDialog::updateSnapshots() { //clear the listWidget uiG.listWidget_dates -> clear(); calculatedDifferences.clear(); // this holds the calculated differences text for each snapshot snapCalculated.clear(); //initialize snapshot variables currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the current number of snapshots bool emptySnapList = Operation[currentOperation] -> SnapshotsListIsEmpty(); // Is the list empty ?? // first check if there is a last execution time available but no snapshots are declared // and add a new snapshot with the last execution date-time time = ( Operation[currentOperation] -> GetLastExecutionTime() ).toString("yyyyMMddhhmmss"); if ( !(time == "") && (emptySnapList) ) { Operation[currentOperation] -> AddSnapshotsListItem (time); currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the current number of snapshots emptySnapList = Operation[currentOperation] -> SnapshotsListIsEmpty(); // Is the list empty ?? } //update the listwidget with times from snapshots count=0; while (count < currentSnaps) { QDateTime currentSnapTime = QDateTime::fromString(Operation[currentOperation]-> GetSnapshotsListItem(count),"yyyyMMddhhmmss"); if ((Operation[currentOperation]-> GetSnapshotsListItem(count)) == "") // if there is no snapshot time for a reason uiG.listWidget_dates -> addItem (tr("not available","refers to a date-time")); else uiG.listWidget_dates -> addItem (currentSnapTime.toString("yyyy/MM/dd - hh:mm:ss")); calculatedDifferences.append(""); snapCalculated.append(false); count++; } if (emptySnapList) { uiG.listWidget_dates -> addItem (tr("not available","refers to a date-time")); calculatedDifferences.append(""); snapCalculated.append(false); } // select the latest snapshot uiG.listWidget_dates -> setCurrentRow(uiG.listWidget_dates -> count() - 1); } // end of manage.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/readLogFile.cpp0000666000175000017500000000746412720356451017071 0ustar luckybluckyb/* ---------------------------------- readLogFile.cpp --------------------------------------------------------------------------- Class to read a logfile from disk in a seperate thread =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "readLogFile.h" #include #include "global.h" // class ReadLogFile Constructor================================================================================================= ReadLogFile::ReadLogFile(QObject *parent) : QThread(parent) { text = ""; errorsTotal = 0; } // class ReadLogFile Destructor================================================================================================= ReadLogFile::~ReadLogFile () { logfile.close(); } // run the QThread================================================================================================= void ReadLogFile::run () { if (logUrl == "file:Does_not_exist") // if the logfile does not exist for a reason display a message { text = tr("Could not locate the logfile") + "!!"; emit error(text); return; } else { if (!logfile.open(QIODevice::ReadOnly | QIODevice::Text)) //if it exists try to open it { text = tr("Could not open the logfile") + "!!
"+ logfile.errorString() + ""; emit error(text); return; } else readFile(); } } // set the log url================================================================================================= void ReadLogFile::setLogUrl(QString logurl) { this -> logUrl = logurl; } // Return the total errors found ================================================================================================= int ReadLogFile::TotalErrors() { return errorsTotal; } // Read the logfile from disk =============================================================================================== void ReadLogFile::readFile() { QTextStream in(&logfile); QString readLine = ""; int countLines = 0; while (!in.atEnd()) // read the logfile line by line { readLine = in.readLine(); countLines++; if (readLine.startsWith(""); if ((countLines > 2000) || (in.atEnd())) //when 5000 lines are read or file is at end, append text to the logviewer { emit newText(text); text = ""; countLines = 0; } } } // end of readLogFile.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/winDialog.cpp0000666000175000017500000003115213165410113016606 0ustar luckybluckyb/* ---------------------------------- winDialog.cpp -------------------------------------------------------------------------- Class to display a dialog and declare rsync and ssh paths =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "winDialog.h" #include #include #include #include #include "qdirdialog.h" #include "global.h" // class winDialog Constructor================================================================================================= // Displays a simple dialog with text info, ok-cancel buttons and lineEdits for user input winDialog::winDialog (QWidget *parent) : QDialog (parent) { uiD.setupUi(this); uiD.lineEdit_rsyncPath -> setText(rsyncCommandPath); uiD.lineEdit_sshPath -> setText(sshCommandPath); uiD.lineEdit_cygpath -> setText(cygpathCommand); uiD.lineEdit_dosdev -> setText(dosdevCommand); uiD.lineEdit_vshadow -> setText(vshadowDir); uiD.lineEdit_tempdir -> setText(tempDirPath); uiD.lineEdit_appdir-> setText(luckyBackupDir); //connect okay & cancel pushButton SLOTs ---------------- connect ( uiD.pushButton_ok, SIGNAL( clicked() ), this, SLOT( okay() ) ); connect ( uiD.pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) ); //Connect all toolButtons with the browse SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper = new QSignalMapper(this); signalMapper -> setMapping ( uiD.toolButton_rsync, 0 ); connect (uiD.toolButton_rsync, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_ssh, 1 ); connect (uiD.toolButton_ssh, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_cygpath, 2 ); connect (uiD.toolButton_cygpath, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_dosdev, 3 ); connect (uiD.toolButton_dosdev, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_vshadow, 4 ); connect (uiD.toolButton_vshadow, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_tempdir, 5 ); connect (uiD.toolButton_tempdir, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiD.toolButton_appdir, 6 ); connect (uiD.toolButton_appdir, SIGNAL (clicked() ), signalMapper , SLOT (map())); connect(signalMapper, SIGNAL(mapped( const int)), this, SLOT( browse( const int) ) ); //Connect all toolButtons with the useDefault SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper2 = new QSignalMapper(this); signalMapper2 -> setMapping ( uiD.toolButton_defaultRsync, 0 ); connect (uiD.toolButton_defaultRsync, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultSsh, 1 ); connect (uiD.toolButton_defaultSsh, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultCygpath, 2 ); connect (uiD.toolButton_defaultCygpath, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultDosdev, 3 ); connect (uiD.toolButton_defaultDosdev, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultVshadow, 4 ); connect (uiD.toolButton_defaultVshadow, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultTempdir, 5 ); connect (uiD.toolButton_defaultTempdir, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); signalMapper2 -> setMapping ( uiD.toolButton_defaultAppdir, 6 ); connect (uiD.toolButton_defaultAppdir, SIGNAL (clicked() ), signalMapper2 , SLOT (map())); connect(signalMapper2, SIGNAL(mapped( const int)), this, SLOT( useDefault( const int) ) ); //initialize a completer for the lineEdits QCompleter *completer = new QCompleter(this); completer -> setModel(new QDirModel(completer)); uiD.lineEdit_rsyncPath -> setCompleter(completer); uiD.lineEdit_sshPath -> setCompleter(completer); uiD.lineEdit_cygpath -> setCompleter(completer); uiD.lineEdit_dosdev -> setCompleter(completer); uiD.lineEdit_vshadow -> setCompleter(completer); uiD.lineEdit_tempdir -> setCompleter(completer); uiD.lineEdit_appdir -> setCompleter(completer); } // --------------------------------okay pressed------------------------------------------------ void winDialog::okay() { rsyncCommandPath = uiD.lineEdit_rsyncPath -> text(); sshCommandPath = uiD.lineEdit_sshPath -> text(); cygpathCommand = uiD.lineEdit_cygpath -> text(); dosdevCommand = uiD.lineEdit_dosdev -> text(); vshadowDir = uiD.lineEdit_vshadow -> text(); tempDirPath = uiD.lineEdit_tempdir -> text(); luckyBackupDir = uiD.lineEdit_appdir -> text(); // if (!vshadowDir.endsWith(SLASH)) // vshadowDir=vshadowDir+SLASH; // if (!tempDirPath.endsWith(SLASH)) // tempDirPath=tempDirPath+SLASH; if (!luckyBackupDir.endsWith(SLASH)) luckyBackupDir=luckyBackupDir+SLASH; setAppDir(luckyBackupDir); close(); } // --------------------------------cancel pressed------------------------------------------------ void winDialog::cancel() { close(); } void winDialog::closeEvent(QCloseEvent *event) { event->accept(); } // browse button pressed===================================================================================================== //opens a QFileDialog to browse for files/folders locally void winDialog::browse(const int type) { QString newLineEdit; QDirDialog* fd; switch (type) { //rsync browse button case 0: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select rsync command", "file selection dialog title"),uiD.lineEdit_rsyncPath -> text(),tr("Executable Files (*.exe)")); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_rsyncPath -> setText(modifySlashes(newLineEdit)); break; //ssh browse button case 1: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select ssh command", "file selection dialog title"),uiD.lineEdit_sshPath -> text(),tr("Executable Files (*.exe)")); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_sshPath -> setText(modifySlashes(newLineEdit)); break; //cygpath browse button case 2: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select cygpath command", "file selection dialog title"),uiD.lineEdit_cygpath -> text(),tr("Executable Files (*.exe)")); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_cygpath -> setText(modifySlashes(newLineEdit)); break; //dosdev browse button case 3: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select dosdev command", "file selection dialog title"),uiD.lineEdit_dosdev -> text(),tr("Executable Files (*.exe)")); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_dosdev -> setText(modifySlashes(newLineEdit)); break; //vshadow browse button case 4: fd = new QDirDialog( ".exe", uiD.lineEdit_vshadow -> text(), this, "Dir selection" ); fd->setWindowTitle( "Select vshadow directory" ); // show the dialog if( fd->exec() == QDialog::Accepted ) newLineEdit = (fd->directory()).absolutePath(); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_vshadow -> setText(modifySlashes(newLineEdit)); break; //temp browse button case 5: fd = new QDirDialog( "", uiD.lineEdit_tempdir -> text(), this, "Dir selection" ); fd->setWindowTitle( "Select temporary directory" ); // show the dialog if( fd->exec() == QDialog::Accepted ) newLineEdit = (fd->directory()).absolutePath(); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_tempdir -> setText(modifySlashes(newLineEdit)); break; //luckybackup browse button case 6: fd = new QDirDialog( ".ini", uiD.lineEdit_appdir -> text(), this, "Dir selection" ); fd->setWindowTitle( "Select luckybackup directory" ); // show the dialog if( fd->exec() == QDialog::Accepted ) newLineEdit = (fd->directory()).absolutePath(); if (newLineEdit != "") //if something is selected indeed uiD.lineEdit_appdir -> setText(modifySlashes(newLineEdit)); break; } } // default button pressed===================================================================================================== //opens a QFileDialog to browse for files/folders locally //This dialog is possible only for non-*nix systems void winDialog::useDefault(const int type) { switch (type) { //rsync default button case 0: if (WINrunning) uiD.lineEdit_rsyncPath -> setText(rsyncDefaultWinCommand); // Default rsync path for windows (declared in global.h) if (OS2running) uiD.lineEdit_rsyncPath -> setText(rsyncDefaultCommand); // Default rsync path for OS2 (declared in global.h) break; //ssh default button case 1: if (WINrunning) uiD.lineEdit_sshPath -> setText(sshDefaultWinCommand); // Default ssh path for windows (declared in global.h) if (OS2running) uiD.lineEdit_sshPath -> setText(sshDefaultCommand); // Default ssh path for OS2 (declared in global.h) break; case 2: uiD.lineEdit_cygpath -> setText(cygpathDefaultCommand); break; case 3: uiD.lineEdit_dosdev -> setText(dosdevDefaultCommand); break; case 4: uiD.lineEdit_vshadow -> setText(vshadowDefaultDir); break; case 5: uiD.lineEdit_tempdir -> setText(tempDefaultDirPath); break; case 6: uiD.lineEdit_appdir -> setText(luckyBackupDefaultDir); break; } } // modifySlashes =========================================================================================================== // function to change / to \ for windows (normally when file dialog is used) QString winDialog::modifySlashes(QString pathToModify) { pathToModify.replace("/",SLASH); return pathToModify; } // end of winDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/patternEditor.cpp0000666000175000017500000003554112722006207017526 0ustar luckybluckyb/* ---------------------------------- patternEditor.cpp --------------------------------------------------------------------------- Displays the pattern editor =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== ===============================================================================================================================*/ #include "patternEditor.h" #include #include #include #include "global.h" #include "textDialog.h" // class patternEditor Constructor================================================================================================= // Displays the pattern editor dialog patternEditor::patternEditor (QString sourceRoot, QWidget *parent) : QDialog (parent) { uiP.setupUi(this); uiP.groupBox_name -> setEnabled (false); uiP.checkBox_pathAbsolute -> setEnabled (false); uiP.checkBox_pathAny -> setEnabled (false); uiP.spinBox_pathDeeper -> setEnabled (false); uiP.label_pathDeeper -> setEnabled (false); uiP.toolButton_browseFile -> setVisible(false); uiP.checkBox_pathAbsolute -> setVisible(false); uiP.label_browse -> setText(tr("directory :")); anchorSource=""; itsPattern = "no pattern defined yet"; SourceRoot = sourceRoot; if (!SourceRoot.endsWith(SLASH)) { anchorSource = sourceRoot.right(sourceRoot.size()-sourceRoot.lastIndexOf(SLASH)); SourceRoot.append(SLASH); } patternLine = ""; //connect okay & cancel pushButton SLOTs ---------------- connect ( uiP.pushButton_okay, SIGNAL( clicked() ), this, SLOT( okay() ) ); connect ( uiP.pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) ); connect ( uiP.pushButton_reset, SIGNAL( clicked() ), this, SLOT( resetFileds() ) ); //Connect all toolButtons with the browse SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper = new QSignalMapper(this); signalMapper -> setMapping ( uiP.toolButton_browseFile, 0 ); connect (uiP.toolButton_browseFile, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiP.toolButton_browseDir, 1 ); connect (uiP.toolButton_browseDir, SIGNAL (clicked() ), signalMapper , SLOT (map())); connect(signalMapper, SIGNAL(mapped( const int)), this, SLOT( browse( const int) ) ); // connect all actions to fill-in the pattern at the lineEdit connect (uiP.radioButton_fileSpecific , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.radioButton_directorySpecific , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.radioButton_fileSet , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.radioButton_directorySet , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.lineEdit_browse , SIGNAL(textChanged(QString)), this, SLOT(fillPattern())); connect (uiP.spinBox_pathDeeper , SIGNAL(valueChanged(int)), this, SLOT(fillPattern())); connect (uiP.checkBox_directoryContents , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.lineEdit_nameIsExactly , SIGNAL(textChanged(QString)), this, SLOT(fillPattern())); connect (uiP.lineEdit_nameStartsWith , SIGNAL(textChanged(QString)), this, SLOT(fillPattern())); connect (uiP.lineEdit_nameEndsWith , SIGNAL(textChanged(QString)), this, SLOT(fillPattern())); connect (uiP.lineEdit_nameContains , SIGNAL(textChanged(QString)), this, SLOT(fillPattern())); connect (uiP.radioButton_fileSpecific , SIGNAL(toggled(bool)), this, SLOT(fileRadioChanged())); connect (uiP.checkBox_pathAny , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); connect (uiP.checkBox_pathAbsolute , SIGNAL(clicked(bool)), this, SLOT(fillPattern())); } // SLOTS------------------------------------------------------------------------------------- // --------------------------------okay pressed------------------------------------------------ void patternEditor::okay() { itsPattern = uiP.lineEdit_patternFinal -> text(); close(); } // --------------------------------cancel pressed------------------------------------------------ void patternEditor::cancel() { close(); } void patternEditor::closeEvent(QCloseEvent *event) { event->accept(); } // --------------------------------reset pressed------------------------------------------------ //reset all fields to default values void patternEditor::resetFileds() { uiP.lineEdit_nameIsExactly -> setText(""); uiP.lineEdit_nameStartsWith -> setText(""); uiP.lineEdit_nameEndsWith -> setText(""); uiP.lineEdit_nameContains -> setText(""); uiP.groupBox_name -> setEnabled (false); uiP.checkBox_pathAbsolute -> setCheckState(Qt::Unchecked); uiP.checkBox_pathAbsolute -> setEnabled (false); uiP.checkBox_pathAbsolute -> setVisible(false); uiP.checkBox_pathAny -> setCheckState(Qt::Unchecked); uiP.checkBox_pathAny -> setEnabled (false); uiP.spinBox_pathDeeper -> setValue(0); uiP.spinBox_pathDeeper -> setEnabled (false); uiP.label_pathDeeper -> setEnabled (false); uiP.toolButton_browseFile -> setVisible(false); uiP.checkBox_directoryContents -> setCheckState(Qt::Unchecked); uiP.radioButton_directorySpecific -> setChecked(true); uiP.lineEdit_browse -> setText(""); uiP.lineEdit_browse -> setEnabled (true); uiP.lineEdit_patternFinal -> setText(""); uiP.toolButton_browseDir -> setVisible(true); uiP.label_browse -> setText(tr("directory :")); } // browse button pressed===================================================================================================== //opens a QFileDialog to browse for files/folders locally void patternEditor::browse(const int type) { QString newLineEdit; switch (type) { //file browse button case 0: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select file"),SourceRoot); if (newLineEdit != "") //if something is selected indeed (not cancel pressed) { if (notXnixRunning) newLineEdit.replace("/",SLASH); // The OS2 filedialog captures path with *nix slashes. Change it to OS2 style if (!newLineEdit.startsWith(SourceRoot)) { textDialog textdialogW ("QtWarning", tr("Please choose a file within the source")+" :

" + SourceRoot, this); textdialogW.exec(); } else uiP.lineEdit_browse -> setText(newLineEdit); } break; //directory browse button case 1: newLineEdit = QFileDialog::getExistingDirectory (this, tr("Select directory"),SourceRoot); if (newLineEdit != "") //if something is selected indeed (not cancel pressed) { if (notXnixRunning) newLineEdit.replace("/",SLASH); // The OS2 filedialog captures path with *nix slashes. Change it to OS2 style if (!newLineEdit.endsWith(SLASH)) newLineEdit.append(SLASH); if (newLineEdit == "//") // root selected - *nix newLineEdit = "/"; if (!newLineEdit.startsWith(SourceRoot)) { textDialog textdialogW ("QtWarning", tr("Please choose a directory within the source")+" :

" + SourceRoot, this); textdialogW.exec(); } else uiP.lineEdit_browse -> setText(newLineEdit); } break; } } //fillPattern ==================================================================================================================== //SLOT to fill-in the pattern from the info in the dialog void patternEditor::fillPattern() { patternLine = ""; // Use absolute path ---------------------------------------------------------------------------------------------------------- if (uiP.checkBox_pathAbsolute -> isEnabled()) { bool pathAbsoluteState = uiP.checkBox_pathAbsolute -> isChecked(); uiP.lineEdit_browse -> setEnabled(pathAbsoluteState); uiP.toolButton_browseFile -> setEnabled(pathAbsoluteState); uiP.toolButton_browseDir -> setEnabled(pathAbsoluteState); uiP.label_pathDeeper -> setEnabled(pathAbsoluteState); uiP.spinBox_pathDeeper -> setEnabled(pathAbsoluteState); uiP.checkBox_pathAny -> setEnabled(pathAbsoluteState); } else { uiP.lineEdit_browse -> setEnabled(false); uiP.toolButton_browseFile -> setEnabled(false); uiP.toolButton_browseDir -> setEnabled(false); uiP.label_pathDeeper -> setEnabled(false); uiP.spinBox_pathDeeper -> setEnabled(false); uiP.checkBox_pathAny -> setEnabled(false); } if ( (uiP.radioButton_fileSpecific -> isChecked()) || (uiP.radioButton_directorySpecific -> isChecked()) ) { uiP.lineEdit_browse -> setEnabled(true); uiP.toolButton_browseFile -> setEnabled(true); uiP.toolButton_browseDir -> setEnabled(true); } // Read the path lineEdit if (uiP.lineEdit_browse -> isEnabled()) { patternLine = uiP.lineEdit_browse -> text(); //first get the string from the path lineEdit if (patternLine.startsWith(SourceRoot)) patternLine.replace (SourceRoot, anchorSource + SLASH); // replace the starting source in the pattern with / } //go deeper in path ------------------- ------------------------------------------------------------------------------- if ( (uiP.checkBox_pathAny->isEnabled()) && (uiP.checkBox_pathAny->isChecked()) ) patternLine.append("**"+SLASH); else { count=0; while ( (count < uiP.spinBox_pathDeeper->value()) && (uiP.spinBox_pathDeeper->isEnabled())) { patternLine.append("*"+SLASH); count++; } } // groupbox NAME actions ------------------------------------------------------------------------------------------------ if (uiP.lineEdit_nameIsExactly->text()=="") { uiP.lineEdit_nameStartsWith -> setEnabled(true); uiP.lineEdit_nameEndsWith -> setEnabled(true); uiP.lineEdit_nameContains -> setEnabled(true); } else { uiP.lineEdit_nameStartsWith -> setEnabled(false); uiP.lineEdit_nameEndsWith -> setEnabled(false); uiP.lineEdit_nameContains -> setEnabled(false); } if (uiP.lineEdit_nameIsExactly -> isEnabled()) patternLine.append(uiP.lineEdit_nameIsExactly->text()); if ( (uiP.lineEdit_nameStartsWith -> isEnabled()) && (!(uiP.lineEdit_nameStartsWith->text() == "")) ) patternLine.append(uiP.lineEdit_nameStartsWith -> text() + "*"); if ( (uiP.lineEdit_nameContains -> isEnabled()) && (!(uiP.lineEdit_nameContains -> text()=="")) ) { if (uiP.lineEdit_nameStartsWith -> text()=="") patternLine.append("*"); patternLine.append(uiP.lineEdit_nameContains -> text() + "*"); } if ( (uiP.lineEdit_nameEndsWith->isEnabled()) && (!(uiP.lineEdit_nameEndsWith -> text()=="")) ) { if ( (uiP.lineEdit_nameContains -> text()=="") && (uiP.lineEdit_nameStartsWith -> text()=="") ) patternLine.append("*"); patternLine.append( uiP.lineEdit_nameEndsWith->text()); } // RADIO BUTTONS actions ---------------------------------------------------------------------------------------------------- if (uiP.radioButton_fileSpecific -> isChecked()) // if file specific radio button is selected { uiP.label_browse -> setVisible(true); uiP.label_browse -> setText(tr("file :")); if (patternLine.endsWith(SLASH)) patternLine.chop(1); } if (uiP.radioButton_directorySpecific -> isChecked()) // if directory specific radio button is selected { uiP.label_browse -> setVisible(true); uiP.label_browse -> setText(tr("directory :")); if ((!(patternLine.endsWith(SLASH))) && (!(patternLine == "")) ) patternLine.append(SLASH); } if (uiP.radioButton_fileSet -> isChecked()) // if file set radio button is selected { uiP.checkBox_pathAbsolute -> setEnabled (true); uiP.label_browse -> setVisible(false); if (patternLine.endsWith(SLASH)) patternLine.chop(1); } if (uiP.radioButton_directorySet -> isChecked()) // if directory set radio button is selected { uiP.checkBox_pathAbsolute -> setEnabled (true); uiP.label_browse -> setVisible(false); if ( (!(patternLine.endsWith(SLASH))) && (!(patternLine == "")) ) patternLine.append(SLASH); } //just the contents of a directory ------------------------------------------------------------------------------- if ( (uiP.checkBox_directoryContents->isChecked()) && (uiP.checkBox_directoryContents->isEnabled()) ) patternLine.append("**"); if (notXnixRunning) patternLine.replace(SLASH,"/"); // replace OS2 slashes with *nix ones -> OS2 uses *nix slashes for patterns uiP.lineEdit_patternFinal -> setText(patternLine); } //fileRadioChanged---------------------------------------------------------------------------- //actions when the file specific radio button is toggled void patternEditor::fileRadioChanged() { uiP.lineEdit_browse -> setText(""); } // --------------------------------accessors----------------------------------- QString patternEditor::getPattern() { return itsPattern; } // end of patternEditor.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/patternEditor.h0000666000175000017500000000543712073243674017206 0ustar luckybluckyb// ---------------------------------- patternEditor.h --------------------------------------------------------------------------- // header file used by patternEditor.cpp //=============================================================================================================================== //=============================================================================================================================== // This file is part of "luckyBackup" project // Copyright, Loukas Avgeriou // luckyBackup is distributed under the terms of the GNU General Public License // luckyBackup 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. // // luckyBackup 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 luckyBackup. If not, see . // project version : Please see "main.cpp" for project version // developer : luckyb // last modified : 26 Feb 2010 //=============================================================================================================================== //=============================================================================================================================== #ifndef PATTERNEDITOR_H #define PATTERNEDITOR_H #include "ui_patternEditor.h" //============================================================================================================== //Declaration of patternEditor class class patternEditor : public QDialog { Q_OBJECT public: patternEditor (QString, QWidget *parent=0); QString getPattern(); private slots: void okay(); void cancel(); void resetFileds(); void browse(const int); //SLOT to browse for a directory or file void fillPattern(); //SLOT to fill-in the pattern from all the info from the dialog void fileRadioChanged(); //SLOT when the specific file radio button is toggled private: Ui::patternEditor uiP; QString itsPattern; QString SourceRoot; //this holds the source of the task QString patternLine; //this holds the final pattern to insert QString anchorSource; //this holds the final directory of the source when "backup the entire source directory by name" is used int count; //simple count variable protected: void closeEvent(QCloseEvent*); }; #endif // end of patternEditor.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/logDialog.cpp0000666000175000017500000001400412722006207016572 0ustar luckybluckyb/* ---------------------------------- logDialog.cpp --------------------------------------------------------------------------- Class to display the "view log" dialog =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "logDialog.h" #include #include "global.h" #include "readLogFile.h" // class logDialog Constructor================================================================================================= logDialog::logDialog (QUrl logUrl, QWidget *parent) : QDialog (parent) { uiL.setupUi(this); logText = ""; errorCount = 0; totalErrors = 0; readlogfile = new ReadLogFile(this); connect( readlogfile, SIGNAL(error(const QString)), this, SLOT(refreshWindowError(const QString &)) ); connect( readlogfile, SIGNAL(newText(const QString)), this, SLOT(refreshWindow(const QString &)) ); connect( readlogfile, SIGNAL(terminated()), this, SLOT(logReadEnd())); connect( readlogfile, SIGNAL(finished()), this, SLOT(logReadEnd())); (uiL.logView->document())->setMaximumBlockCount(50000); // set maximum blocks to avoid freeze connect ( uiL.button_close, SIGNAL( clicked() ), this, SLOT( closeLog() ) ); //connect close pushButton SLOT ---------------- connect ( uiL.button_previous, SIGNAL( clicked() ), this, SLOT( prevError() ) ); //connect previous pushButton SLOT connect ( uiL.button_next, SIGNAL( clicked() ), this, SLOT( nextError() ) ); //connect next pushButton SLOT readlogfile -> setLogUrl(logUrl.toString()); QTimer::singleShot(500, this, SLOT(readLogFileNOW())); // allow some time for the dialog to appear } // readLogFileNOW ===================================================================================================== //Start a new thread to read the logfile void logDialog::readLogFileNOW() { uiL.logView -> setText(tr("loading logfile...")); uiL.button_close -> setText(tr("wait")); readlogfile -> start(); } // refreshWindow ===================================================================================================== //Refresh the log window with text void logDialog::refreshWindow(const QString &newText) { if (uiL.logView -> toPlainText() == "loading logfile...") uiL.logView -> clear(); uiL.logView -> append(newText); totalErrors = readlogfile -> TotalErrors(); // QCoreApplication::processEvents(); } // logReadEnd ===================================================================================================== //Do some stuff when finished reading log void logDialog::logReadEnd() { if (totalErrors > 0) uiL.button_next -> setEnabled(true); uiL.button_close -> setText(tr("close")); uiL.button_close -> setEnabled(true); errorCount = 0; //set current error to be the first of the logfile firstScroll=true; } // refreshWindowError ===================================================================================================== //Refresh the log window with Error text void logDialog::refreshWindowError(const QString &errorText) { uiL.logView -> setText(errorText); uiL.button_next -> setEnabled(false); uiL.button_previous -> setEnabled(false); uiL.button_close -> setText(tr("close")); uiL.button_close -> setEnabled(true); } // close button pressed===================================================================================================== void logDialog::closeLog() { close(); //emmit a QcloseEvent } // previous button pressed===================================================================================================== void logDialog::prevError() { errorCount--; //decrease the current error by one if (errorCount == 0 ) // if the current error is the first within the logfile disable the previous button uiL.button_previous -> setEnabled(false); if (errorCount < totalErrors-1) //if the current error is less than the last one within the logfile enable the next button uiL.button_next -> setEnabled(true); uiL.logView -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); } // next button pressed===================================================================================================== void logDialog::nextError() { if (!firstScroll) errorCount++; // increase the current error by one firstScroll = false; if (errorCount == totalErrors-1) // If the current error is the last within the logfile disable the next button uiL.button_next -> setEnabled(false); if (errorCount > 0) // if the current error is greater than the first one within the logfile enable the previous button uiL.button_previous -> setEnabled(true); uiL.logView -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); //scroll to the current error } // end of logDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/main.cpp0000666000175000017500000001211713367035514015631 0ustar luckybluckyb/*-------------------------main.cpp------------------------------------------ Main project is "luckyBackup" a backup and sync tool project version : 0.5.0 =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . developer : luckyb last modified : 2 Nov 2018 =============================================================================================================================== =============================================================================================================================== */ // Perform various initial checks // include the qt libraries needed & the main window header file // show the main window or execute in command line mode #include #include #include "luckybackupwindow.h" #include "global.h" #include "commandline.h" QCoreApplication* createApplication(int &argc, char *argv[]) { // just copy&paste from Qt docu http://doc.qt.io/qt-5/qapplication.html for (int i = 1; i < argc; ++i) if (!qstrcmp(argv[i], "-c") || !(qstrcmp(argv[i], "--no-questions"))) return new QCoreApplication(argc, argv); return new QApplication(argc, argv); } int main(int argc, char *argv[]) { QScopedPointer app(createApplication(argc, argv)); //arguments test if (!argumentsTest(argc,argv)) return 1; // error code1: something wrong with the command arguments - app fail to start (or just --help or --version given as args) //profile validity check for console mode or gui-no profile specified (will use default) if ( (runImmediately) && (!loadCurrentProfile()) ) return 2; // profile is not valid or does not exist // task list validity check if ( (runImmediately) && (!check_list()) ) return 3; // task list is not ok // declared directories check if ( (runImmediately) && (!check_dirs()) ) return 4; // declared dirs are not ok // declare the rsync & ssh commands for use either at console or gui mode declareRsyncCommand(); // if (!console) //execute gui if (qobject_cast(app.data())) //execute gui { // QApplication app(argc, argv); //translation QString locale = QLocale::system().name(); // Load standard Qt appTranslator translator_qt.load(QString("qt_") + locale, QLibraryInfo::location(QLibraryInfo::TranslationsPath)); app->installTranslator(&translator_qt); //load LB translator transDir.setPath(relativeTransDir); if (transDir.exists()) appTranslator.load(QString("luckybackup_") + locale, relativeTransDir); else appTranslator.load(QString("luckybackup_") + locale, systemTransDir); app->installTranslator(&appTranslator); // windows related stuff /* appPath = app->applicationDirPath(); // This is used for windows app path. It's also causing a ... //"QCoreApplication::applicationDirPath: Please instantiate the QApplication object first" WARNING message rsyncDefaultWinCommand = appPath+"/rsync.exe"; // Holds the default rsync command for windows sshDefaultWinCommand = appPath+"/ssh.exe"; // Holds the default ssh command for windows mapdrive="w"; vshadowDir= appPath; vshadowDefaultDir= appPath; dosdevCommand= appPath+"/dosdev.exe"; dosdevDefaultCommand= appPath+"/dosdev.exe"; cygpathCommand= appPath+"/cygpath.exe"; cygpathDefaultCommand= appPath+"/cygpath.exe"; */ // end of windows stuff ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ luckyBackupWindow luckybackup; if (!silentMode) luckybackup.show(); return app->exec(); } else //execute luckybackup in console mode { commandline commandLine; return commandLine.result(); //then execute anything necessary } return 1; } // end of main.cpp--------------------------------------------------------- luckybackup-0.5.0/src/winDialog.h0000666000175000017500000000473613165410113016263 0ustar luckybluckyb/* ---------------------------------- winDialog.h --------------------------------------------------------------------------- header file used by winDialog.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 16 Jan 2012 =============================================================================================================================== =============================================================================================================================== */ #ifndef WINDIALOG_H #define WINDIALOG_H #include "ui_winDialog.h" //============================================================================================================== //Declaration of winDialog class class winDialog : public QDialog { Q_OBJECT public: winDialog (QWidget *parent=0); QString modifySlashes(QString); // function to change / to \ for OS2 & windows (normally when file dialog is used) private slots: void okay(); void cancel(); void browse(const int); //SLOT to browse for a directory or file to use at the lineEdits void useDefault(const int); //SLOT to revert the lineEdits to their default values private: Ui::winDialog uiD; protected: void closeEvent(QCloseEvent*); }; #endif // end of winDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/modifyDialog.h0000666000175000017500000001171113165410113016744 0ustar luckybluckyb/* ---------------------------------- modifyDialog.h --------------------------------------------------------------------------- Header file for modifyDialog.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 17 Feb 2011 =============================================================================================================================== =============================================================================================================================== */ #ifndef MODIFYDIALOG_H #define MODIFYDIALOG_H //include header file that qmake produces from "*.ui" created with qt designer #include "ui_modifyDialog.h" #include "operationClass.h" #include "patternEditor.h" //============================================================================================================== //Declaration of rsyncDialog class (this will execute rsync and show progress in a dialog) class modifyDialog : public QDialog { Q_OBJECT public: modifyDialog (int, QDialog *parent=0); operation *fillOperationArray(); //function to fill the data of an operation array item from the window fields void fillModifyWindow(operation*); //function to fill the window fields from the data of an operation array item void modifyTrailing(); //function to add a remove a trailing "/" at the end of the source or dest dir QString modifyOS2Slashes(QString); // function to change / to \ for OS2 (normally when file dialog is used) QStringList StdArguments; //this variable holds the standard arguments used by rsync int ArrayPosition; //this holds the item's position in the "operation array" //bool validation; //becomes true if "validation check" button is pressed int count; //simple count variable !! private slots: void advancedPressed(bool); //SLOT when advanced buutton pressed to hide part of widget void cancelPressed(); //SLOT when cancel pushbutton pressed void okayPressed(); //SLOT when okay pushbutton pressed void commandPressed(); //SLOT when show command pushbutton pressed void addListItem(const int); //SLOT to add an item in a list void removeListItem(const int); //SLOT to remove an item from a list void editListItem(const int); //SLOT to edit an item from a list void moveListItemUp(const int); //SLOT to move an item from a list void moveListItemDown(const int); //SLOT to move an item from a list void browse(const int); //SLOT to browse for a directory or file void getPattern(const int); //SLOT to launch the pattern editor and insert the pattern to a lineEdit void TaskTypeChanged(int); // SLOT to act upon task type changes void disableExcludeTab(); // SLOT that disables the exclude tab according to include settings private: Ui::modifyDialog uiM; int stdWindowWidth, minWindowHeight, maxWindowHeight; //standard window dimensions QString stripInvalidCharacters(QString); //Strips off invalid filename characters from a string bool listItemEditMode; // Becomes true is any list item is edited QString origAddText,origRemoveText; // This will hold a widget's original text when we need to change it for a while QString origAddToolTip,origRemoveToolTip; // This will hold a widget's original tooltip when we need to change it for a while QString alsoExecuteTooltip; // This will hold the tooltip of each "also execute" command Qt::CheckState alsoExecuteState; // Will hold the state of an also execute command protected: void closeEvent(QCloseEvent *event); //when the close button of the dialog pressed }; #endif // end of modifyDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/emailDialog.cpp0000666000175000017500000002450212722006207017104 0ustar luckybluckyb/* ---------------------------------- emailDialog.cpp --------------------------------------------------------------------------- // Class to echedule an email report after a profile execution =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "emailDialog.h" #include #include "textDialog.h" #include "global.h" // class emailDialog Constructor=============================================================================================== // Displays a dialog to schedule email reports emailDialog::emailDialog (QDialog *parent) : QDialog (parent) { uiE.setupUi(this); fillWindow(); //connect okay & cancel pushButton SLOTs ---------------- connect ( uiE.pushButton_ok, SIGNAL( clicked() ), this, SLOT( okay() ) ); connect ( uiE.pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) ); connect ( uiE.pushButton_test, SIGNAL( clicked() ), this, SLOT( emailTest() ) ); connect ( uiE.lineEdit_command, SIGNAL( textEdited(QString) ), this, SLOT( enableTLS() ) ); connect ( uiE.checkBox_disable_tls, SIGNAL( stateChanged(int) ), this, SLOT( enableTLS() ) ); //Connect all "revert to default" toolButtons with the revertDefault SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper1 = new QSignalMapper(this); signalMapper1 -> setMapping ( uiE.toolButton_default_command, 0 ); connect (uiE.toolButton_default_command, SIGNAL (clicked() ), signalMapper1 , SLOT (map())); signalMapper1 -> setMapping ( uiE.toolButton_default_subject, 1 ); connect (uiE.toolButton_default_subject, SIGNAL (clicked() ), signalMapper1 , SLOT (map())); signalMapper1 -> setMapping ( uiE.toolButton_default_body, 2 ); connect (uiE.toolButton_default_body, SIGNAL (clicked() ), signalMapper1 , SLOT (map())); connect(signalMapper1, SIGNAL(mapped( const int)), this, SLOT( revertDefault( const int) ) ); GoOn = 0; } // SLOTS------------------------------------------------------------------------------------- // --------------------------------okay pressed------------------------------------------------ void emailDialog::okay() { GoOn = 0; // ok pressed -> Everything good fillVariables(); if (!checkFields()) { textDialog textdialogW ("QtWarning", warningMessage, this); textdialogW.exec(); return; // do not proceed if something is wrong with the fields } close(); //emmit a QcloseEvent } // --------------------------------cancel pressed------------------------------------------------ void emailDialog::cancel() { GoOn = 1; // cancel pressed close(); //emmit a QcloseEvent } // -------------------------------- closeEvent emitted -------------------------------- void emailDialog::closeEvent(QCloseEvent *event) { event -> accept(); } // revertDefault ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //SLOT to revert a field to the default value void emailDialog::revertDefault(const int field) { switch (field) { //command case 0: if (WINrunning) { uiE.lineEdit_command -> setText(emailDefaultWinCommand); uiE.lineEdit_arguments -> setText(emailDefaultWinArguments); } else { uiE.lineEdit_command -> setText(emailDefaultCommand); uiE.lineEdit_arguments -> setText(emailDefaultArguments); } break; //subject case 1: uiE.lineEdit_arg_subject -> setText(emailDefaultSubject); break; //body text case 2: uiE.textBrowser_arg_body -> setText(emailDefaultBody); break; } enableTLS(); } // Check if all fields are ok bool emailDialog::checkFields() { bool returnVal = true; if (uiE.checkBox_conditionNever->isChecked()) // if the never condition is checked, just return. No email will be sent anyway return returnVal; warningMessage = ""; if (uiE.lineEdit_command -> text() == "") { warningMessage.append(tr("The command field is empty") + "!! \n"); returnVal = false; } /* This is commented because a command with no arguments (eg a script) is possible to be used if (uiE.lineEdit_arguments -> text() == "") { warningMessage.append(tr("The command arguments field is empty") + "!! \n"); returnVal = false; }*/ return returnVal ; } // fillWindow // Fill gui fields from variables void emailDialog::fillWindow() { uiE.lineEdit_command -> setText(emailCommand); uiE.lineEdit_arguments -> setText(emailArguments); uiE.lineEdit_arg_from -> setText(emailFrom); uiE.lineEdit_arg_to -> setText(emailTo); uiE.lineEdit_arg_subject -> setText(emailSubject); uiE.lineEdit_arg_smtp -> setText(emailSMTP); uiE.textBrowser_arg_body -> setText(emailBody); uiE.checkBox_conditionNever -> setChecked(emailNever); uiE.checkBox_conditionError -> setChecked(emailError); uiE.checkBox_conditionSchedule -> setChecked(emailSchedule); uiE.checkBox_disable_tls -> setChecked(emailTLS); enableTLS(); } // fillVariables // Fill variables from gui fields void emailDialog::fillVariables() { emailCommand = uiE.lineEdit_command -> text(); emailArguments = uiE.lineEdit_arguments -> text(); emailFrom = uiE.lineEdit_arg_from -> text(); emailTo = uiE.lineEdit_arg_to -> text(); emailSubject = uiE.lineEdit_arg_subject -> text(); if (WINrunning) { QStringList smtpSrv = (uiE.lineEdit_arg_smtp -> text()).split(":"); emailSMTP = smtpSrv.first(); QString smtpPort = "25"; if (smtpSrv.length()>1) smtpPort=smtpSrv.at(1); //QString smtpUser = uiE.lineEdit_arg_smtp_user->text(); // security issues ? //QString smtpPass = uiE.lineEdit_arg_smtp_pass->text(); // security issues ? } else emailSMTP = uiE.lineEdit_arg_smtp -> text(); emailBody = uiE.textBrowser_arg_body -> toPlainText(); emailNever = uiE.checkBox_conditionNever -> isChecked(); emailError = uiE.checkBox_conditionError -> isChecked(); emailSchedule = uiE.checkBox_conditionSchedule -> isChecked(); emailTLS = uiE.checkBox_disable_tls -> isChecked(); // Windows TESTING purposes for Juan TESTING~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /* if (WINrunning) { // Execute the email command QProcess *emailProcess; emailProcess = new QProcess; emailProcess -> setProcessChannelMode(QProcess::MergedChannels); QDir::setCurrent(luckyBackupDir); emailProcess -> setWorkingDirectory(luckyBackupDir); QStringList args; if (!smtpUser.isEmpty() && !smtpPass.isEmpty()) { args << "-install" << emailSMTP << emailFrom <<"2" << smtpPort <<"-" << smtpUser << smtpPass; emailProcess -> start ("blat.exe",args); emailProcess -> waitForFinished(10000); } // Build the return string ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //QString errorOccured = emailProcess -> errorString(); }*/ // WINDOWS TESTING END ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ } // emailTest // Send an email now, using current gui field values void emailDialog::emailTest() { fillVariables(); if (!checkFields()) { textDialog textdialogW ("QtWarning", warningMessage, this); textdialogW.exec(); return; // do not proceed if something is wrong with the fields (eg command is empty) } warningMessage = sendEmailNow(true); textDialog textdialogW ("emailOutput",warningMessage, this); textdialogW.exec(); } // enableTLS // enable/disable the TLS option void emailDialog::enableTLS() { QString tlsArgument= "-o tls=no"; QString tempEmailArguments = uiE.lineEdit_arguments -> text(); tempEmailArguments.remove(tlsArgument +" "); tempEmailArguments.remove(" " + tlsArgument); //hide or show the "disable TLS" option if "sendemail" is used as command if (uiE.lineEdit_command -> text() == emailDefaultCommand) { uiE.checkBox_disable_tls -> setEnabled(true); if (uiE.checkBox_disable_tls -> isChecked()) tempEmailArguments.prepend(tlsArgument + " "); } else uiE.checkBox_disable_tls -> setEnabled(false); uiE.lineEdit_arguments -> setText(tempEmailArguments); } // --------------------------------accessors----------------------------------- // Return an integer according to different status int emailDialog::getGoOn() { return GoOn ; } // end of emailDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/readLogFile.h0000666000175000017500000000467112073243674016536 0ustar luckybluckyb// ---------------------------------- readLogFile.h --------------------------------------------------------------------------- // Header file for readLogFile.cpp /* =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 27 Aug 2010 =============================================================================================================================== =============================================================================================================================== */ #ifndef READLOGFILE_H #define READLOGFILE_H #include //============================================================================================================== //Declaration of readLogFile class (this will read a log file from disk in a seperate thread) class ReadLogFile : public QThread { Q_OBJECT public: explicit ReadLogFile(QObject *parent = 0); ~ReadLogFile(); void setLogUrl(QString logUrl); //set the url of the logfile int TotalErrors(); //return the total number of errors found protected: void run(); void readFile(); signals: void error(const QString &message ); void newText(const QString &logLine); private: //QString logFileName; QString logUrl; QString text; int errorsTotal; }; #endif // end of readLogfile.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/manage.h0000666000175000017500000000757712073243674015621 0ustar luckybluckyb/* ---------------------------------- manage.h --------------------------------------------------------------------------- header file used by manage.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : Loukas Avgeriou last modified : 01 Sep 2010 =============================================================================================================================== =============================================================================================================================== */ #ifndef MANAGE_H #define MANAGE_H #include "ui_manage.h" class CalcDiffThread; //============================================================================================================== //Declaration of manageDialog class (this is the dialog that manages existing backups of a task) class manageDialog : public QDialog { Q_OBJECT public: manageDialog (QDialog *parent=0); private slots: void cancel(); // close the manage dialog void logView(); // view the log file void restoreBackup(); // launch the restore wizard void deleteBackup(); // launch the delete wizard void fixGui(); // makes some changes to the gui according to various stuff void SnapshotsListSelected(); //Triggered when selection changes void hideSourceStuff(); // hide -show source stuff void calculateDifferences(); // calculate differences between source and snapshot void calcDiffEnd(); // diffs have been calculated - update viewer with new text void refreshDifWindow(const QString &, const bool &); // update window with text concerning diff calculations private: Ui::manageDialog uiG; QString source; QString sourceLast; QString dest; QString time; QString CurrentSnapshotString; // This is the current snapshot in YYYYmmddHHmmss format QString CurrentSnapshotDirectory ; // This is the full path of the current snapshot directory int CurrentSnapshotNo; // This is the current snapshot number (order in list). Becomes 0,1,2 .... currentSnaps int currentSnaps; // this is the current number of already created snapshots int count; //simple count variable bool syncTYPE; // This will become true if it is a sync task bool abortCalcThread; // This will become true if the calculations thread is aborted bool sourceVisible,viewLogVisible,deleteVisible,restoreVisible; // Helps to hide/show source stuff QStringList calculatedDifferences;// Text of calculated deifferences is stored here for each snapshot QList snapCalculated; // becomes true if differences have been calculated for a snapshot void updateSnapshots(); CalcDiffThread * calcdiffthread; //thread to calculate differences between snap & source protected: void closeEvent(QCloseEvent *event); }; #endif // end of manage.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/textDialog.cpp0000666000175000017500000002446213165410113017003 0ustar luckybluckyb/* ---------------------------------- textDialog.cpp -------------------------------------------------------------------------- Class to display a simple go-noGo dialog =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "textDialog.h" #include #include "global.h" // class textDialog Constructor================================================================================================= // Displays a simple dialog with text info, ok-cancel buttons and a lineEdit for user input textDialog::textDialog (const QString type, const QString ReplaceInput, QWidget *parent) : QDialog (parent) { uiT.setupUi(this); uiT.checkBox_select -> setVisible(false); uiT.label_warning -> setVisible(false); uiT.textEdit_userInput -> setVisible(false); //connect okay & cancel pushButton SLOTs ---------------- connect ( uiT.pushButton_ok, SIGNAL( clicked() ), this, SLOT( okay() ) ); connect ( uiT.pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) ); GoOn = 0; Type = type; TextPassed = ReplaceInput; if (type == "NewProfile") { uiT.label_message -> setText(tr("Enter the name of the new profile :")); uiT.lineEdit_userInput -> setEchoMode (QLineEdit::Normal); } if (type == "RenameProfile") { uiT.label_message -> setText(tr("Enter the new name of the profile :")); uiT.lineEdit_userInput -> setEchoMode (QLineEdit::Normal); uiT.lineEdit_userInput -> setText(ReplaceInput); uiT.lineEdit_userInput -> selectAll(); } if (type == "ProfileDescription") { uiT.lineEdit_userInput -> setVisible(false); uiT.textEdit_userInput -> setVisible(true); this -> resize(640, 480); uiT.label_message -> setText(tr("Profile description :")); uiT.textEdit_userInput -> setPlainText(ReplaceInput); uiT.textEdit_userInput -> selectAll(); } if (type == "ImportProfile") { uiT.label_message -> setText(tr("A profile with the same name already exists") + "
" + tr("Please enter a different name")); uiT.lineEdit_userInput -> setEchoMode (QLineEdit::Normal); uiT.lineEdit_userInput -> setText(ReplaceInput); uiT.lineEdit_userInput -> selectAll(); } if (type == "password") { uiT.label_message -> setText(tr("Enter password :")); uiT.lineEdit_userInput -> setEchoMode (QLineEdit::Password); } if (type == "passphrase") { uiT.label_message -> setText(tr("Enter passphrase :")); uiT.lineEdit_userInput -> setEchoMode (QLineEdit::Password); } if (type == "CloneWarning") { uiT.checkBox_select -> setVisible(true); uiT.label_warning -> setVisible(true); uiT.checkBox_select -> setText (tr("Do not show this again for this task")); uiT.lineEdit_userInput -> setVisible(false); uiT.label_message -> setText(tr("You have selected to \"Backup the contents of the source directory\"
together with the \"delete files on the destination\" option") +"

" + tr("BEWARE, if your intention is NOT to clone source to destination !!") +"

" + tr("Are you sure you wish to proceed ??") + "

"); resize(sizeHint()); } if (type == "ValidateDialog") { uiT.lineEdit_userInput -> setVisible(false); uiT.label_warning -> setVisible(true); uiT.label_warning -> setPixmap(QPixmap(":/luckyPrefix/validate.png")); uiT.pushButton_cancel -> setText(tr("Copy command to clipboard")); uiT.pushButton_cancel -> setIcon(QIcon(":/luckyPrefix/copy.png")); uiT.label_message -> setText(ReplaceInput); resize(sizeHint()); } if (type == "ViewCurrentCrontab") { this -> resize(640, 480); uiT.lineEdit_userInput -> setVisible(false); uiT.pushButton_cancel -> setVisible(false); uiT.label_message -> setText(ReplaceInput); } if (type == "emailOutput") { uiT.lineEdit_userInput -> setVisible(false); uiT.textEdit_userInput -> setVisible(true); this -> resize(640, 480); uiT.label_message -> setText(tr("eMail information")); uiT.textEdit_userInput -> setPlainText(ReplaceInput); uiT.textEdit_userInput -> setReadOnly(true); uiT.pushButton_cancel -> setVisible(false); } // The next are used instead of standard Qt dialogs for translation reasons if (type == "QtInformation") { uiT.lineEdit_userInput -> setVisible(false); uiT.label_warning -> setVisible(true); uiT.label_warning -> setPixmap(QPixmap(":/luckyPrefix/validate.png")); uiT.label_message -> setText(ReplaceInput); uiT.pushButton_cancel -> setVisible(false); resize(sizeHint()); } if (type == "QtWarning") { uiT.lineEdit_userInput -> setVisible(false); uiT.label_warning -> setVisible(true); uiT.label_warning -> setPixmap(QPixmap(":/luckyPrefix/warning.png")); uiT.label_message -> setText(ReplaceInput); uiT.pushButton_cancel -> setVisible(false); resize(sizeHint()); } if (type == "QtCritical") { uiT.lineEdit_userInput -> setVisible(false); uiT.label_warning -> setVisible(true); uiT.label_warning -> setPixmap(QPixmap(":/luckyPrefix/cancel.png")); uiT.label_message -> setText(ReplaceInput); uiT.pushButton_cancel -> setVisible(false); resize(sizeHint()); } if (type == "QtQuestion") { uiT.lineEdit_userInput -> setVisible(false); uiT.label_warning -> setVisible(true); uiT.label_warning -> setPixmap(QPixmap(":/luckyPrefix/about.png")); uiT.label_message -> setText(ReplaceInput); uiT.pushButton_cancel -> setText(tr("No")); uiT.pushButton_ok -> setText(tr("Yes")); resize(sizeHint()); } } // SLOTS------------------------------------------------------------------------------------- // --------------------------------okay pressed------------------------------------------------ void textDialog::okay() { GoOn = 1; userInput = uiT.lineEdit_userInput -> text(); // Do not perform any further actions for the following categories: if ((Type == "password") || (Type == "passphrase")) { close(); return; } if (Type == "ProfileDescription") { userInput = uiT.textEdit_userInput -> toPlainText(); close(); return; } //remove trailing or starting whitespaces and invalid characters QStringList invalid; invalid << "`" << "!" << "@" << "#" << "$" << "%" << "%" << "^" << "&" << "*" << "(" << ")" << "+" << "=" << "{" << "[" << "}" << "]" << ":" << ";" << "\"" << "'" << "|" << "\\" << "<" << "," << ">" << "?" << "/"; for (int count=0; count isChecked()) //"Do not show this again check box GoOn = 4; close(); } // --------------------------------cancel pressed------------------------------------------------ void textDialog::cancel() { //GoOn == 0 if (Type == "ValidateDialog") { QString source, dest, Command_Clipboard; //copy command to clipboard TextPassed = TextPassed.right(TextPassed.size()-TextPassed.indexOf("")); //remove all irrelevant text source = TextPassed.right(TextPassed.size()-TextPassed.indexOf("")); //copy source & dest inside QString source TextPassed.remove(source); //remove source & dest from whole command dest = source.right(source.size()-source.lastIndexOf("")); //copy dest inside QString dest source.remove(dest); //remove dest from source source.remove("",Qt::CaseSensitive); source.remove("",Qt::CaseSensitive); source.remove("
",Qt::CaseSensitive); if (source.endsWith(" ")) source.chop(1); source.replace(" ","\\ "); //replace whitespaces with " \" dest.remove("",Qt::CaseSensitive); dest.remove("",Qt::CaseSensitive); dest.remove("
",Qt::CaseSensitive); dest.replace(" ","\\ "); Command_Clipboard = TextPassed + source + " " + dest; Command_Clipboard.remove("",Qt::CaseSensitive); Command_Clipboard.remove("",Qt::CaseSensitive); Command_Clipboard.remove("",Qt::CaseSensitive); Command_Clipboard.remove("
",Qt::CaseSensitive); QClipboard *clipboard = QApplication::clipboard(); clipboard->setText(Command_Clipboard); } else close(); } void textDialog::closeEvent(QCloseEvent *event) { event->accept(); } // --------------------------------accessors----------------------------------- int textDialog::getGoOn() { return GoOn ; } QString textDialog::getUserInput() { return userInput; } // end of textDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/RsyncDirModel.cpp0000666000175000017500000002451112722006207017413 0ustar luckybluckyb/**************************************************************************** Copyright (C) VCreate Logic Private Limited, Bangalore Contact: info@vcreatelogic.com This file is developed by VCreate Logic Private Limited and used as part of the "luckyBackup" project It is distributed under the terms of the GNU General Public License It 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. It 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 the luckyBackup project. If not, see . ****************************************************************************/ // modified on 22 May 2016 // by luckyb after Lothar's fixes #include "RsyncDirModel.h" #include "RsyncDirModel_p.h" #include #include #include #include #include #include #include struct RsyncDirModelData { // QUrl url; // RsyncDirLister* lister; QList topLevelEntries; bool topLevelEntriesFetched; // QString command; //command to be executed. Normally this is "rsync" // QStringList rsyncArguments; // This stringList holds all arguments for the rsync command // QProcess *syncProcess; // bool ProcReportedError; RsyncDirLister* lister; }; RsyncDirModel::RsyncDirModel(QObject* parent): QAbstractItemModel(parent) { d = new RsyncDirModelData; // d->syncProcess = new QProcess(this); // d->rsyncArguments.clear(); // d->rsyncArguments << "--list-only"; // d->command = "rsync"; d->lister = new RsyncDirLister; // connect(d->lister, SIGNAL(loginParamsRequest(QAuthenticator*)), // this, SIGNAL(loginParamsRequest(QAuthenticator*))); connect(d->lister, SIGNAL(listingDone(RsyncEntry*)), this, SLOT(slotListingDone(RsyncEntry*))); // connect(syncProcess, SIGNAL (finished(int, QProcess::ExitStatus)), this, SLOT(procFinished())); // connect(syncProcess, SIGNAL (error(QProcess::ProcessError)), this, SLOT(procError())); // d->ProcReportedError = false; // This might change as soon as syncprocess will start () } RsyncDirModel::~RsyncDirModel() { delete d; } void RsyncDirModel::setUrl(const QUrl& url,const QString& cpath) { d->lister->setUrl(url,cpath); d->lister->list(); } void RsyncDirModel::setUrl(const QUrl& url,const QString& cpath, const QStringList& cargs) { d->lister->setUrl(url,cpath,cargs); d->lister->list(); } void RsyncDirModel::setUrl(const QUrl& url) { d->lister->setUrl(url); d->lister->list(); } QUrl RsyncDirModel::url() const { return d->lister->url(); } QUrl RsyncDirModel::url(const QModelIndex& index) const { QString path = this->path(index); QUrl url = d->lister->url(); url.setPath(path); return url; } QString RsyncDirModel::path(const QModelIndex& index) const { RsyncEntry* entry = (RsyncEntry*)index.internalPointer(); if(!entry) return QString(); QString rootPath = d->lister->url().path(); QString pathStr = rootPath + entry->path(); return pathStr; } QModelIndex RsyncDirModel::index(const QString& path) const { if(!d->topLevelEntries.count()) return QModelIndex(); // Remove the root path name from the input // if given QString path2 = path; QUrl url = d->lister->url(); QString rootPath = url.path(); if(path2.startsWith(rootPath)) path2.remove(0, rootPath.length()); // Break the path name into directory/file names. QStringList comps = path2.split("/", QString::SkipEmptyParts); // Scan entries and look for the path QList entryList = d->topLevelEntries; RsyncEntry* entry = 0; for(int i=0; iurlInfo().name() == comps.at(i)) { entry = e; break; } } if(!entry) return QModelIndex(); entryList = entry->childEntries(); } if(entry) return index(entry); return QModelIndex(); } void RsyncDirModel::refresh(const QModelIndex& index) { if(index.isValid()) { RsyncEntry* entry = (RsyncEntry*)index.internalPointer(); entry->setChildrenFetched(false); d->lister->list(entry); } else { beginResetModel(); d->topLevelEntries.clear(); d->lister->list(); endResetModel(); } } int RsyncDirModel::rowCount(const QModelIndex& parent) const { if(!parent.isValid()) { if(d->topLevelEntries.count()) return d->topLevelEntries.count(); // Return one row to show that entries are being fetched. // Or that entries cant be fetched. return 1; } if(!d->topLevelEntries.count()) return 0; RsyncEntry* entry = (RsyncEntry*)parent.internalPointer(); if(entry) { if(entry->isChildrenFetched()) return entry->childEntries().count(); return 1; } return 0; } int RsyncDirModel::columnCount(const QModelIndex& parent) const { Q_UNUSED(parent); if(d->topLevelEntries.count()) return 3; // Return one row to show that entries are being fetched. // Or that entries cant be fetched. return 1; } QVariant RsyncDirModel::data(const QModelIndex& index, int role) const { if(!index.isValid()) return QVariant(); if(!d->topLevelEntries.count()) { if(!index.row() && !index.column() && role == Qt::DisplayRole) { if(d->topLevelEntriesFetched) return QString("Could not fetch %1").arg(d->lister->url().toString()); else return QString("Fetching %1...").arg(d->lister->url().toString()); } return QVariant(); } RsyncEntry* entry = (RsyncEntry*)index.internalPointer(); if(!entry->urlInfo().isValid()) { if(!index.column() && role == Qt::DisplayRole) return "Fetching..."; return QVariant(); } switch(index.column()) { case 0: // Name if(role == Qt::DisplayRole) { return entry->urlInfo().name(); } if(role == Qt::DecorationRole) return entry->icon(); if(role == Qt::ToolTipRole) return entry->path(); break; case 1: // Last Modified if(role == Qt::DisplayRole) return entry->urlInfo().lastModified().toString(); break; case 2: // Size if(role == Qt::DisplayRole) { if(!entry->urlInfo().isDir()) return entry->urlInfo().size(); } break; } return QVariant(); } QModelIndex RsyncDirModel::index(int row, int col, const QModelIndex& parent) const { if(!parent.isValid()) { if(!d->topLevelEntries.count()) return createIndex(row, col); if(row < 0 || row >= d->topLevelEntries.count()) return QModelIndex(); RsyncEntry* entry = d->topLevelEntries.at(row); return createIndex(row, col, entry); } RsyncEntry* entry = (RsyncEntry*)parent.internalPointer(); if(!entry->isChildrenFetched()) d->lister->list(entry); if(row < 0 || row >= entry->childEntries().count()) return QModelIndex(); RsyncEntry* childEntry = entry->childEntries().at(row); return createIndex(row, col, childEntry); } QModelIndex RsyncDirModel::parent(const QModelIndex& index) const { if(!index.isValid() || !d->topLevelEntries.count()) return QModelIndex(); RsyncEntry* entry = (RsyncEntry*)index.internalPointer(); RsyncEntry* parentRowEntry = entry->parentEntry(); if(!parentRowEntry) return QModelIndex(); int idx = d->topLevelEntries.indexOf(parentRowEntry); if(idx >= 0) return createIndex(idx, 0, parentRowEntry); RsyncEntry* grantParent = parentRowEntry->parentEntry(); idx = grantParent->childEntries().indexOf(parentRowEntry); return createIndex(idx, 0, parentRowEntry); } QVariant RsyncDirModel::headerData(int section, Qt::Orientation orientation, int role) const { if( role != Qt::DisplayRole || orientation != Qt::Horizontal ) return QVariant(); if(!d->topLevelEntries.count()) return QString(); switch(section) { case 0: return "Name"; case 1: return "Last Modified"; case 2: return "Size"; default: break; } return QVariant(); } Qt::ItemFlags RsyncDirModel::flags(const QModelIndex& index) const { RsyncEntry* entry = (RsyncEntry*)index.internalPointer(); if(entry && entry->urlInfo().isValid()) return Qt::ItemIsSelectable|Qt::ItemIsEnabled; return Qt::ItemIsEnabled; } QModelIndex RsyncDirModel::index(RsyncEntry* entry) const { // Confirm that this entry belongs to us if(!d->topLevelEntries.count()) return QModelIndex(); RsyncEntry* e2 = entry; while(e2->parentEntry()) e2 = e2->parentEntry(); if(!d->topLevelEntries.contains(e2)) return QModelIndex(); RsyncEntry* parent = entry->parentEntry(); if(parent) return createIndex(parent->childEntries().indexOf(entry), 0, entry); return createIndex(d->topLevelEntries.indexOf(entry), 0, entry); } void RsyncDirModel::slotListingDone(RsyncEntry* entry) { if(entry) { QModelIndex index = this->index(entry); if(!index.isValid()) return; beginRemoveRows(index, 0, 1); // Do nothing endRemoveRows(); beginInsertRows(index, 0, entry->childEntries().count()); // Do nothing endInsertRows(); } else { beginResetModel(); d->topLevelEntries = d->lister->topLevelEntries(); d->topLevelEntriesFetched = true; endResetModel(); } } luckybackup-0.5.0/src/executenow.cpp0000666000175000017500000022663113165410113017067 0ustar luckybluckyb/* ---------------------------------- executenow.cpp --------------------------------------------------------------------------- do everything that deals with commands (rsync & others) execution =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== ********************************** DO NOT FORGET TO CHANGE "commandline.cpp:rsyncIT()" ******************************************************** */ #include // cout using namespace std; #include // pow #include #include #include #include #include #include "global.h" #include "luckybackupwindow.h" #include "operationClass.h" QProcess *syncProcess; QTime StartTime(0,0,0,0); //find out elapsed time from these; // executeNOW================================================================================================= // executes rsync (& other commands )and displays progress. void luckyBackupWindow::executeNOW () { //Variables initialization // do NOT intitialise specific task variables here. Use the executeBeforeTask() function instead NOWexecuting = true; //this is mainly used if the window close button (or alt+F4) is pressed ABORTpressed = false; //becomes true if abort button pressed //change gui to execute mode !! guiModeNormal = false; (ui.rsyncOutput->document())->setMaximumBlockCount(50000); // set the maximum block count for the output window to avoid freezing swapGUI("execution"); ui.AbortButton -> setVisible (true); ui.DoneButton -> setVisible (false); ui.rsyncOutput -> setText(""); outputString = ""; outputError = ""; calculating = false; //these 3 bools are used to diplay progress of rsync at the info window transferring = false; deleting = false; ExecuteBefore=false; ExecuteBeforeExitedError = false; ProcReportedError = false; StopTaskExecution = false; ExecuteAfter=false; writeToLog=false; errorsFound = 0; //total error founds during profile execution filesTransfered = 0; //total bytes transfered during profile execution bytesTransfered = 0; //total bytes transfered during profile execution count = 0; currentAfter = 0; currentBefore = 0; errorCount = 0; //errors found during task execution repeatOnFailTry = 0; repeatOnFailMax = 0; //initiate tray icon if (QSystemTrayIcon::isSystemTrayAvailable ()) { createTrayIcon(); //create the tray icon LBtray -> show(); // show the tray icon } //display a popup baloon trayMessage = tr("execution of profile:","tray message - execution of profile: in progress...") + " " + profileName + " " + tr("in progress...","tray message - execution of profile: in progress..."); if (DryRun) trayMessage.append("\n(" + tr("simulation mode") + ")"); if ( (QSystemTrayIcon::isSystemTrayAvailable ()) && (QSystemTrayIcon::supportsMessages ()) ) { if (KDErunning) { QProcess *dialogProcess; dialogProcess = new QProcess(this); QStringList dialogArgs; dialogArgs << "--title" << appName << "--passivepopup" << trayMessage << "10"; dialogProcess -> start ("kdialog",dialogArgs); } else LBtray -> showMessage (appName, trayMessage, QSystemTrayIcon::Information,3000); } //Initialize shhutdown button ui.pushButton_shutdown -> setChecked(false); connect ( ui.AbortButton, SIGNAL( clicked() ), this, SLOT( abortPressed() ) ); //connect abort pushButton SLOT ---------------- connect ( ui.DoneButton, SIGNAL( clicked() ), this, SLOT( donePressed() ) ); //connect done pushButton SLOT ---------------- /* if (WINrunning) // disable VSS until... { vssTimer= new QTimer(this); pipeVssFile = new QFile(tempDirPath+SLASH+"qt_tempvss"+QString::number(qrand() % (999998) + 1)); if (pipeVssFile->open(QIODevice::ReadWrite)) { pipeVssFile->close(); // if (pipeVssFile->open(QIODevice::ReadOnly | QIODevice::Text)) // connect(pipeVssFile,SIGNAL(readyRead()),this,SLOT(appendRsyncVssOutput())); } pipeVssErrFile = new QFile(tempDirPath+SLASH+"qt_tempvsserr"+QString::number(qrand() % (999998) + 1)); if (pipeVssErrFile->open(QIODevice::ReadWrite)){ pipeVssErrFile->close(); // if (pipeVssErrFile->open(QIODevice::ReadOnly | QIODevice::Text)) // connect(pipeVssErrFile,SIGNAL(readyRead()),this,SLOT(appendRsyncVssOutput())); } if (Operation[currentOperation]->GetOptionsVss()) { connect (vssTimer,SIGNAL(timeout()),this,SLOT(appendRsyncVssOutput())); vssTimer->start(vssSleepTime); } }*/ syncProcess = new QProcess(this); //create a new qprocess (for rsync) & connect signals connect(syncProcess, SIGNAL(readyReadStandardError()), this, SLOT(appendRsyncOutput())); connect(syncProcess, SIGNAL(readyReadStandardOutput()), this, SLOT(appendRsyncOutput())); connect(syncProcess, SIGNAL (finished(int, QProcess::ExitStatus)), this, SLOT(procFinished())); connect(syncProcess, SIGNAL (error(QProcess::ProcessError)), this, SLOT(procError())); if (silentMode) minimizeTray(); //rsync command & arguments initiation command = rsyncCommandPath; rsyncArguments.clear(); syncAB = true; StartTime.start(); //start the timer to measure elapsed time currentOperation = 0; //increase currentOperation until first operation to be executed (execute tasks with a "by-pass WARNING option too) while ( (currentOperation < TotalOperations) && (!Operation[currentOperation] -> GetPerform()) ) currentOperation++; executeBeforeTask(); //execute pre-task commands if any } // swapGUI===================================================================================================== //swaps the gui mode from normal to execute void luckyBackupWindow::swapGUI(QString GUImode) { if (GUImode == "execution") //change gui to execution mode { ui.pushButton_start -> setVisible (false); ui.listWidget_operations -> setVisible (false); ui.textBrowser_info -> setVisible (false); ui.label_TaskList -> setText(tr("commands output","output window label")); ui.frame_operations -> setToolTip(tr("rsync and pre/post task commands output is displayed here","tooltip")); ui.pushButton_up -> setVisible (false); ui.pushButton_down -> setVisible (false); ui.label_include -> setVisible (false); ui.menuFile -> setEnabled (false); ui.menu_Task -> setEnabled (false); languageMenu -> setEnabled (false); settingsMenu -> setEnabled (false); helpMenu -> setEnabled (false); if (!runImmediately) IsVisibleProfileToolbar = profileToolbar -> isVisible();//hold the visibility state of this toolbar profileToolbar -> setVisible (false); profileComboToolbar -> setEnabled (false); ui.comboBox_profile -> setEnabled (false); ui.groupBox_task -> setVisible (false); ui.checkBox_DryRun -> setEnabled (false); ui.pushButton_exit -> setVisible (false); ui.label -> setVisible (false); ui.AbortButton -> setVisible (true); ui.DoneButton -> setVisible (true); ui.rsyncOutput -> setVisible (true); //ui.pushButton_InfoCollapse -> setChecked(!IsVisibleInfoWindow); shutdownToolbar-> setVisible (true); if ( (KDErunning) || (currentUser == "super user") ) shutdownToolbar-> setEnabled (true); else shutdownToolbar-> setEnabled (false); ui.nowDoing -> setVisible (IsVisibleInfoWindow); ui.OperationProgress -> setVisible (true); if (QSystemTrayIcon::isSystemTrayAvailable ()) ui.pushButton_minimizeToTray -> setVisible (true); else ui.pushButton_minimizeToTray -> setVisible (false); errorsToolbar-> setVisible (true); ui.pushButton_nextError -> setVisible (true); ui.pushButton_previousError -> setVisible (true); ui.pushButton_nextError -> setEnabled (false); ui.pushButton_previousError -> setEnabled (false); ui.checkBox_onlyShowErrors -> setVisible (true); } else //change gui to normal mode !! { ui.AbortButton -> setVisible (false); ui.DoneButton -> setVisible (false); ui.rsyncOutput -> setVisible (false); ui.nowDoing -> setVisible (false); ui.OperationProgress -> setVisible (false); ui.pushButton_minimizeToTray-> setVisible (false); ui.pushButton_nextError -> setVisible (false); ui.pushButton_previousError -> setVisible (false); ui.checkBox_onlyShowErrors -> setVisible (false); ui.pushButton_start -> setVisible (true); ui.listWidget_operations -> setVisible (true); ui.pushButton_InfoCollapse -> setChecked(!IsVisibleInfoWindow); ui.textBrowser_info -> setVisible (IsVisibleInfoWindow); ui.label_TaskList -> setText(tr("Task list","task list label")); ui.frame_operations -> setToolTip(tr("List of all the available tasks","task list tooltip - line1")+"\n"+ tr("Use the 'include checkboxes' to include or not a selected task","task list tooltip - line2")); ui.pushButton_up -> setVisible (true); ui.pushButton_down -> setVisible (true); ui.label_include -> setVisible (true); ui.menuFile -> setEnabled (true); ui.menu_Task -> setEnabled (true); languageMenu -> setEnabled (true); settingsMenu -> setEnabled (true); helpMenu -> setEnabled (true); profileToolbar -> setVisible (IsVisibleProfileToolbar); profileComboToolbar -> setEnabled (true); shutdownToolbar -> setVisible (false); errorsToolbar -> setVisible (false); ui.comboBox_profile -> setEnabled (true); ui.groupBox_task -> setVisible (true); ui.checkBox_DryRun -> setEnabled (true); ui.pushButton_exit -> setVisible (false); // set this to true to make the exit button visible at normal mode ui.label -> setVisible (true); } } // done button pressed===================================================================================================== void luckyBackupWindow::donePressed() { ui.rsyncOutput -> setText(""); guiModeNormal = true; swapGUI("normal"); if (QSystemTrayIcon::isSystemTrayAvailable ()) // this prevents a segfault when system tray is NOT available LBtray -> hide(); // hide the tray icon refreshList(); //refresh the listWidget_operations InfoData = QDateTime::currentDateTime().toString(Qt::DefaultLocaleLongDate) + "
" + tr("Execution of profile","full phrase: 'Execution of profile finished'") + " " + profileName + " " + tr("finished","full phrase: 'Execution of profile finished'")+" !!
"; if (DryRun) InfoData.append("(" + tr("simulation mode") +")"); else { if (!savedProfile) InfoData.append(tr("Could not update last execution time of tasks") + "
" + profile.errorString()); else InfoData.append(tr("Last execution time of tasks updated")); } ui.textBrowser_info -> setText(InfoData); } // abort button pressed===================================================================================================== void luckyBackupWindow::abortPressed() { //if (syncProcess->state() == QProcess::NotRunning) //if syncProcess is not Running (done pressed) // the next condition is used because for some wierd reason the abort button is presses multiple times // if you launch LB, run a profile twice and abort both of them. The second run you abort, will emitt 2 abort clicked() signals !!! if (ABORTpressed) return; ui.rsyncOutput->append("

" + tr("Aborting: Please wait for all processes to be killed") + "..."); ExecuteBefore = false; ExecuteAfter = false; ABORTpressed = true; syncProcess -> kill(); //kill rsyncProcess syncProcess -> waitForFinished(); setNowDoing (); //update Nowdoing textBrowser } // createTrayIcon ============================================================================================================================= // create the tray icon // This is only called when system tray is available void luckyBackupWindow::createTrayIcon() { //actions---------------------------------- LBtrayMenu = new QMenu(this); actionAbort = new QAction(QIcon(":/luckyPrefix/abort.png"), tr("&Abort"), this); minimizeToTray = new QAction(QIcon(":/luckyPrefix/window_minimize.png"), tr("&Minimize to tray","tray menu action"), this); restoreFromTray = new QAction(QIcon(":/luckyPrefix/window_restore.png"), tr("&Restore","tray menu action"), this); connect( actionAbort, SIGNAL(triggered()), this, SLOT(abortPressed())); //tray icon action ABORT connect( minimizeToTray, SIGNAL(triggered()), this, SLOT(minimizeTray())); //tray icon action minimize to Tray connect( restoreFromTray, SIGNAL(triggered()), this, SLOT(restoreTray())); //tray icon action restore from tray //context menu---------------------------- LBtrayMenu -> addAction(minimizeToTray); LBtrayMenu -> addAction(minimizeToTray); LBtrayMenu -> addSeparator(); LBtrayMenu -> addAction(actionAbort); //tray icon-------------------------------- LBtray = new QSystemTrayIcon(QIcon(":/luckyPrefix/luckybackup_96.png"),this); LBtray -> setContextMenu(LBtrayMenu); if (isMinimizedToTray == true) { minimizeToTray -> setVisible(false); restoreFromTray -> setVisible(true); } else { minimizeToTray -> setVisible(true); restoreFromTray -> setVisible(false); } //connect(trayIcon, SIGNAL(messageClicked()), this, SLOT(messageClicked())); connect(LBtray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(LBtrayActivated(QSystemTrayIcon::ActivationReason))); } // minimizeTray ============================================================================================================================= // minimizes the gui to the tray void luckyBackupWindow::minimizeTray() { if (QSystemTrayIcon::isSystemTrayAvailable ()) { minimizeToTray -> setVisible(false); restoreFromTray -> setVisible(true); } isMinimizedToTray = true; this -> hide(); } // restoreTray ============================================================================================================================= // restores the gui from the tray void luckyBackupWindow::restoreTray() { if (QSystemTrayIcon::isSystemTrayAvailable ()) { minimizeToTray -> setVisible(true); restoreFromTray -> setVisible(false); } isMinimizedToTray = false; this -> showNormal(); } // LBtrayActivated============================================================================================================ // LB tray icon activated SLOT void luckyBackupWindow::LBtrayActivated(QSystemTrayIcon::ActivationReason reason) { switch (reason) { case QSystemTrayIcon::Context: break; case QSystemTrayIcon::Trigger: if (isMinimizedToTray == true) restoreTray(); else minimizeTray(); break; default: ; } if (isMinimizedToTray == true) { minimizeToTray -> setVisible(false); restoreFromTray -> setVisible(true); } else { minimizeToTray -> setVisible(true); restoreFromTray -> setVisible(false); } } //executes pre-task commands =============================================================================================== void luckyBackupWindow::executeBeforeTask() { if (ABORTpressed) //better safe than sorry ;) return; repeatOnFailMax = Operation[currentOperation] -> GetRepeatOnFail(); // This holds the number of re-runs to try if the task fails for a reason // logfile & older snapshots actions if real run is performed if ( (!DryRun) && (currentBefore == 0) && (repeatOnFailTry == 0) ) { int maxSnaps = Operation[currentOperation] -> GetKeepSnapshots(); // this is the number of snapshots to keep if (maxSnaps < 1) maxSnaps = 1; int currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the current number of snapshots if (currentSnaps < 1) currentSnaps = 1; // first remove the older logfiles and snapshots if max keep snapshots is reached bool RemoteDestUsed = (Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()); // SNAPSHOTS REMOVAL - This is outside the (currentSnaps >= maxSnaps) condition, because it will eventually cause the snapshots directory to get created so that the profile will be backed up without problems later on // First calculate the folder where snapshots go (tempDestination) QStringList tempArguments = Operation[currentOperation] -> GetArgs(); QString tempSource = tempArguments[tempArguments.size()-2]; QString tempDestination = tempArguments[tempArguments.size()-1]; QString tempDestinationOrig = tempArguments[tempArguments.size()-1]; QString tempDestinationOrig2; QString sourceLast = tempSource; if (!tempSource.endsWith(SLASH)) // this means task is of type "backup dir by name" { sourceLast = calculateLastPath(sourceLast); // This is the lowest dir of the source tempSource.append(SLASH); if (WINrunning && RemoteDestUsed) tempDestination.append(sourceLast + XnixSLASH); else tempDestination.append(sourceLast + SLASH); } tempDestinationOrig2=tempDestination; if (RemoteDestUsed && WINrunning) tempDestination.append (snapDefaultDir.replace(SLASH,XnixSLASH)); else tempDestination.append (snapDefaultDir); QStringList remoteArgs; remoteArgs.clear(); //all remote arguments exactly as used at normal backup if (RemoteDestUsed) { remoteArgs.append("--protect-args"); //if ( Operation[currentOperation] -> GetRemotePassword() != "") if ( Operation[currentOperation]-> GetRemoteModule() && Operation[currentOperation] -> GetRemotePassword() != "") remoteArgs.append("--password-file=" + ( Operation[currentOperation] -> GetRemotePassword()) ); if ( Operation[currentOperation] -> GetRemoteSSH()) { QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\" -o \"PasswordAuthentication no\" "; if (WINrunning) { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword() +"\" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword()+"\""); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+""); } else { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword() +" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword()); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath); } } } if (currentSnaps >= maxSnaps) { outputInsert = "\n" + tr("Removing old snapshots and logfiles of task","info message displayed during ...data removal\nFull phrase: Removing old snapshots and logfiles of task: ") + ": " + Operation[currentOperation] -> GetName() + "
=====================================
"; ui.rsyncOutput->append(outputInsert); // **************Remove actual backup data *************************************************** // increase the remove limit to include the source.size() if "backup dir by name" is used if (Operation[currentOperation] -> GetTypeDirName()) removeCharLimit = 4 + sourceLast.size()+1; else removeCharLimit = 4; //we will delete the snapshots directory by using an rsync command with an empty source: QProcess *rmProcess; rmProcess = new QProcess(this); QStringList rmArgs; rmArgs << "--progress" << "-r" << "--delete-after"; int snapToKeep = currentSnaps-maxSnaps + 1; while ( snapToKeep < currentSnaps ) { if (WINrunning && RemoteDestUsed) rmArgs.append("--filter=protect " + Operation[currentOperation] -> GetSnapshotsListItem(snapToKeep) + XnixSLASH); else rmArgs.append("--filter=protect " + Operation[currentOperation] -> GetSnapshotsListItem(snapToKeep) + SLASH); snapToKeep++; } // protect the backup profile dir too if (WINrunning && RemoteDestUsed) rmArgs.append("--filter=protect " + profileName + ".profile" + XnixSLASH); else rmArgs.append("--filter=protect " + profileName + ".profile" + SLASH); //also add all remote arguments exactly as used at normal backup if (RemoteDestUsed) //rmArgs.append(remoteArgs); // use operator << instead of append to maintain compatiiblity with debian 5 rmArgs << remoteArgs; rmArgs.append(snapEmptyDir); rmArgs.append(tempDestination); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); QString command2=createWinRsyncCommand(tempDirPath,false,rmArgs); ui.rsyncOutput->append("\n"+command2); if (command2=="") cout << "\nfailed to create bat file in rmProccess"; else rmProcess -> start (command2); } else rmProcess -> start (command,rmArgs); rmProcess -> waitForFinished(); if ((rmProcess -> exitCode()) == 0) ui.rsyncOutput->append("\n" + tr("Removed all older snapshots data"));// +" " + tempDestination + Operation[currentOperation] -> GetSnapshotsListItem(0) + SLASH); else ui.rsyncOutput->append("\n" + tr("failed to remove all older snapshots data"));// +" " + tempDestination + Operation[currentOperation] -> GetSnapshotsListItem(0) + SLASH); //****************************************************** count = 0; while ( count < (currentSnaps -maxSnaps + 1 ) ) { //remove the changes file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ snapchangesfilename = snapChangesDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(0)) + ".changes.log"; snapfile.setFileName(snapchangesfilename); if (snapfile.exists()) { if (snapfile.remove()) // this is the old snapshot changes file ui.rsyncOutput->append("\n" + tr("Removing") +" " + snapchangesfilename); else ui.rsyncOutput->append("\n" + tr("failed to remove") +" " + snapchangesfilename); } //remove the oldest logfile ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ logfilename = logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(0)) + ".log"; logfile.setFileName(logfilename); // this is the old logfile if (logfile.exists()) { if (logfile.remove()) ui.rsyncOutput->append("\n" + tr("Removing") +" " + logfilename); else ui.rsyncOutput->append("\n" + tr("failed to remove") +" " + logfilename); } //remove the oldest snapshot (0) from the list Operation[currentOperation] -> RemoveSnapshotsListItem (0); count++; } } else // this is just to create the .snapDefaultDir if it does not to exist so as to copy profile data later... { //we will create the snapshots default directory by using an rsync command with an empty source without --delete option QProcess *mkdirProcess; mkdirProcess = new QProcess(this); QStringList mkdirArgs; mkdirArgs.clear(); //no needed any more //if ( (WINrunning) && (RemoteDestUsed) ) // mkdirArgs << "--mkdir"; //else mkdirArgs << "--progress" << "-r"; //add all remote arguments exactly as used at normal backup if (RemoteDestUsed) //mkdirArgs.append(remoteArgs); // use operator << instead of append to maintain compatiiblity with debian 5 mkdirArgs << remoteArgs; mkdirArgs.append(snapEmptyDir); //rsync throws error if directory is not yet created, ..so create it first // Add the destination folder mkdirArgs.append(tempDestinationOrig); // this is actually an empty argument if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); QString command2=createWinRsyncCommand(tempDirPath,false,mkdirArgs); ui.rsyncOutput->append("\n"+command2); if (command2=="") cout << "\nfailed to create bat file in mkdirProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) ui.rsyncOutput->append("\n!!"); else ui.rsyncOutput->append("\n!"); mkdirArgs.removeLast(); //remove the tempDestinationOrig argument // Add the destination folder [ + sourceLast +SLASH ] mkdirArgs.append(tempDestinationOrig2); // this is actually an empty argument if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); QString command2=createWinRsyncCommand(tempDirPath,false,mkdirArgs); ui.rsyncOutput->append("\n"+command2); if (command2=="") cout << "\nfailed to create bat file in mkdirProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) ui.rsyncOutput->append("\n!!"); else ui.rsyncOutput->append("\n!"); // Add the destination folder [ + sourceLast +SLASH ] + snapDefaultDir mkdirArgs.removeLast(); //remove the tempDestinationOrig2 argument mkdirArgs.append(tempDestination); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); QString command2=createWinRsyncCommand(tempDirPath,false,mkdirArgs); ui.rsyncOutput->append("\n"+command2); if (command2=="") cout << "\nfailed to create bat file in mkdirProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) ui.rsyncOutput->append("\n!!"); else ui.rsyncOutput->append("\n!"); } //set the current date and time as the operation's last execution date-time Operation[currentOperation] -> SetLastExecutionTime (QDateTime::currentDateTime()); // add a new snapshot with the last execution date-time Operation[currentOperation] -> AddSnapshotsListItem ((Operation[currentOperation] -> GetLastExecutionTime()).toString("yyyyMMddhhmmss")); currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // update the current number of snapshots // set a new changes file. This has a tag of the previous snapshot will include changes made to this snapshot snapchangesfilename = snapChangesDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(currentSnaps - 1)) + ".changes.log"; snapfile.setFileName(snapchangesfilename); // set a new logfile logfilename = logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + ( Operation[currentOperation] -> GetSnapshotsListItem(currentSnaps - 1) ) + ".log"; logfile.setFileName(logfilename); // this is the logfile if (logfile.open(QIODevice::WriteOnly | QIODevice::Text)) //create a new log file writeToLog = true; //& if it's ok set this to true else writeToLog = false; } errorCount = 0; // task starts, so set this to 0 no matter dry or real run // execute commands before task ----------------------------------------------------------------------------------------------------- // if there are no (more) pre-task commands to be executed || // the previous pre-task command exited with an error(all repeatOnFail runs) and the stop checkbox is checked if ( (Operation[currentOperation] -> GetExecuteBeforeListSize() == currentBefore) || (StopTaskExecution) ) { currentBefore = 0; ExecuteBefore=false; repeatOnFailTry = 0; executeRsync(); } else { ExecuteBefore=true; ExecuteBeforeExitedError = false; StopTaskExecution = false; ProcReportedError = false; // This might change as soon as syncprocess will start () outputInsert = logFileUpdate("pre-starting","",currentBefore); ui.rsyncOutput->append(outputInsert); syncProcess -> start (Operation[currentOperation] -> GetExecuteBeforeListItem(currentBefore)); syncProcess -> waitForStarted(5000); // The reason for the below jump is that when a process reports an error it does not emit finished() signals neither std output/errors if (ProcReportedError) procFinished(); } } //executes post-task commands =============================================================================================== void luckyBackupWindow::executeAfterTask() { if (ABORTpressed) //better safe than sorry :) return; // execute commands after task ----------------------------------------------------------------------------------------------------- //if there are no (more) post-task commands to be executed or we are here because a pre/post-task command exited with an error or destination could not be created if ( (Operation[currentOperation] -> GetExecuteAfterListSize() == currentAfter)|| (DestCreateFail) || (StopTaskExecution) ) { if (!DryRun) { logfile.close(); //close the logfile first (will create a new one for the next task) Operation[currentOperation] -> SetLastExecutionErrors (errorCount); // update the last execution errors } currentAfter = 0; ExecuteAfter=false; errorCount = 0; // reset the current task error count currentOperation++; //increase currentOperation until next operation to be executed or end of operations while ( (currentOperation < TotalOperations) && (!Operation[currentOperation] -> GetPerform()) ) currentOperation++; if (currentOperation < TotalOperations) { ExecuteBeforeExitedError = false; StopTaskExecution = false; executeBeforeTask(); } else setNowDoing(); } else { ExecuteAfter=true; ProcReportedError = false; // This might change as soon as syncprocess will start () outputInsert = logFileUpdate("post-starting", "", currentAfter); ui.rsyncOutput->append(outputInsert); syncProcess -> start (Operation[currentOperation] -> GetExecuteAfterListItem(currentAfter)); syncProcess -> waitForStarted(5000); // The reason for the below jump is that when a process reports an error it does not emit finished() signals neither std output/errors if (ProcReportedError) procFinished(); } } //executes rsync =============================================================================================== void luckyBackupWindow::executeRsync() { if (ABORTpressed) //better safe than sorry :) return; if (StopTaskExecution) // if a pre-task command exited with an error do not do anything { procFinished(); return; } sync = Operation[currentOperation] -> GetTypeSync(); //set sync variable according to checkstate of radiobutton operation type rsyncArguments = AppendArguments(Operation[currentOperation]); //set rsync arguments bool RemoteDestUsed = (Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()); // Is remote dest used ? if (DryRun) rsyncArguments.insert(rsyncArguments.size()-2,"--dry-run"); dirA = rsyncArguments[rsyncArguments.size()-2]; dirB = rsyncArguments[rsyncArguments.size()-1]; if (sync) //execute rsync for syncing 2 dirs { if (syncAB) //execute rsync A -> B syncAB = false; else //execute rsync B -> A { rsyncArguments.removeLast(); rsyncArguments.removeLast(); rsyncArguments.append(dirB); // set SyncDirA & SyncDirB as Arguments rsyncArguments.append(dirA); syncAB = true; } } //display a couple of lines to inticate start of task if ((sync) && (!syncAB)) outputInsert = logFileUpdate("rsync-starting-syncAB", "", 0); if ((sync) && (syncAB)) outputInsert = logFileUpdate("rsync-starting-syncBA", "", 0); DestCreateFail = false; // This will become true if destination does not exist and cannot be created if (!sync) { outputInsert = logFileUpdate("rsync-starting-backup", "", 0); // Create the destination if it does not exist QDir destCreate (dirB); if ( (!destCreate.exists()) && (!RemoteDestUsed) ) // local use ONLY { if (destCreate.mkpath(dirB)) outputInsert.append(logFileUpdate("rsync-standard", "
" + tr("Successfully created destination directory"), 0)); else { outputInsert.append(logFileUpdate("rsync-error", "
" +tr("Failed to create destination directory"), 0)); ui.rsyncOutput->append(outputInsert); DestCreateFail = true; errorsFound++; errorCount++; procFinished(); // Do not proceed any further return; } } } ui.rsyncOutput->append(outputInsert); //set the progressbar to 0 ui.OperationProgress -> setRange(0,100); ui.OperationProgress -> setValue (0); ProcReportedError = false; // This might change as soon as syncprocess will start () if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); QString command2=createWinRsyncCommand(tempDirPath,Operation[currentOperation]->GetOptionsVss(),rsyncArguments); ui.rsyncOutput->append("\n"+command2); if (command2=="") cout << "\nfailed to create bat file for vss"; else syncProcess -> start (command2); } else syncProcess -> start (command,rsyncArguments); // execute rsync command with rsyncArguments // The reason for the below jump is that when a process reports an error it does not emit finished() signals neither std output/errors if (ProcReportedError) procFinished(); } //when rsyncProcess emits finished signal execute another RsyncProcess if any left==================================================================== void luckyBackupWindow::procFinished() { if (ABORTpressed) //this is to prevent segmentation fault when abort button pressed return; /* Disable VSS until if (doVss==1) //reads all log file in vss before finished { doVss=2; return; }*/ bool RemoteDestUsed = (Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()); // Is remote dest used ? if (ExecuteBefore) // if the pre-task execution command (process) finished { outputInsert = logFileUpdate("pre-finished", "", currentBefore); ui.rsyncOutput->append(outputInsert); // set this for a successful run of a command. They might change if there was an error ExecuteBeforeExitedError = false; StopTaskExecution = false; // if the pre-task command exited with an error if ((syncProcess -> exitCode() != 0) || (ProcReportedError)) { ExecuteBeforeExitedError = true; if (repeatOnFailTry == repeatOnFailMax) // if the last run of the command just ended { if (Operation[currentOperation] -> GetExecuteBeforeListItemState(currentBefore) == true) StopTaskExecution = true; repeatOnFailTry = 0; // reset the runs counter for a specific command currentBefore++; //go to the next pre-task execution command } else { outputInsert = logFileUpdate("repeat-on-fail", "", currentBefore); ui.rsyncOutput->append(outputInsert); repeatOnFailTry++; // re-run this command, do not proceed to the next one } } else // if the process was successful, go to the next one { currentBefore++; //go to the next pre-task execution command repeatOnFailTry = 0; // it should already be 0, but ...you never know } executeBeforeTask(); //and executeBeforeTask again return; } if (ExecuteAfter) // if the post-task execution command (process) finished { outputInsert = logFileUpdate("post-finished", "", currentAfter); ui.rsyncOutput->append(outputInsert); // set this for a successful run of a command. They might change if there was an error StopTaskExecution = false; // if the post-task command exited with an error if ((syncProcess -> exitCode() != 0) || (ProcReportedError)) { if (repeatOnFailTry == repeatOnFailMax) // if the last run of the command just ended { if (Operation[currentOperation] -> GetExecuteAfterListItemState(currentAfter) == true) StopTaskExecution = true; repeatOnFailTry = 0; //rest the counter for a specific command currentAfter++; //go to the next pre-task execution command } else { outputInsert = logFileUpdate("repeat-on-fail", "", currentAfter); ui.rsyncOutput->append(outputInsert); repeatOnFailTry++; // re-run this command, do not proceed to the next one } } else // if the process was successful, go to the next one currentAfter++; //go to the next post-task execution command executeAfterTask(); //and executeAfterTask again return; } //display a couple of lines to indicate end of task if (StopTaskExecution) outputInsert = logFileUpdate("pre-task-exited-with-error", "", 0); else { if (!DryRun) { // strip unused lines from the snapshot changes file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~` QString filesAdded = "", snapLine = ""; if (snapfile.open(QIODevice::ReadOnly | QIODevice::Text)) { ui.rsyncOutput->append("."); QTextStream in(&snapfile); while (!in.atEnd()) { snapLine = in.readLine(); if (snapLine.contains("+++++++", Qt::CaseInsensitive)) { snapLine = snapLine.right(snapLine.size()-snapLine.lastIndexOf("[LB]")-removeCharLimit) + "\n"; filesAdded.append(snapLine); } } snapfile.close(); filesAdded.remove("[LB]", Qt::CaseSensitive); // just to make sure cause sometimes there are [LB]'s left } if (snapfile.open(QIODevice::WriteOnly)) { ui.rsyncOutput->append("."); QTextStream out(&snapfile); out << filesAdded; snapfile.close(); } } if ((!sync) || ((sync) && (syncAB)) ) { // Backup profile + logs + snaps to destination ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ QString exportProfileDir = ""; QString sourceLast=Operation[currentOperation] -> GetSource(); //calculate the last folder of source if (!sourceLast.endsWith(SLASH)) // this means task is of type "backup dir by name" sourceLast = calculateLastPath(sourceLast); // This is the lowest dir of the source else sourceLast = ""; if (!rsyncArguments.isEmpty()) //rsyncArguments is calculated at executeRsync() { if (WINrunning && RemoteDestUsed) exportProfileDir = rsyncArguments.last() + sourceLast + XnixSLASH + snapDefaultDir + profileName + ".profile" + XnixSLASH; else exportProfileDir = rsyncArguments.last() + sourceLast + SLASH + snapDefaultDir + profileName + ".profile" + SLASH; } //QMessageBox::information(this, "LB",exportProfileDir); //TESTING outputInsert = ""; // If this is a backup task && not a dryrun, backup profile data to destination if ( (!sync) && (!DryRun) && (!rsyncArguments.isEmpty()) ) { // Create the export path if it does not exist // local use QDir exportPathCreate (exportProfileDir); if ( (!exportPathCreate.exists()) && (!RemoteDestUsed) ) exportPathCreate.mkpath(exportProfileDir); if (exportFullProfile(exportProfileDir,"ExportOnlyTask")) outputInsert = logFileUpdate("backup-profile", " -> Ok", currentAfter); else outputInsert = logFileUpdate("backup-profile", " -> Fail", currentAfter); } outputInsert.append(logFileUpdate("rsync-finished", "", 0)); } else outputInsert = logFileUpdate("rsync-finished-sync1", "", 0); } ui.rsyncOutput->append(outputInsert); /* If there is an error repeat the rsync command. Errors: 5 - Error starting client-server protocol 12 - Error in rsync protocol data stream 23 - Partial transfer due to error -> I took this out 30 - Timeout in data send/receive 35 - Timeout waiting for daemon connection 255 - unexplained error */ if ((repeatOnFailTry < repeatOnFailMax) && ( (syncProcess -> exitCode()==30) || (syncProcess -> exitCode()==35) || (syncProcess -> exitCode()==255) || (syncProcess -> exitCode()==12) || (syncProcess -> exitCode()==5) || (ProcReportedError) )) { outputInsert = logFileUpdate("repeat-on-fail", "", 0); ui.rsyncOutput->append(outputInsert); repeatOnFailTry++; executeRsync(); return; } else repeatOnFailTry = 0; // reset the runs counter if ( (sync) && (!syncAB) ) //sync A->B is finished. Do the opposite now before proceeding to next included operation or post-task commands executeRsync(); else executeAfterTask(); //execute post-task commands (if any) } // A process reported an error (eg failed to start or crashed etc) void luckyBackupWindow::procError() { ProcReportedError = true; QProcess::ProcessError commandError = syncProcess -> error(); QString errorText = tr("Unknown error"); switch (commandError) { case QProcess::FailedToStart: errorText = tr("Failed to start","this refers to a process"); break; case QProcess::Crashed : errorText = tr("Crashed","this refers to a process"); break; case QProcess::Timedout : errorText = tr("Timed out","this refers to a process"); break; case QProcess::WriteError : errorText = tr("Write error","this refers to a process"); break; case QProcess::ReadError : errorText = tr("Read error","this refers to a process"); break; case QProcess::UnknownError : errorText = tr("Unknown error","this refers to a process"); break; } errorsFound++; errorCount++; ui.rsyncOutput->append(logFileUpdate("process-reported-error", errorText, 0)); setNowDoing(); } //update dialog with new data (text - progressbar) - also update logfile ======================================================================= void luckyBackupWindow::appendRsyncOutput() { if (ABORTpressed) //better safe than sorry :) return; setNowDoing (); //update Nowdoing textBrowser //update textBrowser ------------------------------------------------------------------------------------------------------ QTextCodec *codec = QTextCodec::codecForName("UTF-8"); outputString = codec->toUnicode(syncProcess -> readAllStandardOutput()); outputError = codec->toUnicode(syncProcess -> readAllStandardError()); //if (!showOnlyErrors) if (!ui.checkBox_onlyShowErrors -> isChecked()) ui.rsyncOutput->append(outputString); logFileUpdate("rsync-standard", outputString, 0); if (outputError !="") { errorsFound++; errorCount++; ui.rsyncOutput->append(logFileUpdate("rsync-error", outputError, 0)); } //update progressbar-------------------------------------------------------------------------------------------------------- bool ok; if ( (outputString.contains("to-check")) || (outputString.contains("to-chk")) ) //we will calculate how many files have been proccessed so far { //DoneToTotal_Ref & DoneToTotal_String hold a e.g. "17/84" QStringRef DoneToTotal_Ref; if (outputString.contains("to-check")) // if rsync uses "to-check=" DoneToTotal_Ref = outputString.midRef(outputString.indexOf("check=")+6,outputString.indexOf(")")-outputString.indexOf("check=")-6); else // if rsync uses "to-chk=" DoneToTotal_Ref = outputString.midRef(outputString.indexOf("o-chk=")+6,outputString.indexOf(")")-outputString.indexOf("o-chk=")-6); QString DoneToTotal_String = DoneToTotal_Ref.toString(); //Total no files QStringRef ref_temp = DoneToTotal_String.rightRef(DoneToTotal_String.size() - DoneToTotal_String.indexOf(SLASH) -1); QString string_temp = ref_temp.toString(); progress_total = string_temp.toInt(&ok,10); ui.OperationProgress -> setRange(0,progress_total); //set the range of the progressbar to the no of files to consider //No of files processed so far ref_temp = DoneToTotal_String.leftRef(DoneToTotal_String.indexOf(SLASH)); string_temp = ref_temp.toString(); progress_done = string_temp.toInt(&ok,10); progress_done = progress_total - progress_done; ui.OperationProgress -> setValue (progress_done); //set the current progressbar value } if (outputString.contains("speedup is")) //the process has finished, so if we're back fill it to 100% { ui.OperationProgress -> setRange(0,100); ui.OperationProgress -> setValue (100); } if (outputString.contains("building file list")) { calculating = true; transferring = false; deleting = false; } if (outputString.contains("files to consider")) { calculating = false; transferring = true; deleting = false; } if (outputString.contains("deleting")) { calculating = false; transferring = false; deleting = true; } // Extraxt some data from the "stats" lines at the end of rsync if ( (outputString.contains("Number of files transferred")) || (outputString.contains("Total bytes sent:")) || (outputString.contains("Number of regular files")) ) { // split the outputString to lines QString FilesTransferedString="",BytesTransferedString=""; QStringList lines = outputString.split( "\n", QString::SkipEmptyParts ); foreach( QString line, lines ) { if (line.contains("Number of files transferred:")) FilesTransferedString = line.remove("Number of files transferred: "); // old rsync report; if (line.contains("Number of regular files transferred:")) FilesTransferedString = line.remove("Number of regular files transferred: "); // newer rsync report if (line.contains("Total transferred file size:")) BytesTransferedString = line.remove("Total transferred file size: "); // newer rsync report if (line.contains("Total bytes sent:")) BytesTransferedString = line.remove("Total bytes sent: "); // old rsync report } filesTransfered = filesTransfered + FilesTransferedString.toInt(&ok, 10); BytesTransferedString = convertBytes(BytesTransferedString,false); bytesTransfered = bytesTransfered + BytesTransferedString.toULongLong(&ok, 10); } } /* disable vss until... void luckyBackupWindow::appendRsyncVssOutput() { appendRsyncVssOutput(vssReadSize); } //Read size lines, if size=-1 read all file void luckyBackupWindow::appendRsyncVssOutput(int size) { if (ABORTpressed) //better safe than sorry :) return; if (doVss==0) return; setNowDoing (); //update Nowdoing textBrowser QString s,se; if (pipeVssFile->open(QIODevice::ReadOnly | QIODevice::Text)) { int i=size; QTextStream stream(pipeVssFile); stream.setCodec("UTF-8"); stream.seek(vssPos); outputString=""; s=stream.readLine(); while(!s.isNull()&&i!=0){ outputString=outputString+s+"\n"; s=stream.readLine(); //if (!showOnlyErrors) i--; }; vssPos=stream.pos(); pipeVssFile->close(); if (outputString !="") { if (!ui.checkBox_onlyShowErrors -> isChecked()) ui.rsyncOutput->append(outputString); logFileUpdate("rsync-standard", outputString, 0); //update progressbar-------------------------------------------------------------------------------------------------------- bool ok; if (outputString.contains("to-check")) //we will calculate how many files have been proccessed so far { //DoneToTotal_Ref & DoneToTotal_String hold a e.g. "17/84" QStringRef DoneToTotal_Ref = outputString.midRef(outputString.indexOf("check=")+6,outputString.indexOf(")")-outputString.indexOf("check=")-6); QString DoneToTotal_String = DoneToTotal_Ref.toString(); //Total no files QStringRef ref_temp = DoneToTotal_String.rightRef(DoneToTotal_String.size() - DoneToTotal_String.indexOf(SLASH) -1); QString string_temp = ref_temp.toString(); progress_total = string_temp.toInt(&ok,10); ui.OperationProgress -> setRange(0,progress_total); //set the range of the progressbar to the no of files to consider //No of files processed so far ref_temp = DoneToTotal_String.leftRef(DoneToTotal_String.indexOf(SLASH)); string_temp = ref_temp.toString(); progress_done = string_temp.toInt(&ok,10); progress_done = progress_total - progress_done; ui.OperationProgress -> setValue (progress_done); //set the current progressbar value } if (outputString.contains("speedup is")) //the process has finished, so if we're back fill it to 100% { ui.OperationProgress -> setRange(0,100); ui.OperationProgress -> setValue (100); } if (outputString.contains("building file list")) { calculating = true; transferring = false; deleting = false; } if (outputString.contains("files to consider")) { calculating = false; transferring = true; deleting = false; } if (outputString.contains("deleting")) { calculating = false; transferring = false; deleting = true; } } } if (pipeVssErrFile->open(QIODevice::ReadOnly | QIODevice::Text)) { int i=size; QTextStream stream(pipeVssErrFile); stream.setCodec("UTF-8"); stream.seek(vssErrPos); outputError=""; se=stream.readLine(); while(!se.isNull()&&i!=0){ outputError=outputError+se+"\n"; se=stream.readLine(); i--; } vssErrPos=stream.pos(); pipeVssErrFile->close(); if (outputError !="") { errorsFound++; errorCount++; ui.rsyncOutput->append(logFileUpdate("rsync-error", outputError, 0)); } } if (doVss == 2 && se.isNull() && s.isNull()) { vssTimer->stop(); doVss = 0; pipeVssFile->remove(); pipeVssErrFile->remove(); procFinished(); } } */ //updates Now Doing textBrowser =============================================================================================================== void luckyBackupWindow::setNowDoing() { //calculate elapsed time since all operations start QTime DifTime(0,0,0,0); int elapsedMsec = StartTime.elapsed(); DifTime = DifTime.addMSecs(elapsedMsec); if ( (currentOperation < TotalOperations) && (!ABORTpressed) ) { if (ExecuteBefore) nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
"+tr("pre-task execution of command")+" : " + Operation[currentOperation] -> GetExecuteBeforeListItem(currentBefore) + ""; if (ExecuteAfter) nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
"+tr("post-task execution of command")+" : " + Operation[currentOperation] -> GetExecuteAfterListItem(currentAfter) + ""; if ( (sync) && (!ExecuteAfter) && (!ExecuteBefore) ) //if a sync operation is executed { nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
"+tr("Now performing task")+" : " + Operation[currentOperation] -> GetName() + ""; if (DryRun) nowDoingText.append(" (" + tr("simulation mode") + ")"); nowDoingText.append("

"); nowDoingText.append(tr("Directory")+" A : " + dirA + "
"+tr("Directory")+" B : " + dirB + "
"); if (calculating) nowDoingText.append(tr("calculating","info message displayed during ...calculations")+": " + outputString); if (transferring) nowDoingText.append(tr("transferring files","info message displayed during ...file transfers")+": " + outputString); if (deleting) nowDoingText.append(tr("deleting files","info message displayed during ...file deletions")+": " + outputString); } if ( (!sync) && (!ExecuteAfter) && (!ExecuteBefore) ) //if a backup operation is executed { nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
"+tr("Now performing task")+" : " + Operation[currentOperation] -> GetName() + ""; if (DryRun) nowDoingText.append(" (" + tr("simulation mode") + ")"); nowDoingText.append("

"); nowDoingText.append(tr("Source")+" : " + dirA + "
"+tr("Destination")+" : " + dirB + "
"); if (calculating) nowDoingText.append(tr("calculating")+": " + outputString); if (transferring) nowDoingText.append(tr("transferring files")+": " + outputString); if (deleting) nowDoingText.append(tr("deleting files")+": " + outputString); } } if ( (currentOperation == TotalOperations) && (!ABORTpressed)) //if all operations finished normally - not aborted { NOWexecuting = false; //this is mainly used if the window close button (or alt+F4) is pressed if (filesTransfered == 0) bytesTransfered = 0; nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
" + tr("Total files transferred") + " : " + countStr.setNum(filesTransfered) + " (" + convertBytes(QString::number(bytesTransfered),true) +")
" "=========================================" "
"+tr("All tasks completed")+"
"; trayMessage = tr("All tasks completed"); if (DryRun) { nowDoingText.append(" (" + tr("simulation mode") + ")"); trayMessage.append(" (" + tr("simulation mode") + ")"); } if (errorsFound == 0) { nowDoingText.append("
" + tr("No errors found") + "
"); trayMessage.append("\n" + tr("No errors found")); } else { nowDoingText.append("
" + tr("errors found") + ": " + countStr.setNum(errorsFound) +"
"); trayMessage.append("\n" + tr("errors found")); // initialize jump to next error button firstScroll=true; errorCount = 0; ui.pushButton_nextError -> setEnabled (true); } if (!DryRun) nowDoingText.append(tr("logfile(s) have been created under directory: ")+ logDir +"
"); nowDoingText.append("=========================================

"); ui.AbortButton -> setVisible (false); ui.DoneButton -> setVisible (true); ui.pushButton_minimizeToTray -> setVisible (false); //update tray baloon if ( (QSystemTrayIcon::isSystemTrayAvailable ()) && (QSystemTrayIcon::supportsMessages ()) ) { if (KDErunning) { QProcess *dialogProcess; dialogProcess = new QProcess(this); QStringList dialogArgs; dialogArgs << "--title" << appName + " - " + tr("execution of profile:") + " " + profileName + " " + tr("finished") << "--passivepopup" << trayMessage << "10"; dialogProcess -> start ("kdialog",dialogArgs); } else LBtray -> showMessage (appName + " - " + tr("execution of profile:") + " " + profileName + " " + tr("finished") , trayMessage, QSystemTrayIcon::Information,3000); actionAbort -> setVisible(false); } finishUp(); // bring the system down if the relevant button is pressed if (ui.pushButton_shutdown -> isChecked()) shutDownSystem(); if ( (silentMode) && (isMinimizedToTray == true) ) // if --silent is given as argument and the gui is not shown exit the app { //delay the app exit for 3 seconds QTime StartSleep(0,0,0,0); StartSleep.start(); int elapsedSleepMsec = 0; while (elapsedSleepMsec < 3000) elapsedSleepMsec = StartSleep.elapsed(); exit(0); //quit } } if (ABORTpressed) //if operations were terminated by user { NOWexecuting = false; //this is mainly used if the window close button (or alt+F4) is pressed nowDoingText = "

"+tr("Elapsed time")+" : " + DifTime.toString("hh:mm:ss") + "
=========================================" "
"+tr("Execution of tasks were terminated violently by user")+"
"; trayMessage = tr("Execution of tasks were terminated violently by user"); if (!DryRun) nowDoingText.append(tr("logfile(s) have been created under directory: ")+ logDir +"
"); nowDoingText.append("=========================================

"); ui.AbortButton -> setVisible (false); ui.DoneButton -> setVisible (true); ui.pushButton_minimizeToTray -> setVisible (false); ui.rsyncOutput->append("
" + tr("ABORTED") + " !!"); //update tray baloon if ( (QSystemTrayIcon::isSystemTrayAvailable ()) && (QSystemTrayIcon::supportsMessages ()) ) { if (KDErunning) { QProcess *dialogProcess; dialogProcess = new QProcess(this); QStringList dialogArgs; dialogArgs << "--title" << appName + " - " + tr("execution of profile:") + " " + profileName + " " + tr("finished") << "--passivepopup" << trayMessage << "10"; dialogProcess -> start ("kdialog",dialogArgs); } else LBtray -> showMessage (appName + " - " + tr("execution of profile:") + " " + profileName + " " + tr("finished") , trayMessage, QSystemTrayIcon::Information,3000); actionAbort -> setVisible(false); } if (errorsFound > 0)// initialize jump to next error button { firstScroll=true; ui.pushButton_nextError -> setEnabled (true); } finishUp(); if (!DryRun) { // strip unused lines from the snapshot changes file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~` QString filesAdded = "", snapLine = ""; if (snapfile.open(QIODevice::ReadOnly | QIODevice::Text)) { QTextStream in(&snapfile); while (!in.atEnd()) { snapLine = in.readLine(); if (snapLine.contains("+++++++", Qt::CaseInsensitive)) { snapLine = snapLine.right(snapLine.size()-snapLine.lastIndexOf("[LB]")-removeCharLimit) + "\n"; filesAdded.append(snapLine); } } snapfile.close(); filesAdded.remove("[LB]", Qt::CaseSensitive); // just to make sure cause sometimes there are [LB]'s left } if (snapfile.open(QIODevice::WriteOnly)) { QTextStream out(&snapfile); out << filesAdded; snapfile.close(); } } if ( (silentMode) && (isMinimizedToTray == true) ) // if --silent is given as argument and the gui is not shown, exit the app exit(0); //quit } ui.nowDoing -> setText (nowDoingText); } // function finishUp===================================================================================================== // finish up some stuff when all tasks finish either normally or aborted void luckyBackupWindow::finishUp() { if (!DryRun) { //save the profile to update last execution times & no of errors if (!saveProfile(currentProfile)) { savedProfile = false; ui.actionSave -> setEnabled(true); } else { savedProfile = true; //change profile status to "saved" ui.actionSave -> setEnabled(false); } logfile.close(); // close the logfile // send an email if ( (!ABORTpressed) && (!emailNever) ) { bool send = true; if ( ((emailError) && (errorsFound == 0)) // do not send if the condition "error" is checked and there are no errors || ((emailSchedule) && (!silentMode)) ) // do not send if the condition "scheduled" is checked and profile is not run in silent mode send = false; // ***** console mode and "schedule" is covered in commandline.cpp ****** if (send) { ui.rsyncOutput->append("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); ui.rsyncOutput->append(tr( "trying to send an email")); ui.rsyncOutput->append( " . . ."); ui.rsyncOutput->append(sendEmailNow(false)); } } } shutdownToolbar-> setEnabled (false); // TESTING-TESTING-TESTING-TESTING-TESTING-TESTING //QMessageBox::information(this, "LB","QtextDocument title= **" + ui.rsyncOutput->documentTitle() +"**"); } // function shutDownSystem===================================================================================================== // shutdown the system if the relevant button is pressed, when all tasks are finished void luckyBackupWindow::shutDownSystem() { QProcess *shutdownProcess; shutdownProcess = new QProcess(this); QString shutdownCommand=""; QStringList shutdownArgs; shutdownArgs.clear(); if (KDErunning) { shutdownCommand = "/usr/bin/qdbus"; shutdownArgs << "org.kde.ksmserver" << "/KSMServer" << "org.kde.KSMServerInterface.logout" << "1" << "2" << "2"; } else if (currentUser == "super user") { shutdownCommand = "/sbin/shutdown"; shutdownArgs << "-h" << "1"; if ( (QSystemTrayIcon::isSystemTrayAvailable ()) && (QSystemTrayIcon::supportsMessages ()) ) LBtray -> showMessage (appName + " - " + tr("WARNING"), tr("The system will shutdown in 1 minute"), QSystemTrayIcon::Information,3000); } shutdownProcess -> start (shutdownCommand,shutdownArgs); //delay the app exit for 3 seconds QTime StartSleep(0,0,0,0); StartSleep.start(); int elapsedSleepMsec = 0; while (elapsedSleepMsec < 3000) elapsedSleepMsec = StartSleep.elapsed(); exit(0); //quit } // previous error button pressed===================================================================================================== void luckyBackupWindow::previousErrorJump() { errorCount--; //decrease the current error by one if (errorCount == 0 ) // if the current error is the first within the logfile disable the previous button ui.pushButton_previousError -> setEnabled(false); if (errorCount < errorsFound-1) //if the current error is less than the last one within the logfile enable the next button ui.pushButton_nextError -> setEnabled(true); ui.rsyncOutput -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); } // next error button pressed===================================================================================================== void luckyBackupWindow::nextErrorJump() { if (!firstScroll) errorCount++; // increase the current error by one firstScroll = false; if (errorCount == errorsFound-1) // If the current error is the last within the logfile disable the next button ui.pushButton_nextError -> setEnabled(false); if (errorCount > 0) // if the current error is greater than the first one within the logfile enable the previous button ui.pushButton_previousError -> setEnabled(true); ui.rsyncOutput -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); } // convertBytes (QString,bool) // Converts a string of the form 67M to bytes and vice versa (eg 1024 -> 1KB) // if bool=false then conversion string->bytes. If bool=true then conversion bytes->string // ===================================================================================================== QString luckyBackupWindow::convertBytes (QString byteLine,bool toWhat) { QString returnThis = ""; bool ok; if (toWhat) // convert bytes to string { QString multi = " bytes"; double bytesFLOAT = byteLine.toDouble(&ok); if (bytesFLOAT >= 1024) { bytesFLOAT = bytesFLOAT / 1024; multi = "KB"; } if (bytesFLOAT >= 1024) { bytesFLOAT = bytesFLOAT / 1024; multi = "MB"; } if (bytesFLOAT >= 1024) { bytesFLOAT = bytesFLOAT / 1024; multi = "GB"; } if (bytesFLOAT >= 1024) { bytesFLOAT = bytesFLOAT / 1024; multi = "TB"; } returnThis = (QString::number(bytesFLOAT)); if ( (returnThis.contains(".")) && ((returnThis.lastIndexOf(".") + 3) < returnThis.size()) ) returnThis.chop(returnThis.size() - returnThis.lastIndexOf(".") - 3); // leave only 3 decimal points returnThis = returnThis + multi; } else // convert string to bytes { unsigned long long int multiply = 1; if (byteLine.endsWith("K")) multiply = 1024; if (byteLine.endsWith("M")) multiply = pow(1024,2); if (byteLine.endsWith("G")) multiply = pow(1024,3); if (byteLine.endsWith("T")) multiply = pow(1024,4); if ( (byteLine.endsWith("K")) || (byteLine.endsWith("M")) || (byteLine.endsWith("G")) || (byteLine.endsWith("T")) ) byteLine.chop(1); unsigned long long int returnThisNo = byteLine.toDouble(&ok) * multiply; returnThis = QString::number( returnThisNo); } return returnThis; } // end of executenow.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/logDialog.h0000666000175000017500000000542612073243674016261 0ustar luckybluckyb// ---------------------------------- logDialog.h --------------------------------------------------------------------------- // Header file for logDialog.cpp /* =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 28 Aug 2010 =============================================================================================================================== =============================================================================================================================== */ #ifndef LOGDIALOG_H #define LOGDIALOG_H //include header file that qmake produces from "*.ui" created with qt designer #include "ui_logDialog.h" class ReadLogFile; //============================================================================================================== //Declaration of logDialog class (this will viw a log file in a dialog) class logDialog : public QDialog { Q_OBJECT public: logDialog (QUrl, QWidget *parent=0); QString logText; // QStringList errorLine; int errorCount; int totalErrors; bool firstScroll; private slots: void closeLog(); //SLOT when button close pressed void prevError(); //SLOT to scroll to next error void nextError(); //SLOT to scroll to next error void refreshWindow(const QString &); //SLOT to refresh the log window void refreshWindowError(const QString &); //SLOT to refresh the log window void readLogFileNOW(); // SLOT to read the logfile in a new thread void logReadEnd(); //SLOT when finished reading logfile from disk private: Ui::logDialog uiL; ReadLogFile *readlogfile; // QThread that will read the logfile }; #endif // end of logDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/qurlinfo.h0000666000175000017500000001066412731510057016210 0ustar luckybluckyb/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QURLINFO_H #define QURLINFO_H #include "QtCore/qdatetime.h" #include "QtCore/qstring.h" #include "QtCore/qiodevice.h" QT_BEGIN_NAMESPACE class QUrl; class QUrlInfoPrivate; class QUrlInfo { public: enum PermissionSpec { ReadOwner = 00400, WriteOwner = 00200, ExeOwner = 00100, ReadGroup = 00040, WriteGroup = 00020, ExeGroup = 00010, ReadOther = 00004, WriteOther = 00002, ExeOther = 00001 }; QUrlInfo(); QUrlInfo(const QUrlInfo &ui); QUrlInfo(const QString &name, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable); QUrlInfo(const QUrl &url, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable); QUrlInfo &operator=(const QUrlInfo &ui); virtual ~QUrlInfo(); virtual void setName(const QString &name); virtual void setDir(bool b); virtual void setFile(bool b); virtual void setSymLink(bool b); virtual void setOwner(const QString &s); virtual void setGroup(const QString &s); virtual void setSize(qint64 size); virtual void setWritable(bool b); virtual void setReadable(bool b); virtual void setPermissions(int p); virtual void setLastModified(const QDateTime &dt); void setLastRead(const QDateTime &dt); bool isValid() const; QString name() const; int permissions() const; QString owner() const; QString group() const; qint64 size() const; QDateTime lastModified() const; QDateTime lastRead() const; bool isDir() const; bool isFile() const; bool isSymLink() const; bool isWritable() const; bool isReadable() const; bool isExecutable() const; static bool greaterThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); static bool lessThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); static bool equal(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); bool operator==(const QUrlInfo &i) const; inline bool operator!=(const QUrlInfo &i) const { return !operator==(i); } private: QUrlInfoPrivate *d; }; QT_END_NAMESPACE #endif // QURLINFO_H luckybackup-0.5.0/src/scheduleDialog.h0000666000175000017500000001044512720357214017264 0ustar luckybluckyb/* ---------------------------------- scheduleDialog.h --------------------------------------------------------------------------- Header file for scheduleDialog.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #ifndef SCHEDULEDIALOG_H #define SCHEDULEDIALOG_H //include header file that qmake produces from "*.ui" created with qt designer #include "ui_scheduleDialog.h" #include //============================================================================================================== //Declaration of rsyncDialog class (this will execute rsync and show progress in a dialog) class scheduleDialog : public QDialog { Q_OBJECT public: scheduleDialog (QDialog *parent=0); QString schedulename; // schedule file filename int TotalSchedule; //The number of available profiles schedulesin "schedule list"- starts from 1 int currentSchedule; //this holds the current row from the "schedule list"- starts from 0 void createCron(); //creates a cron file & updates the user's crontab QString CronTab; //QString to hold the user's crontab int count; //simple count variable !! void clearScheduleDetails(); //function: when clear (schedule details) pushbutton pressed bool saveScheduleFile (); //function to save the schedule-file QString scheduleText(QString,int,int,int,int,int,bool); //returns the text displayed at the schedule list (eg execute profile default at .... every...) private slots: void schedulePressed(); //SLOT when schedule buutton pressed void cancelPressed(); //SLOT when cancel pushbutton pressed void modifyPressed(); //SLOT when modify pushbutton pressed void addPressed(); //SLOT to add an item in the list void removePressed(); //SLOT to remove an item from the list void okaySchedulePressed(); //function to add ot modify a profile schedule void modifyCancelPressed(); //SLOT to initialize widget views void viewCrontab(); //SLOT to display the currenr crontab void fillDetails(); //SLOT to fill fields of schedule details void appendCrontabOutput(); //SLOT to read user's crontab to a QString private: Ui::scheduleDialog uiS; QFile scheduleFile; //holds the scheduleFile filename int currentProfileIndex; //holds the current profile index inside the combobox bool noSchedules; //becomes true when no schedules are declared bool changesMade; //becomes true if changes are made but no cronIt is pressed protected: void closeEvent(QCloseEvent *event); //when the close button of the dialog pressed }; #endif // end of scheduleDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/commandline.cpp0000666000175000017500000014731113165410113017164 0ustar luckybluckyb/*-------------------------commandline.cpp------------------------------------------ runs luckybackup in command line mode =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not,see . developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ //#include "luckybackupwindow.cpp" #include "commandline.h" #include #include #include "global.h" #include "operationClass.h" // class commandline Constructor================================================================================================= commandline::commandline() { writeToLog=false; errorsFound = 0; // Total number of errors from all tasks (in CLI, only 1 error per task is allowed !!) filesTransfered = 0; //total bytes transfered during profile execution bytesTransfered = 0; //total bytes transfered during profile execution errorCount = 0; // Number of errors from one task (max value is 1) } // class commandline Destructor================================================================================================= commandline::~commandline() { } // result=================================================================================================================== // calls functions intro, loadProfile, check_list, check_dirs, rsyncIT, thats_all and returns an integer to main() int commandline::result() { intro(); rsyncIT(); thats_all(); if (errorsFound > 0) return 6; // error at rsync or pre/post command execution return 0; } // intro=================================================================================================================== // displays an intro message void commandline::intro() { cout << "\n============================================================================================\n"; cout << " luckybackup version "; cout << appVersion; cout << " - command line mode \n"; cout << "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n"; cout << "This application will (hopefully) sync and backup everything you need in no time\n"; cout << "(Well, it might take a little longer if run for the first time ;-)\n\n"; cout << "\n"; if (!NoQuestions) //if questions are required { cout << "Make sure that:\n"; cout << "You have already declared and mounted all the directories that need to be synced/backed-up\n"; cout << "Please take a moment to examine all messages from checks done until now\n\n"; cout << "Also have in mind that, to avoid errors, it is best to run this app as su\n\n"; cout << "Hit 'enter' to continue otherwise press 'ctrl+c' to exit NOW\n"; cin.get(); } cout << "\n\n"; } // rsyncIT=================================================================================================================== // Performs the execution of operations void commandline::rsyncIT() { cout << "\n============================================================================================\n"; cout << " Executing tasks"; if (DryRun) cout << " (simulation mode)"; cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n"; //some useful variables----------------------------------------------------------------------- QProcess *syncProcess; syncProcess = new QProcess; //create a new qprocess (for rsync) QString command = rsyncCommandPath; //command to be executed. Normally this is "rsync" QString command2=""; // windows use QStringList rsyncArguments; // This stringList holds all arguments for the rsync command QString dirA; //holds the first dir to be synced QString dirB; //holds the second dir to be synced QString logText=""; //This text will be appended to the logfile currentOperation = 0; while (currentOperation < TotalOperations) { if (WINrunning) { setAppDir(Operation[currentOperation] -> GetLuckyBackupDir()); /* disable vss until... pipeVssFile = new QFile(Operation[currentOperation] -> GetTempPath()+SLASH+"qt_tempvss"+QString::number(qrand() % (999998) + 1)); if (pipeVssFile->open(QIODevice::ReadWrite)){ pipeVssFile->close(); } pipeVssErrFile = new QFile(Operation[currentOperation] -> GetTempPath()+SLASH+"qt_tempvsserr"+QString::number(qrand() % (999998) + 1)); if (pipeVssErrFile->open(QIODevice::ReadWrite)){ pipeVssErrFile->close(); }*/ } //if --skip-critical is given as argument and the task is CRITICAL if ( (Operation[currentOperation] -> GetCRITICAL()) && (SkipCritical) ) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if ( (Operation[currentOperation] -> GetPerform()) || (Operation[currentOperation] -> GetByPassWARNING()) ) { bool RemoteDestUsed = (Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()); // SNAPSHOTS REMOVAL - This is outside the (currentSnaps >= maxSnaps) condition, because it will eventually cause the snapshots directory to get created so that the profile will be backed up without problems later on // First calculate the folder where snapshots go QStringList tempArguments = Operation[currentOperation] -> GetArgs(); QString tempSource = tempArguments[tempArguments.size()-2]; QString tempDestination = tempArguments[tempArguments.size()-1]; QString tempDestinationOrig = tempArguments[tempArguments.size()-1]; //windows use QString tempDestinationOrig2; QString sourceLast = tempSource; // win stuff ~~~~~ QString tslash; if (WINrunning) tslash=XnixSLASH; else tslash=SLASH; if (!tempSource.endsWith(SLASH)) // this means task is of type "backup dir by name" { sourceLast = calculateLastPath(sourceLast); // This is the lowest dir of the source tempSource.append(SLASH); if (WINrunning && RemoteDestUsed) tempDestination.append(sourceLast + XnixSLASH); else tempDestination.append(sourceLast + SLASH); } tempDestinationOrig2=tempDestination; if (RemoteDestUsed && WINrunning) tempDestination.append (snapDefaultDir.replace(SLASH,XnixSLASH)); else tempDestination.append (snapDefaultDir); QStringList remoteArgs; remoteArgs.clear(); //all remote arguments exactly as used at normal backup if (RemoteDestUsed) { remoteArgs.append("--protect-args"); if ( (Operation[currentOperation]-> GetRemoteModule()) && (Operation[currentOperation] -> GetRemotePassword() != "") ) remoteArgs.append("--password-file=" + ( Operation[currentOperation] -> GetRemotePassword()) ); if ( Operation[currentOperation] -> GetRemoteSSH()) { QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\" -o \"PasswordAuthentication no\" "; if (WINrunning) { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword() + "\" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" + Operation[currentOperation] -> GetRemoteSSHPassword() + "\""); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+""); } else { if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "") if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword() +" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath+" -i " + Operation[currentOperation] -> GetRemoteSSHPassword()); else if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0) remoteArgs.append("-e "+sshCommandPath+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) ); else remoteArgs.append("-e "+sshCommandPath); } } } //update the last execution time + logfile actions ~~~~~~~~~~~~~~~~~~~~~ if (!DryRun) { int maxSnaps = Operation[currentOperation] -> GetKeepSnapshots(); // this is the number of snapshots to keep if (maxSnaps < 1) maxSnaps = 1; int currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the current number of snapshots if (currentSnaps < 1) currentSnaps = 1; // Juan's patch ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // this is just to create the .snapDefaultDir if it does not to exist so as to copy profile data later... //we will create the snapshots default directory by using an rsync command with an empty source without --delete option QProcess *mkdirProcess; mkdirProcess = new QProcess; QStringList mkdirArgs; mkdirArgs.clear(); //if (WINrunning && RemoteDestUsed) // mkdirArgs << "--mkdir"; //else mkdirArgs << "--progress" << "-r"; //add all remote arguments exactly as used at normal backup if (RemoteDestUsed) mkdirArgs << remoteArgs; // Add the destination folder mkdirArgs.append(snapEmptyDir); mkdirArgs.append(tempDestinationOrig); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),false,mkdirArgs,false); if (command2=="") cout << "\nfailed to create bat file in mkdirProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) cout << "\n!"; else cout << "\n!mkdir error!"; // Add the destination folder [ + sourceLast +SLASH ] mkdirArgs.removeLast(); mkdirArgs.append(tempDestinationOrig2); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),false,mkdirArgs,false); if (command2=="") cout << "\nfailed to create bat file in mkdirProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) cout << "\n!"; else cout << "\n!mkdir error!"; // Add the destination folder [ + sourceLast +SLASH ] + snapDefaultDir mkdirArgs.removeLast(); mkdirArgs.append(tempDestination); // QTemporaryFile command1(QDir::tempPath()+"\\qt_tempXXXXXX.bat"); // QTemporaryFile command2(QDir::tempPath()+"\\qt_tempXXXXXX.bat"); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),false,mkdirArgs,false); if (command2=="") cout << "\nfailed to create bat file in rmProccess"; else mkdirProcess -> start (command2); } else mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) cout << "\n!"; else cout << "\n!mkdir error!"; // Juan's patch END~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // first remove the older logfiles and snapshots if max keep snapshots is reached if (currentSnaps >= maxSnaps) { cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Removing old snapshots and logfiles of task: " << QString((Operation[currentOperation] -> GetName()).toUtf8()).toStdString() << "\n"; // ************** actually REMOVE DATA of all older snapshots *************************** // ****************************************************************************** // increase the remove limit to include the source.size() if "backup dir by name" is used if (Operation[currentOperation] -> GetTypeDirName()) removeCharLimit = 4 + sourceLast.size()+1; else removeCharLimit = 4; QProcess *rmProcess; rmProcess = new QProcess; QStringList rmArgs; rmArgs << "--progress" << "-r" << "--delete-after"; int snapToKeep = currentSnaps-maxSnaps + 1; while ( snapToKeep < currentSnaps ) { if (WINrunning) rmArgs.append("--filter=protect " + Operation[currentOperation] -> GetSnapshotsListItem(snapToKeep) + XnixSLASH); else rmArgs.append("--filter=protect " + Operation[currentOperation] -> GetSnapshotsListItem(snapToKeep) + SLASH); snapToKeep++; } // protect the backup profile dir too if (WINrunning) rmArgs.append("--filter=protect " + profileName + ".profile" + XnixSLASH); else rmArgs.append("--filter=protect " + profileName + ".profile" + SLASH); //also add all remote arguments exactly as used at normal backup if (RemoteDestUsed) rmArgs << remoteArgs; rmArgs.append(snapEmptyDir); rmArgs.append(tempDestination); if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),false,rmArgs,false); if (command2=="") cout << "\nfailed to create bat file in rmProccess"; else { rmProcess -> start (command2); rmProcess -> waitForFinished(); } } else { rmProcess -> start (command,rmArgs); rmProcess -> waitForFinished(); } if ((rmProcess -> exitCode()) == 0) cout << "\nRemoved all older snapshots data";// << QString((tempDestination + Operation[currentOperation] -> GetSnapshotsListItem(0) + SLASH).toUtf8()).toStdString(); else cout << "\nfailed to remove all older snapshots data";// << QString((tempDestination + Operation[currentOperation] -> GetSnapshotsListItem(0) + SLASH).toUtf8()).toStdString() << "\n"; // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ count = 0; while ( count < (currentSnaps -maxSnaps + 1 ) ) { //remove the changes file snapchangesfilename = snapChangesDir + QString(profileName.toUtf8()) + "-" + QString((Operation[currentOperation] -> GetName()).toUtf8()) + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(0)) + ".changes.log"; snapfile.setFileName(snapchangesfilename); if (snapfile.exists()) { if (snapfile.remove()) // this is the old snapshot changes file cout << "\nRemoving " << QString(snapchangesfilename.toUtf8()).toStdString(); else cout << "\nfailed to remove " << QString(snapchangesfilename.toUtf8()).toStdString() << "\n"; } //remove the oldest logfile logfilename = logDir + QString(profileName.toUtf8()) + "-" + QString((Operation[currentOperation] -> GetName()).toUtf8()) + "-" + Operation[currentOperation] -> GetSnapshotsListItem(0) + ".log"; logfile.setFileName(logfilename); // this is the old logfile if (logfile.exists()) { if (logfile.remove()) cout << "\nRemoving " << QString(logfilename.toUtf8()).toStdString(); else cout << "\nfailed to remove " << QString(logfilename.toUtf8()).toStdString() << "\n"; } //remove the oldest snapshot (0) from the list Operation[currentOperation] -> RemoveSnapshotsListItem (0); count++; } } // the following is transfered in the very beginning of the actions for !DryRun, /*else // this is just to create the .snapDefaultDir if it does not to exist so as to copy profile data later... { //we will create the snapshots default directory by using an rsync command with an empty source without --delete option QProcess *mkdirProcess; mkdirProcess = new QProcess; QStringList mkdirArgs; mkdirArgs.clear(); if ( (WINrunning) && (RemoteDestUsed) ) mkdirArgs << "--mkdir"; else mkdirArgs << "--progress" << "-r"; //add all remote arguments exactly as used at normal backup if (RemoteDestUsed) mkdirArgs << remoteArgs; mkdirArgs.append(snapEmptyDir); mkdirArgs.append(tempDestination); mkdirProcess -> start (command,mkdirArgs); mkdirProcess -> waitForFinished(); if ((mkdirProcess -> exitCode()) == 0) cout << "\n!!"; else cout << "\n!"; }*/ //set the current date and time as the operation's last execution date-time Operation[currentOperation] -> SetLastExecutionTime (QDateTime::currentDateTime()); // add a new snapshot with the last execution date-time Operation[currentOperation] -> AddSnapshotsListItem ((Operation[currentOperation] -> GetLastExecutionTime()).toString("yyyyMMddhhmmss")); currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // update the current number of snapshots // set a new changes file. This has a tag of the previous snapshot will include changes made to this snapshot snapchangesfilename = snapChangesDir + QString(profileName.toUtf8()) + "-" + QString((Operation[currentOperation] -> GetName()).toUtf8()) + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(currentSnaps - 1)) + ".changes.log"; snapfile.setFileName(snapchangesfilename); // set a new logfile logfilename = logDir + QString(profileName.toUtf8()) + "-" + QString((Operation[currentOperation] -> GetName()).toUtf8()) + "-" + ( Operation[currentOperation] -> GetSnapshotsListItem(currentSnaps - 1) ) + ".log"; logfile.setFileName(logfilename); // this is the current logfile if (logfile.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append)) //create a new log file { writeToLog = true; //& if it's ok syncProcess -> setStandardOutputFile(logfilename, QIODevice::Append ); syncProcess -> setStandardErrorFile(logfilename, QIODevice::Append ); } else { cout << "\nError writing to log:" << QString(logfilename.toUtf8()).toStdString(); writeToLog = false; } // reset the error counter errorCount = 0; // Number of errors from one task (max value is 1) } // The following part will be run as many times as the RepeatOnFail argument // It includes execute before, task & execute after actions int repeatTaskOnFailMax = Operation[currentOperation] -> GetRepeatOnFail(); // This holds the number of re-runs to try if the task fails for a reason int RunTry = 0; // This run is No... RunTry bool runNOW = true; //pre-task commands execution ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ count = 0; bool StopTaskExecution = false; while ( (Operation[currentOperation] -> GetExecuteBeforeListSize() > count) && (!StopTaskExecution) ) { cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Now executing pre-task command: " << QString((Operation[currentOperation] -> GetExecuteBeforeListItem(count)).toUtf8()).toStdString() << "\n"; logFileUpdate("pre-starting","",count); //update the logfile RunTry = 0; // This run of the command is No... runNOW = true; // run it this time while ( (RunTry < repeatTaskOnFailMax+1) && (runNOW) ) { runNOW = false; // do NOT run this another time if it goes ok if (RunTry > 0) { cout << "\n Repeating execution of pre-task command due to failure - run " << RunTry+1 << " of " << repeatTaskOnFailMax+1 << "\n\n"; logFileUpdate("repeat-on-fail","",count); //update the logfile } //syncProcess -> execute (Operation[currentOperation] -> GetExecuteBeforeListItem(count)); syncProcess -> start (Operation[currentOperation] -> GetExecuteBeforeListItem(count)); //wait for the process to start and finish if (syncProcess -> waitForStarted (-1)) // the "-1" arguments are used to avoid timing out { cout << "\nThe process started successfully\n"; syncProcess -> waitForFinished (-1); } else { cout << "\nThe process failed to start\n"; errorCount++; if (RunTry < repeatTaskOnFailMax+1) runNOW = true; // run it another time because of error if ( (Operation[currentOperation] -> GetExecuteBeforeListItemState(count) == true) && (RunTry == repeatTaskOnFailMax) ) { StopTaskExecution = true; break; } } cout << "\nexit code : " << syncProcess -> exitCode(); cout << "\nexit status : " << syncProcess -> exitStatus() << "\n"; if (syncProcess -> exitCode() != 0) { errorCount++; if (RunTry < repeatTaskOnFailMax+1) runNOW = true; // run it another time because of error if ( (Operation[currentOperation] -> GetExecuteBeforeListItemState(count) == true) && (RunTry == repeatTaskOnFailMax) ) { StopTaskExecution = true; break; } } RunTry++; } // Main repeat-On-Fail loop -> The specific command will be repeated according to user setting logFileUpdate("pre-finished", "", count); count++; } // Execute before commands loop //task execution if (StopTaskExecution) { logFileUpdate("pre-task-exited-with-error", "", 0); cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Pre-task command exited with an error. Skipping task execution..."; cout << "\n--------------------------------------------------------------------------------------------\n"; } else { cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Now executing : " << QString((Operation[currentOperation] -> GetName()).toUtf8()).toStdString(); cout << "\n--------------------------------------------------------------------------------------------\n"; if (Operation[currentOperation] -> GetTypeSync()) logFileUpdate("rsync-starting-syncAB", "", 0); else logFileUpdate("rsync-starting-backup", "", 0); // Create the destination if it does not exist bool DestCreateFail = false; // This will become true if destination does not exist and cannot be created rsyncArguments = AppendArguments(Operation[currentOperation]); //set rsync arguments dirB = rsyncArguments[rsyncArguments.size()-1]; QDir destCreate (dirB.toUtf8()); if ( (!destCreate.exists()) && (!Operation[currentOperation] -> GetTypeSync()) && (!RemoteDestUsed) ) // local use ONLY { if (destCreate.mkpath(dirB.toUtf8())) { logFileUpdate("rsync-standard", "
Successfully created destination directory", 0); cout << "\n\n Successfully created destination directory\n"; } else { logFileUpdate("rsync-error", "
Failed to create destination directory", 0); cout << "\n\n Failed to create destination directory\n"; DestCreateFail = true; errorCount++; } } if (!DestCreateFail) { //convert rsyncArguments to utf-8 for console compatibility count=0; while (count < rsyncArguments.size()) { rsyncArguments[count] = QString(rsyncArguments[count].toUtf8()); count++; } // add the --dry-run to arguments if applicable if (DryRun) rsyncArguments.insert(rsyncArguments.size()-2,"--dry-run"); //if (writeToLog ) // rsyncArguments.insert(rsyncArguments.size()-2,"--log-file="+logfilename); //syncProcess -> execute (command,rsyncArguments); // execute rsync command with rsyncArguments for backup or sync A->B // start the repeat on fail loop for the rsync command (backup or sync1) RunTry = 0; // This run of the command is No... runNOW = true; // run it this time while ( (RunTry < repeatTaskOnFailMax+1) && (runNOW) ) { runNOW = false; // do NOT run this another time if it goes ok if (RunTry > 0) { cout << "\n Repeating execution of rsync command due to failure - run " << RunTry+1 << " of " << repeatTaskOnFailMax+1 << "\n\n"; logFileUpdate("repeat-on-fail","",count); //update the logfile } if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),Operation[currentOperation]->GetOptionsVss(),rsyncArguments,false); if (command2=="") cout << "\nfailed to create bat file in syncProccess"; else syncProcess -> start (command2); } else syncProcess -> start (command,rsyncArguments); //wait for the process to start and finish if (syncProcess -> waitForStarted (-1)) // the "-1" arguments are used to avoid timing out { cout << "\nThe process started successfully\n"; syncProcess -> waitForFinished (-1); } else { cout << "\nThe process failed to start\n"; errorCount++; } cout << "\nrsync exit code : " << syncProcess -> exitCode(); cout << "\nrsync exit status : " << syncProcess -> exitStatus() << "\n"; if (syncProcess -> exitCode() != 0) errorCount++; /* If there is an error repeat the rsync command. Errors: 5 - Error starting client-server protocol 12 - Error in rsync protocol data stream 23 - Partial transfer due to error -> I took this out 30 - Timeout in data send/receive 35 - Timeout waiting for daemon connection 255 - unexplained error */ if ( (syncProcess -> exitCode()==30) || (syncProcess -> exitCode()==35) || (syncProcess -> exitCode()==255) || (syncProcess -> exitCode()==12) || (syncProcess -> exitCode()==5) ) runNOW = true; RunTry++; } // The repeat-on-fail loop if (Operation[currentOperation] -> GetTypeSync()) logFileUpdate("rsync-finished-sync1", "", 0); else { // strip unused lines from the snapshot changes file QString filesAdded = "", snapLine = ""; if (snapfile.open(QIODevice::ReadOnly | QIODevice::Text)) { QTextStream in(&snapfile); while (!in.atEnd()) { snapLine = in.readLine(); if (snapLine.contains("+++++++", Qt::CaseInsensitive)) { snapLine = snapLine.right(snapLine.size()-snapLine.lastIndexOf("[LB]")-removeCharLimit) + "\n"; filesAdded.append(snapLine); } } snapfile.close(); } if (snapfile.open(QIODevice::WriteOnly)) { QTextStream out(&snapfile); out << filesAdded; snapfile.close(); } QString exportProfileDir = ""; QString sourceLast = Operation[currentOperation] -> GetSource(); //calculate the last folder of source if (!sourceLast.endsWith(SLASH)) // this means task is of type "backup dir by name" sourceLast = calculateLastPath(sourceLast); // This is the lowest dir of the source else sourceLast = ""; if (!rsyncArguments.isEmpty()) //rsyncArguments is calculated at executeRsync() { if (WINrunning && RemoteDestUsed) exportProfileDir = rsyncArguments.last() + sourceLast + XnixSLASH + snapDefaultDir + profileName + ".profile" + XnixSLASH; else exportProfileDir = rsyncArguments.last() + sourceLast + SLASH + snapDefaultDir + profileName + ".profile" + SLASH; } // Backup profile + logs + snaps to destination // If this is a backup task && not a dryrun if ( (!Operation[currentOperation] -> GetTypeSync()) && (!DryRun) && (!rsyncArguments.isEmpty()) ) { // Create the export path if it does not exist QDir exportPathCreate (exportProfileDir); if ( (!exportPathCreate.exists()) && (!RemoteDestUsed) ) // local use ONLY exportPathCreate.mkpath(exportProfileDir); if (exportFullProfile(exportProfileDir,"ExportOnlyTask")) { cout << "\n Backing-up profile, logfiles and snapshot data -> Ok\n"; logFileUpdate("backup-profile", " -> Ok", 0); } else { cout << "\n Backing-up profile, logfiles and snapshot data -> FAILED\n"; logFileUpdate("backup-profile", " -> Fail", 0); } } logFileUpdate("rsync-finished", "", 0); } if (Operation[currentOperation] -> GetTypeSync()) //execute rsync for syncing B -> A { logFileUpdate("rsync-starting-syncBA", "", 0); cout << "\n\n Now executing 2nd part of sync task...\n"; dirA = rsyncArguments[rsyncArguments.size()-2]; //swap last 2 arguments (dir names) dirB = rsyncArguments[rsyncArguments.size()-1]; rsyncArguments.removeLast(); rsyncArguments.removeLast(); rsyncArguments.append(dirB); rsyncArguments.append(dirA); // start the repeat on fail loop for the rsync command (sync2) RunTry = 0; // This run of the command is No... runNOW = true; // run it this time while ( (RunTry < repeatTaskOnFailMax+1) && (runNOW) ) { runNOW = false; // do NOT run this another time if it goes ok if (RunTry > 0) { cout << "\n Repeating execution of rsync command due to failure - run " << RunTry+1 << " of " << repeatTaskOnFailMax+1 << "\n\n"; logFileUpdate("repeat-on-fail","",count); //update the logfile } //syncProcess -> execute (command,rsyncArguments); // execute rsync command with rsyncArguments B->A if (WINrunning) { //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest); command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),Operation[currentOperation]->GetOptionsVss(),rsyncArguments,false); if (command2=="") cout << "\nfailed to create bat file in rmProccess"; else syncProcess -> start (command2); } else syncProcess -> start (command,rsyncArguments); if (syncProcess -> waitForStarted (-1)) // the "-1" arguments are used to avoid timing out { cout << "\nThe process started successfully\n"; syncProcess -> waitForFinished (-1); } else { cout << "\nThe process failed to start\n"; errorCount++; } cout << "\nrsync exit code : " << syncProcess -> exitCode(); cout << "\nrsync exit status : " << syncProcess -> exitStatus() << "\n"; if (syncProcess -> exitCode() != 0) errorCount++; // If there is an error repeat the rsync command. Errors if ( (syncProcess -> exitCode()==30) || (syncProcess -> exitCode()==35) || (syncProcess -> exitCode()==255) || (syncProcess -> exitCode()==12) || (syncProcess -> exitCode()==5) || (syncProcess -> exitCode()==23) ) runNOW = true; RunTry++; } // The repeat-on-fail loop logFileUpdate("rsync-finished", "", 0); } //post-task commands execution count = 0; while ( (Operation[currentOperation] -> GetExecuteAfterListSize() > count) && (!StopTaskExecution) ) { cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Now executing post-task command: " << QString(Operation[currentOperation] -> GetExecuteAfterListItem(count).toUtf8()).toStdString() << "\n"; //update the logfile logFileUpdate("post-starting", "", count); RunTry = 0; // This run of the command is No... runNOW = true; // run it this time while ( (RunTry < repeatTaskOnFailMax+1) && (runNOW) ) { runNOW = false; // do NOT run this another time if it goes ok if (RunTry > 0) { cout << "\n Repeating execution of post-rsync command due to failure - run " << RunTry+1 << " of " << repeatTaskOnFailMax+1 << "\n\n"; logFileUpdate("repeat-on-fail","",count); //update the logfile } //syncProcess -> execute (Operation[currentOperation] -> GetExecuteAfterListItem(count)); syncProcess -> start (Operation[currentOperation] -> GetExecuteAfterListItem(count)); if (syncProcess -> waitForStarted (-1)) // the "-1" arguments are used to avoid timing out { cout << "\nThe process started successfully\n"; syncProcess -> waitForFinished (-1); } else { cout << "\nThe process failed to start\n"; errorCount++; if (RunTry < repeatTaskOnFailMax+1) runNOW = true; // run it another time because of error if ( (Operation[currentOperation] -> GetExecuteAfterListItemState(count) == true) && (RunTry == repeatTaskOnFailMax) ) { StopTaskExecution = true; break; } } cout << "\nexit code : " << syncProcess -> exitCode(); cout << "\nexit status : " << syncProcess -> exitStatus() << "\n"; if (syncProcess -> exitCode() != 0) { errorCount++; if (RunTry < repeatTaskOnFailMax+1) runNOW = true; // run it another time because of error if ( (Operation[currentOperation] -> GetExecuteAfterListItemState(count) == true) && (RunTry == repeatTaskOnFailMax) ) { StopTaskExecution = true; break; } } RunTry++; } // The repeat-on-fail loop logFileUpdate("post-finished", "", count); count++; } if (StopTaskExecution) { logFileUpdate("pre-task-exited-with-error", "", 0); cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; cout << " Post-task command exited with an error. Skipping executing the rest of commands..."; cout << "\n--------------------------------------------------------------------------------------------\n"; } } } // Task & execute after task loop // close the logfile if (writeToLog){ QTextStream out(&logfile); out << "
";
                logfile.close();
            }
            
            // Update the last execution errors and .changes file if real run
            if (!DryRun)
                Operation[currentOperation] -> SetLastExecutionErrors (errorCount);	// update the last execution errors
                
            errorsFound = errorsFound + errorCount;
            errorCount = 0;
        }
        currentOperation++;
    }
}


// thats_all===================================================================================================================
// Displays an "all done" message
void commandline::thats_all()
{
    cout << "============================================================================================\n";
    cout << "			" << QDateTime::currentDateTime().toString(Qt::SystemLocaleLongDate).toStdString() << "\n";
    cout <<  "			Syncing and backing up is finished";
    if (DryRun)
        cout << "  (simulation mode)";
    if (errorsFound == 0)
        cout << "\n			No errors found";
    else
        cout << "\n			errors found: " << countStr.setNum(errorsFound).toStdString();
    if (writeToLog)
        cout << "\n 	logfile(s) have been created under directory: " << logDir.toStdString();
    cout <<  "\n\n			hope everything went ok ;-)\n";
    cout << "============================================================================================\n";
    
    saveProfile(QString(currentProfile.toUtf8()));	// updates the execution time
    
    // send an email
    if ( (!emailNever) && (!DryRun) )
    {
        bool send = true;
        if ( ((emailError) && (errorsFound == 0))   // do not send if the condition "error" is checked and there are no errors
                ||
            ((emailSchedule) && (!NoQuestions)) )  // do not send if the condition "scheduled" is checked
                                                                // & --no-questions is NOT given as argument
            send = false;
        
        // ***** gui mode and "schedule" is covered in executenow.cpp ******
        
        if (send)
        {
            cout << "\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
            cout << "trying to send an email\n";
            cout << "       . . .\n\n";
            cout << sendEmailNow(false).toStdString();
        }
    }
}


// end of commandline.cpp---------------------------------------------------------
 
luckybackup-0.5.0/src/global.cpp0000666000175000017500000045526613367055424016167 0ustar  luckybluckyb/* ---------------------------------- global.cpp ---------------------------------------------------------------------------
file containing all variables & functions used globaly

===============================================================================================================================
===============================================================================================================================
    This file is part of "luckyBackup" project
    Copyright, Loukas Avgeriou
    luckyBackup is distributed under the terms of the GNU General Public License
    luckyBackup 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.

    luckyBackup 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 luckyBackup.  If not, see .

project version    : Please see "main.cpp" for project version

developer          : luckyb 
last modified      : 2 Nov 2018
===============================================================================================================================
===============================================================================================================================
*/

#include "global.h"

#include 
using namespace std;

#include 
#include 
#include 
#include 
#include 

#include "operationClass.h"

// global Variables declarations ~~~~~~~~~~~~~~~~~

namespace Global {

QString myHome = QDir::homePath();
QString currentUser;
QString const appName = "luckyBackup";
double const appVersion = 0.50;
QString appVersionString = "0.5.0";
double const validProfileVersion = 0.21;
double const validScheduleVersion = 0.34;
double const validSettingsVersion = 0.3;
QString luckyBackupDir = myHome + "/."+appName+"/";
QString luckyBackupDefaultDir = myHome + "/."+appName+"/";
QString settingsFile = luckyBackupDir + "settings.ini";
QString profileDir = luckyBackupDir + "profiles/";
QString defaultProfile = profileDir + "default.profile";
QString standardDefaultProfile = profileDir + "default.profile";
QString logDir = luckyBackupDir + "logs/";
QString logfilename = logDir + "logfile.log";
QString cronlogString = "LastCronLog.log";
QString emailLogString = "-email.log";
QString emailLastLogString = "-email-LastLog.log";
QString snapDefaultDir = ".luckybackup-snaphots/";
QString snapChangesDir = luckyBackupDir + "snaps/";
QString snapEmptyDir = snapChangesDir + "EMPTY/";
QString snapchangesfilename = snapChangesDir + "changes.log";
QString snapChangesString = "[changed_data]%i[LB]%n";
QString scheduleDir = luckyBackupDir + "schedule/";
QString schedulefilename = scheduleDir + "schedule.dat";
QString cronfilename = scheduleDir + "luckyCron.txt";
QString relativeTransDir = "translations/";
QString systemTransDir = "/usr/share/luckybackup/translations/";
QDir transDir;
QTranslator appTranslator;
QTranslator translator_qt;
QString locale = QLocale::system().name();
QString relativeLicense = "license/gpl.html";
QString systemLicense = "/usr/share/doc/luckybackup/license/gpl.html";
QString suseLicense = "/usr/share/doc/packages/luckybackup/license/gpl.html";
QString debianLicense = "/usr/share/common-licenses/GPL-3";
QString relativeManual = "manual/index.html";
QString systemManual = "/usr/share/doc/luckybackup/manual/index.html";
QString suseManual = "/usr/share/doc/packages/luckybackup/manual/index.html";

QString countStr;
QString message="";
QString messageCLI="";
int errorsFound;
int filesTransfered;
unsigned long long int bytesTransfered;

// Useful variables for operations ---------------------------------------------------------------------------------------------------
int const maxOperations = 100;
int TotalOperations=0;
int currentOperation=-1;
int removeCharLimit;
bool modifyOK=false;
bool modifyConnected=false;
bool DryRun=false;
bool ask=false;
bool newTaskThisIs = true;
bool NothingToDo=false;
bool NothingIncluded=false;
bool crontabUpdated=false;
QString currentProfile="";
QString profileName="";
QString profileDescription="";
QFile profile("");
QFile logfile("");
QFile snapfile("");
QString CheckedData;
QString CheckedDataCLI;
operation *Operation[maxOperations];

bool console;
bool NoQuestions;
bool SkipCritical;
bool silentMode;
bool runImmediately;
bool validation;
bool KDErunning = false;
bool GNOMErunning = false;
bool writeToLog;

QString emailCommand;
QString emailArguments;
bool    emailNever;
bool    emailError;
bool    emailSchedule;
bool    emailTLS;
QString emailFrom;
QString emailTo;
QString emailSubject;
QString emailSMTP;
QString emailBody;
QString emailDefaultSubject =   appName + " report";
QString emailDefaultBody    =   "Profile:      %p"
                                "\nDate:         %d"
                                "\nTime:         %i"
                                "\nErrors found: %e";
QString emailDefaultCommand    =   "sendemail";
QString emailDefaultArguments  =   "-f %f -t %t -u %s -m %b -a %l -s %v";
QString emailDefaultWinCommand ="C:\\Program Files (x86)\\luckyBackup\\blat\\blat.exe";
QString emailDefaultWinArguments ="-f %f -to %t -s %s -server %v -attach %l -body %b";

QString rsyncDefaultCommand = "rsync";
QString sshDefaultCommand = "ssh";

// WINDOWS related variables. Also search variables above for "WINDOWS use"
//QString rsyncDefaultWinCommand = "C:\\Program Files (x86)\\luckyBackup\\cygwin\\rsync.exe";
//QString sshDefaultWinCommand = "C:\\Program Files (x86)\\luckyBackup\\cygwin\\ssh.exe";
QString rsyncDefaultWinCommand = "";
QString sshDefaultWinCommand = "";
QString appPath = "";
//"QCoreApplication::applicationDirPath: Please instantiate the QApplication object first" WARNING message
//QString rsyncDefaultWinCommand = appPath+"/rsync.exe";
//QString sshDefaultWinCommand = appPath+"/ssh.exe";
QString mapdrive="w";
QString vshadowDir=             "";
QString vshadowDefaultDir=      "";
QString dosdevCommand=          "";
QString dosdevDefaultCommand=   "";
QString cygpathCommand=         "";
QString cygpathDefaultCommand=  "";
bool isTempDirPath=false;
QString tempDirPath=QDir::tempPath();
QString tempDefaultDirPath=QDir::tempPath();
//void setAppDir(QString s);
/* disable vss until
  * int doVss=0;
  * int vssPos=0;
  * int vssErrPos=0;
  * QTimer *vssTimer;
  * int vssSleepTime=50;
  * int vssReadSize=400;
  * QFile *pipeVssFile;
  * QFile *pipeVssErrFile;*/
//QString createWinMkdirCommand(QString tempPath,bool vss,QStringList rsyncArgs,bool logGui);
// END of Windows related variables

QString rsyncCommandPath;
QString sshCommandPath;

QString XnixSLASH = "/";

#ifdef Q_OS_OS2
bool OS2running = true;
QString SLASH = "\\";
#else
bool OS2running = false;
QString SLASH = "/";
#endif

#ifdef Q_OS_WIN32
bool WINrunning = true;
#else
bool WINrunning = false;
#endif

#if defined Q_OS_OS2 || defined Q_OS_WIN32
bool notXnixRunning=true;
#else
bool notXnixRunning=false;
#endif

// end of global Variables declarations ~~~~~~~~~~~~~~~~~

// argumentsTest===================================================================================================================
// tests the arguments given when LB executed at command-line
bool argumentsTest(int ArgsNo, char **arg)
{
    console = false;
    NoQuestions = false;
    SkipCritical = false;
    DryRun = false;
    silentMode = false;
    runImmediately = false;
    
    if (ArgsNo == 1)		// if just luckybackup is given without argumets just run the gui
        return true;

    int NoOfArgs = ArgsNo-1;	//the number of arguments given minus the command luckybackup
    string stdArgs[7] = { "-c",	"--no-questions",	"--skip-critical",	"--dry-run",	"--silent"};
    bool argCheck = false;	// if a specific argument is ok this becomes true

    int count = 1;
    while (count < NoOfArgs)
    {
        if (arg[count] == stdArgs[0])
            { console = true; argCheck = true; }
        if (arg[count] == stdArgs[1])
            { NoQuestions = true; console = true; argCheck = true; }
        if (arg[count] == stdArgs[2])
            { SkipCritical = true; argCheck = true; }
        if (arg[count] == stdArgs[3])
            { DryRun = true; argCheck = true; }
        if (arg[count] == stdArgs[4])
            { silentMode = true; argCheck = true; }
        if ((arg[count] == stdArgs[5]) || (arg[count] == stdArgs[6]))
        {
            // what was I thinking ???
        }
        if (!argCheck)			// if the argument is unknown
            { help(); return false;	}	
        argCheck = false;
        count++;
    }
    
    const char *profileNameChar = arg[NoOfArgs];	//const char* used cause argument in terminal is in utf-8 and this helps to convert it to QString
    QString profileNameArg = arg[NoOfArgs];
    if ( (profileNameArg == "--help") || (profileNameArg == "-h") )
        { help(); return false;}
    if ( (profileNameArg == "--version") || (profileNameArg == "-v") )
    {
        cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
        cout << "     You are using luckyBackup version: " << appVersionString.toStdString() <<"\n";
        cout << "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";
        return false;
    }
    
    //currentProfile = profileNameArg;	// currentProfile holds the full path+filename of the current profile
    currentProfile = QString::fromUtf8(profileNameChar);	// currentProfile holds the full path+filename of the current profile
    
    if ( notXnixRunning )
    {
        profileDir.replace("/",SLASH);
        profileNameArg.replace("/",SLASH);
        currentProfile.replace("/",SLASH);
    }
    if (!profileNameArg.endsWith(".profile",Qt::CaseSensitive))
        currentProfile.append(".profile");
    if ( (!profileNameArg.startsWith(SLASH)) && (!notXnixRunning) )
        currentProfile.prepend(profileDir);
    if ( (notXnixRunning) && (!profileNameArg.contains(":"+SLASH)) )
        currentProfile.prepend(profileDir);
    
    //current profile QFile
    profile.setFileName(currentProfile);
    
    //current profile's name (QString) - this just holds the profile name. No path & no extension
    profileName = currentProfile;
    profileName = profileName.right(profileName.size() - profileName.lastIndexOf(SLASH) - 1);
    profileName.chop(8);
    
    runImmediately = true;
    return true;	// all arguments ok
}

// declareRsyncCommand===================================================================================================================
// declares the rsync and ssh commands (full path for windows)
void declareRsyncCommand()
{
    
    // WINDOWS related variables
    appPath = QCoreApplication::applicationDirPath();
    rsyncDefaultWinCommand = appPath+"/rsync.exe";
    sshDefaultWinCommand   = appPath+"/ssh.exe";
    vshadowDir             = appPath;
    vshadowDefaultDir      = appPath;
    dosdevCommand          = appPath+"/dosdev.exe";
    dosdevDefaultCommand   = appPath+"/dosdev.exe";
    cygpathCommand         = appPath+"/cygpath.exe";
    cygpathDefaultCommand  = appPath+"/cygpath.exe";
    // END of Windows related variables

    if (notXnixRunning)
    {
        if (WINrunning)
        {
            rsyncCommandPath    = rsyncDefaultWinCommand;                                     // This is the default rsync path that windows use
            sshCommandPath      = sshDefaultWinCommand;                                       // This is the default ssh path that windows use
        }
        
        if (OS2running)
        {
            rsyncCommandPath    = rsyncDefaultCommand;                                     // This is the default rsync path that OS2 use
            sshCommandPath      = sshDefaultCommand;                                       // This is the default ssh path that OS2 use
        }
    }
    else        // normal *nix
    {
        rsyncCommandPath    = rsyncDefaultCommand;                                     // This is the default rsync command that *nix use
        sshCommandPath      = sshDefaultCommand;                                       // This is the default ssh command that *nix use
        
    }
}

// loadCurrentProfile===================================================================================================================
// loads an existing profile - non-gui call
bool loadCurrentProfile()
{
    QString currentProfileUTF8 = QString(currentProfile.toUtf8());
    
    cout << "\n============================================================================================\n";
    cout << "		Loading profile " << currentProfileUTF8.toStdString() << "\n";
    cout << "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";
    
    QString source, dest;

    //read the file and fill all arrays
    int loadOK = loadProfile(currentProfileUTF8);	// try to load the currentProfile
    if (loadOK == 1)		// if it cannot open
    {
        cout << "	** Unable to open profile : " << currentProfileUTF8.toStdString() << " **\n";
        cout << "	" << profile.errorString().toStdString();
        cout << "\n\n";
        return false;					//do nothing more
    }

    if (loadOK == 2)			// if it is not a valid profile
    {
        cout << "	** The profile you are trying to open is not a valid luckyBackup v."
        << countStr.setNum(appVersion).toStdString() << " profile **\n\n";
        return false;	//do nothing more
    }

    // if all went ok (profile loaded) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    //append the profile description (CLI)
    //if (profileDescription != "")
    //	cout << "\n\n Profile description: \n" << (QString(profileDescription.toUtf8())).toStdString() <<"\n\n";
    
    currentOperation = 0;
    while (currentOperation < TotalOperations)
    {
        source = Operation[currentOperation]->GetSource();
        dest = Operation[currentOperation]->GetDestination();
        
        if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteSource()) )
        {
            if (Operation[currentOperation] -> GetRemoteModule())
                source.prepend(":");
            source.prepend((Operation[currentOperation] -> GetRemoteHost())+":");
            if (Operation[currentOperation] -> GetRemoteUser()!="")
                source.prepend((Operation[currentOperation] -> GetRemoteUser())+"@");
        }
    
        if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteDestination()) )
        {
            if (Operation[currentOperation] -> GetRemoteModule())
                dest.prepend(":");
            dest.prepend((Operation[currentOperation] -> GetRemoteHost())+":");
            if (Operation[currentOperation] -> GetRemoteUser()!="")
                dest.prepend((Operation[currentOperation] -> GetRemoteUser())+"@");
        }
        cout << "\n* task name		: " << QString((Operation[currentOperation]->GetName()).toUtf8()).toStdString();
        cout << "\n* source			: " << QString(source.toUtf8()).toStdString();
        cout << "\n* destination			: " << QString(dest.toUtf8()).toStdString();

        if (Operation[currentOperation]->GetIncluded())
            cout << "\n* This task is included\n";
        else
            cout << "\n* This task is NOT included\n";	

        currentOperation++;
    }
    cout << "\n\n			** Profile loaded successfully ... **\n\n";
    return true;
}

// check_list===================================================================================================================
// checks the loaded operations list for errors (eg nothing is included)
// calls global function checkTaskList()
bool check_list()
{
    cout << "\n============================================================================================\n";
    cout << "				Task list check \n";
    cout << "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";



    cout << "\n* Checking if the task list is empty...					done";
    cout << "\n* Checking if 2 connected tasks have been selected for execution...	done";
    cout << "\n* Checking if no task is included...					done";
    cout << "\n* Checking if 2 or more identical destination directories are declared\n  & 'Backup dir contents' is checked...					done\n";

    checkTaskList();

    if (ask)
    {
        cout << messageCLI.toStdString();;
        return false;
    }
    else
    {
        cout << "\n\n			** Task list looks ok... **\n";
        return true;
    }
    return true;
}

// check_dirs===================================================================================================================
// checks all declared directories for errors by calling checkBackupDirs or checkSyncDirs
//This is called from the console
bool check_dirs()
{
    cout << "\n============================================================================================\n";
    cout << "				Directories check\n";
    cout << "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";

    checkDeclaredDirs(false);

    if (ask == false)	//if all the dirs are ok prepend  this lines to the dialog message
    {
        CheckedDataCLI.prepend("\n		(Have in mind that checks are not performed for remote data)\n\n"
        "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
        CheckedDataCLI.prepend("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"
        "		All data declared appears to be ok - You are ready to go !!"
        "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n");
    }
    else			//else prepend the following
    {
        CheckedDataCLI.prepend("			Errors have been found\n"
        "		Please have a good look at the following messages\n\n"
        "	WARNING means that the task is NOT going to be performed\n"
        "	CRITICAL means that the task is going to be performed normally\n\n"
        "	If a directory is empty or does not exist,\n"
        "	there is a possibility that you 've forgotten to mount a partition/drive\n	or have just mistyped a path !!\n"
        "\n	BEWARE if a destination is empty or non-existent\n"
        "	and it is not the first time you perform the specific task(s)\n\n"
        "	Also have in mind that checks are not performed for remote data\n"
        "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n");

        CheckedDataCLI.prepend("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"
        "		Source & destination data check results"
        "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n");
    }

    cout << CheckedDataCLI.toStdString();
    //cout << CheckedDataCLI.toUtf8().constData();
    
    cout <<"\n\n";
    if (NothingToDo) //if there is nothing to Do anyway then just display a message
    {
        cout << "\n\n		** ..nothing to do !! **\n\n";
        return false;
    }
    return true;
}

// help===================================================================================================================
// displays command line usage instructions
void help()
{
    cout << "\n============================================================================================\n";
    cout << "\n * usage :       luckybackup [options] [filename]";
    cout << "\n -------------------------------------------------------------------------------------------\n";
    cout << " [options] can be  :\n\n";
    cout << " --help            : displays this help message\n";
    cout << " --version         : displays the current version of the application\n\n";

    cout << " --skip-critical   : does not execute tasks that appear with a 'CRITICAL' warning message.\n";
    cout << " --dry-run         : executes luckybackup in dry-run (simulation) mode\n";
    cout << " --silent          : executes luckybackup in silent mode (just tray notification icon shown)\n";
    cout << "\n";
    cout << " -c                : console mode. Use this, if there is no graphical envrironment available\n";
    cout << " --no-questions: skips confirmation questions asked to user. Implies -c (console mode).\n\n";

    cout << " [filename] is the already created profile that is going to be executed\n";
    cout << " -------------------------------------------------------------------------------------------\n";
    cout << " * examples:\n";
    cout << " Execute luckybackup gui :\n";
    cout << " $ luckybackup\n\n";

    cout << " Execute luckybackup in silent mode for profile '~/.luckyBackup/profiles/BackupHome.profile' :\n";
    cout << " $ luckybackup --silent ~/.luckyBackup/profiles/BackupHome.profile\n\n";

    cout << " Execute luckybackup in console mode for profile '~/.luckyBackup/profiles/BackupHome.profile' :\n";
    cout << " $ luckybackup -c BackupHome.profile\n\n";

    cout << " Execute luckybackup in console mode for profile '~/.luckyBackup/profiles/BackupHome.profile' :\n";
    cout << " Do not ask any questions and skip all tasks that apear CRITICAL after the checks\n";
    cout << " $ luckybackup --skip-critical --no-questions ~/.luckyBackup/profiles/BackupHome.profile";
    cout << "\n -------------------------------------------------------------------------------------------\n";
    cout << " see also luckybackup man page:\n";
    cout << " $ man luckybackup";
    cout << "\n============================================================================================\n\n";
}
// loadProfile =====================================================================================================================================
// loads an existing profile
int loadProfile(QString profileToLoad)
{
    profile.setFileName(profileToLoad);

    if (!profile.open(QIODevice::ReadOnly))		//if the profile cannot be opened
    {
        profile.close();
        return 1;
    }

    QTextStream in(&profile);

    QString ProfileLine="";				//temp variable to import the profile line by line
    ProfileLine = in.readLine();
    
    // First check if the profile is a text or data stream
    // if data, call loadProfileQV
    if (ProfileLine !="***************************** WARNING *****************************")
    {
        profile.close();
        return loadProfileQV(profileToLoad);
    }

    QString tempAppName = "asxeto";
    profileDescription = "";
    double tempAppVersion=0;
    bool IntOk;
    
    // Init email variables in case profile does not contain them
    if(WINrunning)
    {       
        emailCommand = emailDefaultWinCommand;
        emailArguments = emailDefaultWinArguments;
    }
    else 
    {
        emailCommand = emailDefaultCommand;
        emailArguments = emailDefaultArguments;
    }
    emailBody = emailDefaultBody;
    emailSubject = emailDefaultSubject;
    emailNever = true;
    emailError = false;
    emailSchedule = false;
    emailTLS = false;
    emailFrom = "";
    emailTo = "";
    emailSMTP = "";
    
    // Read all lines until the first task line or end of file if invalid
    while ( !(ProfileLine.startsWith("[Task]")) && (!in.atEnd()) )
    {
        ProfileLine = in.readLine();
        
        //input the application name & version--------------------------
        if (ProfileLine.startsWith("appName="))             tempAppName = ProfileLine.remove("appName=");
        if (ProfileLine.startsWith("appVersion="))          tempAppVersion = (ProfileLine.remove("appVersion=")).toDouble(&IntOk);

        //input the size of the tasks list
        if (ProfileLine.startsWith("TotalTasks="))          TotalOperations = (ProfileLine.remove("TotalTasks=")).toInt(&IntOk,10);
        
        //input the profile description
        if (ProfileLine.startsWith("ProfileDescription="))  profileDescription.append("\n" + ProfileLine.remove("ProfileDescription="));
        
        //input email stuff
        if (ProfileLine.startsWith("[email]"))              emailBody = "";// the profile contains email info, so init this var to start appending
        if (ProfileLine.startsWith("emailCommand="))        emailCommand = ProfileLine.remove("emailCommand=");
        if (ProfileLine.startsWith("emailArguments="))      emailArguments = ProfileLine.remove("emailArguments=");
        if (ProfileLine.startsWith("emailSubject="))        emailSubject = ProfileLine.remove("emailSubject=");
        if (ProfileLine.startsWith("emailNever="))          emailNever = (ProfileLine.remove("emailNever=")).toInt(&IntOk,10);
        if (ProfileLine.startsWith("emailError="))          emailError = (ProfileLine.remove("emailError=")).toInt(&IntOk,10);
        if (ProfileLine.startsWith("emailSchedule="))       emailSchedule = (ProfileLine.remove("emailSchedule=")).toInt(&IntOk,10);
        if (ProfileLine.startsWith("emailTLS="))            emailTLS = (ProfileLine.remove("emailTLS=")).toInt(&IntOk,10);
        if (ProfileLine.startsWith("emailFrom="))           emailFrom = ProfileLine.remove("emailFrom=");
        if (ProfileLine.startsWith("emailTo="))             emailTo = ProfileLine.remove("emailTo=");
        if (ProfileLine.startsWith("emailSMTP="))           emailSMTP = ProfileLine.remove("emailSMTP=");
        if (ProfileLine.startsWith("emailBody="))           emailBody.append("\n" + ProfileLine.remove("emailBody="));
    
    }
    profileDescription.remove(0,1); //remove the first "\n" from the profileDescription as well as the email body
    if (emailBody.startsWith("\n"))
        emailBody.remove(0,1); 
    
    if ( (tempAppName != appName) || (tempAppVersion < validProfileVersion) )//check if the file is a valid luckybackup profile
    {
        profile.close();
        return 2;		//profile is not valid
    }

    // import task details one bye one
    currentOperation = 0;
    while (currentOperation < TotalOperations)
    {
        operation *tempOp = new operation;
        bool doNotReadNextLine = false;

        ProfileLine = in.readLine();	// inport the next line
        while ( (!ProfileLine.startsWith("[Task_end]")) && (!in.atEnd()) )
        {
            doNotReadNextLine = false;
            if (ProfileLine.startsWith("Name="))					tempOp	-> SetName(ProfileLine.remove("Name="));
            if (ProfileLine.startsWith("TaskDescription="))			tempOp	-> SetDescription(tempOp->GetDescription() + "\n" + ProfileLine.remove("TaskDescription="));
            if (ProfileLine.startsWith("Args="))					tempOp	-> AppendArg(ProfileLine.remove("Args="));

            if (ProfileLine.startsWith("ConnectRestore="))			tempOp	-> SetConnectRestore(ProfileLine.remove("ConnectRestore="));

            if (ProfileLine.startsWith("LastExecutionTime="))		tempOp	-> SetLastExecutionTime(QDateTime::fromString(ProfileLine.remove("LastExecutionTime="),
"yyyyMMddhhmmss"));
            if (ProfileLine.startsWith("LastExecutionErrors="))		tempOp	-> SetLastExecutionErrors((ProfileLine.remove("LastExecutionErrors=")).toInt(&IntOk,10));
            if (ProfileLine.startsWith("KeepSnapshots="))			tempOp	-> SetKeepSnapshots((ProfileLine.remove("KeepSnapshots=")).toInt(&IntOk,10)); //see also "update the max.." few lines below
            if (ProfileLine.startsWith("SnapshotsListItem="))		tempOp	-> AddSnapshotsListItem(ProfileLine.remove("SnapshotsListItem="));
            
            if (ProfileLine.startsWith("TypeDirContents="))			tempOp	-> SetTypeDirContents(ProfileLine.remove("TypeDirContents=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("TypeDirName="))             tempOp	-> SetTypeDirName(ProfileLine.remove("TypeDirName=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("TypeSync="))				tempOp	-> SetTypeSync(ProfileLine.remove("TypeSync=").toInt(&IntOk,10));
    
            if (ProfileLine.startsWith("Source="))                  tempOp	-> SetSource(ProfileLine.remove("Source="));
            if (ProfileLine.startsWith("Destination="))				tempOp	-> SetDestination(ProfileLine.remove("Destination="));

            if (ProfileLine.startsWith("ExcludeTemp="))             tempOp	-> SetExcludeTemp(ProfileLine.remove("ExcludeTemp=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeFromFile="))			tempOp	-> SetExcludeFromFile(ProfileLine.remove("ExcludeFromFile=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeFile="))				tempOp	-> SetExcludeFile(ProfileLine.remove("ExcludeFile="));
            if (ProfileLine.startsWith("ExcludeCache="))			tempOp	-> SetExcludeCache(ProfileLine.remove("ExcludeCache=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeBackup="))			tempOp	-> SetExcludeBackup(ProfileLine.remove("ExcludeBackup=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeMount="))			tempOp	-> SetExcludeMount(ProfileLine.remove("ExcludeMount=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeLostFound="))		tempOp	-> SetExcludeLostFound(ProfileLine.remove("ExcludeLostFound=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeSystem="))			tempOp	-> SetExcludeSystem(ProfileLine.remove("ExcludeSystem=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeTrash="))			tempOp	-> SetExcludeTrash(ProfileLine.remove("ExcludeTrash=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeGVFS="))             tempOp  -> SetExcludeGVFS(ProfileLine.remove("ExcludeGVFS=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("ExcludeListItem="))			tempOp	-> AddExcludeListItem(ProfileLine.remove("ExcludeListItem="));
            tempOp	-> SetExclude();
        
            if (ProfileLine.startsWith("IncludeListItem="))			tempOp	-> AddIncludeListItem(ProfileLine.remove("IncludeListItem="));
            if (ProfileLine.startsWith("IncludeModeNormal="))		tempOp	-> SetIncludeModeNormal(ProfileLine.remove("IncludeModeNormal=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("IncludeFromFile="))			tempOp	-> SetIncludeFromFile(ProfileLine.remove("IncludeFromFile=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("IncludeFile="))				tempOp	-> SetIncludeFile(ProfileLine.remove("IncludeFile="));
            tempOp	-> SetInclude();

            if (ProfileLine.startsWith("Remote="))				    tempOp	-> SetRemote(ProfileLine.remove("Remote=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RemoteModule="))			tempOp	-> SetRemoteModule(ProfileLine.remove("RemoteModule=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RemoteDestination="))		tempOp	-> SetRemoteDestination(ProfileLine.remove("RemoteDestination=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RemoteSource="))			tempOp	-> SetRemoteSource(ProfileLine.remove("RemoteSource=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RemoteSSH="))			    tempOp	-> SetRemoteSSH(ProfileLine.remove("RemoteSSH=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RemoteHost="))			    tempOp	-> SetRemoteHost(ProfileLine.remove("RemoteHost="));
            if (ProfileLine.startsWith("RemoteUser="))			    tempOp	-> SetRemoteUser(ProfileLine.remove("RemoteUser="));
            if (ProfileLine.startsWith("RemotePassword="))		    tempOp	-> SetRemotePassword(ProfileLine.remove("RemotePassword="));
            if (ProfileLine.startsWith("RemoteSSHPassword="))		tempOp	-> SetRemoteSSHPassword(ProfileLine.remove("RemoteSSHPassword="));
            if (ProfileLine.startsWith("RemoteSSHPasswordStr="))    tempOp  -> SetRemoteSSHPasswordStr(ProfileLine.remove("RemoteSSHPasswordStr="));
            if (ProfileLine.startsWith("RemoteSSHOptions="))        tempOp  -> SetRemoteSSHOptions(ProfileLine.remove("RemoteSSHOptions="));
            if (ProfileLine.startsWith("RemoteSSHPort="))			tempOp	-> SetRemoteSSHPort((ProfileLine.remove("RemoteSSHPort=")).toInt(&IntOk,10));

            if (ProfileLine.startsWith("OptionsUpdate="))			tempOp	-> SetOptionsUpdate(ProfileLine.remove("OptionsUpdate=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsDelete="))			tempOp	-> SetOptionsDelete(ProfileLine.remove("OptionsDelete=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsRecurse="))			tempOp	-> SetOptionsRecurse(ProfileLine.remove("OptionsRecurse=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsOwnership="))		tempOp	-> SetOptionsOwnership(ProfileLine.remove("OptionsOwnership=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsSymlinks="))		    tempOp	-> SetOptionsSymlinks(ProfileLine.remove("OptionsSymlinks=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsPermissions=")) 		tempOp	-> SetOptionsPermissions(ProfileLine.remove("OptionsPermissions=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsDevices="))			tempOp	-> SetOptionsDevices(ProfileLine.remove("OptionsDevices=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsCVS="))			    tempOp	-> SetOptionsCVS(ProfileLine.remove("OptionsCVS=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsHardLinks="))		tempOp	-> SetOptionsHardLinks(ProfileLine.remove("OptionsHardLinks=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsFATntfs="))			tempOp	-> SetOptionsFATntfs(ProfileLine.remove("OptionsFATntfs=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsSuper="))            tempOp  -> SetOptionsSuper(ProfileLine.remove("OptionsSuper=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsNumericIDs="))       tempOp  -> SetOptionsNumericIDs(ProfileLine.remove("OptionsNumericIDs=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsListItem="))			tempOp	-> AddOptionsListItem(ProfileLine.remove("OptionsListItem="));
            
            if (ProfileLine.startsWith("OptionsRestorent="))        tempOp  -> SetOptionsRestorent(ProfileLine.remove("OptionsRestorent=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("OptionsVss="))              tempOp  -> SetOptionsVss(ProfileLine.remove("OptionsVss=").toInt(&IntOk,10));
            
            if (ProfileLine.startsWith("TempPath="))                tempOp  -> SetTempPath(ProfileLine.remove("TempPath="));
            if (ProfileLine.startsWith("LuckyBackupDir="))          tempOp  -> SetLuckyBackupDir(ProfileLine.remove("LuckyBackupDir="));
            if (ProfileLine.startsWith("VshadowDir="))              tempOp  -> SetVshadowDir(ProfileLine.remove("VshadowDir="));
            if (ProfileLine.startsWith("RsyncCommand="))            tempOp  -> SetRsyncCommand(ProfileLine.remove("RsyncCommand="));
            if (ProfileLine.startsWith("SshCommand="))              tempOp  -> SetSshCommand(ProfileLine.remove("SshCommand="));
            if (ProfileLine.startsWith("DosdevCommand="))           tempOp  -> SetDosdevCommand(ProfileLine.remove("DosdevCommand="));
            if (ProfileLine.startsWith("CygpathCommand="))          tempOp  -> SetCygpathCommand(ProfileLine.remove("CygpathCommand="));
            
            if (ProfileLine.startsWith("ExecuteBeforeListItem="))
            {
                tempOp	-> AddExecuteBeforeListItem(ProfileLine.remove("ExecuteBeforeListItem="));
                ProfileLine = in.readLine();    // inport the next line to check if it states the checked state !!
                if (ProfileLine.startsWith("ExecuteBeforeListItemState="))
                    tempOp  -> AddExecuteBeforeListItemState(ProfileLine.remove("ExecuteBeforeListItemState=").toInt(&IntOk,10));
                else    // if there wasn't such a line -> older version of profile
                {
                    tempOp  -> AddExecuteBeforeListItemState(true);
                    doNotReadNextLine = true;
                }
            }
            
            if (ProfileLine.startsWith("ExecuteAfterListItem="))
            {
                tempOp	-> AddExecuteAfterListItem(ProfileLine.remove("ExecuteAfterListItem="));
                ProfileLine = in.readLine();    // inport the next line to check if it states the checked state !!
                if (ProfileLine.startsWith("ExecuteAfterListItemState="))
                    tempOp  -> AddExecuteAfterListItemState(ProfileLine.remove("ExecuteAfterListItemState=").toInt(&IntOk,10));
                else    // if there wasn't such a line -> older version of profile
                {
                    tempOp  -> AddExecuteAfterListItemState(true);
                    doNotReadNextLine = true;
                }
            }
            
            if (ProfileLine.startsWith("ByPassWarning="))           tempOp	-> SetByPassWARNING(ProfileLine.remove("ByPassWarning=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("CloneWarning="))            tempOp	-> SetCloneWARNING(ProfileLine.remove("CloneWarning=").toInt(&IntOk,10));
            if (ProfileLine.startsWith("RepeatOnFail="))            tempOp  -> SetRepeatOnFail((ProfileLine.remove("RepeatOnFail=")).toInt(&IntOk,10));
            //import include checkbox state
            if (ProfileLine.startsWith("IncludeState="))            tempOp	-> SetIncluded((ProfileLine.remove("IncludeState=")).toInt(&IntOk,10));
            
            if (!doNotReadNextLine)
                ProfileLine = in.readLine();	// import the next line if it's not already imported
            if (ProfileLine.startsWith("[Task_end]"))	// all properties have been loaded
            {
                // first fix some icompatibilities with older versions that did not save the following properties:
                // 1. update the max "keep snapshots" number if it is < 1 (or not defined !!) or if the task is a sync task
                if ((tempOp -> GetTypeSync()) || (tempOp -> GetKeepSnapshots() < 1) )
                    tempOp -> SetKeepSnapshots(1);
                // 2. Add a snapshot if last executiontime exists but snapshot list is empty
                QString LastTime = ( tempOp -> GetLastExecutionTime() ).toString("yyyyMMddhhmmss");
                if ( !(LastTime == "") && (tempOp -> SnapshotsListIsEmpty()) )
                    tempOp -> AddSnapshotsListItem (LastTime);
                //3. Remove the first "\n" from the task description
                tempOp	-> SetDescription(tempOp->GetDescription().remove(0,1));                
                Operation[currentOperation] = tempOp;	// update the currentOperation
            }
        }
        currentOperation++;
    }

    profile.close();
    
    // If the email fields are set from a version < 0.48
    if (tempAppVersion < 0.48)
    {
        emailArguments = emailCommand;
        emailCommand = emailCommand.left(emailCommand.indexOf(" "));
        emailArguments.remove(emailCommand + " ");
        
        saveProfile(profileToLoad);     //save the profile with all new info
    }
    
    return 0;
}


// loadProfileQV - qvariant =============================================================================================================================
// loads an existing profile using qvariant then saves this profile as simple text
// This is kept for compatibility purposes for older versions that use the qvariant and not simple text
int loadProfileQV(QString profileToLoad)
{
    int count;
    profile.setFileName(profileToLoad);

    if (!profile.open(QIODevice::ReadOnly))		//if the profile cannot be opened
    {
        profile.close();
        return 1;
    }

    QDataStream in(&profile);
    in.setVersion(QDataStream::Qt_4_3);

    QVariant v;					//we will import everything as QVariant using this temp variable
    QString vString;				//temp variable to import "labels" of real data
    QString tempAppName = "asxeto";
    profileDescription = "";
    double tempAppVersion=0;
    in>>v;	
    if (v.toString()=="appName")
        in >> v;	
    tempAppName = v.toString();	//input the application name & version--------------------------
    in>>v;	
    if (v.toString()=="appVersion")
        in >> v;	
    tempAppVersion = v.toDouble();

    if ( (tempAppName != appName) || (tempAppVersion < validProfileVersion) )//check if the file is a valid luckybackup profile
    {
        profile.close();
        return 2;		//profile is not valid
    }

    in>>v;	
    if (v.toString()=="TotalOperations")
        in >> v;	
    TotalOperations = v.toInt();	//input the size of the operations list

    currentOperation = 0;	vString="";
    while (currentOperation < TotalOperations)
    {
        operation *tempOp = new operation;

        in>>v;	vString = v.toString();	in >> v;	//input a label in vString and real data in v
        while (vString != "operation end")
        {
            if (vString == "ProfileDescription")	profileDescription = v.toString();//input the profile description
                
            //cout << "\ntask: " < SetName(v.toString());
            if (vString == "TaskDescription")	tempOp	-> SetDescription(v.toString());
            if (vString == "Args")			tempOp	-> SetArgs(v.toStringList());

            if (vString == "ConnectRestore")	tempOp	-> SetConnectRestore(v.toString());

            if (vString == "LastExecutionTime")	tempOp	-> SetLastExecutionTime(v.toDateTime());
            if (vString == "LastExecutionErrors")	tempOp	-> SetLastExecutionErrors(v.toInt());
            if (vString == "KeepSnapshots")		tempOp	-> SetKeepSnapshots(v.toInt()); //see also "update the max.." few lines below
            if (vString == "SnapshotsListSize")
            {
                int snapshotsListSize = v.toInt();
                count = 0;
                while ( count < snapshotsListSize)
                {
                    in >> v;		// load the string SnapshotsListItem1,2....XX
                    in >> v; 		tempOp	-> AddSnapshotsListItem(v.toString());
                    count++;
                }
            }

            if (vString == "TypeDirContents")	tempOp	-> SetTypeDirContents(v.toBool());
            if (vString == "TypeDirName")		tempOp	-> SetTypeDirName(v.toBool());
            if (vString == "TypeSync")		tempOp	-> SetTypeSync(v.toBool());
    
            if (vString == "Source")		tempOp	-> SetSource(v.toString());
            if (vString == "Destination")		tempOp	-> SetDestination(v.toString());

            if (vString == "ExcludeTemp")		tempOp	-> SetExcludeTemp(v.toBool());
            if (vString == "ExcludeFromFile")	tempOp	-> SetExcludeFromFile(v.toBool());
            if (vString == "ExcludeFile")		tempOp	-> SetExcludeFile(v.toString());
            if (vString == "ExcludeCache")		tempOp	-> SetExcludeCache(v.toBool());
            if (vString == "ExcludeBackup")		tempOp	-> SetExcludeBackup(v.toBool());
            if (vString == "ExcludeMount")		tempOp	-> SetExcludeMount(v.toBool());
            if (vString == "ExcludeLostFound")	tempOp	-> SetExcludeLostFound(v.toBool());
            if (vString == "ExcludeSystem")		tempOp	-> SetExcludeSystem(v.toBool());
            if (vString == "ExcludeTrash")		tempOp	-> SetExcludeTrash(v.toBool());
            if (vString == "ExcludeListSize")
            {
                int excludeListSize = v.toInt();
                count = 0;
                while ( count < excludeListSize)
                {
                    in >> v; 		tempOp	-> AddExcludeListItem(v.toString());
                    count++;
                }
            }
            tempOp	-> SetExclude();

            if (vString == "IncludeListSize")
            {
                int IncludeListSize = v.toInt();
                count = 0;
                while ( count < IncludeListSize)
                {
                    in >> v; 		tempOp	-> AddIncludeListItem(v.toString());
                    count++;
                }
            }
            if (vString == "IncludeModeNormal")	tempOp	-> SetIncludeModeNormal(v.toBool());
            if (vString == "IncludeFromFile")	tempOp	-> SetIncludeFromFile(v.toBool());
            if (vString == "IncludeFile")		tempOp	-> SetIncludeFile(v.toString());
            tempOp	-> SetInclude();

            if (vString == "Remote")			tempOp	-> SetRemote(v.toBool());
            if (vString == "RemoteModule")		tempOp	-> SetRemoteModule(v.toBool());
            if (vString == "RemoteDestination")	tempOp	-> SetRemoteDestination(v.toBool());
            if (vString == "RemoteSource")		tempOp	-> SetRemoteSource(v.toBool());
            if (vString == "RemoteSSH")			tempOp	-> SetRemoteSSH(v.toBool());
            if (vString == "RemoteHost")		tempOp	-> SetRemoteHost(v.toString());
            if (vString == "RemoteUser")		tempOp	-> SetRemoteUser(v.toString());
            if (vString == "RemotePassword")	tempOp	-> SetRemotePassword(v.toString());
            if (vString == "RemoteSSHPassword")	tempOp	-> SetRemoteSSHPassword(v.toString());
            if (vString == "RemoteSSHPasswordStr")  tempOp  -> SetRemoteSSHPasswordStr(v.toString());
            if (vString == "RemoteSSHOptions")  tempOp  -> SetRemoteSSHOptions(v.toString());
            if (vString == "RemoteSSHPort")		tempOp	-> SetRemoteSSHPort(v.toInt());

            if (vString == "OptionsUpdate")		tempOp  -> SetOptionsUpdate(v.toBool());
            if (vString == "OptionsDelete")		tempOp  -> SetOptionsDelete(v.toBool());
            if (vString == "OptionsRecurse")	tempOp  -> SetOptionsRecurse(v.toBool());
            if (vString == "OptionsOwnership")	tempOp  -> SetOptionsOwnership(v.toBool());
            if (vString == "OptionsSymlinks")	tempOp  -> SetOptionsSymlinks(v.toBool());
            if (vString == "OptionsPermissions") tempOp -> SetOptionsPermissions(v.toBool());
            if (vString == "OptionsDevices")	tempOp  -> SetOptionsDevices(v.toBool());
            if (vString == "OptionsCVS")		tempOp  -> SetOptionsCVS(v.toBool());
            if (vString == "OptionsHardLinks")	tempOp  -> SetOptionsHardLinks(v.toBool());
            if (vString == "OptionsFATntfs")	tempOp  -> SetOptionsFATntfs(v.toBool());
            if (vString == "OptionsRestorent")  tempOp  -> SetOptionsRestorent(v.toBool());
            if (vString == "OptionsVss")        tempOp  -> SetOptionsVss(v.toBool());

            if (vString == "OptionsListSize")
            {
                int OptionsListSize = v.toInt();
                count = 0;
                while ( count < OptionsListSize)
                {
                    in >> v;			tempOp	-> AddOptionsListItem(v.toString());
                    count++;
                }
            }
            if (vString == "ExecuteBeforeListSize")
            {
                int ExecuteBeforeListSize = v.toInt();
                count = 0;
                while ( count < ExecuteBeforeListSize)
                {
                    in >> v;			tempOp	-> AddExecuteBeforeListItem(v.toString());
                    count++;
                }
            }
            if (vString == "ExecuteAfterListSize")
            {
                int ExecuteAfterListSize = v.toInt();
                count = 0;
                while ( count < ExecuteAfterListSize)
                {
                    in >> v;			tempOp	-> AddExecuteAfterListItem(v.toString());
                    count++;
                }
            }
            if (vString == "ByPassWarning")		tempOp	-> SetByPassWARNING(v.toBool());
            if (vString == "CloneWarning")		tempOp	-> SetCloneWARNING(v.toBool());
            //import include checkbox state
            if (vString == "IncludeState")		tempOp	-> SetIncluded(v.toBool());
            in>>v;	vString = v.toString();
            if (vString!="operation end")
                in >> v;
            else			// all properties have been loaded
            {
                // first fix some icompatibilities with older versions that did not save the following properties:
                // 1. update the max "keep snapshots" number if it is < 1 (or not defined !!) or if the task is a sync task
                if ((tempOp -> GetTypeSync()) || (tempOp -> GetKeepSnapshots() < 1) )
                    tempOp -> SetKeepSnapshots(1);
                // 2. Add a snapshot if last executiontime exists but snapshot list is empty
                QString LastTime = ( tempOp -> GetLastExecutionTime() ).toString("yyyyMMddhhmmss");
                if ( !(LastTime == "") && (tempOp -> SnapshotsListIsEmpty()) )
                    tempOp -> AddSnapshotsListItem (LastTime);

                Operation[currentOperation] = tempOp;	// update the currentOperation
            }
        }
        currentOperation++;
    }
    profile.close();
    
    //backup the original qvariant profile before replacing it with a plain text one
    //create directory ~/.luckyBackup including folders "logs", "profiles", "schedule", snaps if they do not exist for the current user
    QDir profilebackupdir(profileDir + "backups/");
    if (!profilebackupdir.exists())
        profilebackupdir.mkpath(profileDir + "backups/");
    profile.copy(profileDir + "backups/" + profileName + ".profile" );
    
    saveProfile(profileToLoad);		//save the profile to text format
    return 0;
}

// saveProfile =====================================================================================================================================
// saves an existing profile
bool saveProfile(QString profileToSave)
{
    int count;

    profile.setFileName(profileToSave);
    
    if (!profile.open(QIODevice::WriteOnly))	// if the profile cannot be saved (or fails to create)
    {
        profile.close();
        return false;
    }

    //write arrays to profile file
    QTextStream out(&profile);

    out << "***************************** WARNING *****************************\n";
    out << "Do NOT edit this file directly, unless you REALLY know what you are doing !!\n\n\n";
    
    out << "[profile_global]\n";
    out << "appName="                       << appName << "\n";             //output the application name 
    out << "appVersion="                    << appVersion << "\n";          //output the application version 
    out << "TotalTasks="                    << TotalOperations << "\n";     //output the size of the opeartions list
    
    if (profileDescription!="")
    {
        QStringList DescriptionLines = profileDescription.split("\n"); 
        for (count=0; count GetDescription() != "")
        {
            QStringList DescriptionLines = Operation[currentOperation] -> GetDescription().split("\n");
            for (count=0; count GetArgs();
        for (count = 0; count < TaskArgs.size(); ++count)
            out << "Args=" << TaskArgs.at(count) << "\n";

        out << "ConnectRestore="            << Operation[currentOperation] -> GetConnectRestore() << "\n";

        out << "KeepSnapshots="             << Operation[currentOperation] -> GetKeepSnapshots() << "\n";
        count = 0;
        while ( count < (Operation[currentOperation] -> GetSnapshotsListSize()) )
        {
            out << "SnapshotsListItem="     << Operation[currentOperation] -> GetSnapshotsListItem(count) << "\n";
            count++;
        }

        out << "Exclude="                   << Operation[currentOperation] -> GetExclude() << "\n";
        out << "ExcludeFromFile="           << Operation[currentOperation] -> GetExcludeFromFile() << "\n";
        out << "ExcludeFile="               << Operation[currentOperation] -> GetExcludeFile() << "\n";
        out << "ExcludeTemp="               << Operation[currentOperation] -> GetExcludeTemp() << "\n";
        out << "ExcludeCache="              << Operation[currentOperation] -> GetExcludeCache() << "\n";
        out << "ExcludeBackup="             << Operation[currentOperation] -> GetExcludeBackup() << "\n";
        out << "ExcludeMount="              << Operation[currentOperation] -> GetExcludeMount() << "\n";
        out << "ExcludeLostFound="          << Operation[currentOperation] -> GetExcludeLostFound() << "\n";
        out << "ExcludeSystem="             << Operation[currentOperation] -> GetExcludeSystem() << "\n";
        out << "ExcludeTrash="              << Operation[currentOperation] -> GetExcludeTrash() << "\n";
        out << "ExcludeGVFS="               << Operation[currentOperation] -> GetExcludeGVFS() << "\n";
        count = 0;
        while ( count < (Operation[currentOperation] -> GetExcludeListSize()) )
        {
            out << "ExcludeListItem="       << Operation[currentOperation] -> GetExcludeListItem(count) << "\n";
            count++;
        }

        out << "Include="                   << Operation[currentOperation] -> GetInclude() << "\n";
        out << "IncludeFromFile="           << Operation[currentOperation] -> GetIncludeFromFile() << "\n";
        out << "IncludeModeNormal="         << Operation[currentOperation] -> GetIncludeModeNormal() << "\n";
        out << "IncludeFile="               << Operation[currentOperation] -> GetIncludeFile() << "\n";
        count = 0;
        while ( count < (Operation[currentOperation] -> GetIncludeListSize()) )
        {
            out << "IncludeListItem="       << Operation[currentOperation] -> GetIncludeListItem(count) << "\n";
            count++;
        }

        out << "Remote="                    << Operation[currentOperation] -> GetRemote() << "\n";
        out << "RemoteModule="              << Operation[currentOperation] -> GetRemoteModule() << "\n";
        out << "RemoteDestination="         << Operation[currentOperation] -> GetRemoteDestination() << "\n";
        out << "RemoteSource="              << Operation[currentOperation] -> GetRemoteSource() << "\n";
        out << "RemoteSSH="                 << Operation[currentOperation] -> GetRemoteSSH() << "\n";
        out << "RemoteHost="                << Operation[currentOperation] -> GetRemoteHost() << "\n";
        out << "RemoteUser="                << Operation[currentOperation] -> GetRemoteUser() << "\n";
        out << "RemotePassword="            << Operation[currentOperation] -> GetRemotePassword() << "\n";
        out << "RemoteSSHPassword="         << Operation[currentOperation] -> GetRemoteSSHPassword() << "\n";
        out << "RemoteSSHPasswordStr="      << Operation[currentOperation] -> GetRemoteSSHPasswordStr() << "\n";
        out << "RemoteSSHOptions="          << Operation[currentOperation] -> GetRemoteSSHOptions() << "\n";            
        out << "RemoteSSHPort="             << Operation[currentOperation] -> GetRemoteSSHPort() << "\n";

        out << "OptionsUpdate="             << Operation[currentOperation] -> GetOptionsUpdate() << "\n";
        out << "OptionsDelete="             << Operation[currentOperation] -> GetOptionsDelete() << "\n";
        out << "OptionsRecurse="            << Operation[currentOperation] -> GetOptionsRecurse() << "\n";
        out << "OptionsOwnership="          << Operation[currentOperation] -> GetOptionsOwnership() << "\n";
        out << "OptionsSymlinks="           << Operation[currentOperation] -> GetOptionsSymlinks() << "\n";
        out << "OptionsPermissions="        << Operation[currentOperation] -> GetOptionsPermissions() << "\n";
        out << "OptionsDevices="            << Operation[currentOperation] -> GetOptionsDevices() << "\n";
        out << "OptionsCVS="                << Operation[currentOperation] -> GetOptionsCVS() << "\n";
        out << "OptionsHardLinks="          << Operation[currentOperation] -> GetOptionsHardLinks() << "\n";
        out << "OptionsFATntfs="            << Operation[currentOperation] -> GetOptionsFATntfs() << "\n";
        out << "OptionsSuper="              << Operation[currentOperation] -> GetOptionsSuper() << "\n";
        out << "OptionsNumericIDs="         << Operation[currentOperation] -> GetOptionsNumericIDs() << "\n";

        out << "OptionsRestorent="          << Operation[currentOperation] -> GetOptionsRestorent() << "\n";
        out << "OptionsVss="                << Operation[currentOperation] -> GetOptionsVss() << "\n";
        
        out << "LuckyBackupDir="            << Operation[currentOperation] -> GetLuckyBackupDir() << "\n";
        out << "VshadowDir="                << Operation[currentOperation] -> GetVshadowDir() << "\n";
        out << "RsyncCommand="              << Operation[currentOperation] -> GetRsyncCommand() << "\n";
        out << "SshCommand="                << Operation[currentOperation] -> GetSshCommand() << "\n";
        out << "DosdevCommand="             << Operation[currentOperation] -> GetDosdevCommand() << "\n";
        out << "CygpathCommand="            << Operation[currentOperation] -> GetCygpathCommand() << "\n";
        out << "TempPath="                  << Operation[currentOperation] -> GetTempPath() << "\n";
        
        count = 0;
        while ( count < (Operation[currentOperation] -> GetOptionsListSize()) )
        {
            out << "OptionsListItem="       << Operation[currentOperation] -> GetOptionsListItem(count) << "\n";
            count++;
        }
        count = 0;
        while ( count < (Operation[currentOperation] -> GetExecuteBeforeListSize()) )
        {
            out << "ExecuteBeforeListItem=" << Operation[currentOperation] -> GetExecuteBeforeListItem(count) << "\n";
            out << "ExecuteBeforeListItemState=" << Operation[currentOperation] -> GetExecuteBeforeListItemState(count) << "\n";
            count++;
        }
        count = 0;
        while ( count < (Operation[currentOperation] -> GetExecuteAfterListSize()) )
        {
            out << "ExecuteAfterListItem="  << Operation[currentOperation] -> GetExecuteAfterListItem(count) << "\n";
            out << "ExecuteAfterListItemState=" << Operation[currentOperation] -> GetExecuteAfterListItemState(count) << "\n";
            count++;
        }
        out << "ByPassWarning="             << Operation[currentOperation] -> GetByPassWARNING() << "\n";
        out << "CloneWarning="              << Operation[currentOperation] -> GetCloneWARNING() << "\n";
        out << "RepeatOnFail="              << Operation[currentOperation] -> GetRepeatOnFail() << "\n";
        //export include state
        out << "IncludeState="              << Operation[currentOperation] -> GetIncluded() << "\n";

        out << "[Task_end] - "              << currentOperation <<  "\n\n";
        currentOperation++;
    }
    out << "\n[profile end]" << "\n";

    profile.close();
    return true;
}


// exportFullProfile ====================================================================================================================================
//function to export the .profile file + logs + snaps to a location
bool exportFullProfile(QString ExportPath, QString exportType)
{
    //we will export everything by using an rsync command
    QProcess *exportProcess;    exportProcess  = new QProcess;      QStringList exportArgs;
    exportArgs  << "-t" << "-r" << "--delete-after" << "--delete-excluded";      // standard rsync args
    
    if (exportType == "ExportOnlyTask")           // Only include the .profile file and logs and snaps for a specific task
        exportArgs << "--include=" + profileName + ".profile" << "--include=/*/" + profileName + "-" + Operation[currentOperation] -> GetName() +"-*";
    else                                    // Include the .profile file and all logs & snaps related to that
        exportArgs << "--include=/*/" + profileName +"*";
         
    exportArgs << "--include=*/" << "--exclude=*" << "--prune-empty-dirs";  // "only include" rsync args
           
    //also add all remote arguments exactly as used at normal backup
    if (exportType == "ExportOnlyTask")
    {
        if ((Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()))
        {
            exportArgs << "--protect-args";
            //if ( Operation[currentOperation] -> GetRemotePassword() != "")
            if ( (Operation[currentOperation]-> GetRemoteModule()) && (Operation[currentOperation] -> GetRemotePassword() != "") )
                exportArgs.append("--password-file=" + ( Operation[currentOperation] -> GetRemotePassword()) );
            if ( Operation[currentOperation] -> GetRemoteSSH())
            {
                QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\"  -o \"PasswordAuthentication no\" ";
                if (WINrunning)
                {
                    if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "")
                        if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0)
                            exportArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" +  Operation[currentOperation] -> GetRemoteSSHPassword() +"\" -p " +
                                        countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) );
                        else
                            exportArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -i \"" +  Operation[currentOperation] -> GetRemoteSSHPassword()+"\"");
                    else
                        if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0)
                            exportArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) );
                        else
                            exportArgs.append("-e \""+Operation[currentOperation] -> GetSshCommand()+"\" "+sshOptions+"");
                }
                else
                {
                    if ( Operation[currentOperation] -> GetRemoteSSHPassword() != "")
                        if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0)
                            exportArgs.append("-e "+sshCommandPath+" -i " +  Operation[currentOperation] -> GetRemoteSSHPassword() +" -p " +
                                        countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) );
                        else
                            exportArgs.append("-e "+sshCommandPath+" -i " +  Operation[currentOperation] -> GetRemoteSSHPassword());
                    else
                        if ( Operation[currentOperation] -> GetRemoteSSHPort() != 0)
                            exportArgs.append("-e "+sshCommandPath+" -p " + countStr.setNum( Operation[currentOperation] -> GetRemoteSSHPort()) );
                        else
                            exportArgs.append("-e "+sshCommandPath);
                }
            }
        }
    }
    
    exportArgs.append(luckyBackupDir);      // The source is ~/.luckyBackup/
    
    //cycnet debemos comprobar que es windows y el destino es remoto
    if (WINrunning && (Operation[currentOperation] -> GetRemoteDestination()) && (Operation[currentOperation] -> GetRemote()))
        ExportPath.replace(SLASH,XnixSLASH);
    
    exportArgs.append(ExportPath);          // The destination is given by the user
    
    //cycnet code. Windows use
    if (WINrunning)
    {
        //bool createWinRsyncCommand(tempDirPath,QFile command1,QFile command2,bool vss,QString rsyncArgs,QString source,QString dest);
        QString command2=createWinRsyncCommand(Operation[currentOperation] -> GetTempPath(),false,exportArgs,false);
        if (command2=="")
            cout << "\nfailed to create bat file in rmProccess";
        else
            exportProcess -> start (command2);
    }
    else
      exportProcess -> start (rsyncCommandPath,exportArgs);
    
    exportProcess -> waitForFinished();

    if (!(exportProcess -> exitCode() == 0))
        return false;

    return true;
}

// importFullProfile ====================================================================================================================================
//function to import the .profile file + logs + snaps from a location to ~/.luckyBackup with the profilename given
int importFullProfile(QString ImportPath,QString newProfileName)
{
    int returnThis = 0;
    QString PathProfileName = ImportPath;
    PathProfileName = PathProfileName.right(PathProfileName.size() - PathProfileName.lastIndexOf(SLASH) - 1);
    if (PathProfileName.endsWith(".profile"))
        PathProfileName.chop(8);
    
    // copy everything from the importFullProfile to ~/.luckyBackupDir
    QDir dirToCopy;     QStringList dirToCopyContents;  QFile fileToCopy;   QList::iterator count;
    
    // import all .profile files from ImportPath/profiles
    dirToCopy.setPath(ImportPath + SLASH + "profiles");
    dirToCopyContents = dirToCopy.entryList(QStringList("*.profile"),QDir::Files, QDir::NoSort);
    
    if (dirToCopyContents.size() == 0)
        return 1;
    for (count = dirToCopyContents.begin(); count != dirToCopyContents.end(); ++count)
    {
        QString oldFileNamePart = *count;
        oldFileNamePart = oldFileNamePart.right(oldFileNamePart.size() - oldFileNamePart.lastIndexOf(SLASH) - 1);
        oldFileNamePart.chop(8);
        oldFileNamePart.remove(0,PathProfileName.size());
        
        fileToCopy.setFileName(ImportPath + SLASH + "profiles" +SLASH +*count);
        if ((!fileToCopy.copy(profileDir + newProfileName + oldFileNamePart + ".profile")) && (returnThis < 1))
            return 1;
    }

    // import all .log files from ImportPath/logs
    dirToCopy.setPath(ImportPath + SLASH + "logs");
    dirToCopyContents = dirToCopy.entryList(QStringList("*.log"),QDir::Files, QDir::NoSort);

    for (count = dirToCopyContents.begin(); count != dirToCopyContents.end(); ++count)
    {
        QString oldFileNamePart = *count;
        oldFileNamePart = oldFileNamePart.right(oldFileNamePart.size() - oldFileNamePart.lastIndexOf(SLASH) - 1);
        oldFileNamePart.chop(4);
        oldFileNamePart.remove(0,PathProfileName.size());
        
        // TESTING
        //QMessageBox::information(0, "LB","source= " +ImportPath + SLASH + "logs" +SLASH + *count + "

dest: " + logDir + newProfileName + oldFileNamePart + ".log

oldFileNamePar= "+oldFileNamePart); fileToCopy.setFileName(ImportPath + SLASH + "logs" +SLASH +*count); if ((!fileToCopy.copy(logDir + newProfileName + oldFileNamePart + ".log")) && (returnThis < 10)) returnThis=returnThis+10; } // import all changes.log files from ImportPath/snaps dirToCopy.setPath(ImportPath + SLASH + "snaps"); dirToCopyContents = dirToCopy.entryList(QStringList("*.changes.log"),QDir::Files, QDir::NoSort); for (count = dirToCopyContents.begin(); count != dirToCopyContents.end(); ++count) { QString oldFileNamePart = *count; oldFileNamePart = oldFileNamePart.right(oldFileNamePart.size() - oldFileNamePart.lastIndexOf(SLASH) - 1); oldFileNamePart.chop(12); oldFileNamePart.remove(0,PathProfileName.size()); fileToCopy.setFileName(ImportPath + SLASH + "snaps" +SLASH +*count); if ((!fileToCopy.copy(snapChangesDir + newProfileName + oldFileNamePart + ".changes.log")) && (returnThis < 20)) returnThis=returnThis+20; } return returnThis; } // checkTaskList ===================================================================================================================================== // Checks if the Task list is ok to proceed bool checkTaskList() { int count; QString tempConnect=""; message=""; messageCLI=""; ask = false; NothingIncluded=true; if (TotalOperations==0) //check if the operations list is empty ------------------------------ { message.append("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
" + QObject::tr("The task list is empty")+" !!
..."+ QObject::tr("nothing to start")); messageCLI.append("\nThe task list is empty !!\n" "nothing to start !!\n\n"); ask = true; return false; } //first check if 2 connected operations have been selected for execution-------------------------------------------------------------- //set NothingInluded to false if 1 or more operation is included bool askTemp = false; QString dirNames=""; QString dirNamesCLI=""; currentOperation=0; while (currentOperation < TotalOperations) { if (Operation[currentOperation] -> GetIncluded()) //if the operations is "included" { NothingIncluded = false; tempConnect = Operation[currentOperation] -> GetConnectRestore(); if (tempConnect != "") //if it is connected to another operation { count = currentOperation+1; while (count < TotalOperations) { if ( (Operation[count]->GetName() == tempConnect) //if 2 connected operations are both included && (Operation[count] -> GetIncluded()) ) { dirNames.append("* " + Operation[currentOperation]->GetName() + "
* " + tempConnect + "
"); dirNamesCLI.append(Operation[currentOperation]->GetName() + "\n" + tempConnect + "\n\n"); askTemp = true; ask=true; break; } count++; } } } currentOperation++; } if (askTemp) { message.append("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
" + QObject::tr("You have included both of the following connected tasks:")+"
" + dirNames + "
" + QObject::tr("this is not allowed for obvious reasons")+" !!
"+ QObject::tr("Please uncheck appropriate include boxes before proceeding")+"...
"); messageCLI.append("\nYou have included both of the following connected tasks:\n" + QString(dirNamesCLI.toUtf8()) + "this is not allowed for obvious reasons !!\n" "Please uncheck appropriate include boxes before proceeding...\n\n"); } if ( (NothingIncluded) && (TotalOperations!=0) ) //if no checkboxes are selected show this message --------------------- { message.append("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"+ QObject::tr("You have not included any tasks")+" !!
" "..." + QObject::tr("nothing to start")); messageCLI.append("\nYou have not included any tasks !!\n\n" "nothing to start !!\n\n"); ask = true; return false; } //check if 2 or more identical destination directories are decleared & "Backup dir contents" is checked ------------------------------- currentOperation=0; askTemp = false; dirNames=""; dirNamesCLI=""; QString dest1="", dest2=""; //the following loop compares an included operation (currentoperation) with all the other included //to check if they share the same destination while (currentOperation < TotalOperations) { dest1 = Operation[currentOperation] -> GetDestination(); if (dest1.endsWith(SLASH)) dest1.chop(1); if (WINrunning && dest1.endsWith(XnixSLASH)) dest1.chop(1); if (Operation[currentOperation] -> GetIncluded()) { count = 0; while (count < TotalOperations) { if (count == currentOperation) count++; else { dest2 = Operation[count] -> GetDestination(); if (dest2.endsWith(SLASH)) dest2.chop(1); if (WINrunning && dest2.endsWith(XnixSLASH)) dest2.chop(1); //if this operation's destination is identical to another one's which is included and is of type 'Backup dir contents' if ( (Operation[count] -> GetIncluded()) && ( dest1 == dest2 ) && ( ((Operation[count] -> GetTypeDirContents()) && (!Operation[count] -> GetInclude())) || ((Operation[currentOperation] -> GetTypeDirContents()) && (!Operation[currentOperation] -> GetInclude()))) ) { dirNames.append("* " + Operation[currentOperation]->GetName() + "
"); dirNamesCLI.append(Operation[currentOperation]->GetName() + "\n"); askTemp = true; ask=true; break; } count++; } } } currentOperation++; } if (askTemp) { message.append("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
" + QObject::tr("The following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directory")+" :
" + dirNames + "" + QObject::tr("this will lead to one task canceling the other")+" !!
"+ QObject::tr("Please uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' " " or use 'Backup dir contents' together with the 'Only include' option, before proceeding")+"..."); messageCLI.append("\nThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directory :\n" + QString(dirNamesCLI.toUtf8()) + "\nthis will lead to one task canceling the other !!\n" "Please uncheck appropriate include boxes or change all task types to other than 'Backup dir contents'\n " "or use 'Backup dir contents' together with the 'Only include' option, before proceeding...\n\n"); } return true; } // checkDeclaredDirs ================================================================================================================================= //Check if the declared data are ok by calling checkBackupDirs or checkSyncDirs //If guiExec is true this is called from the gui, otherwise from console bool checkDeclaredDirs(bool guiExec) { ask=false; NothingToDo = true; QString source, dest; currentOperation = 0; CheckedData = ""; CheckedDataCLI = ""; while (currentOperation < TotalOperations) { Operation[currentOperation] -> SetOK(false); Operation[currentOperation] -> SetWARNING(false); Operation[currentOperation] -> SetCRITICAL(false); Operation[currentOperation] -> SetSourcePerms(false); Operation[currentOperation] -> SetDestPerms(false); Operation[currentOperation] -> SetDestMounted(false); Operation[currentOperation] -> SetSourceMounted(false); if (Operation[currentOperation] -> GetIncluded()) //if the operations is "included" { //first set variables source & dest as well as itsPerform which will finaly decide if the task will be preformed source = Operation[currentOperation] -> GetSource(); dest = Operation[currentOperation] -> GetDestination(); if (!guiExec) //this is used for compatibility issues with console { source=QString(source.toUtf8()); dest=QString(dest.toUtf8()); } Operation[currentOperation] -> SetIncluded(true); Operation[currentOperation] -> SetPerform(true); //this will change at the next commands if ( (Operation[currentOperation] -> GetTypeDirContents()) || (Operation[currentOperation] -> GetTypeDirName()) ) checkBackupDirs(source,dest); //if the operation is of type "backup dir ...' if (Operation[currentOperation] -> GetTypeSync()) //if the operation is of type "sync dirs' checkSyncDirs(source,dest); } else { Operation[currentOperation] -> SetIncluded(false); Operation[currentOperation] -> SetPerform(false); } currentOperation++; } return true; } //=================================================================================================================================================== //Check if the directories to be synced are empty or don't exist void checkSyncDirs(QString source, QString dest) { Operation[currentOperation] -> SetOK(false); Operation[currentOperation] -> SetWARNING(false); Operation[currentOperation] -> SetCRITICAL(false); Operation[currentOperation] -> SetSourcePerms(false); Operation[currentOperation] -> SetDestPerms(false); Operation[currentOperation] -> SetDestMounted(false); Operation[currentOperation] -> SetSourceMounted(false); bool remoteSource = false; bool remoteDest = false; if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteSource()) ) { if (Operation[currentOperation] -> GetRemoteModule()) source.prepend(":"); source.prepend((Operation[currentOperation] -> GetRemoteHost())+":"); if (Operation[currentOperation] -> GetRemoteUser()!="") source.prepend((Operation[currentOperation] -> GetRemoteUser())+"@"); remoteSource = true; } if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteDestination()) ) { if (Operation[currentOperation] -> GetRemoteModule()) dest.prepend(":"); dest.prepend((Operation[currentOperation] -> GetRemoteHost())+":"); if (Operation[currentOperation] -> GetRemoteUser()!="") dest.prepend((Operation[currentOperation] -> GetRemoteUser())+"@"); remoteDest = true; } QFileInfo dirAFile(source); QFileInfo dirBFile(dest); QString currentOpNameCLI = QString((Operation[currentOperation] -> GetName())).toUtf8(); //QString taskDescriptionCLI = QString((Operation[currentOperation] -> GetDescription())).toUtf8(); QString taskDescription = Operation[currentOperation] -> GetDescription(); taskDescription.replace("\n","
"); //If user does not have sufficient permissions for the dirA or dirB, skip it if ( (dirAFile.exists()) && ((!dirAFile.isReadable()) || (!dirAFile.isExecutable())) && (!remoteSource) ) { setTextMessages(source,dest,remoteSource,remoteDest, "warning","sync","source-perms"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetSourcePerms(true); ask=true; //ask the user if he/she wants to continue return; } if ( (dirBFile.exists()) && ((!dirBFile.isReadable()) || (!dirBFile.isExecutable())) && (!remoteDest) ) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","sync","dest-perms"); ask=true; //ask the user if he/she wants to continue if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetDestPerms(true); return; } QDir dirA (source); QDir dirB (dest); // WARNING The following 2 commands cause a "std::bad_alloc" crash when cloudfuse is used QStringList dirAList = dirA.entryList(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); QStringList dirBList = dirB.entryList(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); bool dirAIsEmpty, dirBIsEmpty; if (dirAList.size() == 0) dirAIsEmpty = true; else dirAIsEmpty = false; if (dirBList.size() == 0) dirBIsEmpty = true; else dirBIsEmpty = false; // Check if sync dirs A & B are under /media or /mnt and belong to a mountpoint ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Operation[currentOperation] -> SetDestMounted(checkMountPoint(dest)); Operation[currentOperation] -> SetSourceMounted(checkMountPoint(source)); //Do directories exist and are not emty ??(skip remote) -> [ Ok ] if ( ( ((dirA.exists()) && !(dirAIsEmpty)) || (remoteSource) ) && (((dirB.exists()) && !(dirBIsEmpty)) ||(remoteDest) ) ) { setTextMessages(source,dest,remoteSource,remoteDest,"okay","sync","okay"); NothingToDo = false; Operation[currentOperation] -> SetOK(true); } //is one or both sync dirs non-existent ?? -> [ WARNING ] else if ( !(dirA.exists()) || !(dirB.exists()) ) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","sync","sync-not-exist"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetWARNING(true); ask=true; } //Is one or both of the directories empty ?? else { // if it is NOT mounted under /media or /mnt -> [ WARNING ] if ( (!Operation[currentOperation] -> GetDestMounted()) || (!Operation[currentOperation] -> GetSourceMounted()) ) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","sync","sync-not-mounted"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetWARNING(true); } else // -> [ CRITICAL ] { setTextMessages(source,dest,remoteSource,remoteDest,"critical","sync","sync-empty"); Operation[currentOperation] -> SetCRITICAL(true); if (SkipCritical) // if a --skip-critical is given as argument Operation[currentOperation] -> SetPerform(false); //don't perform this operation else NothingToDo = false; } ask=true; //ask the user if he/she wants to continue } } //=================================================================================================================================================== //Check if the source and destination backup directories are empty or don't exist void checkBackupDirs(QString source, QString dest) { Operation[currentOperation] -> SetOK(false); Operation[currentOperation] -> SetWARNING(false); Operation[currentOperation] -> SetCRITICAL(false); Operation[currentOperation] -> SetSourcePerms(false); Operation[currentOperation] -> SetDestPerms(false); Operation[currentOperation] -> SetDestMounted(false); Operation[currentOperation] -> SetSourceMounted(false); bool remoteSource = false; bool remoteDest = false; //first check if a remote source or dest is used so that to skip checks if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteSource()) ) { if (Operation[currentOperation] -> GetRemoteModule()) source.prepend(":"); source.prepend((Operation[currentOperation] -> GetRemoteHost())+":"); if (Operation[currentOperation] -> GetRemoteUser()!="") source.prepend((Operation[currentOperation] -> GetRemoteUser())+"@"); remoteSource = true; } if ( (Operation[currentOperation] -> GetRemote()) && (Operation[currentOperation] -> GetRemoteDestination()) ) { if (Operation[currentOperation] -> GetRemoteModule()) dest.prepend(":"); dest.prepend((Operation[currentOperation] -> GetRemoteHost())+":"); if (Operation[currentOperation] -> GetRemoteUser()!="") dest.prepend((Operation[currentOperation] -> GetRemoteUser())+"@"); remoteDest = true; } //If user does not have sufficient permissions for the source or dest, skip it QFileInfo destFile(dest); QFileInfo sourceFile(source); if ( (sourceFile.exists()) && ((!sourceFile.isReadable()) || (!sourceFile.isExecutable())) && (!remoteSource) ) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","backup","source-perms"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; ask=true; //ask the user if he/she wants to continue Operation[currentOperation] -> SetSourcePerms(true); return; } if ( (destFile.exists()) && ((!destFile.isReadable()) || (!destFile.isExecutable())) && (!remoteDest) ) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","backup","dest-perms"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; ask=true; //ask the user if he/she wants to continue Operation[currentOperation] -> SetDestPerms(true); return; } QDir sourceDir (source); QDir destDir (dest); // WARNING The following 2 commands cause a "std::bad_alloc" crash when cloudfuse is used QStringList sourceList = sourceDir.entryList(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); QStringList destList = destDir.entryList(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); bool SourceIsEmpty, DestIsEmpty; if (sourceList.size() == 0) SourceIsEmpty = true; else SourceIsEmpty = false; if (destList.size() == 0) DestIsEmpty = true; else DestIsEmpty = false; // Check if source & dest are under /media or /mnt and belong to a mountpoint ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Operation[currentOperation] -> SetDestMounted(checkMountPoint(dest)); Operation[currentOperation] -> SetSourceMounted(checkMountPoint(source)); //Does the source directory exist and it is not empty OR we're using remote source?? if ( ((sourceDir.exists()) && !(SourceIsEmpty)) || (remoteSource) ) { //Does the destination directory exist and it is not empty ?? -> [ Ok ] if ( ((destDir.exists()) && !(DestIsEmpty)) || (remoteDest) ) { setTextMessages(source,dest,remoteSource,remoteDest,"okay","backup","okay"); Operation[currentOperation] -> SetOK(true); NothingToDo = false; } else //The destination directory does not exist or it is empty { // A partition is NOT mounted under /media or /mnt -> [WARNING ] if (!Operation[currentOperation] -> GetDestMounted()) { setTextMessages(source,dest,remoteSource,remoteDest,"warning","backup","dest-not-mounted"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetWARNING(true); ask=true; //ask the user if he/she wants to continue } else // partition is mounted -> [ CRITICAL ] { setTextMessages(source,dest,remoteSource,remoteDest,"critical","backup","dest-not-exist"); ask=true; //ask the user if he/she wants to continue Operation[currentOperation] -> SetCRITICAL(true); if (SkipCritical) // if a --skip-critical is given as argument Operation[currentOperation] -> SetPerform(false); //don't perform this operation else NothingToDo = false; } } } else //The source directory does not exist or it is empty -> [WARNING ] { setTextMessages(source,dest,remoteSource,remoteDest,"warning","backup","source-not-exist"); if (!Operation[currentOperation] -> GetByPassWARNING()) Operation[currentOperation] -> SetPerform(false); //don't perform this operation if the "bypass WARNING" OPTION is disabled else NothingToDo = false; Operation[currentOperation] -> SetWARNING(true); ask=true; //ask the user if he/she wants to continue } } // /AppendArguments ======================================================================================================= //function to append "arguments" object at a given operation according to the fields of the modify window QStringList AppendArguments(operation *operationToAppend) { QStringList arguments; int count; int operationToAppendCurrentSnaps = operationToAppend -> GetSnapshotsListSize(); // this is the current number of snapshots int operationToAppendMaxSnaps = operationToAppend -> GetKeepSnapshots(); // this is the max number of snapshots to keep arguments << "-h" << "--progress" << "--stats"; //These are the standard arguments used by rsync //add rsync arguments -------------------------------------------------------------------------------------------------- if (operationToAppend -> GetOptionsRecurse()) arguments.append("-r"); if (operationToAppend -> GetOptionsFATntfs()) { arguments.append("-t"); arguments.append("--modify-window=1"); } else { if (operationToAppend -> GetOptionsOwnership()) arguments.append("-tgo"); if ((!WINrunning) && (operationToAppend -> GetOptionsPermissions())) arguments.append("-p"); if ((WINrunning) && (operationToAppend -> GetOptionsPermissions())) // Windows ONLY: Do not use -p but --backup-nt-streams and --source-filter-tmp= { arguments.append("--source-filter-tmp="+operationToAppend->GetTempPath()); arguments.append("--backup-nt-streams"); } } if (WINrunning) { /* disable vss until... if (operationToAppend -> GetOptionsVss()) arguments.append("--vss"); // this option is only visbile at windows */ if (operationToAppend -> GetOptionsRestorent()) arguments.append("--restore-nt-streams"); // this option is only visbile at windows } if (operationToAppend -> GetOptionsSymlinks()) arguments.append("-l"); if (operationToAppend -> GetOptionsDevices()) arguments.append("-D"); if (operationToAppend -> GetOptionsCVS()) arguments.append("-C"); if (operationToAppend -> GetOptionsHardLinks()) arguments.append("-H"); if (operationToAppend -> GetOptionsSuper()) arguments.append("--super"); if (operationToAppend -> GetOptionsNumericIDs()) arguments.append("--numeric-ids"); if (operationToAppend -> GetOptionsUpdate()) arguments.append("--update"); if (operationToAppend -> GetOptionsDelete()) arguments.append("--delete-after"); count =0; while ( count < (operationToAppend -> GetOptionsListSize()) ) { arguments.append(operationToAppend -> GetOptionsListItem(count)); count++; } bool disableExclude=false; //add included items------------------------------------------------------------------------------ if (operationToAppend -> GetInclude()) { // from file if ( (operationToAppend -> GetIncludeFromFile()) && !(operationToAppend -> GetIncludeFile()=="") ) arguments.append("--include-from=" + (operationToAppend -> GetIncludeFile()) ); // from "only include" tab count =0; while ( count < (operationToAppend -> GetIncludeListSize()) ) { arguments.append("--include=" + (operationToAppend -> GetIncludeListItem(count)) ); count++; } // if "Only Include" mode is used add the following if (!operationToAppend -> GetIncludeModeNormal()) { arguments.append("--include=*/"); arguments.append("--exclude=*"); arguments.append("--prune-empty-dirs"); disableExclude=true; } } //add excluded items (unless "only include" is used and the include list is not empty)-------------------------------------------------------------- if ( (operationToAppend -> GetExclude()) && (!disableExclude) ) { if (operationToAppend -> GetOptionsDelete()) arguments.append("--delete-excluded"); if ( (operationToAppend -> GetExcludeFromFile()) && !(operationToAppend -> GetExcludeFile()=="") ) arguments.append("--exclude-from=" + (operationToAppend -> GetExcludeFile()) ); if (operationToAppend -> GetExcludeTemp()) arguments.append("--exclude=**/*tmp*/"); if (operationToAppend -> GetExcludeCache()){ arguments.append("--exclude=**/*cache*/"); arguments.append("--exclude=**/*Cache*/");} if (operationToAppend -> GetExcludeBackup()) arguments.append("--exclude=**~"); if (operationToAppend -> GetExcludeMount()){ arguments.append("--exclude=/mnt/*/**"); arguments.append("--exclude=/media/*/**");} if (operationToAppend -> GetExcludeLostFound()) arguments.append("--exclude=**/lost+found*/"); if (operationToAppend -> GetExcludeSystem()){ arguments.append("--exclude=/var/run/**"); arguments.append("--exclude=/run/**"); arguments.append("--exclude=/proc/**"); arguments.append("--exclude=/dev/**"); arguments.append("--exclude=/sys/**");} if (operationToAppend -> GetExcludeTrash()){ arguments.append("--exclude=**/*Trash*/"); arguments.append("--exclude=**/*trash*/");} if (operationToAppend -> GetExcludeGVFS()) { arguments.append("--exclude=**/.gvfs/");} //also read the custom exclude list count =0; while ( count < (operationToAppend -> GetExcludeListSize()) ) { arguments.append("--exclude=" + (operationToAppend -> GetExcludeListItem(count)) ); count++; } } //set temp strings sourceString & destString accordingly if groupbox "remote" is checked-------------------------------------------- //also add -e ssh if "ssh" is checked & --password-file=FILE // WARNING: if you change something here, also change it in executenow.cpp when removing older snapshopt data QString sourceString, destString, remoteHost = ""; //temp strings if (operationToAppend -> GetRemote()) { //append --protect-args because trouble is caused with spaces arguments.append("--protect-args"); if (operationToAppend -> GetRemoteUser() != "") //append remote user@ if applicable to temp string remoteHost.append(operationToAppend -> GetRemoteUser() + "@"); if (operationToAppend -> GetRemoteModule()) //append remote host: (or :: if it's a module) to temp string { remoteHost.append(operationToAppend -> GetRemoteHost() + "::"); //add --password-file=FILE if password file lineEdit is not empty if (operationToAppend -> GetRemotePassword() != "") arguments.append("--password-file=" + (operationToAppend -> GetRemotePassword()) ); } else remoteHost.append(operationToAppend -> GetRemoteHost() + ":"); if (operationToAppend -> GetRemoteDestination()) //set temp source & destination strings { remoteHost.append(operationToAppend -> GetDestination()); destString = remoteHost; sourceString = operationToAppend -> GetSource(); if (WINrunning) // Bruce patch condition for winpaths~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ { // Commented after Juan's patch //destString = fixWinPathForRsync(destString, true); //fix destination (which is remote) //sourceString = fixWinPathForRsync(sourceString, false); //fix source (which is local) } } else { remoteHost.append(operationToAppend -> GetSource()); sourceString = remoteHost; destString = operationToAppend -> GetDestination(); if (WINrunning) // Bruce patch condition for winpaths~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ { // Commented after Juan's patch //sourceString = fixWinPathForRsync(sourceString, true); //fix source (which is remote) //destString = fixWinPathForRsync(destString, false); //fix destination (which is local) } } //add argument for ssh if the checkbox is checked & ssh keyfile if (operationToAppend -> GetRemoteSSH()) { QString sshOptions=(Operation[currentOperation] -> GetRemoteSSHOptions()).replace("\"","\\\"")+" -o \"StrictHostKeyChecking no\" -o \"PasswordAuthentication no\" "; if (WINrunning) { if (operationToAppend -> GetRemoteSSHPassword() != "") if ( operationToAppend -> GetRemoteSSHPort() != 0 ) arguments.append("-e \""+operationToAppend -> GetSshCommand()+"\" "+sshOptions+" -i \"" + operationToAppend -> GetRemoteSSHPassword() + "\" -p " + countStr.setNum( operationToAppend -> GetRemoteSSHPort()) ); else arguments.append("-e \""+operationToAppend -> GetSshCommand()+"\" "+sshOptions+" -i \"" + operationToAppend -> GetRemoteSSHPassword() + "\""); else if ( operationToAppend -> GetRemoteSSHPort() != 0 ) arguments.append("-e \""+operationToAppend -> GetSshCommand()+"\" "+sshOptions+" -p " + countStr.setNum( operationToAppend -> GetRemoteSSHPort()) ); else arguments.append("-e \""+operationToAppend -> GetSshCommand()+"\" "+sshOptions+""); } else { if (operationToAppend -> GetRemoteSSHPassword() != "") { //arguments.append("-e \"ssh -i " + uiM.lineEdit_sshPassword -> text() + "\""); // NOTE: character ' is not used in linux due to QT comptibility issues. It works just fine without it. It is added at the "validate" dialog though for real CLI command pasting purposes!! NOTE if (operationToAppend -> GetRemoteSSHPort() != 0) arguments.append("-e "+sshCommandPath+" -i " + operationToAppend -> GetRemoteSSHPassword() + " -p " + countStr.setNum(operationToAppend -> GetRemoteSSHPort()) ); else arguments.append("-e "+sshCommandPath+" -i " + operationToAppend -> GetRemoteSSHPassword()); } else { if (operationToAppend -> GetRemoteSSHPort() != 0) arguments.append("-e "+sshCommandPath+" -p " + countStr.setNum(operationToAppend -> GetRemoteSSHPort()) ); else arguments.append("-e "+sshCommandPath); } } } } else //Operate locally---------------------------------------------------------------------------------------- { sourceString = operationToAppend -> GetSource(); destString = operationToAppend -> GetDestination(); // Bruce patch condition for winpaths~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // convert path to cygwin paths, change any \ to / :) if (WINrunning) { // Commented after Juan's patch //sourceString = fixWinPathForRsync(sourceString, false); //fix local source //destString = fixWinPathForRsync(destString, false); //fix local destination } // Bruce patch end ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~` } //add snapshot arguments - do not perform this if the function is called when "validate" button pressed //perform this if more than 1 snapshot is already made if ( (operationToAppendCurrentSnaps > 1) && (!validation) ) { //fix source and dest for snapshots directory QString snapSource=sourceString; QString snapDest=destString; //temp variables //if ( (snapDest.contains(":")) && (!notXnixRunning))// this is normal for a remote directory (not for OS/2 or win: eg c:\) if ( ((snapDest.contains(":")) && (!notXnixRunning)) || (snapDest.contains(":") && WINrunning && operationToAppend -> GetRemote()) )// this is normal for a remote directory { snapDest = snapDest.right(snapDest.size()-snapDest.lastIndexOf(":")-1); //this is the remote dest dir without the remote pc snapDest = ""; } if (!snapSource.endsWith(SLASH)) // this means task is of type "backup dir by name" { QString sourceLast = snapSource; sourceLast = calculateLastPath(sourceLast); // This is the lowest dir of the source if (WINrunning && operationToAppend -> GetRemote()) sourceLast.append(XnixSLASH); else sourceLast.append(SLASH); snapDest.append(sourceLast); } QString prevSnapDateTime = operationToAppend -> GetSnapshotsListItem(operationToAppendCurrentSnaps-2); QString prevSnapDir = snapDest + snapDefaultDir + prevSnapDateTime + SLASH; // This is where the deleted files (== previous snapshot) will go if (WINrunning) // windows prevSnapDir.replace(SLASH,XnixSLASH); else if (notXnixRunning) //OS2 prevSnapDir.replace("/",SLASH); // add arguments to backup files to be be deleted inside the snapshot direcotry arguments.append("--backup"); arguments.append("--backup-dir=" + prevSnapDir); } // protect the snapshots directories from being deleted. Do nothing for older snapshots dirs // This is outside the condition because the snapDefaultDir also contains the backup of the profile + logs + snaps if (!validation) { if (WINrunning) arguments.append("--filter=protect " + snapDefaultDir.replace(SLASH,XnixSLASH)); else // linux & OS2 arguments.append("--filter=protect " + snapDefaultDir); } // keep snapshot changes files only for backup task types, not sync if ( (!validation) && (operationToAppendMaxSnaps > 1) ) { //Define a file to log new files transfered so that to exclude these when restoring previous snapshots arguments.append("--log-file=" + snapchangesfilename); arguments.append("--log-file-format=" + snapChangesString); } //set source & destination according to sourceString & destString --------------------------------------------------------- arguments.append(sourceString); arguments.append(destString); return arguments; } // calculateLastPath ===================================================================================================================================== // Calculates the last part of a path eg path=user@host:destination/path/here/ -> returns "here" QString calculateLastPath(QString origPath) { QString returnPATH = origPath; if ( returnPATH.contains(":") ) // this is a remote directory eg user@host:directory/path returnPATH = returnPATH.right(returnPATH.size()-returnPATH.lastIndexOf(":")-1); //this is the remote returnPATH dir without the remote pc ([user@]host:) if (returnPATH.endsWith(SLASH)) returnPATH.chop(1); if (returnPATH.contains(SLASH)) // this is normal for a directory unless it is remote returnPATH = returnPATH.right(returnPATH.size()-returnPATH.lastIndexOf(SLASH)-1); //this is the lowest dir of returnPATH return returnPATH; } // fixWinPathForRsync ===================================================================================================================================== // Fixes a windows path for rsync use QString fixWinPathForRsync(QString fixTHIS, bool remotePATH) { QString returnPATH = fixTHIS; QChar drive = fixTHIS[0]; drive = drive.toLower(); // This is the windows drive letter eg C ..as in C:\ :P if (remotePATH) { returnPATH = returnPATH.replace("\\","/"); if (returnPATH.endsWith("//")) returnPATH.chop(1); } else { if (fixTHIS.startsWith("\\\\")) // this is probably a remote share returnPATH = returnPATH.replace("\\","/"); else returnPATH = returnPATH.replace(0,3,"/cygdrive/"+QString(drive)+"/").replace("\\","/"); } return returnPATH; } // logFileUpdate ===================================================================================================================================== // Updates the current logfile with some string QString logFileUpdate(QString appendTYPE, QString appendTHIS, int currentPrePost) { QTextStream out(&logfile); QString dirA = Operation[currentOperation] -> GetSource(); QString dirB = Operation[currentOperation] -> GetDestination(); if (appendTYPE == "pre-starting") appendTHIS = "\n" + QObject::tr("pre-task execution of command","Full phrase: pre-task execution of command: starting")+ " : " + Operation[currentOperation] -> GetExecuteBeforeListItem(currentPrePost) + ", "+ QObject::tr("starting","Full phrase: pre-task execution of command: starting")+"\n"; if (appendTYPE == "repeat-on-fail") appendTHIS = "\n    -----| " + QObject::tr("Command re-run due to failure","This means that a specific command is run for once more because it failed the first time")+ " |-----\n"; if (appendTYPE == "post-starting") appendTHIS = "\n" + QObject::tr("post-task execution of command","Full phrase: post-task execution of command: starting")+ " : " + Operation[currentOperation] -> GetExecuteAfterListItem(currentPrePost) + ", "+QObject::tr("starting","Full phrase: post-task execution of command: starting")+"\n"; if (appendTYPE == "rsync-starting-backup") appendTHIS = "\n=====================================
" + QObject::tr("execution of task","Full phrase: execution of task: starting")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("starting","Full phrase: execution of task: starting")+"
"+ QObject::tr("Source","Full phrase: source: " + dirA + "

"+QObject::tr("Destination","Full phrase: Destination: " + dirB + "
\n"; if (appendTYPE == "rsync-starting-syncAB") appendTHIS = "\n=====================================
" + QObject::tr("execution of 1st part of task","Full phrase: execution of 1st part of task: starting")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("starting","Full phrase: execution of 1st part of task: starting")+"
"+ QObject::tr("Syncing","Full phrase: Syncing to ")+" : " + dirA + "
"+QObject::tr("to","Full phrase: Syncing to ")+ " : " + dirB + "\n"; if (appendTYPE == "rsync-starting-syncBA") appendTHIS = "\n=====================================
" + QObject::tr("execution of 2nd part of task","Full phrase: execution of 2nd part of task: starting")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("starting","Full phrase: execution of 2nd part of task: starting")+"
"+ QObject::tr("Syncing","Full phrase: Syncing to ")+" : " + dirB + "
"+QObject::tr("to","Full phrase: Syncing to ")+" : " + dirA + "\n"; if (appendTYPE == "pre-finished") appendTHIS = "\n" + QObject::tr("pre-task execution of command","Full phrase: pre-task execution of COMMAND: finished")+ " : " + Operation[currentOperation] -> GetExecuteBeforeListItem(currentPrePost) + ", "+QObject::tr("finished","Full phrase: pre-task execution of COMMAND: finished")+"\n"; if (appendTYPE == "post-finished") appendTHIS = "\n" + QObject::tr("post-task execution of command","Full phrase: post-task execution of COMMAND: finished")+ " : " + Operation[currentOperation] -> GetExecuteAfterListItem(currentPrePost) + ", "+QObject::tr("finished","Full phrase: post-task execution of COMMAND: finished")+"
"; if (appendTYPE == "rsync-finished-sync1") appendTHIS = "\n" + QObject::tr("execution of 1st part of task","Full phrase: execution of 1st part of task: finished")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("finished","Full phrase: execution of 1st part of task: finished") + "
=====================================
"; if (appendTYPE == "rsync-finished") appendTHIS = "\n" + QObject::tr("execution of task","Full phrase: execution of task: finished")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("finished","Full phrase: execution of task: finished") + "\n=====================================
"; if (appendTYPE == "pre-task-exited-with-error") appendTHIS = "\n" + QObject::tr("execution of task","Full phrase: execution of task: finished because of pre/post task command execution error")+ " : " + Operation[currentOperation] -> GetName() + ", "+QObject::tr("finished because of pre/post task command execution error", "Full phrase: execution of task: finished because of pre/post task command execution error") + "\n=====================================
"; if (appendTYPE == "process-reported-error") appendTHIS = "
" + QObject::tr("The process reported an error") + ": \"" + appendTHIS + "\"\n"; if (appendTYPE == "rsync-standard") appendTHIS = appendTHIS + "\n"; if (appendTYPE == "rsync-error") appendTHIS = "" + appendTHIS + "\n"; if (appendTYPE == "backup-profile") appendTHIS = "\n    -----| " + QObject::tr("Backing-up profile, logfiles and snapshot data") + appendTHIS + " |-----
"; if (writeToLog) { if (console) //this is used for console compatibility with utf-8 appendTHIS = QString(appendTHIS.toUtf8()); out << appendTHIS; } return appendTHIS; } // checkMountPoint ===================================================================================================================================== // Checks if the given path belongs to a mountpoint structure under /media or /mnt // Will also return true for every path that does not start with /media or /mnt bool checkMountPoint(QString dirPath) { bool returnTHISplease = true; if ( (dirPath.startsWith ("/media", Qt::CaseSensitive )) || (dirPath.startsWith ("/mnt", Qt::CaseSensitive )) ) { if (!dirPath.endsWith(SLASH)) dirPath.append(SLASH); int ROOTcounts = dirPath.count(SLASH) - 2; QString mountpoint = dirPath; int count = 0; while (count < ROOTcounts) // scan all directory depth one by one except /media or /mnt { QProcess *mountProcess; mountProcess = new QProcess; QStringList mArgs; mArgs << mountpoint; mountProcess -> start ("mountpoint",mArgs); mountProcess -> waitForFinished(); // The following means that the given path belongs to a directory structure under /media or /mnt that is a mountpoint if (mountProcess -> exitCode() == 0) { returnTHISplease = true; count = ROOTcounts; // Exit this loop and return true if mount point found } else returnTHISplease = false; mountpoint = mountpoint.left(mountpoint.lastIndexOf(SLASH,mountpoint.size()-2)+1); // Cut the right part of the path count++; } } return returnTHISplease; } // sendEmailNow ===================================================================================================================================== // Send an email after a profile run. bool is true if called for testing purposes QString sendEmailNow (bool testEmail) { QString returnString = ""; // This is the string that will be finally returned // Form command to execute (first argument of emailCommand ) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //QString emailCommandExec = emailCommand.left(emailCommand.indexOf(" ")); QString emailCommandExec = emailCommand; //if (WINrunning) // emailCommandExec = luckyBackupDir+SLASH+emailCommandExec; // Calculate arguments and command used from variables ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //QString emailArgs = emailCommand; emailArgs.remove(emailCommandExec); QStringList emailArgsExec = emailArguments.split(" ",QString::SkipEmptyParts); // Body & Subject might contain other args inside them. So,replace first ~~~~~~~~~~~ emailArgsExec.replaceInStrings("%s",emailSubject); // %s subject emailArgsExec.replaceInStrings("%b",emailBody); // %b body // %l or %c logfile filename - Only do this is there exists a %l or %c arguments because many file actions are involved bool stopEmail = false; if ( (emailArgsExec.contains("%l")) || (emailArgsExec.contains("%c")) ) { QString argLog = logDir + profileName + emailLogString; QFile sendlogfile(argLog); if (!sendlogfile.open(QIODevice::WriteOnly)) // if the log file to send cannot be opened for writing stopEmail = true; else { QTextStream out(&sendlogfile); if (testEmail) // if this is a test email out << "This logfile is used for TESTING purposes only !!"; else // if this is a real email - merge all task logs to a single file { currentOperation = 0; while (currentOperation < TotalOperations) // scan all tasks one by one { if ( (Operation[currentOperation] -> GetPerform()) || (Operation[currentOperation] -> GetByPassWARNING()) ) // if the task did run { out << "\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " << Operation[currentOperation] -> GetName().toUtf8() << " - START ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n"; logfilename = logDir + QString(profileName.toUtf8()) + "-" + QString((Operation[currentOperation] -> GetName()).toUtf8()) + "-" + Operation[currentOperation] -> GetSnapshotsListItem(Operation[currentOperation]->GetSnapshotsListSize()-1) + ".log"; logfile.setFileName(logfilename); // this is the last logfile if (logfile.exists()) { if (logfile.open(QIODevice::ReadOnly)) //if the profile cannot be opened { QTextStream in(&logfile); out << in.readAll(); logfile.close(); } else out << "\n" << QObject::tr("Could not open the logfile") << "\n"; } else out << "\n" << QObject::tr("The logfile does not exist") << "\n"; out << "\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "+ Operation[currentOperation] -> GetName().toUtf8() + " - END ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n"; } currentOperation++; } } sendlogfile.close(); } if (emailArgsExec.contains("%c") && !WINrunning) // if the argument %c is included, also compress the file. This is valid for non windows systems { // Execute the tar command QString compressCommand="tar", compressExtension=".tar.gz"; QStringList compressArgs; compressArgs << "-C" << logDir << "-cvzf" << argLog + compressExtension << profileName + emailLogString; //compressArgs << "-cvzf" << argLog + compressExtension << argLog + emailLogString; // this adds the full path of the logfile inside the tar.gz QProcess *compressProcess; compressProcess = new QProcess; compressProcess -> setProcessChannelMode(QProcess::MergedChannels); if (WINrunning) { compressProcess -> setWorkingDirectory(luckyBackupDir); QDir::setCurrent(luckyBackupDir); } compressProcess -> start (compressCommand,compressArgs); compressProcess -> waitForFinished(10000); emailArgsExec.replaceInStrings("%c",argLog+compressExtension); } if (WINrunning) emailArgsExec.replaceInStrings("%l",argLog.replace(XnixSLASH,SLASH)); else emailArgsExec.replaceInStrings("%l",argLog); } // %d Current Date QString argDate = QDate::currentDate().toString(Qt::DefaultLocaleLongDate); emailArgsExec.replaceInStrings("%d",argDate); // %i Current Time QString argTime = QTime::currentTime().toString("hh:mm:ss"); emailArgsExec.replaceInStrings("%i",argTime); // %p Profile Name emailArgsExec.replaceInStrings("%p",profileName); // %e No. of errors QString argErrors = countStr.setNum(errorsFound); emailArgsExec.replaceInStrings("%e",argErrors); // %f From address emailArgsExec.replaceInStrings("%f",emailFrom); // %t To address emailArgsExec.replaceInStrings("%t",emailTo); // %v smtp server emailArgsExec.replaceInStrings("%v",emailSMTP); // End of arguments calculations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Execute the email command QProcess *emailProcess; emailProcess = new QProcess; emailProcess -> setProcessChannelMode(QProcess::MergedChannels); if(WINrunning) { QDir::setCurrent(luckyBackupDir); emailProcess -> setWorkingDirectory(luckyBackupDir); } emailProcess -> start (emailCommandExec,emailArgsExec); emailProcess -> waitForFinished(10000); // Build the return string ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ QString errorOccured = emailProcess -> errorString(); if (errorOccured == "Unknown error") errorOccured = ""; if (errorOccured == "No such file or directory") returnString.append(QObject::tr("The specified command is probably not installed") + "\n"); if (stopEmail) returnString.append(QObject::tr("The logfile could not be created") + "\n"); returnString.append( "\n"+QObject::tr("command: ") + emailCommandExec+ //"\n"+QObject::tr("arguments: ") + emailArgsExec.join(" ") + //"\n"+QObject::tr("arguments: ") + emailArgs + "\n"+QObject::tr("exit code: ") + countStr.setNum(emailProcess -> exitCode()) + "\n"+QObject::tr("output: ") + errorOccured + "\n" + emailProcess -> readAll() ); if (!testEmail) // email last log { QFile emailLog(logDir + profileName + emailLastLogString); if (emailLog.open(QIODevice::WriteOnly)) // Create the test log file to send { QTextStream out(&emailLog); out << returnString; } emailLog.close(); } return returnString; } // setTextMessages ======================================================================================================= // function to set text feedback for the user // This will be displayed at the gui info window or at CLI void setTextMessages (QString source,QString dest,bool remoteSource,bool remoteDest,QString status, QString type, QString reason) { // useful variables QString currentOpNameCLI = QString((Operation[currentOperation] -> GetName())).toUtf8(); int lastErrors = Operation[currentOperation] -> GetLastExecutionErrors(); QString lastTimeReadable = (Operation[currentOperation] -> GetLastExecutionTime()).toString(Qt::DefaultLocaleLongDate); QString lastTime = (Operation[currentOperation] -> GetLastExecutionTime()).toString(); //QString taskDescriptionCLI = QString((Operation[currentOperation] -> GetDescription())).toUtf8(); QString taskDescription = Operation[currentOperation] -> GetDescription(); taskDescription.replace("\n","
"); if (status == "okay") CheckedDataCLI.append("[Ok] -> "); if (status == "warning") CheckedDataCLI.append("[WARNING] -> "); if (status == "critical") CheckedDataCLI.append("[CRITICAL] -> "); CheckedDataCLI.append(currentOpNameCLI); // Last execution time & errors CheckedData.append(QObject::tr("Last execution time") + ": "); CheckedDataCLI.append("\nLast execution time : "); if (lastTime == "") { CheckedData.append(QObject::tr("not available") + "
"); CheckedDataCLI.append("not available"); } else { CheckedData.append(lastTimeReadable +""); CheckedDataCLI.append(lastTimeReadable); if (lastErrors > -1) // if there is error information available { if (lastErrors == 0) { CheckedData.append(" (" + QObject::tr("no errors") + ")"); CheckedDataCLI.append(" (no errors)"); } else { CheckedData.append(" (" + QObject::tr("errors found") + ")"); CheckedDataCLI.append(" (errors found)"); } } CheckedData.append("
"); } // task status -> [ok] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ if (status == "okay") { CheckedData.append(QObject::tr("status") + ": " + QObject::tr("OK") + "
"); if (type == "sync") { CheckedData.append(QObject::tr("Sync directory")+" A: "); CheckedDataCLI.append("\nSync directory A : "); } if (type == "backup") { CheckedData.append(QObject::tr("Source directory")+": "); CheckedDataCLI.append("\nSource directory : "); } CheckedData.append(source+""); CheckedDataCLI.append(source); if (remoteSource) { CheckedData.append("
("+QObject::tr("Using remote, check is skipped")+"...)"); CheckedDataCLI.append(" (Using remote, check is skipped...)"); } if (type == "sync") { CheckedData.append("
" + QObject::tr("Sync directory")+" B: "); CheckedDataCLI.append("\nSync directory B : "); } if (type == "backup") { CheckedData.append("
" + QObject::tr("Destination directory")+": "); CheckedDataCLI.append("\nDestination directory : "); } CheckedData.append(dest+""); CheckedDataCLI.append(dest); if (remoteDest) { CheckedData.append("
("+QObject::tr("Using remote, check is skipped")+"...)"); CheckedDataCLI.append(" (Using remote, check is skipped...)"); } else // display destination disk free space if (!WINrunning) { QProcess *diskSpace; diskSpace = new QProcess(0); QStringList diskSpaceArgs; diskSpaceArgs << "-h" << dest; diskSpace -> start ("df",diskSpaceArgs); diskSpace -> waitForFinished(); QString diskSpaceString = diskSpace->readAllStandardOutput(); if (diskSpaceString.contains("Avail")) { QStringList diskLines = diskSpaceString.split( "\n", QString::SkipEmptyParts ); QStringList diskFields = diskLines[1].split(" ", QString::SkipEmptyParts ); CheckedData.append(" (" + diskFields[3] +" " + QObject::tr("free", "as in free disk space") + ")"); } } } // task status -> [WARNING] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ if (status == "warning") { CheckedData.append(QObject::tr("status") + ": "+QObject::tr("WARNING")+"
"); if (reason == "source-perms") { if (type == "sync") { CheckedData.append(QObject::tr("I do not have the permission to read/enter sync directory A")+":
"); CheckedDataCLI.append("\nI do not have the permission to read/enter sync directory A :\n"); } if (type == "backup") { CheckedData.append(QObject::tr("I do not have the permission to read/enter the source directory")+":
"); CheckedDataCLI.append("\nI do not have the permission to read/enter the source directory :\n"); } CheckedData.append(source + "

"); CheckedDataCLI.append(source); } if (reason == "dest-perms") { if (type == "sync") { CheckedData.append(QObject::tr("I do not have the permission to read/enter sync directory B")+":
"); CheckedDataCLI.append("\nI do not have the permission to read/enter sync directory B :\n"); } if (type == "backup") { CheckedData.append(QObject::tr("I do not have the permission to read/enter the destination directory")+":
"); CheckedDataCLI.append("\nI do not have the permission to read/enter the destination directory :\n"); } CheckedData.append(dest + "

"); CheckedDataCLI.append(dest); } if ((reason == "sync-not-exist") || (reason == "sync-not-mounted")) { CheckedData.append(QObject::tr("Directory")+" "); CheckedData.append(source); CheckedData.append("
"+QObject::tr("and/or")+" "); CheckedData.append(dest); if (reason == "sync-not-exist") CheckedData.append("
"+QObject::tr("does not exist")+".
"); if (reason == "sync-not-mounted") CheckedData.append("

"+QObject::tr("is not mounted")+".
"); CheckedDataCLI.append("\nDirectory "); CheckedDataCLI.append(source); CheckedDataCLI.append("\nand/or "); CheckedDataCLI.append(dest); if (reason == "sync-not-exist") CheckedDataCLI.append("\ndoes not exist.\n"); if (reason == "sync-not-mounted") CheckedDataCLI.append("\nis not mounted.\n"); } if (reason == "source-not-exist") { CheckedData.append(QObject::tr("Source directory")+": "); CheckedData.append(source); CheckedData.append("
"+QObject::tr("is empty or does not exist")+".

"); CheckedDataCLI.append("\nSource directory : "); CheckedDataCLI.append(source); CheckedDataCLI.append(" is empty or does not exist.\n" "Destination directory : "); CheckedDataCLI.append(dest); if (remoteDest) CheckedDataCLI.append(" (Using remote, check is skipped...)"); } if (reason == "dest-not-mounted") { CheckedData.append(QObject::tr("Destination directory")+": "); CheckedData.append(dest); CheckedData.append("
"+QObject::tr("is not mounted")+".

"); CheckedDataCLI.append("\nSource directory : "); CheckedDataCLI.append(source); if (remoteSource) CheckedDataCLI.append(" (Using remote, check is skipped...)"); CheckedDataCLI.append("\nDestination directory : "); CheckedDataCLI.append(dest); CheckedDataCLI.append(" is not mounted.\n"); } if (Operation[currentOperation] -> GetByPassWARNING()) { CheckedData.append(QObject::tr("I will NOT SKIP this task because you have enabled the \"by-pass WARNING\" option")); CheckedDataCLI.append("\nThis task will NOT be skipped because you have enabled the \"by-pass WARNING\" option\n"); } else { CheckedData.append(QObject::tr("This task will be skipped")); CheckedDataCLI.append("\nThis task will be SKIPPED\n"); } } // task status -> [CRITICAL] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ if (status == "critical") { CheckedData.append(QObject::tr("status") + ": "+QObject::tr("CRITICAL")+"
"); if (type == "sync") { CheckedData.append(QObject::tr("Directory")+" "); CheckedData.append(source); CheckedData.append("
"+QObject::tr("and/or")+" "); CheckedData.append(dest); CheckedData.append("
"+QObject::tr("is empty")+".
"+ QObject::tr("I will not skip this task. Synchronizing is going to be performed anyway")); CheckedDataCLI.append("\nDirectory "); CheckedDataCLI.append(source); CheckedDataCLI.append("\nand/or "); CheckedDataCLI.append(dest); CheckedDataCLI.append("\nis empty.\n" "I will NOT skip this task (unless '--skip-critical' is given as argument).\n" "Synchronizing is going to be performed anyway !!\n"); } if (type == "backup") { CheckedDataCLI.append("\nSource directory : "); CheckedDataCLI.append(source); if (remoteSource) CheckedDataCLI.append(" (Using remote, check is skipped...)"); CheckedDataCLI.append("\nDestination directory : "); CheckedDataCLI.append(dest); CheckedDataCLI.append(" is empty or does not exist.\n" "This task will NOT be skipped (unless '--skip-critical' is given as argument)\n" "The Destination Directory will be created if it doesn't exist and filled with new backup data.\n"); CheckedData.append(QObject::tr("Destination directory")+": "); CheckedData.append(dest); CheckedData.append("
"+QObject::tr("is empty or does not exist")+".

"+ QObject::tr("This task will not be skipped")+"
"+ QObject::tr("The Destination Directory will be created if it doesn't exist and filled with new backup data")+"."); } } CheckedDataCLI.append("\n_____________________________________________________________________________________________\n"); // Task description if (taskDescription != "") CheckedData.append("

"+QObject::tr("Task description") + ":
" + taskDescription); } // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Various windows stuff from this point to the end of the file... QString getMapdrive(){ QString mapdrive="w"; QStringList units; units << "w"<<"v"<<"u"<<"t"<<"s"<<"r"<<"q"<<"p"<<"z"<<"y"<<"x"<<"o"<<"n"<<"m"<<"l"<<"k"<<"j"<<"i"; for (int i = 0; i < units.size(); ++i){ mapdrive=units.at(i); if (! QDir(units.at(i)+":"+SLASH).exists()) break; } return mapdrive; } /*luckyb commended this function out //Create execute command in windows ================================================== //Modify source and dest with cygpath and analyze vss QString createWinMkdirCommand(QString tempPath,bool vss,QStringList rsyncArgs,bool logGui=true){ rsyncArgs << ""; //return createWinRsyncCommand(tempPath,vss,rsyncArgs,logGui); QString logstring=""; //QFile command1(tempPath+"\\l1qt_temp"+QString::number(qrand() % (999998) + 1) +".bat"); QFile command2(tempPath+"l2qt_temp"+QString::number(qrand() % (999998) + 1) +".bat"); //QTemporaryFile setvar(tempPath+"\\qt_tempXXXXXX.bat"); QString dest=rsyncArgs.takeLast(); QString source=rsyncArgs.takeLast(); bool srcremote=false; bool dstremote=false; rsyncArgs.replaceInStrings("\"","\\\""); QString args="\""+rsyncArgs.join("\" \"")+"\""; args.replace("\"--vss\"",""); if (source.contains('@')||source.startsWith("\\\\")){ args.replace("\"--backup-nt-streams\"",""); vss=false; srcremote=true; //source=source.replace("\\","/"); } if (dest.contains('@')||dest.startsWith("\\\\")){ args.replace("\"--restore-nt-streams\"",""); args.append(" \"--chmod=u=rwX\" "); dstremote=true; //dest=dest.replace("\\","/"); } //source=fixWinPathForRsync(source,srcremote); //dest=fixWinPathForRsync(dest,dstremote); mapdrive=getMapdrive(); QTextStream outCommand2(&command2); outCommand2 << "\n@ECHO OFF"; outCommand2 << "\nSET tdebug=y"; outCommand2 << "\nSET tdeleteshadows=y"; outCommand2 << "\nSET el=0"; if (!srcremote) outCommand2 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \""+source+"\"> "+tempPath+"\\_cygpath.tmp"; else outCommand2 << "\nECHO "+source+"> "+tempPath+"\\_cygpath.tmp"; outCommand2 << "\nSET /p source=< "+tempPath+"\\_cygpath.tmp"; if (!dstremote) outCommand2 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \""+dest+"/\"> "+tempPath+"\\_cygpath.tmp"; else outCommand2 << "\nECHO "+dest+"> "+tempPath+"\\_cygpath.tmp"; outCommand2 << "\nSET /p dest=< "+tempPath+"\\_cygpath.tmp"; outCommand2 << "\n \""+Operation[currentOperation] -> GetRsyncCommand()+"\" "+args+" \"%source%\" \"%dest%\" "; outCommand2 << "\n SET el=%ERRORLEVEL%"; outCommand2 << "\ndel "+tempPath+"/_cygpath.tmp 2>nul"; outCommand2 << "\n:ennd"; outCommand2 << "\nIF %el% neq 0 exit /b %el%"; //outCommand2 << "\ndel \""+command1.fileName().replace("/","\\")+"\""; //outCommand2 << "\nstart \"rsync.bat\" /min cmd /C del \"%0\" >nul 2>&1"; outCommand2 << "\nECHO BACKUP OK"; QString ret=command2.fileName(); command2.close(); }*/ QString createWinRsyncCommand(QString tempPath,bool vss,QStringList rsyncArgs,bool logGui){ // QFile settingsfile(settingsFile); // if (!settingsfile.open(QIODevice::WriteOnly)) // if the settings file cannot be saved (or fails to create) // { // settingsfile.close(); // return false; // } //luckyb line to avoid compile WARNING vss = logGui; if (vss) vss=true; // end of luckyb lines // showOnlyErrors = ui.checkBox_onlyShowErrors -> isChecked(); QString logstring=""; QFile command1(tempPath+SLASH+"l1qt_temp"+QString::number(qrand() % (999998) + 1) +".bat"); QFile command2(tempPath+SLASH+"l2qt_temp"+QString::number(qrand() % (999998) + 1) +".bat"); QTemporaryFile setvar(tempPath+SLASH+"qt_tempXXXXXX.bat"); QString dest=rsyncArgs.takeLast(); QString source=rsyncArgs.takeLast(); //bool srcremote=false; // luckyb commend to avoid compile WARNING //bool dstremote=false; rsyncArgs.replaceInStrings("\"","\\\"");//double escape chars to include in bat QString args="\""+rsyncArgs.join("\" \"")+"\""; /* disable vss until... args.replace("\"--vss\"",""); */ if (source.contains('@')||source.startsWith(SLASH+SLASH)){ args.replace("\"--backup-nt-streams\"",""); vss=false; //srcremote=true; // luckyb lines to avoid compile WARNING if (source.startsWith("\\\\")) source="\\\\"+source; //source=source.replace("\\","/"); } if (dest.contains('@')||dest.startsWith(SLASH+SLASH)){ args.replace("\"--restore-nt-streams\"",""); args.append(" \"--chmod=u=rwX\" "); // dstremote=true; // luckyb lines to avoid compile WARNING //dest=dest.replace("\\","/"); if (dest.startsWith("\\\\")) dest="\\\\"+dest; } //source=fixWinPathForRsync(source,srcremote); //dest=fixWinPathForRsync(dest,dstremote); mapdrive=getMapdrive(); /* disable vss until... if (vss) { doVss=1; logstring=" >> \""+pipeVssFile->fileName()+"\" 2>> \""+pipeVssErrFile->fileName()+"\""; if (!setvar.open()) // if the settings file cannot be saved (or fails to create) { setvar.close(); return ""; } setvar.close(); //QTemporaryFile logfile; //if (!logfile.open()) // if the settings file cannot be saved (or fails to create) //{ // logfile.close(); // return ""; //} logfile.close(); //write arrays to file if (!command1.open(QIODevice::WriteOnly | QIODevice::Text)) // if the settings file cannot be saved (or fails to create) { command1.close(); return ""; } QTextStream outCommand1(&command1); outCommand1 << "\n@ECHO OFF"; outCommand1 << "\nECHO DOING RSYNC >> \""+pipeVssFile->fileName()+"\" "; //outCommand1 << "\nECHO \"\" > \""+pipeVssErrFile->fileName()+"\""; outCommand1 << "\nSETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION "; outCommand1 << "\nCALL "+setvar.fileName(); outCommand1 << "\n\""+Operation[currentOperation] -> GetDosdevCommand()+"\" "+mapdrive+": %SHADOW_DEVICE_1% >> \""+pipeVssFile->fileName()+"\" 2>> \""+pipeVssErrFile->fileName()+"\""; outCommand1 << "\n SET SOURCE="+source; if (vss) outCommand1 << "\n SET SOURCE="+mapdrive+"%SOURCE:~1%"; if (!source.contains('@')) outCommand1 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \"%SOURCE%\"> "+tempPath+SLASH+"_cygpath.tmp"; else outCommand1 << "\nECHO "+source+"> "+tempPath+SLASH+"_cygpath.tmp"; outCommand1 << "\nSET /p source=< "+tempPath+SLASH+"_cygpath.tmp"; if (!dest.contains('@')) outCommand1 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \""+dest+"/\"> "+tempPath+SLASH+"_cygpath.tmp"; else outCommand1 << "\nECHO "+dest+"> "+tempPath+SLASH+"_cygpath.tmp"; outCommand1 << "\nSET /p dest=< "+tempPath+SLASH+"_cygpath.tmp"; outCommand1 << "\nSET HOME="+luckyBackupDir; outCommand1 << "\nSET CYGWIN=nodosfilewarning"; outCommand1 << "\n\""+Operation[currentOperation] -> GetRsyncCommand()+"\" "+args+" \"!source!\" \"!dest!\" >> \""+pipeVssFile->fileName()+"\" 2>> \""+pipeVssErrFile->fileName()+"\""; outCommand1 << "\nSET ACTERR=!ERRORLEVEL! "; outCommand1 << "\nECHO Backing up completed: !ACTERR!. !DATE! !TIME! >> \""+pipeVssFile->fileName()+"\""; outCommand1 << "\nECHO delete shadow device drive mapping >> \""+pipeVssFile->fileName()+"\" 2>> \""+pipeVssErrFile->fileName()+"\""; outCommand1 << "\n\""+Operation[currentOperation] -> GetDosdevCommand()+"\" -r -d "+mapdrive+": 2>NUL "; //outCommand1 << "\nrem del "+setvar.fileName()+" "; //outCommand1 << "\nrem del %0 "; outCommand1 << "\nIF %ACTERR% GTR 0 ( "; outCommand1 << "\nECHO ERROR on backup. %DATE% %TIME% >> \""+pipeVssErrFile->fileName()+"\""; outCommand1 << "\nexit 1 "; outCommand1 << "\n) "; command1.close(); }*/ if (!command2.open(QIODevice::WriteOnly | QIODevice::Text)) // if the settings file cannot be saved (or fails to create) { command2.close(); return ""; } QTextStream outCommand2(&command2); outCommand2 << "\n@ECHO OFF"; outCommand2 << "\nSET tdebug=y"; outCommand2 << "\nSET tdeleteshadows=y"; outCommand2 << "\nSET el=0"; //remove vss and /* disable vss until... if (vss) { outCommand2 << "\nFOR /F \"tokens=2* delims=[]\" %%A IN ('VER') DO FOR /F \"tokens=2,3 delims=. \" %%B IN (\"%%A\") DO SET WINVER=%%B.%%C"; outCommand2 << "\nSET WINBIT=x86&&IF \"%PROCESSOR_ARCHITECTURE%\" == \"AMD64\" (SET WINBIT=x64) ELSE IF \"%PROCESSOR_ARCHITEW6432%\" == \"AMD64\" SET WINBIT=x64"; outCommand2 << "\nIF %WINVER% LSS 5.1 ("; outCommand2 << "\n ECHO Sorry, %this% cannot run under this version of Windows %WINVER%-%WINBIT% " + logstring; outCommand2 << "\n SET el=12"; outCommand2 << "\n GOTO :ennd"; outCommand2 << "\n)"; outCommand2 << "\nSET VSHADOWVER=%WINVER%"; outCommand2 << "\nIF %WINVER%==5.1 SET VSHADOWVER=xp&&SET WINBIT=x86"; outCommand2 << "\nIF %WINVER%==5.2 SET VSHADOWVER=2003&&SET WINBIT=x86"; outCommand2 << "\nIF %WINVER%==6.0 SET VSHADOWVER=2008"; outCommand2 << "\nIF %WINVER%==6.1 SET VSHADOWVER=2008-r2"; outCommand2 << "\nCD "+tempPath+""; outCommand2 << "\n IF NOT \"%tdeleteshadows%\"==\"y\" ("; outCommand2 << "\n IF \"%tdebug%\"==\"y\" ECHO Skipping deletion of any existing shadow copies " + logstring; outCommand2 << "\n ) ELSE ("; outCommand2 << "\n IF \"%tdebug%\"==\"y\" ECHO About to delete any existing shadow copies " + logstring; outCommand2 << "\n ECHO y|\""+Operation[currentOperation] -> GetVshadowDir()+SLASH+"vshadow-%VSHADOWVER%-%WINBIT%.exe\" -da>nul"; outCommand2 << "\n IF ERRORLEVEL 1 ("; outCommand2 << "\n IF \"%tdebug%\"==\"y\" ECHO Error occurred: testing for administrator permissions " + logstring; outCommand2 << "\n IF EXIST \"%windir%\\system32\\test\" RMDIR \"%windir%\\system32\\__test\" 2>nul"; outCommand2 << "\n VERIFY>NUL"; outCommand2 << "\n MKDIR \"%windir%\\system32\\test\" 2>nul"; outCommand2 << "\n IF ERRORLEVEL 1 ("; outCommand2 << "\n REM not running as administrator, this is cause of failure" + logstring; outCommand2 << "\n IF \"%tdebug%\"==\"y\" ECHO No administrator permissions " + logstring; outCommand2 << "\n SET /A el=11"; outCommand2 << "\n ) ELSE ("; outCommand2 << "\n ECHO running as administrator, there is a problem with vshadow" + logstring; outCommand2 << "\n RMDIR \"%windir%\\system32\\__test"; outCommand2 << "\n SET /A el=7"; outCommand2 << "\n )"; outCommand2 << "\n GOTO :endd"; outCommand2 << "\n )"; outCommand2 << "\n IF \"%tdebug%\"==\"y\" ECHO Deleted any existing shadow copies " + logstring; outCommand2 << "\n )"; outCommand2 << "\n \""+Operation[currentOperation] -> GetVshadowDir()+SLASH+"vshadow-%VSHADOWVER%-%WINBIT%.exe\" -script=\""+setvar.fileName()+"\" -exec=\""+command1.fileName()+"\" "+source.left(1)+": "; outCommand2 << "\n SET el=%ERRORLEVEL%"; outCommand2 << "\n del "+tempPath+"/_cygpath.tmp 2>nul"; //outCommand2 << "\ncall \""+setvar.fileName()+"\""; //outCommand2 << "\n \""+dosdevCommand+"\" "+mapdrive+": %SHADOW_DEVICE_1% "; //outCommand2 << "\n \""+vshadowDir+SLASH+"vshadow-%VSHADOWVER%-%WINBIT%.exe\" -ds=%SHADOW_ID_1%"; if (!logGui){ outCommand2 << "\nTYPE \""+pipeVssFile->fileName()+"\" "; outCommand2 << "\nTYPE \""+pipeVssErrFile->fileName()+"\" 1>&2"; } } else {*/ if (!source.contains('@')) outCommand2 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \""+source+"\"> "+tempPath+SLASH+"_cygpath.tmp"; else outCommand2 << "\nECHO "+source+"> "+tempPath+SLASH+"_cygpath.tmp"; outCommand2 << "\nSET /p source=< "+tempPath+SLASH+"_cygpath.tmp"; if (!dest.contains('@')) outCommand2 << "\n\""+Operation[currentOperation] -> GetCygpathCommand()+"\" \""+dest+"/\"> "+tempPath+SLASH+"_cygpath.tmp"; else outCommand2 << "\nECHO "+dest+"> "+tempPath+SLASH+"_cygpath.tmp"; outCommand2 << "\nSET /p dest=< "+tempPath+SLASH+"_cygpath.tmp"; outCommand2 << "\nSET HOME="+luckyBackupDir; outCommand2 << "\nSET CYGWIN=nodosfilewarning"; outCommand2 << "\n \""+Operation[currentOperation] -> GetRsyncCommand()+"\" "+args+" \"%source%\" \"%dest%\" "; outCommand2 << "\n SET el=%ERRORLEVEL%"; outCommand2 << "\ndel "+tempPath+"/_cygpath.tmp 2>nul"; /* disable vss until... } */ outCommand2 << "\n:ennd"; outCommand2 << "\nIF %el% neq 0 exit /b %el%"; //outCommand2 << "\ndel \""+command1.fileName().replace("/",SLASH+"")+"\""; //outCommand2 << "\nstart \"rsync.bat\" /min cmd /C del \"%0\" >nul 2>&1"; outCommand2 << "\nECHO BACKUP OK"; QString ret=command2.fileName(); command2.close(); return ret; } void setAppDir(QString s){ luckyBackupDir = s; settingsFile = luckyBackupDir + "settings.ini"; // settings file profileDir = luckyBackupDir + "profiles/"; // profiles directory defaultProfile = profileDir + "default.profile"; // default profile standardDefaultProfile = profileDir + "default.profile"; // standard default profile logDir = luckyBackupDir + "logs/"; // logs directory logfilename = logDir + "logfile.log"; // logfile filename - this will change according to the profile an task executed snapChangesDir = luckyBackupDir + "snaps/"; // Snapshots changes files are stored here. It lies inside ~ snapEmptyDir = snapChangesDir + "EMPTY/"; // empty directory used to delete older snapshots snapchangesfilename = snapChangesDir + "changes.log"; // Snapshot changes filename. This will change according to the snapshot snapChangesString = "[changed_data]%i[LB]%n"; // The log lines format of the "changes" file that stores changes made for every snapshot scheduleDir = luckyBackupDir + "schedule/"; // schedule directory schedulefilename = scheduleDir + "schedule.dat"; // cron data filename cronfilename = scheduleDir + "luckyCron.txt"; // cron filename } } // end of global.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/about.h0000666000175000017500000000434712073243441015463 0ustar luckybluckyb/* ---------------------------------- about.h --------------------------------------------------------------------------- header file used by about.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 20 Nov 2009 =============================================================================================================================== =============================================================================================================================== */ #ifndef ABOUT_H #define ABOUT_H #include "ui_about.h" //============================================================================================================== //Declaration of aboutDialog class (this is the dialog displaying "about" information) class aboutDialog : public QDialog { Q_OBJECT public: aboutDialog (QUrl, QDialog *parent=0); void setTop(); void setAbout(); void setAuthor(); void setThanks(); void setLicense(QUrl); void setSupport(); QString Text; private slots: void okay(); private: Ui::aboutDialog uiA; }; #endif // end of about.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/about.cpp0000666000175000017500000004046413367640510016023 0ustar luckybluckyb/* ---------------------------------- about.cpp --------------------------------------------------------------------------- Class to display the about dialog =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 2 Nov 2018 =============================================================================================================================== =============================================================================================================================== */ #include "about.h" #include "global.h" // class aboutDialog Constructor================================================================================================= // Displays a simple about dialog aboutDialog::aboutDialog (QUrl licenseUrl, QDialog *parent) : QDialog (parent) { uiA.setupUi(this); //connect okay pushButton SLOTs ---------------- connect ( uiA.pushButton_ok, SIGNAL( clicked() ), this, SLOT( okay() ) ); setTop(); setAbout(); setAuthor(); setThanks(); setLicense(licenseUrl); setSupport(); } // SLOTS------------------------------------------------------------------------------------- // --------------------------------okay pressed------------------------------------------------ void aboutDialog::okay() { close(); } // FUNCTIONS------------------------------------------------------------------------------------- void aboutDialog::setTop() { Text = appName+" "+ appVersionString; uiA.label_Top -> setText(Text); } void aboutDialog::setAbout() { uiA.textBrowser_About -> setOpenLinks(true); uiA.textBrowser_About -> setOpenExternalLinks(true); Text = "

"+appName + " " + appVersionString +" ("+ tr("using Qt")+")" + "
" + tr("Backup & Sync Application")+"

" "(C) 2008-2018, "+ tr("Loukas Avgeriou") +"

" "web:
" "http://luckybackup.sourceforge.net/
" "http://www.kde-apps.org/

" "  "+ tr("luckyBackup is distributed under the terms of the GNU General Public License","Please leave the tags & intact and surrounding the GNU General Public License !!") +".

" + tr("It 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, version 3 of the License.","Please leave tags eg , intact and surrounding the words they are suppossed to !!") +"
" + tr("It 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.")+ "
" + tr("See the 'License Agreement' tab for more details.")+"

"; uiA.textBrowser_About -> setText(Text); } void aboutDialog::setAuthor() { uiA.textBrowser_Author -> setOpenLinks(true); uiA.textBrowser_Author -> setOpenExternalLinks(true); Text = "




"+ tr("Loukas Avgeriou") +"
(luckyb)
"+ tr("Athens, Greece") + "

luckyb69@users.sourceforge.net

"; uiA.textBrowser_Author -> setText(Text); } void aboutDialog::setThanks() { uiA.textBrowser_Thanks -> setOpenLinks(true); uiA.textBrowser_Thanks -> setOpenExternalLinks(true); Text = "

" + tr("Tom Tryfonidis") + "
(thanos)
" + tr("Arch linux package/pkgbuild official maintainer (AUR)") + "
" + tr("Greek manual translator") + "
" + tr("Valuable advisor") + "

" "" + tr("Yiorgos Kapellakis") + "
(slackware)
" + tr("rpm packager, valuable tester and remote connections advisor") + "

" "" + tr("Patrick Matthaei") + "
(Debian Developer)
" + tr("Debian package maintainer") + "

" "" + tr("Nikolas Poniros") + "
(edhunter)
" + tr("Greek gui translator and valuable tester") + "

" "" + tr("Dimitris Kalamaras") + "
(dimitris)
" + tr("If it wasn't him and his tutorials I would never have started this project") + "

" "" + tr("The indifex team") + "
" + tr("for developing the wonderful transifex localization platform and providing it for free") + "

" "" + tr("Stephan Kleine") + "
" + tr("OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor") + "

" "" + tr("Marcos Del Puerto Garcia") + "
" + tr("Mepis package maintainer (Community repo) & Spanish gui translator") + "

" "" + tr("Savvas Radevic") + "
" + tr("ubuntu package maintainer (launchpad PPA)") + "

" "" + tr("Bruce Marriner") + "
" + tr("port to MS Windows") + "

" "" + tr("Juan Ramon Alfaro Martinez") + "
" + tr("Code contributor for remote & vss support regarding the windows port") + "

" "" + tr("loh.tar") + "
" + tr("Code contributor for important fixes, structure improvement and port to Qt5") + "

" "" + tr("Jack Fink") + "
" + tr("port to Mac OS X") + "

" "" + tr("Elbert Pol") + "
" + tr("port to OS/2") + "

" "" + tr("Theo Chatzimichos") + "
" + tr("Gentoo ebuild maintainer") + "

" "" + tr("Dimitris Stasinopoulos") + "
(alfisti)
" + tr("Puppy pet & sfs maintainer") + "

" "" + tr("Juan Luis Baptiste") + "
" + tr("Mandriva package maintainer (official contrib repo)") + "

" "" + tr("Michael J Gruber") + "
" + tr("Fedora package maintainer (official repo)") + "

" "" + tr("Jason E. Hale") + "
" + tr("Free BSD package maintainer") + "

" "" + tr("Dimitris Jemos") + "
" + tr("Slackel package maintainer") + "

" "" + tr("Thomas Janssen") + "
" + tr("ex Fedora package maintainer") + "

" "" + tr("Pavel Fric") + "
" + tr("Czech gui translator") + "

" "" + tr("Stergios Prosiniklis") + "
" + tr("Greek manual translator") + "

" "" + tr("Karsten Jaschultowski") + "
" + tr("German gui translator") + "

" "" + tr("Wilfried Schobel") + "
" + tr("German gui translator") + "

" "" + tr("Thomas Glatt") + "
" + tr("German gui translator") + "

" "" + tr("Sergio Gameiro") + "
" + tr("Portuguese gui translator") + "

" "" + tr("Marcio Moraes") + "
" + tr("Portuguese gui translator") + "

" "" + tr("António Correia") + "
" + tr("Portuguese gui translator") + "

" "" + tr("Julien Cynober") + "
" + tr("French gui translator and valuable packing advisor (and not only)") + "

" "" + tr("Aurelien Merckel") + "
" + tr("French gui translator") + "

" "" + tr("Sébastien Bourgain") + "
" + tr("French gui translator") + "

" "" + tr("Francesco Braile") + "
" + tr("Italian gui translator") + "

" "" + tr("Raffaele") + "
" + tr("Italian gui translator") + "

" "" + tr("pinguinofurioso") + "
" + tr("Italian gui translator") + "

" "" + tr("Alessio Ganci") + "
" + tr("Italian gui translator") + "

" "" + tr("Denis Skorski") + "
" + "fripohled.blogspot.com
" + tr("Russian gui translator and valuable tester") + "

" "" + tr("Kenny Verstraete") + "
" + tr("Dutch gui translator") + "

" "" + tr("Martin Grashoff (linuxrev)") + "
" + tr("Dutch gui translator") + "

" "" + tr("Subhi Honaco") + "
" + tr("Bosnian gui translator & mandriva package maintainer") + "

" "" + tr("Majed Sahli") + "
" + tr("Arabic gui translator") + "

" "" + tr("Adrian Murariu") + "
" + tr("Romanian gui translator") + "

" "" + tr("Angelescu Constantin") + "
" + tr("Romanian gui reviewer & translator") + "

" "" + tr("Andrej Znidarsic") + "
" + tr("Slovenian gui translator") + "

" "" + tr("Matej Urbančič") + "
" + tr("Slovenian gui translator") + "

" "" + tr("E. Hakan Duran") + "
" + tr("Turkish gui translator") + "

" "" + tr("Marvin Gomez") + "
" + tr("Spanish gui translator") + "

" "" + tr("Antonio Jose Molina") + "
" + tr("Spanish gui translator") + "

" "" + tr("Fredrik Holmgren") + "
" + tr("Swedish gui translator") + "

" "" + tr("Roger Calvo") + "
" + tr("Catalan gui translator") + "

" "" + tr("Tomas Vadina") + "
" + tr("Slovak gui translator") + "

" "" + tr("Rivo Zangov") + "
" + tr("Estonian gui translator") + "

" "" + tr("Nicolay Boychev") + "
" + tr("Bulgarian gui translator") + "

" "" + tr("Marcos Lans") + "
" + tr("Galician gui translator") + "

" "" + tr("Roger Foss") + "
" + tr("Norwegian gui translator") + "

" "" + tr("Pin-hsien Li") + "
" + tr("Chinese (Taiwan) gui translator") + "

" "" + tr("Axel Rousseau") + "
" + tr("Esperanto gui translator") + "

" "" + tr("Omar Anwar") + "
" + tr("Arabic gui translator") + "

" "" + tr("Javi Romero") + "
" + tr("v0.3 gui designer") + "

" "" + tr("fri13") + "
" + tr("v.0.3 gui designer") + "

" + "" + tr("Tito Poquito") + "
" + tr("slackware package maintainer (SlackBuilds Repository)") + "

" + "" + tr("Michele Dall'Arno") + "
" + tr("special guest bug killer ;)") + "

" + "" + tr("Aphofis Scott") + "
" + tr("valuable tester & brainstorming specialist") + "

" + "" + tr("Yuri Vidal") + "
" + tr("backupwhenidle python script developer") + "

" + "" + tr("Bjorn Rietdijk") + "
" + tr("valuable OS/2 and windows tester") + "

" + "" + tr("Max Rumpf") + "
" + tr("PolKit patch provider") + "

" + tr("...to all users of the ")+ "
Linux Inside, " "aptosid.com, " "aptosid.gr, " "ubuntu.gr, " "hellug, " "and kde-apps.org
" + tr("forums for their support.") + "

" + tr("Especially") + "
constantinos, promeneur, grigris, dannys,marios, Regenwald, flo, Ilias Paraponiaris, Takis Vounatsos, Lieven Tytgat, mathetes, Johan Linde, Chris Sylvester, Manos Nikiforakis, Giorgos Katsikatsos, Ray Ambrosi, Barry Jackson, Damien Cassou, Carsten, Daniele Soldati Chris (slam), Paul Chapman, kingfame, Giorgos 'jeff' Finikianakis, Shelby Williams, Felix, skevo, Philipp F, Christian Harms, Paul Hewlett, Tristan Gross, Fabian Muscariello, James Mohr, Julie Pierson, Peter, Michael Daffin and Kate Draven
" + tr("that contributed to this project one way or another") + "

" + tr("Last but no least") +":
"+ tr("...my other half, Dimitra that bears with me all these times that this project is under development") + " :-)

"; uiA.textBrowser_Thanks-> setText(Text);; } void aboutDialog::setLicense(QUrl licenseUrl) { uiA.textBrowser_License -> setOpenLinks(true); uiA.textBrowser_License -> setOpenExternalLinks(true); licenseUrl.setScheme("file"); if (licenseUrl.toString(QUrl::RemoveScheme) == "Does_not_exist") uiA.textBrowser_License -> setText(tr("Could not locate the license file") + "!!"); else uiA.textBrowser_License -> setSource(licenseUrl); } void aboutDialog::setSupport() { uiA.textBrowser_Support -> setOpenLinks(true); uiA.textBrowser_Support -> setOpenExternalLinks(true); Text = "

" + tr("no money") + "

" + tr("If you like this app and would like to donate something to me personally, all you have to do is:") + "

" + tr("This is my reward :)") + "
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
" + tr("money") + "

" + tr("I personally never had and never will accept money for this project.") + "
" + tr("Nevertheless, I decided to use luckyBackup to support people that really need financial help.") + "
" + tr("So, please consider it seriously to donate money that will eventually be used for a good cause.") + "

" + tr("donation link") + "

"; uiA.textBrowser_Support -> setText(Text); } // end of about.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/luckybackupwindow.cpp0000666000175000017500000020725313165410113020445 0ustar luckybluckyb/* --------------------------luckybackupwindow.cpp ----------------------------------------------------------------------------- cpp file that does all stuff needed when a signal is transmitted (eg button pressed) from the main app window =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 19 Jun 2016 =============================================================================================================================== =============================================================================================================================== */ //inluded headers --------------------------------------------------------------- #include "luckybackupwindow.h" #include #include #include #include #include "helpBrowser.h" #include "global.h" #include "winDialog.h" #include "textDialog.h" #include "about.h" #include "modifyDialog.h" #include "manage.h" #include "scheduleDialog.h" #include "emailDialog.h" helpBrowser *helpbrowser; //class luckyBackupWindow constructor============================================================================================= luckyBackupWindow::luckyBackupWindow(QMainWindow *parent) : QMainWindow(parent) { ui.setupUi(this); InitializeVariables(); //create directory ~/.luckyBackup including folders "logs", "profiles", "schedule", snaps if they do not exist for the current user QDir profiledir(profileDir), logdir(logDir), scheduledir(scheduleDir), snapdir(snapChangesDir), emptydir(snapEmptyDir); if (!profiledir.exists()) profiledir.mkpath(profileDir); if (!logdir.exists()) logdir.mkpath(logDir); if (!scheduledir.exists()) scheduledir.mkpath(scheduleDir); if (!snapdir.exists()) snapdir.mkpath(snapChangesDir); if (!emptydir.exists()) emptydir.mkpath(snapEmptyDir); //check if the EMPTY dir is empty QStringList emptyList = emptydir.entryList(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); if (emptyList.size() > 0) { QProcess *rmProcess; rmProcess = new QProcess(this); QStringList rmArgs; rmArgs << "-rvf" << snapEmptyDir; rmProcess -> start ("rm",rmArgs); rmProcess -> waitForFinished(); emptydir.mkpath(snapEmptyDir); } currentUser = myHome; if (currentUser == "/root") { currentUser = tr("super user","super user is the root user"); this -> setWindowTitle(appName + " - " + tr("super user mode")); } else { currentUser.remove("/home/"); this -> setWindowTitle(appName); } // load the user settings file. If it does not exist create it QFile settingsfile(settingsFile); if (settingsfile.exists()) loadSettings(); else saveSettings(); createActions(); //create all actions needed createToolbar(); // create tool bar createMenus(); //create the top menu retranslateUi(); //change gui to normal mode and resize it!! this -> resize(mainWindowWidth, mainWindowHeight); swapGUI("normal"); // Connections ---------------------------------------------------------------------------------------------------------- connect ( ui.pushButton_exit, SIGNAL( clicked() ), this, SLOT( exitApp() ) ); //pushbutton exit connect ( ui.actionQuit, SIGNAL(triggered()), this, SLOT(exitApp())); //menu action quit connect ( ui.comboBox_profile, SIGNAL(currentIndexChanged (const int) ), this, SLOT(profileComboChanged())); connect ( ui.actionNew, SIGNAL(triggered()), this, SLOT(NewProfile())); //menu action newProfile connect ( ui.actionRename, SIGNAL(triggered()), this, SLOT(renameCurrentProfile())); //menu action renameProfile connect ( ui.actionSave, SIGNAL(triggered()), this, SLOT(savePressed())); //menu action saveProfile connect ( ui.actionSchedule, SIGNAL( triggered() ), this, SLOT( schedule() ) ); //action schedule connect ( ui.actionEmail, SIGNAL( triggered() ), this, SLOT( email() ) ); //action email connect ( ui.actionRefresh, SIGNAL( triggered() ), this, SLOT( refreshList() ) ); //action refresh (task list) connect ( ui.actionDelete, SIGNAL( triggered() ), this, SLOT( deleteCurrentProfile() ) ); //action delete (currentProfile) connect ( ui.actionDefault, SIGNAL( triggered() ), this, SLOT( setDefaultProfile() ) ); //action default (set currentProfile as default) connect ( ui.actionImport, SIGNAL( triggered() ), this, SLOT( importProfile() ) ); //action import profile connect ( ui.actionExport, SIGNAL( triggered() ), this, SLOT( exportProfile() ) ); //action export profile connect ( ui.actionDuplicate_Profile, SIGNAL( triggered() ), this, SLOT( duplicateProfile() ) ); //action duplicate profile connect ( ui.actionDescription, SIGNAL(triggered()), this, SLOT(changeProfileDescription())); //menu action changeProfileDescription connect ( ui.action_TaskAdd, SIGNAL( triggered() ), this, SLOT( add() ) ); //action add task connect ( ui.action_TaskModify, SIGNAL( triggered() ), this, SLOT( modify() ) ); //action modify task connect ( ui.action_TaskRemove, SIGNAL( triggered() ), this, SLOT( remove() ) ); //action remove task connect ( ui.action_TaskDuplicate, SIGNAL( triggered() ), this, SLOT( duplicateTask() ) ); //action create duplicate connect ( ui.action_TaskCreateRestore, SIGNAL( triggered() ), this, SLOT( AlsoCreateRestore() ) ); //action create restore connect ( ui.action_TaskManageBackup, SIGNAL( triggered() ), this, SLOT( manage() ) ); //action manage backup connect ( ui.pushButton_add, SIGNAL (clicked() ), this, SLOT(add())); //pushbutton create (task) connect ( ui.pushButton_edit, SIGNAL (clicked() ), this, SLOT(modify())); //pushbutton modify (task) connect ( ui.pushButton_remove, SIGNAL( clicked() ), this, SLOT( remove() ) ); //pushbutton remove (task) connect ( ui.pushButton_up, SIGNAL( clicked() ), this, SLOT( moveUp() ) ); //pushbutton up connect ( ui.pushButton_down, SIGNAL( clicked() ), this, SLOT( moveDown() ) ); //pushbutton down connect ( ui.pushButton_start, SIGNAL( clicked() ), this, SLOT( start() ) ); //pushbutton start //find a way to emit a signal when spacebar is used to change the state of an item. itemChanged does not seem to work !! connect ( ui.listWidget_operations, SIGNAL( itemClicked ( QListWidgetItem*) ), this, SLOT( checkCurrentItem(QListWidgetItem *) ) ); connect ( ui.listWidget_operations, SIGNAL( itemChanged ( QListWidgetItem*) ), this, SLOT( taskStateChanged() ) ); connect (ui.pushButton_minimizeToTray, SIGNAL (clicked() ), this, SLOT(minimizeTray()));//pushbutton minimize to tray connect (ui.pushButton_previousError, SIGNAL (clicked() ), this, SLOT(previousErrorJump()));//pushbutton jump to prev error connect (ui.pushButton_nextError, SIGNAL (clicked() ), this, SLOT(nextErrorJump()));//pushbutton jump to next error connect (ui.pushButton_InfoCollapse, SIGNAL (clicked() ), this, SLOT(hideShowInfoWindow()));//pushbutton hide/show info window // Load the default profile as soon as the app starts or the one given as a command line argument if (!runImmediately) setCurrentProfile(defaultProfile); // set the defaultProfile as current int create = createCurrentProfile(); // if it does not exist create it loadCurrentProfile(); // load the current (default or not ) profile - this is inside functions.cpp // *********************TESTING purposes message boxs **************************************************************************** /*QMessageBox::information(this, "LB","CurrentProfile=" + currentProfile + "\ntotal tasks: " + countStr.setNum(TotalOperations)); QString preRelease="8"; QString preDate="09 Feb 2012"; QString tempOSrunning="";if (OS2running) tempOSrunning="OS2";if (WINrunning) tempOSrunning="windows";if (!notXnixRunning) tempOSrunning="*nix"; QMessageBox::warning(this, "luckybackup", "This is a testing version of luckyBackup
" "NOT to be used as an official release and NOT to be trusted for actual backups

" "pre-release: " + preRelease +"
version: " + appVersionString + "
date: "+preDate+ "
Operating system in use: "+tempOSrunning +"

Loukas :)");*/ // ********************* END of TESTING ****************************************************************************************** checkCurrentItem(ui.listWidget_operations -> currentItem()); //refresh the selected (last) task as well as the menu items that depend on its type (sync/backup) createProfileCombo(); // update the profile combobox with all existing profiles and set index to currentProfile InfoData.append("

" + tr("Welcome to","full phrase: 'Welcome to luckyBackup'") +" " + appName); if (notXnixRunning) InfoData.append(" :-)

"); else InfoData.append(", " + currentUser + " :-)

"); if (create == 0) InfoData.append(loadData); else InfoData.append(createData); ui.textBrowser_info -> setText(InfoData); //update the info window if (DryRun) // if --dry-run was given as an argument, check the relevant box ui.checkBox_DryRun -> setChecked(true); if (runImmediately) start(); //variable that helps with translations QString currentLanguageIs = tr("English","Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu."); } //=================================================================================================================================================== //------------ SLOTS -------------------------------------------------------------------------------------------------------------------------------- //=================================================================================================================================================== // exit ============================================================================================================================================= // Exits luckybackup. Warn if the profile used is not saved void luckyBackupWindow::exitApp() { if (NOWexecuting) //if a profile execution is in progress just minimize to tray { if (QSystemTrayIcon::isSystemTrayAvailable ()) minimizeTray(); return; } if (isProfileSaved() == 0) //if the current profile is not saved, ask the user if he/she wants to return; mainWindowWidth = this -> width(); mainWindowHeight = this -> height(); IsVisibleProfileComboToolbar = profileComboToolbar -> isVisible(); IsVisibleProfileToolbar = profileToolbar -> isVisible(); IsVisibleProfileStartToolbar = profileStartToolbar -> isVisible(); saveSettings(); QCoreApplication::exit(0); //quit } //do the same if the main window close button (or alt+F4) is pressed void luckyBackupWindow::closeEvent(QCloseEvent *event) { exitApp(); event->ignore(); } // profileComboChanged ================================================================================================================================ // SLOT to be executed when the profileCombo index changes void luckyBackupWindow::profileComboChanged() { if (GoBack) //if this function is called but shouldn't be executed. { GoBack = false; return; } InfoData = ""; if (isProfileSaved() == 0) //if the current profile is not saved, ask the user if he/she wants to return; //set the current profile according to the combobox reading QString ComboReadFullPath = profileDir + (ui.comboBox_profile -> currentText()) + ".profile"; setCurrentProfile(ComboReadFullPath); loadCurrentProfile(); // load the current profile InfoData.append(saveData + "
"); InfoData.append(loadData); ui.textBrowser_info -> setText(InfoData); //update the info window loadData=""; saveData=""; createData=""; } // lockToolbars ================================================================================================================================ // SLOT to lock the toolbars in their position void luckyBackupWindow::setToolbarAttrs() { AreToolbarsLocked = actionLockToolbars->isChecked(); profileComboToolbar -> setFloatable(!AreToolbarsLocked); profileComboToolbar -> setMovable(!AreToolbarsLocked); profileStartToolbar -> setFloatable(!AreToolbarsLocked); profileStartToolbar -> setMovable(!AreToolbarsLocked); profileToolbar -> setFloatable(!AreToolbarsLocked); profileToolbar -> setMovable(!AreToolbarsLocked); shutdownToolbar -> setVisible (false); shutdownToolbar -> setFloatable(!AreToolbarsLocked); shutdownToolbar -> setMovable(!AreToolbarsLocked); errorsToolbar -> setVisible (false); errorsToolbar -> setFloatable(!AreToolbarsLocked); errorsToolbar -> setMovable(!AreToolbarsLocked); IsVisibleToolbarText = actionVisibleToolbarText -> isChecked(); if (IsVisibleToolbarText) profileToolbar -> setToolButtonStyle(Qt::ToolButtonTextUnderIcon); else profileToolbar -> setToolButtonStyle(Qt::ToolButtonIconOnly); } // setWinPaths ================================================================================================================================ // SLOT to set rsync and ssh paths for windows void luckyBackupWindow::setWinPaths() { winDialog windialog (this); windialog.exec(); } // savePressed =============================================================================================================================== // function to execute when save pressed void luckyBackupWindow::savePressed() { InfoData = ""; saveCurrentProfile(); InfoData.append(saveData); ui.textBrowser_info -> setText(InfoData); //update the info window saveData=""; } // NewProfile ===================================================================================================================================== // Create an new, blank profile void luckyBackupWindow::NewProfile() { InfoData = ""; if (isProfileSaved() == 0) //if the current profile is not saved, ask the user if he/she wants to return; textDialog textdialog ("NewProfile", "", this); textdialog.exec(); if (textdialog.getGoOn() == 0) return; if (textdialog.getGoOn() == 2) { InfoData = tr("Failed to create new profile","full phrase: 'Failed to create new profile '")+" " + profileName + "
" + tr("The name you have entered contains only invalid characters") +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } QString newProfileName = textdialog.getUserInput(); QString newProfile = profileDir + newProfileName + ".profile"; //check if it exists and ask to replace QFile newprofile; newprofile.setFileName(newProfile); if (newprofile.exists()) //if the newprofile already exists ask to replace { message = tr("Profile","full phrase: 'Profile already exists'")+" " + newProfileName + " " + tr("already exists","full phrase: 'Profile already exists'") + "
" + tr("Would you like to replace it ?"); textDialog textdialogQ ("QtQuestion", message, this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { if (!newprofile.remove()) // delete the old profile or display a message if you can't { InfoData = "" + tr("ERROR") + "
" + tr("Failed to replace profile","full phrase: 'Failed to replace profile '")+ " " + newProfileName + "
" + profile.errorString() +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } } else return; } setCurrentProfile(newProfile); createCurrentProfile(); // try to create it (also calls createProfileCombo) loadCurrentProfile(); // load the current profile InfoData.append(createData); ui.textBrowser_info -> setText(InfoData); //update the info window loadData=""; saveData=""; createData=""; } // renameCurrentProfile ============================================================================================================================= // rename the current profile void luckyBackupWindow::renameCurrentProfile() { InfoData=""; textDialog textdialog ("RenameProfile", profileName, this); textdialog.exec(); if (textdialog.getGoOn() == 0) return; if (textdialog.getGoOn() == 2) { InfoData = tr("Failed to rename profile","full phrase: 'Failed to rename profile '")+ " " + profileName + "
" + "The name you have entered contains only invalid characters" +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } if (textdialog.getGoOn() == 3) //if the new profile name is the same with the old one do nothing { InfoData.append(tr("profile","full phrase: 'profile renamed successfully to '") + " " + profileName + "
..." + tr("renamed successfully to","full phrase: 'profile renamed successfully to '") + " " + profileName +""); ui.textBrowser_info -> setText(InfoData); //update the info window return; } QString newProfileName = textdialog.getUserInput(); QString newProfile = profileDir + newProfileName + ".profile"; //check if it exists and ask to replace QFile newprofile; newprofile.setFileName(newProfile); if (newprofile.exists()) //if the newprofile already exists ask to replace { message = tr("Profile","full phrase: 'Profile already exists'")+" " + newProfileName + " " + tr("already exists","full phrase: 'Profile already exists'") + "
" + tr("Would you like to replace it ?"); textDialog textdialogQ ("QtQuestion", message, this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { if (!newprofile.remove()) // delete the old profile or display a message if you can't { InfoData = "" + tr("ERROR") + "
" + tr("Failed to replace profile", "full phrase: 'Failed to replace profile '")+" " + newProfileName + "
" + newprofile.errorString() +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } } else return; } if (!profile.rename(newProfile)) //try to rename the current profile { InfoData = "" + tr("ERROR") + "
" + tr("Failed to rename profile", "full phrase: 'Failed to rename profile '")+" " + profileName + "
" + profile.errorString() +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } if (currentProfile == defaultProfile) { InfoData.append(tr("default profile","full phrase: 'default profile renamed successfully to '.")); defaultProfile = newProfile; saveSettings(); } else InfoData.append(tr("profile", "full phrase: 'profile renamed successfully to '")); InfoData.append(" " + profileName + "
..." + tr("renamed successfully to", "full phrase: '(default) profile renamed successfully to '") + " " + newProfileName +""); // update all relevant snap .changes as well as log files if (arrangeLogSnap(1,"rename",newProfileName)) InfoData.append("

" + tr("All relevant files (logs etc) have also been updated")); else InfoData.append("

" + tr("Failed to update all relevant files (logs etc)")); setCurrentProfile(newProfile); createProfileCombo(); // update the profile combobox with all existing profiles and set index to currentProfile loadCurrentProfile(); // load the current profile ui.textBrowser_info -> setText(InfoData); //update the info window loadData=""; saveData=""; createData=""; } // deleteProfile ====================================================================================================================================== // deletes the current profile void luckyBackupWindow::deleteCurrentProfile() { InfoData=""; if (currentProfile == defaultProfile) message = tr("Are you sure you want to delete the default profile", "full phrase: 'Are you sure you want to delete the default profile: ? (a new blank one, with the same name, will be created)'")+ ": " + profileName + " ?
(" + tr("a new blank one, with the same name, will be created", "full phrase: 'Are you sure you want to delete the default profile: ? (a new blank one, with the same name, will be created)'") +")"; else message = tr("Are you sure you want to delete profile", "full phrase: 'Are you sure you want to delete profile: ?'")+": " + profileName + " ?"; textDialog textdialogQ ("QtQuestion", message, this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { savedProfile = true; //assume the profile is saved //try to delete the profile if (!profile.remove()) { InfoData.append("" + tr("ERROR") + "
" + tr("Failed to delete profile", "full phrase: 'Failed to delete profile '")+": " + profileName + "
" + profile.errorString() +"
"); ui.textBrowser_info -> setText(InfoData); //update the info window return; } InfoData.append(tr("Profile","full phrase: 'Profile deleted successfully'") + ": " + profileName + "
..." + tr("deleted successfully","full phrase: 'Profile deleted successfully'") + " !!
"); // delete all relevant snap .changes as well as log files if (arrangeLogSnap(1,"delete",profileName)) InfoData.append("
" + tr("All relevant files (logs etc) have also been deleted") + "
"); else InfoData.append("
" + tr("Failed to delete all relevant files (logs etc)") + "
"); // Load the default profile setCurrentProfile(defaultProfile); // set the defaultProfile as current int create = createCurrentProfile(); // if it does not exist create it loadCurrentProfile(); // load the current (default) profile createProfileCombo(); // update the profile combobox with all existing profiles and set index to currentProfile if (create == 0) InfoData.append(loadData); else InfoData.append(createData); ui.textBrowser_info -> setText(InfoData); //update the info window loadData=""; saveData=""; createData=""; } } // setDefaultProfile ================================================================================================================================ // sets the current profile as default void luckyBackupWindow::setDefaultProfile() { InfoData = ""; defaultProfile = currentProfile; saveSettings(); InfoData.append(tr("Profile","full phrase: 'Profile set as default'") + ": " + profileName + "
..." + tr("set as default","full phrase: 'Profile set as default'") + " !!
"); ui.textBrowser_info -> setText(InfoData); //update the info window } // duplicateProfile ================================================================================================================================ // duplicates the current profile void luckyBackupWindow::duplicateProfile() { InfoData=""; textDialog textdialog ("RenameProfile", profileName, this); textdialog.exec(); if (textdialog.getGoOn() == 0) return; if (textdialog.getGoOn() == 2) { InfoData = tr("Failed to duplicate profile","full phrase: 'Failed to duplicate profile '")+ " " + profileName + "
" + "The name you have entered contains only invalid characters" +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } QString duplicateProfileName = textdialog.getUserInput(); QString duplicateProfile = profileDir + duplicateProfileName + ".profile"; //check if it exists and ask to replace QFile duplicateprofile; duplicateprofile.setFileName(duplicateProfile); if (duplicateprofile.exists()) //if the duplicateprofile already exists ask to replace { message = tr("Profile","full phrase: 'Profile already exists'")+" " + duplicateProfileName + " " + tr("already exists","full phrase: 'Profile already exists'") + "
" + tr("Would you like to replace it ?"); textDialog textdialogQ ("QtQuestion", message, this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { if (!duplicateprofile.remove()) // delete the old profile or display a message if you can't { InfoData = "" + tr("ERROR") + "
" + tr("Failed to replace profile", "full phrase: 'Failed to replace profile '")+" " + duplicateProfileName + "
" + duplicateprofile.errorString() +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } } else return; } if (!saveProfile(duplicateProfile)) //try to save the new (duplicate) profile { InfoData = "" + tr("ERROR") + "
" + tr("Failed to duplicate profile","full phrase: 'Failed to duplicate profile as '")+ " " + profileName + "
" +tr("as","full phrase: 'Failed to duplicate profile as '")+ " " + duplicateProfileName +"
" + profile.errorString() +""; ui.textBrowser_info -> setText(InfoData); //update the info window setCurrentProfile(currentProfile); //reset all currentProfile variables return; } InfoData.append(tr("Profile","full phrase: 'Profile duplicated successfully as '") + ": " + profileName + "
..." + tr("duplicated successfully as","full phrase: 'Profile duplicated successfully as '") + " " + duplicateProfileName +""); // duplicate all relevant snap .changes as well as log files if (arrangeLogSnap(1,"duplicate",duplicateProfileName)) InfoData.append("

" + tr("All relevant files (logs etc) have also been duplicated")); else InfoData.append("

" + tr("Failed to duplicate all relevant files (logs etc)")); setCurrentProfile(currentProfile); //reset all currentProfile variables createProfileCombo(); // update the profile combobox with all existing profiles and set index to currentProfile ui.textBrowser_info -> setText(InfoData); //update the info window loadData=""; saveData=""; createData=""; } // changeProfileDescription ================================================================================================================================ // Changes the profile description void luckyBackupWindow::changeProfileDescription() { InfoData=""; textDialog textdialog ("ProfileDescription", profileDescription, this); textdialog.exec(); if (textdialog.getGoOn() == 0) return; profileDescription = textdialog.getUserInput(); QString profileDescriptionDisplay = profileDescription; profileDescriptionDisplay.replace("\n","
"); InfoData.append(tr("The description of profile","full phrase: 'The description of profile set to: '") + " " + profileName + " " + tr("set to","full phrase: 'The description of profile set to: '") + ":
" + profileDescriptionDisplay); ui.textBrowser_info -> setText(InfoData); //update the info window savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } // duplicateTask ================================================================================================================================ // duplicates the current task (creates a new task - same as selected - and opens modify dialog) void luckyBackupWindow::duplicateTask() { modifyOK = false; modifyConnected = false; newTaskThisIs = true; currentOperation = ui.listWidget_operations -> currentRow(); //current task list row number if (currentOperation < 0) //if nothing is selected do nothing { InfoData = tr("Please select a task to duplicate first") + " !!"; ui.textBrowser_info -> setText(InfoData); return; } int oldCurrentOperation = currentOperation; TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size if ( (TotalOperations) >= (maxOperations-1) ) //if the maxOperations limit-1 is reached { textDialog textdialogW ("QtWarning", tr("You have reached the maximum limit of supported tasks")+"

" + tr("You have to remove a task if you wish to add another !!"), this); textdialogW.exec(); return; } currentOperation = TotalOperations; //Create a new array item identical to the one just created operation *tempOp = new operation; *tempOp = *Operation[oldCurrentOperation]; Operation[currentOperation] = tempOp; // Reset the last execution time/errors & clear its snapshots list QDateTime newTime; // empty time variable Operation[currentOperation] -> SetLastExecutionTime (newTime); Operation[currentOperation] -> SetLastExecutionErrors (-1); Operation[currentOperation] -> ClearSnapshotsList(); //Change the task name and remove any RESTORE connections Operation[currentOperation] -> SetName ((Operation[currentOperation] -> GetName()) + " DUPLICATE"); Operation[currentOperation] -> SetConnectRestore(""); //add a new item in the operations list ui.listWidget_operations -> addItem( Operation[currentOperation] -> GetName() ); ui.listWidget_operations -> setCurrentRow(currentOperation); ui.listWidget_operations -> currentItem() -> setCheckState(Qt::Unchecked); TotalOperations = ui.listWidget_operations -> count(); //set the TotalOperations to what it is now saveOrNot=false; modify(); //open the modify dialog for the new task, false == do not save the result saveOrNot = true; if (modifyOK) { savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } else { //remove already created DUPLICATE TASK from operations list ui.listWidget_operations -> takeItem(currentOperation); //take out the selected item from the list TotalOperations = ui.listWidget_operations -> count(); //TotalOperations takes the new value (old - 1) } } // AlsoCreateRestore ================================================================================================================================ //create another operation for RESTORE void luckyBackupWindow::AlsoCreateRestore() { newTaskThisIs = true; int oldCurrentOperation = ui.listWidget_operations -> currentRow(); //current task list row number; if (oldCurrentOperation < 0) //if nothing is selected do nothing { InfoData = tr("Please select a task first") + " !!"; ui.textBrowser_info -> setText(InfoData); return; } TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size if ( (TotalOperations) >= (maxOperations-1) ) //if the maxOperations limit-1 is reached { textDialog textdialogW ("QtWarning", tr("You have reached the maximum limit of supported tasks")+"

" + tr("You have to remove a task if you wish to add another !!"), this); textdialogW.exec(); return; } currentOperation = TotalOperations; //Create a new array item identical to the one just created operation *tempOp = new operation; *tempOp = *Operation[oldCurrentOperation]; Operation[currentOperation] = tempOp; // Reset the last execution time/errors & clear its snapshots list QDateTime newTime; // empty time variable Operation[currentOperation] -> SetLastExecutionTime (newTime); Operation[currentOperation] -> SetLastExecutionErrors (-1); Operation[currentOperation] -> ClearSnapshotsList(); //Change its name, source, destination, update checkbox, Remote Host radiobuttons Operation[currentOperation] -> SetName ("RESTORE - " + (Operation[currentOperation] -> GetName())); Operation[currentOperation] -> SetOptionsUpdate(false); Operation[currentOperation] -> SetOptionsDelete(false); Operation[currentOperation] -> SetKeepSnapshots(1); Operation[currentOperation] -> SetRemoteDestination(Operation[oldCurrentOperation]-> GetRemoteSource()); Operation[currentOperation] -> SetRemoteSource(Operation[oldCurrentOperation]-> GetRemoteDestination()); QString sourceDir = Operation[oldCurrentOperation] -> GetDestination(); QString destDir = Operation[oldCurrentOperation] -> GetSource(); if (Operation[currentOperation] -> GetTypeDirName()) { if (WINrunning && Operation[currentOperation] -> GetRemote()) { sourceDir.append(destDir.right(destDir.size() - destDir.lastIndexOf(XnixSLASH) - 1)); destDir.chop(destDir.size() - destDir.lastIndexOf(XnixSLASH) - 1); } else { sourceDir.append(destDir.right(destDir.size() - destDir.lastIndexOf(SLASH) - 1)); destDir.chop(destDir.size() - destDir.lastIndexOf(SLASH) - 1); } } Operation[currentOperation] -> SetSource (sourceDir); Operation[currentOperation] -> SetDestination (destDir); //add a new item in the operations list ui.listWidget_operations -> addItem( Operation[currentOperation] -> GetName() ); ui.listWidget_operations -> setCurrentRow(currentOperation); ui.listWidget_operations -> currentItem() -> setCheckState(Qt::Unchecked); TotalOperations = ui.listWidget_operations -> count(); //set the TotalOperations to what it is now textDialog textdialogW ("QtWarning", tr("You have asked for a RESTORE task to be created","'create restore' message line 1/4")+"

"+ tr("Please have a good look at the following task properties dialog","'create restore' message line 2/4")+"
"+ tr("and change anything you wish before proceeding","'create restore' message line 3/4")+"

"+ tr("Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced)","'create restore' message line 4/4")+"
", this); textdialogW.exec(); modifyConnected = true; saveOrNot = false; modify(); //open the modify dialog for the new operation to make sure everything is ok, false == do not save the result saveOrNot = true; if (modifyOK) //connect the operation with its RESTORE duplicate { Operation[currentOperation] -> SetConnectRestore(Operation[oldCurrentOperation] -> GetName()); Operation[oldCurrentOperation] -> SetConnectRestore(Operation[currentOperation] -> GetName()); savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } else { //remove already created RESTORE operation from operations list ui.listWidget_operations -> takeItem(currentOperation); //take out the selected item from the list TotalOperations = ui.listWidget_operations -> count(); //TotalOperations takes the new value (old - 1) } } // exportProfile ================================================================================================================================ // exports the current profile to another location void luckyBackupWindow::exportProfile() { InfoData = ""; // Display a save dialog for a directory to export the profile to QString exportProfileName = QFileDialog::getExistingDirectory(this, appName + " - " + tr("Select export directory","this is a dialog title for selecting a directory to export a profile to"), SLASH, QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks) + SLASH + profileName; if ( exportProfileName == "") //if cancel is pressed at the file dialog, do nothing return; // put the ".profile" extension if its not there if (!exportProfileName.endsWith(".profile", Qt::CaseInsensitive)) exportProfileName.append(".profile" + SLASH); if (!exportFullProfile(exportProfileName,"ExportFullProfile")) //try to save/export the new profile { InfoData = "" + tr("ERROR") + "
" + tr("Failed to export profile","full phrase: 'Failed to export profile to '")+ " " + profileName + "
" +tr("to","full phrase: 'Failed to export profile to '")+ " " + exportProfileName +""; ui.textBrowser_info -> setText(InfoData); //update the info window setCurrentProfile(currentProfile); //reset all currentProfile variables return; } InfoData.append(tr("Profile","full phrase: 'Profile exported successfully to '") + ": " + profileName + "
..." + tr("exported successfully to","full phrase: 'Profile exported successfully to '") + " " + exportProfileName +""); ui.textBrowser_info -> setText(InfoData); //update the info window setCurrentProfile(currentProfile); //reset all currentProfile variables createProfileCombo(); // update the profile combobox (in case profile was exported at ~/.luckyBackup/profiles) and set index to currentProfile } // importProfile ================================================================================================================================ // imports a profile (+logs +snaps) to the profile directory void luckyBackupWindow::importProfile() { InfoData = ""; // This holds the full path of the profile to get imported directory (eg /media/exported/default.profile) QString importProfilePath = QFileDialog::getExistingDirectory(this, appName + " - " + tr("Import Profile","this is a dialog title"), SLASH, QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); if ( importProfilePath == "") //if cancel is pressed at the file dialog, do nothing return; // check if the directory selected by the user contains valid profile data QDir importprofile; importprofile.setPath(importProfilePath); QStringList dirsToFilter; dirsToFilter << "profiles" << "logs" <<"snaps"; QStringList importPprofileContents = importprofile.entryList(dirsToFilter,QDir::AllDirs,QDir::NoSort); if (!importPprofileContents.contains("profiles")) // check if there exists a "profile" dir { InfoData = tr("Failed to import profile","full phrase: 'Failed to import profile '")+ " " + importProfilePath + "
" + tr("The directory you have selected does not contain valid profile data") +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } // Check if the profile to import already exists QString newProfileName = importProfilePath; // newProfileName holds the final name of the profile that is going to get imported (eg "default2") newProfileName = newProfileName.right(newProfileName.size() - newProfileName.lastIndexOf(SLASH) - 1); if (newProfileName.endsWith(".profile")) newProfileName.chop(8); QString importProfileName = newProfileName; //This holds the name of the profile to import (eg "default") //newProfile holds the final full path of the .profile file (eg ~/.luckyBackup/profiles/default2.profile) QString newProfile = profileDir + newProfileName + ".profile"; QFile newprofile; newprofile.setFileName(newProfile); while (newprofile.exists()) //if the newprofile already exists ask to rename or cancel { textDialog textdialog ("ImportProfile", newProfileName,this); textdialog.exec(); newProfileName = textdialog.getUserInput(); if (textdialog.getGoOn() == 0) return; if (textdialog.getGoOn() == 2) { InfoData = tr("Failed to import profile","full phrase: 'Failed to import profile '")+ " " + importProfileName + "
" + tr("The name you have entered contains only invalid characters") +""; ui.textBrowser_info -> setText(InfoData); //update the info window return; } newProfile = profileDir + newProfileName + ".profile"; newprofile.setFileName(newProfile); } int ExitCodeImportProfile = importFullProfile(importProfilePath,newProfileName); //QMessageBox::information(this, "LB","Exit code=" + countStr.setNum(ExitCodeImportProfile)); // TESTING // if ExitCodeImportProfile != 1 if ( (ExitCodeImportProfile == 0) || (ExitCodeImportProfile == 30) || (ExitCodeImportProfile == 20) || (ExitCodeImportProfile == 10) ) { createProfileCombo(); InfoData.append(tr("Profile", "full phrase: 'Profile imported successfully as and added at the profile list'") + ": " + importProfileName + "
..." + tr("imported successfully", "full phrase: 'Profile imported successfully as and added at the profile list'") + " " + tr("as","full phrase: 'Profile imported successfully as and added at the profile list'") + " " + newProfileName + "
" + tr("and added at the profile list", "full phrase: 'Profile imported successfully as and added at the profile list'") + ""); if (ExitCodeImportProfile == 30) InfoData.append("
" + tr("Errors occurred during snapshots and logfiles transfer") +""); if (ExitCodeImportProfile == 20) InfoData.append("
" + tr("Errors occurred during snapshots transfer") +""); if (ExitCodeImportProfile == 10) InfoData.append("
" + tr("Errors occurred during logfiles transfer") +""); } else // ExitCodeImportProfile == 1 InfoData = tr("Failed to import profile","full phrase: 'Failed to import profile '")+" " + importProfileName + "
" +tr("Errors occurred during the profile file transfer") +""; ui.textBrowser_info -> setText(InfoData); //update the info window } // setLanguage ===================================================================================================================================== // changes the language of the application void luckyBackupWindow::setLanguage(QAction *action) { QString currentLocale = action -> data().toString(); transDir.setPath(relativeTransDir); QStringList transContQm = transDir.entryList ( QStringList("luckybackup*.qm"), QDir::Files, QDir::NoSort); // list of .qm files inside transdir if ( (transDir.exists()) && (!transContQm.isEmpty()) ) appTranslator.load(QString("luckybackup_") + currentLocale, relativeTransDir); else appTranslator.load(QString("luckybackup_") + currentLocale, systemTransDir); translator_qt.load(QString("qt_") + currentLocale, QLibraryInfo::location(QLibraryInfo::TranslationsPath)); defaultLanguage = currentLocale; retranslateUi(); } // hideShowInfoWindow =============================================================================================================================== // Shows / hides the information window void luckyBackupWindow::hideShowInfoWindow() { IsVisibleInfoWindow = !(ui.pushButton_InfoCollapse -> isChecked()); if (IsVisibleInfoWindow) { ui.pushButton_InfoCollapse -> setToolTip(tr("Hide information window","hide/show information window button tooltip")); ui.pushButton_InfoCollapse -> setIcon(QIcon(":/luckyPrefix/collapse.png")); if (guiModeNormal) ui.textBrowser_info -> setVisible (true); else ui.nowDoing -> setVisible (true); } else { ui.pushButton_InfoCollapse -> setToolTip(tr("Show information window","hide/show information window button tooltip")); ui.pushButton_InfoCollapse -> setIcon(QIcon(":/luckyPrefix/collapseUP.png")); if (guiModeNormal) ui.textBrowser_info -> setVisible (false); else ui.nowDoing -> setVisible (false); } } // help ============================================================================================================================================= // Shows the "help" information window // This is a modeless dialog so that users can interact with it together with the main app void luckyBackupWindow::help() { if (helpURL.toString() == "Does_not_exist") { InfoData = "" + tr("ERROR") + "
" + tr("Could not locate the file","full phrase: 'Could not locate the file '")+": " + relativeManual +"
:-("; ui.textBrowser_info -> setText(InfoData); //update the info window return; } if (!helpbrowser) helpbrowser = new helpBrowser (helpURL); if (helpbrowser->isHidden()) helpbrowser -> show(); helpbrowser -> scrollToChapter(manualChapter); // The manualChapter variable will scroll to the relevant chapter helpbrowser -> raise(); helpbrowser -> activateWindow(); } // about ============================================================================================================================================ // Shows the "about" information window void luckyBackupWindow::about() { aboutDialog aboutdialog(licenseURL); aboutdialog.exec(); } // add ============================================================================================================================================= // Creates a new operation by calling the modifyDialog void luckyBackupWindow::add() { modifyOK = false; modifyConnected = false; newTaskThisIs = true; TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size currentOperation = TotalOperations; if ( (TotalOperations) >= (maxOperations-1) ) //if the maxOperations limit-1 is reached { textDialog textdialogW ("QtWarning", tr("You have reached the maximum limit of supported tasks")+"

" + tr("You have to remove a task if you wish to add another !!"), this); textdialogW.exec(); return; } //open the modify dialog and create "Operation array" item at position currentOperation modifyDialog modifydialog(currentOperation); modifydialog.exec(); if (modifyOK) //if all went ok - add new operation { //add a new item in the operations list ui.listWidget_operations -> addItem( Operation[currentOperation] -> GetName() ); ui.listWidget_operations -> setCurrentRow(currentOperation); ui.listWidget_operations -> currentItem() -> setCheckState(Qt::Unchecked); checkCurrentItem(ui.listWidget_operations -> currentItem()); TotalOperations = ui.listWidget_operations -> count(); //set the TotalOperations to what it is now savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } } // modify ========================================================================================================================================== // Modifies an existing operation by calling the modifyDialog // Will also save the profile according to saveOrNot void luckyBackupWindow::modify() { modifyOK = false; newTaskThisIs = false; currentOperation = ui.listWidget_operations -> currentRow(); //current operations list row number if (currentOperation < 0) //if nothing is selected do nothing { InfoData = tr("Please select a task to modify first") + " !!"; ui.textBrowser_info -> setText(InfoData); return; } QString tempConnect = Operation[currentOperation] -> GetConnectRestore(); if ( (tempConnect != "") && (!modifyConnected) ) //the operations is connected and is a not new RESTORE operation modifyConnected = true; int connectPosition=0; if (tempConnect != "") //if this op is already connected with another op, (pop up a message & )hold the connection's position { count=0; while (countGetName()==tempConnect) connectPosition=count; count++; } } QString oldTaskName = Operation[currentOperation] -> GetName(); // the original task name wil become handy in case it changes //open the modify dialog and modify "Operation array" item at position currentOperation modifyDialog modifydialog(currentOperation); modifydialog.exec(); if (modifyOK) //if all went ok - modify existing operation { Qt::CheckState isIncluded = ui.listWidget_operations -> currentItem() -> checkState(); //get the include checkbox state QString newTaskName = Operation[currentOperation] -> GetName(); // the new task name ui.listWidget_operations -> takeItem(currentOperation); //take out the selected item from the list //insert a new one at the same position with the new name ui.listWidget_operations -> insertItem(currentOperation, newTaskName); ui.listWidget_operations -> setCurrentRow(currentOperation); //highlight this row ui.listWidget_operations -> currentItem() -> setCheckState(isIncluded); //set the include checkbox as it was Operation[currentOperation] -> SetConnectRestore(tempConnect); //set the connection to what it was if (tempConnect != "") Operation[connectPosition]->SetConnectRestore(newTaskName); checkCurrentItem(ui.listWidget_operations -> currentItem()); // update all relevant snap .changes as well as log files if the task name changes if (newTaskName != oldTaskName) arrangeLogSnap(0,"rename",oldTaskName); if (saveOrNot) // also save the current profile if saveOrNot is true saveCurrentProfile(); } } // remove =========================================================================================================================================== // Removes highlighted operation from available list void luckyBackupWindow::remove() { currentOperation = ui.listWidget_operations -> currentRow(); //current Included list row number if (currentOperation < 0) //if nothing is selected do nothing { InfoData = tr("Please select a task to remove first") + " !!"; ui.textBrowser_info -> setText(InfoData); return; } QString tempConnect = Operation[currentOperation] -> GetConnectRestore(); QString oldTaskName = Operation[currentOperation] -> GetName(); // the original task name wil become handy in case it changes textDialog textdialogQ ("QtQuestion", tr("Are you sure you want to remove the following task ??")+"
" + (ui.listWidget_operations -> currentItem()) -> text(), this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { textDialog textdialogQ2 ("QtQuestion", tr("Would you like to also remove:")+"
" + tempConnect+"
??", this); if (tempConnect != "") //if this op is already connected with another op ask to remove that too textdialogQ2.exec(); //remove current operation ui.listWidget_operations -> takeItem(currentOperation); //take out the selected item from the list TotalOperations = ui.listWidget_operations -> count(); //TotalOperations takes the new value (old - 1) while (currentOperation < TotalOperations) //shift array "Operation" one position up starting at current row { Operation[currentOperation]=Operation[currentOperation+1]; //make the current array item the same with the next one currentOperation ++; } if (tempConnect != "") { currentOperation=0; while (currentOperation < TotalOperations) { if (Operation[currentOperation]->GetName()==tempConnect) { if (textdialogQ2.getGoOn() > 0) //remove current (conected) operation { ui.listWidget_operations -> takeItem(currentOperation); TotalOperations = ui.listWidget_operations -> count(); while (currentOperation < TotalOperations) { Operation[currentOperation]=Operation[currentOperation+1]; currentOperation ++; } } else //just remove the connection Operation[currentOperation]->SetConnectRestore(""); break; } currentOperation ++; } } savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); // add the deleted yask name to this list to be used when profile is saved deletedTaskNames << oldTaskName; } } // manage ========================================================================================================================================== // Manage existing backups of an existing operation by calling the manageDialog void luckyBackupWindow::manage() { currentOperation = ui.listWidget_operations -> currentRow(); //current Included list row number if (currentOperation < 0) //if nothing is selected do nothing { InfoData = tr("Please select a task to manage first") + " !!"; ui.textBrowser_info -> setText(InfoData); return; } manageDialog managedialog; managedialog.exec(); checkCurrentItem(ui.listWidget_operations -> currentItem()); //refresh the selected task saveCurrentProfile(); // save the profile if any snapshots have been deleted // refreshList(); //refresh the listWidget_operations } // moveUp =========================================================================================================================================== // Moves highlighted operation one position up in the available list void luckyBackupWindow::moveUp() { currentOperation = ui.listWidget_operations -> currentRow(); //current list row number TotalOperations = ui.listWidget_operations -> count(); //total number of list items if ( currentOperation < 0 ) //if nothing is selected return; if ( currentOperation > 0 ) { operation *tempOp; //temp operation to use for swaping tempOp = Operation[currentOperation]; //swap array items Operation[currentOperation] = Operation [currentOperation-1]; Operation[currentOperation-1] = tempOp; QListWidgetItem * currentItem = ui.listWidget_operations -> takeItem(currentOperation); //swap list items ui.listWidget_operations -> insertItem(currentOperation - 1, currentItem); ui.listWidget_operations -> setCurrentRow(currentOperation - 1); savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } } // moveDown ========================================================================================================================================= // Moves highlighted operation one position down in the available list void luckyBackupWindow::moveDown() { currentOperation = ui.listWidget_operations -> currentRow(); //current list row number TotalOperations = ui.listWidget_operations -> count(); //total number of list items if ( currentOperation < 0 ) //if nothing is selected return; if (currentOperation < (TotalOperations-1)) { operation *tempOp; //temp operation to use for swaping tempOp = Operation[currentOperation]; //swap array Operation[currentOperation] = Operation [currentOperation+1]; Operation[currentOperation+1] = tempOp; QListWidgetItem * currentItem = ui.listWidget_operations -> takeItem(currentOperation); //swap list items ui.listWidget_operations -> insertItem(currentOperation + 1, currentItem); ui.listWidget_operations -> setCurrentRow(currentOperation + 1); savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } } // start ============================================================================================================================================ //start the execution of operations void luckyBackupWindow::start() { TotalOperations = ui.listWidget_operations -> count(); //set TotalOperations to what it is now if (!checkOperationList()) //check the Operations list for "errors" (eg nothing is included or the list is empty) return; checkDeclared(); //Check if the declared data are ok by calling checkBackupDirs, checkSyncDirs accordingly if (NothingToDo == true) //if there is nothing to Do anyway then just display a message { InfoData = "" + tr("ERROR") + "
" + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
" + tr("You have only included tasks that are going to be skipped") + "
" + "..." + tr("nothing to do") +" !!"; ui.textBrowser_info -> setText(InfoData); return; } DryRun = ui.checkBox_DryRun -> isChecked(); //set bool Dryrun according to checkbox executeNOW(); } // schedule========================================================================================================================================== // Displays a new dialog to make a cron job for included operations void luckyBackupWindow::schedule() { scheduleDialog scheduledialog; scheduledialog.exec(); if (crontabUpdated) InfoData = tr("current crontab updated successfully") + ""; ui.textBrowser_info -> setText(InfoData); crontabUpdated = false; //this is set true each time the crontab is update } // email========================================================================================================================================== // Displays a new dialog to email report after a profile execution void luckyBackupWindow::email() { emailDialog emaildialog; emaildialog.exec(); if (emaildialog.getGoOn() == 0) // everything went ok { InfoData = tr("Email preferences have been updated successfully") + ""; ui.textBrowser_info -> setText(InfoData); savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } } // taskStateChanged ================================================================================================================================= // Sets the profile state to unsaved if a task checkbox is changed void luckyBackupWindow::taskStateChanged() { //theory (due to connections at luckybackwindow constructor): //when an item is just clicked functions called: checkCurrentItem -> taskStateChanged //when a checkbox state changes functiond called: taskStateChanged -> checkCurrentItem -> taskStateChanged //when a checkbox state changes not by clicking but with SPACEBAR, only taskStateChanged is called !! if (!taskChanged) { if (taskClicked) taskClicked = false; else taskChanged = true; return; } if ( (taskChanged) && (taskClicked) ) { savedProfile = false; //change profile status to "unsaved" ui.actionSave -> setEnabled(true); } taskClicked = false; taskChanged = false; } // checkCurrentItem ================================================================================================================================= // Checks the currently selected operation (if checked) for validity void luckyBackupWindow::checkCurrentItem(QListWidgetItem *thisIsTheCurrentItem) { taskClicked = true; //this is used at taskStateChanged() to determine if a task state is changed InfoData=""; CheckedData = ""; // use this because when a checkbox state changes and another item is selected, it remains this way. The checked one does not become selected !! ui.listWidget_operations -> setCurrentItem(thisIsTheCurrentItem); currentOperation = ui.listWidget_operations -> currentRow(); if (currentOperation < 0) // to avoid segfault when nothing selected return; //first set variables source & dest QString source, dest; source = Operation[currentOperation] -> GetSource(); dest = Operation[currentOperation] -> GetDestination(); if (Operation[currentOperation] -> GetTypeSync()) //if the operation is of type "sync dirs' { ui.action_TaskCreateRestore -> setEnabled(false); //grey out the "create restore task" from menu ui.action_TaskManageBackup -> setText(tr("Manage Task","This is a top 'Task' menu action")); ui.action_TaskManageBackup -> setToolTip(tr("display information regarding highlighted task", "This is a top 'Task' menu action tooltip")); } else { ui.action_TaskCreateRestore -> setEnabled(true); ui.action_TaskManageBackup -> setText(tr("Manage &Backup","This is a top 'Task' menu action")); ui.action_TaskManageBackup -> setToolTip(tr("display - restore - delete existing backups of highlighted task", "This is a top 'Task' menu action tooltip")); } if (ui.listWidget_operations -> currentItem() -> checkState() == Qt::Unchecked) //if the operation is " NOT included" do not check it { ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/about.png")); CheckedData.append(tr("status") + ": "+tr("NOT INCLUDED")+"
"); CheckedData.append(tr("Checks are disabled. This task will be skipped")); ui.textBrowser_info -> setText(CheckedData); Operation[currentOperation] -> SetIncluded(false); // also set its include state to false return; } Operation[currentOperation] -> SetIncluded(true); // also set its include state to true if ( (Operation[currentOperation] -> GetTypeDirContents()) || (Operation[currentOperation] -> GetTypeDirName()) ) checkBackupDirs(source,dest); //if the operation is of type "backup dir ...' if (Operation[currentOperation] -> GetTypeSync()) //if the operation is of type "sync dirs' checkSyncDirs(source,dest); if (Operation[currentOperation] -> GetOK()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/okay.png")); if (Operation[currentOperation] -> GetWARNING()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); if (Operation[currentOperation] -> GetCRITICAL()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/warning.png")); if (Operation[currentOperation] -> GetSourcePerms()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); if (Operation[currentOperation] -> GetDestPerms()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); ui.textBrowser_info -> setText(CheckedData); } // refreshList ====================================================================================================================================== // refreshes the task list and the profile combobox when button refresh clicked void luckyBackupWindow::refreshList() { TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size checkDeclared(); // Check tasks & set icons createProfileCombo(); // update the profile combobox with all existing profiles and set index to currentProfile InfoData = tr("Task list of profile","full phrase: 'Task list of profile and 'profile' drop-down list refreshed'") + " " + profileName + "
" + tr("and 'profile' drop-down list","full phrase: 'Task list of profile and 'profile' drop-down list refreshed'") + "
..." + tr("refreshed", "full phrase: 'Task list of profile and 'profile' drop-down list refreshed'") + " !!"; ui.textBrowser_info -> setText(InfoData); } //=================================================================================================================================================== //end of luckybackupwindow.cpp luckybackup-0.5.0/src/functions.cpp0000666000175000017500000015214613367055262016726 0ustar luckybluckyb/* ---------------------------------- functions.cpp --------------------------------------------------------------------------- file containing all functions for luckybackupwindow =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include #include #include "global.h" #include "luckybackupwindow.h" #include "operationClass.h" #include "textDialog.h" // InitializeVariables ============================================================================================================================= // variables initialization void luckyBackupWindow::InitializeVariables() { TotalOperations = 0; currentOperation=-1; NOWexecuting = false; guiModeNormal = true; modifyOK = false; savedProfile = true; taskClicked = false; taskChanged = false; GoBack = false; InfoData = ""; InfoInt = 0; defaultLanguage = "en"; mainWindowWidth = 615; mainWindowHeight = 500; AreToolbarsLocked = true; IsVisibleProfileComboToolbar = true; IsVisibleProfileToolbar = true; IsVisibleProfileStartToolbar = true; IsVisibleToolbarText = false; IsVisibleInfoWindow = true; validation = false; deletedTaskNames.clear(); saveOrNot = true; manualChapter = ""; showOnlyErrors = false; // Running desktop environment // kde char *isKDE = getenv("KDE_FULL_SESSION"); if (QString(isKDE) != "") KDErunning = true; else KDErunning = false; // if LB is run using kdesu the environmental variable does not work // so we will check if kdesud is running as a process... // It is commented because the super use cannot use eg the tray notification anyway, so he/she will use the qt stuff /*if (currentUser == "super user") { QProcess *kdesuProcess; kdesuProcess = new QProcess(this); QStringList kdesuArgs; kdesuArgs << "-c" << "ps aux | grep kdesud"; kdesuProcess -> start ("/bin/sh",kdesuArgs); kdesuProcess -> waitForFinished(); if (kdesuProcess -> exitCode() == 0) // there is a root process "kdesu_stub running KDErunning = true; }*/ // gnome char *isGnome = getenv("DESKTOP_SESSION"); if ((QString(isGnome) == "gnome") || (QString(isGnome) == "GNOME")) GNOMErunning = true; else GNOMErunning = true; // translations -------------------------------- TransDir = ""; transDir.setPath(relativeTransDir); QStringList transContQm = transDir.entryList ( QStringList("luckybackup*.qm"), QDir::Files, QDir::NoSort); // list of .qm files inside transdir if ( (transDir.exists()) && (!transContQm.isEmpty()) ) TransDir = transDir.absolutePath(); else { transDir.setPath(systemTransDir); TransDir = transDir.absolutePath(); } // manual actual path (QUrl helpURL) -------------------------------- helpURL.setScheme("file"); helpURL.setUrl("Does_not_exist"); QFile manual; manual.setFileName(suseManual); if (manual.exists()) //if the manual is located in /usr/share/doc/packages/luckybackup (normal installation) - openSuse helpURL.setUrl(suseManual); manual.setFileName(systemManual); if (manual.exists()) //if the manual is located in /usr/share/doc/luckybackup (normal installation) helpURL.setUrl(systemManual); manual.setFileName(relativeManual); if (manual.exists()) //if the manual is located in relative path manual/ (app run from commandline) helpURL.setUrl(QApplication::applicationDirPath() + SLASH + relativeManual); // licence actual path (QUrllicenseURL) -------------------------------------------------------- licenseURL.setScheme("file"); licenseURL.setUrl("Does_not_exist"); QFile license; license.setFileName(debianLicense); if (license.exists()) //if the licence file is located in the normal debian directory licenseURL.setUrl(debianLicense); license.setFileName(suseLicense); if (license.exists()) //if the licence file is located in the normal suse directory licenseURL.setUrl(suseLicense); license.setFileName(systemLicense); if (license.exists()) //if the licence file is located in the normal installation directory licenseURL.setUrl(systemLicense); license.setFileName(relativeLicense); if (license.exists()) //if the licence file is located in the same directory (compile directory) licenseURL.setUrl(relativeLicense); // fix OS/2 & win compatibility issues if (notXnixRunning) { licenseURL.setUrl("Does_not_exist"); helpURL.setUrl("Does_not_exist"); QString OS2manual = relativeManual; OS2manual.replace("/",SLASH); OS2manual = OS2manual.toLower(); QString OS2license = relativeLicense; OS2license.replace("/",SLASH); OS2license= OS2license.toLower(); manual.setFileName(OS2manual); license.setFileName(OS2license); if (manual.exists()) helpURL.setUrl(OS2manual); if (license.exists()) licenseURL.setUrl(OS2license); myHome.replace("/",SLASH); luckyBackupDir.replace("/",SLASH); settingsFile.replace("/",SLASH); profileDir.replace("/",SLASH); defaultProfile.replace("/",SLASH); defaultProfile.replace("/",SLASH); standardDefaultProfile.replace("/",SLASH); logDir.replace("/",SLASH); logfilename.replace("/",SLASH); snapDefaultDir.replace("/",SLASH); snapChangesDir.replace("/",SLASH); snapEmptyDir.replace("/",SLASH); snapchangesfilename.replace("/",SLASH); scheduleDir.replace("/",SLASH); schedulefilename.replace("/",SLASH); cronfilename.replace("/",SLASH); relativeTransDir.replace("/",SLASH); systemTransDir.replace("/",SLASH); } } // retranslateUi =================================================================================================================================== // retranslate the ui every time the user chooses a different language from the menu void luckyBackupWindow::retranslateUi() { ui.menuFile -> setTitle(tr("&Profile","This is a top menu item")); ui.actionRefresh -> setText(tr("&Refresh","This is a top 'Profile' menu action")); ui.actionDefault -> setText(tr("De&fault","This is a top 'Profile' menu action")); ui.actionDefault -> setToolTip(tr("Set as Default","This is a top 'Profile' menu action tooltip")); ui.actionDescription -> setText(tr("&View/Edit Description","This is a top 'Profile' menu action")); ui.actionDescription -> setToolTip(tr("View/Edit the profile description","This is a top 'Profile' menu action tooltip")); ui.actionRename -> setText(tr("R&ename","This is a top 'Profile' menu action")); ui.actionDelete -> setText(tr("&Delete","This is a top 'Profile' menu action")); ui.actionNew -> setText(tr("&New","This is a top 'Profile' menu action")); ui.actionSave -> setText(tr("&Save","This is a top 'Profile' menu action")); ui.actionExport -> setText(tr("E&xport","This is a top 'Profile' menu action")); ui.actionImport -> setText(tr("&Import","This is a top 'Profile' menu action")); ui.actionSchedule -> setText(tr("S&chedule","This is a top 'Profile' menu action")); ui.actionEmail -> setText(tr("E&mail","This is a top 'Profile' menu action")); ui.actionEmail -> setToolTip(tr("Email report after profile execution","This is a top 'Profile' menu action tooltip")); ui.actionQuit -> setText(tr("&Quit","This is a top 'Profile' menu action")); ui.actionDuplicate_Profile -> setText(tr("D&uplicate","This is a top 'Profile' menu action")); ui.menu_Task -> setTitle(tr("&Task","This is a top menu action")); ui.action_TaskAdd -> setText(tr("&Add","This is a top 'Task' menu action")); ui.action_TaskRemove -> setText(tr("&Remove","This is a top 'Task' menu action")); ui.action_TaskModify -> setText(tr("&Modify","This is a top 'Task' menu action")); ui.action_TaskDuplicate -> setText(tr("Create D&uplicate task","This is a top 'Task' menu action")); ui.action_TaskCreateRestore -> setText(tr("Create R&estore task","This is a top 'Task' menu action")); ui.action_TaskManageBackup -> setText(tr("Manage &Backup","This is a top 'Task' menu action")); ui.action_TaskManageBackup -> setToolTip(tr("display - restore - delete existing backups of highlighted task", "This is a top 'Task' menu action tooltip")); settingsMenu -> setTitle(tr("&Settings","This is a top menu item")); visibleProfileToolbar-> setText(tr("Actions","This is a top menu action")); visibleProfileComboToolbar -> setText(tr("Current Profile","This is a top menu action")); actionLockToolbars -> setText(tr("Lock","This is a top menu action. Refers to toolbars")); actionVisibleToolbarText -> setText(tr("Show text under icons","This is a top menu action")); languageMenu -> setTitle(tr("&Language","This is a top menu item")); toolbarsMenu -> setTitle(tr("&Toolbars","This is a top menu item")); if (WINrunning) { actionSetWinPaths -> setText(tr("Set paths","This is a top menu action")); actionSetWinPaths -> setToolTip(tr("Set paths for rsync and ssh commands","This is a top menu action tooltip")); } helpMenu -> setTitle(tr("&Help","This is a top menu item")); actionHelp -> setText(appName + " " + tr("&Handbook","full phrase: 'luckyBackup Handbook'")); actionAbout -> setText(tr("&About","full phrase: 'about luckyBackup'") + " " + appName); ui.comboBox_profile -> setToolTip(tr("current profile")); ui.label_TaskList -> setText(tr("Task list","task list label")); ui.label_include -> setText(tr("include","label of 'include' checkboxes")); ui.frame_operations -> setToolTip(tr("List of all the available tasks","task list tooltip - line1")+"\n"+ tr("Use the 'include checkboxes' to include or not a selected task","task list tooltip - line2")); ui.pushButton_up -> setToolTip(tr("Move the highlighted task up, by one position","button tooltip")); ui.pushButton_down -> setToolTip(tr("Move the highlighted task down, by one position","button tooltip")); ui.pushButton_nextError -> setToolTip(tr("jump to next error","button tooltip")); ui.pushButton_previousError -> setToolTip(tr("jump to previous error","button tooltip")); ui.checkBox_onlyShowErrors -> setText (tr("quiet mode")); ui.checkBox_onlyShowErrors -> setToolTip (tr("Only show errors and important messages during window update")); ui.groupBox_task -> setTitle(tr("Task","task groupbox (add, remove, modify buttons) label")); ui.pushButton_add -> setText(tr("add","add task button label")); ui.pushButton_add -> setToolTip(tr("add task","add task button tooltip")); ui.pushButton_remove -> setText(tr("remove","remove task button label")); ui.pushButton_remove -> setToolTip(tr("remove highlighted task","remove task button tooltip")); ui.pushButton_edit -> setText(tr("modify","modify task button label")); ui.pushButton_edit -> setToolTip(tr("modify highlighted task","modify task button tooltip")); //ui.groupBox_operations -> setTitle(tr("Run","run groupbox label")); ui.pushButton_start -> setText(tr("Run","start button label")); ui.pushButton_start -> setToolTip(tr("Begin the execution of all included tasks","start button tooltip")); ui.AbortButton -> setText(tr("Abort","Abort button label")); ui.AbortButton -> setToolTip(tr("Stop the execution of running tasks NOW","Abort button tooltip")); ui.DoneButton -> setText (tr("Done")); ui.DoneButton -> setToolTip(tr("Execution of tasks finished","Done button tooltip")); ui.checkBox_DryRun -> setText(tr("Dry","simulation checkbox label. Translate this as 'simulation'")); ui.checkBox_DryRun -> setToolTip(tr("This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)","simulation checkbox tooltip - line1. Please leave tags and intact and surrounding 'simulation run'")+".
"+tr("NOTE","simulation checkbox tooltip - line2")+": "+tr("Progressbar update will not be realistic","simulation checkbox tooltip - line2")); ui.pushButton_shutdown -> setText(tr("shutdown","shutdown button label")); ui.pushButton_shutdown -> setToolTip(tr("Press down to shutdown the system when done","shutdown button tooltip")); ui.label_InformationWindow -> setText(tr("Information window","information window title")); ui.pushButton_exit -> setToolTip(tr("Exit","exit button tooltip. full phrase is: 'exit luckybackup'")+" "+appName); ui.pushButton_exit -> setText(tr("EXIT","EXIT button label")); if (IsVisibleInfoWindow) ui.pushButton_InfoCollapse -> setToolTip(tr("Hide information window","show/hide information window button tooltip")); else ui.pushButton_InfoCollapse -> setToolTip(tr("Show information window","show/hide information window button tooltip")); ui.pushButton_minimizeToTray -> setText(tr("minimize to tray")); ui.pushButton_minimizeToTray -> setToolTip(tr("minimizes the window to the tray area")); } // createProfileCombo ============================================================================================================================= // fill the profile combo box with existing profiles. // Also sets the currentProfileIndex to the index of the current profile // Executes when the app starts & when the list of profiles in ~/.luckybackup/profiles changes void luckyBackupWindow::createProfileCombo() { GoBack = true; // the next line will execute function setCurrentProfile. set true to avoid that ui.comboBox_profile -> clear(); int currentProfileIndex = -1; QDir profiledir(profileDir); profiledir.setFilter(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); profiledir.setSorting(QDir::Name | QDir::LocaleAware); QStringList profileNames = profiledir.entryList(QStringList("*.profile")); QString profilename=""; for (count = 0; count < profileNames.size(); ++count) { profilename = profileNames[count]; if (currentProfile == profileDir + profilename) // set the currentProfileIndex to the index of the current profile currentProfileIndex = count; profilename.chop(8); GoBack = true; // the next line will execute function setCurrentProfile. set true to avoid that ui.comboBox_profile -> addItem (profilename); } if (currentProfileIndex == -1) // if no default profile exists currentProfileIndex = 0; GoBack = true; // the next line will execute function setCurrentProfile. set true to avoid that ui.comboBox_profile -> setCurrentIndex(currentProfileIndex); GoBack = false; } // createActions ============================================================================================================================= // create all main action void luckyBackupWindow::createActions() { actionHelp = new QAction(QIcon(":/luckyPrefix/book.png"), "Handbook", this); actionHelp -> setShortcut(tr("F1")); actionAbout = new QAction(QIcon(":/luckyPrefix/about.png"), "About", this); actionLockToolbars = new QAction("Lock Toolbars",this); actionLockToolbars -> setCheckable(true); actionLockToolbars -> setChecked(AreToolbarsLocked); actionVisibleToolbarText = new QAction("Labels under icons",this); actionVisibleToolbarText -> setCheckable(true); actionVisibleToolbarText -> setChecked(IsVisibleToolbarText); if (WINrunning) { actionSetWinPaths = new QAction("Set paths",this); connect( actionSetWinPaths, SIGNAL(triggered()), this, SLOT(setWinPaths())); //menu action set paths } connect( actionHelp, SIGNAL(triggered()), this, SLOT(help())); //menu action help connect( actionAbout, SIGNAL(triggered()), this, SLOT(about())); //menu action about connect( actionLockToolbars, SIGNAL(triggered()), this, SLOT(setToolbarAttrs())); //menu action lock toolbars connect( actionVisibleToolbarText, SIGNAL(triggered()), this, SLOT(setToolbarAttrs())); //menu action visible toolbar text } // createMenus ============================================================================================================================= // create the main window menus void luckyBackupWindow::createMenus() { // settings menu ---------------------------------------------------------------------------------- settingsMenu = menuBar() -> addMenu("Settings"); // help menu ---------------------------------------------------------------------------------- helpMenu = menuBar() -> addMenu("Help"); helpMenu -> addAction(actionHelp); helpMenu -> addSeparator(); helpMenu -> addAction(actionAbout); // toolbars actions ------------------------------------------------------------------------------- toolbarsGroup = new QActionGroup(this); toolbarsMenu = settingsMenu -> addMenu(""); visibleProfileComboToolbar = profileComboToolbar->toggleViewAction(); toolbarsMenu -> addAction(visibleProfileComboToolbar); visibleProfileToolbar = profileToolbar->toggleViewAction(); toolbarsMenu -> addAction(visibleProfileToolbar); toolbarsMenu -> addSeparator(); toolbarsMenu -> addAction(actionLockToolbars); toolbarsMenu -> addAction(actionVisibleToolbarText); settingsMenu -> addSeparator(); // language sub-menu ------------------------------------------------------------------------------- languageGroup = new QActionGroup(this); languageMenu = settingsMenu -> addMenu(""); connect(languageGroup, SIGNAL(triggered(QAction *)), this, SLOT( setLanguage( QAction *) ) ); QStringList fileNames = transDir.entryList(QStringList("luckybackup_*.qm")); for (count = 0; count < fileNames.size(); ++count) { QString currentLocale = fileNames[count]; currentLocale.remove(0, currentLocale.indexOf('_') + 1); currentLocale.chop(3); QTranslator translator; translator.load(fileNames[count], TransDir); QString language = translator.translate("luckyBackupWindow","English"); action = new QAction(tr("&%1 %2").arg(count + 1).arg(language), this); action -> setCheckable(true); action -> setData(currentLocale); languageMenu -> addAction(action); languageGroup -> addAction(action); if (currentLocale == defaultLanguage) { action->setChecked(true); setLanguage(action); } } // Win-OS2 paths sub-menu ------------------------------------------------------------------------------- if (WINrunning) settingsMenu -> addAction(actionSetWinPaths); } // createToolbar ============================================================================================================================= // create the tool bars void luckyBackupWindow::createToolbar() { profileComboToolbar = new QToolBar("current profile", this); profileToolbar = new QToolBar("actions", this); profileStartToolbar = new QToolBar("start", this); shutdownToolbar = new QToolBar("shutdown", this); errorsToolbar = new QToolBar("errors", this); this -> addToolBar(Qt::TopToolBarArea, profileComboToolbar); this -> addToolBar(Qt::TopToolBarArea, profileToolbar); this -> addToolBar(Qt::TopToolBarArea, shutdownToolbar); this -> addToolBar(Qt::TopToolBarArea, errorsToolbar); this -> addToolBar(Qt::TopToolBarArea, profileStartToolbar); QSize ToolbarIconSize(22,22); profileToolbar -> setIconSize(ToolbarIconSize); //Profile------------------------------------------------------------------- profileComboToolbar -> addWidget(ui.comboBox_profile); //profile drop-down list //Start & simulation buttons------------------------------------------------------------------- profileStartToolbar -> addWidget(ui.groupBox_operations);//profile start toolbar //shutdown system button------------------------------------------------------------------- shutdownToolbar -> addWidget(ui.pushButton_shutdown);//shutdown system toolbar // prev/next error buttons------------------------------------------------------------------- errorsToolbar -> addWidget(ui.pushButton_previousError); // errors toolbar errorsToolbar -> addWidget(ui.pushButton_nextError); errorsToolbar -> addWidget(ui.checkBox_onlyShowErrors); //Profile Actions------------------------------------------------------------------- profileToolbar -> addSeparator(); //---seperator--- profileToolbar -> addAction(ui.actionSave); //save // profileToolbar -> addAction(ui.actionDefault); //default // profileToolbar -> addAction(ui.actionRename); //rename profileToolbar -> addAction(ui.actionNew); //new profileToolbar -> addAction(ui.actionDelete); //delete // profileToolbar -> addSeparator(); // profileToolbar -> addAction(ui.actionExport); // profileToolbar -> addAction(ui.actionImport); profileToolbar -> addSeparator(); //---seperator--- profileToolbar -> addAction(ui.actionSchedule); //schedule profileToolbar -> addAction(ui.actionEmail); //email report profileToolbar -> addAction(ui.actionRefresh); //refresh profileToolbar -> addSeparator(); //---seperator--- profileToolbar -> addAction(ui.actionQuit); //quit profileToolbar -> addSeparator(); //---seperator--- profileComboToolbar -> setVisible (IsVisibleProfileComboToolbar); profileToolbar -> setVisible (IsVisibleProfileToolbar); setToolbarAttrs(); } // checkOperationsList=============================================================================================================================== // Checks if the Operations list is ok to proceed // calls global function checkTaskList() bool luckyBackupWindow::checkOperationList() { bool showBox = checkTaskList(); if (ask) { message.prepend("" + tr("ERROR") + "
"); if (showBox) { textDialog textdialogC ("QtCritical", message, this); textdialogC.exec(); } ui.textBrowser_info -> setText(message); return false; } return true; } //checkDeclared =================================================================================================================================== //Check if the declared data are ok by calling checkBackupDirs, checkSyncDirs accordingly //This is called from the gui void luckyBackupWindow::checkDeclared() { int currentSelection = ui.listWidget_operations -> currentRow(); //keep the current selection checkDeclaredDirs(true); currentOperation = 0; CheckedData = ""; CheckedDataCLI = ""; while (currentOperation < TotalOperations) { ui.listWidget_operations -> setCurrentRow(currentOperation); if (Operation[currentOperation] -> GetIncluded()) //if the operations is "included" { if (Operation[currentOperation] -> GetOK()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/okay.png")); if (Operation[currentOperation] -> GetWARNING()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); if (Operation[currentOperation] -> GetCRITICAL()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/warning.png")); if (Operation[currentOperation] -> GetSourcePerms()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); if (Operation[currentOperation] -> GetDestPerms()) ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/cancel.png")); } else ui.listWidget_operations -> currentItem() -> setIcon(QIcon(":/luckyPrefix/about.png")); currentOperation++; } if (currentSelection > -1) // re-select the current selection (don't leave the last task selected) { currentOperation = currentSelection; ui.listWidget_operations -> setCurrentRow(currentOperation); } } // setCurrentprofile ================================================================================================================================ // function to set the currentProfile void luckyBackupWindow::setCurrentProfile(QString currentProfileSet) { if (notXnixRunning) // if OS2 or win is running and by mistake the path includes "/" instead of "\" currentProfileSet.replace("/",SLASH); //current profile full absolut path currentProfile = currentProfileSet; //current profile QFile profile.setFileName(currentProfile); //current profile's name (QString) profileName = currentProfile; profileName = profileName.right(profileName.size() - profileName.lastIndexOf(SLASH) - 1); profileName.chop(8); } // loadCurrentprofile ================================================================================================================================ // function to load the current profile // calls global function loadProfile bool luckyBackupWindow::loadCurrentProfile() { loadData = ""; // Initialize arrays & window to zero values first ui.listWidget_operations -> clear(); //clear the operations list TotalOperations = 0; //Set the operations list size to 0 //taskAvailable -> ; //clear operations array ????????? if (currentProfile == defaultProfile) loadData.append("" + tr("loading default profile ...","information window message") + "
"); else loadData.append("" + tr("loading profile ...","information window message") + "
"); int loadOK = loadProfile(currentProfile); // try to load the currentProfile if (loadOK == 1) // if it cannot open { loadData.append("" + tr("loading failed","information window message") + "
" + tr("Unable to open profile","information window message. full phrase is 'Unable to open profile '")+" " + profileName + "
" + profile.errorString()) +""; return false; //do nothing more } if (loadOK == 2) // if it is not a valid profile { loadData.append("" + tr("loading failed","information window message") + "
" + tr("profile ","information window message. Full phrase is: 'profile is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end") + "" + profileName + " " + tr("is not valid for","information window message. Full phrase is: 'profile is not valid for luckybackup version:X.Y") + " " + appName +", "+ tr("version:","information window message. Full phrase is: 'profile is not valid for luckybackup version:X.Y") + countStr.setNum(appVersion)); return false; //do nothing more } // if all went ok (profile loaded) - loadOK == 0 savedProfile = true; ui.actionSave -> setEnabled(false); currentOperation = 0; while (currentOperation < TotalOperations) // fill in the task list { ui.listWidget_operations -> addItem( Operation[currentOperation] -> GetName() ); ui.listWidget_operations -> setCurrentRow(currentOperation); if (Operation[currentOperation] -> GetIncluded()) ui.listWidget_operations -> currentItem() -> setCheckState (Qt::Checked); else ui.listWidget_operations -> currentItem() -> setCheckState (Qt::Unchecked); currentOperation++; } TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size checkDeclared(); // Check tasks & set icons loadData.append(tr("profile","info window message. full phrase: 'profile loaded successfully'") + " " + profileName + " " + tr("loaded successfully","info window message. full phrase: 'profile loaded successfully'") + " !!"); ui.listWidget_operations -> setSpacing(1); // Check to see if this profile is scheduled and inform user ~~~~~~~~ QString CronTab = ""; QString profileCheckCron = profileName; profileCheckCron = profileCheckCron.replace(" ","\\ "); QFile cronFile (cronfilename); if (cronFile.open(QIODevice::ReadOnly | QIODevice::Text)) //open the cronFile { loadData.append("
"+tr("scheduled","this refers to a profile") + ": "); QTextStream in(&cronFile); while (!in.atEnd()) CronTab.append(in.readLine()); if (CronTab.contains(profileCheckCron, Qt::CaseInsensitive)) loadData.append(tr("YES") + ""); else loadData.append(tr("NO") + ""); } //append the profile description if it exists if (profileDescription != "") { QString profileDescriptionDisplay = profileDescription; profileDescriptionDisplay.replace("\n","
"); loadData.append("

" + tr("Description") + ":
" + profileDescriptionDisplay); } // Append a general directions message if the profile is empty if ( TotalOperations == 0 ) loadData.append("
" + tr("The task list is empty")+ "
" + tr("Use the \"add\" button on the right to get started","Please keep the add word inside quotes") + "

"); return true; //profile loaded successfully } // saveCurrentprofile =============================================================================================================================== // function to save the current profile // calls global function saveProfile() bool luckyBackupWindow::saveCurrentProfile() { saveData = ""; TotalOperations = ui.listWidget_operations -> count(); //Get the Operations list size if (currentProfile == defaultProfile) saveData.append("" + tr("saving default profile ...","Information window message") + "
"); else saveData.append("" + tr("saving profile ...","Information window message") + "
"); if (!saveProfile(currentProfile)) { saveData.append("" + tr("WARNING") + "
"); if (currentProfile == defaultProfile) saveData.append(tr("default profile","Information window message. Full phrase: 'default profile could not be saved'.")); else saveData.append(tr("profile","Information window message. Full phrase: 'profile could not be saved'")); saveData.append(" " + profileName + " "+ tr("could not be saved","Information window message. Full phrase: '(default) profile could not be saved'") + "
" + ""+ profile.errorString() + ""); savedProfile = false; ui.actionSave -> setEnabled(true); return false; } saveData.append(tr("profile","Information window message. Full phrase: 'profile saved successfully'") + " " + profileName + " " + tr("saved successfully","Information window message. Full phrase: 'profile saved successfully'") + " !!"); // Check to see if this profile is scheduled and inform user ~~~~~~~~ QString CronTab = ""; QFile cronFile (cronfilename); if (cronFile.open(QIODevice::ReadOnly | QIODevice::Text)) //open the cronFile { saveData.append("
"+tr("scheduled","this refers to a profile") + ": "); QTextStream in(&cronFile); while (!in.atEnd()) CronTab.append(in.readLine()); if (CronTab.contains(profileName, Qt::CaseInsensitive)) saveData.append(tr("YES") + ""); else saveData.append(tr("NO") + ""); } //append the profile description if it exists if (profileDescription != "") { QString profileDescriptionDisplay = profileDescription; profileDescriptionDisplay.replace("\n","
"); loadData.append("

" + tr("Description") + ":
" + profileDescriptionDisplay ); } // if some tasks were deleted also delete the relevant .changes and log files for (int count = 0; count < deletedTaskNames.size(); ++count) arrangeLogSnap(0,"delete",deletedTaskNames.at(count)); deletedTaskNames.clear(); savedProfile = true; //change profile status to "saved" ui.actionSave -> setEnabled(false); return true; } // createCurrentprofile =============================================================================================================================== // function to create the current profile with an empty task list // calls global function saveProfile() int luckyBackupWindow::createCurrentProfile() { createData = ""; if (!profile.exists()) //if the currentProfile does not exist, try to create it { TotalOperations = 0; //Set the Operations list size to 0 //Set email default options emailNever = 1; emailSubject = emailDefaultSubject; emailBody = emailDefaultBody; if (currentProfile == defaultProfile) createData.append("" + tr("creating default profile ...","Information window message") + "
"); else createData.append("" + tr("creating profile ...","Information window message") + "
"); if (!saveProfile(currentProfile)) //if the profile cannot be created { createData.append("" + tr("WARNING") + "
"); if (currentProfile == defaultProfile) createData.append(tr("default profile","Information window message. Full phrase: 'default profile could not be created'.")); else createData.append(tr("profile","Information window message. Full phrase: 'profile could not be created'.")); createData.append(" " + profileName + " "+ tr("could not be created","Information window message. Full phrase: '(default) profile could not be created'") + "
" + ""+ profile.errorString() + ""); return 2; //profile could not be created } createData.append(tr("profile","Information window message. Full phrase: 'profile created successfully'") + " " + profileName + " " + tr("created successfully","Information window message. Full phrase: 'profile created successfully'") + " !!"); createData.append("
" + tr("Use the \"add\" button on the right to get started","Please keep the add word inside quotes") + "
"); createProfileCombo(); // update the profile combobox with all existing profiles savedProfile = true; //change profile status to "saved" ui.actionSave -> setEnabled(false); return 1; // Profile created successfully } return 0; // profile already exists, just proceed } // isProfileSaved ==================================================================================================================================== //function to check if the current profile is saved and proceed or not int luckyBackupWindow::isProfileSaved() { if (!savedProfile) //if the current profile is not saved, ask the user if he/she wants to, before proceeding { textDialog textdialogQ ("QtQuestion", tr("Profile","Question dialog message. Full phrase: 'profile is modified'")+" " + profileName + " " + tr("is modified","Question dialog message. Full phrase: 'profile is modified'")+ ".

" + tr("Would you like to save it before proceeding ?"), this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes { if (!saveCurrentProfile()) // if it cannot be saved for any reason pop up a yes/no message box to go on or not { textDialog textdialogQ2 ("QtQuestion", tr("Profile","Question dialog message. Full phrase: 'profile could not be saved'")+" " + profileName + " " +tr("could not be saved","Question dialog message. Full phrase: 'profile could not be saved'") +"
"+ profile.errorString() + "

" + tr("Would you like to proceed anyway?"), this); textdialogQ2.exec(); if (textdialogQ2.getGoOn() == 0) //if user answers no { int previousIndex = ui.comboBox_profile -> findText (profileName, Qt::MatchExactly); GoBack = true; // the next line will execute function profileComboChanged again. set true to avoid that ui.comboBox_profile -> setCurrentIndex(previousIndex); return 0; //profile could not be saved, user says DO NOT proceed } else return 4; //profile could not be saved, user wants to proceed } else return 2; //profile save successfully, proceed } else return 3; //user does not want to save profile, proceed } return 1; // profile is already saved, just proceed } //saveSettings =================================================================================================================================== //Saves various luckybackup settings such as the default profile (text mode after version 0.4.7) bool luckyBackupWindow::saveSettings() { QFile settingsfile(settingsFile); if (!settingsfile.open(QIODevice::WriteOnly)) // if the settings file cannot be saved (or fails to create) { settingsfile.close(); return false; } showOnlyErrors = ui.checkBox_onlyShowErrors -> isChecked(); //write arrays to settings file QTextStream out(&settingsfile); out << "***************************** WARNING *****************************\n"; out << "Do NOT edit this file directly, unless you REALLY know what you are doing !!\n\n\n"; out << "[app_global]\n"; out << "appName=" << appName << "\n"; //output the application name out << "appVersion=" << appVersion << "\n"; //output the application version out << "File_Type=" << "luckybackup_settings_file" << "\n"; //output the application file type (?) out << "\n[settings_global]\n"; out << "Main_window_width=" << mainWindowWidth << "\n"; //output the application main window width in pixels out << "Main_window_height=" << mainWindowHeight << "\n"; //output the application main window height in pixels out << "Are_toolbars_locked=" << AreToolbarsLocked << "\n"; //output the lock state of toolbars out << "Is_combo_toolbar_visible=" << IsVisibleProfileComboToolbar << "\n";//output the visible state of the combo toolbar out << "Is_profile_toolbar_visible=" << IsVisibleProfileToolbar << "\n"; //output the visible state of the profile toolbar out << "Is_toolbarText_visible=" << IsVisibleToolbarText << "\n"; //output the visible state of toolbar text out << "Default_Profile=" << defaultProfile << "\n"; //output the default profile full path out << "Default_Language=" << defaultLanguage << "\n"; //output the default language out << "Visible_info_window=" << IsVisibleInfoWindow << "\n"; //output the visibility state of the info window out << "Quite_mode_output=" << showOnlyErrors << "\n"; //output the quite mode state of the commands output window if (WINrunning) { out << "\n[settings_non_*nix]\n"; out << "win_rsync_path=" << rsyncCommandPath << "\n"; //output the rsync path for windows or OS2 out << "win_ssh_path=" << sshCommandPath << "\n"; //output the ssh path for windows or OS2 out << "cygpath_path=" << cygpathCommand << "\n"; out << "dosdev_path=" << dosdevCommand << "\n"; out << "vshadowdir_path=" << vshadowDir << "\n"; out << "tempdir_path=" << tempDirPath << "\n"; } out << "\n[Settings_file_end]" << "\n"; settingsfile.close(); return true; } //loadSettings =================================================================================================================================== //loads various luckybackup settings such as the default profile (text mode after version 0.4.7) bool luckyBackupWindow::loadSettings() { QFile settingsfile(settingsFile); if (!settingsfile.open(QIODevice::ReadOnly)) //if the settings file cannot be opened { settingsfile.close(); return false; } QTextStream in(&settingsfile); QString SettingsLine=""; //temp variable to import the settings line by line SettingsLine = in.readLine(); // First check if the settings file is a text or data stream // if data, call loadSettingsQV if (SettingsLine !="***************************** WARNING *****************************") { settingsfile.close(); return loadSettingsQV(); } QString tempAppName = "asxeto"; QString tempFileType = "asxeto"; double tempAppVersion=0; bool IntOk; // Read all lines until the [settings_global] tag or end of file if invalid while ( !(SettingsLine.startsWith("[settings_global]")) && (!in.atEnd()) ) { SettingsLine = in.readLine(); //input the application name, version & file type -------------------------- if (SettingsLine.startsWith("appName=")) tempAppName = SettingsLine.remove("appName="); if (SettingsLine.startsWith("appVersion=")) tempAppVersion = (SettingsLine.remove("appVersion=")).toDouble(&IntOk); if (SettingsLine.startsWith("File_Type=")) tempFileType = SettingsLine.remove("File_Type="); } //check if the file is a valid luckybackup settings file if ( (tempAppName != appName) || (tempAppVersion < validSettingsVersion) || (tempFileType != "luckybackup_settings_file") ) { settingsfile.close(); return false; } // Read all lines until the [Settings_file_end] tag or end of file if invalid while ( !(SettingsLine.startsWith("[Settings_file_end]")) && (!in.atEnd()) ) { SettingsLine = in.readLine(); if (SettingsLine.startsWith("Main_window_width=")) mainWindowWidth = (SettingsLine.remove("Main_window_width=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Main_window_height=")) mainWindowHeight = (SettingsLine.remove("Main_window_height=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Are_toolbars_locked=")) AreToolbarsLocked = (SettingsLine.remove("Are_toolbars_locked=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Is_combo_toolbar_visible=")) IsVisibleProfileComboToolbar = (SettingsLine.remove("Is_combo_toolbar_visible=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Is_profile_toolbar_visible=")) IsVisibleProfileToolbar = (SettingsLine.remove("Is_profile_toolbar_visible=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Is_toolbarText_visible=")) IsVisibleToolbarText = (SettingsLine.remove("Is_toolbarText_visible=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Default_Profile=")) defaultProfile = SettingsLine.remove("Default_Profile="); if (SettingsLine.startsWith("Default_Language=")) defaultLanguage = SettingsLine.remove("Default_Language="); if (SettingsLine.startsWith("Visible_info_window=")) IsVisibleInfoWindow = (SettingsLine.remove("Visible_info_window=")).toInt(&IntOk,10); if (SettingsLine.startsWith("Quite_mode_output=")) showOnlyErrors = (SettingsLine.remove("Quite_mode_output=")).toInt(&IntOk,10); if (SettingsLine.startsWith("win_rsync_path=")) rsyncCommandPath = SettingsLine.remove("win_rsync_path="); if (SettingsLine.startsWith("win_ssh_path=")) sshCommandPath = SettingsLine.remove("win_ssh_path="); if (SettingsLine.startsWith("cygpath_path=")) cygpathCommand = SettingsLine.remove("cygpath_path="); if (SettingsLine.startsWith("dosdev_path=")) dosdevCommand = SettingsLine.remove("dosdev_path="); if (SettingsLine.startsWith("vshadowdir_path=")) vshadowDir = SettingsLine.remove("vshadowdir_path="); if (SettingsLine.startsWith("tempdir_path=") && !isTempDirPath) tempDirPath = SettingsLine.remove("tempdir_path="); } settingsfile.close(); ui.checkBox_onlyShowErrors -> setChecked(showOnlyErrors); return true; } //loadSettingsQV =================================================================================================================================== //loads various luckybackup settings such as the default profile - data mode bool luckyBackupWindow::loadSettingsQV() { QFile settingsfile(settingsFile); if (!settingsfile.open(QIODevice::ReadOnly)) //if the settings file cannot be opened { settingsfile.close(); return false; } QDataStream in(&settingsfile); in.setVersion(QDataStream::Qt_4_3); QVariant v; //we will import everything as QVariant using this temp variable QString vString; //temp variable to import "labels" of real data QString tempAppName = "asxeto"; QString tempFileType = "asxeto"; double tempAppVersion=0; in>>v; if (v.toString()=="appName") in >> v; tempAppName = v.toString(); //input the application name & version in>>v; if (v.toString()=="appVersion") in >> v; tempAppVersion = v.toDouble(); in>>v; if (v.toString()=="File_Type") in >> v; tempFileType = v.toString(); //input the file type //check if the file is a valid luckybackup settings file if ( (tempAppName != appName) || (tempAppVersion < validSettingsVersion) || (tempFileType != "luckybackup_settings_file") ) { settingsfile.close(); return false; } in>>v; vString = v.toString(); in >> v; //input a label in vString and real data in v while ( (vString != "Settings_file_end") && (!in.atEnd()) ) { if (vString == "Main_window_width") mainWindowWidth = v.toInt(); if (vString == "Main_window_height") mainWindowHeight = v.toInt(); if (vString == "Are_toolbars_locked") AreToolbarsLocked = v.toBool(); if (vString == "Is_combo_toolbar_visible") IsVisibleProfileComboToolbar = v.toBool(); if (vString == "Is_profile_toolbar_visible")IsVisibleProfileToolbar = v.toBool(); if (vString == "Is_toolbarText_visible") IsVisibleToolbarText = v.toBool(); if (vString == "Default_Profile") defaultProfile = v.toString(); if (vString == "Default_Language") defaultLanguage = v.toString(); if (vString == "Visible_info_window") IsVisibleInfoWindow = v.toBool(); if (vString == "win_rsync_path") rsyncCommandPath = v.toString(); if (vString == "win_ssh_path") sshCommandPath = v.toString(); in>>v; vString = v.toString(); if (vString!="Settings_file_end") in >> v; } settingsfile.close(); saveSettings(); //save the settings file to text format return true; } //arrangeLogSnap =================================================================================================================================== //Rename-delete-copy logs & snaps when the current profile/task is renamed, deleted,duplicated // if a task is deleted, this function is called from saveCurrentProfile() // Returns true if everything went ok bool luckyBackupWindow::arrangeLogSnap(bool PorT,QString ActionTaken,QString NameToUse) { // PorT is "1" for profile and "0" for task // ActionTaken can become "rename", "delete" ,"duplicate" // NameToUse is the new name of the current profile if rename/duplicate or the file to be deleted or the old name of the task that was renamed/deleted bool whatToReturn1 = false, whatToReturn2 = false; QStringList filtersSnapLog, snapListFiles, logsListFiles; if (PorT) // we're talking about a profile filtersSnapLog << profileName + "-*"; // profileName is the old profile name else // we're talking about a task filtersSnapLog << profileName + "-" + NameToUse + "-*"; // NameToUse is the name of the task that was deleted/renamed (before it was renamed) // QSTringLists with all files to be manipulated QDir snapTempDir(snapChangesDir), logTempDir(logDir); snapListFiles = snapTempDir.entryList(filtersSnapLog,QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot,QDir::Name); logsListFiles = logTempDir.entryList(filtersSnapLog,QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot,QDir::Name); // actions for snap .changes files for (int count = 0; count < snapListFiles.size(); ++count) { snapfile.setFileName(snapChangesDir + snapListFiles.at(count)); // QFile snapchangesfilename = snapfile.fileName(); // QString - old filename // the new snap .changes filename (QString) - replace either profilename or task name if (PorT) snapchangesfilename.replace(SLASH + profileName + "-" , SLASH + NameToUse + "-" ,Qt::CaseSensitive); // QString - new filename (profile) else snapchangesfilename.replace(SLASH + profileName + "-" + NameToUse + "-", SLASH + profileName + "-" + Operation[currentOperation] -> GetName() + "-",Qt::CaseSensitive); // QString - new filename (task) // and take some action if (ActionTaken == "delete") whatToReturn1 = snapfile.remove(); if (ActionTaken == "rename") whatToReturn1 = snapfile.rename(snapchangesfilename); if (ActionTaken == "duplicate") //only for profile. If a task is duplicated logs & snaps are reset whatToReturn1 = snapfile.copy(snapchangesfilename); } // actions for snap log files for (int count = 0; count < logsListFiles.size(); ++count) { logfile.setFileName(logDir + logsListFiles.at(count)); // QFile logfilename = logfile.fileName(); // QString - old filename // the new log filename (QString) - replace either profilename or task name if (PorT) logfilename.replace(SLASH + profileName + "-", SLASH + NameToUse + "-",Qt::CaseSensitive); // QString - new filename (profile) else logfilename.replace("-" + NameToUse +"-", "-" + Operation[currentOperation] -> GetName() +"-",Qt::CaseSensitive); // QString - new filename (task) // and take some action if (ActionTaken == "delete") whatToReturn2 = logfile.remove(); if (ActionTaken == "rename") whatToReturn2 = logfile.rename(logfilename); if (ActionTaken == "duplicate") //only for profile. If a task is duplicated logs & snaps are reset whatToReturn2 = logfile.copy(logfilename); } bool whatToReturn = whatToReturn1 && whatToReturn2; // return true if both snaps & log actions finished successfully return whatToReturn; } // end of functions.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/calcDiffThread.cpp0000666000175000017500000004620112722006207017520 0ustar luckybluckyb/* ---------------------------------- calcDiffThread.cpp --------------------------------------------------------------------------- Class to calculate the differences between source & snapshot in a seperate thread =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright 2008-2012, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "calcDiffThread.h" #include #include #include "global.h" #include "operationClass.h" // class CalcDiffThread Constructor================================================================================================= CalcDiffThread::CalcDiffThread(QObject *parent) : QThread(parent) { //initialize variables returnString = ""; dirToReadString = ""; dest = ""; CurrentSnapshotDirectory = ""; CurrentSnapshotString = ""; sourceLast = ""; source = ""; CurrentSnapshotNo = 0; currentSnaps = 0; syncTYPE = false; abortNOW = false; } // class CalcDiffThread Destructor================================================================================================= CalcDiffThread::~CalcDiffThread () { wait(); } // run the QThread================================================================================================= void CalcDiffThread::run () { returnString = ""; emit updateViewer(tr("Scanning destination") + "\n\n..." + tr("Please wait"), false); QFileInfoList returnDirContents = readRecursive(dirToReadString); //this is the destination as a Qfileinfo list int countDirEntries=0, countReturnEntries=0; // Remove the "luckybackup snapshots root" directory from the returnDirContents list countReturnEntries = 0; while ( (countReturnEntries < returnDirContents.size()) && (!syncTYPE) ) { QFileInfo localFileInfo = returnDirContents.at(countReturnEntries); if ( (localFileInfo.filePath()+SLASH).contains((dest + snapDefaultDir)) ) returnDirContents.removeAt(countReturnEntries); else countReturnEntries++; if (abortNOW) return; } // Remove files/dirs listed at changes.file from the QFileInfo list (destination) QStringList removedFiles; removedFiles.clear(); count = CurrentSnapshotNo+1; while ( (count < currentSnaps) && (!syncTYPE) ) { snapchangesfilename = snapChangesDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(count)) + ".changes.log"; snapfile.setFileName(snapchangesfilename); snapfile.open(QIODevice::ReadOnly | QIODevice::Text); QTextStream in(&snapfile); while (!in.atEnd()) removedFiles.append(in.readLine()); snapfile.close(); count++; } countReturnEntries = 0; while ( (countReturnEntries < returnDirContents.size()) && (!syncTYPE) ) { QFileInfo localFileInfo = returnDirContents.at(countReturnEntries); QString destFile = localFileInfo.filePath(); destFile.remove(dest, Qt::CaseSensitive); countDirEntries = 0; bool removed = false; while (countDirEntries < removedFiles.size()) { if ( (destFile == removedFiles.at(countDirEntries)) || ((destFile+SLASH) == removedFiles.at(countDirEntries)) ) { removed = true; returnDirContents.removeAt(countReturnEntries); } countDirEntries++; } if (removed) removed = false; else countReturnEntries++; } // Replace destination directory data with snapshot data - NOT in sync mode // Do this for every snapshot from the current to the last one going back count = currentSnaps-2; while ( (count >= CurrentSnapshotNo) && (!syncTYPE) ) { QString SnapshotDirectoryStringToRead = Operation[currentOperation] -> GetSnapshotsListItem (count); QString SnapshotDirectoryToRead = dest + snapDefaultDir + SnapshotDirectoryStringToRead + SLASH + sourceLast; QDir currentsnapdir(SnapshotDirectoryToRead); if ( (currentsnapdir.exists()) && (!syncTYPE) ) { emit updateViewer(tr("Scanning snapshot") + " " + SnapshotDirectoryStringToRead + "\n\n..." + tr("Please wait"), false); QFileInfoList currentsnapdirContents = readRecursive(SnapshotDirectoryToRead); // this is the snapshots directory currently read as a QFileInfo list countDirEntries = 0; while (countDirEntries < currentsnapdirContents.size()) { //strip off beginning of snapshot file path QFileInfo snapFileInfo = currentsnapdirContents.at(countDirEntries); QString snapFile = snapFileInfo.filePath(); snapFile.remove(SnapshotDirectoryToRead, Qt::CaseSensitive); countReturnEntries = 0; bool replaced = false; while (countReturnEntries < returnDirContents.size()) { QFileInfo localFileInfo = returnDirContents.at(countReturnEntries); QString destFile = localFileInfo.filePath(); for (int count3=CurrentSnapshotNo; count3 < currentSnaps-1; count3++) // if the destFile belongs to a "later" snapFile { QString IlostTrack = Operation[currentOperation] -> GetSnapshotsListItem (count3); if (destFile.startsWith(dest + snapDefaultDir + IlostTrack) ) destFile.remove(dest + snapDefaultDir + IlostTrack + SLASH + sourceLast, Qt::CaseSensitive); } destFile.remove(dest, Qt::CaseSensitive); if (snapFile == destFile) { returnDirContents.removeAt(countReturnEntries); returnDirContents.insert(countReturnEntries,snapFileInfo); replaced = true; } countReturnEntries++; } if ( (!replaced) && (!removedFiles.contains(snapFile,Qt::CaseSensitive )) ) returnDirContents.append(snapFileInfo); countDirEntries++; if (abortNOW) return; } } count--; } // Calculate differences between snapshot and source QFileInfoList changedFiles, existingSource, existingSnap; changedFiles.clear(); existingSource.clear(); existingSnap.clear(); QString changedfiles="", existingsource = "", existingsnap = ""; QList snapMatchesSource; snapMatchesSource.clear(); emit updateViewer(tr("Scanning source") + "\n\n..." + tr("Please wait"), false); QFileInfoList sourceDirAsList = readRecursive(source); // This is source as a QFileInfo list QString calcInfoText = tr("Calculating differences") + "\n\n..." + tr("Please wait") + "\n\n"; QString sourceDirAsListSize = countStr.setNum(sourceDirAsList.size()); countDirEntries = 0; while (countDirEntries < sourceDirAsList.size()) { bool foundMatchSourceToSnap = false; // If a file with some filename exists at the source and the snapshot // strip off beginning of source file path QFileInfo sourceFileInfo = sourceDirAsList.at(countDirEntries); QString sourceFile = sourceFileInfo.filePath(); if (sourceFile.startsWith(source)) sourceFile.remove(source, Qt::CaseSensitive); emit updateViewer(calcInfoText + countStr.setNum(countDirEntries) + " / " + sourceDirAsListSize, false); // Give the user sth to watch counting if (abortNOW) return; // compare with every file in snapshot countReturnEntries = 0; while (countReturnEntries < returnDirContents.size()) { if (countDirEntries == 0) snapMatchesSource.append(false); // build a list //strip off beginning of snapshot file path QFileInfo snapFileInfo = returnDirContents.at(countReturnEntries); QString snapFile = snapFileInfo.filePath(); // ********************* TO EDIT *************************************************************************************** for (count=currentSnaps-2; count >= CurrentSnapshotNo; count--) { QString SnapshotDirectoryStringToRead = Operation[currentOperation] -> GetSnapshotsListItem (count); if (snapFile.startsWith(dest + snapDefaultDir + SnapshotDirectoryStringToRead) ) snapFile.remove(dest + snapDefaultDir + SnapshotDirectoryStringToRead + SLASH + sourceLast, Qt::CaseSensitive); //if (snapFile.startsWith(dest + snapDefaultDir + CurrentSnapshotString) ) // snapFile.remove(dest + snapDefaultDir + CurrentSnapshotString + SLASH + sourceLast, Qt::CaseSensitive); } // ********************* TO EDIT *************************************************************************************** if (snapFile.startsWith(dest)) snapFile.remove(dest, Qt::CaseSensitive); // 1. Data that have changed at source. // The snapshot data will replace the relevant source data, at RESTORE if (snapFile == sourceFile) { snapMatchesSource.replace(countReturnEntries, true); foundMatchSourceToSnap = true; if ((snapFileInfo.lastModified() != sourceFileInfo.lastModified()) || (snapFileInfo.size() != sourceFileInfo.size())) { changedFiles.append(snapFileInfo); // Do not add anything if it's a directory!! if (snapFileInfo.isDir()) snapFile.append(SLASH); else if (changedfiles.size() < 10000) changedfiles.append("* " + snapFile + " - " + snapFileInfo.lastModified().toString("yyyy MMM dd - hh:mm:ss") + "
"); //else // break; } } countReturnEntries++; } // 2. Data that exist at the source but not at the snapshot // These will be deleted at RESTORE if "delete existing source data that do not exist at the backup" is checked if (!foundMatchSourceToSnap) { existingSource.append(sourceFileInfo); if (sourceFileInfo.isDir()) sourceFile.append(SLASH); if (existingsource.size() < 10000) existingsource.append("* " + sourceFile + " - " + sourceFileInfo.lastModified().toString("yyyy MMM dd - hh:mm:ss") + "
"); } countDirEntries++; } // 3. Data that exist at the snapshot but not at the source. // These will be transferred over at RESTORE countReturnEntries = 0; while (countReturnEntries < snapMatchesSource.size()) { if (!snapMatchesSource.at(countReturnEntries)) { QFileInfo snapFileInfo = returnDirContents.at(countReturnEntries); QString snapFile = snapFileInfo.filePath(); // ********************* TO EDIT *************************************************************************************** for (count=currentSnaps-2; count >= CurrentSnapshotNo; count--) { QString SnapshotDirectoryStringToRead = Operation[currentOperation] -> GetSnapshotsListItem (count); if (snapFile.startsWith(dest + snapDefaultDir + SnapshotDirectoryStringToRead) ) snapFile.remove(dest + snapDefaultDir + SnapshotDirectoryStringToRead + SLASH + sourceLast, Qt::CaseSensitive); } // ********************* TO EDIT *************************************************************************************** if (snapFile.startsWith(dest)) snapFile.remove(dest, Qt::CaseSensitive); if (snapFileInfo.isDir()) snapFile.append(SLASH); existingSnap.append(snapFileInfo); if (existingsnap.size() < 10000) existingsnap.append("* " + snapFile + " - " + snapFileInfo.lastModified().toString("yyyy MMM dd - hh:mm:ss") + "
"); } countReturnEntries++; } // Build the text to display to user returnString.append("

"); if (syncTYPE) returnString.append(" " + tr("Sync dir A & B differences") + "
"); else returnString.append(" " + tr("Snapshot and source differences") + "
"); returnString.append("_______________________________________________________

"); if (changedfiles != "") { returnString.append("

"); if (syncTYPE) returnString.append(" " + tr("Sync dir B data that also exists at sync dir A and is different") + "

"); else { returnString.append(" " + tr("Snapshot data that also exists at the source and is different") + "
"); returnString.append(" " + tr("The snapshot data will replace the source data during RESTORE") + "

"); } returnString.append(changedfiles); if (changedfiles.size() > 9900) returnString.append("
" + tr("Data amount is huge. Displaying only first entries") + "
"); returnString.append("_______________________________________________________
"); } if (existingsnap != "") { returnString.append("

"); if (syncTYPE) returnString.append(" " + tr("Sync dir B data that do NOT exist at sync dir A") + "

"); else { returnString.append(" " + tr("Snapshot data that do NOT exist at the source") + "
"); returnString.append(" " + tr("These will be transferred over at the source during RESTORE") + "

"); } returnString.append(existingsnap); if (existingsnap.size() > 9900) returnString.append("
" + tr("Data amount is huge. Displaying only first entries") + "
"); returnString.append("_______________________________________________________
"); } if (existingsource != "") { returnString.append("

"); if (syncTYPE) returnString.append(" " + tr("Sync dir A data that do NOT exist at sync dir B") + "

"); else { returnString.append(" " + tr("Source data that do NOT exist at the snapshot") + "
"); returnString.append(" " + tr("These will be deleted during RESTORE only if you enable the option:") + "
"); returnString.append(" \"" + tr("delete existing source data that do not exist at the backup") + "\"

"); } returnString.append(existingsource); if (existingsource.size() > 9900) returnString.append("
" + tr("Data amount is huge. Displaying only first entries") + "
"); returnString.append("_________________________________________________________________
"); } returnString.append("
"); } // set parametres================================================================================================= void CalcDiffThread::passParams(QString dirtoreadstring, QString desti, QString currentsnapshotdirectory, QString currentsnapshotstring, QString sourcelast, QString sourcei, int currentsnapshotno, int currentsnaps, bool synctype) { this -> dirToReadString = dirtoreadstring; this -> dest = desti; this -> CurrentSnapshotDirectory = currentsnapshotdirectory; this -> CurrentSnapshotString = currentsnapshotstring; this -> sourceLast = sourcelast; this -> source = sourcei; this -> CurrentSnapshotNo = currentsnapshotno; this -> currentSnaps = currentsnaps; this -> syncTYPE = synctype; } // Return the resulting text================================================================================================= QString CalcDiffThread::returnResult() { return returnString; } // Set the abortNOW =========================================================================================== void CalcDiffThread::setAbort(bool abortset) { abortNOW = abortset; } // // Extract a QFileInfoList from a directory's path =============================================================================================== QFileInfoList CalcDiffThread::readRecursive(QString dirToReadString) { // QFileInfoList readRecursive(QString); QDir dirToRead(dirToReadString); dirToRead.setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); dirToRead.setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); QFileInfoList DirContentsStart = dirToRead.entryInfoList(); QFileInfoList returnDirContentsFinal; QStack dirStack; dirStack.push(dirToRead); while( !dirStack.empty() ) { QDir lastDir = dirStack.last(); lastDir.setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden); lastDir.setSorting(QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::LocaleAware); QFileInfoList flist = lastDir.entryInfoList( ); dirStack.pop(); foreach (QFileInfo localFileInfo, flist) { returnDirContentsFinal.append(localFileInfo); if (localFileInfo.isDir()) { QDir dirent( localFileInfo.absoluteFilePath() ); dirStack.push( dirent ); } } } return returnDirContentsFinal; } // end of calcDiffThread.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/RsyncDirModel.h0000666000175000017500000000536312073232266017071 0ustar luckybluckyb/**************************************************************************** Copyright (C) VCreate Logic Private Limited, Bangalore Contact: info@vcreatelogic.com This file is developed by VCreate Logic Private Limited and used as part of the "luckyBackup" project It is distributed under the terms of the GNU General Public License It 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. It 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 the luckyBackup project. If not, see . ****************************************************************************/ #ifndef Rsync_DIR_MODEL_H #define Rsync_DIR_MODEL_H #include //#include #include class RsyncEntry; struct RsyncDirModelData; class RsyncDirModel : public QAbstractItemModel { Q_OBJECT public: RsyncDirModel(QObject* parent=0); ~RsyncDirModel(); void setUrl(const QUrl& url); void setUrl(const QUrl& url,const QString& cpath); void setUrl(const QUrl& url,const QString& cpath, const QStringList& cargs); QUrl url() const; // void setLogin(const QString& user, // const QString& password); // QString user() const; // QString password() const; QUrl url(const QModelIndex& index) const; QString path(const QModelIndex& index) const; QModelIndex index(const QString& path) const; public slots: void refresh(const QModelIndex& index=QModelIndex()); signals: void listingDone(RsyncEntry*); // void loginParamsRequest(QAuthenticator* auth); protected: int rowCount(const QModelIndex& parent) const; int columnCount(const QModelIndex& parent) const; QVariant data(const QModelIndex& index, int role) const; QModelIndex index(int row, int col, const QModelIndex& parent) const; QModelIndex parent(const QModelIndex& index) const; QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; Qt::ItemFlags flags(const QModelIndex& index) const; QModelIndex index(RsyncEntry* entry) const; bool list() const; bool list(RsyncEntry* entry) const; private slots: void slotListingDone(RsyncEntry* entry); private: RsyncDirModelData* d; }; #endif // Rsync_DIR_MODEL_H luckybackup-0.5.0/src/luckybackupwindow.h0000666000175000017500000003352212720255502020113 0ustar luckybluckyb/* ------------------ luckybackupwindow.h -------------------------------------------------------------------------------------- header file for luckyBackup project =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 07 Feb 2014 =============================================================================================================================== =============================================================================================================================== */ #ifndef LUCKYBACKUPWINDOW_H #define LUCKYBACKUPWINDOW_H //include header file that qmake produces from "*.ui" created with qt designer #include "ui_luckybackupwindow.h" #include //============================================================================================================== //Declaration of luckyBackupWindow class (this is the main window of the app) class luckyBackupWindow : public QMainWindow { Q_OBJECT public: luckyBackupWindow (QMainWindow *parent = 0); // general variables bool taskClicked; //these 2 bool vars help to determine when a checkbox state is changed for SLOT taskStateChanged bool taskChanged; bool savedProfile; // Becomes true if a profile is saved and false if it is modified bool GoBack; // Becomes true if the user tries to load a profile, but regrets it !! QString InfoData; //String holding the information window text QString createData; //String holding messages from createCurrentProfile QString loadData; //String holding messages from loadCurrentProfile QString saveData; //String holding messages from saveCurrentProfile int InfoInt; // this helps to define which message will appear at the info window int count; //simple count variable !! private slots: void profileComboChanged(); // SLOT to set the currentProfile when profileCombo index changes void savePressed(); // SLOT to execute when "save" pressed void deleteCurrentProfile();//SLOT: Delete the current profile void NewProfile(); //SLOT: Create a new empty profile void setDefaultProfile(); //SLOT: Set the current profile as default void renameCurrentProfile();//SLOT: rename the current profile void exportProfile(); //SLOT to export a profile void importProfile(); //SLOT to import a profile void duplicateProfile(); //SLOT to duplicate a profile void changeProfileDescription();//SLOT to change the profile description void exitApp(); //SLOT: check if a profile is saved and exit application void help(); //SLOT: open "help" popup when action selected void about(); //SLOT: open "about" popup when action selected void setToolbarAttrs(); //SLOT: sets the toolbar attributes void setWinPaths(); //SLOT: sets the rsync and ssh paths for windows void setLanguage(QAction *);//SLOT: Change the application language void checkCurrentItem(QListWidgetItem *); //SLOT: Check the currently selected operation and set an icon void taskStateChanged(); //SLOT: Sets the profile state to unsaved if a task checkbox is changed void refreshList(); //SLOT: Refresh the operations list when refresh button pressed void start(); //SLOT: Open start operations dialog when Button clicked() void modify(); //SLOT: Modify an existing task. Will also save it if bool is true void add(); //SLOT: Add a new task void remove(); //SLOT: remove highlighted task void manage(); //SLOT: Manage existing backups of an existing task void AlsoCreateRestore(); //SLOT: Create another operation for RESTORE void duplicateTask(); //SLOT to duplicate a task void moveUp(); //SLOT: move highlighted operation one position up void moveDown(); //SLOT: move highlighted operation one position down void schedule(); //SLOT: Open schedule dialog when Button clicked() void email(); //SLOT: Open email dialog when Button clicked() void hideShowInfoWindow(); // SLOT to hide or show the info window //execute.cpp SLOTS void abortPressed(); //SLOT when button pressed( see also notYet) void donePressed(); //SLOT when done button pressed void appendRsyncOutput(); //Display o/p to textbrowser & update logfile /*disable vss until... void appendRsyncVssOutput(); void appendRsyncVssOutput(int size);*/ void procFinished(); //SLOT executed when syncProcess is finshed (will start a new syncProcess if any left) void procError(); // SLOT for when a process reports an error (eg: failed to start) void LBtrayActivated(QSystemTrayIcon::ActivationReason reason); void minimizeTray(); void restoreTray(); void previousErrorJump(); void nextErrorJump(); private: Ui::luckyBackupWindow ui; QSystemTrayIcon *LBtray; //this is luckybackup's tray icon QMenu *languageMenu; QMenu *settingsMenu; QMenu *toolbarsMenu; QActionGroup *languageGroup; QActionGroup *toolbarsGroup; QMenu *helpMenu; QAction *action; QAction *actionHelp; QAction *actionAbout; QToolBar *profileToolbar; QToolBar *profileComboToolbar; QToolBar *profileStartToolbar; QToolBar *shutdownToolbar; QToolBar *errorsToolbar; QAction *visibleProfileToolbar; QAction *visibleProfileComboToolbar; QAction *visibleProfileStartToolbar; QAction *actionLockToolbars; QAction *actionVisibleToolbarText; QAction *actionSetWinPaths; QStringList deletedTaskNames; bool saveOrNot; //The following functions are inside functions.cpp~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ void setCurrentProfile(QString);//function to check if a profile is valid and load it by calling loadProfile bool loadCurrentProfile(); //function to load an existing profile bool saveCurrentProfile(); //function to save a profile int createCurrentProfile(); //function to create a profile int isProfileSaved(); //function to check if the current profile is saved and proceed or not void checkDeclared(); //function to check all declared data of included operations bool checkOperationList(); // function to first check the operations list for errors (eg nothing is included) void retranslateUi(); //function to retranslate the ui when user changes the gui language void createMenus(); // create the menu "language" with all available languages & menu "help" void createToolbar(); // create the toolbar void createActions(); // create all actions void createProfileCombo(); // fill the profile combo box with existing profile names bool saveSettings(); //saves various luckybackup settings such as the default profile bool loadSettings(); //loads various luckybackup settings such as the default profile - text mode bool loadSettingsQV(); //loads various luckybackup settings such as the default profile - data mode void InitializeVariables(); //initializes all variables bool arrangeLogSnap(bool,QString,QString);//Rename-delete-copy logs & snaps when a profile/task is renamed, deleted,duplicated QString defaultLanguage; // holds the app's default language QString TransDir; // holds the actual translation directory path QUrl helpURL; // holds the actual manual path as a QUrl QString manualChapter; // holds the specific chapter of the manual. changes depending on which window is open QUrl licenseURL; // holds the actual license path as a QUrl int mainWindowWidth; // holds the main window width in pixels int mainWindowHeight; // holds the main window height in pixels bool AreToolbarsLocked; // holds the lock state of the toolbars bool IsVisibleProfileComboToolbar; // holds the visible state of the profile combo toolbar bool IsVisibleProfileToolbar; // holds the visible state of the profile actions toolbar bool IsVisibleProfileStartToolbar; // holds the visible state of the profile start toolbar bool IsVisibleToolbarText; // holds the visible state of the toolbar text bool IsVisibleInfoWindow; // holds the visible state of the info window bool showOnlyErrors; //This becomes true if the user selects to only display errors at the commands output window //inside execute.cpp----------------------------------------------------- void executeNOW(); //start the execution of commands (rsync & others) void setNowDoing(); //Display sth in the Now Doing textBrowser void executeRsync(); //execute qprocess "rsync" with Arguments void swapGUI(QString); //swaps the gui mode from normal to execute int errorCount; //used for next/previous error button bool firstScroll; //used for next/previous error button bool NOWexecuting; //becomes true if a profile execution is running bool guiModeNormal; //becomes true when the gui is in normnal mode bool ABORTpressed; //becomes true if the abort button is pressed void finishUp(); // finish up some stuff when all tasks finish either normally or aborted void shutDownSystem(); // shutdown the system if the relevant button is pressed QString convertBytes(QString,bool); // Converts a string of the form of 10GB to bytes and vice versa //Progress bar variables int progress_total; //Maximum value of progress int progress_done; //Current value of progress //variables used for rsync command QString command; //command to be executed. Normally this is "rsync" QStringList rsyncArguments; // This stringList holds all arguments for the rsync command QString outputString; //all the output of rsync is going to fit in here QString outputError; //all the error output of rsync is going to fit in here QString outputInsert; //this is used to enter application output between outputString/Error QString nowDoingText; //this is the text printed in the NowDoing textBrowser bool sync; //becomes true if syncing is to be executed bool syncAB; //becomes true if syncing from dirA to dirB is to be executed QString dirA; //holds the first dir to be synced QString dirB; //holds the second dir to be synced bool calculating; //these 3 bools are used to diplay progress of rsync at the info window bool transferring; bool deleting; bool ExecuteBefore; //becomes true if a before command is to be executed, not rsync !! bool ExecuteAfter; //becomes true if a after command is to be executed, not rsync !! bool ExecuteBeforeExitedError; // becomes true if a before command exits with an error bool StopTaskExecution; // becomes true if we want to stop task execution bool ProcReportedError; //becomes true if any process reports an error (eg failed to start) bool DestCreateFail; // This will become true if destination does not exist and cannot be created int repeatOnFailMax; // This is equal to the number of times a command will run when it fails int repeatOnFailTry; // This is the current run of a command int currentBefore; //count variable for commands to be executed before task int currentAfter; //count variable for commands to be executed before task void executeBeforeTask(); //function to start execution of pre-task commands void executeAfterTask(); //function to start execution of post-task commands //tray icon stuff QString trayMessage; // tray baloon message text QAction *actionAbort; QAction *minimizeToTray; QAction *restoreFromTray; QMenu *LBtrayMenu; void createTrayIcon(); // create the tray icon + relevant actions bool isMinimizedToTray; // becomes true if the gui is minimized to tray protected: void closeEvent(QCloseEvent *event); }; #endif // end of luckybackupwindow.h-------------------------------------------------------------- luckybackup-0.5.0/src/helpBrowser.h0000666000175000017500000000442712073243674016654 0ustar luckybluckyb/* ---------------------------------- helpBrowser.h --------------------------------------------------------------------------- header file used by helpBrowser.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 12 January 2012 =============================================================================================================================== ===============================================================================================================================*/ #ifndef HELPBROWSER_H #define HELPBROWSER_H #include "ui_helpBrowser.h" //============================================================================================================== //Declaration of helpBrowser class (this is the dialog with a textbrowser & 1 button) class helpBrowser : public QDialog { Q_OBJECT public: helpBrowser (QUrl, QWidget *parent=0); void scrollToChapter(QString chapter) {uiB.browser -> scrollToAnchor(chapter);} private slots: void okay(); private: Ui::helpBrowser uiB; }; #endif // end of helpBrowser.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/operationClass.h0000666000175000017500000005407012722006224017332 0ustar luckybluckyb/* ------------------ operationClass.h -------------------------------------------------------------------------------------- header file for luckyBackup project =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #ifndef OPERATIONCLASS_H #define OPERATIONCLASS_H #include #include //============================================================================================================== //Declaration of operation class (this is the class that holds operation's name & arguments) class operation { public: operation() //constructor { itsName = ""; itsArguments.clear(); //itsArguments << ""; itsDescription = ""; itsSource = ""; itsDestination = ""; itsConnectRestore = ""; itsLastExecutionErrors = -1; itsExclude = false; itsInclude = false; itsIncludeModeNormal = false; itsByPassWARNING = false; itsCloneWARNING = true; itsRepeatOnFail = 0; itsKeepSnapshots = 1; itsSnapshotsList.clear(); itsOptionsFATntfs = false; itsOptionsSuper = false; itsOptionsNumericIDs = false; itsOptionsVss = false; itsOptionsRestorent = false; itsIncludeFromFile = false; itsExcludeFromFile = false; itsExcludeGVFS = false; itsExecuteBeforeList.clear(); itsExecuteBeforeListState.clear(); itsExecuteAfterList.clear(); itsExecuteAfterListState.clear(); } ~operation() {} //destructor //Functions - get class operation data-------------------------------------------------------------------------------------- QString GetName() const {return itsName;} QString GetDescription() const {return itsDescription;} QStringList GetArgs() const {return itsArguments;} bool GetIncluded () const {return itsIncluded;} bool GetCRITICAL () const {return itsCRITICAL;} bool GetWARNING () const {return itsWARNING;} bool GetOK () const {return itsOK;} bool GetDestMounted () const {return itsDestMounted;} bool GetSourceMounted () const {return itsSourceMounted;} bool GetSourcePerms() const {return itsSourcePerms;} bool GetDestPerms () const {return itsDestPerms;} bool GetPerform () const {return itsPerform;} bool GetByPassWARNING () const {return itsByPassWARNING;} bool GetCloneWARNING () const {return itsCloneWARNING;} int GetRepeatOnFail() const {return itsRepeatOnFail;} QDateTime GetLastExecutionTime() const {return itsLastExecutionTime;} int GetLastExecutionErrors() const {return itsLastExecutionErrors;} int GetSnapshotsListSize () const {return itsSnapshotsList.size();} QStringList GetSnapshotsList () const {return itsSnapshotsList;} QString GetSnapshotsListItem (int itemPosition) const {return itsSnapshotsList.value(itemPosition);} int GetKeepSnapshots () const {return itsKeepSnapshots;} QString GetConnectRestore () const {return itsConnectRestore;} bool GetTypeDirContents () const {return itsTypeDirContents;} bool GetTypeDirName () const {return itsTypeDirName;} bool GetTypeSync () const {return itsTypeSync;} QString GetSource() const {return itsSource;} QString GetDestination() const {return itsDestination;} bool GetExclude() const {return itsExclude;} bool GetExcludeFromFile() const {return itsExcludeFromFile;} QString GetExcludeFile() const {return itsExcludeFile;} bool GetExcludeTemp() const {return itsExcludeTemp;} bool GetExcludeCache () const {return itsExcludeCache;} bool GetExcludeBackup () const {return itsExcludeBackup;} bool GetExcludeMount() const {return itsExcludeMount;} bool GetExcludeLostFound() const {return itsExcludeLostFound;} bool GetExcludeSystem() const {return itsExcludeSystem;} bool GetExcludeTrash() const {return itsExcludeTrash;} bool GetExcludeGVFS() const {return itsExcludeGVFS;} int GetExcludeListSize () const {return itsExcludeList.size();} QString GetExcludeListItem (int itemPosition) const {return itsExcludeList.value(itemPosition);} bool GetInclude() const {return itsInclude;} bool GetIncludeFromFile() const {return itsIncludeFromFile;} bool GetIncludeModeNormal() const {return itsIncludeModeNormal;} QString GetIncludeFile() const {return itsIncludeFile;} int GetIncludeListSize () const {return itsIncludeList.size();} QString GetIncludeListItem (int itemPosition) const {return itsIncludeList.value(itemPosition);} bool GetRemote () const {return itsRemote;} bool GetRemoteModule () const {return itsRemoteModule;} bool GetRemoteDestination () const {return itsRemoteDestination;} bool GetRemoteSource () const {return itsRemoteSource;} bool GetRemoteSSH () const {return itsRemoteSSH;} QString GetRemoteHost () const {return itsRemoteHost;} QString GetRemoteUser () const {return itsRemoteUser;} QString GetRemotePassword () const {return itsRemotePassword;} QString GetRemoteSSHPassword () const {return itsRemoteSSHPassword;} QString GetRemoteSSHPasswordStr () const{return itsRemoteSSHPasswordStr;} QString GetRemoteSSHOptions () const {return itsRemoteSSHOptions;} int GetRemoteSSHPort () const {return itsRemoteSSHPort;} bool GetOptionsUpdate () const {return itsOptionsUpdate;} bool GetOptionsDelete () const {return itsOptionsDelete;} bool GetOptionsRecurse () const {return itsOptionsRecurse;} bool GetOptionsOwnership () const {return itsOptionsOwnership;} bool GetOptionsSymlinks () const {return itsOptionsSymlinks;} bool GetOptionsPermissions () const {return itsOptionsPermissions;} bool GetOptionsDevices () const {return itsOptionsDevices;} bool GetOptionsCVS () const {return itsOptionsCVS;} bool GetOptionsHardLinks () const {return itsOptionsHardLinks;} bool GetOptionsFATntfs() const {return itsOptionsFATntfs;} bool GetOptionsSuper() const {return itsOptionsSuper;} bool GetOptionsNumericIDs() const {return itsOptionsNumericIDs;} //windows related bool GetOptionsVss () const {return itsOptionsVss;} bool GetOptionsRestorent () const {return itsOptionsRestorent;} QString GetTempPath () const {return itsTempPath;} QString GetLuckyBackupDir ( ) {return itsAppDir;} QString GetVshadowDir () const {return itsVshadowDir;} QString GetRsyncCommand () const {return itsRsyncCommand;} QString GetDosdevCommand () const {return itsDosdevCommand;} QString GetCygpathCommand () const {return itsCygpathCommand;} QString GetSshCommand () const {return itsSshCommand;} // user options int GetOptionsListSize () const {return itsOptionsList.size();} QString GetOptionsListItem (int itemPosition) const {return itsOptionsList.value(itemPosition);} int GetExecuteBeforeListSize () const {return itsExecuteBeforeList.size();} QString GetExecuteBeforeListItem (int itemPosition) const {return itsExecuteBeforeList.value(itemPosition);} bool GetExecuteBeforeListItemState (int itemPosition) const {return itsExecuteBeforeListState.value(itemPosition);} int GetExecuteAfterListSize () const {return itsExecuteAfterList.size();} QString GetExecuteAfterListItem (int itemPosition) const {return itsExecuteAfterList.value(itemPosition);} bool GetExecuteAfterListItemState (int itemPosition) const {return itsExecuteAfterListState.value(itemPosition);} //Functions - set class operation data -------------------------------------------------------------------------------------- void SetName(QString name) {itsName = name;} void SetDescription(QString description) {itsDescription = description;} // Task state & general properties void SetIncluded(bool included) {itsIncluded = included;} void SetWARNING(bool warning) {itsWARNING = warning;} void SetCRITICAL(bool critical) {itsCRITICAL = critical;} void SetOK(bool ok) {itsOK = ok;} void SetSourceMounted(bool mounted) {itsSourceMounted = mounted;} void SetDestMounted(bool mounted) {itsDestMounted = mounted;} void SetSourcePerms(bool sourceperms) {itsSourcePerms = sourceperms;} void SetDestPerms(bool destperms) {itsDestPerms = destperms;} void SetPerform(bool perform) {itsPerform = perform;} void SetByPassWARNING(bool ByPassWARNING) {itsByPassWARNING = ByPassWARNING;} void SetCloneWARNING(bool CloneWARNING) {itsCloneWARNING = CloneWARNING;} void SetRepeatOnFail(int RepeatOnFail) {itsRepeatOnFail = RepeatOnFail;} // last execution time & errors void SetLastExecutionTime(QDateTime lastTime) {itsLastExecutionTime = lastTime;} void SetLastExecutionErrors(int LastExecutionErrors){itsLastExecutionErrors = LastExecutionErrors;} // snapshots list void SetSnapshotsList (QStringList snapslist) {itsSnapshotsList = snapslist;} void AddSnapshotsListItem (QString itemText) {itsSnapshotsList.append(itemText);} void ReplaceSnapshotsListItem (int position,QString text) {itsSnapshotsList.replace(position,text);} void RemoveSnapshotsListItem (int position) {itsSnapshotsList.removeAt(position);} void ClearSnapshotsList () {itsSnapshotsList.clear();} bool SnapshotsListIsEmpty () {return itsSnapshotsList.isEmpty();} void SetKeepSnapshots(int keepsnapshots) {itsKeepSnapshots = keepsnapshots;} // Arguments list void SetArgs (QStringList arguments) {itsArguments = arguments;} void AppendArg (QString argument) {if (argument!="") itsArguments.append(argument);} void InsertDryRunArg () {itsArguments.insert(itsArguments.size()-2,"--dry-run");} // connection with other task void SetConnectRestore (QString Connection) { itsConnectRestore = Connection;} // Task type void SetTypeDirContents (bool TypeDirContents) { itsTypeDirContents = TypeDirContents;} void SetTypeDirName (bool TypeDirName) { itsTypeDirName = TypeDirName;} void SetTypeSync (bool TypeSync) { itsTypeSync = TypeSync;} // source & destination void SetSource(QString source) {itsSource = source;} void SetDestination(QString destination) {itsDestination = destination;} // Exclude ~~~~~~~~~~~ // Exclude boolean void SetExclude() { if ( ((itsExcludeFromFile) && !(itsExcludeFile=="")) || (itsExcludeTemp)||(itsExcludeCache)||(itsExcludeBackup)|| (itsExcludeMount)||(itsExcludeLostFound)||(itsExcludeSystem)|| (itsExcludeTrash)||(itsExcludeGVFS)||(itsExcludeList.size()>0) ) itsExclude = true; else itsExclude = false; } // Exclude templates void SetExcludeTemp(bool ExcludeTemp) { itsExcludeTemp = ExcludeTemp;} void SetExcludeCache (bool ExcludeCache) { itsExcludeCache = ExcludeCache;} void SetExcludeBackup (bool ExcludeBackup) { itsExcludeBackup = ExcludeBackup;} void SetExcludeMount(bool ExcludeMount) { itsExcludeMount = ExcludeMount;} void SetExcludeLostFound(bool ExcludeLostFound) { itsExcludeLostFound = ExcludeLostFound;} void SetExcludeSystem(bool ExcludeSystem) { itsExcludeSystem = ExcludeSystem;} void SetExcludeTrash(bool ExcludeTrash) { itsExcludeTrash = ExcludeTrash;} void SetExcludeGVFS(bool ExcludeGVFS) { itsExcludeGVFS = ExcludeGVFS;} // Exclude from file void SetExcludeFromFile(bool ExcludeFromFile) { itsExcludeFromFile = ExcludeFromFile;} void SetExcludeFile(QString ExcludeFile) { itsExcludeFile = ExcludeFile;} //Exclude list - user defined void AddExcludeListItem (QString itemText) { itsExcludeList.append(itemText);} // Include ~~~~~~~~~~~~~ // Include boolean void SetInclude() { if ( ((itsIncludeFromFile) && !(itsIncludeFile=="")) || (itsIncludeList.size()>0) ) itsInclude = true; else itsInclude = false;} // Include from file void SetIncludeFromFile(bool IncludeFromFile) { itsIncludeFromFile = IncludeFromFile;} // Include mode void SetIncludeModeNormal(bool IncludeModeNormal) { itsIncludeModeNormal = IncludeModeNormal;} void SetIncludeFile(QString IncludeFile) { itsIncludeFile = IncludeFile;} // Include list void AddIncludeListItem (QString itemText) { itsIncludeList.append(itemText);} // Remote void SetRemote (bool Remote) { itsRemote = Remote;} void SetRemoteModule (bool RemoteModule) { itsRemoteModule = RemoteModule;} void SetRemoteDestination (bool RemoteDestination) { itsRemoteDestination = RemoteDestination;} void SetRemoteSource (bool RemoteSource) { itsRemoteSource = RemoteSource;} void SetRemoteSSH (bool RemoteSSH) { itsRemoteSSH = RemoteSSH;} void SetRemoteHost (QString RemoteHost) { itsRemoteHost = RemoteHost;} void SetRemoteUser (QString RemoteUser) { itsRemoteUser = RemoteUser;} void SetRemotePassword (QString RemotePassword) { itsRemotePassword = RemotePassword;} void SetRemoteSSHPassword (QString RemoteSSHPassword) { itsRemoteSSHPassword = RemoteSSHPassword;} void SetRemoteSSHPasswordStr (QString RemoteSSHPassword) { itsRemoteSSHPasswordStr = RemoteSSHPassword;} void SetRemoteSSHOptions (QString RemoteSSHOptions) { itsRemoteSSHOptions = RemoteSSHOptions;} void SetRemoteSSHPort (int RemoteSSHPort) { itsRemoteSSHPort = RemoteSSHPort;} // Command options - templates void SetOptionsUpdate (bool OptionsUpdate) { itsOptionsUpdate = OptionsUpdate;} void SetOptionsDelete (bool OptionsDelete) { itsOptionsDelete = OptionsDelete;} void SetOptionsRecurse (bool OptionsRecurse) { itsOptionsRecurse = OptionsRecurse;} void SetOptionsOwnership (bool OptionsOwnership) { itsOptionsOwnership = OptionsOwnership;} void SetOptionsSymlinks (bool OptionsSymlinks) { itsOptionsSymlinks = OptionsSymlinks;} void SetOptionsPermissions (bool OptionsPermissions){ itsOptionsPermissions = OptionsPermissions;} void SetOptionsDevices (bool OptionsDevices) { itsOptionsDevices = OptionsDevices;} void SetOptionsCVS (bool OptionsCVS) { itsOptionsCVS = OptionsCVS;} void SetOptionsHardLinks (bool OptionsHardLinks) { itsOptionsHardLinks = OptionsHardLinks;} void SetOptionsFATntfs (bool OptionsFATntfs) { itsOptionsFATntfs = OptionsFATntfs;} void SetOptionsSuper (bool OptionsSuper) { itsOptionsSuper = OptionsSuper;} void SetOptionsNumericIDs (bool OptionsNumeriIDs) { itsOptionsNumericIDs = OptionsNumeriIDs;} // windows related options void SetOptionsRestorent (bool Options) { itsOptionsRestorent = Options;} void SetOptionsVss (bool Options) { itsOptionsVss = Options;} void SetTempPath (QString s) {itsTempPath = s;} void SetLuckyBackupDir (QString s) { itsAppDir = s; } void SetVshadowDir (QString s) {itsVshadowDir = s;} void SetRsyncCommand (QString s) {itsRsyncCommand = s;} void SetDosdevCommand (QString s) {itsDosdevCommand = s;} void SetCygpathCommand (QString s) {itsCygpathCommand = s;} void SetSshCommand (QString s) {itsSshCommand = s;} // Command options list - user defined void AddOptionsListItem (QString itemText) { itsOptionsList.append(itemText);} // Execute before/after list void AddExecuteBeforeListItem (QString itemText) { itsExecuteBeforeList.append(itemText);} void AddExecuteBeforeListItemState (bool itemState) { itsExecuteBeforeListState.append(itemState);} void AddExecuteAfterListItem (QString itemText) { itsExecuteAfterList.append(itemText);} void AddExecuteAfterListItemState (bool itemState) { itsExecuteAfterListState.append(itemState);} private: QString itsName; QStringList itsArguments; QString itsDescription; bool itsIncluded; bool itsCRITICAL; bool itsWARNING; bool itsOK; bool itsSourceMounted; bool itsDestMounted; bool itsSourcePerms; bool itsDestPerms; bool itsPerform; bool itsByPassWARNING; bool itsCloneWARNING; int itsRepeatOnFail; QDateTime itsLastExecutionTime; int itsLastExecutionErrors; QStringList itsSnapshotsList; int itsKeepSnapshots; QString itsConnectRestore; bool itsTypeDirName; bool itsTypeDirContents; bool itsTypeSync; QString itsDestination; QString itsSource; bool itsExclude; bool itsExcludeTemp; bool itsExcludeCache; bool itsExcludeBackup; bool itsExcludeMount; bool itsExcludeLostFound; bool itsExcludeSystem; bool itsExcludeTrash; bool itsExcludeGVFS; bool itsExcludeFromFile; QString itsExcludeFile; QStringList itsExcludeList; bool itsInclude; bool itsIncludeFromFile; bool itsIncludeModeNormal; QString itsIncludeFile; QStringList itsIncludeList; bool itsRemote; bool itsRemoteModule; bool itsRemoteDestination; bool itsRemoteSource; bool itsRemoteSSH; QString itsRemoteHost; QString itsRemoteUser; QString itsRemotePassword; QString itsRemoteSSHPassword; QString itsRemoteSSHPasswordStr; QString itsRemoteSSHOptions; int itsRemoteSSHPort; bool itsOptionsUpdate; bool itsOptionsDelete; bool itsOptionsRecurse; bool itsOptionsOwnership; bool itsOptionsSymlinks; bool itsOptionsPermissions; bool itsOptionsDevices; bool itsOptionsCVS; bool itsOptionsHardLinks; bool itsOptionsFATntfs; bool itsOptionsSuper; bool itsOptionsNumericIDs; //windows related variables bool itsOptionsVss; bool itsOptionsRestorent; QString itsTempPath; QString itsAppDir; QString itsVshadowDir; QString itsRsyncCommand; QString itsDosdevCommand; QString itsCygpathCommand; QString itsSshCommand; //user defined options list QStringList itsOptionsList; QStringList itsExecuteBeforeList; QList itsExecuteBeforeListState; QStringList itsExecuteAfterList; QList itsExecuteAfterListState; }; #endif // end of operationClass.h-------------------------------------------------------------- luckybackup-0.5.0/src/qurlinfo.cpp0000666000175000017500000004043312731510014016531 0ustar luckybluckyb/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qurlinfo.h" #include "qurl.h" #include "qdir.h" #include "limits.h" QT_BEGIN_NAMESPACE class QUrlInfoPrivate { public: QUrlInfoPrivate() : permissions(0), size(0), isDir(false), isFile(true), isSymLink(false), isWritable(true), isReadable(true), isExecutable(false) {} QString name; int permissions; QString owner; QString group; qint64 size; QDateTime lastModified; QDateTime lastRead; bool isDir; bool isFile; bool isSymLink; bool isWritable; bool isReadable; bool isExecutable; }; /*! \class QUrlInfo \brief The QUrlInfo class stores information about URLs. \ingroup io \ingroup network \inmodule QtNetwork The information about a URL that can be retrieved includes name(), permissions(), owner(), group(), size(), lastModified(), lastRead(), isDir(), isFile(), isSymLink(), isWritable(), isReadable() and isExecutable(). You can create your own QUrlInfo objects passing in all the relevant information in the constructor, and you can modify a QUrlInfo; for each getter mentioned above there is an equivalent setter. Note that setting values does not affect the underlying resource that the QUrlInfo provides information about; for example if you call setWritable(true) on a read-only resource the only thing changed is the QUrlInfo object, not the resource. \sa QUrl, {FTP Example} */ /*! \enum QUrlInfo::PermissionSpec This enum is used by the permissions() function to report the permissions of a file. \value ReadOwner The file is readable by the owner of the file. \value WriteOwner The file is writable by the owner of the file. \value ExeOwner The file is executable by the owner of the file. \value ReadGroup The file is readable by the group. \value WriteGroup The file is writable by the group. \value ExeGroup The file is executable by the group. \value ReadOther The file is readable by anyone. \value WriteOther The file is writable by anyone. \value ExeOther The file is executable by anyone. */ /*! Constructs an invalid QUrlInfo object with default values. \sa isValid() */ QUrlInfo::QUrlInfo() { d = 0; } /*! Copy constructor, copies \a ui to this URL info object. */ QUrlInfo::QUrlInfo(const QUrlInfo &ui) { if (ui.d) { d = new QUrlInfoPrivate; *d = *ui.d; } else { d = 0; } } /*! Constructs a QUrlInfo object by specifying all the URL's information. The information that is passed is the \a name, file \a permissions, \a owner and \a group and the file's \a size. Also passed is the \a lastModified date/time and the \a lastRead date/time. Flags are also passed, specifically, \a isDir, \a isFile, \a isSymLink, \a isWritable, \a isReadable and \a isExecutable. */ QUrlInfo::QUrlInfo(const QString &name, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable) { d = new QUrlInfoPrivate; d->name = name; d->permissions = permissions; d->owner = owner; d->group = group; d->size = size; d->lastModified = lastModified; d->lastRead = lastRead; d->isDir = isDir; d->isFile = isFile; d->isSymLink = isSymLink; d->isWritable = isWritable; d->isReadable = isReadable; d->isExecutable = isExecutable; } /*! Constructs a QUrlInfo object by specifying all the URL's information. The information that is passed is the \a url, file \a permissions, \a owner and \a group and the file's \a size. Also passed is the \a lastModified date/time and the \a lastRead date/time. Flags are also passed, specifically, \a isDir, \a isFile, \a isSymLink, \a isWritable, \a isReadable and \a isExecutable. */ QUrlInfo::QUrlInfo(const QUrl &url, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable) { d = new QUrlInfoPrivate; d->name = QFileInfo(url.path()).fileName(); d->permissions = permissions; d->owner = owner; d->group = group; d->size = size; d->lastModified = lastModified; d->lastRead = lastRead; d->isDir = isDir; d->isFile = isFile; d->isSymLink = isSymLink; d->isWritable = isWritable; d->isReadable = isReadable; d->isExecutable = isExecutable; } /*! Sets the name of the URL to \a name. The name is the full text, for example, "http://qt.nokia.com/doc/qurlinfo.html". If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setName(const QString &name) { if (!d) d = new QUrlInfoPrivate; d->name = name; } /*! If \a b is true then the URL is set to be a directory; if \a b is false then the URL is set not to be a directory (which normally means it is a file). (Note that a URL can refer to both a file and a directory even though most file systems do not support this.) If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setDir(bool b) { if (!d) d = new QUrlInfoPrivate; d->isDir = b; } /*! If \a b is true then the URL is set to be a file; if \b is false then the URL is set not to be a file (which normally means it is a directory). (Note that a URL can refer to both a file and a directory even though most file systems do not support this.) If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setFile(bool b) { if (!d) d = new QUrlInfoPrivate; d->isFile = b; } /*! Specifies that the URL refers to a symbolic link if \a b is true and that it does not if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setSymLink(bool b) { if (!d) d = new QUrlInfoPrivate; d->isSymLink = b; } /*! Specifies that the URL is writable if \a b is true and not writable if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setWritable(bool b) { if (!d) d = new QUrlInfoPrivate; d->isWritable = b; } /*! Specifies that the URL is readable if \a b is true and not readable if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setReadable(bool b) { if (!d) d = new QUrlInfoPrivate; d->isReadable = b; } /*! Specifies that the owner of the URL is called \a s. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setOwner(const QString &s) { if (!d) d = new QUrlInfoPrivate; d->owner = s; } /*! Specifies that the owning group of the URL is called \a s. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setGroup(const QString &s) { if (!d) d = new QUrlInfoPrivate; d->group = s; } /*! Specifies the \a size of the URL. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setSize(qint64 size) { if (!d) d = new QUrlInfoPrivate; d->size = size; } /*! Specifies that the URL has access permissions \a p. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setPermissions(int p) { if (!d) d = new QUrlInfoPrivate; d->permissions = p; } /*! Specifies that the object the URL refers to was last modified at \a dt. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setLastModified(const QDateTime &dt) { if (!d) d = new QUrlInfoPrivate; d->lastModified = dt; } /*! \since 4.4 Specifies that the object the URL refers to was last read at \a dt. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setLastRead(const QDateTime &dt) { if (!d) d = new QUrlInfoPrivate; d->lastRead = dt; } /*! Destroys the URL info object. */ QUrlInfo::~QUrlInfo() { delete d; } /*! Assigns the values of \a ui to this QUrlInfo object. */ QUrlInfo &QUrlInfo::operator=(const QUrlInfo &ui) { if (ui.d) { if (!d) d= new QUrlInfoPrivate; *d = *ui.d; } else { delete d; d = 0; } return *this; } /*! Returns the file name of the URL. \sa isValid() */ QString QUrlInfo::name() const { if (!d) return QString(); return d->name; } /*! Returns the permissions of the URL. You can use the \c PermissionSpec flags to test for certain permissions. \sa isValid() */ int QUrlInfo::permissions() const { if (!d) return 0; return d->permissions; } /*! Returns the owner of the URL. \sa isValid() */ QString QUrlInfo::owner() const { if (!d) return QString(); return d->owner; } /*! Returns the group of the URL. \sa isValid() */ QString QUrlInfo::group() const { if (!d) return QString(); return d->group; } /*! Returns the size of the URL. \sa isValid() */ qint64 QUrlInfo::size() const { if (!d) return 0; return d->size; } /*! Returns the last modification date of the URL. \sa isValid() */ QDateTime QUrlInfo::lastModified() const { if (!d) return QDateTime(); return d->lastModified; } /*! Returns the date when the URL was last read. \sa isValid() */ QDateTime QUrlInfo::lastRead() const { if (!d) return QDateTime(); return d->lastRead; } /*! Returns true if the URL is a directory; otherwise returns false. \sa isValid() */ bool QUrlInfo::isDir() const { if (!d) return false; return d->isDir; } /*! Returns true if the URL is a file; otherwise returns false. \sa isValid() */ bool QUrlInfo::isFile() const { if (!d) return false; return d->isFile; } /*! Returns true if the URL is a symbolic link; otherwise returns false. \sa isValid() */ bool QUrlInfo::isSymLink() const { if (!d) return false; return d->isSymLink; } /*! Returns true if the URL is writable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isWritable() const { if (!d) return false; return d->isWritable; } /*! Returns true if the URL is readable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isReadable() const { if (!d) return false; return d->isReadable; } /*! Returns true if the URL is executable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isExecutable() const { if (!d) return false; return d->isExecutable; } /*! Returns true if \a i1 is greater than \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::greaterThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { switch (sortBy) { case QDir::Name: return i1.name() > i2.name(); case QDir::Time: return i1.lastModified() > i2.lastModified(); case QDir::Size: return i1.size() > i2.size(); default: return false; } } /*! Returns true if \a i1 is less than \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::lessThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { return !greaterThan(i1, i2, sortBy); } /*! Returns true if \a i1 equals to \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::equal(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { switch (sortBy) { case QDir::Name: return i1.name() == i2.name(); case QDir::Time: return i1.lastModified() == i2.lastModified(); case QDir::Size: return i1.size() == i2.size(); default: return false; } } /*! Returns true if this QUrlInfo is equal to \a other; otherwise returns false. \sa lessThan(), equal() */ bool QUrlInfo::operator==(const QUrlInfo &other) const { if (!d) return other.d == 0; if (!other.d) return false; return (d->name == other.d->name && d->permissions == other.d->permissions && d->owner == other.d->owner && d->group == other.d->group && d->size == other.d->size && d->lastModified == other.d->lastModified && d->lastRead == other.d->lastRead && d->isDir == other.d->isDir && d->isFile == other.d->isFile && d->isSymLink == other.d->isSymLink && d->isWritable == other.d->isWritable && d->isReadable == other.d->isReadable && d->isExecutable == other.d->isExecutable); } /*! \fn bool QUrlInfo::operator!=(const QUrlInfo &other) const \since 4.2 Returns true if this QUrlInfo is not equal to \a other; otherwise returns false. \sa lessThan(), equal() */ /*! Returns true if the URL info is valid; otherwise returns false. Valid means that the QUrlInfo contains real information. You should always check if the URL info is valid before relying on the values. */ bool QUrlInfo::isValid() const { return d != 0; } QT_END_NAMESPACE luckybackup-0.5.0/src/scheduleDialog.cpp0000666000175000017500000013653712722006207017625 0ustar luckybluckyb/* ---------------------------------- scheduleDialog.cpp --------------------------------------------------------------------------- Display a dialog. Schedules profiles via cron =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "scheduleDialog.h" #include #include #include #include #include "scheduleClass.h" #include "global.h" #include "textDialog.h" int const maxSchedule = 20; //The maximum number or profiles schedule permitted schedule *Schedule[maxSchedule]; //The array that holds name etc of "schedule list" //QFile scheduleFile (schedulefilename ); QProcess *cronProcess; //crontab process // class scheduleDialog Constructor================================================================================================= // schedule existing profiles to execute via cron scheduleDialog::scheduleDialog (QDialog *parent) : QDialog (parent) , scheduleFile(schedulefilename) { uiS.setupUi(this); //variables initialization TotalSchedule=0; //The number of available profiles schedulesin "schedule list"- starts from 1 currentSchedule=0; //this holds the current row from the "schedule list"- starts from 0 noSchedules = true; //becomes true when no schedules are declared changesMade = false; //becomes true if changes are made but no cronIt is pressed //connections ---------------------------------------------------------------------------------------------------- connect(uiS.pushButton_schedule, SIGNAL( pressed() ), this, SLOT(schedulePressed() ) ); //cronIT pushButton connect(uiS.pushButton_cancel, SIGNAL( pressed() ), this, SLOT(cancelPressed() ) ); //cancel pushButton connect(uiS.pushButton_add, SIGNAL( pressed() ), this, SLOT(addPressed() ) ); //add command pushButton connect(uiS.pushButton_remove, SIGNAL( pressed() ), this, SLOT(removePressed() ) ); //remove command pushButton connect(uiS.pushButton_modify, SIGNAL( pressed() ), this, SLOT(modifyPressed() ) ); //modify command pushButton connect(uiS.pushButton_viewCrontab, SIGNAL( pressed() ), this, SLOT(viewCrontab() ) ); //view curreent crontab command pushButton connect(uiS.pushButton_modifyOkay, SIGNAL( pressed() ), this, SLOT(okaySchedulePressed() ) ); //modify okay pushButton connect(uiS.pushButton_modifyCancel, SIGNAL( pressed() ), this, SLOT(modifyCancelPressed() ) ); //modify cancel pushButton connect(uiS.listWidget_schedule , SIGNAL( currentRowChanged(int) ), this, SLOT(fillDetails() ) ); //list item selection changed cronProcess = new QProcess(this); //create a new qprocess (for crontab) & connect signals connect(cronProcess, SIGNAL(readyReadStandardError()), this, SLOT(appendCrontabOutput())); connect(cronProcess, SIGNAL(readyReadStandardOutput()), this, SLOT(appendCrontabOutput())); //initialize view of widgets uiS.groupBox_addProfileSchedule -> setVisible(false); uiS.listWidget_schedule -> setEnabled(true); uiS.pushButton_add -> setEnabled(true); uiS.pushButton_modify -> setEnabled(true); uiS.pushButton_remove -> setEnabled(true); uiS.pushButton_cancel -> setEnabled(true); uiS.pushButton_schedule -> setEnabled(true); //profile combobox initialization uiS.comboBox_profile -> clear(); currentProfileIndex = -1; QDir profiledir(profileDir); profiledir.setFilter(QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot); profiledir.setSorting(QDir::Name | QDir::LocaleAware); QStringList profileNames = profiledir.entryList(QStringList("*.profile")); QString profilename=""; for (count = 0; count < profileNames.size(); ++count) { profilename = profileNames[count]; if (currentProfile == profileDir + profilename) // set the currentProfileIndex to the index of the current profile currentProfileIndex = count; profilename.chop(8); uiS.comboBox_profile -> addItem (profilename); } if (currentProfileIndex == -1) // if no default profile exists currentProfileIndex = 0; //open the schedule.dat file and fill arrays & schedule list if (!scheduleFile.open(QIODevice::ReadOnly)) //if there is an error opening it, delete it to create a new one scheduleFile.remove(); else { QTextStream in(&scheduleFile); QString ScheduleLine=""; //temp variable to import the profile line by line ScheduleLine = in.readLine(); // First check if the profile is a text or data stream // if data, use the qvariant style if (ScheduleLine !="***************************** WARNING *****************************") { //in.reset(); scheduleFile.close(); scheduleFile.open(QIODevice::ReadOnly); //close & reopen the file // Try to read the schedulefile in the old data/qvariant format (not a text) // This will probably become obsolete after some time // Last version qvariant is used: 0.4.6 QDataStream inV(&scheduleFile); inV.setVersion(QDataStream::Qt_4_3); QVariant v; //we will import everything as QVariant using this temp variable QString vString; //temp variable to import "labels" of real data QString tempAppName = "asxeto"; double tempAppVersion=0; inV>>v; if (v.toString()=="appName") {inV >> v; tempAppName = v.toString();} //input the application name & version-------------------------- inV>>v; if (v.toString()=="appVersion") {inV >> v; tempAppVersion = v.toDouble();} if ( (tempAppName != appName) || (tempAppVersion < validScheduleVersion) )//check if the file is a valid luckybackup schedule file { message = tr("The existent schedule file is not a valid luckyBackup v.","v is for version") + countStr.setNum(appVersion) + tr(" file","BEWARE of the whitespace before file")+"

"+tr("Starting from scratch")+"...
" ; textDialog textdialogW ("QtWarning", message, this); textdialogW.exec(); scheduleFile.remove(); return; } inV>>v; if (v.toString()=="TotalSchedules") {inV >> v; TotalSchedule = v.toInt();} //input the size of the schedule list first currentSchedule = 0; vString=""; while (currentSchedule < TotalSchedule) { schedule *tempSchedule = new schedule; inV>>v; vString = v.toString(); inV >> v; //input a label in vString and real data in v while (vString != "current schedule end") { if (vString == "ScheduleName") tempSchedule -> SetName(v.toString()); if (vString == "ProfilePath") tempSchedule -> SetProfilePath(v.toString()); if (vString == "ProfileName") tempSchedule -> SetProfileName(v.toString()); if (vString == "ScheduleMonth") tempSchedule -> SetMonth(v.toInt()); if (vString == "ScheduleMonthDay") tempSchedule -> SetMonthDay(v.toInt()); if (vString == "ScheduleWeekDay") tempSchedule -> SetWeekDay(v.toInt()); if (vString == "ScheduleHour") tempSchedule -> SetHour(v.toInt()); if (vString == "ScheduleMinute") tempSchedule -> SetMinute(v.toInt()); if (vString == "ScheduleSkipCritical") tempSchedule -> SetSkipCritical(v.toBool()); if (vString == "ScheduleConsoleMode") tempSchedule -> SetConsoleMode(v.toBool()); if (vString == "ScheduleAtReboot") tempSchedule -> SetReboot(v.toBool()); if (vString == "ScheduleAtRebootDelay") tempSchedule -> SetDelayReboot(v.toInt()); inV>>v; vString = v.toString(); if (vString!="current schedule end") inV >> v; else Schedule[currentSchedule] = tempSchedule; } uiS.listWidget_schedule -> addItem(scheduleText(Schedule[currentSchedule] -> GetProfileName(), Schedule[currentSchedule] -> GetMonth(), Schedule[currentSchedule] -> GetMonthDay(), Schedule[currentSchedule] -> GetWeekDay(), Schedule[currentSchedule] -> GetHour(), Schedule[currentSchedule] -> GetMinute(), Schedule[currentSchedule] -> GetReboot() )); currentSchedule++; } saveScheduleFile(); //re-save the scheduleFile as text } // This is the normal text schedule file used from version 0.4.7 and after else { QString tempAppName = "asxeto"; profileDescription = ""; double tempAppVersion=0; bool IntOk; // Read all lines until the first task line or end of file if invalid while ( !(ScheduleLine.startsWith("[Schedule]")) && (!in.atEnd()) ) { ScheduleLine = in.readLine(); //input the application name & version-------------------------- if (ScheduleLine.startsWith("appName=")) tempAppName = ScheduleLine.remove("appName="); if (ScheduleLine.startsWith("appVersion=")) tempAppVersion = (ScheduleLine.remove("appVersion=")).toDouble(&IntOk); //input the number of schedules if (ScheduleLine.startsWith("TotalSchedules=")) TotalSchedule = (ScheduleLine.remove("TotalSchedules=")).toInt(&IntOk,10); } if ( (tempAppName != appName) || (tempAppVersion < validScheduleVersion) )//check if the file is a valid luckybackup schedule file { message = tr("The existent schedule file is not a valid luckyBackup v.","v is for version") + countStr.setNum(appVersion) + tr(" file","BEWARE of the whitespace before file")+"

"+tr("Starting from scratch")+"...
" ; textDialog textdialogW ("QtWarning", message, this); textdialogW.exec(); scheduleFile.remove(); return; } currentSchedule = 0; ScheduleLine=""; while (currentSchedule < TotalSchedule) { schedule *tempSchedule = new schedule; ScheduleLine = in.readLine(); // inport the next line while ( (!ScheduleLine.startsWith("[Schedule_end]")) && (!in.atEnd()) ) { if (ScheduleLine.startsWith("ScheduleName=")) tempSchedule -> SetName(ScheduleLine.remove("ScheduleName=")); if (ScheduleLine.startsWith("ProfilePath=")) tempSchedule -> SetProfilePath(ScheduleLine.remove("ProfilePath=")); if (ScheduleLine.startsWith("ProfileName=")) tempSchedule -> SetProfileName(ScheduleLine.remove("ProfileName=")); if (ScheduleLine.startsWith("ScheduleMonth=")) tempSchedule -> SetMonth(ScheduleLine.remove("ScheduleMonth=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleMonthDay=")) tempSchedule -> SetMonthDay(ScheduleLine.remove("ScheduleMonthDay=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleWeekDay=")) tempSchedule -> SetWeekDay(ScheduleLine.remove("ScheduleWeekDay=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleHour=")) tempSchedule -> SetHour(ScheduleLine.remove("ScheduleHour=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleMinute=")) tempSchedule -> SetMinute(ScheduleLine.remove("ScheduleMinute=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleSkipCritical=")) tempSchedule -> SetSkipCritical(ScheduleLine.remove("ScheduleSkipCritical=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleConsoleMode=")) tempSchedule -> SetConsoleMode(ScheduleLine.remove("ScheduleConsoleMode=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleAtReboot=")) tempSchedule -> SetReboot(ScheduleLine.remove("ScheduleAtReboot=").toInt(&IntOk,10)); if (ScheduleLine.startsWith("ScheduleAtRebootDelay=")) tempSchedule -> SetDelayReboot(ScheduleLine.remove("ScheduleAtRebootDelay=").toInt(&IntOk,10)); ScheduleLine = in.readLine(); // import the next line if (ScheduleLine.startsWith("[Schedule_end]")) // all properties of the specific schedule have been loaded Schedule[currentSchedule] = tempSchedule; } uiS.listWidget_schedule -> addItem(scheduleText(Schedule[currentSchedule] -> GetProfileName(), Schedule[currentSchedule] -> GetMonth(), Schedule[currentSchedule] -> GetMonthDay(), Schedule[currentSchedule] -> GetWeekDay(), Schedule[currentSchedule] -> GetHour(), Schedule[currentSchedule] -> GetMinute(), Schedule[currentSchedule] -> GetReboot() )); currentSchedule++; } } //TotalSchedule = uiS.listWidget_schedule -> count(); //Get the schedule list size if (TotalSchedule > 0) { uiS.listWidget_schedule -> setCurrentRow(0); noSchedules = false; } else uiS.listWidget_schedule -> addItem(tr("No schedules are declared !!")); scheduleFile.close(); //close the file } // use this cause when the dialog starts and ther's only 1 schedule the filldetails cannot be called !! currentSchedule = uiS.listWidget_schedule -> currentRow(); //current operations list row number fillDetails(); } //=================================================================================================================================================== //------------------------------------------------------------------SLOTS---------------------------------------------------------------------------- //=================================================================================================================================================== // CLOSE button pressed===================================================================================================== void scheduleDialog::cancelPressed() { close(); //emmit a QcloseEvent } //window closebutton pressed or QcloseEvent emitted========================================================================== void scheduleDialog::closeEvent(QCloseEvent *event) { if (changesMade) { textDialog textdialogQ ("QtQuestion", tr("You have made changes without clicking the cronIT button") + ".
" + tr("Are you sure you want to close the schedule dialog ?"), this); textdialogQ.exec(); if (textdialogQ.getGoOn() > 0) //if user answers yes event->accept(); else event->ignore(); } else event->accept(); } // schedule button pressed======================================================================================================= // Read all fields of dialog, fill appropriate variables, saves crontab file and creates a cron job void scheduleDialog::schedulePressed() { if (noSchedules) // if no schedules are declared, remove the info line first uiS.listWidget_schedule -> takeItem (0); TotalSchedule = uiS.listWidget_schedule -> count(); //Get the schedule list size //update schedule file ------------------------------------------------------------------------------------------ if (!saveScheduleFile()) //create a new schedule file { textDialog textdialogI ("QtInformation", tr("Unable to create schedule file")+" !!

"+ scheduleFile.errorString(), this); textdialogI.exec(); } createCron(); //create a cronfile & update user's crontab crontabUpdated = true; changesMade = false; textDialog textdialogI ("QtInformation", "" + currentUser + "

" + tr("Your crontab is updated successfully"), this); textdialogI.exec(); //close(); //emmit a QcloseEvent } // add button pressed===================================================================================================== // shows part of the widget to add a new profile schedule void scheduleDialog::addPressed() { if (noSchedules) // if no schedules are declared, remove the info line first { uiS.listWidget_schedule -> takeItem (0); noSchedules = false; } TotalSchedule = uiS.listWidget_schedule -> count(); //Get the schedule list size currentSchedule = TotalSchedule; //We will add an item !! if ( (TotalSchedule) >= (maxSchedule-1) ) //if the maxSchedulelimit-1 is reached { QMessageBox::warning(this, appName, tr("You have reached the maximum limit of supported scheduled profiles")+ "

"+ tr("You have to remove an item if you wish to add another")+" !!", QMessageBox::Ok | QMessageBox::Default); return; } uiS.groupBox_addProfileSchedule -> setVisible(true); uiS.listWidget_schedule -> setEnabled(false); uiS.groupBox_addProfileSchedule -> setTitle(tr("Add profile schedule")); uiS.pushButton_add -> setEnabled(false); uiS.pushButton_modify -> setEnabled(false); uiS.pushButton_remove -> setEnabled(false); uiS.pushButton_cancel -> setEnabled(false); uiS.pushButton_schedule -> setEnabled(false); uiS.pushButton_viewCrontab -> setEnabled(false); clearScheduleDetails(); } // modify button pressed===================================================================================================== // modifies a profile schedule void scheduleDialog::modifyPressed() { currentSchedule = uiS.listWidget_schedule -> currentRow(); //current operations list row number if ((currentSchedule < 0) || (noSchedules)) //if nothing is selected or no schedules declared, do nothing return; uiS.groupBox_addProfileSchedule -> setVisible(true); uiS.groupBox_addProfileSchedule -> setTitle(tr("Modify profile schedule")); uiS.listWidget_schedule -> setEnabled(false); uiS.pushButton_add -> setEnabled(false); uiS.pushButton_modify -> setEnabled(false); uiS.pushButton_remove -> setEnabled(false); uiS.pushButton_cancel -> setEnabled(false); uiS.pushButton_schedule -> setEnabled(false); uiS.pushButton_viewCrontab -> setEnabled(false); } // List item Remove button pressed============================================================================================== // Removes an item from the schedule list void scheduleDialog::removePressed() { int selected; //schedule list remove button selected = uiS.listWidget_schedule -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiS.listWidget_schedule -> takeItem(selected); //update the Schedules array by shifting the elements one position to the left for (int i = selected; i < TotalSchedule+1; ++i) Schedule[i] = Schedule[i + 1]; // copy next element left TotalSchedule = uiS.listWidget_schedule -> count(); //Get the schedule list size if (TotalSchedule == 0) { noSchedules = true; uiS.listWidget_schedule -> addItem(tr("No schedules are declared !!")); } changesMade = true; } // current button pressed============================================================================================== // Displays the current crontab void scheduleDialog::viewCrontab() { // copy user's crontab to QString CronTab CronTab = ""; if (WINrunning) cronProcess -> start ("at "); // execute crontab -l command & capture output to QString CronTab else cronProcess -> start ("crontab",QStringList() << "-l"); // execute crontab -l command & capture output to QString CronTab cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); if (CronTab == "") CronTab = currentUser + " - " + tr("no crontab entries exist"); else CronTab.prepend("User: " + currentUser + " - " + tr("crontab content") + "\n\n"); textDialog textdialog ("ViewCurrentCrontab", CronTab, this); textdialog.exec(); } // modify cancel button pressed================================================================================================= void scheduleDialog::modifyCancelPressed() { uiS.groupBox_addProfileSchedule -> setTitle(tr("Profile schedule details")); uiS.groupBox_addProfileSchedule -> setVisible(false); uiS.listWidget_schedule -> setEnabled(true); uiS.pushButton_add -> setEnabled(true); uiS.pushButton_modify -> setEnabled(true); uiS.pushButton_remove -> setEnabled(true); uiS.pushButton_cancel -> setEnabled(true); uiS.pushButton_schedule -> setEnabled(true); uiS.pushButton_viewCrontab -> setEnabled(true); TotalSchedule = uiS.listWidget_schedule -> count(); //Get the schedule list size if (TotalSchedule == 0) { noSchedules = true; uiS.listWidget_schedule -> addItem(tr("No schedules are declared !!")); } } // cancelSchedulePressed button pressed=============================================================================================== // sets the Profile Schedule details fields to default values void scheduleDialog::clearScheduleDetails() { //initialize all fields uiS.comboBox_profile -> setCurrentIndex(currentProfileIndex); uiS.comboBox_month -> setCurrentIndex(0); uiS.comboBox_dayOfMonth -> setCurrentIndex(0); uiS.comboBox_DayOfWeek -> setCurrentIndex(0); uiS.spinBox_hour -> setValue(0); uiS.spinBox_minute -> setValue(0); uiS.spinBox_delayReboot -> setValue(3); uiS.checkBox_skipCritical -> setCheckState(Qt::Checked); uiS.checkBox_consoleMode -> setCheckState(Qt::Unchecked); uiS.checkBox_reboot -> setCheckState(Qt::Unchecked); } // fillDetails===================================================================================================== //function to fill the fields of schedule details from arrays void scheduleDialog::fillDetails() { currentSchedule = uiS.listWidget_schedule -> currentRow(); //current operations list row number if ((currentSchedule < 0) || (noSchedules)) //if nothing is selected or no schedules declared, do nothing return; //read array currentSchedule element data & fill add fields uiS.comboBox_profile -> setCurrentIndex( uiS.comboBox_profile -> findText(Schedule[currentSchedule] -> GetProfileName()) ); uiS.comboBox_month -> setCurrentIndex(Schedule[currentSchedule] -> GetMonth()); uiS.comboBox_dayOfMonth -> setCurrentIndex(Schedule[currentSchedule] -> GetMonthDay()); uiS.comboBox_DayOfWeek -> setCurrentIndex(Schedule[currentSchedule] -> GetWeekDay()); uiS.spinBox_hour -> setValue(Schedule[currentSchedule] -> GetHour()); uiS.spinBox_minute -> setValue(Schedule[currentSchedule] -> GetMinute()); uiS.spinBox_delayReboot -> setValue(Schedule[currentSchedule] -> GetDelayReboot()); if (Schedule[currentSchedule] -> GetSkipCritical()) uiS.checkBox_skipCritical -> setCheckState(Qt::Checked); else uiS.checkBox_skipCritical -> setCheckState(Qt::Unchecked); if (Schedule[currentSchedule] -> GetConsoleMode()) uiS.checkBox_consoleMode -> setCheckState(Qt::Checked); else uiS.checkBox_consoleMode -> setCheckState(Qt::Unchecked); if (Schedule[currentSchedule] -> GetReboot()) uiS.checkBox_reboot -> setCheckState(Qt::Checked); else uiS.checkBox_reboot -> setCheckState(Qt::Unchecked); } // okaySchedulePressed===================================================================================================== // adss a new profile scedule to the list or modifies an existing one void scheduleDialog::okaySchedulePressed() { noSchedules = false; schedule *tempOp = new schedule; //check valid & existent profile***************************************************** QFile proFile (profileDir + uiS.comboBox_profile -> currentText() + ".profile"); if (!proFile.open(QIODevice::ReadOnly)) { QMessageBox::information(this, appName, tr("Invalid profile")+"

" + proFile.errorString()); return; } /* I have disabled this check as TOO much. If you wish to re-enable it, use the new profile "text format" from loadcurrentprofile() else //read the file to check if it's valid { QDataStream in(&proFile); in.setVersion(QDataStream::Qt_4_3); QVariant v; //we will import everything as QVariant using this temp variable QString vString; //temp variable to import "labels" of real data QString tempAppName = "asxeto"; double tempAppVersion=0; in>>v; if (v.toString()=="appName") in >> v; tempAppName = v.toString(); //input the application name & version-------------------------- in>>v; if (v.toString()=="appVersion") in >> v; tempAppVersion = v.toDouble(); if ( (tempAppName != appName) || (tempAppVersion < validProfileVersion) )//check if the file is a valid luckybackup profile { message = tr("The profile you are trying to open is not a valid luckyBackup v.","v is for version")+" " + countStr.setNum(appVersion) + tr(" profile","BEWARE of the whitespace in the beginning")+"

"; QMessageBox::warning(this, appName, message, QMessageBox::Ok | QMessageBox::Default); return; } } */ proFile.close(); //read fields & fill array tempOp -> SetProfileName (uiS.comboBox_profile -> currentText()); tempOp -> SetProfilePath (profileDir + uiS.comboBox_profile -> currentText() + ".profile"); tempOp -> SetReboot (uiS.checkBox_reboot -> isChecked()); tempOp -> SetMonth (uiS.comboBox_month -> currentIndex()); tempOp -> SetMonthDay (uiS.comboBox_dayOfMonth -> currentIndex()); tempOp -> SetWeekDay (uiS.comboBox_DayOfWeek -> currentIndex()); tempOp -> SetHour (uiS.spinBox_hour -> value()); tempOp -> SetMinute (uiS.spinBox_minute -> value()); tempOp -> SetDelayReboot (uiS.spinBox_delayReboot -> value()); tempOp -> SetSkipCritical (uiS.checkBox_skipCritical -> isChecked()); tempOp -> SetConsoleMode (uiS.checkBox_consoleMode -> isChecked()); tempOp -> SetName (scheduleText(tempOp -> GetProfileName(), tempOp -> GetMonth(), tempOp -> GetMonthDay(), tempOp -> GetWeekDay(), tempOp -> GetHour(), tempOp -> GetMinute(), tempOp -> GetReboot())); Schedule[currentSchedule] = tempOp; if (currentSchedule == TotalSchedule) { uiS.listWidget_schedule -> addItem( Schedule[currentSchedule] -> GetName() ); //add item at schedule list uiS.listWidget_schedule -> setCurrentRow(currentSchedule); } else //take out the selected item from the list & insert a new one at the same position with the new name (uiS.listWidget_schedule -> currentItem()) -> setText(Schedule[currentSchedule] -> GetName()); TotalSchedule = uiS.listWidget_schedule -> count(); //set the TotalSchedule to what it is now modifyCancelPressed(); changesMade = true; } // scheduleText===================================================================================================== // returns the text displayed at the schedule list (eg execute profile default at .... every...) QString scheduleDialog::scheduleText(QString name,int month,int monthday, int weekday, int hour, int minute, bool reboot) { QString tempProfileName = tr("Execute profile")+" '"+ name + "', "; if (reboot) { tempProfileName.append(tr("once, at system startup","full phrase: Execute profile xxxxx, once at system startup")); return tempProfileName; } if (hour == -1) // this means every hour { tempProfileName.append(tr("hourly at minute ","full phrase: Execute profile hourly at minute ") + " "); } else { tempProfileName.append(tr("at")+" "); if (hour < 10) tempProfileName.append("0"+countStr.setNum(hour) + ":"); else tempProfileName.append(countStr.setNum(hour) + ":"); } if (minute < 10) tempProfileName.append("0"+countStr.setNum(minute)); else tempProfileName.append(countStr.setNum(minute)); tempProfileName.append(", "+tr("every")+" "); if ((weekday==0) && (monthday== 0)) tempProfileName.append(tr("day")); if (weekday==1) tempProfileName.append(tr("Sunday")); if (weekday==2) tempProfileName.append(tr("Monday")); if (weekday==3) tempProfileName.append(tr("Tuesday")); if (weekday==4) tempProfileName.append(tr("Wednesday")); if (weekday==5) tempProfileName.append(tr("Thursday")); if (weekday==6) tempProfileName.append(tr("Friday")); if (weekday==7) tempProfileName.append(tr("Saturday")); if (monthday != 0) { if (weekday!=0) tempProfileName.append(" "+tr("& on the")+" "); tempProfileName.append(countStr.setNum(monthday)); if (monthday == 1) tempProfileName.append(tr("st","as in 1st day")); if (monthday == 2) tempProfileName.append(tr("nd","as in 2nd day")); if (monthday == 3) tempProfileName.append(tr("rd","as in 3rd day")); if ((monthday > 3) && (monthday < 8)) tempProfileName.append(tr("th","as in 4th, 5th, 6th or 7th day")); if (monthday == 8) tempProfileName.append(tr("th","as in 8th day")); if (monthday == 9) tempProfileName.append(tr("th","as in 9th day")); if (monthday == 10) tempProfileName.append(tr("th","as in 10th day")); if (monthday == 11) tempProfileName.append(tr("th","as in 11th day")); if ((monthday > 11) && (monthday < 20)) tempProfileName.append(tr("th","as in 12th....19th day")); if (monthday == 20) tempProfileName.append(tr("th","as in 20th day")); if (monthday == 21) tempProfileName.append(tr("st","as in 21st day")); if (monthday == 22) tempProfileName.append(tr("nd","as in 22nd day")); if (monthday == 23) tempProfileName.append(tr("rd","as in 23rd day")); if ((monthday > 23) && (monthday < 31)) tempProfileName.append(tr("th","as in 24th...30th day")); if (monthday == 31) tempProfileName.append(tr("st","as in 31st day")); tempProfileName.append(" "+tr("day")); } if (month == 0) { tempProfileName.append(" "+tr("of any month")); return tempProfileName; } if (month == 1) tempProfileName.append(" "+tr("of")+" "+tr("January","full phrase: 'of January'")); if (month == 2) tempProfileName.append(" "+tr("of")+" "+tr("February","full phrase: 'of February'")); if (month == 3) tempProfileName.append(" "+tr("of")+" "+tr("March","full phrase: 'of March'")); if (month == 4) tempProfileName.append(" "+tr("of")+" "+tr("April","full phrase: 'of April'")); if (month == 5) tempProfileName.append(" "+tr("of")+" "+tr("May","full phrase: 'of May'")); if (month == 6) tempProfileName.append(" "+tr("of")+" "+tr("June","full phrase: 'of June'")); if (month == 7) tempProfileName.append(" "+tr("of")+" "+tr("July","full phrase: 'of July'")); if (month == 8) tempProfileName.append(" "+tr("of")+" "+tr("August","full phrase: 'of August'")); if (month == 9) tempProfileName.append(" "+tr("of")+" "+tr("September","full phrase: 'of September'")); if (month == 10) tempProfileName.append(" "+tr("of")+" "+tr("October","full phrase: 'of October'")); if (month == 11) tempProfileName.append(" "+tr("of")+" "+tr("November","full phrase: 'of November'")); if (month == 12) tempProfileName.append(" "+tr("of")+" "+tr("December","full phrase: 'of December'")); return tempProfileName; } // createCron===================================================================================================== //creates a cron file & updates the user's crontab void scheduleDialog::createCron() { QString ScheduleLine = ""; QString ProfilePath=""; QString ProfileName=""; QString luckyEntryStart = "\n# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ luckybackup entries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; QString luckyEntryEnd = "# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ end of luckybackup entries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; // windows used variables: QString WinScheduleLine = ""; int WinScheduleType; QString batFileName =""; QString batLine =""; // copy user's crontab to QString CronTab & delete luckybackup's entries CronTab = ""; cronProcess -> start ("crontab",QStringList() << "-l"); // execute crontab -l command & capture output to QString CronTab cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); int x = CronTab.indexOf(luckyEntryStart); int y = CronTab.indexOf(luckyEntryEnd) + luckyEntryEnd.size() - x; //--------------------windows part - Juan patch --------------------------------------------- //--------------------Windows 8: Use New-ScheduledTaskTrigger---------------------------- //Get-ScheduledTask------New-ScheduledTaskTrigger if (WINrunning) { //windows execute at to delete command cronProcess -> start ("at /delete /yes"); // execute crontab command to replace the user's crontab with luckybackup cron cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); cronProcess -> start ("del "+scheduleDir+" *.bat"); // execute crontab command to replace the user's crontab with luckybackup cron cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); currentSchedule = 0; while (currentSchedule < TotalSchedule) { if (!Schedule[currentSchedule] -> GetReboot() ) //append @reboot if checkbox selected NOT SUPPORTED { WinScheduleLine = ""; WinScheduleType=0; batFileName=scheduleDir; //begin windows time procesing: using at, cannot have hourly or monthly schedules WinScheduleLine.append(" "+countStr.setNum(Schedule[currentSchedule] -> GetHour())+":"); batFileName.append(countStr.setNum(Schedule[currentSchedule] -> GetHour())); WinScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetMinute()) + " /every:"); batFileName.append(countStr.setNum(Schedule[currentSchedule] -> GetMinute())); if (Schedule[currentSchedule] -> GetMonthDay() != 0) //Day of month { WinScheduleType=1; WinScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetMonthDay()) + " "); batFileName.append(countStr.setNum(Schedule[currentSchedule] -> GetMonthDay()) ); } if (Schedule[currentSchedule] -> GetWeekDay() != 0) //Day of week { WinScheduleType=2; QList daytypes; daytypes << "L" << "M" << "X" << "J" << "V" << "S" << "D" ; WinScheduleLine.append(daytypes[Schedule[currentSchedule] -> GetWeekDay() -1]+ " "); batFileName.append(daytypes[Schedule[currentSchedule] -> GetWeekDay() -1]); } if (WinScheduleType==0) WinScheduleLine.append("D,L,M,Mi,J,V,S "); batFileName.append(".bat"); WinScheduleLine.append(" cmd /c \""); WinScheduleLine.append(batFileName+"\""); batLine.append("\""+luckyBackupDir+"luckybackup_console.exe\" -c --no-questions "); if (Schedule[currentSchedule] -> GetSkipCritical()) //append --skip-critical batLine.append("--skip-critical "); ProfilePath = Schedule[currentSchedule] -> GetProfilePath(); //ProfilePath.replace(" ", "\\ "); batLine.append("\""+ProfilePath+"\""); //append profile full path // append cron logfile part ProfileName = Schedule[currentSchedule] -> GetProfileName(); //ProfileName.replace(" ", "\\ "); batLine.append(" > \"" + logDir + ProfileName + "-" + cronlogString + "\" 2>&1"+ "\n"); //append logfile output with >> instead of single > QFile batFile (batFileName); if (!batFile.open(QIODevice::WriteOnly | QIODevice::Text)) //create a new batFile as textfile QMessageBox::information(this, appName, tr("Unable to create cron file")+" !!

"+ batFile.errorString()); else{ //windows execute at to create command QTextStream batOut(&batFile); batOut << batLine; batFile.close(); cronProcess -> start ("at "+WinScheduleLine); // execute crontab command to replace the user's crontab with luckybackup cron cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); } currentSchedule++; } } QString nada=cronProcess -> readAllStandardOutput(); return; } //----------------windows part END--------------------------------- CronTab.remove (x,y); //remove luckyBackup entries from CronTab QFile cronFile (cronfilename); if (cronFile.exists()) //if a cronFile exists delete it cronFile.remove(); if (!cronFile.open(QIODevice::WriteOnly | QIODevice::Text)) //create a new cronFile as textfile QMessageBox::information(this, appName, tr("Unable to create cron file")+" !!

"+ cronFile.errorString()); else //write some stuff to schedule file { QTextStream out(&cronFile); out << CronTab; //append the old user's crontab first (minus the luckybackup entries) out << luckyEntryStart; //# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ luckybackup entries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n currentSchedule = 0; while (currentSchedule < TotalSchedule) { if (Schedule[currentSchedule] -> GetReboot()) //append @reboot if checkbox selected { ScheduleLine.append("@reboot "); if (Schedule[currentSchedule] -> GetDelayReboot() > 0 ) ScheduleLine.append("sleep " + countStr.setNum(Schedule[currentSchedule] -> GetDelayReboot() * 60) +"; "); } else // else append time-day etc { ScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetMinute()) + " "); //minute if (Schedule[currentSchedule] -> GetHour() == -1) ScheduleLine.append("* "); //hourly else ScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetHour()) + " "); //hour if (Schedule[currentSchedule] -> GetMonthDay() == 0) //Day of month ScheduleLine.append("* "); else ScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetMonthDay()) + " "); if (Schedule[currentSchedule] -> GetMonth() == 0) //Month ScheduleLine.append("* "); else ScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetMonth()) + " "); if (Schedule[currentSchedule] -> GetWeekDay() == 0) //Day of week ScheduleLine.append("* "); else ScheduleLine.append(countStr.setNum(Schedule[currentSchedule] -> GetWeekDay() -1 ) + " "); } if (Schedule[currentSchedule] -> GetConsoleMode()) //append -c --no-questions for CL or --silent for gui ScheduleLine.append("/usr/bin/luckybackup -c --no-questions "); else ScheduleLine.append("env DISPLAY=:0 /usr/bin/luckybackup --silent "); if (Schedule[currentSchedule] -> GetSkipCritical()) //append --skip-critical ScheduleLine.append("--skip-critical "); ProfilePath = Schedule[currentSchedule] -> GetProfilePath(); ProfilePath.replace(" ", "\\ "); ScheduleLine.append(ProfilePath); //append profile full path // append cron logfile part ProfileName = Schedule[currentSchedule] -> GetProfileName(); ProfileName.replace(" ", "\\ "); ScheduleLine.append(" > " + logDir + ProfileName + "-" + cronlogString + " 2>&1"+ "\n"); //append logfile output with >> instead of single > out << ScheduleLine; ScheduleLine = ""; currentSchedule++; } out << luckyEntryEnd; //# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ end of luckybackup entries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n } cronFile.close(); cronProcess -> start ("crontab",QStringList() << cronfilename); // execute crontab command to replace the user's crontab with luckybackup cron cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); //if the new user's crontab contains no actual schedules > remove user's crontab completely CronTab = ""; cronProcess -> start ("crontab",QStringList() << "-l"); // execute crontab -l command & capture output to QString CronTab cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); if (CronTab == luckyEntryStart + luckyEntryEnd) { cronProcess -> start ("crontab",QStringList() << "-r"); // remove user's crontab cronProcess -> waitForStarted(); cronProcess -> waitForFinished(); } } // appendCrontabOutput===================================================================================================== //appends the user's crontab to a QString void scheduleDialog::appendCrontabOutput() { QTextCodec *codec = QTextCodec::codecForName("UTF-8"); CronTab = codec->toUnicode(cronProcess -> readAllStandardOutput()); //CronTab = QString(cronProcess -> readAllStandardOutput()); } // saveScheduleFile===================================================================================================== // saves the schedule file in text format bool scheduleDialog::saveScheduleFile() { if (scheduleFile.exists()) //if a schedule file exists delete it scheduleFile.remove(); if (!scheduleFile.open(QIODevice::WriteOnly)) //create a new schedule file return false; else //write some stuff to schedule file { QTextStream out(&scheduleFile); out << "***************************** WARNING *****************************\n"; out << "Do NOT edit this file directly, unless you REALLY know what you are doing !!\n\n\n"; out << "[app_global]\n"; out << "appName=" << appName << "\n"; //output the application name out << "appVersion=" << appVersion << "\n"; //output the application version out << "File_Type=" << "luckybackup_schedule_file" << "\n\n"; //output the application file type (?) out << "\n[schedule_global]\n"; out << "TotalSchedules=" << TotalSchedule << "\n\n"; //output the size of the schedule list currentSchedule = 0; while (currentSchedule < TotalSchedule) { out << "[Schedule] - " << currentSchedule << "\n"; out << "ScheduleName=" << Schedule[currentSchedule] -> GetName() << "\n"; out << "ProfilePath=" << Schedule[currentSchedule] -> GetProfilePath() << "\n"; out << "ProfileName=" << Schedule[currentSchedule] -> GetProfileName() << "\n"; out << "ScheduleMonth=" << Schedule[currentSchedule] -> GetMonth() << "\n"; out << "ScheduleMonthDay=" << Schedule[currentSchedule] -> GetMonthDay() << "\n"; out << "ScheduleWeekDay=" << Schedule[currentSchedule] -> GetWeekDay() << "\n"; out << "ScheduleHour=" << Schedule[currentSchedule] -> GetHour() << "\n"; out << "ScheduleMinute=" << Schedule[currentSchedule] -> GetMinute() << "\n"; out << "ScheduleSkipCritical=" << Schedule[currentSchedule] -> GetSkipCritical() << "\n"; out << "ScheduleConsoleMode=" << Schedule[currentSchedule] -> GetConsoleMode() << "\n"; out << "ScheduleAtReboot=" << Schedule[currentSchedule] -> GetReboot() << "\n"; out << "ScheduleAtRebootDelay=" << Schedule[currentSchedule] -> GetDelayReboot() << "\n"; out << "[Schedule_end] - " << currentSchedule << "\n\n"; currentSchedule++; } out << "\n[all_schedules_end]" << "\n"; } scheduleFile.close(); //close the file return true; } // end of scheduleDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/helpBrowser.cpp0000666000175000017500000000503212722006207017166 0ustar luckybluckyb// ---------------------------------- helpBrowser.cpp --------------------------------------------------------------------------- // Class to display the project manual in a browser //=============================================================================================================================== //=============================================================================================================================== // This file is part of "luckyBackup" project // Copyright, Loukas Avgeriou // luckyBackup is distributed under the terms of the GNU General Public License // luckyBackup 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. // // luckyBackup 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 luckyBackup. If not, see . // project version : Please see "main.cpp" for project version // developer : luckyb // last modified : 17 Jan 2012 //=============================================================================================================================== //=============================================================================================================================== #include "helpBrowser.h" // class helpBrowser Constructor================================================================================================= // Displays a simple dialog for browsing manual/index.html helpBrowser::helpBrowser (QUrl helpUrl, QWidget *parent) : QDialog (parent) { uiB.setupUi(this); //connect okay pushButton SLOTs ---------------- connect ( uiB.button_ok, SIGNAL( clicked() ), this, SLOT( okay() ) ); uiB.browser -> setOpenLinks(true); uiB.browser -> setOpenExternalLinks(false); uiB.browser -> setSource(helpUrl); } // SLOTS------------------------------------------------------------------------------------- // --------------------------------okay pressed------------------------------------------------ void helpBrowser::okay() { close(); } // end of helpBrowser.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/calcDiffThread.h0000666000175000017500000000562312073243674017202 0ustar luckybluckyb// ---------------------------------- calcDiffThread.h --------------------------------------------------------------------------- // Header file for calcDiffThread.cpp /* =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 01 Sep 2010 =============================================================================================================================== =============================================================================================================================== */ #ifndef CALCDIFFTHREAD_H #define CALCDIFFTHREAD_H #include #include //============================================================================================================== //Declaration of class CalcDiffThread // Calculate the differences between source & snapshot in a seperate thread class CalcDiffThread : public QThread { Q_OBJECT public: explicit CalcDiffThread(QObject *parent = 0); ~CalcDiffThread(); void passParams(QString dirtoreadstring, QString desti, QString currentsnapshotdirectory, QString currentsnapshotstring, QString sourcelast, QString sourcei, int currentsnapshotno, int currentsnaps, bool synctype); //set all variables needed for the calculations QString returnResult(); //return the resulting text of calculated stuff QFileInfoList readRecursive(QString dirToReadString); void setAbort(bool abortset); protected: void run(); signals: void updateViewer(const QString &viewText, const bool &appendText); private: QString dirToReadString, dest, CurrentSnapshotDirectory, CurrentSnapshotString, sourceLast, source; int count, CurrentSnapshotNo, currentSnaps; bool syncTYPE; bool abortNOW; QString returnString; }; #endif // end of calcDiffThread.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/manageWizard.cpp0000666000175000017500000006247112722006207017315 0ustar luckybluckyb/* ---------------------------------- managewizard.cpp --------------------------------------------------------------------------- Class to launch a wizard for restore, delete a backup =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== */ #include "manageWizard.h" #include #include #include #include #include "global.h" #include "operationClass.h" QProcess *commandProcess; // class manageWizard Constructor================================================================================================= // Launches a wizard manageWizard::manageWizard (QString type, QString SOURCE, QString DEST, int snapshot, QWidget *parent) : QDialog (parent) { // initialize variables currentSnap = snapshot; // this is the current snapshot number snapshotsNo = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the number of snapshots wizard_type = type; snapToRestore = snapshotsNo-2; // This means the previous of the very last snapshot procRunning = false; procKilled = false; writeToLog = false; DeleteAfter = false; firstScroll = true; MainRun = true; QStringList arguments = Operation[currentOperation] -> GetArgs(); source = SOURCE; // the full path of the source if (Operation[currentOperation] -> GetTypeDirContents()) sourceLast = ""; else sourceLast = calculateLastPath(source) + SLASH; // This is the lowest dir of the source dest = DEST; // the full path of the destination time = Operation[currentOperation] -> GetSnapshotsListItem(currentSnap); if (time == "") timeReadable = tr("not available","refers to a date-time"); else timeReadable = time.mid(0,4) + "/" + time.mid(4,2) + "/" + time.mid(6,2) + " - " + time.mid(8,2) + ":" + time.mid(10,2) + ":" + time.mid(12,2); //QString QDir snapSpecificDir(dest + snapDefaultDir + time + SLASH); if (snapSpecificDir.exists()) snapSpecificDirExists = true; else snapSpecificDirExists = false; // delete backup;if this are more than one snapshots available, set dir to delete as snapSpecificDir if ((wizard_type == "deleteBackup") && (snapshotsNo > 1)) dest = snapSpecificDir.absolutePath(); if (WINrunning && Operation[currentOperation] -> GetRemote()) { dest.replace("/",XnixSLASH); if (dest.endsWith(XnixSLASH+XnixSLASH)) dest.chop(1); } else if (notXnixRunning) // OS2 actually !! { dest.replace("/",SLASH); if (dest.endsWith(SLASH+SLASH)) dest.chop(1); } errorCount = 0 ; errorsFound = 0; outputString = ""; outputError = ""; uiW.setupUi(this); // initialize the gui this -> resize(580,300); guiInitialize(); //connections ---------------- connect ( uiW.button_cancel, SIGNAL( clicked() ), this, SLOT( cancelPressed() ) ); connect ( uiW.button_start, SIGNAL( clicked() ), this, SLOT( startAction() ) ); connect ( uiW.button_abort, SIGNAL( clicked() ), this, SLOT( abortAction() ) ); connect ( uiW.checkBox_DeleteAfter, SIGNAL( stateChanged(int) ), this, SLOT( deleteAfterChanged() ) ); commandProcess = new QProcess(this); //create a new qprocess (for rsync) & connect signals connect(commandProcess, SIGNAL(readyReadStandardError()), this, SLOT(appendCommandOutput())); connect(commandProcess, SIGNAL(readyReadStandardOutput()), this, SLOT(appendCommandOutput())); connect(commandProcess, SIGNAL (finished(int, QProcess::ExitStatus)), this, SLOT(procFinished())); connect ( uiW.button_previous, SIGNAL( clicked() ), this, SLOT( prevError() ) ); //connect previous pushButton SLOT connect ( uiW.button_next, SIGNAL( clicked() ), this, SLOT( nextError() ) ); //connect next pushButton SLOT connect ( uiW.pushButton_changeRestore, SIGNAL( clicked() ), this, SLOT( changeRestorePath() ) ); //connect change pushButton SLOT } // SLOTS------------------------------------------------------------------------------------- // cancel button pressed===================================================================================================== // emmit a QCloseEvent void manageWizard::cancelPressed() { close(); //emmit a QcloseEvent } // QCloseEvent emitted ===================================================================================================== //close the wizard (if a process is not running) void manageWizard::closeEvent(QCloseEvent *event) { if (procRunning) event->ignore(); else event->accept(); } // deleteAfterChanged()===================================================================================================== // actions when checkbox "delete source data" state changed void manageWizard::deleteAfterChanged() { DeleteAfter = uiW.checkBox_DeleteAfter -> isChecked(); //set bool DeleteAfter according to checkbox (only applies at RESTORE) QString labelText = "" + tr("WARNING") + ": "; if (DeleteAfter) labelText.append(tr("The restore directory will become identical to the backup snapshot")); else labelText.append(tr("Existing backup files will replace the corresponding files at the restore directory", "information message - line1.")); labelText.append(".
" + tr("If the information above is correct, click start to begin", "information message - line2.\nPlease leave tags intact and surrounding 'start translated'") + "."); uiW.label_message -> setText(labelText); // ********************* FOR TESTING PURPOSES ************************************************************************** /*calcCommandArgs(); QString ArgsString = ""; count=0; while (count < commandArguments.size()) { if (commandArguments[count].contains("-e ssh ")) { ArgsString.append("-e \"" + commandArguments[count].remove(0,3) + "\" "); } else ArgsString.append(commandArguments[count]+" "); count++; } labelText.append("

" + ArgsString + ""); uiW.label_message -> setText(labelText); */ // ********************* END TESTING PURPOSES ************************************************************************** } // start button pressed===================================================================================================== // start the action void manageWizard::startAction() { DeleteAfter = uiW.checkBox_DeleteAfter -> isChecked(); //set bool DeleteAfter according to checkbox (only applies at RESTORE) DryRun = uiW.checkBox_DryRun -> isChecked(); //set bool DeleteAfter according to checkbox (only applies at RESTORE) //change the gui uiW.button_next -> setVisible (true); uiW.button_next -> setEnabled (false); uiW.button_previous -> setVisible (true); uiW.button_previous -> setEnabled (false); uiW.actionView -> setVisible (true); uiW.button_cancel -> setVisible (false); uiW.groupBox_title -> setVisible (false); uiW.button_abort -> setVisible (true); uiW.checkBox_DryRun -> setVisible (false); uiW.button_start -> setVisible (false); // logfile actions if real run is performed - is always true for DELETE actions //This is the RESTORE/DELETE logfile if (!DryRun) { if (wizard_type == "restoreBackup") logfilename = logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + time + "-RESTORE" + ".log"; else logfilename = logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + time + "-DELETE" + ".log"; logfile.setFileName(logfilename); // this is the logfile if (logfile.open(QIODevice::WriteOnly | QIODevice::Text)) //create a new log file writeToLog = true; //& if it's ok set this to true else writeToLog = false; } runProcess(); } // procFinished ===================================================================================================== // actions when the process is finished void manageWizard::procFinished() { procRunning = false; if ( (wizard_type == "restoreBackup") && (snapToRestore >= currentSnap ) ) { MainRun = false; time = Operation[currentOperation] -> GetSnapshotsListItem(snapToRestore); QString tslash; if (WINrunning && Operation[currentOperation] -> GetRemote()) tslash=XnixSLASH; else tslash=SLASH; QDir snapSpecificDir(dest + snapDefaultDir + time + tslash); if (snapSpecificDir.exists()) snapSpecificDirExists = true; else snapSpecificDirExists = false; snapToRestore--; runProcess(); return; } logfile.close(); // close the RESTORE/DELETE logfile errorsFound = errorCount; errorCount = 0; // reset the error count uiW.button_abort -> setVisible (false); uiW.button_cancel -> setVisible (true); uiW.button_cancel -> setText(tr("close")); if (errorsFound > 0) { firstScroll=true; uiW.button_next -> setEnabled (true); } // if delete backup just finished normally (not ABORTED) with no errors if ( (wizard_type == "deleteBackup") && (errorsFound == 0) && (!procKilled) ) { //delete the backup logfile uiW.actionView->append("
..." + tr("Deleting snapshot logfile", "info message displayed during ...logfile deletion") +"
"); QString logNameToDelete = logDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + time + ".log"; QFile logToDelete; logToDelete.setFileName(logNameToDelete); // this is the logfile of the snapshot to delete if (logToDelete.remove()) uiW.actionView->append(" " + tr("success", "info message displayed after ...logfile deletion") +"

"); else uiW.actionView->append(" " + tr("failed", "info message displayed after ...logfile deletion") +"

"); //delete the .changes file uiW.actionView->append("..." + tr("Deleting file that lists snapshot changes", "info message displayed during ...file deletion") +"
"); QString changesNameToDelete = snapChangesDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + time + ".changes.log"; QFile changesFileToDelete; changesFileToDelete.setFileName(changesNameToDelete); // this is the .changes file of the snapshot to delete if (changesFileToDelete.remove()) uiW.actionView->append(" " + tr("success", "info message displayed after ...file deletion") +"

"); else uiW.actionView->append(" " + tr("failed", "info message displayed after ...file deletion") +"

"); //remove the specific snapshot from the Task uiW.actionView->append("..." + tr("Updating list of snapshots" ,"info message displayed during ...snaps list update") +"
"); Operation[currentOperation] -> RemoveSnapshotsListItem (currentSnap); uiW.actionView->append(" " + tr("success", "info message displayed after ...snapshots list update") +"

"); int currentSnaps = Operation[currentOperation] -> GetSnapshotsListSize(); // this is the current number of snapshots bool emptySnapList = Operation[currentOperation] -> SnapshotsListIsEmpty(); // Is the list empty ?? //update the last execution time to the last snapshot or to nothing if no snapshots exist QDateTime newTime; // empty time variable if (!emptySnapList) newTime = QDateTime::fromString(Operation[currentOperation]-> GetSnapshotsListItem(currentSnaps-1),"yyyyMMddhhmmss"); Operation[currentOperation] -> SetLastExecutionTime(newTime); //update the last execution errors to "-1" (not available) Operation[currentOperation] -> SetLastExecutionErrors(-1); } QString InfoMessage = "
=====================================
... "; if (procKilled) InfoMessage.append(tr("Aborted") ); else InfoMessage.append(tr("Finished") ); if (DryRun) InfoMessage.append(" (" + tr("simulation") + ")"); InfoMessage.append("

"); if (errorsFound ==0 ) InfoMessage.append("" + tr("no errors") + ""); else InfoMessage.append("" + tr("errors found") + ""); uiW.actionView->append(InfoMessage); } // abort button pressed===================================================================================================== // abort the action void manageWizard::abortAction() { if (commandProcess->state() == QProcess::Running) { procKilled = true; MainRun = false; commandProcess -> kill(); //kill commandProcess commandProcess -> waitForFinished(); } else procFinished(); // the process might not be running for some weird reason, so call procFinished !! } // appendCommandOutput ===================================================================================================== //update dialog with new data (text - progressbar) - also update logfile void manageWizard::appendCommandOutput() { //update textBrowser ------------------------------------------------------------------------------------------------------ QTextCodec *codec = QTextCodec::codecForName("UTF-8"); outputString = codec->toUnicode(commandProcess -> readAllStandardOutput()); outputError = codec->toUnicode(commandProcess -> readAllStandardError()); uiW.actionView->append(outputString); logFileUpdate("rsync-standard", outputString, 0); if (outputError !="") { errorCount++; errorsFound++; uiW.actionView->append(logFileUpdate("rsync-error", outputError, 0)); } } // change button pressed===================================================================================================== // Change the restore directory void manageWizard::changeRestorePath() { QString newRestore = QFileDialog::getExistingDirectory (this, tr("Select new restore directory", "directory selection dialog title"), source, QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); //'if something is selected indeed if (newRestore != "") { //if the new restore dir does not end with / if (!newRestore.endsWith(SLASH)) newRestore.append(SLASH); source = newRestore; } guiInitialize(); } // previous error button pressed===================================================================================================== // jumb to previous error void manageWizard::prevError() { errorCount--; //decrease the current error by one if (errorCount == 0 ) // if the current error is the first disable the previous button uiW.button_previous -> setEnabled(false); if (errorCount < errorsFound-1) //if the current error is less than the last one, enable the next button uiW.button_next -> setEnabled(true); uiW.actionView -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); } // next error button pressed===================================================================================================== // jumb to next error void manageWizard::nextError() { if (!firstScroll) errorCount++; // increase the current error by one firstScroll = false; if (errorCount == errorsFound-1) // If the current error is the last, disable the next button uiW.button_next -> setEnabled(false); if (errorCount > 0) // if the current error is greater than the first one enable the previous button uiW.button_previous -> setEnabled(true); uiW.actionView -> scrollToAnchor("error" + countStr.setNum(errorCount+1)); } // FUNCTIONS------------------------------------------------------------------------------------- // guiInitialize()===================================================================================================== // Initialize the gui void manageWizard::guiInitialize() { uiW.button_next -> setVisible (false); uiW.button_previous -> setVisible (false); uiW.button_abort -> setVisible (false); uiW.actionView -> setVisible (false); if (wizard_type == "deleteBackup") { uiW.pushButton_logo -> setIcon (QIcon(":/luckyPrefix/remove.png")); uiW.groupBox_title -> setTitle(tr("Delete backup","this is the title of a wizard")); uiW.label_time -> setText(tr("Date & time","simple label of the wizard gui") + ": " + timeReadable + ""); uiW.label_paths -> setText(tr("Path","...is a directory path") + ": " + dest + ""); uiW.label_message -> setText("" + tr("WARNING") + ": " + tr("You are about to delete backup data","information message - line1") + ".
" + tr("If the information above is correct, click start to begin", "information message - line2.\nPlease leave tags intact and surrounding 'start' translated") + "."); uiW.checkBox_DryRun -> setVisible (false); uiW.checkBox_DeleteAfter -> setVisible (false); uiW.pushButton_changeRestore -> setVisible (false); } if (wizard_type == "restoreBackup") { uiW.pushButton_logo -> setIcon (QIcon(":/luckyPrefix/manage.png")); //uiW.pushButton_logo -> setText (tr("change")); uiW.groupBox_title -> setTitle(tr("Restore backup","this is the title of a wizard")); uiW.label_time -> setText(tr("Date & time","simple label of the wizard gui") + ": " + timeReadable + "
" + tr("Backup path","...is the backup directory path") + ": " + dest + ""); uiW.label_paths -> setText(tr("Restore path","...is the restore directory path") + ": " + source +""); deleteAfterChanged(); } } // calcCommandArgs()===================================================================================================== // function to calculate command arguments for RESTORE void manageWizard::calcCommandArgs() { commandArguments.clear(); commandArguments = AppendArguments(Operation[currentOperation]); commandArguments.removeLast(); // remove the last 2 arguments (hopefuly source & destination) commandArguments.removeLast(); // Scan the list and remove all arguments that are not needed // keep all other arguments intact count =0; while (count < commandArguments.size()) { if ( (commandArguments[count].contains("--exclude")) || (commandArguments[count].contains("--include")) || (commandArguments[count] == "--prune-empty-dirs") || (commandArguments[count] == "-m") || (commandArguments[count] == "--update") || (commandArguments[count] == "-u") || (commandArguments[count] == "--delay-updates") || (commandArguments[count].contains("--delete")) || (commandArguments[count].contains("--backup")) || (commandArguments[count].contains("--filter")) || (commandArguments[count].contains("--log")) || (commandArguments[count] == "--del") ) commandArguments.removeAt(count); //remove the argument if one of the above is true else count++; } if (DryRun) commandArguments.append("--dry-run"); // add --dry-run if checkbox checked //exclude stuff that have been backed-up, after the snapshot was made //this means read the changes.logs files from every snapshot after the current one count = currentSnap+1; while (count < snapshotsNo) { commandArguments.append("--exclude-from=" + snapChangesDir + profileName + "-" + Operation[currentOperation] -> GetName() + "-" + (Operation[currentOperation] -> GetSnapshotsListItem(count)) + ".changes.log"); count++; } if (MainRun) { //exclude the luckybackup snapshots directory cause it is inside the destination commandArguments.append("--exclude=" + snapDefaultDir); // add --delete options if checkbox checked if (DeleteAfter) { commandArguments.append("--delete-after"); commandArguments.append("--delete-excluded"); } commandArguments.append(dest); // set new dest as source Argument - as it was calculated at manageWizard } else { QString tslash; if (WINrunning && Operation[currentOperation] -> GetRemote()) tslash=XnixSLASH; else tslash=SLASH; commandArguments.append(dest + snapDefaultDir + time + tslash + sourceLast); } commandArguments.append(source); // set new source as destination ...as it was calculated at manageWizard or changed by changeRestorePath } // runProcess()()===================================================================================================== // Run the desired process void manageWizard::runProcess() { bool skipTHIS = false; // specify command & arguments & append information message QString commandLocal =""; commandArguments.clear(); // the local command is used here !! QString InfoMessage = "
"; if (wizard_type == "restoreBackup") { commandLocal = rsyncCommandPath; calcCommandArgs(); //calculate command arguments and set commandArguments if (MainRun) InfoMessage.append(tr("Restoring data: main trunk","info message displayed during ...data restoration")); else { InfoMessage.append(tr("Restoring data: snapshot files","info message displayed during ...data restoration") + " - " + time); if (!snapSpecificDirExists) skipTHIS = true; } if (DryRun) InfoMessage.append(" (" + tr("simulation") + ")"); } else { InfoMessage.append(tr("Deleting data","info message displayed during ...data deletion")); QDir destFolder(dest); if (destFolder.exists()) { commandLocal = "rm"; commandArguments << "-rvf" << dest; } else skipTHIS = true; } InfoMessage.append(" ...
=====================================

"); if (skipTHIS) InfoMessage.append("
" + tr("No snapshot specific data exist. Skipping...","info message displayed during ...data restoration/deletion") +"
"); uiW.actionView->append(InfoMessage); // These are for testing purposes~~~~~~~~~~~~~~~~~~~~ //commandLocal = "sleep"; //commandArguments.clear();commandArguments << "4"; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Do not start specific snapshot data restoration if the relevant snapshots dir does not exist // or do not delete the snapshots folder if it does not exist if (skipTHIS) procFinished(); else { commandProcess -> start (commandLocal,commandArguments); commandProcess -> waitForStarted(); procRunning = true; } } // end of managewizard.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/qdirdialog.cpp0000666000175000017500000000505212074555611017023 0ustar luckybluckyb/********************************************************************** ** Author: Nicolas Remy ** Copyright (C) 2002-2004 The Board of Trustees of the Leland Stanford Junior ** University ** All rights reserved. ** ** This file is part of the luckybackup project ** ** This file may be distributed and/or modified under the terms of the ** license defined by the Stanford Center for Reservoir Forecasting and ** appearing in the file LICENSE.XFREE included in the packaging of this file. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.gnu.org/copyleft/gpl.html for GPL licensing information. ** ** Contact the Stanford Center for Reservoir Forecasting, Stanford University ** if any conditions of this licensing are not clear to you. ** **********************************************************************/ #include "qdirdialog.h" QDirDialog::QDirDialog( const QString& extension, const QString& dirName, QWidget* parent, const char* name, QFileDialog::FileMode mode, bool modal ) : QFileDialog( parent, QString::null, dirName), extension_( extension ) { if(name) setObjectName(name); setModal(modal); init_dialog( mode ); } QDirDialog::QDirDialog( const QString& extension, QWidget* parent, const char* name, QFileDialog::FileMode mode, bool modal ) : QFileDialog( parent, Qt::Dialog), extension_( extension ) { setModal(modal); if(name) setObjectName(name); init_dialog( mode ); } void QDirDialog::check_selected_directory( const QString& dirName ) { if( !dirName.endsWith( extension_, Qt::CaseInsensitive) ) return; selected_directory_ = dirName; this->accept(); } void QDirDialog::init_dialog( QFileDialog::FileMode mode ) { setFileMode( mode ); QObject::connect( this, SIGNAL( directoryEntered( const QString& ) ), this, SLOT( check_selected_directory( const QString& ) ) ); } void QDirDialog::accept() { QDialog::accept(); QStringList sl = selectedFiles(); if( selected_directory_.isEmpty() ) { selected_directory_ = sl[0]; } } luckybackup-0.5.0/src/textDialog.h0000666000175000017500000000466412722006224016454 0ustar luckybluckyb// ---------------------------------- textDialogDialog.h --------------------------------------------------------------------------- // header file used by textDialog.cpp //=============================================================================================================================== //=============================================================================================================================== // This file is part of "luckyBackup" project // Copyright, Loukas Avgeriou // luckyBackup is distributed under the terms of the GNU General Public License // luckyBackup 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. // // luckyBackup 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 luckyBackup. If not, see . // project version : Please see "main.cpp" for project version // developer : luckyb // last modified : 06 Jan 2010 //=============================================================================================================================== //=============================================================================================================================== #ifndef TEXTDIALOG_H #define TEXTDIALOG_H #include "ui_textDialog.h" //============================================================================================================== //Declaration of textDialog class (this is a simple go -nogo dialog with a textdialog & 2 buttons) // accessor function getGoOn returns true or false class textDialog : public QDialog { Q_OBJECT public: textDialog (const QString, const QString, QWidget *parent=0); int getGoOn(); QString getUserInput(); private slots: void okay(); void cancel(); private: Ui::textDialog uiT; int GoOn; QString userInput; QString Type; QString TextPassed; protected: void closeEvent(QCloseEvent*); }; #endif // end of textDialogDialog.h --------------------------------------------------------------------------- luckybackup-0.5.0/src/RsyncDirModel_p.h0000666000175000017500000001023712731507560017407 0ustar luckybluckyb/**************************************************************************** Copyright (C) VCreate Logic Private Limited, Bangalore Contact: info@vcreatelogic.com This file is developed by VCreate Logic Private Limited and used as part of the "luckyBackup" project It is distributed under the terms of the GNU General Public License It 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. It 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 the luckyBackup project. If not, see . ****************************************************************************/ // modified on 22 May 2016 // by luckyb after Lothar's fixes #ifndef Rsync_DIR_MODEL_P_H #define Rsync_DIR_MODEL_P_H #include #include #include #include #include #include #include #include #include "qurlinfo.h" class RsyncEntry; class RsyncDirLister; class RsyncDirListerOperation; struct RsyncEntryData; class RsyncEntry { public: ~RsyncEntry(); RsyncEntry* parentEntry() const; QList childEntries() const; bool isChildrenFetched() const; bool isFetching() const; QString path() const; // QUrlInfo urlInfo() const; QIcon icon() const; //protected: QUrlInfo urlInfo() const; RsyncEntry(const QUrlInfo& info); RsyncEntry* addUrlInfo(const QUrlInfo& urlInfo); void removeUrlInfo(const QUrlInfo& urlInfo); void setChildrenFetched(bool val=true); void clear(); void setFetching(bool val=true); private: friend class RsyncDirModel; RsyncEntryData* d; }; Q_DECLARE_METATYPE(RsyncEntry*); struct RsyncDirListerOperationData; class RsyncDirListerOperation : public QObject { Q_OBJECT public: RsyncDirListerOperation(RsyncDirLister* parent); RsyncDirListerOperation(RsyncDirLister* parent,RsyncEntry* entry); ~RsyncDirListerOperation(); void setParentEntry(RsyncEntry* entry); RsyncEntry* parentEntry() const; int id() const; bool isExecuting() const; bool isFinished() const; bool isSuccessfullyFinished() const; public: void execute(); void abort(); protected: QString path() const; signals: void started(); void finished(); void aborted(); protected slots: void procFinished(); void procError(); private: friend class RsyncDirLister; RsyncDirListerOperationData* d; }; struct RsyncDirListerData; class RsyncDirLister : public QObject { Q_OBJECT public: RsyncDirLister(QObject* parent=0); ~RsyncDirLister(); void setUrl(const QUrl& url); QUrl url() const; QList topLevelEntries() const; bool topLevelEntriesFetched() const; QString lastError() const; void list(); void list(RsyncEntry* entry); void refresh(); void refresh(RsyncEntry* entry); void abort(); void setChildrenFetched(RsyncEntry* entry); void setUrl(const QUrl& url,const QString& cpath); void setUrl(const QUrl& url,const QString& cpath, const QStringList& cargs); void cleanOperations(); QStringList arguments() const; QString command() const; signals: void listingDone(RsyncEntry* entry=0); void listingAborted(RsyncEntry* entry=0); void listingError(const QString& error, RsyncEntry* entry=0); //protected slots: // void slotOperationFinished(); protected: void setTopLevelEntries(const QList& entries); private: friend class RsyncDirListerOperation; RsyncDirListerData* d; }; struct FileIconCacheData; class FileIconCache { public: static FileIconCache& instance(); ~FileIconCache(); QIcon icon(const QUrlInfo& info) const; private: FileIconCache(); private: FileIconCacheData* d; }; #endif luckybackup-0.5.0/src/RsyncDirModel_p.cpp0000666000175000017500000003656212720310503017736 0ustar luckybluckyb/**************************************************************************** Copyright (C) VCreate Logic Private Limited, Bangalore Contact: info@vcreatelogic.com This file is developed by VCreate Logic Private Limited and used as part of the "luckyBackup" project It is distributed under the terms of the GNU General Public License It 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. It 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 the luckyBackup project. If not, see . ****************************************************************************/ // modified on 22 May 2016 // by luckyb after Lothar's fixes #include "RsyncDirModel_p.h" #include #include #include #include #include #include #include /////////////////////////////////////////////////////////////////////////////// // RsyncEntry /////////////////////////////////////////////////////////////////////////////// struct RsyncEntryData { RsyncEntryData() : parent(0), childrenFetched(false), fetching(false) { } QUrlInfo urlInfo; RsyncEntry* parent; QList children; bool childrenFetched; bool fetching; QString path; QIcon icon; }; RsyncEntry::RsyncEntry(const QUrlInfo& info) { d = new RsyncEntryData; d->urlInfo = info; if(info.isDir()) d->childrenFetched = false; else d->childrenFetched = true; if(info.isValid()) d->icon = FileIconCache::instance().icon(info); } RsyncEntry::~RsyncEntry() { qDeleteAll(d->children); delete d; } RsyncEntry* RsyncEntry::parentEntry() const { return d->parent; } QList RsyncEntry::childEntries() const { return d->children; } bool RsyncEntry::isChildrenFetched() const { return d->childrenFetched; } bool RsyncEntry::isFetching() const { return d->fetching; } QString RsyncEntry::path() const { if(!d->path.isEmpty()) return d->path; if(d->parent) d->path = d->parent->path(); else d->path = "/"; if(d->urlInfo.isDir()) d->path += d->urlInfo.name() + "/"; else d->path += d->urlInfo.name(); return d->path; } QUrlInfo RsyncEntry::urlInfo() const { return d->urlInfo; } QIcon RsyncEntry::icon() const { return d->icon; } RsyncEntry* RsyncEntry::addUrlInfo(const QUrlInfo& urlInfo) { if(d->children.count()) { RsyncEntry* firstEntry = d->children.at(0); if(!firstEntry->urlInfo().isValid()) { d->children.removeAt(0); delete firstEntry; } } RsyncEntry* childEntry = new RsyncEntry(urlInfo); d->children.append( childEntry ); childEntry->d->parent = this; return childEntry; } void RsyncEntry::removeUrlInfo(const QUrlInfo& urlInfo) { for(int i=0; ichildren.count(); i++) { RsyncEntry* entry = d->children.at(i); if(entry->urlInfo() == urlInfo) { d->children.removeAt(i); delete entry; return; } } } void RsyncEntry::setChildrenFetched(bool val) { if(!val && d->children.count()) return; d->childrenFetched = val; if(val) d->fetching = false; } void RsyncEntry::clear() { d->children.clear(); } void RsyncEntry::setFetching(bool val) { d->fetching = val; // Add a dummy URL info, until // children are fetched. addUrlInfo(QUrlInfo()); } /////////////////////////////////////////////////////////////////////////////// // RsyncDirListerOperation /////////////////////////////////////////////////////////////////////////////// struct RsyncDirListerOperationData { RsyncDirListerOperationData() : parentEntry(0), executing(false), finished(false), success(false), RsyncCmdId(0) { } QProcess* syncProcess; bool ProcReportedError; bool abort; QString errorMessage; RsyncDirLister* parent; RsyncEntry* parentEntry; bool executing; bool finished; bool success; int id; int RsyncCmdId; QUrl url; QList urlInfoList; }; static int UniqueId() { static int id; return ++id; } RsyncDirListerOperation::RsyncDirListerOperation(RsyncDirLister* parent) : QObject(parent) { d = new RsyncDirListerOperationData; d->parent = parent; d->id = UniqueId(); d->url = QUrl(d->parent->url().path()); d->syncProcess = new QProcess(this); connect(d->syncProcess, SIGNAL (finished(int, QProcess::ExitStatus)), this, SLOT(procFinished())); connect(d->syncProcess, SIGNAL (error(QProcess::ProcessError)), this, SLOT(procError())); } RsyncDirListerOperation::RsyncDirListerOperation(RsyncDirLister* parent,RsyncEntry* entry) : QObject(parent) { d = new RsyncDirListerOperationData; d->parent = parent; d->parentEntry = entry; d->url = QUrl(d->parent->url().path()+d->parentEntry->path()); d->parentEntry->setFetching(true); d->id = UniqueId(); d->syncProcess = new QProcess(this); connect(d->syncProcess, SIGNAL (finished(int, QProcess::ExitStatus)), this, SLOT(procFinished())); connect(d->syncProcess, SIGNAL (error(QProcess::ProcessError)), this, SLOT(procError())); } RsyncDirListerOperation::~RsyncDirListerOperation() { delete d; } void RsyncDirListerOperation::setParentEntry(RsyncEntry* entry) { d->parentEntry = entry; d->url = QUrl(d->parent->url().path()+d->parentEntry->path()); d->parentEntry->setFetching(true); } RsyncEntry* RsyncDirListerOperation::parentEntry() const { return d->parentEntry; } int RsyncDirListerOperation::id() const { return d->id; } bool RsyncDirListerOperation::isExecuting() const { return d->executing; } bool RsyncDirListerOperation::isFinished() const { return d->finished; } bool RsyncDirListerOperation::isSuccessfullyFinished() const { return d->success; } QString RsyncDirListerOperation::path() const { return d->url.path(); } void RsyncDirListerOperation::execute() { d->executing = true; QStringList tempArgs=d->parent->arguments(); tempArgs << path(); d->syncProcess -> start (d->parent->command(),tempArgs); // execute rsync command with rsyncArguments if (!d->syncProcess->waitForStarted()) abort(); } void RsyncDirListerOperation::abort() { if(d->executing) { d->syncProcess->kill(); d->executing = false; d->finished = true; d->success = false; d->urlInfoList.clear(); // emit aborted(); } } void RsyncDirListerOperation::procFinished() { QTextCodec *codec = QTextCodec::codecForName("UTF-8"); QTextStream outputStream (new QString(codec->toUnicode(d->syncProcess -> readAllStandardOutput()))); QString line; QList parentEntries; do { line =outputStream.readLine(); QStringList data= line.split(" ",QString::SkipEmptyParts); if (data.isEmpty()) continue; bool isDir=false; bool isFile=false; bool isLink=false; bool isExec=false; QString d1=data[0]; //in data list 0: permisions, 1: size, 2: date, 3: hour, 4: name if (d1.at(0)=='d'){ isExec=true; isDir=true; } else if(d1.at(0)=='l') isLink=true; else if(d1.at(0)=='-') isFile=true; else continue; d1=data[4]; for (int i=5;iparentEntry){ d->parentEntry->addUrlInfo(QUrlInfo(d1,777,"root","root",data[1].toLong(), QDateTime::fromString(data[2]+" "+data[3],"yyyy/MM/dd HH:mm:ss"), QDateTime::fromString(data[2]+" "+data[3],"yyyy/MM/dd HH:mm:ss"), isDir,isFile,isLink,false,true,isExec)); }else{ parentEntries.append(new RsyncEntry(QUrlInfo(d1,777,"root","root",data[1].toLong(), QDateTime::fromString(data[2]+" "+data[3],"yyyy/MM/dd HH:mm:ss"), QDateTime::fromString(data[2]+" "+data[3],"yyyy/MM/dd HH:mm:ss"), isDir,isFile,isLink,false,true,isExec))); } }while (!line.isNull()); d->executing = false; d->finished = true; d->success = true; if (d->parentEntry) d->parent->setChildrenFetched(d->parentEntry); else d->parent->setTopLevelEntries(parentEntries); } void RsyncDirListerOperation::procError() { QTextCodec *codec = QTextCodec::codecForName("UTF-8"); d->errorMessage = codec->toUnicode(d->syncProcess -> readAllStandardError()); d->executing = false; d->finished = true; d->success = false; } /////////////////////////////////////////////////////////////////////////////// // RsyncDirLister /////////////////////////////////////////////////////////////////////////////// struct RsyncDirListerData { RsyncDirListerData() : topLevelEntriesFetched(false), currentParent(0) { } // QProcess *syncProcess; // bool ProcReportedError; // bool abort; QString errorMessage; QList topLevelEntries; bool topLevelEntriesFetched; QUrl url; RsyncEntry* currentParent; QString command; //command to be executed. Normally this is "rsync" QStringList rsyncArguments; // This stringList holds all arguments for the rsync command QList operationQueue; }; RsyncDirLister::RsyncDirLister(QObject* parent) :QObject(parent) { d = new RsyncDirListerData; d->command="rsync"; d->rsyncArguments << "--list-only"; } RsyncDirLister::~RsyncDirLister() { delete d; } void RsyncDirLister::setUrl(const QUrl& url) { d->url = url; } void RsyncDirLister::setUrl(const QUrl& url,const QString& cpath) { d->rsyncArguments.clear(); d->url=url; d->command=cpath; d->rsyncArguments << "--list-only"; } void RsyncDirLister::setUrl(const QUrl& url,const QString& cpath, const QStringList& cargs) { d->rsyncArguments.clear(); d->url=url; d->command=cpath; if (!cargs.isEmpty()) d->rsyncArguments=cargs; d->rsyncArguments << "--list-only"; } QUrl RsyncDirLister::url() const { return d->url; } QString RsyncDirLister::command() const { return d->command; } QStringList RsyncDirLister::arguments() const { return d->rsyncArguments; } QList RsyncDirLister::topLevelEntries() const { return d->topLevelEntries; } bool RsyncDirLister::topLevelEntriesFetched() const { return d->topLevelEntriesFetched; } QString RsyncDirLister::lastError() const { return d->errorMessage; } void RsyncDirLister::list() { cleanOperations(); // Create a list operation and queue it. RsyncDirListerOperation* listOper = new RsyncDirListerOperation(this); d->operationQueue.append(listOper); d->topLevelEntriesFetched = false; listOper->execute(); } void RsyncDirLister::list(RsyncEntry* entry) { // If the entry is already being fetched, // dont sweat cleanOperations(); if(entry->isChildrenFetched() || entry->isFetching()) return; // Verify whether entry belongs to us RsyncEntry* e2 = entry; while(e2->parentEntry()) e2 = e2->parentEntry(); if(!d->topLevelEntries.contains(e2)) return; // Create a list operation and queue it. RsyncDirListerOperation* listOper = new RsyncDirListerOperation(this,entry); // listOper->setParentEntry(entry); d->operationQueue.append(listOper); listOper->execute(); } void RsyncDirLister::refresh() { abort(); qDeleteAll(d->topLevelEntries); d->topLevelEntries.clear(); list(); } void RsyncDirLister::refresh(RsyncEntry* entry) { if(entry->isFetching()) return; entry->setChildrenFetched(false); list(entry); } void RsyncDirLister::cleanOperations() { Q_FOREACH(RsyncDirListerOperation* oper, d->operationQueue) { if(oper->isFinished()) d->operationQueue.removeOne(oper); } } void RsyncDirLister::abort() { QList queue = d->operationQueue; d->operationQueue.clear(); Q_FOREACH(RsyncDirListerOperation* oper, queue) { if(oper->isExecuting()) oper->abort(); } qDeleteAll(queue); } void RsyncDirLister::setTopLevelEntries(const QList& entries) { d->topLevelEntries = entries; d->topLevelEntriesFetched = true; emit listingDone(NULL); } void RsyncDirLister::setChildrenFetched(RsyncEntry* entry) { entry->setChildrenFetched(true); emit listingDone(entry); } /////////////////////////////////////////////////////////////////////////////// // RsyncDirLister /////////////////////////////////////////////////////////////////////////////// struct FileIconCacheData { QFileIconProvider iconProvider; QString tempDir; QString suffix(const QString& fileName); QString createTempFile(const QString& name); }; FileIconCache& FileIconCache::instance() { static FileIconCache theInstance; return theInstance; } FileIconCache::FileIconCache() { d = new FileIconCacheData; QDir tempDir = QDir::tempPath(); tempDir.mkdir("FileIconCache"); d->tempDir = tempDir.absoluteFilePath("FileIconCache"); } FileIconCache::~FileIconCache() { delete d; } QIcon FileIconCache::icon(const QUrlInfo& info) const { QIcon icon; if(info.isDir()) icon = d->iconProvider.icon(QFileIconProvider::Folder); else { QString suffix = d->suffix(info.name()); QPixmap pixmap; if(QPixmapCache::find(suffix, pixmap)) return QIcon(pixmap); if(suffix.isEmpty()) icon = d->iconProvider.icon(QFileIconProvider::File); else { // Create an empty file with the same name as info.name() // in the temporary folder QString file = d->createTempFile(info.name()); if(file.isEmpty()) icon = d->iconProvider.icon(QFileIconProvider::File); else icon = d->iconProvider.icon(QFileInfo(file)); QFile::remove(file); } if(icon.isNull()) icon = d->iconProvider.icon(QFileIconProvider::File); QPixmapCache::insert(suffix, icon.pixmap(32,32)); } return icon; } QString FileIconCacheData::suffix(const QString& fileName) { QStringList comps = fileName.split("."); comps.removeFirst(); QString suffix = comps.join("."); return suffix; } QString FileIconCacheData::createTempFile(const QString& name) { QString completeName = QString("%1/%2").arg(tempDir).arg(name); QFile file(completeName); if(!file.open(QFile::WriteOnly)) return QString(); file.write(completeName.toLatin1()); file.close(); return completeName; } luckybackup-0.5.0/src/scheduleClass.h0000666000175000017500000001111212722006224017114 0ustar luckybluckyb/* ------------------ scheduleClass.h -------------------------------------------------------------------------------------- header file for luckyBackup project =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 24 Jan 2011 =============================================================================================================================== =============================================================================================================================== */ #ifndef SCHEDULECLASS_H #define SCHEDULECLASS_H //============================================================================================================== //Declaration of schedule class (this is the class that holds profiles scheduling names & arguments) class schedule { public: schedule() //constructor { itsName= ""; itsProfilePath = ""; itsProfileName = ""; itsMonth = 0; itsMonthDay = 0; itsWeekDay = 0; itsHour = 0; itsMinute = 0; itsSkipCritical = true; itsConsoleMode = false; itsReboot = false; itsDelayReboot = 3; } ~schedule() {} //destructor //Functions - get class operation data-------------------------------------------------------------------------------------- QString GetName() const {return itsName;} QString GetProfilePath() const {return itsProfilePath;} QString GetProfileName() const {return itsProfileName;} int GetMonth () const {return itsMonth;} int GetMonthDay () const {return itsMonthDay;} int GetWeekDay () const {return itsWeekDay;} int GetHour () const {return itsHour;} int GetMinute () const {return itsMinute;} bool GetSkipCritical() const {return itsSkipCritical;} bool GetConsoleMode() const {return itsConsoleMode;} bool GetReboot() const {return itsReboot;} int GetDelayReboot () const {return itsDelayReboot;} //Functions - set class operation data -------------------------------------------------------------------------------------- void SetName(QString name) {itsName = name;} void SetProfilePath(QString ProfilePath) {itsProfilePath = ProfilePath;} void SetProfileName(QString ProfileName) {itsProfileName = ProfileName;} void SetMonth(int month) {itsMonth = month;} void SetMonthDay(int monthDay) {itsMonthDay = monthDay;} void SetWeekDay(int weekDay) {itsWeekDay = weekDay;} void SetHour(int hour) {itsHour = hour;} void SetMinute(int minute) {itsMinute = minute;} void SetSkipCritical (bool SkipCritical) {itsSkipCritical = SkipCritical;} void SetConsoleMode (bool ConsoleMode) {itsConsoleMode = ConsoleMode;} void SetReboot (bool Reboot) {itsReboot = Reboot;} void SetDelayReboot (int delayReboot) {itsDelayReboot = delayReboot;} private: QString itsName; QString itsProfilePath; QString itsProfileName; int itsMonth; int itsMonthDay; int itsWeekDay; int itsHour; int itsMinute; bool itsSkipCritical; bool itsConsoleMode; bool itsReboot; int itsDelayReboot; }; #endif // end of scheduleClass.h-------------------------------------------------------------- luckybackup-0.5.0/src/modifyDialog.cpp0000666000175000017500000026332713165426046017327 0ustar luckybluckyb/* ---------------------------------- modifyDialog.cpp --------------------------------------------------------------------------- Display a dialog. Adds a new or modifies an existing operation =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 05 Oct 2017 =============================================================================================================================== =============================================================================================================================== */ #include "modifyDialog.h" #include #include #include #include #include "global.h" #include "textDialog.h" // class modifyDialog Constructor================================================================================================= // modify or create an operation modifyDialog::modifyDialog (int ItemNo, QDialog *parent) : QDialog (parent) { uiM.setupUi(this); stdWindowWidth = 540; minWindowHeight = 265; //old value=245 maxWindowHeight = 690; //old value=565 uiM.tabWidget_advanced -> setVisible(false); uiM.comboBox_Type -> setCurrentIndex(0); this -> resize(stdWindowWidth,minWindowHeight); ArrayPosition = ItemNo; validation = false; listItemEditMode = false; alsoExecuteTooltip = tr("Leave the box checked, to STOP the execution of running task if this command exits with an error"); QString comLabel= tr("use boxes to STOP task execution on error", "Please leave the bold tags intact and surrounding the word STOP translated"); uiM.label_executeBeforeList -> setText ("" + comLabel + ""); uiM.label_executeAfterList -> setText ("" + comLabel + ""); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Various gui initialization //uiM.toolBox_options ->setItemEnabled (0,false); // different backend //Disable some stuff when windows is NOT running if (!WINrunning) { uiM.checkBox_vss -> setVisible(false); uiM.checkBox_restorent -> setVisible(false); uiM.lineEdit_sshPasswordStr -> setVisible(false); uiM.lineEdit_sshOptions -> setVisible(false); uiM.label_sshPassword_2 -> setVisible(false); uiM.label_sshPassword_2 -> setVisible(false); } else uiM.checkBox_vss -> setEnabled(false); // disable VSS until a better solution is found //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //connections ---------------------------------------------------------------------------------------------------- connect(uiM.pushButton_advanced, SIGNAL( toggled(bool) ), this, SLOT(advancedPressed(bool) ) ); //advanced pushButton connect(uiM.pushButton_cancel, SIGNAL( pressed() ), this, SLOT(cancelPressed() ) ); //cancel pushButton connect(uiM.pushButton_okay, SIGNAL( pressed() ), this, SLOT(okayPressed() ) ); //okay pushButton connect(uiM.pushButton_command, SIGNAL( pressed() ), this, SLOT(commandPressed() ) ); //show command pushButton connect(uiM.comboBox_Type, SIGNAL( currentIndexChanged(int) ), this, SLOT(TaskTypeChanged(int) ) ); //Actions when task type combo changes (hide/show stuff) //Connect all include tab stuff changes with the disableExcludeTab SLOT connect (uiM.checkBox_includeFile, SIGNAL (stateChanged(int) ), this , SLOT(disableExcludeTab())); connect (uiM.lineEdit_includeFile, SIGNAL (textChanged(QString) ), this , SLOT(disableExcludeTab())); connect (uiM.radioButton_includeOnly, SIGNAL (toggled(bool)), this , SLOT(disableExcludeTab())); connect (uiM.radioButton_includeNormal, SIGNAL (toggled(bool)), this , SLOT(disableExcludeTab())); //Connect all add list items buttons with the addListItem SLOT //Map all the pushButton signals and transmit a different integer depending on the pushbutton QSignalMapper *signalMapper2 = new QSignalMapper(this); signalMapper2 -> setMapping ( uiM.pushButton_excludeAdd, 0 ); connect(uiM.pushButton_excludeAdd, SIGNAL( pressed() ), signalMapper2, SLOT(map() ) ); //excludAdd pushButton signalMapper2 -> setMapping ( uiM.pushButton_includeAdd, 1 ); connect(uiM.pushButton_includeAdd, SIGNAL( pressed() ), signalMapper2, SLOT(map() ) ); //includeAdd pushButton signalMapper2 -> setMapping ( uiM.pushButton_optionsAdd, 2 ); connect(uiM.pushButton_optionsAdd, SIGNAL( pressed() ), signalMapper2, SLOT(map() ) ); //optionsAdd pushButton signalMapper2 -> setMapping ( uiM.pushButton_executeBeforeAdd, 3 ); connect(uiM.pushButton_executeBeforeAdd, SIGNAL( pressed() ), signalMapper2, SLOT(map() ) ); //executeBeforeAdd pushButton signalMapper2 -> setMapping ( uiM.pushButton_executeAfterAdd, 4 ); connect(uiM.pushButton_executeAfterAdd, SIGNAL( pressed() ), signalMapper2, SLOT(map() ) ); //executeAftereAdd pushButton connect(signalMapper2, SIGNAL(mapped( const int)), this, SLOT( addListItem( const int) ) ); //Connect all Remove list items buttons with the RemoveListItem SLOT //Map all the pushButton signals and transmit a different integer depending on the pushbutton QSignalMapper *signalMapper3 = new QSignalMapper(this); signalMapper3 -> setMapping ( uiM.pushButton_excludeRemove, 0 ); connect(uiM.pushButton_excludeRemove, SIGNAL( pressed() ), signalMapper3, SLOT(map() ) ); //excludeRemove pushButton signalMapper3 -> setMapping ( uiM.pushButton_includeRemove, 1 ); connect(uiM.pushButton_includeRemove, SIGNAL( pressed() ), signalMapper3, SLOT(map() ) ); //includeRemove pushButton signalMapper3 -> setMapping ( uiM.pushButton_optionsRemove, 2 ); connect(uiM.pushButton_optionsRemove, SIGNAL( pressed() ), signalMapper3, SLOT(map() ) ); //optionsRemove pushButton signalMapper3 -> setMapping ( uiM.pushButton_executeBeforeRemove, 3 ); connect(uiM.pushButton_executeBeforeRemove, SIGNAL( pressed() ), signalMapper3, SLOT(map() ) ); //executeBeforeRemove pushButton signalMapper3 -> setMapping ( uiM.pushButton_executeAfterRemove, 4 ); connect(uiM.pushButton_executeAfterRemove, SIGNAL( pressed() ), signalMapper3, SLOT(map() ) ); //executeAfterRemove pushButton connect(signalMapper3, SIGNAL(mapped( const int)), this, SLOT( removeListItem( const int) ) ); //Connect all edit list items buttons with the editListItem SLOT //Map all the pushButton signals and transmit a different integer depending on the pushbutton QSignalMapper *signalMapper5 = new QSignalMapper(this); signalMapper5 -> setMapping ( uiM.pushButton_editExclude, 0 ); connect(uiM.pushButton_editExclude, SIGNAL( pressed() ), signalMapper5, SLOT(map() ) ); //EditExclude pushButton signalMapper5 -> setMapping ( uiM.pushButton_editInclude, 1 ); connect(uiM.pushButton_editInclude, SIGNAL( pressed() ), signalMapper5, SLOT(map() ) ); //EditInclude pushButton signalMapper5 -> setMapping ( uiM.pushButton_editOptions, 2 ); connect(uiM.pushButton_editOptions, SIGNAL( pressed() ), signalMapper5, SLOT(map() ) ); //EditOptiions pushButton signalMapper5 -> setMapping ( uiM.pushButton_editExecuteBefore, 3 ); connect(uiM.pushButton_editExecuteBefore, SIGNAL( pressed() ), signalMapper5, SLOT(map() ) ); //EditExecuteBefore pushButton signalMapper5 -> setMapping ( uiM.pushButton_editExecuteAfter, 4 ); connect(uiM.pushButton_editExecuteAfter, SIGNAL( pressed() ), signalMapper5, SLOT(map() ) ); //EditExecuteAfter pushButton connect(signalMapper5, SIGNAL(mapped( const int)), this, SLOT( editListItem( const int) ) ); //Connect all "move up" list items buttons with the editListItem SLOT //Map all the pushButton signals and transmit a different integer depending on the pushbutton QSignalMapper *signalMapper6 = new QSignalMapper(this); signalMapper6 -> setMapping ( uiM.pushButton_moveUpExclude, 0 ); connect(uiM.pushButton_moveUpExclude, SIGNAL( pressed() ), signalMapper6, SLOT(map() ) ); signalMapper6 -> setMapping ( uiM.pushButton_moveUpInclude, 1 ); connect(uiM.pushButton_moveUpInclude, SIGNAL( pressed() ), signalMapper6, SLOT(map() ) ); signalMapper6 -> setMapping ( uiM.pushButton_moveUpOptions, 2 ); connect(uiM.pushButton_moveUpOptions, SIGNAL( pressed() ), signalMapper6, SLOT(map() ) ); signalMapper6 -> setMapping ( uiM.pushButton_moveUpExecuteBefore, 3 ); connect(uiM.pushButton_moveUpExecuteBefore, SIGNAL( pressed() ), signalMapper6, SLOT(map() ) ); signalMapper6 -> setMapping ( uiM.pushButton_moveUpExecuteAfter, 4 ); connect(uiM.pushButton_moveUpExecuteAfter, SIGNAL( pressed() ), signalMapper6, SLOT(map() ) ); connect(signalMapper6, SIGNAL(mapped( const int)), this, SLOT( moveListItemUp( const int) ) ); //Connect all "move down" list items buttons with the editListItem SLOT //Map all the pushButton signals and transmit a different integer depending on the pushbutton QSignalMapper *signalMapper7 = new QSignalMapper(this); signalMapper7 -> setMapping ( uiM.pushButton_moveDownExclude, 0 ); connect(uiM.pushButton_moveDownExclude, SIGNAL( pressed() ), signalMapper7, SLOT(map() ) ); signalMapper7 -> setMapping ( uiM.pushButton_moveDownInclude, 1 ); connect(uiM.pushButton_moveDownInclude, SIGNAL( pressed() ), signalMapper7, SLOT(map() ) ); signalMapper7 -> setMapping ( uiM.pushButton_moveDownOptions, 2 ); connect(uiM.pushButton_moveDownOptions, SIGNAL( pressed() ), signalMapper7, SLOT(map() ) ); signalMapper7 -> setMapping ( uiM.pushButton_moveDownExecuteBefore, 3 ); connect(uiM.pushButton_moveDownExecuteBefore, SIGNAL( pressed() ), signalMapper7, SLOT(map() ) ); signalMapper7 -> setMapping ( uiM.pushButton_moveDownExecuteAfter, 4 ); connect(uiM.pushButton_moveDownExecuteAfter, SIGNAL( pressed() ), signalMapper7, SLOT(map() ) ); connect(signalMapper7, SIGNAL(mapped( const int)), this, SLOT( moveListItemDown( const int) ) ); //Connect all toolButtons with the browse SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper = new QSignalMapper(this); signalMapper -> setMapping ( uiM.toolButton_sourceBrowse, 0 ); connect (uiM.toolButton_sourceBrowse, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_destinationBrowse, 1 ); connect (uiM.toolButton_destinationBrowse, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_rsyncPassword, 4 ); connect (uiM.toolButton_rsyncPassword, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_sshPassword, 5 ); connect (uiM.toolButton_sshPassword, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_executeBeforeBrowse, 6 ); connect (uiM.toolButton_executeBeforeBrowse, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_executeAfterBrowse, 7 ); connect (uiM.toolButton_executeAfterBrowse, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_includeFile, 8 ); connect (uiM.toolButton_includeFile, SIGNAL (clicked() ), signalMapper , SLOT (map())); signalMapper -> setMapping ( uiM.toolButton_excludeFile, 9 ); connect (uiM.toolButton_excludeFile, SIGNAL (clicked() ), signalMapper , SLOT (map())); connect(signalMapper, SIGNAL(mapped( const int)), this, SLOT( browse( const int) ) ); //Connect all pattern toolButtons with the getPattern SLOT //Map all the toolButton signals and transmit a different integer depending on the toolbutton QSignalMapper *signalMapper4 = new QSignalMapper(this); signalMapper4 -> setMapping ( uiM.toolButton_excludeAddPattern, 0 ); connect (uiM.toolButton_excludeAddPattern, SIGNAL (clicked() ), signalMapper4 , SLOT (map())); signalMapper4 -> setMapping ( uiM.toolButton_includeAddPattern, 1 ); connect (uiM.toolButton_includeAddPattern, SIGNAL (clicked() ), signalMapper4 , SLOT (map())); connect(signalMapper4, SIGNAL(mapped( const int)), this, SLOT( getPattern( const int) ) ); // ssh password file default value // I do not consider this a good idea, because the default option should be a blank field (no ssh key file) // If the user clicks the browse button , he/she will be transfered to the ~/.ssh dir as default /* if ( (uiM.lineEdit_sshPassword -> text() == "" ) && (!WINrunning) ) { if (!WINrunning) uiM.lineEdit_sshPassword -> setText( myHome + SLASH +".ssh" + SLASH +"id_rsa"); else uiM.lineEdit_sshPassword -> setText(luckyBackupDir+"id_rsa"); } */ if (ArrayPosition < TotalOperations) //if modify is pressed fill the fields first with existing operation data fillModifyWindow(Operation[ArrayPosition]); disableExcludeTab(); // disable the exclude tab or nothing StdArguments << "-h" << "--progress" << "--stats"; //These are the standard arguments used by rsync //initialize a completer for the lineEdits QCompleter *completer = new QCompleter(this); completer -> setModel(new QDirModel(completer)); uiM.lineEdit_source -> setCompleter(completer); uiM.lineEdit_destination -> setCompleter(completer); uiM.lineEdit_excludeAdd -> setCompleter(completer); uiM.lineEdit_rsyncPassword -> setCompleter(completer); uiM.lineEdit_sshPassword -> setCompleter(completer); uiM.lineEdit_executeBeforeAdd -> setCompleter(completer); uiM.lineEdit_executeAfterAdd -> setCompleter(completer); uiM.lineEdit_excludeFile -> setCompleter(completer); uiM.lineEdit_includeFile -> setCompleter(completer); } //=================================================================================================================================================== //------------------------------------------------------------------SLOTS---------------------------------------------------------------------------- //=================================================================================================================================================== // advanced button pressed===================================================================================================== // hides or shows part of the widget void modifyDialog::advancedPressed(bool advanced) { int windowWidth = (this -> size()).width(); if (advanced) { uiM.tabWidget_advanced -> setVisible(true); uiM.pushButton_advanced -> setText(tr("simple")); this -> resize(windowWidth,maxWindowHeight); } else { uiM.tabWidget_advanced -> setVisible(false); uiM.pushButton_advanced -> setText(tr("advanced")); this -> resize(windowWidth,minWindowHeight); } } // cancel button pressed===================================================================================================== void modifyDialog::cancelPressed() { modifyOK = false; modifyConnected = false; close(); //emmit a QcloseEvent } //window closebutton pressed or QcloseEvent emitted========================================================================== void modifyDialog::closeEvent(QCloseEvent *event) { event->accept(); } // browse button pressed===================================================================================================== //opens a QFileDialog to browse for files/folders locally void modifyDialog::browse(const int type) { QString newLineEdit; switch (type) { //source browse button case 0: newLineEdit = QFileDialog::getExistingDirectory (this, tr("Select source directory", "file selection dialog title"),uiM.lineEdit_source -> text()); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_source -> setText(modifyOS2Slashes(newLineEdit)); break; //destination browse button case 1: newLineEdit = QFileDialog::getExistingDirectory (this, tr("Select destination directory", "file selection dialog title"),uiM.lineEdit_destination -> text()); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_destination -> setText(modifyOS2Slashes(newLineEdit)); break; //rsync password file browse button case 4: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select rsync password file", "file selection dialog title"), myHome); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_rsyncPassword -> setText(modifyOS2Slashes(newLineEdit)); break; //ssh password file browse button case 5: if (!WINrunning) newLineEdit = QFileDialog::getOpenFileName (this, tr("Select ssh keyfile", "file selection dialog title"), myHome + SLASH +".ssh"); else newLineEdit = QFileDialog::getOpenFileName (this, tr("Select ssh keyfile", "file selection dialog title"), luckyBackupDir); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_sshPassword -> setText(modifyOS2Slashes(newLineEdit)); break; //execute before browse button case 6: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select command to be executed", "file selection dialog title"),SLASH); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_executeBeforeAdd -> setText(modifyOS2Slashes(newLineEdit)); break; //execute after browse button case 7: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select command to be executed", "file selection dialog title"),SLASH); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_executeAfterAdd -> setText(modifyOS2Slashes(newLineEdit)); break; //include from file browse button case 8: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select file to read include patterns", "file selection dialog title"),myHome); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_includeFile -> setText(modifyOS2Slashes(newLineEdit)); break; //exclude from file browse button case 9: newLineEdit = QFileDialog::getOpenFileName (this, tr("Select file to read exclude patterns", "file selection dialog title"),myHome); if (newLineEdit != "") //if something is selected indeed uiM.lineEdit_excludeFile -> setText(modifyOS2Slashes(newLineEdit)); break; } } // pattern button pressed===================================================================================================== //launches the pattern editor void modifyDialog::getPattern(const int type) { if (uiM.lineEdit_source -> text() == "") //if the source isn't defined yet { textDialog textdialogW ("QtWarning", tr("Please define the source before launching the pattern editor","message box, message")+" !!", this); textdialogW.exec(); return; } modifyTrailing(); // first modify the trailing of the source & destination directories QString NewPattern = ""; patternEditor patterneditor(uiM.lineEdit_source -> text(), this); patterneditor.exec(); NewPattern = patterneditor.getPattern(); if (NewPattern == "no pattern defined yet") // cancel pressed at the pattern editor return; switch (type) { // insert the pattern to the exclude lineEdit case 0: uiM.lineEdit_excludeAdd -> setText(NewPattern); break; // insert the pattern to the incude lineEdit case 1: uiM.lineEdit_includeAdd -> setText(NewPattern); break; } } // okay button pressed======================================================================================================= // Read all fields of modify operation dialog and fill appropriate variables // ...after performing some checks & changes !! void modifyDialog::okayPressed() { modifyOK = true; message = ""; // Strip off invalid characters from task name uiM.lineEdit_name -> setText(stripInvalidCharacters(uiM.lineEdit_name -> text())); //if name or source or destination is missing do not proceed ----------------------------------------------------------- if ( (uiM.lineEdit_name -> text() == "") || (uiM.lineEdit_destination -> text() == "") || (uiM.lineEdit_source -> text() == "") ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message")+": "+*/ tr("Please specify the following before proceeding:","message box, message")); if (uiM.lineEdit_name -> text() == "") message.append("
"+tr("Task name")); if (uiM.lineEdit_destination -> text() == "") message.append("
"+tr("Destination")); if (uiM.lineEdit_source -> text() == "") message.append("
"+tr("Source")); message.append("

"); } //check if / is declared as source and backup dir by name as operation type ------------------------------------------------ if ((uiM.lineEdit_source -> text() == "/") && (uiM.comboBox_Type -> currentIndex()==0) && (!uiM.checkBox_backupContents -> isChecked())) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+": "+*/ tr("You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box","message box message - line1")+"
"+ tr("That is not allowed because '/' does not have an actual name","message box message - line2")+" !!
" "..."+tr("Please check the relevant box before proceeding","message box message - line3")+"

"); } //same for OS2 or win if (((uiM.lineEdit_source -> text()).endsWith(":\\")) && (uiM.comboBox_Type -> currentIndex()==0) && (!uiM.checkBox_backupContents -> isChecked()) && (notXnixRunning) ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+": "+*/ tr("You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box","message box message - line1")+"
"+ tr("That is not allowed because the root partition does not have an actual name","message box message - line2")+" !!
" "..."+tr("Please check the relevant box before proceeding","message box message - line3")+"

"); } //check if the operation name already exists to proceed -------------------------------------------------------------------- count=0; while (count < TotalOperations) { if ( ((uiM.lineEdit_name -> text()) == (Operation[count] -> GetName()) ) && (count != ArrayPosition) ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+": "+*/ tr("The name of the task you requested already exists","message box message - line1")+" !!
" "..."+tr("Please specify a different name before proceeding","message box message - line2")+"

"); break; } count++; } modifyTrailing(); //do some changes according to radio button "operation type" //perform this if both source & destination are not empty if ( ((uiM.lineEdit_source -> text()) != "") && ((uiM.lineEdit_destination -> text()) != "" ) ) { //check if source & destination are the same to proceed ------------------------------------------------------------------ if ((( (uiM.lineEdit_source -> text()) == (uiM.lineEdit_destination -> text()) ) || ( (uiM.lineEdit_source -> text() + SLASH) == (uiM.lineEdit_destination -> text()) ) ) && (!uiM.groupBox_remote -> isChecked()) ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+": "+*/ tr("The source you have declared is identical to the destination","message box message - line1")+" !!
" "..."+tr("Please modify at least one of them","message box message - line2")+"

"); } else //check if the destination is part of the source directory structure ------------------------------------------------ if ( ((uiM.lineEdit_destination -> text()).contains(uiM.lineEdit_source -> text(), Qt::CaseSensitive) ) || ((uiM.lineEdit_destination -> text()).contains(uiM.lineEdit_source -> text() + SLASH, Qt::CaseSensitive)) ) message.prepend(/*""+tr("WARNING","message box message - line1")+": "+*/ tr("You have declared a destination that is part of the source directory structure", "message box message - line1")+"
" +tr("Do not forget to define a directory at the 'exclude' groupbox that will contain the destination", "message box message - line2. Please leave tag , intact and surrounding 'do not forget' translated")+"

"); } //"recursive" has to be checked for --delete-after to operate ------------------------------------------------------------- if ( (uiM.checkBox_deleteAfter -> isChecked()) && !(uiM.checkBox_recurse -> isChecked()) ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+": "+*/ tr("You have checked the 'delete files on the destination' option","message box message - line2") + "
" + tr("without having checked 'Recurse into directories' which is required","message box message - line3")+"

"); } //check if "remote" is checked and no hostname is declared ----------------------------------------------------------------- if ( (uiM.groupBox_remote -> isChecked()) && (uiM.lineEdit_remoteHost -> text() == "") ) { modifyOK = false; message.append(/*""+tr("ERROR","message box message - line1")+":"+*/ tr("'Remote Host' is checked, but no remote host name is declared","message box message - line2")+"
"+ tr("Please specify a remote host name","message box message - line3")+"
"+ tr("Otherwise uncheck 'Remote Host' to operate locally","message box message - line4")+"

"); } bool tempCloneWarning = true; //use this cause the next command will set CloneWARNING to true by creating a new operation // only perform this if "modify is pressed, not "new/duplicate/restore" task if (!newTaskThisIs) tempCloneWarning = Operation[ArrayPosition] -> GetCloneWARNING (); Operation[ArrayPosition] = fillOperationArray(); //fill the operation array item with data from the modify dialog Operation[ArrayPosition] -> SetCloneWARNING (tempCloneWarning); if (!validation) //if "done" pressed and not "validation check" { if (modifyOK) //if all "data filling" went ok { //check if the user has selected "delete files on the destination" & "backup the contents of a source directory" and WARN if ( (uiM.comboBox_Type -> currentIndex()==0) && (uiM.checkBox_deleteAfter -> isChecked()) && (Operation[ArrayPosition] -> GetCloneWARNING()) && (uiM.checkBox_backupContents -> isChecked()) ) { textDialog textdialog ("CloneWarning", "", this); textdialog.exec(); if (textdialog.getGoOn() == 4) //okay with "Do not show this again" checked { Operation[ArrayPosition] -> SetCloneWARNING (false); close(); } if (textdialog.getGoOn() == 2) //okay with "Do not show this again" NOT checked close(); //emmit a QcloseEvent } else close(); //emmit a QcloseEvent } else //display a warning message { textDialog textdialogW ("QtWarning", message, this); textdialogW.exec(); } } } // validate button pressed======================================================================================================= // Pops up a dialog with the rsync command & arguments, also displays error messages void modifyDialog::commandPressed() { validation = true; okayPressed(); QStringList arguments = Operation[ArrayPosition] -> GetArgs(); QString tempArgs = ""; count=0; QString source, dest; source=arguments[arguments.size()-2]; dest=arguments[arguments.size()-1]; while (count < arguments.size()-2) { if (arguments[count].contains("-e "+sshCommandPath+" ")) { tempArgs.append("-e \"" + arguments[count].remove(0,3) + "\" "); } else tempArgs.append(arguments[count]+" "); count++; } if (modifyOK) message.prepend(tr("All declared fields of the task properties window seem to be ok","message box message first line")+"

"); else message.prepend(""+tr("Errors have been found","message box message first line")+"...

"); message.append(""+tr("command to be executed","full phrase: command to be executed: ")+":
"); textDialog textdialog ("ValidateDialog", message + "rsync " + tempArgs + "
"+ source + "
" + dest + "
", this); textdialog.exec(); validation = false; //========================================================================================================================== } // List item Add button pressed===================================================================================================== // adds an item in the excluded,included,options list void modifyDialog::addListItem(const int type) { QString text="", selectedText=""; QList temp; temp.clear(); switch (type) { //exclude list add button case 0: text = uiM.lineEdit_excludeAdd -> text(); // This is the text in the lineEdit if (text == "") // if there is nothing typed just return return; if (uiM.listWidget_exclude -> count() == 0) // if this is the first entry, just add it (to avoid segfault) { uiM.listWidget_exclude -> addItem(text); uiM.lineEdit_excludeAdd -> clear(); return; } if (listItemEditMode) selectedText = (uiM.listWidget_exclude -> currentItem()) -> text(); // The selected list item text (used for listItemEdit) temp = uiM.listWidget_exclude -> findItems (text, Qt::MatchExactly) ; // list with all other items that are the same with the lineedit // If the text in the lineedit already exists if ((temp.size() > 0) && (text != selectedText)) { textDialog textdialogw ("QtWarning", tr("You have already added this exclude item","message box message")+" !!
" , this); textdialogw.exec(); return; } if (listItemEditMode) { //change the value of the selected list item int selectedItem = uiM.listWidget_exclude -> currentRow(); uiM.listWidget_exclude -> takeItem(selectedItem); //take out the selected item from the list uiM.listWidget_exclude -> insertItem(selectedItem, text); //insert a new one at the same position with the new text uiM.listWidget_exclude -> setCurrentRow(selectedItem); //highlight this row // set the gui back to its original form uiM.pushButton_excludeAdd -> setText(origAddText); uiM.pushButton_excludeAdd -> setToolTip(origAddToolTip); uiM.pushButton_excludeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_excludeRemove -> setText(origRemoveText); uiM.pushButton_excludeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_excludeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExclude -> setEnabled (true); uiM.pushButton_moveUpExclude -> setEnabled (true); uiM.pushButton_moveDownExclude -> setEnabled (true); // set this bool var to false - end of list edit mode listItemEditMode = false; } else uiM.listWidget_exclude -> addItem(text); uiM.lineEdit_excludeAdd -> clear(); break; //include list add button case 1: text = uiM.lineEdit_includeAdd -> text(); if (text == "") // if there is nothing typed just return return; if (uiM.listWidget_include -> count() == 0) // if this is the first entry, just add it (to avoid segfault) { uiM.listWidget_include -> addItem(text); uiM.lineEdit_includeAdd -> clear(); disableExcludeTab(); // disable the exclude tab or not return; } if (listItemEditMode) selectedText = (uiM.listWidget_include -> currentItem()) -> text(); // The selected list item text (used for listItemEdit) temp = uiM.listWidget_include -> findItems (text, Qt::MatchExactly) ; // list with all other items that are the same with the lineedit // If the text in the lineedit already exists if ((temp.size() > 0) && (text != selectedText)) { textDialog textdialogw ("QtWarning", tr("You have already added this include item","message box message")+" !!
" , this); textdialogw.exec(); return; } if (listItemEditMode) { //change the value of the selected list item int selectedItem = uiM.listWidget_include -> currentRow(); uiM.listWidget_include -> takeItem(selectedItem); //take out the selected item from the list uiM.listWidget_include -> insertItem(selectedItem, text); //insert a new one at the same position with the new text uiM.listWidget_include -> setCurrentRow(selectedItem); //highlight this row // set the gui back to its original form uiM.pushButton_includeAdd -> setText(origAddText); uiM.pushButton_includeAdd -> setToolTip(origAddToolTip); uiM.pushButton_includeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_includeRemove -> setText(origRemoveText); uiM.pushButton_includeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_includeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editInclude -> setEnabled (true); uiM.pushButton_moveUpInclude -> setEnabled (true); uiM.pushButton_moveDownInclude -> setEnabled (true); // set this bool var to false - end of list edit mode listItemEditMode = false; } else uiM.listWidget_include -> addItem(text); uiM.lineEdit_includeAdd -> clear(); disableExcludeTab(); // disable the exclude tab or not break; //options list add button case 2: text = uiM.lineEdit_optionsAdd -> text(); if (text == "") // if there is nothing typed just return return; if (uiM.listWidget_options -> count() == 0) // if this is the first entry, just add it (to avoid segfault) { uiM.listWidget_options -> addItem(text); uiM.lineEdit_optionsAdd -> clear(); return; } if (listItemEditMode) selectedText = (uiM.listWidget_options -> currentItem()) -> text(); // The selected list item text (used for listItemEdit) temp = uiM.listWidget_options -> findItems (text, Qt::MatchExactly) ; // list with all other items that are the same with the lineedit // If the text in the lineedit already exist if ((temp.size() > 0) && (text != selectedText)) { textDialog textdialogW ("QtWarning", tr("You have already added this option","message box message")+" !!
", this); textdialogW.exec(); return; } if (listItemEditMode) { //change the value of the selected list item int selectedItem = uiM.listWidget_options -> currentRow(); uiM.listWidget_options -> takeItem(selectedItem); //take out the selected item from the list uiM.listWidget_options -> insertItem(selectedItem, text); //insert a new one at the same position with the new text uiM.listWidget_options -> setCurrentRow(selectedItem); //highlight this row // set the gui back to its original form uiM.pushButton_optionsAdd -> setText(origAddText); uiM.pushButton_optionsAdd -> setToolTip(origAddToolTip); uiM.pushButton_optionsAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_optionsRemove -> setText(origRemoveText); uiM.pushButton_optionsRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_optionsRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editOptions -> setEnabled (true); uiM.pushButton_moveUpOptions -> setEnabled (true); uiM.pushButton_moveDownOptions -> setEnabled (true); // set this bool var to false - end of list edit mode listItemEditMode = false; } else uiM.listWidget_options -> addItem(text); uiM.lineEdit_optionsAdd -> clear(); break; //Execute before list add button case 3: text = uiM.lineEdit_executeBeforeAdd -> text(); if (text != "") { if (listItemEditMode) { //change the value of the selected list item int selectedItem = uiM.listWidget_executeBefore -> currentRow(); uiM.listWidget_executeBefore -> takeItem(selectedItem); //take out the selected item from the list //insert a new one at the same position with the new text uiM.listWidget_executeBefore -> insertItem(selectedItem, text); uiM.listWidget_executeBefore -> setCurrentRow(selectedItem); //highlight this row uiM.listWidget_executeBefore -> currentItem() -> setCheckState(alsoExecuteState); // set its state to what it was uiM.listWidget_executeBefore -> currentItem() -> setToolTip (alsoExecuteTooltip); // set the tooltip // set the gui back to its original form uiM.pushButton_executeBeforeAdd -> setText(origAddText); uiM.pushButton_executeBeforeAdd -> setToolTip(origAddToolTip); uiM.pushButton_executeBeforeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_executeBeforeRemove -> setText(origRemoveText); uiM.pushButton_executeBeforeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_executeBeforeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExecuteBefore -> setEnabled (true); uiM.pushButton_moveUpExecuteBefore -> setEnabled (true); uiM.pushButton_moveDownExecuteBefore -> setEnabled (true); // set this bool var to false - end of list edit mode listItemEditMode = false; } else { uiM.listWidget_executeBefore -> addItem(text); uiM.listWidget_executeBefore -> setCurrentRow(uiM.listWidget_executeBefore -> count()-1); uiM.listWidget_executeBefore -> currentItem() -> setCheckState(Qt::Checked); uiM.listWidget_executeBefore -> currentItem() -> setToolTip (alsoExecuteTooltip); } uiM.lineEdit_executeBeforeAdd -> clear(); } break; //Execute after list add button case 4: text = uiM.lineEdit_executeAfterAdd -> text(); if (text != "") { if (listItemEditMode) { //change the value of the selected list item int selectedItem = uiM.listWidget_executeAfter -> currentRow(); uiM.listWidget_executeAfter -> takeItem(selectedItem); //take out the selected item from the list //insert a new one at the same position with the new text uiM.listWidget_executeAfter -> insertItem(selectedItem, text); uiM.listWidget_executeAfter -> setCurrentRow(selectedItem); //highlight this row uiM.listWidget_executeAfter -> currentItem() -> setCheckState(alsoExecuteState); // set its state to what it was uiM.listWidget_executeAfter -> currentItem() -> setToolTip (alsoExecuteTooltip); // set the gui back to its original form uiM.pushButton_executeAfterAdd -> setText(origAddText); uiM.pushButton_executeAfterAdd -> setToolTip(origAddToolTip); uiM.pushButton_executeAfterAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_executeAfterRemove -> setText(origRemoveText); uiM.pushButton_executeAfterRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_executeAfterRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExecuteAfter -> setEnabled (true); uiM.pushButton_moveUpExecuteAfter -> setEnabled (true); uiM.pushButton_moveDownExecuteAfter -> setEnabled (true); // set this bool var to false - end of list edit mode listItemEditMode = false; } else { uiM.listWidget_executeAfter -> addItem(text); uiM.listWidget_executeAfter -> setCurrentRow(uiM.listWidget_executeAfter -> count()-1); uiM.listWidget_executeAfter -> currentItem() -> setCheckState(Qt::Checked); uiM.listWidget_executeAfter -> currentItem() -> setToolTip (alsoExecuteTooltip); } uiM.lineEdit_executeAfterAdd -> clear(); } break; } } // List item Remove button pressed===================================================================================================== // Removes an item from the excluded,included,options list void modifyDialog::removeListItem(const int type) { int selected; switch (type) { //exclude list remove button case 0: if (listItemEditMode) // do not proceed further if this is just a cancel from list item edit mode { // set the gui back to its original form uiM.pushButton_excludeAdd -> setText(origAddText); uiM.pushButton_excludeAdd -> setToolTip(origAddToolTip); uiM.pushButton_excludeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_excludeRemove -> setText(origRemoveText); uiM.pushButton_excludeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_excludeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExclude -> setEnabled (true); uiM.pushButton_moveUpExclude -> setEnabled (true); uiM.pushButton_moveDownExclude -> setEnabled (true); listItemEditMode = false; // set this bool var to false - end of list edit mode return; } selected = uiM.listWidget_exclude -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiM.listWidget_exclude-> takeItem(selected); break; //include list remove button case 1: if (listItemEditMode) // do not proceed further if this is just a cancel from list item edit mode { // set the gui back to its original form uiM.pushButton_includeAdd -> setText(origAddText); uiM.pushButton_includeAdd -> setToolTip(origAddToolTip); uiM.pushButton_includeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_includeRemove -> setText(origRemoveText); uiM.pushButton_includeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_includeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editInclude -> setEnabled (true); uiM.pushButton_moveUpInclude -> setEnabled (true); uiM.pushButton_moveDownInclude -> setEnabled (true); listItemEditMode = false; // set this bool var to false - end of list edit mode return; } selected = uiM.listWidget_include -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiM.listWidget_include-> takeItem(selected); disableExcludeTab(); // disable the exclude tab or not break; //options list remove button case 2: if (listItemEditMode) // do not proceed further if this is just a cancel from list item edit mode { // set the gui back to its original form uiM.pushButton_optionsAdd -> setText(origAddText); uiM.pushButton_optionsAdd -> setToolTip(origAddToolTip); uiM.pushButton_optionsAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_optionsRemove -> setText(origRemoveText); uiM.pushButton_optionsRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_optionsRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editOptions -> setEnabled (true); uiM.pushButton_moveUpOptions -> setEnabled (true); uiM.pushButton_moveDownOptions -> setEnabled (true); listItemEditMode = false; // set this bool var to false - end of list edit mode return; } selected = uiM.listWidget_options -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiM.listWidget_options-> takeItem(selected); break; //execute before list remove button case 3: if (listItemEditMode) // do not proceed further if this is just a cancel from list item edit mode { // set the gui back to its original form uiM.pushButton_executeBeforeAdd -> setText(origAddText); uiM.pushButton_executeBeforeAdd -> setToolTip(origAddToolTip); uiM.pushButton_executeBeforeAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_executeBeforeRemove -> setText(origRemoveText); uiM.pushButton_executeBeforeRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_executeBeforeRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExecuteBefore -> setEnabled (true); uiM.pushButton_moveUpExecuteBefore -> setEnabled (true); uiM.pushButton_moveDownExecuteBefore -> setEnabled (true); listItemEditMode = false; // set this bool var to false - end of list edit mode return; } selected = uiM.listWidget_executeBefore -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiM.listWidget_executeBefore -> takeItem(selected); break; //execute after list remove button case 4: if (listItemEditMode) // do not proceed further if this is just a cancel from list item edit mode { // set the gui back to its original form uiM.pushButton_executeAfterAdd -> setText(origAddText); uiM.pushButton_executeAfterAdd -> setToolTip(origAddToolTip); uiM.pushButton_executeAfterAdd -> setIcon(QIcon(":/luckyPrefix/add.png")); uiM.pushButton_executeAfterRemove -> setText(origRemoveText); uiM.pushButton_executeAfterRemove -> setToolTip(origRemoveToolTip); uiM.pushButton_executeAfterRemove -> setIcon(QIcon(":/luckyPrefix/remove.png")); uiM.pushButton_editExecuteAfter -> setEnabled (true); uiM.pushButton_moveUpExecuteAfter -> setEnabled (true); uiM.pushButton_moveDownExecuteAfter -> setEnabled (true); listItemEditMode = false; // set this bool var to false - end of list edit mode return; } selected = uiM.listWidget_executeAfter -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; uiM.listWidget_executeAfter -> takeItem(selected); break; } } // List item edit button pressed===================================================================================================== // Edits an item from the excluded,included,options or "also execute" list void modifyDialog::editListItem(const int type) { int selected; QString selectedText = ""; switch (type) { //exclude list case 0: selected = uiM.listWidget_exclude -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; listItemEditMode = true; origAddText = uiM.pushButton_excludeAdd -> text(); origAddToolTip = uiM.pushButton_excludeAdd -> toolTip(); origRemoveText = uiM.pushButton_excludeRemove -> text(); origRemoveToolTip = uiM.pushButton_excludeRemove -> toolTip(); uiM.pushButton_excludeAdd -> setText(tr("done")); uiM.pushButton_excludeAdd -> setToolTip(tr("done editing")); uiM.pushButton_excludeAdd -> setIcon(QIcon(":/luckyPrefix/okay.png")); uiM.pushButton_excludeRemove -> setText(tr("cancel")); uiM.pushButton_excludeRemove -> setToolTip(tr("cancel editing")); uiM.pushButton_excludeRemove -> setIcon(QIcon(":/luckyPrefix/cancel.png")); uiM.pushButton_editExclude -> setEnabled (false); uiM.pushButton_moveUpExclude -> setEnabled (false); uiM.pushButton_moveDownExclude -> setEnabled (false); selectedText = (uiM.listWidget_exclude -> currentItem()) -> text(); //current list item text uiM.lineEdit_excludeAdd -> setText (selectedText); uiM.lineEdit_excludeAdd -> setFocus(); uiM.lineEdit_excludeAdd -> selectAll(); break; //include list case 1: selected = uiM.listWidget_include -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; listItemEditMode = true; origAddText = uiM.pushButton_includeAdd -> text(); origAddToolTip = uiM.pushButton_includeAdd -> toolTip(); origRemoveText = uiM.pushButton_includeRemove -> text(); origRemoveToolTip = uiM.pushButton_includeRemove -> toolTip(); uiM.pushButton_includeAdd -> setText(tr("done")); uiM.pushButton_includeAdd -> setToolTip(tr("done editing")); uiM.pushButton_includeAdd -> setIcon(QIcon(":/luckyPrefix/okay.png")); uiM.pushButton_includeRemove -> setText(tr("cancel")); uiM.pushButton_includeRemove -> setToolTip(tr("cancel editing")); uiM.pushButton_includeRemove -> setIcon(QIcon(":/luckyPrefix/cancel.png")); uiM.pushButton_editInclude -> setEnabled (false); uiM.pushButton_moveUpInclude -> setEnabled (false); uiM.pushButton_moveDownInclude -> setEnabled (false); selectedText = (uiM.listWidget_include -> currentItem()) -> text(); //current list item text uiM.lineEdit_includeAdd -> setText (selectedText); uiM.lineEdit_includeAdd -> setFocus(); uiM.lineEdit_includeAdd -> selectAll(); break; //options list case 2: selected = uiM.listWidget_options -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; listItemEditMode = true; origAddText = uiM.pushButton_optionsAdd -> text(); origAddToolTip = uiM.pushButton_optionsAdd -> toolTip(); origRemoveText = uiM.pushButton_optionsRemove -> text(); origRemoveToolTip = uiM.pushButton_optionsRemove -> toolTip(); uiM.pushButton_optionsAdd -> setText(tr("done")); uiM.pushButton_optionsAdd -> setToolTip(tr("done editing")); uiM.pushButton_optionsAdd -> setIcon(QIcon(":/luckyPrefix/okay.png")); uiM.pushButton_optionsRemove -> setText(tr("cancel")); uiM.pushButton_optionsRemove -> setToolTip(tr("cancel editing")); uiM.pushButton_optionsRemove -> setIcon(QIcon(":/luckyPrefix/cancel.png")); uiM.pushButton_editOptions -> setEnabled (false); uiM.pushButton_moveUpOptions -> setEnabled (false); uiM.pushButton_moveDownOptions -> setEnabled (false); selectedText = (uiM.listWidget_options -> currentItem()) -> text(); //current list item text uiM.lineEdit_optionsAdd -> setText (selectedText); uiM.lineEdit_optionsAdd -> setFocus(); uiM.lineEdit_optionsAdd -> selectAll(); break; //execute before list case 3: selected = uiM.listWidget_executeBefore -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; listItemEditMode = true; origAddText = uiM.pushButton_executeBeforeAdd -> text(); origAddToolTip = uiM.pushButton_executeBeforeAdd -> toolTip(); origRemoveText = uiM.pushButton_executeBeforeRemove -> text(); origRemoveToolTip = uiM.pushButton_executeBeforeRemove -> toolTip(); uiM.pushButton_executeBeforeAdd -> setText(tr("done")); uiM.pushButton_executeBeforeAdd -> setToolTip(tr("done editing")); uiM.pushButton_executeBeforeAdd -> setIcon(QIcon(":/luckyPrefix/okay.png")); uiM.pushButton_executeBeforeRemove -> setText(tr("cancel")); uiM.pushButton_executeBeforeRemove -> setToolTip(tr("cancel editing")); uiM.pushButton_executeBeforeRemove -> setIcon(QIcon(":/luckyPrefix/cancel.png")); uiM.pushButton_editExecuteBefore -> setEnabled (false); uiM.pushButton_moveUpExecuteBefore -> setEnabled (false); uiM.pushButton_moveDownExecuteBefore -> setEnabled (false); selectedText = (uiM.listWidget_executeBefore -> currentItem()) -> text(); //current list item text alsoExecuteState = uiM.listWidget_executeBefore -> currentItem() -> checkState(); // current list item check state uiM.lineEdit_executeBeforeAdd -> setText (selectedText); uiM.lineEdit_executeBeforeAdd -> setFocus(); uiM.lineEdit_executeBeforeAdd -> selectAll(); break; //execute after case 4: selected = uiM.listWidget_executeAfter -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; listItemEditMode = true; origAddText = uiM.pushButton_executeAfterAdd -> text(); origAddToolTip = uiM.pushButton_executeAfterAdd -> toolTip(); origRemoveText = uiM.pushButton_executeAfterRemove -> text(); origRemoveToolTip = uiM.pushButton_executeAfterRemove -> toolTip(); uiM.pushButton_executeAfterAdd -> setText(tr("done")); uiM.pushButton_executeAfterAdd -> setToolTip(tr("done editing")); uiM.pushButton_executeAfterAdd -> setIcon(QIcon(":/luckyPrefix/okay.png")); uiM.pushButton_executeAfterRemove -> setText(tr("cancel")); uiM.pushButton_executeAfterRemove -> setToolTip(tr("cancel editing")); uiM.pushButton_executeAfterRemove -> setIcon(QIcon(":/luckyPrefix/cancel.png")); uiM.pushButton_editExecuteAfter -> setEnabled (false); uiM.pushButton_moveUpExecuteAfter -> setEnabled (false); uiM.pushButton_moveDownExecuteAfter -> setEnabled (false); selectedText = (uiM.listWidget_executeAfter -> currentItem()) -> text(); //current list item text alsoExecuteState = uiM.listWidget_executeAfter -> currentItem() -> checkState(); // current list item check state uiM.lineEdit_executeAfterAdd -> setText (selectedText); uiM.lineEdit_executeAfterAdd -> setFocus(); uiM.lineEdit_executeAfterAdd -> selectAll(); break; } } // List item move up button pressed===================================================================================================== // Moves an item within list, up one position void modifyDialog::moveListItemUp(const int type) { int selected; QListWidgetItem *tempItem; switch (type) { //exclude list case 0: selected = uiM.listWidget_exclude -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; if (selected > 0) //if this is not the first row proceed with swapping items { tempItem = uiM.listWidget_exclude -> takeItem(selected); uiM.listWidget_exclude -> insertItem (selected-1, tempItem); uiM.listWidget_exclude -> setCurrentRow (selected-1); } break; //include list case 1: selected = uiM.listWidget_include -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; if (selected > 0) //if this is not the first row proceed with swapping items { tempItem = uiM.listWidget_include -> takeItem(selected); uiM.listWidget_include -> insertItem (selected-1, tempItem); uiM.listWidget_include -> setCurrentRow (selected-1); } break; //options list case 2: selected = uiM.listWidget_options -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; if (selected > 0) //if this is not the first row proceed with swapping items { tempItem = uiM.listWidget_options -> takeItem(selected); uiM.listWidget_options -> insertItem (selected-1, tempItem); uiM.listWidget_options -> setCurrentRow (selected-1); } break; //execute before case 3: selected = uiM.listWidget_executeBefore -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; if (selected > 0) //if this is not the first row proceed with swapping items { tempItem = uiM.listWidget_executeBefore -> takeItem(selected); uiM.listWidget_executeBefore -> insertItem (selected-1, tempItem); uiM.listWidget_executeBefore -> setCurrentRow (selected-1); } break; //execute after case 4: selected = uiM.listWidget_executeAfter -> currentRow(); //current list row number if (selected < 0) //if nothing is selected do nothing return; if (selected > 0) //if this is not the first row proceed with swapping items { tempItem = uiM.listWidget_executeAfter -> takeItem(selected); uiM.listWidget_executeAfter -> insertItem (selected-1, tempItem); uiM.listWidget_executeAfter -> setCurrentRow (selected-1); } break; } } // List item move down button pressed===================================================================================================== // Moves an item within list, down one position void modifyDialog::moveListItemDown(const int type) { int selected, totalListItems; QListWidgetItem *tempItem; switch (type) { //exclude list case 0: selected = uiM.listWidget_exclude -> currentRow(); //current list row number totalListItems = uiM.listWidget_exclude -> count(); //total no of list items if (selected < 0) //if nothing is selected do nothing return; if (selected < totalListItems-1) //if this is not the last row proceed with swapping items { tempItem = uiM.listWidget_exclude -> takeItem(selected); uiM.listWidget_exclude -> insertItem (selected+1, tempItem); uiM.listWidget_exclude -> setCurrentRow (selected+1); } break; //include list case 1: selected = uiM.listWidget_include -> currentRow(); //current list row number totalListItems = uiM.listWidget_include -> count(); //total no of list items if (selected < 0) //if nothing is selected do nothing return; if (selected < totalListItems-1) //if this is not the last row proceed with swapping items { tempItem = uiM.listWidget_include -> takeItem(selected); uiM.listWidget_include -> insertItem (selected+1, tempItem); uiM.listWidget_include -> setCurrentRow (selected+1); } break; //options list case 2: selected = uiM.listWidget_options -> currentRow(); //current list row number totalListItems = uiM.listWidget_options -> count(); //total no of list items if (selected < 0) //if nothing is selected do nothing return; if (selected < totalListItems-1) //if this is not the last row proceed with swapping items { tempItem = uiM.listWidget_options -> takeItem(selected); uiM.listWidget_options -> insertItem (selected+1, tempItem); uiM.listWidget_options -> setCurrentRow (selected+1); } break; //execute before case 3: selected = uiM.listWidget_executeBefore -> currentRow(); //current list row number totalListItems = uiM.listWidget_executeBefore -> count(); //total no of list items if (selected < 0) //if nothing is selected do nothing return; if (selected < totalListItems-1) //if this is not the last row proceed with swapping items { tempItem = uiM.listWidget_executeBefore -> takeItem(selected); uiM.listWidget_executeBefore -> insertItem (selected+1, tempItem); uiM.listWidget_executeBefore -> setCurrentRow (selected+1); } break; //execute after case 4: selected = uiM.listWidget_executeAfter -> currentRow(); //current list row number totalListItems = uiM.listWidget_executeAfter -> count(); //total no of list items if (selected < 0) //if nothing is selected do nothing return; if (selected < totalListItems-1) //if this is not the last row proceed with swapping items { tempItem = uiM.listWidget_executeAfter -> takeItem(selected); uiM.listWidget_executeAfter -> insertItem (selected+1, tempItem); uiM.listWidget_executeAfter -> setCurrentRow (selected+1); } break; } } // Task type combobox changed===================================================================================================== // Enable/disable the "keep snapshots" spinbox void modifyDialog::TaskTypeChanged(int type) { if (type == 1) { uiM.label_snapshotsKeep -> setVisible(false); uiM.spinBox_snapshotsKeep -> setVisible(false); uiM.checkBox_backupContents -> setVisible(false); uiM.checkBox_deleteAfter -> setEnabled (false); } else { uiM.label_snapshotsKeep -> setVisible(true); uiM.spinBox_snapshotsKeep -> setVisible(true); uiM.checkBox_backupContents -> setVisible(true); uiM.checkBox_deleteAfter -> setEnabled (true); } } // Include tab stuff changed===================================================================================================== // Enable/disable the "exclude" tab void modifyDialog::disableExcludeTab() { bool enableIt = true; // conditions to disable the exclude tab if ( ( (uiM.listWidget_include -> count() > 0) || ((uiM.checkBox_includeFile->isChecked()) && ((uiM.lineEdit_includeFile->text()).size() >0)) ) && (uiM.radioButton_includeOnly -> isChecked()) ) enableIt = false; uiM.toolBox_exclude -> setEnabled (enableIt); } //=================================================================================================================================================== //------------------------------------------------------------------FUNCTIONS------------------------------------------------------------------------ //=================================================================================================================================================== // fillOperationArray ===================================================================================================== //function to fill the data of an operation array item from the window fields operation *modifyDialog::fillOperationArray() { operation *pTask = new operation; //Before doing any changes, inherit last execution time & error as well as snapshots list from the existing task //if this is not a new task (modify task. NOT new/duplicate/restore task) if (!newTaskThisIs) { pTask -> SetLastExecutionTime (Operation[ArrayPosition] -> GetLastExecutionTime()); pTask -> SetLastExecutionErrors (Operation[ArrayPosition] -> GetLastExecutionErrors()); pTask -> SetSnapshotsList (Operation[ArrayPosition] -> GetSnapshotsList()); } //set operation name -------------------------------------------------------------------------------------------------------- pTask -> SetName ( uiM.lineEdit_name -> text() ); // set connection ---------------------------------------------------------------------------- pTask -> SetConnectRestore (""); //set task description -------------------------------------------------------------------------------------------------------- pTask -> SetDescription ( uiM.textEdit_Description -> toPlainText() ); // set operation type ------------------------------------------------------------------------------ if (uiM.comboBox_Type -> currentIndex()==0) { if (uiM.checkBox_backupContents -> isChecked()) { pTask -> SetTypeDirContents ( true ); pTask -> SetTypeDirName ( false ); pTask -> SetTypeSync ( false ); } else { pTask -> SetTypeDirContents ( false ); pTask -> SetTypeDirName ( true ); pTask -> SetTypeSync ( false ); } } if (uiM.comboBox_Type -> currentIndex()==1) { pTask -> SetTypeDirContents ( false ); pTask -> SetTypeDirName ( false ); pTask -> SetTypeSync ( true ); uiM.spinBox_snapshotsKeep -> setValue (1); // also set the keep snapshots spinbox to "1" if it is a sync task } // also set the keep snapshots spinbox to "1" if remote destination is used // Commended bacause remote snapshots are now supported - safely delete this //if ( (uiM.groupBox_remote -> isChecked()) && (uiM.radioButton_remoteDestination -> isChecked()) ) // uiM.spinBox_snapshotsKeep -> setValue (1); //set source & destination ------------------------------------------------------------------------------------------------ pTask -> SetSource ( uiM.lineEdit_source -> text() ); pTask -> SetDestination ( uiM.lineEdit_destination -> text() ); //set number of snapshots ------------------------------------------------------------------------------------------------ pTask -> SetKeepSnapshots ( uiM.spinBox_snapshotsKeep -> value() ); //set exclude groupbox & all the info in there ----------------------------------------------------------------------------- pTask -> SetExcludeTemp ( uiM.checkBox_excludeTemp -> isChecked() ); pTask -> SetExcludeFromFile ( uiM.checkBox_excludeFile -> isChecked() ); pTask -> SetExcludeFile ( uiM.lineEdit_excludeFile -> text() ); pTask -> SetExcludeCache ( uiM.checkBox_excludeCache -> isChecked() ); pTask -> SetExcludeBackup ( uiM.checkBox_excludeBackup -> isChecked() ); pTask -> SetExcludeMount ( uiM.checkBox_excludeMount -> isChecked() ); pTask -> SetExcludeLostFound ( uiM.checkBox_excludeLostFound -> isChecked() ); pTask -> SetExcludeSystem ( uiM.checkBox_excludeSystem -> isChecked() ); pTask -> SetExcludeTrash ( uiM.checkBox_excludeTrash -> isChecked() ); pTask -> SetExcludeGVFS ( uiM.checkBox_excludeGVFS -> isChecked() ); count = 0; //read exclude list one by one while ( count < (uiM.listWidget_exclude -> count()) ) { uiM.listWidget_exclude -> setCurrentRow(count); pTask -> AddExcludeListItem((uiM.listWidget_exclude -> currentItem()) -> text()); count++; } pTask -> SetExclude (); //set include groupbox & all the info in there ----------------------------------------------------------------------------- pTask -> SetIncludeFromFile ( uiM.checkBox_includeFile -> isChecked() ); pTask -> SetIncludeFile ( uiM.lineEdit_includeFile -> text() ); pTask -> SetIncludeModeNormal ( uiM.radioButton_includeNormal -> isChecked() ); count = 0; //read include list one by one while ( count < (uiM.listWidget_include -> count()) ) { uiM.listWidget_include -> setCurrentRow(count); pTask -> AddIncludeListItem((uiM.listWidget_include -> currentItem()) -> text()); count++; } pTask -> SetInclude(); //set remote groupbox & all the info in there ----------------------------------------------------------------------------- pTask -> SetRemote ( uiM.groupBox_remote -> isChecked() ); pTask -> SetRemoteModule ( uiM.checkBox_remoteModule -> isChecked() ); pTask -> SetRemoteDestination ( uiM.radioButton_remoteDestination -> isChecked() ); pTask -> SetRemoteSource ( uiM.radioButton_remoteSource -> isChecked() ); pTask -> SetRemoteHost ( uiM.lineEdit_remoteHost -> text() ); pTask -> SetRemoteUser ( uiM.lineEdit_remoteUser -> text() ); pTask -> SetRemotePassword ( uiM.lineEdit_rsyncPassword -> text() ); pTask -> SetRemoteSSH ( uiM.checkBox_ssh -> isChecked() ); pTask -> SetRemoteSSHPassword ( uiM.lineEdit_sshPassword -> text() ); pTask -> SetRemoteSSHPort ( (uiM.lineEdit_sshPort -> text()).toInt() ); pTask -> SetRemoteSSHPasswordStr( uiM.lineEdit_sshPasswordStr -> text()); pTask -> SetRemoteSSHOptions ( uiM.lineEdit_sshOptions -> text()); //set rsync options checkboxes ----------------------------------------------------------------------------------------------- pTask -> SetOptionsUpdate ( uiM.checkBox_update -> isChecked() ); pTask -> SetOptionsOwnership ( uiM.checkBox_ownership -> isChecked() ); pTask -> SetOptionsSymlinks ( uiM.checkBox_symlinks -> isChecked() ); pTask -> SetOptionsPermissions ( uiM.checkBox_permissions -> isChecked() ); pTask -> SetOptionsDevices ( uiM.checkBox_devices -> isChecked() ); pTask -> SetOptionsCVS ( uiM.checkBox_cvs -> isChecked() ); pTask -> SetOptionsHardLinks ( uiM.checkBox_hardLinks -> isChecked() ); pTask -> SetOptionsFATntfs ( uiM.checkBox_FATntfs -> isChecked() ); pTask -> SetOptionsDelete ( uiM.checkBox_deleteAfter -> isChecked() ); pTask -> SetOptionsRecurse ( uiM.checkBox_recurse -> isChecked() ); pTask -> SetOptionsSuper ( uiM.checkBox_super -> isChecked() ); pTask -> SetOptionsNumericIDs ( uiM.checkBox_numericIDs -> isChecked() ); // windows related rsync options pTask -> SetOptionsRestorent ( uiM.checkBox_restorent -> isChecked() ); pTask -> SetOptionsVss ( uiM.checkBox_vss -> isChecked() ); pTask -> SetTempPath(tempDirPath); pTask -> SetLuckyBackupDir (luckyBackupDir); pTask -> SetVshadowDir (vshadowDir); pTask -> SetDosdevCommand (dosdevCommand); pTask -> SetCygpathCommand (cygpathCommand); pTask -> SetRsyncCommand (rsyncCommandPath); pTask -> SetSshCommand (sshCommandPath); count = 0; //read options list one by one while ( count < (uiM.listWidget_options -> count()) ) { uiM.listWidget_options -> setCurrentRow(count); pTask -> AddOptionsListItem((uiM.listWidget_options -> currentItem()) -> text()); count++; } count = 0; //read execute before list one by one bool tempState; while ( count < (uiM.listWidget_executeBefore -> count()) ) { uiM.listWidget_executeBefore -> setCurrentRow(count); pTask -> AddExecuteBeforeListItem((uiM.listWidget_executeBefore -> currentItem()) -> text()); if ((uiM.listWidget_executeBefore -> currentItem()) -> checkState() == Qt::Checked) tempState = true; else tempState = false; pTask -> AddExecuteBeforeListItemState(tempState); count++; } count = 0; //read execute after list one by one while ( count < (uiM.listWidget_executeAfter -> count()) ) { uiM.listWidget_executeAfter -> setCurrentRow(count); pTask -> AddExecuteAfterListItem((uiM.listWidget_executeAfter -> currentItem()) -> text()); if ((uiM.listWidget_executeAfter -> currentItem()) -> checkState() == Qt::Checked) tempState = true; else tempState = false; pTask -> AddExecuteAfterListItemState(tempState); count++; } pTask -> SetByPassWARNING ( uiM.checkBox_byPassWarning -> isChecked() ); pTask -> SetRepeatOnFail ( uiM.spinBox_repeatOnFail -> value() ); //append aguments ----------------------------------------------------------------------------------------------------------- pTask -> SetArgs ( AppendArguments(pTask) ); return pTask; } // fillModifyWindow ======================================================================================================= //function to fill the window fields from the data of an operation array item void modifyDialog::fillModifyWindow(operation *pTask) { uiM.lineEdit_name -> setText (pTask -> GetName() ); uiM.textEdit_Description -> setPlainText (pTask -> GetDescription() ); if (pTask -> GetTypeDirContents()) { uiM.comboBox_Type -> setCurrentIndex(0); uiM.checkBox_backupContents -> setCheckState(Qt::Checked); uiM.checkBox_deleteAfter -> setEnabled (true); } if (pTask -> GetTypeDirName()) { uiM.comboBox_Type -> setCurrentIndex(0); uiM.checkBox_backupContents -> setCheckState(Qt::Unchecked); uiM.checkBox_deleteAfter -> setEnabled (true); } if (pTask -> GetTypeSync()) { uiM.comboBox_Type -> setCurrentIndex(1); uiM.checkBox_deleteAfter -> setEnabled (false); } uiM.lineEdit_source -> setText (pTask -> GetSource() ); uiM.lineEdit_destination -> setText (pTask -> GetDestination() ); uiM.spinBox_snapshotsKeep -> setValue (pTask -> GetKeepSnapshots()); uiM.checkBox_excludeFile -> setChecked (pTask -> GetExcludeFromFile() ); uiM.lineEdit_excludeFile -> setText (pTask -> GetExcludeFile() ); uiM.checkBox_excludeTemp -> setChecked (pTask -> GetExcludeTemp() ); uiM.checkBox_excludeCache -> setChecked (pTask -> GetExcludeCache() ); uiM.checkBox_excludeBackup -> setChecked (pTask -> GetExcludeBackup() ); uiM.checkBox_excludeMount -> setChecked (pTask -> GetExcludeMount() ); uiM.checkBox_excludeLostFound -> setChecked (pTask -> GetExcludeLostFound() ); uiM.checkBox_excludeSystem -> setChecked (pTask -> GetExcludeSystem() ); uiM.checkBox_excludeTrash -> setChecked (pTask -> GetExcludeTrash() ); uiM.checkBox_excludeGVFS -> setChecked (pTask -> GetExcludeGVFS() ); count=0; while ( count < (pTask -> GetExcludeListSize()) ) { uiM.listWidget_exclude -> addItem (pTask -> GetExcludeListItem(count)); count++; } uiM.checkBox_includeFile -> setChecked (pTask -> GetIncludeFromFile() ); uiM.radioButton_includeNormal -> setChecked (pTask -> GetIncludeModeNormal() ); uiM.radioButton_includeOnly -> setChecked (!pTask -> GetIncludeModeNormal() ); uiM.lineEdit_includeFile -> setText (pTask -> GetIncludeFile() ); count=0; while ( count < (pTask -> GetIncludeListSize()) ) { uiM.listWidget_include -> addItem (pTask -> GetIncludeListItem(count)); count++; } uiM.groupBox_remote -> setChecked (pTask -> GetRemote() ); uiM.checkBox_remoteModule -> setChecked (pTask -> GetRemoteModule() ); uiM.radioButton_remoteDestination-> setChecked (pTask -> GetRemoteDestination() ); uiM.radioButton_remoteSource -> setChecked (pTask -> GetRemoteSource() ); uiM.lineEdit_remoteHost -> setText (pTask -> GetRemoteHost() ); uiM.lineEdit_remoteUser -> setText (pTask -> GetRemoteUser() ); uiM.lineEdit_rsyncPassword -> setText (pTask -> GetRemotePassword() ); uiM.checkBox_ssh -> setChecked (pTask -> GetRemoteSSH() ); uiM.lineEdit_sshPassword -> setText (pTask -> GetRemoteSSHPassword() ); uiM.lineEdit_sshPasswordStr -> setText (pTask -> GetRemoteSSHPasswordStr() ); uiM.lineEdit_sshOptions -> setText (pTask -> GetRemoteSSHOptions() ); if (pTask -> GetRemoteSSHPort() == 0) uiM.lineEdit_sshPort -> setText (""); else uiM.lineEdit_sshPort -> setText (countStr.setNum(pTask -> GetRemoteSSHPort()) ); uiM.checkBox_update -> setChecked (pTask -> GetOptionsUpdate() ); uiM.checkBox_deleteAfter -> setChecked (pTask -> GetOptionsDelete() ); uiM.checkBox_recurse -> setChecked (pTask -> GetOptionsRecurse() ); uiM.checkBox_ownership -> setChecked (pTask -> GetOptionsOwnership() ); uiM.checkBox_symlinks -> setChecked (pTask -> GetOptionsSymlinks() ); uiM.checkBox_permissions -> setChecked (pTask -> GetOptionsPermissions() ); uiM.checkBox_devices -> setChecked (pTask -> GetOptionsDevices() ); uiM.checkBox_cvs -> setChecked (pTask -> GetOptionsCVS() ); uiM.checkBox_hardLinks -> setChecked (pTask -> GetOptionsHardLinks() ); uiM.checkBox_FATntfs -> setChecked (pTask -> GetOptionsFATntfs() ); uiM.checkBox_super -> setChecked (pTask -> GetOptionsSuper() ); uiM.checkBox_numericIDs -> setChecked (pTask -> GetOptionsNumericIDs() ); uiM.checkBox_vss -> setChecked (pTask -> GetOptionsVss() ); uiM.checkBox_restorent -> setChecked (pTask -> GetOptionsRestorent() ); count=0; while ( count < (pTask -> GetOptionsListSize()) ) { uiM.listWidget_options -> addItem (pTask -> GetOptionsListItem(count)); count++; } count=0; while ( count < (pTask -> GetExecuteBeforeListSize()) ) { uiM.listWidget_executeBefore -> addItem (pTask -> GetExecuteBeforeListItem(count)); uiM.listWidget_executeBefore -> setCurrentRow(uiM.listWidget_executeBefore -> count()-1); uiM.listWidget_executeBefore -> currentItem() -> setToolTip (alsoExecuteTooltip); if (pTask -> GetExecuteBeforeListItemState(count) == true) uiM.listWidget_executeBefore -> currentItem() -> setCheckState(Qt::Checked); else uiM.listWidget_executeBefore -> currentItem() -> setCheckState(Qt::Unchecked); count++; } count=0; while ( count < (pTask -> GetExecuteAfterListSize()) ) { uiM.listWidget_executeAfter -> addItem (pTask -> GetExecuteAfterListItem(count)); uiM.listWidget_executeAfter -> setCurrentRow(uiM.listWidget_executeAfter -> count()-1); uiM.listWidget_executeAfter -> currentItem() -> setToolTip (alsoExecuteTooltip); if (pTask -> GetExecuteAfterListItemState(count) == true) uiM.listWidget_executeAfter -> currentItem() -> setCheckState(Qt::Checked); else uiM.listWidget_executeAfter -> currentItem() -> setCheckState(Qt::Unchecked); count++; } uiM.checkBox_byPassWarning -> setChecked ( pTask -> GetByPassWARNING() ); uiM.spinBox_repeatOnFail -> setValue ( pTask -> GetRepeatOnFail() ); } // modifyTrailing =========================================================================================================== // adds or removes a trailing "/" at the source & destination directory void modifyDialog::modifyTrailing() { // SLASH is "/" for *nix and windows and "\\" for OS2 QString sourceDir = uiM.lineEdit_source -> text(); QString destDir = uiM.lineEdit_destination -> text(); // Check if a drive letter is declared at OS/2 or win (eg c:) and add a trailing slash if (notXnixRunning) { if (sourceDir.endsWith(":")) sourceDir.append(SLASH); if (destDir.endsWith(":")) destDir.append(SLASH); } //Directory by contents - trailing slash at source & dest paths if ((uiM.comboBox_Type -> currentIndex()==0) && (uiM.checkBox_backupContents -> isChecked())) { if ( (!sourceDir.endsWith(XnixSLASH)) && (!sourceDir.endsWith(SLASH)) && (sourceDir != "")) { if (uiM.groupBox_remote -> isChecked() && uiM.radioButton_remoteSource -> isChecked()) sourceDir.append(XnixSLASH); else sourceDir.append(SLASH); } if ( (!destDir.endsWith(XnixSLASH)) &&(!destDir.endsWith(SLASH)) && (destDir != "")) { if (uiM.groupBox_remote -> isChecked() && uiM.radioButton_remoteDestination -> isChecked()) destDir.append(XnixSLASH); else destDir.append(SLASH); } } //Directory by name - trailing slash only at dest path not source if ((uiM.comboBox_Type -> currentIndex()==0) && (!uiM.checkBox_backupContents -> isChecked())) { if (notXnixRunning) //OS2 & win { if ( (sourceDir.endsWith(SLASH)) && (!sourceDir.endsWith(":"+SLASH)) ) sourceDir.chop(1); if ( (!destDir.endsWith(XnixSLASH)) && (!destDir.endsWith(SLASH)) && (destDir != "") ) { if (uiM.groupBox_remote -> isChecked() && uiM.radioButton_remoteDestination -> isChecked()) destDir.append(XnixSLASH); else destDir.append(SLASH); } } else //linux-unix { if ( (sourceDir.endsWith(SLASH)) && (sourceDir != SLASH) ) sourceDir.chop(1); if ( (!destDir.endsWith(SLASH)) && (destDir != "") ) destDir.append(SLASH); } } if (uiM.comboBox_Type -> currentIndex()==1) //sync Directories - both paths have to have a trailing slash { if ((!sourceDir.endsWith(XnixSLASH)) && (!sourceDir.endsWith(SLASH)) && (sourceDir != "")) { if (uiM.groupBox_remote -> isChecked() && uiM.radioButton_remoteSource -> isChecked()) sourceDir.append(XnixSLASH); else sourceDir.append(SLASH); } if ( (!destDir.endsWith(XnixSLASH)) &&(!destDir.endsWith(SLASH)) && (destDir != "")) { if (uiM.groupBox_remote -> isChecked() && uiM.radioButton_remoteDestination -> isChecked()) destDir.append(XnixSLASH); else destDir.append(SLASH); } uiM.checkBox_deleteAfter -> setChecked (false); uiM.checkBox_update -> setChecked (true); uiM.checkBox_ownership -> setChecked (true); uiM.checkBox_permissions -> setChecked (true); } /*if (WINrunning) // some more adjustments for windows when the user wants to declare directly paths with "/" instead of "\" (normally for remote) { if (sourceDir.contains("/")) sourceDir.replace(SLASH,"/"); if (sourceDir.endsWith("//")) sourceDir.chop(1); if (destDir.contains("/")) destDir.replace(SLASH,"/"); if (destDir.endsWith("//")) destDir.chop(1); }*/ uiM.lineEdit_source -> setText(sourceDir); uiM.lineEdit_destination -> setText(destDir); } // modifyOS2Slashes =========================================================================================================== // function to change / to \ for OS2 (normaly when file dialog is used) QString modifyDialog::modifyOS2Slashes(QString pathToModify) { if ( (notXnixRunning) && !pathToModify.startsWith("/") ) pathToModify.replace("/",SLASH); return pathToModify; } // stripInvalidCharacters ============================================================================================================================= // Replaces all invalid filename characters from a QString with "-" QString modifyDialog::stripInvalidCharacters(QString stringToStrip) { QString stripedString = stringToStrip; QStringList invalidChars; invalidChars << "/" << "\\" << ":" << "*" << "?" << "\"" << "<" << ">" << "|"; foreach (QString charToRemove, invalidChars) stripedString.replace(charToRemove, "", Qt::CaseSensitive); return stripedString; } // end of modifyDialog.cpp --------------------------------------------------------------------------- luckybackup-0.5.0/src/commandline.h0000666000175000017500000000503612720353052016632 0ustar luckybluckyb/*-------------------------commandline.h------------------------------------------ header file for commandline.cpp =============================================================================================================================== =============================================================================================================================== This file is part of "luckyBackup" project Copyright, Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License luckyBackup 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. luckyBackup 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 luckyBackup. If not, see . project version : Please see "main.cpp" for project version developer : luckyb last modified : 22 May 2016 =============================================================================================================================== =============================================================================================================================== runs luckybackup in command line mode */ #ifndef COMMANDLINE_H #define COMMANDLINE_H #include using namespace std; #include //============================================================================================================== //Declaration of commandline class (this is the class that runs luckybackup in command line mode) class commandline { public: commandline (); ~commandline(); void rsyncIT(); //perform rsync execution void thats_all(); //display a "finished" message int result(); //executes all necessary function & returns an integer int count; //simple count variable !! QString CheckedData; //String holding the ok - notOK message after the backup dirs check private: char* profileNameArg; //holds the profile as given at the command line void intro(); //display an intro message int errorCount; // error counter for a specific task execution }; #endif // end of commandline.h--------------------------------------------------------- luckybackup-0.5.0/translations/0000777000175000017500000000000013165410113016115 5ustar luckybluckybluckybackup-0.5.0/translations/luckybackup_bg.ts0000666000175000017500000065440013165410113021463 0ustar luckybluckyb CalcDiffThread Scanning destination Сканиране на дестинацията Please wait Моля изчакайте Scanning snapshot Сканиране на снимка Scanning source Сканиране на източник Calculating differences Sync dir A & B differences Snapshot and source differences Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transferred over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty nothing to start You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting пускане Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting пускане execution of task Full phrase: execution of task: <TASKNAME> starting starting Full phrase: execution of task: <TASKNAME> starting пускане Source Full phrase: source: <SOURCE_NAME Източник Destination Full phrase: Destination: <DEST_NAME Дестинация execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting пускане Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Синхронизиране to Full phrase: Syncing <DIR-A> to <DIR-B> към execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting пускане Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Синхронизиране to Full phrase: Syncing <DIR-B> to <DIR-A> към pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished завършено post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished завършено execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished завършено execution of task Full phrase: execution of task: <TASKNAME> finished finished Full phrase: execution of task: <TASKNAME> finished завършено execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: команда: exit code: код за изход: output: излизане: Last execution time not available не е наличен no errors няма грешки errors found установи наличието на грешки status статус OK Добре Sync directory Source directory Using remote, check is skipped Destination directory Дестинация на дирекция free as in free disk space WARNING ПРЕДУПРЕЖДЕНИЕ I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory дирекция and/or и/или does not exist is not mounted не е монтирано is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL КРИТИЧНО is empty е празно I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description описание на задачата ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog Backup & Sync Application Loukas Avgeriou Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Атина,Гърция Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Patrick Matthaei Debian package maintainer Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Гръцки графичен потребителски интерфейс превод и ценен тестер The indifex team Екип indifex for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows портване на MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X портване на Mac OS X Elbert Pol Elbert Pol port to OS/2 портване на OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Чешки преводач на графичен потребителски интерфейс Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Преводач на гръцко ръководство German gui translator Германски графичен потребителски интерфейс превод Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Португалски графичен потребителски интерфейс превод Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Raffaele Italian gui translator Италиански графичен потребителски интерфейс превод using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Руски графичен потребителски интерфейс превод и ценен тестер Kenny Verstraete Kenny Verstraete Dutch gui translator Холандски графичен потребителски интерфейс превод Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Босненски графичен потребителски интерфейс превод и отговорник за пакетиране на mandriva Majed Sahli Majed Sahli Arabic gui translator Арабски графичен потребителски интерфейс превод Adrian Murariu Adrian Murariu Romanian gui translator Румънски графичен потребителски интерфейс преводач Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer версия 0.3 графичен потребителски интерфейс дизайнер fri13 fri13 v.0.3 gui designer версия 0.3 графичен потребителски интерфейс дизайнер Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Ако не беше Dimitris и неговите уроци,никога не бил създал този проект Thomas Glatt French gui translator Френски графичен потребителски интерфейс превод Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Испански графичен потребителски интерфейс превод Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Шведски графичен потребителски интерфейс превод Catalan gui translator Каталонски графичен потребителски интерфейс превод Slovak gui translator Словенски графичен потребителски интерфейс превод Rivo Zangov Rivo Zangov Estonian gui translator Естонски графичен потребителски интерфейс превод Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) special guest bug killer ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist ценен тестер и специалист по brainstorming Yuri Vidal Yuri Vidal backupwhenidle python script developer Развитие на програмата за python Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...на всичките потребители на forums for their support. подкрепа от форуми Especially Специално that contributed to this project one way or another който допринесоха за този проект по един или друг начин Last but no least И накрая, но не на последно място Could not locate the license file Не можах да намеря лицензирания файл no money без пари If you like this app and would like to donate something to me personally, all you have to do is: Ако ви харесва това приложение и бихте искали да дарите нещо лично за мен,всичко което трябва да направите е следното: Give a thumbs up at: Гласувайте положително на: Vote good & become a fan at: Гласувайте положително и станете фен на: This is my reward :) Това е моята награда :) money Пари I personally never had and never will accept money for this project. Лично никога не съм получавал пари Nevertheless, I decided to use luckyBackup to support people that really need financial help. Въпреки това, реших да използвам luckyBackup за да подкрепя хората,който имат наистина нужда от финансова помощ. So, please consider it seriously to donate money that will eventually be used for a good cause. Така че моля помислете сериозно за да дарите пари,които в крайна сметка,ще бъдат използвани за добра кауза. donation link връзка към дарение luckyBackup - about luckyBackup - относно close Затваряне &About &Относно <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support Поддръжка A&uthor &Thanks to Благодаря на &License Agreement Лиценз luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Словенски преводач на графичен потребителски интерфейс E. Hakan Duran E. Hakan Duran Turkish gui translator Турски преводач на графичен потребителски интерфейс Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email luckyBackup- електрона поща Email a report after profile execution command: команда: Use default This means "use the default value for this field" Използвайте по подразбиране Arguments Аргументи %f from: %f от: Enter the sender of the message %l logfile %l log файл %c logfile.tar.gz %c logfile.tar.gz %d date %d дата %i time %i час %p profile name %p име на профил %e No of errors %e Брой на грешки If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t към: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Проверка Accept changes and close dialog Okay Добре Close dialog Затваряне на диалога Cancel Отказ Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Никога не изпращай имейл Never Никога The command field is empty helpBrowser luckyBackup - help luckyBackup - Помощ manual/ manual/ Okay Добре logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error предишна грешка next error следваща грешка close затваряне loading logfile... зареждане на log файла wait изчакайте luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label списък със задачи List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' свърши simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort Прекъсване &Minimize to tray tray menu action &Минимизиране в tray &Restore tray menu action &Възстановяване execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Неизвестна грешка Elapsed time Изминало време pre-task execution of command post-task execution of command Now performing task Directory Каталог calculating deleting files Total files transferred trying to send an email The system will shutdown in 1 minute Source Източник Destination Дестинация All tasks completed No errors found errors found установи наличието на грешки logfile(s) have been created under directory: Done execution of profile: finished Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' &Относно current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label добавяне add task add task button tooltip remove remove task button label премахване remove highlighted task remove task button tooltip modify modify task button label изменяване modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' Изход EXIT EXIT button label ИЗХОД minimize to tray minimizes the window to the tray area F1 F1 English Английски &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR ГРЕШКА loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y версия: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' профил loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES ДА NO НЕ Description saving default profile ... Information window message saving profile ... Information window message запазване на профил ... WARNING ВНИМАНИЕ default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' профил profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' профил saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message създаване на профил ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' профил created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' Добре дошли в English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Английски Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' Профил already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' профил renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Профил deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' Профил set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Профил imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' към Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Профил exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status статус NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup luckyBackup Ctrl+S Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process Неизвестна грешка calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &Изтриване &New This is a top 'Profile' menu action &Нов &Save This is a top 'Profile' menu action &Запазване E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action &Изход D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Заключване Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label изключване Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end профил The task list is empty Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Профил is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Профил could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. профил Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Профил duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile профил task Delete Изтриване Restore view log destination: source: hide source Close this window Затвори този прозорец Close Затвори Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time не е наличен luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time не е наличен Delete backup this is the title of a wizard Изтрий backup Date & time simple label of the wizard gui Дата & час Path ...is a directory path WARNING ВНИМАНИЕ You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Възстанови backup Backup path ...is the backup directory path close Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors няма грешки errors found установи наличието на грешки Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error предишна грешка Jump to next error next error следваща грешка This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start старт ABORT cancel отмяна The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Дестинация Source Източник Task properties Enter a name for this task (eg "Backup my home directory") Name : Име : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay Добре Cancel Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files Backup файлове System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Кошче Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add добавяне Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Task description описание на задачата Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove премахване Edit highlighted inclusion edit редактиране Move highlighted inclusion up move up премести нагоре Move highlighted inclusion down move down премести надолу Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Потребител: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel отмяна cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally локално разглеждане additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay Добре Cancel Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Трябва да премахнете даден елемент, ако желаете да добавите друг Add profile schedule Добавяне на профил програма Modify profile schedule Промяна на профил програма Profile schedule details Детайли на профил програма Invalid profile Невалиден профил Execute profile Извършване на профил hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at в every всеки day ден Sunday Неделя Monday Понеделник Tuesday Вторник Wednesday Сряда Thursday Четвъртък Friday Петък Saturday Събота & on the на st as in 1st day ти nd as in 2nd day ти rd as in 3rd day ти th as in 4th, 5th, 6th or 7th day ти th as in 8th day ти th as in 9th day ти th as in 10th day ти th as in 11th day ти th as in 12th....19th day ти th as in 20th day ти st as in 21st day ти nd as in 22nd day ти rd as in 23rd day ти th as in 24th...30th day и st as in 31st day ти of any month всеки месец of ot January full phrase: 'of January' Януари February full phrase: 'of February' Февруари March full phrase: 'of March' Март April full phrase: 'of April' Април May full phrase: 'of May' Май June full phrase: 'of June' Юни July full phrase: 'of July' Юли August full phrase: 'of August' Август September full phrase: 'of September' Септември October full phrase: 'of October' Октомври November full phrase: 'of November' Ноември December full phrase: 'of December' Декември Unable to create cron file Беше невъзможно създаване на cron файл luckyBackup - schedule luckyBackup-програма <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">⏎ <html><head><meta name="qrichtext" content="1" /><style type="text/css">⏎ p, li { white-space: pre-wrap; }⏎ </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;">⏎ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Програмирано изпълнение на профил</span></p></body></html> Add a new profile schedule Добавяне на нов профил програма add добавяне Modify selected profile schedule Изменяване на избран профил от програма modify изменяване Remove selected profile schedule Премахване на избран профил от програма remove премахване Profile : Профил Skip tasks that apear with a 'CRITICAL' warning message after the directories check Препусни задачи,който имат предупредително съобщение "критично" след проверка на директории skip critical препуснете критичен time (hour:min) : време (час:минути) : set this value to -1 for the schedule to occur every hour : : :delay забавяне Delay luckybackup execution at startup Забавяне стартирането на luckybackup при стартиране на компютъра min means: minutes (time) минути day of week : ден от седмицата Any което и да е month : January Януари February Февруари March Март April Април May Май June Юни July Юли August Август September Септември October Октомври November Ноември December Декември day of month : ден от месеца 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 2 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Изберете това,ако вашата машина не поддържа графична среда (примерно сървър) Console Mode Конзолен режим okay Добре Cancel Отказ schedule the execution of profiles as declared in the list above графика на изпълнение на профили, както е заявено в горния списък cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Съществуващия програмиран файл не е валиден файл на luckyBackup версия. file BEWARE of the whitespace before file файл You have made changes without clicking the cronIT button Вие сте направили промени, без да щракнете върху бутона cronIT Are you sure you want to close the schedule dialog ? Сигурни ли сте,че искате да затворите диалога за програмиране? Your crontab is updated successfully crontab успешно актуализиран no crontab entries exist не съществуват съдържания на crontab crontab content съдържание на content once, at system startup full phrase: Execute profile xxxxx, once at system startup веднъж,при стартиране на системата Run once, at startup Пусни веднъж, при стартиране @ reboot рестартиране close this dialog Затваряне на това поле close Затваряне Display the current crontab Вижте текущия crontab view current crontab Вижте текущия crontab textDialog Enter the name of the new profile : Въведете ново име за този профил Enter the new name of the profile : Въведете ново име за този профил Profile description : Профил описание: A profile with the same name already exists Профил със същото име вече съществува Please enter a different name Моля въведете друго име Enter pasword : Въведете парола Enter passphrase : Въведете парола Do not show this again for this task Не показвай това отново за тази задача You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? Сигурен ли сте,че искате да продължите? luckyBackup luckyBackup Okay Добре Cancel Отказване Copy command to clipboard Копиране на командата в клипборда eMail information имейл информация No Не Yes Да winDialog luckyBackup luckyBackup declaration of paths декларация на пътеката rsync: rsync: Enter the full path of the rsync command browse locally локално разглеждане Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Добре Cancel Отказване Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_sv.qm0000666000175000017500000043731013157502317021522 0ustar luckybluckybI&HY KSRY]_uggghYjs1zf f,fTcvS7E`9Eg451N~GXaaaaʑaa=h.I@ݩ;EIص+IiH5qab0wT3"f"&%({YZ)*`3*0+++r,B/]^@:8ĉYh˱2pS?2ى>6K4lXt=;#q Grӷ :~ dUg*9[!bA(e'+&v.+6FP7<$GI|OWMQ19+QĎR[_/jfC1hhw OpNpNq>%/tcu(!\n-:JYEP65[ѐSiiAzuBԳȜŵ5  ,' _f%b\fK [#u#&o)+8/r28IsBZy$C cJIDPoE=YBBZH+\c-cf:TuK|BJ?O j2\Rb@xZIyRFgų,7R+3C/N-kBjP,<÷zI Y ԥ{*~NV `[% &E&S>}"IQv8GҐO3toA;^q p{ Av_R&&[ạ4)4)1*߬,b8MyQ:MT_rU}e~@h !jiJwiUKtMf}^ .e ^.e3gTW"c|@%5i%ut$d  MFdŇ4/ʵkz YQ0[cܯ"<)>]bT[~j.Cϗ]uƼ  ‰9 />cy5 vn P:sQ&ADȪSL~QOQOjz;eJiYz|i^lwrt+o}7!;:օESpIIEIIIlI0h,(PVp^AIфŖ .32He֟FAl EiKd3zijl  E4E8}=Rd\xl@+um6>5nnp^!txv[yo~i2CF9yrȕ.ȕGȕ[XJ`g:tî"@p{XRߘ3?W*Pv Y"B~" T.;KECRKOVf _Avce_hDb# f0g,hnhniikՒkՒ6sD"]v3yy|~gX:vb$a(Tu4YyuEަR_I4In`m 5VwyVS@5Ȓ,[7=b':ܴ3@Z   ٖ|u< `D읒XXd)`ɉ L X( |=]5Bd^ ;,+ea-zLl2 9Y>6EE]N3UtYvq`xea#*vuVv:`{h_gIer3Zڄ9VDF FFϕ|i>ΕgUUDu #rzdjgYG%B`ȕ14a9KXT%U7UYDnk~Eǧ/~*c-̐joIIE%׃Dgv[ߖgk8Y * 3@32* D;t"))@,#-$/e1c9G}F\ IX9~J{JεL6 NHPO4Ry utV)>gh CJm}!zG{@x5V2BXs(1ʴ5ʶ&'Z,M7;Bbfi `b) N  c  q.  - #ruf *{Q +) 6O: 8 CcK'6 Mg MgT! N# U  W̅ ] aY= d j^rE l lRcG mE' pH q R ] @ e w ͆ * a? -B>M Z' '0 Ԡ;V K ׊$ =0: . ); Ѿ! Ts0 5 ; c2z @    -0.z -n /l$ 7E 8b ? @ q `K f5 gB j lx pN%{ zj C  /  Hsq J iXb ~ c]Z XBd% L 24J bH ,@  $  GCl ñ& n 8X Xh$ h~ t$4_ ԑ_ @ ݓ0 T i 7 pnP " l v  Vd d j  S # (N-v +q9 - 0b* 7'yt 93Bh :UC# ; E Ge' HZ L9 PA% T, TU Zo7 _yr _ f| g.w" g.w g.w3 i i k mv {< { {d  O Fs Ҟ "   YW YG 3 >ӊ @el A. Acsc Eh&b F׾ F. LM N0 P} Sz X ^[ bU < o$/ o9) r'^e v_ F  n j/8 a ( r \%ʻ G "Y UNG v  ~  TU *Ck s' 6  % 2m a Rb`N 0@ ?BV)  ;s  skL @. T # y &, &'x )x *}E +! ,Dj ,D6O 6> P \.~6r c" i m\ {~ eà 1*  ~ q {V 7 i2B ms c lc Xw + f zn lz  I ? ; jy lfo Y q i [ "Ґ , ݗq # 䕜  c2z9  | W 8 8 8* . 6L=/ݟsR ?{CH$Եc'~(q*#=/#YE7rGJTba'\P].acRvqe~pmR~p{>Tyi,{DWrYTYC<]@{LRDxj$ rM#uWT֭ 3`M5̖kk{d4U"(=eX C]pE#!-&)NlG(դ-l(դ -X`B4? <EJE^G E<INRN> [=M^i[hcp4f/lnN0sKsu@u@~(NYgNh?`k4fCt4)*UcFyxdIv0vɟ)hʱNu+\!uL_֙SF:Gߖ4l?]i_e0.CYPXŕzi&Berknar skillnaderCalculating differencesCalcDiffThreadxStorleken p datan r enorm. Visar endast de frsta posterna2Data amount is huge. Displaying only first entriesCalcDiffThreadVnligen vnta Please waitCalcDiffThread4Sker igenom destinationenScanning destinationCalcDiffThread6Sker igenom gonblicksbildScanning snapshotCalcDiffThread&Sker igenom kllanScanning sourceCalcDiffThread^Skillnaderna mellan gonblicksbilden och kllanSnapshot and source differencesCalcDiffThread|Data i gonblicksbilden som ven finns i kllan skiljer sig t=Snapshot data that also exists at the source and is differentCalcDiffThreadfData i gonblicksbilden som INTE existerar i kllan-Snapshot data that do NOT exist at the sourceCalcDiffThreadfData i kllan som INTE existerar i gonblicksbilden-Source data that do NOT exist at the snapshotCalcDiffThreadlSkillnaderna mellan synkroniseringskatalogerna A och BSync dir A & B differencesCalcDiffThreadData i synkroniseringskatalogen A som INTE existerar i synkroniseringskatalogen B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadData i synkroniseringskatalog B som ven finns i synkroniseringskatalog A skiljer sig t?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadData i synkroniseringskatalogen B som INTE existerar i synkroniseringskatalogen A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadData i gonblicksbilden kommer att erstta klldata under TERSTLL=The snapshot data will replace the source data during RESTORECalcDiffThreadDessa kommer att raderas under TERSTLL endast om du aktiverar valet:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadradera existerande klldata som inte existerar i skerhetskopian;delete existing source data that do not exist at the backupCalcDiffThreadnSkerhetskopiera profil, loggfiler och gonblicksbilder.Backing-up profile, logfiles and snapshot dataQObjectKRITISKTCRITICALQObjectTKommando krs en gng till p grund av felCommand re-run due to failureQObject0Kan inte ppna loggfilenCould not open the logfileQObjectDestination DestinationQObject&DestinationskatalogDestination directoryQObjectKatalog DirectoryQObjectJag har inte behrighet att lsa/g in i synkroniseringskatalog A;I do not have the permission to read/enter sync directory AQObjectJag har inte behrighet att lsa/g in i synkroniseringskatalog B;I do not have the permission to read/enter sync directory BQObject|Jag har inte behrighet att lsa/g in i destinationskatalogenDI do not have the permission to read/enter the destination directoryQObjectlJag har inte behrighet att lsa/g in i kllkatalogen?I do not have the permission to read/enter the source directoryQObjectJag kommer <font color=orange><b>inte att hoppa ver</b></font> denna aktivitet. Synkroniseringen kommer att utfras i alla falliI will not skip this task. Synchronizing is going to be performed anywayQObjectJag kommer <font color=red><b>INTE</b></font> att hoppa ver denna aktivitet eftersom du har aktiverat "ignorera VARNINGAR" valetmI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject.Tid vid senaste krningLast execution timeQObjectOKOKQObjectVnligen <b> avmarkera lmpliga kryssrutor</b> innan du fortstterAPlease uncheck appropriate include boxes before proceedingQObjectVnligen avmarkera lmplig kryssruta eller ndra alla aktiviteternas typ till annat n '<b>Skerhetskopiera kataloginnehll</b>' eller anvnd 'Skerhetskopiera kataloginnehll' tillsammans med alternativet '<b>Inkludera endast</b>' innan du fortstterPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject KllaSourceQObjectKllkatalogSource directoryQObject,SynkroniseringskatalogSync directoryQObjectSynkroniserarSyncingQObjectSynkroniserar'Full phrase: Syncing to SyncingQObject*AktivitetsbeskrivningTask descriptionQObjectDestinationskatalogen kommer att skapas ifall den inte existerar och bli fylld med ny backupdata]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectjFljande inkluderade aktiviteter <b>delar samma destinationskatalog</b> (alla tillsammans eller som grupper) och minst en av dem kommer att skerhetskopiera innehllet av en katalogThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject6Loggfilen kunde inte skapas The logfile could not be createdQObject0Loggfilen existerar inteThe logfile does not existQObject<Processen rapporterade ett felThe process reported an errorQObjecttDet specificerade kommandot r troligtvis inte installerat/The specified command is probably not installedQObject.Aktivitetslistan r tomThe task list is emptyQObject~Denna aktivitet kommer <font color=orange><b>inte att ignoreras3This task will not be skippedQObjectDenna aktivitet kommer att <font color=red><b>ignoreras</b></font>7This task will be skippedQObjectTKr fjrranslutning, fel kontrolleras inteUsing remote, check is skippedQObjectVARNINGWARNINGQObjectjDu har inkluderat bda fljande anslutna aktiviteter:8You have included both of the following connected tasks:QObjectLDu har inte inkluderat ngon aktivitetYou have not included any tasksQObjectoch/ellerand/orQObjectkommando:  command: QObjectexisterar intedoes not existQObjectfel hittade errors foundQObjectRKrning av frsta delen utav aktiviteten execution of 1st part of taskQObjectRKrning av frsta delen utav aktiviteten ?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectPKrning av andra delen utav aktiviteten execution of 2nd part of taskQObject(Krning av aktivitetexecution of taskQObject(Krning av aktivitet3Full phrase: execution of task: finishedexecution of taskQObject(Krning av aktivitetdFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectReturkod:  exit code: QObjectavslutadfinishedQObjectavslutad?Full phrase: execution of 1st part of task: finishedfinishedQObjectavslutad3Full phrase: execution of task: finishedfinishedQObjectavslutadCFull phrase: post-task execution of COMMAND: finishedfinishedQObjecthavslutad p grund av fel i fr- eller efterkrningen9finished because of pre/post task command execution errorQObject ledigtfreeQObject r tomis emptyQObject6r tom eller existerar inteis empty or does not existQObject r inte monteradis not mountedQObjectinga fel no errorsQObject"r ej tillgnglig not availableQObject(ingenting att startanothing to startQObjectutdata:  output: QObject2Efterkrning av kommandotpost-task execution of commandQObject2Efterkrning av kommandotCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject.Frkrning av kommandotpre-task execution of commandQObject.Frkrning av kommandotBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectstartarstartingQObjectstartar?Full phrase: execution of 1st part of task: startingstartingQObjectstartar?Full phrase: execution of 2nd part of task: startingstartingQObjectstartar3Full phrase: execution of task: startingstartingQObjectstartar?Full phrase: post-task execution of command: startingstartingQObject statusstatusQObjectPdetta r inte tilltet av uppenbara skl'this is not allowed for obvious reasonsQObjectdetta kommer att led till en aktivitet kommer att ta ut en annan.this will lead to one task canceling the otherQObjecttilltoQObjecttill'Full phrase: Syncing to toQObject0Kan inte ppna loggfilenCould not open the logfile ReadLogFile&Om&About aboutDialog&Licensavtal&License Agreement aboutDialog &Hjlp&Support aboutDialog&Tack till &Thanks to aboutDialog...min andra hlft, <b>Dimitra</b> som str ut med mig hela tiden under projektets gngj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog2...till alla anvndare av...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog&FrfattareA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog.Arabisk GUI-versttareArabic gui translator aboutDialogvOfficiell underhllare av Arch linux paketet/pkgbuild (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAten, GreklandAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogfSkerhetskopierings- och synkroniseringsapplikationBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogxBosnisk GUI-versttare och underhllare av Mandriva-paketet4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog2Bulgarisk GUI-versttareBulgarian gui translator aboutDialog2Katalansk GUI-versttareCatalan gui translator aboutDialogFKinesisk (Taiwansk) GUI-versttareChinese (Taiwan) gui translator aboutDialogKodbidrag fr fjrr- och vss-support relaterat till Windowsportning.DCode contributor for remote & vss support regarding the windows port aboutDialog8Kunde inte hitta licensfilen!Could not locate the license file aboutDialog0Tjeckisk GUI-versttareCzech gui translator aboutDialog<Underhllare av Debian-paketetDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog2Hollndsk GUI-versttareDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogSpeciellt Especially aboutDialog.Estnisk GUI-versttareEstonian gui translator aboutDialog\Underhllare av Fedora-paketet (official repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog>Underhllare av FreeBSD-paketetFree BSD package maintainer aboutDialog,Fransk GUI-versttareFrench gui translator aboutDialogFransk GUI-versttare och vrdefull paketeringsrdgivare (och inte bara)AFrench gui translator and valuable packing advisor (and not only) aboutDialog0Galicisk GUI-versttareGalician gui translator aboutDialog:Underhllare av Gentoo ebuildGentoo ebuild maintainer aboutDialog(Tysk GUI-versttareGerman gui translator aboutDialog&Ge en tumme-upp p:Give a thumbs up at: aboutDialogZGrekisk GUI-versttare och vrdefull testare(Greek gui translator and valuable tester aboutDialog4Grekiska manualversttareGreek manual translator aboutDialogPersonligen har jag aldrig och kommer aldrig att ta emot pengar till detta projekt.DI personally never had and never will accept money for this project. aboutDialogOm det inte var fr honom och hans handledningar s hade jag inte startat detta projektetJIf it wasn't him and his tutorials I would never have started this project aboutDialogOm du gillar denna applikation och vill sknka ngonting till mig personligen, s det nda du behver gra r att:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog~Det r <b>fri mjukvara</b>: du kan distribuera och/eller modifiera den under villkoren fr GNU General Public License vilken r utgiven av the Free Software Foundation, version 3 av Licensen.It 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, version 3 of the License. aboutDialogJDen r distribuerad med frhoppningen att vara anvndbar, men UTAN NGON GARANTI; ven utan underfrstdd garanti om SLJBARHET eller LMPLIGHET FR ETT VISST SYFTE.It 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. aboutDialog2Italiensk GUI-versttareItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog&Sist men inte minstLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogpUnderhllare av Mandriva-paketet (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogUnderhllare av Mepis-paketet (Community repo) och spansk GUI-versttareBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogEmellertid s har jag beslutat att anvnda luckyBackup fr att hjlpa mnniskor som verkligen behver hjlp.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog*Norsk GUI-versttareNorwegian gui translator aboutDialogUnderhllare av openSUSE-paketet (KDE4 Community repo) och vrdefull paketeringsrdgivareNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog6Portugisisk GUI-versttarePortuguese gui translator aboutDialogDUnderhllare av Puppy, PET och SFSPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog.Rumnsk GUI-versttareRomanian gui translator aboutDialogTRysk GUI-versttare och vrdefull testare*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogbSe 'Licensavtal'-fliken fr ytterligare detaljer.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog>Underhllare av Slackel-paketetSlackel package maintainer aboutDialog2Slovakisk GUI-versttareSlovak gui translator aboutDialog0Slovensk GUI-versttareSlovenian gui translator aboutDialogS vnligen gr en seris vervgning att donera pengar som s smningom kommer till god anvndning._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog,Spansk GUI-versttareSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog,Svensk GUI-versttareSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogIndifexteametThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog0Detta r min belning :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog.Turkisk GUI-versttareTurkish gui translator aboutDialog$Vrdeful rdgivareValuable advisor aboutDialog:Rsta bra och bli ett fan p:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogJbackupwhenidle pythonscriptutvecklare&backupwhenidle python script developer aboutDialog stngclose aboutDialogDonationslnk donation link aboutDialogRFre detta underhllare av Fedora-paketetex Fedora package maintainer aboutDialogfr att ha utvecklat den underbara lokaliseringsplatformen Transifex och tillhandahllit den gratisVfor developing the wonderful transifex localization platform and providing it for free aboutDialog0forumen fr deras hjlp.forums for their support. aboutDialog fri13fri13 aboutDialog luckyBackup - omluckyBackup - about aboutDialogluckyBackup r tillgnglig under villkoren fr <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog pengarmoney aboutDialoginga pengarno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog0Portning till MS Windowsport to MS Windows aboutDialog,Portning till Mac OS Xport to Mac OS X aboutDialog$Portning till OS/2 port to OS/2 aboutDialog~rpm-paketerare, vrdefull testare och fjrranslutningsrdgivareAnge mottagaren fr meddelandet"Enter the recipient of the message emailDialog>Ange avsndaren fr meddelandetEnter the sender of the message emailDialogZAnge SMTP-servern fr sndning av meddelandet.Enter the smtp server used to send the message emailDialog4Ange mnet fr meddelandet Enter the subject of the message emailDialog Fel har uppstttError(s) occured emailDialog"TLS auto" anvnds om okryssad. Endast tillgnglig fr sendEmail =If unchecked "TLS auto" is used. Only available for sendemail emailDialog AldrigNever emailDialog(Skicka aldrig e-postNever send an email emailDialogOKOkay emailDialogNSnd bara nr fel uppkommer vid krning,Only send when error(s) occured during a run emailDialog`Snd bara nr profilen r schemalagd fr krning*Only send when profile is scheduled to run emailDialog(Profil r schemalagdProfile is scheduled emailDialogpSkicka e-post genast fr att testa de angivna argumenten6Send an email right now to test the provided arguments emailDialogHAnge villkoren fr att skicka e-post'Specify the conditions to send an email emailDialogTestTest emailDialog,Kommandofltet r tomtThe command field is empty emailDialogAnvnd standard Use default emailDialogargument: arguments: emailDialogKommando:command: emailDialog(luckyBackup - e-postluckyBackup - email emailDialogOKOkay helpBrowser&luckyBackup - hjlpluckyBackup - help helpBrowsermanual/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog stngclose logDialog"laddar loggfil...loading logfile... logDialog^luckyBackup - Frlopp av aktiviteternas krning&luckyBackup - tasks execution progress logDialogNsta fel next error logDialogFrra feletprevious error logDialog vntawait logDialog &%1 %2&%1 %2luckyBackupWindow&Avsluta&AbortluckyBackupWindow&Om&AboutluckyBackupWindow&Lgg till&AddluckyBackupWindow&Radera&DeleteluckyBackupWindow&&Handbok (engelska) &HandbookluckyBackupWindow &Hjlp&HelpluckyBackupWindow&Importera&ImportluckyBackupWindow &Sprk &LanguageluckyBackupWindow>&Minimera till aktivitetsfltet&Minimize to trayluckyBackupWindowR&edigera&ModifyluckyBackupWindow&Ny&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Avsluta&QuitluckyBackupWindow&Uppdatera&RefreshluckyBackupWindow&Radera&RemoveluckyBackupWindow&terstll&RestoreluckyBackupWindow &Spara&SaveluckyBackupWindow&Instllningar &SettingsluckyBackupWindow&Aktivitet&TaskluckyBackupWindow&AktivitetThis is a top menu action&TaskluckyBackupWindow&Verktygsrader &ToolbarsluckyBackupWindow4&Visa/redigera Beskrivning&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowAVBRUTENABORTEDluckyBackupWindow AvbrytAbortluckyBackupWindowAvbruten: Vnligen vnta tills alla processer har blivit avslutade4Aborting: Please wait for all processes to be killedluckyBackupWindow FunktionsknapparActionsluckyBackupWindowjAlla relevanta filer (loggar etc.) har ocks raderats4All relevant files (logs etc) have also been deletedluckyBackupWindowpAlla relevanta filer (loggar etc.) har ocks duplicerats7All relevant files (logs etc) have also been duplicatedluckyBackupWindowpAlla relevanta filer (loggar etc.) har ocks uppdaterats4All relevant files (logs etc) have also been updatedluckyBackupWindow,Alla aktiviteter klaraAll tasks completedluckyBackupWindowTr du sker p att du vill radera profilen'Are you sure you want to delete profileluckyBackupWindowdr du sker p att du vill radera standardprofilen3Are you sure you want to delete the default profileluckyBackupWindownr du sker p att du vill radera fljande aktivitet ??5Are you sure you want to remove the following task ??luckyBackupWindowVStarta krning av all markerade aktiviteter)Begin the execution of all included tasksluckyBackupWindowKyssrutaCheckBoxluckyBackupWindowKryssrutan r inte ifylld. Denna aktivitet kommer att <b>hoppas ver</b>5Checks are disabled. This task will be skippedluckyBackupWindow,Kunde inte hitta filenCould not locate the fileluckyBackupWindow~Kan inte uppdatera tiden fr senaste krningen av aktiviteterna-Could not update last execution time of tasksluckyBackupWindowKrashadeCrashedluckyBackupWindow2Skapa &kopia av aktivitetCreate D&uplicate taskluckyBackupWindow<Skapa &terstllningsaktivitetCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowAktuell profilCurrent ProfileluckyBackupWindow&Duplicera D&uplicateluckyBackupWindowStan&dardDe&faultluckyBackupWindowBeskrivning DescriptionluckyBackupWindowDestination DestinationluckyBackupWindowKatalog DirectoryluckyBackupWindow KlartDoneluckyBackupWindowSimuleringDryluckyBackupWindowE-&postE&mailluckyBackupWindow&ExporteraE&xportluckyBackupWindowFELERRORluckyBackupWindowAVSLUTAEXITluckyBackupWindowFrfluten tid Elapsed timeluckyBackupWindowE-postalternativen har blivit <font color=green>uppdaterade utan felBEmail preferences have been updated successfullyluckyBackupWindowFE-posta rapport efter profilkrning$Email report after profile executionluckyBackupWindowSvenskaEnglishluckyBackupWindowSvenskaDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowTFel uppkom under verfringen av loggfiler'Errors occured during logfiles transferluckyBackupWindow~Fel uppkom under verfringen av gonblicksbilder och loggfiler5Errors occured during snapshots and logfiles transferluckyBackupWindowbFel uppkom under verfringen av gonblicksbilder(Errors occured during snapshots transferluckyBackupWindowXFel uppkom under verfringen av profilfilen/Errors occured during the profile file transferluckyBackupWindow&Krning av profilenExecution of profileluckyBackupWindow$Krningen avslutadExecution of tasks finishedluckyBackupWindowKrningen av aktiviteterna blev brutalt avbruten utav anvndaren4Execution of tasks were terminated violently by userluckyBackupWindowAvslutaExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowTMisslyckades att skapa destinationskatalog&Failed to create destination directoryluckyBackupWindow>Misslyckades att skapa profilenFailed to create new profileluckyBackupWindowtMisslyckades att radera alla relevanta filer (loggar etc.).Failed to delete all relevant files (logs etc)luckyBackupWindow@Misslyckades att radera profilenFailed to delete profileluckyBackupWindowzMisslyckades att duplicera alla relevanta filer (loggar etc.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindowFMisslyckades att duplicera profilenFailed to duplicate profileluckyBackupWindowFMisslyckades att duplicera profilenFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindowFMisslyckades att exportera profilenFailed to export profileluckyBackupWindowFMisslyckades att importera profilenFailed to import profileluckyBackupWindowLMisslyckades att byta namn p profilenFailed to rename profileluckyBackupWindowBMisslyckades att erstta profilenFailed to replace profileluckyBackupWindow"Kunde inte startaFailed to startluckyBackupWindowzMisslyckades att uppdatera alla relevanta filer (loggar etc.).Failed to update all relevant files (logs etc)luckyBackupWindow2Dlj informationsfnstretHide information windowluckyBackupWindow2Dlj informationsfnstret+hide/show information window button tooltipHide information windowluckyBackupWindow Importera ProfilImport ProfileluckyBackupWindow&InformationsfnsterInformation windowluckyBackupWindow&Informationsfnsterinformation window titleInformation windowluckyBackupWindownTiden fr senaste krningen av aktiviteterna uppdaterad$Last execution time of tasks updatedluckyBackupWindowPLista ver alla tillgngliga aktiviteterList of all the available tasksluckyBackupWindow$Ls verktygsfltetLockluckyBackupWindow0&Hantera skerhetskopiorManage &BackupluckyBackupWindow"Hantera Aktivitet Manage TaskluckyBackupWindowZFlytta den markerade aktiviteten ner ett steg/Move the highlighted task down, by one positionluckyBackupWindowZFlytta den markerade aktiviteten upp ett steg-Move the highlighted task up, by one positionluckyBackupWindowNEJNOluckyBackupWindowINTE INKLUDERAD NOT INCLUDEDluckyBackupWindowOBSNOTEluckyBackupWindowInga felNo errors foundluckyBackupWindowKr aktivitetNow performing taskluckyBackupWindowVisa endast fel och viktiga meddelanden under fnsteruppdateringen could not be saved'ProfileluckyBackupWindowProfilenIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowProfilen9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowProfilenJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowProfilenGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowProfilenlfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowProfilen3full phrase: 'Profile set as default'ProfileluckyBackupWindow^Frloppsmtaren kommer inte att vara realistisk(Progressbar update will not be realisticluckyBackupWindow&ndra namnR&enameluckyBackupWindow Lsfel Read errorluckyBackupWindowZTog bort all data frn gamla gonblicksbilder Removed all older snapshots dataluckyBackupWindowTar bortRemovingluckyBackupWindow|Tar bort gamla gonblicksbilder och loggfiler fr aktiviteten +Removing old snapshots and logfiles of taskluckyBackupWindowKrRunluckyBackupWindowS&chema S&cheduleluckyBackupWindow$Vlj exportkatalogSelect export directoryluckyBackupWindow"Stt som StandardSet as DefaultluckyBackupWindowAnge skvgar Set pathsluckyBackupWindowTAnge skvgar fr rsync- och ssh-kommandon$Set paths for rsync and ssh commandsluckyBackupWindow2Visa informationsfnstretShow information windowluckyBackupWindow2Visa informationsfnstret+hide/show information window button tooltipShow information windowluckyBackupWindow0Visa text under ikonernaShow text under iconsluckyBackupWindow KllaSourceluckyBackupWindowHStoppa krningen av aktiviteterna NU'Stop the execution of running tasks NOWluckyBackupWindowHSkapade destinationskatalog utan fel)Successfuly created destination directoryluckyBackupWindowAktivitetTaskluckyBackupWindowAktivitetslista Task listluckyBackupWindow:Aktivitetslistan fr profilenTask list of profileluckyBackupWindow2Beskrivningen av profilenThe description of profileluckyBackupWindowvKatalogen som du har valt innehller inte giltig profildataCThe directory you have selected does not contain valid profile dataluckyBackupWindowdNamnet som du angav innehller icke-giltiga tecken:The name you have entered contains only invalid charactersluckyBackupWindowLSystemet kommer att stngas om 1 minut$The system will shutdown in 1 minuteluckyBackupWindow.Aktivitetslistan r tomThe task list is emptyluckyBackupWindow0Detta kommer att utfra en <b>simulering</b> som inte kommer att gra ngra ndringar (och som producerar nstan samma utskrifter som en riktig krning){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTimeout Timed outluckyBackupWindow.Kan inte ppna profilenUnable to open profileluckyBackupWindowOknt fel Unknown errorluckyBackupWindowOknt felthis refers to a process Unknown errorluckyBackupWindowhAnvnd "lgg till"-knappen till hger fr att starta0Use the "add" button on the right to get startedluckyBackupWindowzAnvnd 'inkluderakryssrutorna' fr att inkludera en aktivitet>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowBVisa/redigera profilbeskrivningen!View/Edit the profile descriptionluckyBackupWindowVARNINGWARNINGluckyBackupWindowVlkommen till Welcome toluckyBackupWindow(Vill du ven radera:Would you like to also remove:luckyBackupWindow<Vill du fortstta i alla fall?!Would you like to proceed anyway?luckyBackupWindow(Vill du erstta den?Would you like to replace it ?luckyBackupWindowXVill du spara spara den innan du fortstter?-Would you like to save it before proceeding ?luckyBackupWindowSkrivfel Write errorluckyBackupWindowJAYESluckyBackupWindowjDu har valt att en TERSTLLNINGSAKTIVITET ska skapas/You have asked for a RESTORE task to be createdluckyBackupWindow~Du har endast inkluderat aktiviteter som kommer att hoppas ver9You have only included tasks that are going to be skippedluckyBackupWindow~Du har ntt den vre grnsen fr antalet aktiviteter som stdjs5You have reached the maximum limit of supported tasksluckyBackupWindowDu mste radera en aktivitet ifall du vill lgga till ytterligare en !!7You have to remove a task if you wish to add another !!luckyBackupWindowXen ny tom, med samma namn, kommer att skapas4a new blank one, with the same name, will be createdluckyBackupWindowlgg tilladdluckyBackupWindow&lgg till aktivitetadd taskluckyBackupWindowfinns redanalready existsluckyBackupWindow(och rullgardinsmenynand 'profile' drop-down listluckyBackupWindow:och lades till i profillistanand added at the profile listluckyBackupWindowRoch ndra det du vill innan du fortstter.and change anything you wish before proceedingluckyBackupWindowsomasluckyBackupWindowtillFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowberknar calculatingluckyBackupWindowberknar-info message displayed during ...calculations calculatingluckyBackupWindow$Kommandoutskriftercommands outputluckyBackupWindow"kunde inte skapascould not be createdluckyBackupWindow"kunde inte sparascould not be savedluckyBackupWindow"kunde inte sparasPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindowskapad utan felcreated successfullyluckyBackupWindow0skapar standardprofil...creating default profile ...luckyBackupWindow skapar profil...creating profile ...luckyBackupWindowjaktuell crontab <font color=green>uppdaterad utan fel6current crontab updated successfullyluckyBackupWindowaktuell profilcurrent profileluckyBackupWindowstandardprofildefault profileluckyBackupWindowstandardprofil^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowstandardprofilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow raderad utan feldeleted successfullyluckyBackupWindowtar bort filerdeleting filesluckyBackupWindowtar bort filer/info message displayed during ...file deletionsdeleting filesluckyBackupWindowvisa - terstll - radera existerande skerhetskopior av de markerade aktiviteterna ?display - restore - delete existing backups of highlighted taskluckyBackupWindow^visa information gllande den valda aktiviteten.display information regarding highlighted taskluckyBackupWindow8duplicerad utan problem tillduplicated successfully asluckyBackupWindowfel funna errors foundluckyBackupWindow(krning av profilen:execution of profile:luckyBackupWindow"krning av filen:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow*exporterades utan felexported successfully toluckyBackupWindow.misslyckades att raderafailed to removeluckyBackupWindowzmisslyckades att ta bort all data frn gamla gonblicksbilder)failed to remove all older snapshots dataluckyBackupWindowavslutadfinishedluckyBackupWindowavslutad:full phrase: 'Execution of profile finished'finishedluckyBackupWindow*importerades utan felimported successfullyluckyBackupWindowpgr...in progress...luckyBackupWindowinkluderaincludeluckyBackupWindowhar ndrats is modifiedluckyBackupWindow$r inte giltig fris not valid forluckyBackupWindow(hoppa till nsta feljump to next errorluckyBackupWindow,hoppa till frra feletjump to previous errorluckyBackupWindowinlst utan felloaded successfullyluckyBackupWindow0laddar standardprofil...loading default profile ...luckyBackupWindow"fel vid inlsningloading failedluckyBackupWindow laddar profil...loading profile ...luckyBackupWindowHloggfil(er) har skapats i katalogen:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow<minimera till aktivitetsfltetminimize to trayluckyBackupWindowPminimerar fnstret till aktivitetsfltet%minimizes the window to the tray arealuckyBackupWindowredigeramodifyluckyBackupWindow6redigera markerad aktivitetmodify highlighted taskluckyBackupWindow$ingenting att gra nothing to doluckyBackupWindow2Efterkrning av kommandotpost-task execution of commandluckyBackupWindow.Frkrning av kommandotpre-task execution of commandluckyBackupWindowprofilenprofileluckyBackupWindowprofilenVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowprofilenSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowprofilenUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowprofilenSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowprofilenMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowprofilen profile luckyBackupWindowtyst lge quiet modeluckyBackupWindowuppdaterade refreshedluckyBackupWindow raderaremoveluckyBackupWindow2radera markerad aktivitetremove highlighted taskluckyBackupWindow:har utan fel ndrat namn tillrenamed successfully toluckyBackupWindow:har utan fel ndrat namn tillWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowutskrifter frn rsync samt fr- och efteraktivitetskommandon visas hr9rsync and pre/post task commands output is displayed hereluckyBackupWindowsparad utan felsaved successfullyluckyBackupWindow0sparar standardprofil...saving default profile ...luckyBackupWindowspara profil...saving profile ...luckyBackupWindowschemalagd scheduledluckyBackupWindow,har satts som standardset as defaultluckyBackupWindowhar satts tillset toluckyBackupWindowStng nershutdownluckyBackupWindowsimuleringslgesimulation modeluckyBackupWindow statusstatusluckyBackupWindow(Administratr (root) super userluckyBackupWindow2Administratrslge (root)super user modeluckyBackupWindowtilltoluckyBackupWindowverfr filertransferring filesluckyBackupWindowverfr filer/info message displayed during ...file transferstransferring filesluckyBackupWindow,frsker skicka e-posttrying to send an emailluckyBackupWindowversion:version:luckyBackupWindow(Berkna skillnadernaCalculate differences manageDialog~Berkna skillnader mellan kllan och den valda gonblicksbildenFCalculate the differences between the source and the selected snapshot manageDialogHBerkningarna avbrutna av anvndarenCalculations terminated by user manageDialog StngClose manageDialog&Stng detta fnsterClose this window manageDialog RaderaDelete manageDialoghRadera den valda gonblicksbilderna och dess loggfil,Delete the selected snapshot and its logfile manageDialogJag har inte tillrckliga privilegier fr att lsa denna katalog;I do not have sufficient permissions to read this directory manageDialogVVnligen vlj en gonblicksbild frn listan&Please select a snapshot from the list manageDialogRVnligen vnta tills trden har avslutats*Please wait until the thread is terminated manageDialogterstllRestore manageDialogHterstll den valda gonblicksbildenRestore the selected snapshot manageDialog STOPPSTOP manageDialog.Stoppa berkningarna NUStop calculations NOW manageDialog8Denna katalog existerar inteThis directory does not exist manageDialog8Denna katalog existerar inteInformation messageThis directory does not exist manageDialogbVisa loggfilen fr den markerade gonblicksbilden)View the logfile of the selected snapshot manageDialogvVisa loggfilen fr den markerade synkroniseringsaktiviteten*View the logfile of the selected sync task manageDialogdestination: destination: manageDialogdlj klla hide source manageDialogPluckyBackup - hantera skerhetskopieringluckyBackup - manage backup manageDialog inte tillgnglig not available manageDialog profilprofile manageDialog klla:source: manageDialog0synkroniseringskatalog A sync dir A manageDialog0synkroniseringskatalog B sync dir B manageDialogaktivitettask manageDialogvisa loggview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizard AVBRYTABORT manageWizardAvbrutenAborted manageWizard4Skvg fr skerhetskopian Backup path manageWizardZBlddra lokalt fr en ny terstllningsskvg%Browse locally for a new restore path manageWizardKryssa i fr att klona gonblicksbilden till terstllningskatalogen.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum och tid Date & time manageWizard*Radera skerhetskopia Delete backup manageWizardpRadera existerande data som inte finns i skerhetskopian4Delete existing data that do not exist at the backup manageWizardRaderar data Deleting data manageWizardtTar bort filer listade som skillnader hos gonblicksbilden)Deleting file that lists snapshot changes manageWizardJRadera loggfilen fr gonblicksbildenDeleting snapshot logfile manageWizardFiler frn den existerande skerhetskopian kommer att erstta motsvarande filer i terstllningskatalogenSExisting backup files will replace the corresponding files at the restore directory manageWizardAvslutadFinished manageWizardOm informationen ovan r korrekt, klicka <b>start</b> fr att starta@If the information above is correct, click start to begin manageWizardOm informationen ovan r korrekt, klicka <b>start</b> fr att starta`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard(Hoppa till nsta felJump to next error manageWizard,Hoppa till frra feletJump to previous error manageWizardIngen specifik data frn gonblicksbilden existerar. Hoppar ver...,No snapshot specific data exist. Skipping... manageWizard SkvgPath manageWizard2terstll skerhetskopianRestore backup manageWizard0Skvg fr terstllning Restore path manageWizard8terstller data: huvuddelenRestoring data: main trunk manageWizardVterstller data: filer frn gonblicksbildRestoring data: snapshot files manageWizard@Vlj en ny terstllningskatalogSelect new restore directory manageWizardterstllningskatalogen kommer att bli identisk som gonblicksbildenBThe restore directory will become identical to the backup snapshot manageWizard0Detta kommer att utfra en <b>simulering</b> som inte kommer att gra ngra ndringar (och som producerar nstan samma utskrifter som en riktig krning){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardJUppdaterar list ver gonblicksbilderUpdating list of snapshots manageWizardVARNINGWARNING manageWizardbDu r p vg att radera data frn skerhetskopian#You are about to delete backup data manageWizard tergcancel manageWizard ndrachange manageWizard stngclose manageWizardfel hittade errors found manageWizardmisslyckatfailed manageWizardmisslyckat-info message displayed after ...file deletionfailed manageWizardPluckyBackup - hantera skerhetskopieringluckyBackup - manage backup manageWizardnsta fel next error manageWizardinga fel no errors manageWizard"r ej tillgnglig not available manageWizardfrra feletprevious error manageWizardsimulering simulation manageWizard startastart manageWizard lyckatsuccess manageWizard lyckat-info message displayed after ...file deletionsuccess manageWizard lyckat5info message displayed after ...snapshots list updatesuccess manageWizardl'Fjrrvrd' r ikryssad, men inget vrdnamn r angivet='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Glm inte</b> att definiera en katalog vid 'exkluderagruppboxen' som kommer att innehlla kllanfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Vrd:@Host: modifyDialogLgg till valfri katalog, fil eller mnster som ska exkluderas i denna aktivitet@Add any directory, file or pattern to be excluded from this task modifyDialogLgg till valfri katalog, fil eller mnster som ska inkluderas i denna aktivitet>Add any directory, file or pattern to be included by this task modifyDialoghLgg till kommandot som angetts i textfltet bredvid*Add command as entered in the field beside modifyDialogjLgg till det som anges i nsta flt som uteslutning *Add exclusion as entered in the next field modifyDialognLgg till det som anges i nsta flt som en inkludering*Add inclusion as entered in the next field modifyDialogLgg till eller radera rsync-alternativ. Om du inte frstr innebrden av dessa s lt dem vara orrda !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogvLgg till rsync-alternativ som angetts i textfltet bredvid-Add rsync option as entered in the next field modifyDialogAvanceratAdvanced modifyDialog EfterAfter modifyDialogAlla flten i fnstret fr aktivitetsalternativen verkar vara OK?All declared fields of the task properties window seem to be ok modifyDialogKr ocks Also Execute modifyDialogHFrsk med superanvndareaktiviteterAttempt super-user activities modifyDialogNSkerhetskopiera kllan i destinationen Backup Source inside Destination modifyDialogSkerhetskopior Backup files modifyDialog8Skerhetskopiera ppna filerBackup open files modifyDialogFreBefore modifyDialogCache-mappar Cache folders modifyDialog AvbrytCancel modifyDialog:Kontrollera att du anvnder en FAT/NTFS-partition som destination. gandeskap av filerna och filrttigheterna kommer INTE att bevaras. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogKryssa i denna fr att klona klla till destination Lmna okryssad fr att skapa en extra katalog inuti destinationeniCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogbKryssa i fr att ansluta till en rsync Fjrrmodul/Check this to connect to an rsync Remote module modifyDialog$KommandoalternativCommand Options modifyDialogKommandolista Command list modifyDialogKopiera device- (endast administratr) och specialfiler som de r (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogTKopiera mjuka lnkar som mjuka lnkar (-l)Copy symlinks as symlinks (-l) modifyDialogDefiniera aktivitetens typ: 1. Skerhetskopiera kllkatalogen, inuti destinationskatalogen (se ven "Skapa INTE en extra katalog" rutan) 2. Synkronisera klla & destination, behll de senaste filerna p bde stllenaDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefiniera typen fr denna aktivitet: 1. Skerhetskopiera innehllet i Klla till Destination 2. Skerhetskopiera Kllkatalogen med avseende p namn till Destination 3. Synkronisera Klla och Destination, behll de senaste filerna i bdaDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog<Radera filer vid destinationenDelete files on the destination modifyDialogNRadera filer vid destinationen som inte existerar i kllan. "Recursivt i katalogerna" har blivit valt (--delete-after och --delete-excluded om "Exkludera" r ikryssad)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogBeskrivning Description modifyDialogDestination Destination modifyDialogDestination: Destination : modifyDialog@Destinationen r av FAT-NTFS-typDestination is FAT/NTFS modifyDialog6Skapa INTE en extra katalogDo NOT create extra directory modifyDialogSkerhetskopiera inte kllfiler ifall det finns nyare i destinationen (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogExkludera inte denna mnsterlista. Vnligen ls manualen fr bttre frstelse av inkluderingsreglerna.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog:Redigera markerad inkluderingEdit highlighted inclusion modifyDialogAnge ett namn fr denna aktivitet (t. ex. "Skerhetskopiera min hemmakatalog"):Enter a name for this task (eg "Backup my home directory") modifyDialogAnge ett kommando som ska kras efter aktiviteten och tryck sedan p "lgg till"-knappen fr att lgg till i listan nedannEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogAnge ett kommando som ska kras fre aktiviteten och tryck sedan p "lgg till"-knappen fr att lgg till i listan nedanoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogAnge ett rsync-alternativ hr (t. ex. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogZAnge hr filer, mappar eller mnster och tryck sedan p "lgg till"-knappen fr att lgga till den till exkluderingslistan * - matchar alla icke-tomma komponenter (det stoppar vid snedstreck) ** - matchar allting, inklusive snedstreck ? - matchar alla tecken frutom snedstreck efterfljande katalognamn/*** - matchar bde katalogen och allting inuti den inledning med / - mnstret r frankrat till en specifik plats i hierarkin vid verfringen (detta r normalt "kllan") efterfljande / - endast katalogen matchas, inte filer, mjuka lnkar eller devicesEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogZAnge hr filer, mappar eller mnster och tryck sedan p "lgg till"-knappen fr att lgga till den till inkluderingslistan * - matchar alla icke-tomma komponenter (det stoppar vid snedstreck) ** - matchar allting, inklusive snedstreck ? - matchar alla tecken frutom snedstreck efterfljande katalognamn/*** - matchar bde katalogen och allting inuti den inledning med / - mnstret r frankrat till en specifik plats i hierarkin vid verfringen (detta r normalt "kllan") efterfljande / - endast katalogen matchas, inte filer, mjuka lnkar eller devicesEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogAnge hela skvgen fr destinationskatalogen (t. ex. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogAnge hela skvgen till filen som innehller den privata autentisieringsnyckeln (lmna blankt ifall nyckel saknas). Observera att du behver att uppfylla alla krav fr en lsenordsfri fjrranslutning via ssh med ett OpenSSH-nyckelparEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogAnge hela skvgen till filen som innehller autentisieringslsenord fr rsync (ej ssh) (lmna blankt ifall lsenord saknas).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogvAnge hela skvgen fr kllkatalogen (t. ex. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog8Ange namnet fr fjrrvrden."Enter the name of the remote host. modifyDialogAnge portnumret som du vill anvnda fr ssh-anslutningen (lmna blankt fr standardporten)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogAnge ditt anvndarnamn fr fjrrvrden (lmna blankt ifall anvndarnamn saknas).HEnter your username for the remote host (leave blank if not applicable). modifyDialogFel har hittatsErrors have been found modifyDialogExkluderaExclude modifyDialoghExkludera alla "lost+found"-mappar (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogpExkludera alla skerhetskopior av filer och mappar (**~)(Exclude all backup files & folders (**~) modifyDialognExkludera alla cache-mappar (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogVExkludera alla temporra mappar (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogfExkludera alla anvndares gvfs-kataloger (**/.gvfs),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogExkludera alla anvndares alla skrpfiler (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogExkluderalista Exclude list modifyDialogExkludera systemmappar /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExkludera systemmonterade mappar :/mnt och /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogbKr extrakommandon, fre eller efter aktiviteten.1Execute extra commands, before or after the task. modifyDialogKr aktiviteten ven om den genererar ett VARNINGSMEDDELANDE Anvnds normallt d "Kr fre"-kommandon kan klara av en varning (t. ex.att montera partitioner) OBSERVERA: Anvnd endast om du vet vad du hller p medExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialogBLista ver extra rsync-alternativExtra rsync options list modifyDialog6Filer som r hrt lnkade tillsammans i kllan kommer att bli hrt lnkade i destinationen VARNING: Alla filer mste inkluderas i verfringslistan !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog$Ignorera CVS-filerIgnore files the CVS way modifyDialogpIgnorera filer som anvnder algoritmer liknande CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInkluderaInclude modifyDialogInkludera ENDAST denna lista med mnster. Ingenting annat. Vnligen referera till manualen fr bttre frstelse av reglerna fr inkludering Detta kommer att avaktivera exkluderingsfunktionen.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Inkluderingslista Include list modifyDialog Inkluderingslge Include mode modifyDialogLmna rutan ikryssad, fr att <b>STOPPA</b> krningen av en aktivitet om kommandot avslutas med ett felgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Lge:Mode: modifyDialog>Flytta ner markerad inkluderingMove highlighted inclusion down modifyDialog>Flytta upp markerad inkluderingMove highlighted inclusion up modifyDialog Namn:Name : modifyDialog"Inkludera normaltNormal Include modifyDialogOKOkay modifyDialog Inkludera endast Only Include modifyDialog`Annars avmarkera 'Fjrrvrd" fr att kra lokalt2Otherwise uncheck 'Remote Host' to operate locally modifyDialogfVnligen kryssa i relevant ruta innan du fortstter/Please check the relevant box before proceeding modifyDialogzVnligen definiera kllan innan du startar mnsterredigerarenBevara device- och specialfilerPreserve device, special files modifyDialog&Bevara hrda lnkarPreserve hard links modifyDialog&Bevara gare, tiderPreserve ownership, times modifyDialog*Bevara filrttigheterPreserve permissions modifyDialog4Bevara filrttigheter (-p)"Preserve permissions of files (-p) modifyDialog&Bevara mjuka lnkarPreserve symlinks modifyDialogBevara gare (endast administratr), grupp och tidsstmpling hos filerna (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialog@Ls uteslutningsmnster frn filRead exclude patterns from file modifyDialogLs fil: Read file: modifyDialog@Ls inkluderingsmnster frn filRead include patterns from file modifyDialog6Rekursivt genom katalogernaRecurse into directories modifyDialog@Rekursivt genom katalogerna (-r)Recurse into directories (-r) modifyDialogFjrranslutningRemote modifyDialogFjrrmodul Remote module modifyDialogHRadera markerat kommando frn listan$Remove highlighted command from list modifyDialogNRadera markerad uteslutning frn listan&Remove highlighted exclusion from list modifyDialogNRadera markerad inkludering frn listan&Remove highlighted inclusion from list modifyDialogLRadera markerat alternativ frn listan#Remove highlighted option from list modifyDialogfRepetera valfritt kommando som misslyckas, x gnger&Repeat any command that fails, x times modifyDialog"Repetera vid fel:Repeat on fail: modifyDialog*terstll rttigheterRestore permissions modifyDialog8Vlj kommandon som ska krasSelect command to be executed modifyDialog0Vlj destinationskatalogSelect destination directory modifyDialogJVlj fil att lsa uteslutningsmnster$Select file to read exclude patterns modifyDialogJVlj fil att lsa inkluderingsmnster$Select file to read include patterns modifyDialog6Vlj lsenordsfil fr rsyncSelect rsync password file modifyDialog Vlj kllkatalogSelect source directory modifyDialog,Vlj nyckelfil fr sshSelect ssh keyfile modifyDialognAnge det totala antalet gonblicksbilder som ska sparas0Set the total number of backup snapshots to keep modifyDialoglVisar rsync-kommandon s som de kommer att bli utfrda.Shows the rsync command as it will be executed modifyDialogDHoppa ver nyare destinationsfilerSkip newer destination files modifyDialog6gonblicksbilder att spara:Snapshots to keep: modifyDialog KllaSource modifyDialog Klla:Source : modifyDialogDSynkronisera klla och destination"Synchronize Source and Destination modifyDialogSystemmapparSystem folders modifyDialog,Systemmonterade mapparSystem mount folders modifyDialog*AktivitetsbeskrivningTask description modifyDialogAktivitetsnamn Task name modifyDialog(AktivitetsegenskaperTask properties modifyDialog Mallar Templates modifyDialog Temporra mapparTemporary folders modifyDialogvDet r inte tilltet eftersom '/' inte har ett riktigt namnkommando som kommer att utfrascommand to be executed modifyDialogDestination destination modifyDialog klartdone modifyDialogEditering klar done editing modifyDialogredigeraedit modifyDialogLtill exempel -C4c arcfour,blowfish-cbceg -C4c arcfour,blowfish-cbc modifyDialogfilnamnfilename modifyDialog0ppna mnsterredigerarenlaunch the pattern editor modifyDialoglost+found lost+found modifyDialogflytta ner move down modifyDialogflytta uppmove up modifyDialogAlternativlista options list modifyDialoglsenord: password: modifyDialog port :port : modifyDialog$privat nyckelpar :private key file : modifyDialog raderaremove modifyDialog.Lsenordsfil fr rsync:rsync password file: modifyDialog enkeltsimple modifyDialog Kllasource modifyDialogsshssh modifyDialogtanvnd rutorna fr att <b>STOPPA</b> krningen vid ett fel0use boxes to STOP task execution on error modifyDialogvalideravalidate modifyDialogutan att har kryssat i 'Rekursivt genom katalogerna' vilket krvsCwithout having checked 'Recurse into directories' which is required modifyDialog AvbrytCancel patternEditorRKryssa i fr att anvnda katalogen ovan som en absolut skvg om den ej r ikryssad s kommer mnstret att matcha alla filer och kataloger som uppfyller kriteriet "namn"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefiniera hr namnkriteriet fr filerna/katalogerna som ska matchasEDefine here the name criteria for the files/directories to be matched patternEditorxDefiniera hr det som du vill att mnstret ska referera till8Define here, what would you like the pattern to refer to patternEditorKataloginnehllDirectory contents patternEditorAnge hr de tecken som finns ngonstans i namnet p filerna/katalogerna som mnstret refererar tillsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor$Ange hr de avslutande tecken i namnet p filerna/katalogerna som mnstret refererar till t. ex. fr att referera till all ".txt"-filer, ange .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorAnge hr namnet p filerna/katalogerna som mnstret refererar tillGEnter here the name of the files/directories that the pattern refers to patternEditorAnge hr de inledande tecken i namnet p filerna/katalogerna som mnstret refererar tillbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor>G djupare ner i skvgen med :Go deeper in path by : patternEditorRG djupare ner i skvgen med alla niverGo deeper in path by any level patternEditorOKOkay patternEditorHVnligen vlj en katalog frn kllan+Please choose a directory within the source patternEditor@Vnligen vlj en fil frn kllan&Please choose a file within the source patternEditortterstll fltet i mnsterredigeraren till standardvrdena5Reset the pattern editor fields to the default values patternEditorVlj katalogSelect directory patternEditorVlj fil Select file patternEditorMngd katalogerSet of directories patternEditorMngd filer Set of files patternEditor Specifik katalogSpecific directory patternEditorSpecifik fil Specific file patternEditorDDet slutgiltiga mnstret visas hr$The actual pattern is displayed here patternEditor0Mnstret refererar till:The pattern refers to a: patternEditorAnvnd detta ifall mnstret refererar till en mngd kataloger som har ngonting gemensamt t. ex. alla kataloger har namnet "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorAnvnd detta ifall mnstret refererar till en mngd filer som har ngonting gemensamt t. ex. alla filer har en ".txt"-filndelsewUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorAnvnd detta ifall mnstret refererar till en specifik katalog t. ex. "/media/music/album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorAnvnd detta ifall mnstret refererar till en specifik fil t. ex. "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorNAnvnd detta ifall mnstret refererar till innehllet i en katalog (eller en mngd kataloger), inte katalogen sjlv t. ex. innehllet i katalogen "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorzAnvnd denna fr att referera till djupare underkataloger t.ex. Katalogen "/media/music" innehller 3 underkataloge. 1. Rock 2. Jazz 3. Ljudspr och du vill referera till innehllet av alla dessa 3, definiere fljande * Mngden av kataloger * Kataloginnehll * skvg /media/music/ * G djupare ner i skvgen med "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorallaany patternEditor>blddra lokalt efter en katalog"browse localy for a directory path patternEditor6blddra lokalt efter en filbrowse localy for a file patternEditorinnehller : contains : patternEditorkatalog : directory : patternEditorslutar med : ends with : patternEditor fil :file : patternEditor slutligt mnster final pattern patternEditorexakt : is exactly : patternEditornamnname patternEditor"Mnsterredigerarepattern editor patternEditorterstllreset patternEditorbrjar med : starts with : patternEditor*Anvnd absolut skvguse absolute path patternEditor-fil filescheduleDialogoch den& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:frdrjning:delayscheduleDialog0<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profilkrningsschema</span></p></body></html>

Profile execution scheduling

scheduleDialogvid omstart@ rebootscheduleDialog>Lgg till ett nytt profilschemaAdd a new profile schedulescheduleDialog,Lgg till schemaprofilAdd profile schedulescheduleDialogAllaAnyscheduleDialog AprilAprilscheduleDialog Aprilfull phrase: 'of April'AprilscheduleDialogdr du sker p att du vill stnga schemadialogen ?4Are you sure you want to close the schedule dialog ?scheduleDialogAugustiAugustscheduleDialogAugustifull phrase: 'of August'AugustscheduleDialog AvbrytCancelscheduleDialogKryssa i ifall din maskin inte har ngot grafiskt grnssnitt (t. ex server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogKonsollge Console ModescheduleDialogDecemberDecemberscheduleDialogDecemberfull phrase: 'of December'DecemberscheduleDialogXFrdrj krningen av luckybackup vi uppstart&Delay luckybackup execution at startupscheduleDialog(Visa aktuell crontabDisplay the current crontabscheduleDialogKr profilenExecute profilescheduleDialogFebruariFebruaryscheduleDialogFebruarifull phrase: 'of February'FebruaryscheduleDialog FredagFridayscheduleDialogOgiltig profilInvalid profilescheduleDialogJanuariJanuaryscheduleDialogJanuarifull phrase: 'of January'JanuaryscheduleDialogJuliJulyscheduleDialogJulifull phrase: 'of July'JulyscheduleDialogJuniJunescheduleDialogJunifull phrase: 'of June'JunescheduleDialogMarsMarchscheduleDialogMarsfull phrase: 'of March'MarchscheduleDialogMajMayscheduleDialogMajfull phrase: 'of May'MayscheduleDialog*Redigera schemaprofilModify profile schedulescheduleDialog@Redigera det valda profilschemat Modify selected profile schedulescheduleDialog MndagMondayscheduleDialogHInga schemaaktiviteter r angivna !!No schedules are declared !!scheduleDialogNovemberNovemberscheduleDialogNovemberfull phrase: 'of November'NovemberscheduleDialogOktoberOctoberscheduleDialogOktoberfull phrase: 'of October'OctoberscheduleDialogProfil : Profile :scheduleDialog(ProfilschemadetaljerProfile schedule detailsscheduleDialog<Radera det valda profilschemat Remove selected profile schedulescheduleDialog2Kr en gng, vid uppstartRun once, at startupscheduleDialog LrdagSaturdayscheduleDialogSeptember SeptemberscheduleDialogSeptemberfull phrase: 'of September' SeptemberscheduleDialogHoppa ver aktiviteter som visar ett KRITISKT varningsmeddelande efter kollen av katalogernaSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog*Brjar om frn brjanStarting from scratchscheduleDialog SndagSundayscheduleDialogxDen existerande schemafilen r inte en giltig luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogTorsdagThursdayscheduleDialog TisdagTuesdayscheduleDialog.Kan inte skapa cron-filUnable to create cron filescheduleDialog0Kan inte skapa schemafilUnable to create schedule filescheduleDialog Onsdag WednesdayscheduleDialogpDu har gjort ndringar utan att klicka p cronIT-knappen8You have made changes without clicking the cronIT buttonscheduleDialogDu har ntt den vre grnsen fr antalet schemaprofiler som stdjsBYou have reached the maximum limit of supported scheduled profilesscheduleDialogDu mste radera en profil ifall du vill lgga till ytterligare en5You have to remove an item if you wish to add anotherscheduleDialogHDin crontab har uppdaterats utan fel$Your crontab is updated successfullyscheduleDialoglgg tilladdscheduleDialogvidatscheduleDialog stngclosescheduleDialog$stng denna dialogclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog crontab-innehllcrontab contentscheduleDialogdagdayscheduleDialogdag i mnad :day of month :scheduleDialogveckodag : day of week :scheduleDialog varjeeveryscheduleDialog*varje timme vid minuthourly at minute scheduleDialog(luckyBackup - schemaluckyBackup - schedulescheduleDialogminminscheduleDialogredigeramodifyscheduleDialogmnad :month :scheduleDialog:endscheduleDialog:eas in 22nd dayndscheduleDialog:inga crontab-poster existerarno crontab entries existscheduleDialogiofscheduleDialogvarje mnad of any monthscheduleDialogOKokayscheduleDialogBen gng, vid uppstart av systemetonce, at system startupscheduleDialog:erdscheduleDialog:eas in 23rd dayrdscheduleDialog raderaremovescheduleDialogfSchemalgg krningen av profilen enligt listan ovan@schedule the execution of profiles as declared in the list abovescheduleDialogstt detta vrde till -1 fr att kra schemalggningen varje timme9set this value to -1 for the schedule to occur every hourscheduleDialog$hoppa ver kritisk skip criticalscheduleDialog:estscheduleDialog:eas in 21st daystscheduleDialog:eas in 31st daystscheduleDialog:ethscheduleDialog:eas in 10th daythscheduleDialog:eas in 11th daythscheduleDialog:eas in 12th....19th daythscheduleDialog:eas in 20th daythscheduleDialog:eas in 24th...30th daythscheduleDialog:e as in 8th daythscheduleDialog:e as in 9th daythscheduleDialog&tid (timme:minut) :time (hour:min) :scheduleDialog(Visa aktuell crontabview current crontabscheduleDialogPEn profil med samma namn existerar redan+A profile with the same name already exists textDialogNr du sker p att du vill fortstta ??#Are you sure you wish to proceed ?? textDialogAKTA DIG, ifall din avsikt INTE r att klona kllan till destinationen !!BBEWARE, if your intention is NOT to clone source to destination !! textDialog AvbrytCancel textDialogDKopiera kommandot till klippbordetCopy command to clipboard textDialogPVisa inte detta igen fr denna aktivitet$Do not show this again for this task textDialog(Ange lsenordsfras :Enter passphrase : textDialogAnge lsenord :Enter pasword : textDialogBAnge namnet p den nya profilen :#Enter the name of the new profile : textDialogBAnge det nya namnet p profilen :#Enter the new name of the profile : textDialogNejNo textDialogOKOkay textDialog8Vnligen ange ett annat namnPlease enter a different name textDialog&Profilbeskrivning :Profile description : textDialogJaYes textDialogDu har valt att "Skerhetskopiera innehllet i kllkatalogen"<br>tillsammans med alternativet "Radera filer vid destinationen"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog"E-postinformationeMail information textDialogluckyBackup luckyBackup textDialog AvbrytCancel winDialoghAnge den fullstndiga skvgen fr cygpath-kommandot*Enter the full path of the cygpath command winDialogfAnge den fullstndiga skvgen fr dosdev-kommandot)Enter the full path of the dosdev command winDialogzAnge den fullstndiga skvgen till katalogen fr luckybackup0Enter the full path of the luckybackup directory winDialogdAnge den fullstndiga skvgen fr rsync-kommandot(Enter the full path of the rsync command winDialog`Ange den fullstndiga skvgen fr ssh-kommandot&Enter the full path of the ssh command winDialogtAnge den fullstndiga skvgen fr den temporra katalogen.Enter the full path of the temporary directory winDialoghAnge den fullstndiga skvgen fr vshadow-katalogen,Enter the full path of the vshadow directory winDialog*Krbara filer (*.exe)Executable Files (*.exe) winDialogOKOkay winDialog*Vlj cygpath-kommandoSelect cygpath command winDialog(Vlj dosdev-kommandoSelect dosdev command winDialog&Vlj rsync-kommandoSelect rsync command winDialog"Vlj ssh-kommandoSelect ssh command winDialog(Anvnd standardvrdeUse default value winDialogblddra lokaltbrowse locally winDialogcygpath:cygpath: winDialog*Angivelse av skvgardeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialoghuvudkatalog: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog"temporr katalog: temp dir: winDialog vshadow-katalog: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_nl.qm0000666000175000017500000044035213157502317021503 0ustar luckybluckybFHYKS^Y9]_gggFhYܛjs}zf fZfUvSYE9Eo4B5[N~EaaaKa̟aaOh/)@qEsص(H53acd w4Tq"f"m&%({Y)L*`3p*0+++t,B/]^>#:8ĉW|˱@KS?ى>8K4jXt*=Q&tcs>!]-:YEJ65cѐSgiAxu\Գŵ 4 ,'} _d5~bZ~K3 W#u+&o)+"/r28IBZyC cJIDPoE>PYB?ZHA\c+dc#f:UuI|BH O P2LR`bvZIRDg*67+S1CNkCPȝ,0÷{I pY ԥ{*|bV`[% &E&S? "IvGڍҐO3oA^? n Av]|'&YaΏ4)4)2>*߬ T,b8My:MT_rU{e0h !iJiU tM`}^.e 2.e1/ITXW*czt#<O5%st"d M&Ň4ʵl.g0[ܯ":)>b<[~hϗ]u  ‰7>ayػ l PsQg& >AXDȪL~RwOOOjz<3eJiYzz i^ylw]rt,W}7M;ێ:օE6I}IF<IIII8Z,N.r^AGф .0HeFaj CqiLd},ik   CC8{#="&\xl@)m6>6ennp^txivYyp~iFS9raȕȕȕoXJ`g:tt î">pXR ߘ?U(vb W"@V" V.7;KEC6KOKVf _Avam_hDb#f0/g-hnhn i6ikՒkՒ7;sD v3ٜya|~gYfvb"(Tw4YwuELR^I5AIn`5zVxHyS60Ȓ)7=n':h@Z  :|uv o`E읒VXb` L X&> |;o5B^;)+e-zJ$2 S9Yv>EEN3gUtYvQ`xea#*vuXv:2{_gIc|3ڄ9DF FF ^ϕ@i<ΕQUUTuх$r$djgyG%rBdȕ/7PakIWXT#U,UW Dni~E.ǧ0g~a5̐j#IIFu%s׃?vߖehk9]Y  3(32D @%;t"'*)@F,!l-"/e1d9G?F\ IX9JqJε"L4N0PO2uRy v4V)gzh Cm{%zG|f@x5T0d 40(#@ʴ5ʶT'X,7B`di ) N ߯ ci  q.  % #rsx *{ +)Z 6M 8< CcK$ Mg MgUC N#! U  W ] aY;( d j^p1 lJ lRc~q mE pFQ q^ R ] @ e u _ ͆b +R a@ -B<_ Z%1 '.= Ԡ;T [ ׊$ݣ =- . & Ѿ t Tq,  w c2x L   -0/T -nL /l$ 7E2 8 ? @ } ` f g j l pN% zjݶ C M ,  Ht- Hf iV^ ~ c[l XBb-  24 bE ,6    p GCj ñ. nN 8 Xh%y h t$21 ԑ @ ݓ C T i 7? pn " & v > Vd d~1 j $ S #` (N.v +q -t 0b 7'yu 93Bg :UC"$ ;i E Ge' HZ L9 PA T,p T Zm9 _yp _ fz g.w!1 g.w g.w4a i i9 k mw { { _ {  g Fg Ҟޠ "Z #  YY YE >ӊ @e A. Acsa Eh': F F. LM N0 P}> Szd X ^ bU  o%; o9) r'^ v DX  l j/ ` )a r \% Eh " UNHG t  ~ E  T *A5 s+ Ϝ ~ % 2k aV Rb^t 0 ?BT+ 8 ;t  siN @n T # &, &' )4 *}ET + ,D ,D6 6< P> \.~4 c i( mZ2 {| e 1  N ! { 8 i2@ msI c lu Xw )E f zl lz  I 3 j ld Y i  [ "Ԋ ,- ݗw # 䕜C  c2x3 B v U 8c 8 8l / 6J=-7asS=Cn4Ե:'~z(q*#;/#YAE7 @G_J Tba(Q\P].a>cRtse~qjmR|p{>R yi*{BrX TYD'<[>{RBy4 0$rJuUP֭ 3}rM̖k{d4*U"%eV C^\6#!.&)NjG(դ+(դ-X`4?U<EE^G E:InNcRN>8[=K^iYcn@f/lnKsasu@u@x~(NYeNɒk4fCt1)9*VyvTGJ1ovɟ)fʱNu+\u _֙SDGߖl=]g_0.Y %PYŕi *Verschillen berekenenCalculating differencesCalcDiffThreadlZeer veel data. Alleen de eerste regels worden getoond2Data amount is huge. Displaying only first entriesCalcDiffThreadEven geduld Please waitCalcDiffThread,Bestemmingsmap inlezenScanning destinationCalcDiffThread Snapshot inlezenScanning snapshotCalcDiffThreadBronmap inlezenScanning sourceCalcDiffThreadLVerschillen tussen shapshot en bronmapSnapshot and source differencesCalcDiffThreadSnapshot van data die ook voorkomen in de bronmap maar verschillen=Snapshot data that also exists at the source and is differentCalcDiffThreadZSnapshotdata die NIET voorkomen in de bronmap-Snapshot data that do NOT exist at the sourceCalcDiffThread\Bronmapdata die NIET voorkomen in het snapshot-Source data that do NOT exist at the snapshotCalcDiffThreadXVerschillen tussen map A en B synchroniserenSync dir A & B differencesCalcDiffThreadnSynchroniseer data in map A die NIET voorkomen in map B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSynchroniseer map B data die ook voorkomen in map A maar verschillen?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadnSynchroniseer data in map B die NIET voorkomen in map A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadxDe snapshotdata overschrijven de bronmapdata tijdens HERSTEL=The snapshot data will replace the source data during RESTORECalcDiffThreadDit wordt verwijderd tijdens HERSTEL, maar alleen met deze optie:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadpVerwijder bestaande data die niet voorkomen in de backup;delete existing source data that do not exist at the backupCalcDiffThread`Profiel van backup, logbestanden en snapshotdata.Backing-up profile, logfiles and snapshot dataQObjectKRITIEKCRITICALQObjectXOpdracht opnieuw uitgevoerd vanwege een foutCommand re-run due to failureQObject<Kon het logbestand niet openenCould not open the logfileQObjectBestemmingsmap DestinationQObjectBestemmingsmapDestination directoryQObjectMap DirectoryQObject\Ik heb geen permissie om map A te lezen/openen;I do not have the permission to read/enter sync directory AQObject\Ik heb geen permissie om map B te lezen/openen;I do not have the permission to read/enter sync directory BQObjecttIk heb geen permissie om de bestemmingsmap te lezen/openenDI do not have the permission to read/enter the destination directoryQObjectfIk heb geen permissie om de bronmap te lezen/openen?I do not have the permission to read/enter the source directoryQObjectIk zal deze taak <font color=red><b>NIET OVERSLAAN</b></font>. Synchronisatie wordt in ieder geval uitgevoerdiI will not skip this task. Synchronizing is going to be performed anywayQObjectIk zal deze taak <font color=red><b>NIET OVERSLAAN</b></font>, omdat je de optie 'negeer WAARSCHUWING' hebt ingeschakeldmI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject4Voor het laatst uitgevoerdLast execution timeQObjectOKOKQObject<b>Verwijder vinkjes bij</b> relevante insluitings-keuzevakjes voor je verdergaatAPlease uncheck appropriate include boxes before proceedingQObjectVerwijder vinkjes bij relevante insluitings-keuzevakjes OF verander alle taken in een ander soort dan '<b>Maak backup van mapinhoud</b>' OF gebruik 'Maak backup van mapinhoud' samen met de '<b>Uitsluitend insluiten</b>'-optie, voor je verdergaatPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObjectBronmapSourceQObjectBronmapSource directoryQObject"SynchronisatiemapSync directoryQObject8Bezig met synchroniseren vanSyncingQObject8Bezig met synchroniseren van'Full phrase: Syncing to SyncingQObject TaakbeschrijvingTask descriptionQObjectDe bestemmingsmap zal worden aangemaakt als die niet bestaat en worden gevuld met nieuwe backupdata]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject$Deze ingesloten taken <b>hebben dezelfde bestemmingsmap</b> (samen of als groep) en tenminste n ervan maakt een backup van de inhoud van een mapThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectRHet logbestand kon niet worden aangemaakt The logfile could not be createdQObject6Het logbestand bestaat nietThe logfile does not existQObject<Het proces gaf een foutmeldingThe process reported an errorQObjectlDe gegeven opdracht is waarschijnlijk niet beschikbaar/The specified command is probably not installedQObject*De takenlijst is leegThe task list is emptyQObjectnDeze taak wordt <font color=orange><b>niet overgeslagen3This task will not be skippedQObjecttDeze taak wordt <font color=red><b>overgeslagen</b></font>7This task will be skippedQObjectfBij synchroniseren op afstand geen gegevenscontroleUsing remote, check is skippedQObjectWAARSCHUWINGWARNINGQObjectdJe hebt beide volgende gekoppelde taken ingevoegd:8You have included both of the following connected tasks:QObject8Je hebt geen taken ingevoegdYou have not included any tasksQObject en/ofand/orQObjectopdracht command: QObjectbestaat nietdoes not existQObjectfouten gevonden errors foundQObject.eerste deel van de taakexecution of 1st part of taskQObject.eerste deel van de taak?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject.tweede deel van de taakexecution of 2nd part of taskQObjectde taakexecution of taskQObjectde taak3Full phrase: execution of task: finishedexecution of taskQObjectde taakdFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectfoutcode: exit code: QObjectis voltooidfinishedQObjectis voltooid?Full phrase: execution of 1st part of task: finishedfinishedQObjectis voltooid3Full phrase: execution of task: finishedfinishedQObjectis voltooidCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectis afgebroken vanwege een fout in een opdracht vooraf of achteraf9finished because of pre/post task command execution errorQObjectvrijfreeQObjectis leegis emptyQObject.is leeg of bestaat nietis empty or does not existQObject(is niet aangekoppeldis not mountedQObjectgeen fouten no errorsQObject niet beschikbaar not availableQObject&niets om te startennothing to startQObjectuitvoer: output: QObject"opdracht achterafpost-task execution of commandQObject"opdracht achterafCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectopdracht voorafpre-task execution of commandQObjectopdracht voorafBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObject wordt uitgevoerdstartingQObject wordt uitgevoerd?Full phrase: execution of 1st part of task: startingstartingQObject wordt uitgevoerd?Full phrase: execution of 2nd part of task: startingstartingQObject wordt uitgevoerd3Full phrase: execution of task: startingstartingQObject wordt uitgevoerd?Full phrase: post-task execution of command: startingstartingQObject statusstatusQObjectnom voor de hand liggende redenen is dit niet toegestaan'this is not allowed for obvious reasonsQObject`dit laat een taak annuleren door een andere taak.this will lead to one task canceling the otherQObjectmettoQObjectmet'Full phrase: Syncing to toQObject<Kon het logbestand niet openenCould not open the logfile ReadLogFile &Over&About aboutDialog*&Licentieovereenkomst&License Agreement aboutDialogO&ndersteuning&Support aboutDialog&Met dank aan &Thanks to aboutDialog...mijn betere helft, <b>Dimitra</b> die het met mij heeft volgehouden al die tijd dat dit project al duurt.j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog:...aan alle gebruikers van de...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialogA&uteurA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog,Arabische GUI-vertalerArabic gui translator aboutDialogjArch Linux package/pkgbuild official maintainer (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog&Athene, GriekenlandAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogDBackup- en synchroniseertoepassingBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogjBosnische GUI-vertaler en Mandriva package maintainer4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog,Bulgaarse GUI-vertalerBulgarian gui translator aboutDialog.Catalaanse GUI-vertalerCatalan gui translator aboutDialog<Taiwanees-Chinese GUI-vertalerChinese (Taiwan) gui translator aboutDialogBijdrager van code voor remote & vss support vor de Windows-portDCode contributor for remote & vss support regarding the windows port aboutDialogHKon het licentiebestand niet vinden.!Could not locate the license file aboutDialog0Tsjechische GUI-vertalerCzech gui translator aboutDialog2Debian package maintainerDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog0Nederlandse GUI-vertalerDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialog In het bijzonder Especially aboutDialog*Estische GUI-vertalerEstonian gui translator aboutDialog`Fedora package maintainer (officieel repository))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog6Free BSD package maintainerFree BSD package maintainer aboutDialog&Franse GUI-vertalerFrench gui translator aboutDialogFranse GUI-vertaler en gewaardeerd package-adviseur (en niet alleen dat)AFrench gui translator and valuable packing advisor (and not only) aboutDialog.Galicische GUI-vertalerGalician gui translator aboutDialog0Gentoo ebuild maintainerGentoo ebuild maintainer aboutDialog&Duitse GUI-vertalerGerman gui translator aboutDialog0geef een 'thumbs up' op:Give a thumbs up at: aboutDialogTGriekse GUI-vertaler en gewaardeerd tester(Greek gui translator and valuable tester aboutDialogFVertaler van de Griekse handleidingGreek manual translator aboutDialogIk heb persoonlijk nooit geld geaccepteerd en zal nooit geld accepteren voor dit project.DI personally never had and never will accept money for this project. aboutDialogAls het niet door hem en zijn tutorials kwam, zou ik nooit aan dit project begonnen zijn.JIf it wasn't him and his tutorials I would never have started this project aboutDialogAls dit programma je bevalt en je mij graag persoonlijk iets zou willen geven, is alles wat je hoeft te doen dit:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogHet is <b>vrije software</b>: je kan het herdistributeren en/of wijzigen onder de voorwaarden van de GNU General Public License zoals gepubliceerd door de Free Software Foundation, versie 3 van de licentie.It 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, version 3 of the License. aboutDialogXHet is verspreid in de hoop dat het bruikbaar is, maar ZONDER ENIGE GARANTIE; zelfs zonder de impliciete garantie van VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL.It 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. aboutDialog.Italiaanse GUI-vertalerItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialogMarien GrashoffKenny Verstraete aboutDialog@Als laatste maar niet als minsteLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogtMandriva package maintainer (officieel Contrib-repository)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMepis package maintainer (Community-repository) & Spaanse GUI-vertalerBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogDesalniettemin heb ik besloten luckyBackup te gebruiken om mensen te ondersteunen die echt financile hulp nodig hebben.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog&Noorse GUI-vertalerNorwegian gui translator aboutDialogOpenSUSE package maintainer (KDE4 Community-repository) en gewaardeerd package-adviseurNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog,Portugese GUI-vertalerPortuguese gui translator aboutDialog4Puppy pet & SFS maintainerPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog,Roemeense GUI-vertalerRomanian gui translator aboutDialogXRussische GUI-vertaler en gewaardeerd tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialoghZie de tab 'Licentieovereenkomst' voor meer details.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog4Slackel package maintainerSlackel package maintainer aboutDialog,Slowaakse GUI-vertalerSlovak gui translator aboutDialog,Sloveense GUI-vertalerSlovenian gui translator aboutDialogOverweeg daarom eens serieus om geld te doneren dat uiteindelijk zal worden gebruikt voor een goed doel._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog(Spaanse GUI-vertalerSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog(Zweedse GUI-vertalerSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog Het indifex-teamThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog.Dat is mijn beloning :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog&Turkse GUI-vertalerTurkish gui translator aboutDialog(Gewaardeerd adviseurValuable advisor aboutDialog@stem 'goed' en wordt een fan op:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogPBackupWhenIdle Python-scriptontwikkelaar&backupwhenidle python script developer aboutDialogsluitenclose aboutDialogDonatielink donation link aboutDialog8ex-Fedora package maintainerex Fedora package maintainer aboutDialogvoor het ontwikkelen en vrij beschikbaar maken van het schitterende transifex lokalisatieplatform.Vfor developing the wonderful transifex localization platform and providing it for free aboutDialog<forums voor hun ondersteuning.forums for their support. aboutDialog fri13fri13 aboutDialog$luckyBackup - OverluckyBackup - about aboutDialog6luckyBackup wordt gedistribueerd onder de voorwaarden van de <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>.luckyBackup is distributed under the terms of the GNU General Public License aboutDialogGeldmoney aboutDialogGeen geldno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog(port naar MS Windowsport to MS Windows aboutDialog$port naar Mac OS Xport to Mac OS X aboutDialogport naar OS/2 port to OS/2 aboutDialog~RPM packager, gewaardeerd tester en remote connections-adviseur <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogsluitenclose logDialog.laden van logbestand...loading logfile... logDialogFluckyBackup - Voortgang van de taak&luckyBackup - tasks execution progress logDialogvolgende fout next error logDialogvorige foutprevious error logDialogwachtenwait logDialog &%1 %2&%1 %2luckyBackupWindow&Afbreken&AbortluckyBackupWindow &Over&AboutluckyBackupWindowT&oevoegen&AddluckyBackupWindowWi&ssen&DeleteluckyBackupWindow&Handleiding &HandbookluckyBackupWindow &Hulp&HelpluckyBackupWindow&Importeren&ImportluckyBackupWindow &Taal &LanguageluckyBackupWindow<&Minimaliseren naar systeemvak&Minimize to trayluckyBackupWindow&Wijzigen&ModifyluckyBackupWindow &Nieuw&NewluckyBackupWindow&Profiel&ProfileluckyBackupWindow&ProfielThis is a top menu item&ProfileluckyBackupWindowA&fsluiten&QuitluckyBackupWindow&Vernieuwen&RefreshluckyBackupWindowVe&rwijderen&RemoveluckyBackupWindow&Herstellen&RestoreluckyBackupWindow&Opslaan&SaveluckyBackupWindow&Instellingen &SettingsluckyBackupWindow &Taak&TaskluckyBackupWindow &TaakThis is a top menu action&TaskluckyBackupWindowWerkbal&ken &ToolbarsluckyBackupWindow6Beschrijving &zien/bewerken&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowAFGEBROKENABORTEDluckyBackupWindowAfbrekenAbortluckyBackupWindownWordt afgebroken: wacht tot alle processen zijn gestopt4Aborting: Please wait for all processes to be killedluckyBackupWindow ActiesActionsluckyBackupWindowpAlle relevante bestanden (logs etc.) zijn ook verwijderd4All relevant files (logs etc) have also been deletedluckyBackupWindowtAlle relevante bestanden (logs etc.) zijn ook gedupliceerd7All relevant files (logs etc) have also been duplicatedluckyBackupWindowAlle relevante bestanden (logs etc.) zijn ook met succes bijgewerkt4All relevant files (logs etc) have also been updatedluckyBackupWindow&Alle taken voltooidAll tasks completedluckyBackupWindowWeet je zeker dat je wilt doorgaan met het verwijderen van het profiel'Are you sure you want to delete profileluckyBackupWindowWeet je zeker dat je wilt doorgaan met het verwijderen van het standaardprofiel3Are you sure you want to delete the default profileluckyBackupWindownWeet je zeker dat je de volgende taak wilt verwijderen?5Are you sure you want to remove the following task ??luckyBackupWindowbBegin met het uitvoeren van alle ingesloten taken)Begin the execution of all included tasksluckyBackupWindowKeuzevakjeCheckBoxluckyBackupWindowhUitgevinkt. Deze taak zal worden <b>overgeslagen</b>5Checks are disabled. This task will be skippedluckyBackupWindow>Fout bij het vinden van bestandCould not locate the fileluckyBackupWindownKon de tijd voor het uitvoeren van taken niet bijwerken-Could not update last execution time of tasksluckyBackupWindowGecrashedCrashedluckyBackupWindow.Maak d&uplicaattaak aanCreate D&uplicate taskluckyBackupWindow*Maak h&ersteltaak aanCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowHuidig profielCurrent ProfileluckyBackupWindowD&uplicaat D&uplicateluckyBackupWindow&StandaardDe&faultluckyBackupWindowBeschrijving DescriptionluckyBackupWindowBestemmingsmap DestinationluckyBackupWindowMap DirectoryluckyBackupWindow GereedDoneluckyBackupWindowSimulatieDryluckyBackupWindowE-&mailE&mailluckyBackupWindowE&xporterenE&xportluckyBackupWindowFOUTERRORluckyBackupWindowAFSLUITENEXITluckyBackupWindowVerstreken tijd Elapsed timeluckyBackupWindowpe-mailvoorkeuren <font color=green>met succes bijgewerktBEmail preferences have been updated successfullyluckyBackupWindowLE-mailrapport na uitvoeren van profiel$Email report after profile executionluckyBackupWindowNederlandsEnglishluckyBackupWindowNederlandsDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowfFouten traden op bij het verzenden van logbestanden'Errors occured during logfiles transferluckyBackupWindowFouten traden op bij het verzenden van snapshots en logbestanden5Errors occured during snapshots and logfiles transferluckyBackupWindow`Fouten traden op bij het verzenden van snapshots(Errors occured during snapshots transferluckyBackupWindowrFouten traden op bij het verzenden van het profielbestand/Errors occured during the profile file transferluckyBackupWindow,Uitvoering van profielExecution of profileluckyBackupWindow8Uitvoeren van taken voltooidExecution of tasks finishedluckyBackupWindowtUitvoering van taken werd abrupt afgebroken door gebruiker4Execution of tasks were terminated violently by userluckyBackupWindowAfsluiten vanExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowHFout bij aanmaken van bestemmingsmap&Failed to create destination directoryluckyBackupWindow@Fout bij maken van nieuw profielFailed to create new profileluckyBackupWindowFout bij het verwijderen van alle relevante bestanden (logs etc.).Failed to delete all relevant files (logs etc)luckyBackupWindow@Fout bij verwijderen van profielFailed to delete profileluckyBackupWindowFout bij het dupliceren van alle relevante bestanden (logs etc.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow>Fout bij dupliceren van profielFailed to duplicate profileluckyBackupWindow>Fout bij dupliceren van profielFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow>Fout bij exporteren van profielFailed to export profileluckyBackupWindow>Fout bij importeren van profielFailed to import profileluckyBackupWindow<Fout bij hernoemen van profielFailed to rename profileluckyBackupWindow<Fout bij vervangen van profielFailed to replace profileluckyBackupWindowStarten misluktFailed to startluckyBackupWindow~Fout bij het bijwerken van alle relevante bestanden (logs etc.).Failed to update all relevant files (logs etc)luckyBackupWindow6Informatievenster verbergenHide information windowluckyBackupWindow6Informatievenster verbergen+hide/show information window button tooltipHide information windowluckyBackupWindow$Profiel importerenImport ProfileluckyBackupWindow"InformatievensterInformation windowluckyBackupWindow"Informatievensterinformation window titleInformation windowluckyBackupWindowXTijd voor het uitvoeren van taken bijgewerkt$Last execution time of tasks updatedluckyBackupWindow@Lijst van alle beschikbare takenList of all the available tasksluckyBackupWindowVergrendelenLockluckyBackupWindow&Backup beherenManage &BackupluckyBackupWindowTaak beheren Manage TaskluckyBackupWindowtDe geselecteerde taak n positie naar beneden verplaatsen/Move the highlighted task down, by one positionluckyBackupWindowpDe geselecteerde taak n positie naar boven verplaatsen-Move the highlighted task up, by one positionluckyBackupWindowNEENOluckyBackupWindowNIET INGESLOTEN NOT INCLUDEDluckyBackupWindowNOOTNOTEluckyBackupWindow(Geen fouten gevondenNo errors foundluckyBackupWindow(Nu bezig met de taakNow performing taskluckyBackupWindowToon alleen fouten en belangrijke berichten tijdens bijwerken venster could not be saved'ProfileluckyBackupWindowProfielIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowProfiel9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowProfielJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowProfielGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowProfiellfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowProfiel3full phrase: 'Profile set as default'ProfileluckyBackupWindowHVoortgangsbalk is slechts indicatief(Progressbar update will not be realisticluckyBackupWindow&HernoemenR&enameluckyBackupWindowLeesfout Read errorluckyBackupWindowLAlle oude snapshotdata zijn verwijderd Removed all older snapshots dataluckyBackupWindow*Bezig met verwijderenRemovingluckyBackupWindowBezig met verwijderen van oude snapshots en logbestanden van de taak+Removing old snapshots and logfiles of taskluckyBackupWindowUitvoerenRunluckyBackupWindowTaak&planner S&cheduleluckyBackupWindowBSelecteer een map voor exporterenSelect export directoryluckyBackupWindow.Als standaard instellenSet as DefaultluckyBackupWindowPaden instellen Set pathsluckyBackupWindowZPaden instellen voor rsync- en ssh-opdrachten$Set paths for rsync and ssh commandsluckyBackupWindow.Informatievenster tonenShow information windowluckyBackupWindow.Informatievenster tonen+hide/show information window button tooltipShow information windowluckyBackupWindow<Tekst tonen onder pictogrammenShow text under iconsluckyBackupWindowBronmapSourceluckyBackupWindowNStop het uitvoeren van actieve taken NU'Stop the execution of running tasks NOWluckyBackupWindowHBestemmingsmap met succes aangemaakt)Successfuly created destination directoryluckyBackupWindowTaakTaskluckyBackupWindowTakenlijst Task listluckyBackupWindow,Takenlijst van profielTask list of profileluckyBackupWindow>De beschrijving van het profielThe description of profileluckyBackupWindow|De map die je hebt geselecteerd bevat geen geldige profieldataCThe directory you have selected does not contain valid profile dataluckyBackupWindowrDe naam die je hebt gegeven bevat alleen ongeldige tekens:The name you have entered contains only invalid charactersluckyBackupWindowTComputer wordt over 1 minuut uitgeschakeld$The system will shutdown in 1 minuteluckyBackupWindow*De takenlijst is leegThe task list is emptyluckyBackupWindowDit zal een <b>simulatie</b> uitvoeren die geen wijzigingen aanbrengt (en vrijwel dezelfde uitvoer oplevert als een echte actie){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTijd verstreken Timed outluckyBackupWindow6Kan het profiel niet openenUnable to open profileluckyBackupWindowOnbekende fout Unknown errorluckyBackupWindowOnbekende foutthis refers to a process Unknown errorluckyBackupWindowbGebruik de knop 'toevoegen' rechts om te beginnen0Use the "add" button on the right to get startedluckyBackupWindowGebruik de keuzevelden 'insluiten' om een taak in te sluiten of niet>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowBProfielbeschrijving zien/bewerken!View/Edit the profile descriptionluckyBackupWindowWAARSCHUWINGWARNINGluckyBackupWindowWelkom bij Welcome toluckyBackupWindow6Wil je dit ook verwijderen:Would you like to also remove:luckyBackupWindow.Wil je toch verdergaan?!Would you like to proceed anyway?luckyBackupWindow*Wil je dit vervangen?Would you like to replace it ?luckyBackupWindowRWil je dit opslaan voordat je verdergaat?-Would you like to save it before proceeding ?luckyBackupWindowSchrijffout Write errorluckyBackupWindowJAYESluckyBackupWindowbJe hebt gevraagd om een HERSTEL-taak aan te maken/You have asked for a RESTORE task to be createdluckyBackupWindowlJe hebt alleen taken opgegeven die worden overgeslagen9You have only included tasks that are going to be skippedluckyBackupWindowdJe hebt het maximum van ondersteunde taken bereikt5You have reached the maximum limit of supported tasksluckyBackupWindow|Je moet een taak verwijderen als je een andere wilt toevoegen!7You have to remove a task if you wish to add another !!luckyBackupWindow|(een blanco profiel, met dezelfde naam, zal worden aangemaakt)4a new blank one, with the same name, will be createdluckyBackupWindowtoevoegenaddluckyBackupWindowtaak toevoegenadd taskluckyBackupWindowbestaat reedsalready existsluckyBackupWindow.en 'profiel'-keuzelijstand 'profile' drop-down listluckyBackupWindowBen toegevoegd aan de profiellijstand added at the profile listluckyBackupWindow`en wijzig alles naar keuze voordat je verdergaat.and change anything you wish before proceedingluckyBackupWindowalsasluckyBackupWindowalsFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowwordt berekend calculatingluckyBackupWindow&bezig met berekenen-info message displayed during ...calculations calculatingluckyBackupWindow,uitvoer van opdrachtencommands outputluckyBackupWindow6kon niet worden aangemaakt.could not be createdluckyBackupWindow6kon niet worden opgeslagen.could not be savedluckyBackupWindow6kon niet worden opgeslagen.PQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow0is met succes aangemaaktcreated successfullyluckyBackupWindowHstandaardprofiel wordt aangemaakt...creating default profile ...luckyBackupWindow6profiel wordt aangemaakt...creating profile ...luckyBackupWindowphuidige crontab <font color=green>met success bijgewerkt6current crontab updated successfullyluckyBackupWindowhuidig profielcurrent profileluckyBackupWindow standaardprofieldefault profileluckyBackupWindow standaardprofiel^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow standaardprofielVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow*met succes verwijderddeleted successfullyluckyBackupWindow6bestanden worden verwijderddeleting filesluckyBackupWindow>bezig met bestanden verwijderen/info message displayed during ...file deletionsdeleting filesluckyBackupWindowtoon - herstel - verwijder bestaande backups van geselecteerde taken?display - restore - delete existing backups of highlighted taskluckyBackupWindowRToon informatie over de geslecteerde taak.display information regarding highlighted taskluckyBackupWindow6met succes gedupliceerd alsduplicated successfully asluckyBackupWindowfouten gevonden errors foundluckyBackupWindow.uitvoering van profiel:execution of profile:luckyBackupWindowprofielAtray message - execution of profile: in progress...execution of profile:luckyBackupWindow8met succes gexporteerd naarexported successfully toluckyBackupWindow&verwijderen misluktfailed to removeluckyBackupWindowbverwijderen van alle oude snapshotdata is mislukt)failed to remove all older snapshots dataluckyBackupWindowvoltooidfinishedluckyBackupWindowis voltooid:full phrase: 'Execution of profile finished'finishedluckyBackupWindow4is met succes gemporteerdimported successfullyluckyBackupWindow&wordt uitgevoerd...in progress...luckyBackupWindowinsluitenincludeluckyBackupWindowis gewijzigd. is modifiedluckyBackupWindow is ongeldig vooris not valid forluckyBackupWindow*ga naar volgende foutjump to next errorluckyBackupWindow&ga naar vorige foutjump to previous errorluckyBackupWindow*is met succes geladenloaded successfullyluckyBackupWindow2laden standaardprofiel...loading default profile ...luckyBackupWindowladen misluktloading failedluckyBackupWindow laden profiel...loading profile ...luckyBackupWindowTlogbestand(en) zijn aangemaakt in de map: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow:minimaliseren naar systeemvakminimize to trayluckyBackupWindowZminimaliseert het venster naar het systeemvak%minimizes the window to the tray arealuckyBackupWindowaanpassenmodifyluckyBackupWindow6geselecteerde taak wijzigenmodify highlighted taskluckyBackupWindowniets te doen nothing to doluckyBackupWindowDopdracht achteraf wordt uitgevoerdpost-task execution of commandluckyBackupWindow@opdracht vooraf wordt uitgevoerdpre-task execution of commandluckyBackupWindowprofielprofileluckyBackupWindowprofielVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowprofielSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowprofielUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowprofielSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowprofielMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowprofiel profile luckyBackupWindowstille modus quiet modeluckyBackupWindowzijn vernieuwd refreshedluckyBackupWindowverwijderenremoveluckyBackupWindow8verwijder geselecteerde taakremove highlighted taskluckyBackupWindow6is met succes hernoemd naarrenamed successfully toluckyBackupWindow6is met succes hernoemd naarWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowuitvoer van rsync en opdrachten vooraf/achteraf wordt hier getoond9rsync and pre/post task commands output is displayed hereluckyBackupWindow0is met succes opgeslagensaved successfullyluckyBackupWindowHstandaardprofiel wordt opgeslagen...saving default profile ...luckyBackupWindow6profiel wordt opgeslagen...saving profile ...luckyBackupWindowin tijdschema scheduledluckyBackupWindow.als standaard ingesteldset as defaultluckyBackupWindowingesteld alsset toluckyBackupWindowafsluitenshutdownluckyBackupWindowsimulatiemodussimulation modeluckyBackupWindow statusstatusluckyBackupWindow(root (administrator) super userluckyBackupWindowrootmodussuper user modeluckyBackupWindownaartoluckyBackupWindow:bezig met bestanden verzendentransferring filesluckyBackupWindow>bezig met bestanden verplaatsen/info message displayed during ...file transferstransferring filesluckyBackupWindow:proberen bericht te versturentrying to send an emailluckyBackupWindowversie:version:luckyBackupWindow&Bereken verschillenCalculate differences manageDialogBereken de verschillen tussen de bronmap en het geselecteerde snapshotFCalculate the differences between the source and the selected snapshot manageDialogFBerekenen afgesloten door gebruikerCalculations terminated by user manageDialogSluitenClose manageDialog&Dit venster sluitenClose this window manageDialogVerwijderenDelete manageDialognVerwijder het geselecteerde snapshot en de logbestanden,Delete the selected snapshot and its logfile manageDialogfEr zijn onvoldoende permissies om deze map te lezen;I do not have sufficient permissions to read this directory manageDialogFSelecteer een snapshot van de lijst&Please select a snapshot from the list manageDialog@Wacht tot de reeks is afgesloten*Please wait until the thread is terminated manageDialogHerstellenRestore manageDialogDHerstel het geselecteerde snapshotRestore the selected snapshot manageDialogSTOPSTOP manageDialog*Stop het berekenen NUStop calculations NOW manageDialog*Deze map bestaat nietThis directory does not exist manageDialog*Deze map bestaat nietInformation messageThis directory does not exist manageDialoghBekijk het logbestand van het geselecteerde snapshot)View the logfile of the selected snapshot manageDialogzBekijk het logbestand van de geselecteerde synchronisatietaak*View the logfile of the selected sync task manageDialogbestemmingsmap: destination: manageDialog"bronmap verbergen hide source manageDialog8luckyBackup - Backup beherenluckyBackup - manage backup manageDialog niet beschikbaar not available manageDialogprofielprofile manageDialogbronmap:source: manageDialog&synchroniseer map A sync dir A manageDialog&synchroniseer map B sync dir B manageDialogtaaktask manageDialoglogbestand zienview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardAFBREKENABORT manageWizardAfgebrokenAborted manageWizardBackuppad Backup path manageWizardRLokaal bladeren voor een nieuw herstelpad%Browse locally for a new restore path manageWizardVink dit aan om het backupsnapshot te klonen naar de herstelmap.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum en tijd Date & time manageWizard$Backup verwijderen Delete backup manageWizardpVerwijder bestaande data die niet voorkomen in de backup4Delete existing data that do not exist at the backup manageWizard<Bezig met verwijderen van data Deleting data manageWizard\Lijst met snapshotwijzigingen wordt verwijderd)Deleting file that lists snapshot changes manageWizardXBezig met verwijderen van snapshotlogbestandDeleting snapshot logfile manageWizardBestaande backupbestanden zullen de corresponderende bestanden in de herstelmap vervangenSExisting backup files will replace the corresponding files at the restore directory manageWizardVoltooidFinished manageWizardAls de bovenstaande informatie correct is, klik dan op <b>start</b> om te beginnen@If the information above is correct, click start to begin manageWizardAls de bovenstaande informatie correct is, klik dan op <b>start</b> om te beginnen`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard*Ga naar volgende foutJump to next error manageWizard&Ga naar vorige foutJump to previous error manageWizardfGeen specifieke snapshotdata gevonden. Overslaan...,No snapshot specific data exist. Skipping... manageWizardPadPath manageWizard"Backup herstellenRestore backup manageWizardherstelpad Restore path manageWizardFBezig data te herstellen: hoofddeelRestoring data: main trunk manageWizardVBezig data te herstellen: snapshotbestandenRestoring data: snapshot files manageWizard6Selecteer nieuwe herstelmapSelect new restore directory manageWizardlDe herstelmap zal identiek zijn aan het backupsnapshotBThe restore directory will become identical to the backup snapshot manageWizardDit zal een <b>simulatie</b> uitvoeren die geen wijzigingen aanbrengt (en die vrijwel dezelfde uitvoer geeft als een echte actie){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardJLijst van snapshots aan het bijwerkenUpdating list of snapshots manageWizardWAARSCHUWINGWARNING manageWizard\Je staat op het punt backupdata te verwijderen#You are about to delete backup data manageWizardannulerencancel manageWizardveranderchange manageWizardsluitenclose manageWizardfouten gevonden errors found manageWizardmisluktfailed manageWizardmislukt-info message displayed after ...file deletionfailed manageWizard8luckyBackup - Backup beherenluckyBackup - manage backup manageWizardvolgende fout next error manageWizardgeen fouten no errors manageWizard niet beschikbaar not available manageWizardvorige foutprevious error manageWizardsimulatie simulation manageWizard startstart manageWizardgeslaagdsuccess manageWizardgeslaagd-info message displayed after ...file deletionsuccess manageWizardgeslaagd5info message displayed after ...snapshots list updatesuccess manageWizard'Remote host' is aangevinkt, maar er is geen naam voor de remote host gegeven='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Vergeet niet</b> om bij 'Uitsluiten' een map te definiren die de bestemmingsmap zal bevattenfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogVoeg een map, bestand of patroon toe om uitgesloten te worden van deze taak@Add any directory, file or pattern to be excluded from this task modifyDialogVoeg een map, bestand of patroon toe om ingesloten te worden bij deze taak>Add any directory, file or pattern to be included by this task modifyDialogpOpdracht toevoegen zoals opgegeven in het veld hiernaast*Add command as entered in the field beside modifyDialogvUitsluiting toevoegen zoals aangegeven in het volgende veld*Add exclusion as entered in the next field modifyDialogrInsluiting toevoegen zoals opgegeven in het volgende veld*Add inclusion as entered in the next field modifyDialogToevoegen of verwijderen van rsync-opties. Als je geen idee hebt wat dit betekent, blijf er dan vanaf!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogvVoeg een rsync-optie toe als opgegeven in het volgende veld-Add rsync option as entered in the next field modifyDialogGeavanceerdAdvanced modifyDialogNaAfter modifyDialogAlle opgegeven velden van het taakeigenschappenvenster lijken OK?All declared fields of the task properties window seem to be ok modifyDialogOok uitvoeren Also Execute modifyDialog$Probeer rootactiesAttempt super-user activities modifyDialogPBackup van bronmap binnen bestemmingsmap Backup Source inside Destination modifyDialogBackupbestanden Backup files modifyDialog2Backup geopende bestandenBackup open files modifyDialogVoorBefore modifyDialogCachemappen Cache folders modifyDialogAnnulerenCancel modifyDialog*Vink dit aan als je een FAT/NTFS-partitie als bestemmingsmap gebruikt. Eigenaar en permissies van de data worden NIET bewaard. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogVink dit aan om de bronmap te klonen naar de bestemmingsmap. Vink dit NIET aan om een extra map aan te maken in de bestemmingsmapiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogpVink dit aan om te verbinden met een rsync remote module/Check this to connect to an rsync Remote module modifyDialogOpdrachtoptiesCommand Options modifyDialogOpdrachtenlijst Command list modifyDialogKopier apparaat (alleen root) en speciale bestanden zoals ze zijn (-D)?Copy device (super user only) & special files as they are (-D) modifyDialoghKopieer symbolische links als symbolische links (-l)Copy symlinks as symlinks (-l) modifyDialogGeef het type voor deze taak op: 1. Backup van bronmap binnen de bestemmingsmap (zie ook het keuzevakje 'Maak GEEN extra map aan') 2. Synchroniseer bronmap en bestemmingsmap en bewaar de meest recente bestanden in beideDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefinieer het type voor deze taak: 1. Maak een backup van de inhoud van de bronmap in de bestemmingsmap 2. Maak een backup van de bronmap op naam in de bestemmingsmap 3. Synchroniseer bronmap en bestemmingsmap, waarbij de meest recente bestanden in beide worden bewaardDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogPVerwijder bestanden in de bestemmingsmapDelete files on the destination modifyDialogrVerwijder bestanden in de bestemmingsmap die niet voorkomen in de bronmap. Als 'Uitsluiten' wordt gebruikt, moet 'Recursief zoeken' aangevinkt zijn. (--delete-after & --delete-excluded)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogBeschrijving Description modifyDialogBestemmingsmap Destination modifyDialogBestemmingsmap: Destination : modifyDialog4Bestemmingsmap is FAT/NTFSDestination is FAT/NTFS modifyDialog.Maak GEEN extra map aanDo NOT create extra directory modifyDialogMaak geen backup van bronmapbestanden die nieuwer zijn in de bestemmingsmap (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogSluit deze lijst van patronen niet uit. Lees de handleiding voor een beter begrip van de inclusie-regels.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog>Bewerk geselecteerde insluitingEdit highlighted inclusion modifyDialogpGeef een naam voor deze taak (bv. 'Backup mijn Homemap'):Enter a name for this task (eg "Backup my home directory") modifyDialogGeef hier een opdracht om uit te voeren na de taak en klik op de knop 'toevoegen' om toe te voegen aan de lijst hierondernEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogGeef hier een opdracht om uit te voeren voor de taak en klik dan op de knop 'toevoegen' om toe te voegen aan de lijst hieronderoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogGeef hier een rsync-optie om toe te voegen (bv. '--delete-excluded', '-X')@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogVoer hier een bestand, map of patroon in en klik op de knop 'toevoegen' om toe te voegen aan de uitsluitingslijst * - staat voor elke niet-lege component (stopt bij slashes) ** - staat voor alles, inclusief slashes ? - staat voor elk teken uitgezonderd een slash trailing dir_name/*** - staat voor de map met alles erin starting / - patroon is gekoppeld aan een specifieke plaats in the hirarchie van de verzending (normaliter de bronmap) trailing / - staat voor de map alleen, zonder bestanden, symbolische links of apparatenEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog$Voer hier een bestand, map of patroon in en klik op de knop 'toevoegen' om het toe te voegen aan de insluitingslijst * - staat voor elke niet-lege component (stopt bij slashes) ** - staat voor alles, inclusief slashes ? - staat voor elk teken uitgezonderd een slash trailing dir_name/*** - staat voor de map met alles erin starting / - patroon is gekoppeld aan een specifieke plaats in the hirarchie van de verzending (normaliter de bronmap) trailing / - staat voor de map alleen, zonder bestanden, symbolische links of apparatenEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogGeef het volledige pad van de bestemmingsmap op (bv. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogGeef het volledige pad van het bestand met de private ssh-authenticatiesleutel (leeg laten indien niet van toepassing) Vergeet niet dat alle acties voor een wachtwoordvrije ssh-verbinding een OpenSSH sleutelset vereisenEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogGeef het volledige pad van het bestand met het rsync- (NIET het ssh-) authenticatie-wachtwoord (leeg laten indien niet van toepassing).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogxGeef het volledige pad van de bronmap op (bv. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog@Geef de naam van de remote host."Enter the name of the remote host. modifyDialogGeef de poort die je wilt gebruiken voor de ssh-verbinding (leeg laten voor standaardpoort)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogGeef je gebruikersnaam voor de remote host (leeg laten indien niet van toepassing).HEnter your username for the remote host (leave blank if not applicable). modifyDialog2Er werden fouten gevondenErrors have been found modifyDialogUitsluitenExclude modifyDialoghSluit alle 'lost+found'-mappen uit (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog^Sluit alle backupbestanden en -mappen uit (**~)(Exclude all backup files & folders (**~) modifyDialoglSluit alle cachemappen uit (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogLSluit alle temp-mappen uit (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogtSluit alle '.gvfs'-mappen van de gebruiker uit (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogSluit alle prullenbakken van de gebruiker uit (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog"Uitsluitingslijst Exclude list modifyDialogSysteemmappen uitsluiten: /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogSluit aankoppelmappen /mnt en /media uit (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialog^Extra opdrachten uitvoeren, voor of na de taak.1Execute extra commands, before or after the task. modifyDialogDe taak uitvoeren ook al verschijnt er een WAARSCHUWING. Normaliter gebruikt wanneer 'vooraf uitvoeren'-opdrachten een waarschuwing kunnen herstellen (bv. aankoppelen van partities) LET OP: vink dit alleen aan als je echt weet wat je doet!Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog8Lijst van extra rsync-optiesExtra rsync options list modifyDialog~Bestanden verbonden door harde links in de bronmap zullen ook in de bestemmingsmap met harde links verbonden zijn WAARSCHUWING: Alle bestanden moeten ingesloten zijn in de verzend-reeks! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogBNegeer bestanden op de CVS-manierIgnore files the CVS way modifyDialog|Negeer bestanden met een algoritme gelijksoortig aan CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInsluitenInclude modifyDialog>ALLEEN deze lijst met patronen insluiten. Niets meer. Lees de handleiding voor een beter begrip van de inclusie-regels. Dit schakelt de optie 'Uitsluiten' uit.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog Insluitingslijst Include list modifyDialogInsluitmodus Include mode modifyDialogLaat dit aangevinkt om de uitvoering van een actieve taak te <b>STOPPEN</b> als deze opdracht eindigt met een foutgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Modus:Mode: modifyDialog^Verplaats geselecteerde insluiting naar benedenMove highlighted inclusion down modifyDialog\Verplaatst geselecteerde insluiting naar bovenMove highlighted inclusion up modifyDialog Naam:Name : modifyDialog"Normaal insluitenNormal Include modifyDialogOKOkay modifyDialog Alleen insluiten Only Include modifyDialogzOf verwijder het vinkje bij 'remote host' om lokaal te werken2Otherwise uncheck 'Remote Host' to operate locally modifyDialognVink de relevante keuzevakjes aan voordat je verdergaat/Please check the relevant box before proceeding modifyDialogfDefinier de bronmap voor je de patrooneditor opentSTOPPEN</b> bij fout0use boxes to STOP task execution on error modifyDialogvalideervalidate modifyDialog|zonder 'recursief zoeken' aangevinkt te hebben, wat vereist isCwithout having checked 'Recurse into directories' which is required modifyDialogAnnulerenCancel patternEditor>Vink dit aan om bovenstaande map te gebruiken als absoluut pad. Indien niet aangevinkt, staat het patroon voor elk bestand/map die voldoet aan de naamcriteria.Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorGeef hier de naamcriteria voor de bestanden/mappen die vergeleken moeten wordenEDefine here the name criteria for the files/directories to be matched patternEditorpGeef hier aan waar je wilt dat het patroon naar verwijst8Define here, what would you like the pattern to refer to patternEditorMapinhoudDirectory contents patternEditorGeef hier de tekens die voorkomen op een willekeurige positie in de naam van de bestanden/mappen waarnaar het patroon verwijstsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor Geef hier de eindtekens van de naam van de bestanden/mappen waarnaar het patroon verwijst, bv. '.txt' om naar alle '.txt'-bestanden te verwijzenEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorGeef hier de naam van de bestanden/mappen waarnaar het patroon verwijstGEnter here the name of the files/directories that the pattern refers to patternEditorGeef hier de begintekens van de naam van de bestanden/mappen waarnaar het patroon verwijstbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor*Ga dieper in pad met:Go deeper in path by : patternEditor<Ga dieper in pad op elk niveauGo deeper in path by any level patternEditorOKOkay patternEditor4Kies een map in de bronmap+Please choose a directory within the source patternEditor<Kies een bestand in de bronmap&Please choose a file within the source patternEditorjReset de patrooneditorvelden naar de standaardwaardes5Reset the pattern editor fields to the default values patternEditorSelecteer mapSelect directory patternEditor"Selecteer bestand Select file patternEditorGroep mappenSet of directories patternEditorGroep bestanden Set of files patternEditorSpecifieke mapSpecific directory patternEditor"Specifiek bestand Specific file patternEditorHHet echte patroon wordt hier getoond$The actual pattern is displayed here patternEditor<Het patroon verwijst naar een:The pattern refers to a: patternEditorGebruik dit als het patroon verwijst naar een groep mappen die iets gemeen hebben, bv. alle mappen die 'temp' hetenUse this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorGebruik dit als het patroon verwijst naar een groep bestanden die iets gemeen hebben, bv. alle bestanden met de extensie '.txt'wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorGebruik dit als het patroon verwijst naar een specifieke map, bv. '/media/muziek/album/'OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorGebruik dit als het patroon verwijst naar een specifiek bestand, bv. '/media/muziek/album/song.mp3'RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor6Gebruik dit als het patroon verwijst naar de inhoud van een map (of een groep mappen), niet naar de map zelf, bv. de inhoud van de map '/media/music/Album'Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditordGebruik dit om te verwijzen naar dieperliggende submappen, bv.: De map '/media/muziek' bevat drie submappen: 1. Rock 2. Jazz 3. Soundtracks Om te verwijzen naar de inhoud van deze drie, definieer je dan het volgende: * Groep mappen * Mapinhoud * pad: /media/muziek/ * Ga dieper in pad met '1'0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorelkeany patternEditor4blader lokaal voor een map"browse localy for a directory path patternEditor<blader lokaal voor een bestandbrowse localy for a file patternEditor bevat: contains : patternEditormap: directory : patternEditoreindigt met: ends with : patternEditorbestand:file : patternEditor$definitief patroon final pattern patternEditoris exact: is exactly : patternEditornaamname patternEditorpatrooneditorpattern editor patternEditor resetreset patternEditorbegint met: starts with : patternEditor0gebruik een absoluut paduse absolute path patternEditor-bestand filescheduleDialog en op& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:uitstel:delayscheduleDialog:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Tijdschema voor profielen</span></p></body></html>

Profile execution scheduling

scheduleDialog@ herstarten@ rebootscheduleDialog:Voeg een nieuw tijdschema toeAdd a new profile schedulescheduleDialog(Tijdschema toevoegenAdd profile schedulescheduleDialog IedereAnyscheduleDialog aprilAprilscheduleDialog aprilfull phrase: 'of April'AprilscheduleDialogpWeet je zeker dat je het tijdschemavenster wilt sluiten?4Are you sure you want to close the schedule dialog ?scheduleDialogaugustusAugustscheduleDialogaugustusfull phrase: 'of August'AugustscheduleDialogAnnulerenCancelscheduleDialogVink dit aan als je computer geen grafische werkomgeving ondersteunt (bv. een server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogConsole-modus Console ModescheduleDialogdecemberDecemberscheduleDialogdecemberfull phrase: 'of December'DecemberscheduleDialog`Stel uitvoering luckyBackup bij systeemstart uit&Delay luckybackup execution at startupscheduleDialog.Toon de huidige crontabDisplay the current crontabscheduleDialog"Profiel uitvoerenExecute profilescheduleDialogfebruariFebruaryscheduleDialogfebruarifull phrase: 'of February'FebruaryscheduleDialogvrijdagFridayscheduleDialog Ongeldig profielInvalid profilescheduleDialogjanuariJanuaryscheduleDialogjanuarifull phrase: 'of January'JanuaryscheduleDialogjuliJulyscheduleDialogjulifull phrase: 'of July'JulyscheduleDialogjuniJunescheduleDialogjunifull phrase: 'of June'JunescheduleDialog maartMarchscheduleDialog maartfull phrase: 'of March'MarchscheduleDialogmeiMayscheduleDialogmeifull phrase: 'of May'MayscheduleDialog&Tijdschema wijzigenModify profile schedulescheduleDialogFWijzig het geselecteerde tijdschema Modify selected profile schedulescheduleDialogmaandagMondayscheduleDialogDEr zijn geen tijdschema's gemaakt!No schedules are declared !!scheduleDialognovemberNovemberscheduleDialognovemberfull phrase: 'of November'NovemberscheduleDialogoktoberOctoberscheduleDialogoktoberfull phrase: 'of October'OctoberscheduleDialogProfiel: Profile :scheduleDialog$Details tijdschemaProfile schedule detailsscheduleDialogLVerwijder het geselecteerde tijdschema Remove selected profile schedulescheduleDialogHEenmalig uitvoeren, bij systeemstartRun once, at startupscheduleDialogzaterdagSaturdayscheduleDialogseptember SeptemberscheduleDialogseptemberfull phrase: 'of September' SeptemberscheduleDialogSla taken over die de waarschuwing 'KRITIEK' krijgen na de mapcontroleSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog$Beginnen met nietsStarting from scratchscheduleDialog zondagSundayscheduleDialogvHet bestaande tijdschema is niet geldig voor luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogdonderdagThursdayscheduleDialogdinsdagTuesdayscheduleDialogDKan het cron-bestand niet aanmakenUnable to create cron filescheduleDialog@Kan het tijdschema niet aanmakenUnable to create schedule filescheduleDialogwoensdag WednesdayscheduleDialogJe hebt wijzigingen aangebracht zonder op de knop 'cronIT' te klikken8You have made changes without clicking the cronIT buttonscheduleDialog|Je hebt het maximum aantal tijdschema's voor profielen bereiktBYou have reached the maximum limit of supported scheduled profilesscheduleDialogJe moet een onderdeel verwijderen als je een ander wilt toevoegen5You have to remove an item if you wish to add anotherscheduleDialogFJe crontab is met succes bijgewerkt$Your crontab is updated successfullyscheduleDialogtoevoegenaddscheduleDialogopatscheduleDialogsluitenclosescheduleDialog&dit venster sluitenclose this dialogscheduleDialogcronIT! cronIT !!scheduleDialoginhoud crontabcrontab contentscheduleDialogdagdayscheduleDialog"dag van de maand:day of month :scheduleDialog dag van de week: day of week :scheduleDialogelkeeveryscheduleDialog"elk uur op minuuthourly at minute scheduleDialog0luckyBackup - TijdschemaluckyBackup - schedulescheduleDialogminminscheduleDialogwijzigenmodifyscheduleDialog maand:month :scheduleDialogdendscheduleDialogsteas in 22nd dayndscheduleDialog8er zijn geen crontab-entriesno crontab entries existscheduleDialogvanofscheduleDialogvan elke maand of any monthscheduleDialogOKokayscheduleDialog4eenmalig, bij systeemstartonce, at system startupscheduleDialogderdscheduleDialogsteas in 23rd dayrdscheduleDialogverwijderenremovescheduleDialogStel het tijdschema in zoals gedefinierd in de bovenstaande lijst@schedule the execution of profiles as declared in the list abovescheduleDialogtzet deze waarde op -1 om de planning ieder uur te herhalen9set this value to -1 for the schedule to occur every hourscheduleDialog&'Kritiek' overslaan skip criticalscheduleDialogstestscheduleDialogsteas in 21st daystscheduleDialogsteas in 31st daystscheduleDialogdethscheduleDialogdeas in 10th daythscheduleDialogdeas in 11th daythscheduleDialogdeas in 12th....19th daythscheduleDialogsteas in 20th daythscheduleDialogsteas in 24th...30th daythscheduleDialogste as in 8th daythscheduleDialogde as in 9th daythscheduleDialogtijd (uur:min):time (hour:min) :scheduleDialog2Bekijk de huidige crontabview current crontabscheduleDialogLEr is al een profiel met dezelfde naam+A profile with the same name already exists textDialogJWeet je zeker dat je wilt verdergaan?#Are you sure you wish to proceed ?? textDialogPAS OP, als je NIET de bedoeling hebt de bronmap te klonen naar de bestemmingsmap!BBEWARE, if your intention is NOT to clone source to destination !! textDialogAnnulerenCancel textDialog<Kopier opdracht naar klembordCopy command to clipboard textDialogHToon dit niet opnieuw voor deze taak$Do not show this again for this task textDialog Geef sleutelzin:Enter passphrase : textDialog Geef wachtwoord:Enter pasword : textDialogHGeef de naam van het nieuwe profiel:#Enter the name of the new profile : textDialogHGeef de nieuwe naam van het profiel:#Enter the new name of the profile : textDialogNeeNo textDialogOKOkay textDialog(Geef een andere naamPlease enter a different name textDialog(Profielbeschrijving:Profile description : textDialogJaYes textDialogJe hebt 'Maak een backup van de inhoud van de bronmap' geselecteerd, samen met de optie 'verwijder bestanden in de bestemmingsmap'You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog"E-mail informatieeMail information textDialogluckyBackup luckyBackup textDialogAnnulerenCancel winDialog^Geef het volledige pad naar de cygpath-opdracht*Enter the full path of the cygpath command winDialog\Geef het volledige pad naar de dosdev-opdracht)Enter the full path of the dosdev command winDialog\Geef het volledige pad naar de luckyBackup-map0Enter the full path of the luckybackup directory winDialogZGeef het volledige pad naar de rsync-opdracht(Enter the full path of the rsync command winDialogVGeef het volledige pad naar de ssh-opdracht&Enter the full path of the ssh command winDialogZGeef het volledige pad naar de tijdelijke map.Enter the full path of the temporary directory winDialogTGeef het volledige pad naar de vshadow-map,Enter the full path of the vshadow directory winDialog:Uitvoerbare bestanden (*.exe)Executable Files (*.exe) winDialogOKOkay winDialog4Selecteer cygpath-opdrachtSelect cygpath command winDialog2Selecteer dosdev-opdrachtSelect dosdev command winDialog0Selecteer rsync-opdrachtSelect rsync command winDialog,Selecteer ssh-opdrachtSelect ssh command winDialog.Gebruik standaardwaardeUse default value winDialoglokaal bladerenbrowse locally winDialogcygpath:cygpath: winDialog*vaststellen van padendeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialoghoofdmap: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialogtemp-map: temp dir: winDialogvshadow-map: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_ro.ts0000666000175000017500000072024713165410113021516 0ustar luckybluckyb CalcDiffThread Scanning destination Se scanează destinația Please wait Așteptați Scanning snapshot Se scanează versiunea de rezervă Scanning source Se scanează sursa Calculating differences Se calculează diferențele Sync dir A & B differences Sincronizează diferențele directoarelor A și B Snapshot and source differences Versiunea de rezervă și sursa sunt diferite Sync dir B data that also exists at sync dir A and is different Sincronizează datele din directorul B care există la sincronizarea directorului A și sunt diferite Snapshot data that also exists at the source and is different Datele versiunii de rezervă care deja există la sursă și sunt diferite The snapshot data will replace the source data during RESTORE Datele versiunii de rezervă vor înlocui datele sursei în timpul RESTAURĂRII Data amount is huge. Displaying only first entries Volumul de date este uriaș. Se afișează doar primele intrări Sync dir B data that do NOT exist at sync dir A Sincronizează datele directorului B care NU există la sincronizarea directorului A Snapshot data that do NOT exist at the source Datele versiunii de rezervă care NU există la sursă These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Acestea vor fi suprascrise în sursă în timpul operației de RESTAURARE Sync dir A data that do NOT exist at sync dir B Sincronizează datele din directorul A care NU există la sincronizarea directorului B Source data that do NOT exist at the snapshot Datele sursei care NU există la versiunea de rezervă These will be deleted during RESTORE only if you enable the option: Acestea vor fi șterse în timpul operației de RESTAURARE doar dacă bifați opțiunea: delete existing source data that do not exist at the backup șterge datele sursă existente care nu există în backup QObject The task list is empty Lista de sarcini este goală nothing to start nimic de pornit You have included both of the following connected tasks: Ați inclus ambele sarcini conectate: this is not allowed for obvious reasons acest lucru nu este permis din motive evidente Please <b>uncheck appropriate include boxes</b> before proceeding Vă rugăm <b>debifați căsuțele incluse corespunzătoare</b> înainte de a începe You have not included any tasks Nu ați inclus nici o sarcină The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Următoarele sarcini incluse <b>partajează același director destinație</b> (toate împreună sau la grupuri) și cel puțin una dintre ele va face o copie de siguranță a conținutului unui director this will lead to one task canceling the other acest lucru va conduce la anularea unei sarcini de către celalaltă Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Debifați căsuțele adecvate incluse sau schimbați toate tipurile sarcinii la altele decât '<b>Copie rezervă conținut director</b>' sau utilizați 'Copie rezervă conținut director' împreună cu opțiunea '<b>Include numai</b>' , înainte să începeți pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting pre-sarcina executării de comenzi starting Full phrase: pre-task execution of command: <COMMAND> starting pornire Command re-run due to failure This means that a specific command is run for once more because it failed the first time Rulați din nou comanda datorită unor defecțiuni post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting post-sarcina executării de comenzi starting Full phrase: post-task execution of command: <COMMAND> starting pornire execution of task Full phrase: execution of task: <TASKNAME> starting executarea sarcinii starting Full phrase: execution of task: <TASKNAME> starting pornire Source Full phrase: source: <SOURCE_NAME Sursă Destination Full phrase: Destination: <DEST_NAME Destinație execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting executarea părții 1 a sarcinii starting Full phrase: execution of 1st part of task: <TASKNAME> starting pornire Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Se sincronizează to Full phrase: Syncing <DIR-A> to <DIR-B> la execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting executarea părții 2 a sarcinii starting Full phrase: execution of 2nd part of task: <TASKNAME> starting pornire Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Se sincronizează to Full phrase: Syncing <DIR-B> to <DIR-A> la pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished pre-sarcina executării comenzii finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finalizat post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished post-sarcina executării comenzii finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finalizat execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished executarea părții 1 a sarcinii finished Full phrase: execution of 1st part of task: <TASKNAME> finished finalizat execution of task Full phrase: execution of task: <TASKNAME> finished executarea sarcinii finished Full phrase: execution of task: <TASKNAME> finished finalizat execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error executarea sarcinii finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error s-a terminat datorită unei erori de execuție a comenzii pre/post sarcină The process reported an error Procesul a raportat o eroare Backing-up profile, logfiles and snapshot data Se arhivează profilul, fișierele jurnal și rezumatul datelor Could not open the logfile Nu se poate deschide fișierul jurnal The logfile does not exist Fișierul jurnal nu există The specified command is probably not installed Comanda specificată probabil nu este instalată The logfile could not be created Fișierul jurnal nu poate fi creat command: comandă: exit code: cod ieșire: output: ieșire: Last execution time Timpul ultimei execuții not available indisponibil no errors nici o eroare errors found au fost găsite erori status stare OK OK Sync directory Sincronizează directorul Source directory Director sursă Using remote, check is skipped Utilizând la distanță, verificarea este omisă Destination directory Director destinație free as in free disk space gratuit WARNING ATENȚIE I do not have the permission to read/enter sync directory A Nu există permisiunea de a citi/intra sincronizarea directorului A I do not have the permission to read/enter the source directory Nu există permisiunea de a citi/intra în directorul sursă I do not have the permission to read/enter sync directory B Nu există permisiunea de a citi/intra sincronizarea directorului B I do not have the permission to read/enter the destination directory Nu există permisiunea de a citi/intra în directorul destinație Directory Director and/or și/sau does not exist nu există is not mounted nu este montat is empty or does not exist este gol sau nu există I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Voi <font culoare=roșu><b>NU OMITE</b></font> această sarcină fiindcă aveți activată opțiunea "by-pass WARNING" This task will be <font color=red><b>skipped</b></font> Această sarcină va fi <font color=red><b>omisă</b></font> CRITICAL CRITIC is empty este gol I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Nu <font color=orange><b>voi omite</b></font> această sarcină. Sincronizarea va fi efectuată oricum This task will <font color=orange><b>not be skipped Această sarcină nu <font color=orange><b>va fi omisă The Destination Directory will be created if it doesn't exist and filled with new backup data Directorul destinație va fi creat dacă nu există și va fi umplut cu noile date a copiei de siguranță Task description Descrierea sarcinii ReadLogFile Could not locate the logfile Could not open the logfile Nu se poate deschide fișierul jurnal aboutDialog using Qt4 utilizând Qt4 Backup & Sync Application Aplicație pentru backup & sincronizare Loukas Avgeriou Loukas Avgeriou It 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. Este distribuită cu speranța că va fi folositoare, dar FĂRĂ NICI O GARANȚIE; chiar fără garanția implicită a COMERCIALIZĂRII sau POTRIVIRII CU UN SCOP PARTICULAR. See the 'License Agreement' tab for more details. Vedeți fereastra 'Acord de licențiere' pentru mai multe detalii. Athens, Greece Atena, Grecia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Dezvoltator oficial al pachetului linux Arch (AUR) Valuable advisor Consilier valoros Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor împachetare rpm, tester de valoare și consilier conexiuni distante Patrick Matthaei Patrick Matthaei Debian package maintainer Dezvoltator pachet debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Traducător în limba greacă a interfeței grafice și tester apreciat The indifex team Echipa indifex for developing the wonderful transifex localization platform and providing it for free pentru dezvoltarea minunatei platforme de localizare transifex și distribuirea gratuită Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Administrator pachet OpenSUSE (depozit comunitatea KDE4) și consilier valoros împachetări Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Administrator pachet Mepis (depozit comunitate) & traducător gui în spaniolă Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) dezvoltator pachet ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows portare pe MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Contributor cod sursă pentru suport distant & vss privind portarea pe windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X portare la Mac OS X Elbert Pol Elbert Pol port to OS/2 portare la OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Dezvoltator Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy pet & administrator sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) dezvoltator pachet Mandriva (depozit oficial contributor) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer dezvoltator pachet Free BSD Dimitris Jemos Dimitris Jemos Slackel package maintainer dezvoltator pachet Slackel ex Fedora package maintainer dezvoltator pachet ex Fedora Pavel Fric Pavel Fric Czech gui translator Traducător în limba cehă a interfeței grafice Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Traducător în limba greacă a manualului German gui translator Traducător în limba germană a interfeței grafice Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Traducător în limba portugheză a interfeței grafice Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Traducător în limba franceză a interfeței grafice și consultant apreciat pentru împachetare (și nu numai) Raffaele Raffaele Italian gui translator Traducător în limba italiană a interfeței grafice using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Traducător în limba rusă a interfeței grafice și tester apreciat Kenny Verstraete Kenny Verstraete Dutch gui translator Traducător în limba olandeză a interfeței grafice Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Traducător în limba bosniacă a interfeței grafice și întreținător al pachetului pentru distribuția Mandriva Majed Sahli Majed Sahli Arabic gui translator Traducător în limba arabă a interfeței grafice Adrian Murariu Angelesci Constantin Romanian gui translator Traducător în limba română a interfeței grafice Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Proiectant al interfeței grafice v0.3 fri13 fri13 v.0.3 gui designer Proiectant al interfeței grafice v.0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Dacă nu ar fi fost el și ghidurile lui nu aș fi început niciodată acest proiect Thomas Glatt Thomas Glatt French gui translator Traducător în limba franceză a interfeței grafice Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Traducător în limba spaniolă a interfeței grafice Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Traducător în limba suedeză a interfeței grafice Catalan gui translator Traducător în dialectul catalan a interfeței grafice Slovak gui translator Traducător în limba slovakă a interfeței grafice Rivo Zangov Rivo Zangov Estonian gui translator Traducător în limba estonă a interfeței grafice Nicolay Boychev Nicolay Boychev Bulgarian gui translator Traducător în limba bulgară a interfeței grafice Manuel Meixide Manuel Meixide Galician gui translator Traducător în dialectul galician a interfeței grafice Roger Foss Roger Foss Norwegian gui translator Traducător în limba norvegiană a interfeîei grafice Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Traducător în limba chineză(taiwan) a interfeței grafice Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) invitat specialist în rezolvarea erorilor ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist tester valoros și specialist în inovații Yuri Vidal Yuri Vidal backupwhenidle python script developer dezvoltator al scrptului python backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester tester prețios OS/2 și windows ...to all users of the ...tuturor utilizatorilor a forums for their support. forumurilor pentru suportul lor. Especially În special that contributed to this project one way or another celor ce au contribuit la acest proiect într-un fel sau altul Last but no least Ultimul dar nu cel din urmă Could not locate the license file Nu se poate localiza fișierul de licență no money fără bani If you like this app and would like to donate something to me personally, all you have to do is: Dacă vă place această aplicație ți ați vrea să-mi donați ceva personal, tot ceea ce trebuie să faceți este să: Give a thumbs up at: Dați un vot de apreciere la: Vote good & become a fan at: Votați favorabil & deveniți un fan la: This is my reward :) Aceasta este recompensa mea :) money bani I personally never had and never will accept money for this project. Niciodată nu am acceptat și nu voi accepta bani pentru acest proiect. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Totuși, am decis să utilizez luckyBackup pentru a susține oameni care într-adevăr au nevoie de ajutor financiar. So, please consider it seriously to donate money that will eventually be used for a good cause. Așadar vă rog să considerați cu seriozitate donarea de bani care vor fi eventual utilizați pentru o cauză bună. donation link link pentru donație luckyBackup - about luckyBackup - despre close inchide &About &Despre <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Suport A&uthor A&jutor &Thanks to &Mulțumiri pentru &License Agreement Acord de &Licențiere luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup se distribuie sub termenii a <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Este <b>aplicație liberă</b>: se poate redistribui și/sau modifica respectând termenii GNU General Public License cum a fost publicată de către Free Software Foundation, versiunea 3 a Licenței. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Dezvoltator al pachetului pentru distribuția Fedora (depozit oficial) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Traducător în limba slovenă a interfeței grafice E. Hakan Duran E. Hakan Duran Turkish gui translator Traducător în limba turcă a interfeței grafice Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) dezvoltator al pachetului distribuției Slackware (Depozit SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ... jumătății mele, <b>Dimitra</b> care m-a susținut în tot acest timp cât proiectul a fost în dezvoltare emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Trimite un raport email după execuția profilului command: comandă: Use default This means "use the default value for this field" Utilizează valoarea implicită Arguments Argumente %f from: %f de la: Enter the sender of the message Introduceți expeditorul mesajului %l logfile %l fișier jurnal %c logfile.tar.gz %c fișier jurnal.tar.gz %d date %d data %i time %i timp %p profile name %p denumire profil %e No of errors %e Număr de erori If unchecked "TLS auto" is used. Only available for sendemail Dacă debifați, va fi utilizat "TLS auto". Disponibil doar pentru sendemail Disable TLS Dezactivează TLS %t to: %t la: Enter the recipient of the message Introduceți destinatarul mesajului %s subject: %s subiect: Enter the subject of the message Introduceți subiectul mesajului %v smtp server: %v server smtp: Enter the smtp server used to send the message Introduceți serverul smtp utilizat pentru a expedia mesajul %b body: %b conținut: Enter the body of the message Introduceți conținutul mesajului Send an email right now to test the provided arguments Trimiteți un email acum pentru a testa argumentele oferite Test Test Accept changes and close dialog Acceptă modificările și închide dialogul Okay Ok Close dialog Închide dialogul Cancel Anulează Specify the conditions to send an email Specificați condițiile de a trimite un email Enter the command to run eg sendemail Introduceți comanda de rulat de exemplu sendemail arguments: argumente: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Introduceți argumentele comenzii email de exmplu -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Condiții Only send when error(s) occured during a run Trimite doar când apar eroare(i) în timpul rulării Error(s) occured Au apărut eroare(i) Only send when profile is scheduled to run Trimte doar când profilul este programat să ruleze Profile is scheduled Profilul este programat Never send an email Nu trimite niciodată un email Never Niciodată The command field is empty Câmpul comenzii este gol helpBrowser luckyBackup - help luckyBackup - ajutor manual/ manual/ Okay Ok logDialog luckyBackup - tasks execution progress luckyBackup - progresul execuției sarcinilor <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error eroare anterioară next error eroare următoare close închide loading logfile... se încarcă fișierul jurnal... wait așteptați luckyBackupWindow commands output output window label ieșire comenzi rsync and pre/post task commands output is displayed here tooltip rsync și comenzile ieșire pre/după sarcină sunt afișate aici Task list task list label Listă de sarcini List of all the available tasks task list tooltip - line1 Lista tuturor sarcinilor disponibile Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Utilizați 'include bifate' pentru a include sau nu o sarcină selectată Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Execuția profilului finished full phrase: 'Execution of profile <PROFILENAME> finished' finalizată simulation mode mod simulare Could not update last execution time of tasks Nu se poate actualiza ultimul timp al execuției sarcinilor Last execution time of tasks updated Ultimul timp al execuției sarcinilor a fost actualizat &Abort &Abandonează &Minimize to tray tray menu action &Micșorează în bara de sistem &Restore tray menu action &Restaurează execution of profile: tray message - execution of profile: <PROFILENAME> in progress... execuția profilului: in progress... tray message - execution of profile: <PROFILENAME> in progress... în desfășurare... Removed all older snapshots data S-a eliminat toate datele vechi ale versiunii de rezervă failed to remove all older snapshots data a eșuat eliminarea tuturor datelor vechi ale versiunii de rezervă Unknown error Eroare necunoscută Elapsed time Timp scurs pre-task execution of command pre-sarcina execuției unei comenzi post-task execution of command post-sarcina execuției unei comenzi Now performing task Acum se execută sarcina Directory Director calculating se calculează deleting files se șterg fișiere Total files transferred trying to send an email se încearcă trimiterea unui email The system will shutdown in 1 minute Sistemul se va opri în 1 minut Source Sursa Destination Destinație All tasks completed Toate sarcinile sunt terminate No errors found Nu au fost găsite erori errors found au fost găsite erori logfile(s) have been created under directory: fișierul(ele) jurnal au fost create în directorul: Done Efectuat execution of profile: executarea profilului: finished finalizat Execution of tasks were terminated violently by user Execuția sarcinilor a fost terminată brusc de utilizator &Profile This is a top menu item &Profil &Settings This is a top menu item &Configurări &Language This is a top menu item &Limbă &Help This is a top menu item &Ajutor &Handbook full phrase: 'luckyBackup Handbook' &Ghid de utilizare &About full phrase: 'about luckyBackup' &Despre current profile profil curent include label of 'include' checkboxes include Move the highlighted task up, by one position button tooltip Mută în sus sarcina subliniată, cu o poziție Move the highlighted task down, by one position button tooltip Mută în jos sarcina subliniată, cu o poziție jump to next error button tooltip sari la următoarea eroare jump to previous error button tooltip sari la eroarea anterioară Task task groupbox (add, remove, modify buttons) label Sarcină add add task button label adaugă add task add task button tooltip adaugă sarcină remove remove task button label elimină remove highlighted task remove task button tooltip elimină sarcina subliniată modify modify task button label modifică modify highlighted task modify task button tooltip modifică sarcina subliniată Begin the execution of all included tasks start button tooltip Începe execuția tuturor sarcinilor incluse NOTE simulation checkbox tooltip - line2 NOTĂ Progressbar update will not be realistic simulation checkbox tooltip - line2 Actualizarea barei de progres nu va fi realistă Information window information window title Fereastră de informații Exit exit button tooltip. full phrase is: 'exit luckybackup' Ieșire EXIT EXIT button label IEȘIRE minimize to tray micșorează în bara de sistem minimizes the window to the tray area micșorează fereastra în zona barei de sistem F1 F1 English Romanian &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Ați solicitat să fie creată o sarcină de RESTAURARE Please have a good look at the following task properties dialog 'create restore' message line 2/4 Vă rugăm să priviți cu atenție la următorul dialog propietăți sarcină and change anything you wish before proceeding 'create restore' message line 3/4 și schimbați orice doriți înainte de a continua Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Verificați în special 'Nume sarcină', 'sursă', 'destinație' & 'omite fișierele destinație noi' căsuța de selectare (avansat) ERROR EROARE loading default profile ... information window message se încarcă profilul implicit... loading profile ... information window message se încarcă profilul... loading failed information window message încărcarea a eșuat Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Nu se poate deschide profilul is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y nu este valid pentru version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versiune: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' încărcat cu succes scheduled this refers to a profile programat YES DA NO NU Description Descriere saving default profile ... Information window message se salvează profilul implicit... saving profile ... Information window message se salvează profilul... WARNING ATENȚIE default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profil implicit profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' salvat cu succes creating default profile ... Information window message se creează profilul implicit ... creating profile ... Information window message se creează profilul ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' a fost creat cu succes Would you like to save it before proceeding ? Doriți să fie salvat înainte de a continua ? Would you like to proceed anyway? Doriți să continați oricum? super user super user is the root user administrator super user mode mod administrator Welcome to full phrase: 'Welcome to luckyBackup' Bine ați venit la English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Romanian Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' S-a eșuat la crearea noului profil The name you have entered contains only invalid characters Numele pe care l-ați introdus conține numai caractere nevalide Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' deja există Would you like to replace it ? Doriți să îl înlocuiți ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Nu s-a putut înlocui profilul Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Nu s-a putut redenumi profilul profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' redenumit cu succes în default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. profil implicit renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' redenumit cu succes în All relevant files (logs etc) have also been updated Toate fișierele relevante ( jurnale, etc. ) au fost deasemeni actualizate Failed to update all relevant files (logs etc) A eșuat actualizarea tuturor fișierelor relevante (jurnale etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Sunteți sigur că doriți să ștergeți profilul implicit a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' va fi creat unul gol, cu același nume Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Sunteți sigur că vreți să ștergeți profilul Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' A eșuat ștergerea profilului Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' șters cu succes All relevant files (logs etc) have also been deleted Toate fișierele relevante ( jurnale, etc. ) au fost deasemeni șterse Failed to delete all relevant files (logs etc) A eșuat ștergerea tuturor fișierelor relevante (jurnale etc) Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' configurează ca implicit All relevant files (logs etc) have also been duplicated Toate fișierele relevante ( jurnale etc. ) au fost deasemeni duplicate Failed to duplicate all relevant files (logs etc) A eșuat duplicarea tuturor fișierelor relevante (jurnale etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Descrierea profilului set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' configurat la Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importă profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' A eșuat importul profilului Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importat cu succes as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' ca and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' și s-a adăugat la lista profilurilor Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Nu se poate localiza fișierul You have reached the maximum limit of supported tasks Ați atins limita maximă de sarcini suportate You have to remove a task if you wish to add another !! Trebuie să eliminați o sarcină dacă doriți să adăugați alta !! Select export directory this is a dialog title for selecting a directory to export a profile to Selectati directorul de export Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Nu s-a putut exporta profilul to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' la Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exportat cu succes la The directory you have selected does not contain valid profile data Directorul pe care l-ați selectat nu conține date profil valide Errors occured during snapshots and logfiles transfer Au intervenit erori în timpul transferului fișierelor jurnal și versiunilor de rezervă Errors occured during snapshots transfer Au intervenit erori în timpul transferului versiunii de rezervă Errors occured during logfiles transfer Au intervenit erori în timpul transferului fișierului jurnal Errors occured during the profile file transfer Au intervenit erori în timpul transferului fișierului profil Please select a task to modify first Selectați întâi o sarcină de modificat Please select a task to remove first Selectați întâi o sarcină de eliminat Are you sure you want to remove the following task ?? Sunteți sigur că vreți să eliminați sarcinile următoare ?? Would you like to also remove: Doriți deasemeni să eliminați: Please select a task to manage first Selectați întâi o sarcină de administrat nothing to do nimic de făcut current crontab <font color=green>updated successfully fișierul crontab actual <font culoare=verde> s-a actualizat cu succes Email preferences have been <font color=green>updated successfully Preferințele pentru email au fost <font color=green>actualizate cu succes status stare NOT INCLUDED NU ESTE INCLUS Checks are disabled. This task will be <b>skipped</b> Bifările sunt dezactivate. Această sarcină va fi <b>omisă</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista de sarcini a profilului and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' și lista desfășurată a profilului refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' reîmprospătată luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Fereastră informații CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Se abandonează: Așteptați ca toate procesele să fie omorâte Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Se elimină versiunile de rezervă vechi și fișierele jurnal ale sarcinii Removing Se elimină failed to remove a eșuat eliminarea Failed to start this refers to a process A eșuat pornirea Crashed this refers to a process Avariat Timed out this refers to a process Expirat Write error this refers to a process Erorare scriere Read error this refers to a process Eroare citire Unknown error this refers to a process Eroare necunoscută calculating info message displayed during ...calculations se calculează transferring files info message displayed during ...file transfers se transferă fișiere deleting files info message displayed during ...file deletions se șterg fișiere transferring files se transferă fișiere Total files transfered Total fișiere transferate ABORTED ABANDONAT &Refresh This is a top 'Profile' menu action &Împrospătează De&fault This is a top 'Profile' menu action &Implicit Set as Default This is a top 'Profile' menu action tooltip Configurează ca Implicit &View/Edit Description This is a top 'Profile' menu action &Vizualizează/Editează Descrierea View/Edit the profile description This is a top 'Profile' menu action tooltip Vizualizează/Editează descrierea profilului R&ename This is a top 'Profile' menu action R&edenumește &Delete This is a top 'Profile' menu action &Șterge &New This is a top 'Profile' menu action &Nou &Save This is a top 'Profile' menu action &Salvează E&xport This is a top 'Profile' menu action E&xportă &Import This is a top 'Profile' menu action I&mportă S&chedule This is a top 'Profile' menu action &Programator E&mail This is a top 'Profile' menu action E&mail Email report after profile execution This is a top 'Profile' menu action tooltip Raport email după execuția profilului &Quit This is a top 'Profile' menu action &Termină D&uplicate This is a top 'Profile' menu action D&uplică &Task This is a top menu action &Sarcină &Add This is a top 'Task' menu action &Adaugă &Remove This is a top 'Task' menu action &Elimină &Modify This is a top 'Task' menu action &Modifică Create D&uplicate task This is a top 'Task' menu action Creează o sarcină d&uplicat Create R&estore task This is a top 'Task' menu action Creează o sarcină de r&estaurare Manage &Backup This is a top 'Task' menu action Administrare &Backup display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip afisează - restaurează - șterge backup-urile existente ale sarcinei selectate Actions This is a top menu action Acțiuni Current Profile This is a top menu action Profil curent Lock This is a top menu action. Refers to toolbars Blochează Show text under icons This is a top menu action Arată text sub miniaturi &Toolbars This is a top menu item &Bări de unelte Set paths This is a top menu action Configurează căile Set paths for rsync and ssh commands This is a top menu action tooltip Configurați căile pentru comenzile rsync și ssh quiet mode mod silențios Only show errors and important messages during window update Arată doar erorile și mesajele importante în timpul actualizării ferestrei Run start button label Rulează Abort Abort button label Abandonează Stop the execution of running tasks NOW Abort button tooltip Oprește execuția sarcinii ACUM Execution of tasks finished Done button tooltip S-a terminat execuția sarcinilor Dry simulation checkbox label. Translate this as 'simulation' Simulare This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Această acțiune va realiza o <b>rulare simulată</b> care nu va face nici o modificare (si produce de obicei aceiași ieșire ca o rulare reală) shutdown shutdown button label oprire Press down to shutdown the system when done shutdown button tooltip Apasă jos pentru a închide sistemul când s-a terminat Hide information window show/hide information window button tooltip Ascunde fereastra de informații Show information window show/hide information window button tooltip Arată fereastra de informații profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Lista sarcinilor este goală Use the "add" button on the right to get started Please keep the add word inside quotes Utilizați butonul "add" din dreapta pentru a incepe could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' nu se poate salva default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. profilul implicit could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' nu se poate creea Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' este modificat Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' nu se poate salva profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' A eșuat duplicarea profilului Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' A eșuat duplicarea profilului as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' ca și Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' a fost duplicat cu succes ca Please select a task to duplicate first Selectați întâi o sarcină de duplicat Please select a task first Selectați întâi o sarcină Hide information window hide/show information window button tooltip Ascunde fereastra informațiilor Show information window hide/show information window button tooltip Arata fereastra informațiilor You have only included tasks that are going to be skipped Aveți incluse numai sarcini care vor fi omise Manage Task This is a top 'Task' menu action Administrează sarcinile display information regarding highlighted task This is a top 'Task' menu action tooltip afișează informații privind sarcinile subliniate &Task &Sarcină Successfully created destination directory Directorul destinație a fost creat cu succes Failed to create destination directory A eșuat crearea directorului destinație manageDialog profile profil task sarcină Delete Șterge Restore Restaurează view log vizualizează jurnalul destination: destinație: source: sursă: hide source ascunde sursa Close this window Închide această fereastră Close Închide Please select a snapshot from the list Information message Selectați o versiune de rezervă din listă This directory does not exist Acest director nu există This directory does not exist Information message Acest director nu există I do not have sufficient permissions to read this directory Information message Nu există suficiente permisiuni de a citi acest director sync dir A full phrase: sync dir a: <DIRECTORY_A> Sincronizează directorul A sync dir B full phrase: sync dir a: <DIRECTORY_b> Sincronizează directorul B View the logfile of the selected sync task 'view log' pushbutton tooltip Vizualizează fișierul jurnal al sarcinii sincronizate selectate Please wait until the thread is terminated Așteptați până ce execuția este terminată STOP STOP Stop calculations NOW Oprește calculele ACUM Calculations terminated by user Calcule terminate de utilizator not available refers to a date-time indisponibil luckyBackup - manage backup luckyBackup - administrare backup Delete the selected snapshot and its logfile Șterge snapshot-ul selectat și fisierele jurnal ale acestuia Restore the selected snapshot Restaurează snapshot-ul selectat View the logfile of the selected snapshot Afișează fișierul jurnal al snapshot-ului selectat Calculate the differences between the source and the selected snapshot Se calculează diferențele dintre sursă și snapshot-ul selectat Calculate differences Se calculează diferențele manageWizard not available refers to a date-time indisponibil Delete backup this is the title of a wizard Șterge backup-ul Date & time simple label of the wizard gui Dată & timp Path ...is a directory path Cale WARNING ATENȚIE You are about to delete backup data information message - line1 Sunteți pe cale să ștergeți datele de backup If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Dacă informația de deasupra este corectă, apăsați <b>start</b> pentru a începe Restore backup this is the title of a wizard Restaurare backup Backup path ...is the backup directory path Cale backup close închide Deleting snapshot logfile info message displayed during ...logfile deletion Se șterge fișierul jurnal al snapshot-ului Updating list of snapshots info message displayed during ...snaps list update Se actualizează lista de snapshot-uri Aborted Abandonat Finished Finalizat simulation simulare no errors nici o eroare errors found au fost găsite erori Restoring data: main trunk info message displayed during ...data restoration Se restaurează date: segmentul principal Restoring data: snapshot files info message displayed during ...data restoration Se restaurează date: fișiere snapshot Deleting data info message displayed during ...data deletion Se șterg date luckyBackup - manage backup luckyBackup - administrare backup Jump to previous error Sări la eroarea precedentă previous error eroarea precedentă Jump to next error Sări la eroarea urmatoare next error eroarea următoare This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Aceasta va realiza o <b>rulare simulată</b> care nu va face nici o modificare (și produce de obicei aceiași ieșire ca și o rulare reală) start pornire ABORT ABANDON cancel anulare The restore directory will become identical to the backup snapshot Directorul de restaurare va deveni identic cu versiunea de siguranță Existing backup files will replace the corresponding files at the restore directory information message - line1. Fișierele de backup existente vor înlocui fișierle corespondente în directorul restaurat If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Dacă informația de mai sus este corectă, apăsați <b>start</b> pentru a începe success info message displayed after ...logfile deletion succes failed info message displayed after ...logfile deletion eșuat Deleting file that lists snapshot changes info message displayed during ...file deletion Șterge fișierele care listează modificările versiunii de rezervă success info message displayed after ...file deletion succes failed info message displayed after ...file deletion eșuat success info message displayed after ...snapshots list update succes Select new restore directory directory selection dialog title Selectați un nou director de restaurare Restore path ...is the restore directory path Calea de restaurare No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Nu există datele specificate ale versiunii de siguranță. Se omite... Check this, to clone the backup snapshot to the restore directory. Bifați aceasta, pentru a clona versiunea de siguranță cu directorul de restaurare. Delete existing data that do not exist at the backup Șterge datele existente care nu există la backup Browse locally for a new restore path Navigați local pentru o nouă cale de restaurat change schimbă <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple simplu advanced avansat Task name Nume sarcină Destination Destinație Source Sursă Task properties Proprietățile sarcinii Enter a name for this task (eg "Backup my home directory") Introduceți un nume pentru această sarcină (de exemplu "Arhivează directorul meu Acasă") Name : Nume : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definiți tipul acestei sarcini: 1. Crează copie de siguranță a sursei în interiorul destinației 2. Creează copie de siguranță a directorului sursă cu nume în interiorul destinației 3. Sincronizează sursa & destinația, păstrând cele mai recente fișiere la ambele Type : Tip : Synchronize Source and Destination Sincronizează sursa și destinația Enter the full path of the source directory (eg /home/luckyb/) Introduceți calea completă a directorului sursă (de exemplu /home/luckyb/) Source : Sursă : browse localy navigare locală Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Introduceți calea completă a directorului destinație (de exemplu /home/luckyb/) Destination : Destinație : eg -C4c arcfour,blowfish-cbc de exemplu -C4c arcfour, blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Cu această opțiune rsync va transfera numărul grupului și IDs utilizator în locul utilizării numelor utilizatorului și al grupului și le va mapa la ambele capete. (--numeric-ids) Use numeric group and user IDs Utilizează numărul grupului și IDs utilizator This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Aceasta va spune părții de recepție să încerce activități de super-utilizator chiar dacă recepția rsync nu a fost rulată de administrator. Aceste activități includ: păstrarea utilizatorilor prin --opțiuni propietar păstrarea tuturor grupurilor (nu doar grupurile utilizatorului curent) prin --opțiuni grupuri și copierea dispozitivelor prin --opțiuni dispozitive. (--super) Attempt super-user activities Încercați activități de super-utilizator Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Incercati sa arhivati fisierele deschise in sistemele windows utilizand vss (Functioneaza doar in windows 2000 sau mai nou) (--vss) Backup open files Backup fișiere deschise Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Restaureaza permisiunile windows arhivate localizate in nt-streams (--restore-nt-streams) Repeat any command that fails, x times Repetă orice comandă eșuată, de x ori Repeat on fail: Repetă în caz de eroare: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Bifați aici pentru a clona sursa în destinație Lăsați nebifat pentru a crea un director suplimentar în cadrul destinației Do NOT create extra directory NU crea un director suplimentar Advanced Avansat Shows the rsync command as it will be executed Afișează comanda rsync așa cum va fi executată validate validează Okay Ok Cancel Anulează Exclude Exclude Add any directory, file or pattern to be excluded from this task Adăugați orice director, fișier sau model pentru a fi exclus din această sarcină Templates Șabloane Exclude all temp folders (**/*tmp*/) Exclude toate dosarele temporare (**/*tmp*/) Temporary folders Dosare temporare Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Exclude dosarele montate de sistem /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Directoare montate de system Exclude all backup files & folders (**~) Exclude toate directoarele și fișierele de backup (**~) Backup files Fișiere backup System folders Dosare system Exclude all cache folders (**/*cache*/ & **/*Cache*/) Exclude toate dosarele de cache (**/*cache*/ & **/*Cache*/) Cache folders Dosare de cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Exclude toate dosarele de gunoi ale utilizatorului (**/*Trash*/, **/*trash*/) Trash Gunoi Exclude all "lost+found" folders (**/lost+found*/) Exclude toate dosarele "lost+found" (**/lost+found*/) lost+found lost+found User Defined Definit de utilizator Add exclusion as entered in the next field Adaugă excluderea ca intrare în următorul câmp add adaugă Exclude list Listă de excludere Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Introduceți aici fișierul, dosarul sau modelul și apoi apăsați butonul "adaugă" de a le adăuga la lista de excluderi * - potrivește orice componentă care nu este goală (se oprește la linii oblice) ** - potrivește orice incluzând liniile oblice ? - potrivește orice caracter cu excepția unor linii oblice urmărește nume_director/*** - potrivește ambele directoare & orice în ele pornește / -modelul este ancorat la un anumit punct în ierarhia transferului (normal este "sursa") urmărește / - nnumai directoarele potrivite, nu fișierele obișnuite, Symlink sau dizpozitive Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definiți tipul acestei sarcini: 1. Backup directorul sursă, în interiorul destinației (vdeți si "NU crea directorul") 2. Sincronizează sursa & destinația, păstrând cele mai recente fișiere la ambele Backup Source inside Destination Backup sursa în destinație Description Descriere Task description Descrierea sarcinii Type a description of the task Introduceți o descriere a sarcinii Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude dosarele de system /var, /proc, /dev, & /sys (/var/run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Exclude toate dosarele .gvfs ale utilizatorului (**/.gvfs/) launch the pattern editor lansează editorul de modele Remove highlighted exclusion from list Elimină excluderea selectată din listă remove elimină Edit highlighted inclusion Editează includerea selectată edit editare Move highlighted inclusion up Mută în sus includerea selectată move up mută în sus Move highlighted inclusion down Mută în jos includerea selectată move down mută în jos Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Include DOAR aceasta listă de modele. Nimic mai mult. Consultați manualul pentru a ințelege mai bine regulile de includere. Aceasta va dezactiva funcția de excludere. Only Include Include doar Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Introduceți aici fișierul, dosarul sau modelul și apoi apăsați butonul "adaugă" de a le adăuga la lista de excluderi * - potrivește orice componentă care nu este goală (se oprește la linii oblice) ** - potrivește orice incluzând liniile oblice ? - potrivește orice caracter cu excepția unor linii oblice urmărește nume_director/*** - potrivește ambele directoare & orice în ele pornește / -modelul este ancorat la un anumit punct în ierarhia transferului (normal este "sursa") urmărește / - nnumai directoarele potrivite, nu fișierele obișnuite, Symlink sau dizpozitive Add inclusion as entered in the next field Adaugă includerea ca înscrisă în câmpul următor Include list Lista de includere Remove highlighted inclusion from list Elimină includerea selectată din listă Remote Distant Use a remote host either for source or destination Utilizează o gazdă distantă fie ca sursă sau destinație Use remote host Utilizează gazda distantă Use a remote host for destination data. Utilizează o gazdă distantă pentru destinația datelor. destination destinație Use a remote host for source data. Utilizează o gazdă distantă pentru sursa datelor. source sursă User: Utilizator: Enter your username for the remote host (leave blank if not applicable). Introduceți numele de utilizator pentru gazda distantă (lăsați necompletat dacă nu este cazul). @Host: @Gazdă: Enter the name of the remote host. Introduceți numele gazdei distante. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Introduceți calea completă a fișierului care conține parola de autentificare pentru rsync (nu pentru ssh) - (lăsați necompletat dacă nu este cazul). rsync password file: fișier parolă rsync: Check this to connect to an rsync Remote module Bifați aici pentru conectare la un modul rsync distant Remote module Modul distant Use ssh as transport shell Utilizați ssh ca suport transport ssh ssh password: parola: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Introduceți calea completă a fișierului care conține cheia privată de autentificare pentru ssh (lăsați necompletat dacă nu este cazul). Notați că aveți de efectuat toate acțiunile necesare unei conexiuni distante ssh fără parolă utilizând o pereche de chei OpenSSH private key file : fișierul cu cheia privată: Enter the port you would like to use for the ssh connection (leave blank for default port) Introduceți portul pe care doriți să-l utilizați pentru conexiunea ssh (lăsați necompletat pentru portul implicit) port : port : Command Options Opțiuni comandă Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Adăugați sau ștergeți orice opțiuni rsync. Dacă nu știți ce înseamnă asta, lăsați-le neatinse !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Șterge fișierele din destinație care nu există în sursă. "Recursiv în directoare" trebuie selectat (--delete-after & --delete-excluded dacă "Exclude" este utilizat) Copy device (super user only) & special files as they are (-D) Copiază dispozitivele (numai ca administrator) & fișierele speciale așa cum sunt ele (-D) Preserve device, special files Păstrează dispozitivele, fișierele speciale Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Fișierele care sunt legate împreună în sursă vor fi legate în același mod la destinație ATENȚIE: Toate fișierele trebuiesc incluse în setul de transfer !! (-H) Preserve hard links Păstrează hard link-urile Delete files on the destination Șterge fișierele la destinație Recurse into directories (-r) Recursiv în directoare (-r) Recurse into directories Recursiv în directoare Do not backup source files that are newer on the destination (--update) Nu crea fișiere de rezervă a sursei care sunt mai noi la destinație (--update) Skip newer destination files Omite fișierele destinației mai noi Preserve the owner (super user only), group & time stamp of files (-tgo) Păstrează proprietarul (doar în mod administrator), grupul & marcajul de timp al fișierelor (-tgo) Preserve ownership, times Păstrează proprietarul, timpul Preserve permissions of files (-p) Păstrează permisiunile fișierelor (-p) Preserve permissions Păstrează permisiunile Copy symlinks as symlinks (-l) Copiază legăturile simbolice ca legături simbolice (-l) Preserve symlinks Păstrează legăturile simbolice Ignore files using a similar algorithm to CVS (-C) Ignoră fișierele utilizând un algoritm similar cu CVS (-C) Ignore files the CVS way Ignoră fișierele în modul CVS User defined Definit de utilizator Enter here an rsync option to add (eg "--delete-excluded", "-X") Introduceți aici o opțiune rsync de adăugat (de exemplu "--delete-excluded", "-X") Extra rsync options list Listă de opțiuni rsync suplimentare Remove highlighted option from list Eliminați opțiunea evidențiată din listă Add rsync option as entered in the next field Adaugă opțiunea rsync ca introdusă în câmpul următor options list lista de opțiuni Also Execute Execută deasemeni Execute extra commands, before or after the task. Execută comenzile suplimentare, înainte sau după sarcină. Before Înainte Enter here a command to be executed before the task and then press the "add" button to add it to the list below Introduceți aici o comandă pentru a fi executată înainte de sarcină și apoi apăsați butonul "Adaugă" pentru a o adăuga la lista de mai jos Add command as entered in the field beside Adaugă comanda ca introdusă în câmpul de alături Command list Lista de comenzi Remove highlighted command from list Elimină comanda evidențiată din listă Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Execută sarcina chiar dacă apare cu un mesaj de ATENȚIE Utilizată în mod normal atunci cand comenzile "Execută înainte" pot remedia o atenționare (de exemplu montarea partițiilor) ATENȚIE: validați opțiunea doar dacă stiți sigur ceea ce faceți by-pass WARNING treci peste ATENȚIE After După Enter here a command to be executed after the task and then press the "add" button to add it to the list below Introduceți aici o comandă pentru a fi executată după sarcină și apăsați butonul "Adaugă" pentru a o adăuga la lista de mai jos Select source directory file selection dialog title Selectați directorul sursă Select destination directory file selection dialog title Selectați directorul destinație Select rsync password file file selection dialog title Selectați fișierul parolă rsync Select ssh keyfile file selection dialog title Selectați fișierul cheie SSH Select command to be executed file selection dialog title Selectați comanda care va fi executată Select file to read include patterns file selection dialog title Selectați fișierul pentru a citi modelele incluse Select file to read exclude patterns file selection dialog title Selectați fișierul pentru a citi modelele excluse Please define the source before launching the pattern editor message box, message Definiți sursa înainte de a lansa editorul de model ERROR message box message EROARE Please specify the following before proceeding: message box, message Specificați următoarele înainte de a începe: ERROR message box message - line1 EROARE That is not allowed because '/' does not have an actual name message box message - line2 Acest lucru nu este permis deoarece '/' nu are un nume curent Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Lăsați boxa selectată, pentru a <b>OPRI</b> execuția sarcinii care rulează dacă această comanda se termină cu o eroare use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated utilizați căsuțele pentru a <b>OPRI</b> execuția sarcinii la eroare You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Ați declarat directorul '/' (rădăcină) ca sursă și NU ați bifat căsuța 'NU crea director suplimentar' Please check the relevant box before proceeding message box message - line3 Bifați căsuța relevantă înainte de a continua You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Ați declarat directorul rădăcină al unei întregi partiții ca sursă și NU ați bifat căpsuța 'NU creați director suplimeñtar' That is not allowed because the root partition does not have an actual name message box message - line2 Acest lucru nu este permis doarece partiția rădăcină nu are un nume actual The name of the task you requested already exists message box message - line1 Numele sarcinii solicitate există deja Please specify a different name before proceeding message box message - line2 Specificați un nume diferit înainte de a începe The source you have declared is identical to the destination message box message - line1 Sursa pe care ați declarat-o este identică cu destinația Please modify at least one of them message box message - line2 Modificați cel puțin una dintre ele WARNING message box message - line1 ATENȚIE You have declared a destination that is part of the source directory structure message box message - line1 Ați declarat o destinație care este parte a structurii directorului sursă <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Nu uitați</b> să definiți un director în zona 'excludere' care va conține destinația You have checked the 'delete files on the destination' option message box message - line2 Ați selectat opțiunea 'stergeți fișierele la destinație' without having checked 'Recurse into directories' which is required message box message - line3 fără a selecta 'Recursiv în directoare' care este necesară 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Gazdă distantă' este bifată, dar nu este declarat nici un nume pentru gazda distantă Please specify a remote host name message box message - line3 Specificați un nume pentru gazda distantă Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Altfel debifați 'Gazdă distantă' pentru a opera local All declared fields of the task properties window seem to be ok message box message first line Toate câmpurile declarate în fereastra de proprietăți a sarcinii par a fi în regulă Errors have been found message box message first line Au fost găsite erori command to be executed full phrase: command to be executed: <COMMAND> comandă de executat You have already added this exclude item message box message Deja aveți adăugat acest element exclus You have already added this include item message box message Deja aveți adăugat acest element inclus You have already added this option message box message Deja aveți adăugată această opțiune done finalizat done editing editare finalizată cancel anulare cancel editing anulează editarea Read exclude patterns from file Citește modelele excluse din fișier Read file: Citește fișierul: filename nume fișier browse navigare ... ... Include Include Add any directory, file or pattern to be included by this task Adăugați orice director, fișier sau model pentru a fi inclus în această sarcină Include mode Mod includere Mode: Mod: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Nu excludeți această listă de modele. Consultați manualul pentru o mai bună înțelegere a regulilor de includere. Normal Include Includere normala Read include patterns from file Citește modelele incluse din fișier browse locally navigați local additional options: opțiuni suplimentare: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Bifați aici dacă utilizați o partiție FAT/NTFS ca destinație. Datele propietarului și permisiunile NU vor fi păstrate. (-t --modify-window=1) Destination is FAT/NTFS Destinația este FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Incercati sa arhivati fisierele deschise in sistemele windows utilizand vss (Functioneaza doar in windows 2000 sau mai nou) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Restaurează permisiunile Set the total number of backup snapshots to keep Configurați numărul total de versiuni de rezervă de păstrat Snapshots to keep: Versiuni de rezervă de păstrat: patternEditor directory : director : Select file Selectare fișier Please choose a file within the source Alegeți un fișier în sursă Select directory Selectare director Please choose a directory within the source Alegeți un director în sursă file : fișier : pattern editor editor model Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Bifați aceasta pentru a utiliza directorul de mai sus ca o cale absolută dacă este nebifat, modelul va potrivi orice fișier/director care îndeplinește criteriul de "nume" Define here, what would you like the pattern to refer to Definiți aici, la ce var place ca modelul să se refere The pattern refers to a: Modelul se referă la: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Utilizati aceasta dacă modelul face se referă la un anumit fișier de exemplu "/media/music/album/song.mp3" Specific file Fișier specific Use this if the pattern refers to a specific directory eg "/media/music/Album/" Utilizați aceasta dacă modelul se referă la un anume director de exemplu "/media/music/Album/" Specific directory Director specific Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Utilizați aceasta dacă modelul se referă la un set de fișiere care au ceva în comun de exemplu toate fișierele cu o extensie ".txt" Set of files Set de fișiere Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Utilizați aceasta dacă modelul se referă la un set de directoare care au ceva în comun de exemplu toate directoarele denumite ca "temp" Set of directories Set de directoare name nume starts with : începe cu : Enter here the starting characters of the name of the files/directories that the pattern refers to Introduceți aici caracterele de început a numelui fișierelor/directoarelor la care se referă modelul ends with : se termină cu : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Introduceți aici caracterele de sfârșit a numelui fișierelor/directoarelor la care se referă modelul de exemplu pentru a se referi la toate fișierele ".txt", introduceți .txt Enter here the name of the files/directories that the pattern refers to Introduceți aici numele fișierelor/directoarelor la care se referă modelul is exactly : este exact : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Introduceți aici caracterele conținute în orice poziție a numelui fișierelor/directoarelor la care se referă modelul contains : conține : browse localy for a file navigați local pentru un fișier browse localy for a directory path navigați local pentru calea unui director use absolute path utilizați calea absolută Go deeper in path by : Mergi mai adânc în cale cu : Go deeper in path by any level Mergi mai adânc în cale cu orice nivel any orice Define here the name criteria for the files/directories to be matched Definiți aici numele criteriului pentru fișiere/directoare pentru a fi potrivite final pattern model final The actual pattern is displayed here Modelul actual este afișat aici Reset the pattern editor fields to the default values Resetează câmpurile editorului de model la valorile implicite reset reset Okay Ok Cancel Anulare Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Utilizați asta pentru a vă referii la sub-directoare în profunzime ex Directorul "/media/music" include 3 sub-directoare: 1.Rock 2.Jazz 3.Soundtracks și ați dori să vă referiți la tot conținutul acestor trei, definiți următoarele: * Set de directoare * Doar conținutul * calea:/media/music/ * Mergi mai adânc în cale cu "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Utilizați asta dacă modelul se referă la conținutul unui director (sau un set de directoare), nu directorul însuși ex conținutul directorului "/media/music/Album/" Directory contents Conținutul directorului scheduleDialog Starting from scratch Se pornește de la zero No schedules are declared !! Nu sunt declarate programări !! Unable to create schedule file Nu se poate crea fișierul de programare You have reached the maximum limit of supported scheduled profiles Ați atins limita maximă suportată de profile programate You have to remove an item if you wish to add another Trebuie să ștergeți un element dacă doriți să adăugați altul Add profile schedule Adaugă programare profil Modify profile schedule Modifică programare profil Profile schedule details Detalii programare profil Invalid profile Profil nevalid Execute profile Execută profilul hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> orară la minut at la every fiecare day zi Sunday Duminică Monday Luni Tuesday Marți Wednesday Miercuri Thursday Joi Friday Vineri Saturday Sâmbătă & on the & pe st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month a oricărei luni of de January full phrase: 'of January' Ianuarie February full phrase: 'of February' Februarie March full phrase: 'of March' Martie April full phrase: 'of April' Aprilie May full phrase: 'of May' Mai June full phrase: 'of June' Iunie July full phrase: 'of July' Iulie August full phrase: 'of August' August September full phrase: 'of September' Septembrie October full phrase: 'of October' Octombrie November full phrase: 'of November' Noiembrie December full phrase: 'of December' Decembrie Unable to create cron file Nu se poate creea fișierul cron luckyBackup - schedule luckyBackup - orar <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programarea executării profilului</span></p></body></html> Add a new profile schedule Adaugă o nouă programare profil add adaugă Modify selected profile schedule Modifică programarea profilului selectată modify modifică Remove selected profile schedule Elimină programarea profilului selectată remove elimină Profile : Profil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Omite sarcinile care apar cu un mesaj de atenționare 'CRITIC' după verificarea directoarelor skip critical omite critic time (hour:min) : timp (oră:minut) : set this value to -1 for the schedule to occur every hour configurează această valoare la -1 pentru programator pentru a avea loc în fiecare oră : : :delay :întârziere Delay luckybackup execution at startup Întârzie execuția luckybackup la pornire min means: minutes (time) min day of week : ziua săptămânii : Any Oricare month : luna : January Ianuarie February Februarie March Martie April Aprilie May Mai June Iunie July Iulie August August September Septembrie October Octombrie November Noiembrie December Decembrie day of month : ziua lunii : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Bifați asta dacă mașina dumneavoastră nu suportă un mediu grafic (ex server) Console Mode Mod terminal okay gata Cancel Anulare schedule the execution of profiles as declared in the list above programează execuția profilelor așa cum sunt declarate în lista de mai sus cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Fișierul de programare curent nu este autentic luckyBackup v. file BEWARE of the whitespace before file fișier You have made changes without clicking the cronIT button Ați făcut schimbări fără să apăsați butonul cronIT Are you sure you want to close the schedule dialog ? Sunteți sigur că vreți să închideți dialogul de programare ? Your crontab is updated successfully Fișierul cu comenzi programate a fost modificat cu succes no crontab entries exist nu există intrări în fișierul cu comenzi programate crontab content conținutul fișierului cu comenzi programate once, at system startup full phrase: Execute profile xxxxx, once at system startup odată, la pornirea sistemului Run once, at startup Rulează odată, la pornire @ reboot @ repornire close this dialog Închide acest dialog close închide Display the current crontab Afișează fișierul curent de comenzi programate view current crontab vizualizează fișierul curent de comenzi programate textDialog Enter the name of the new profile : Introduceți numele noului profil : Enter the new name of the profile : Introduceți noul nume al profilului : Profile description : Descrierea profilului : A profile with the same name already exists Deja există un profil cu același nume Please enter a different name Introduceți un nume diferit Enter pasword : Introduceți parola : Enter passphrase : Introduceți fraza de identificare : Do not show this again for this task Nu arăta asta din nou pentru acestă sarcină You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Ați selectat "Arhivează conținutul directorului sursă"<br>împreună cu opțiunea "șterge fișierele la destinație" BEWARE, if your intention is NOT to clone source to destination !! FIȚI ATENT, dacă intenția dumneavoastră NU este să clonați sursa la destinație !! Are you sure you wish to proceed ?? Sunteți sigur că vreți să continuați ?? luckyBackup luckyBackup Okay Gata Cancel Anulează Copy command to clipboard Copiază comanda în memoria temporară eMail information informație eMail No Nu Yes Da winDialog luckyBackup luckyBackup declaration of paths declararea căilor rsync: rsync: Enter the full path of the rsync command Introduceți calea completă a comenzii rsync browse locally navigați local Use default value Utilizați valoarea implicită ssh: ssh: Enter the full path of the ssh command Introduceți calea completă a comenzii ssh cygpath: cygpath: Enter the full path of the cygpath command Introduceți calea completă a comenzii cygpath dosdev: dosdev: Enter the full path of the dosdev command Introduceți calea completă a comenzii dosdev main dir: director principal: Enter the full path of the luckybackup directory Introduceți calea completă a directorului luckybackup vshadow dir: director vshadow: Enter the full path of the vshadow directory Introduceți calea completă a directorului vshadow temp dir: director temporar: Enter the full path of the temporary directory Introduceți calea completă a directorului temporar Okay Gata Cancel Anulează Select rsync command file selection dialog title Selectați comanda rsync Executable Files (*.exe) Fișiere executabile (*.exe) Select ssh command file selection dialog title Selectați comanda ssh Select cygpath command file selection dialog title Selectați comanda cygpath Select dosdev command file selection dialog title Selectați comanda dosdev luckybackup-0.5.0/translations/luckybackup_pl.ts0000666000175000017500000071267613165410113021520 0ustar luckybluckyb CalcDiffThread Scanning destination Miejsce docelowe skanowania Please wait Proszę czekać Scanning snapshot Skanowanie migawki Scanning source Źródło skanowania Calculating differences Obliczanie różnic Sync dir A & B differences Synchronizuj katalogi A i B Snapshot and source differences Migawka i źródło różnic Sync dir B data that also exists at sync dir A and is different Synchronizuj dane katalogu B, które tak samo istnieją w katalogu A i są różne Snapshot data that also exists at the source and is different Dane migawki, które także w źródle istnieją i się różnią The snapshot data will replace the source data during RESTORE Dane migawki zostaną zastąpione danymi źródłowymi podczas PRZYWRACANIA Data amount is huge. Displaying only first entries Ilość danych jest bardzo duża. Pokazano tylko pierwsze wpisy Sync dir B data that do NOT exist at sync dir A Synchronizacja danych katalogu B, które NIE istnieją w synchronizowanym katalogu A Snapshot data that do NOT exist at the source Dane migawki, które NIE istnieją w źródle These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Te zostaną przeniesione do źródła podczas PRZYWRACANIA Sync dir A data that do NOT exist at sync dir B Synchronizacja danych katalogu A, które NIE istnieją w synchronizowanym katalogu B Source data that do NOT exist at the snapshot Dane źródłowe, które NIE ISTNIEJĄ w migawce These will be deleted during RESTORE only if you enable the option: Te zostaną usunięte podczas PRZYWRACANIA tylko w przypadku włączenia opcji: delete existing source data that do not exist at the backup usuń istniejące dane źródłowe, które nie mają kopii zapasowej QObject The task list is empty Ta lista zadań jest pusta nothing to start nie ma nic do rozpoczęcia You have included both of the following connected tasks: Masz dodane obydwa z następujących powiązanych zadań: this is not allowed for obvious reasons z oczywistych względów nie można na to pozwolić Please <b>uncheck appropriate include boxes</b> before proceeding Proszę <b>odznaczyć odpowiednie opcje</b> przed procesem You have not included any tasks Nie dodałeś żadnych zadań The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Następujące dodane zadania <b> dzielą ten sam katalog docelowy</b> (wszystkie razem albo w grupach) i co najmniej jedno z nich będzie archiwizowało zawartość katalogu this will lead to one task canceling the other to doprowadzi do tego, że jedno zadanie anuluje inne Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Proszę odznaczyć odpowiednie opcje albo zmienić wszystkie typy zadań innych niż '<b>Kopia zapasowa zawartości katalogu</b>' albo użyj 'Kopia zapasowa zawartości katalogu' razem z '<b>Tylko uwzględnij</b>' opcje, przed procesem pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Wykonywanie poleceń przed zadaniem starting Full phrase: pre-task execution of command: <COMMAND> starting uruchamianie Command re-run due to failure This means that a specific command is run for once more because it failed the first time Ponowne wykonanie polecenia z powodu błędu post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Wykonywanie poleceń po zadaniu starting Full phrase: post-task execution of command: <COMMAND> starting uruchamianie execution of task Full phrase: execution of task: <TASKNAME> starting Wykonanie zadania starting Full phrase: execution of task: <TASKNAME> starting Start Source Full phrase: source: <SOURCE_NAME Źródło Destination Full phrase: Destination: <DEST_NAME Miejsce docelowe execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Wykonanie 1. części zadania starting Full phrase: execution of 1st part of task: <TASKNAME> starting start Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Synchronizuj to Full phrase: Syncing <DIR-A> to <DIR-B> do execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Wykonanie 2. części zadania starting Full phrase: execution of 2nd part of task: <TASKNAME> starting Start Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Synchronizuj to Full phrase: Syncing <DIR-B> to <DIR-A> do pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Wykonywanie poleceń przed zadaniem finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished zakończono post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Wykonywanie poleceń po zadaniu finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished zakończono execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Wykonanie 1. części zadania finished Full phrase: execution of 1st part of task: <TASKNAME> finished zakończono execution of task Full phrase: execution of task: <TASKNAME> finished wykonanie zadania finished Full phrase: execution of task: <TASKNAME> finished zakończono execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error wykonanie zadania finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error zakończono z powodu błędów wykonania poleceń przed/po zadania The process reported an error Proces zgłosił błąd Backing-up profile, logfiles and snapshot data Profil kopii zapasowych, logi i dane migawki Could not open the logfile Nie można otworzyć pliku z logami The logfile does not exist Plik z logami nie istnieje The specified command is probably not installed Ta specyficzna komenda jest prawdopodobnie nie zainstalowana The logfile could not be created Plik z logami nie mógł zostać utworzony command: komenda: exit code: kod wyjścia: output: wyjście: Last execution time Ostatni czas wykonania not available niedostępne no errors brak błędów errors found znaleziono błąd status stan OK OK Sync directory Katalog synchronizacji Source directory Katalog źródłowy Using remote, check is skipped Użyj zdalnie, sprawdzanie jest pomijane Destination directory Katalog docelowy free as in free disk space wolne WARNING UWAGA I do not have the permission to read/enter sync directory A Nie mam uprawnienia do czytania/otwierania synchronizowanego katalogu A I do not have the permission to read/enter the source directory Nie mam uprawnienia do czytania/otwierania katalogu źródłowego I do not have the permission to read/enter sync directory B Nie mam uprawnienia do czytania/otwierania synchronizowanego katalogu B I do not have the permission to read/enter the destination directory Nie ma uprawnienia do czytania/otwierania katalogu docelowego Directory Katalog and/or i/albo does not exist nie istnieje is not mounted jest nie zamontowany is empty or does not exist jest pusty albo nie istnieje I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option To zadanie <font color=red><b>NIE ZOSTANIE POMINIĘTE</b></font>, ponieważ włączyłeś opcje "omijaj OSTRZEŻENIA" This task will be <font color=red><b>skipped</b></font> To zadanie zostanie <font color=red><b>pominięte</b></font> CRITICAL KRYTYCZNY is empty jest pusty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway To zadanie<font color=orange><b>nie zostanie pominięte</b></font>. Synchronizacja zostanie mimo to wykonana. This task will <font color=orange><b>not be skipped To zadanie <font color=orange><b>nie będzie pominięte The Destination Directory will be created if it doesn't exist and filled with new backup data Katalog docelowy zostanie utworzony, jeśli nie istnieje i wypełniony nowymi danymi kopii zapasowych Task description Opis zadania ReadLogFile Could not locate the logfile Could not open the logfile Nie można otworzyć pliku z logami aboutDialog using Qt4 użycie Qt4 Backup & Sync Application Aplikacja do kopii zapasowych i synchronizacji Loukas Avgeriou Loukas Avgeriou It 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. Jest on rozpowszechniony w nadziei, że będzie użyteczny, ale BEZ JAKIEJKOLWIEK GWARANCJI; nawet bez gwarancji ODPOWIEDZIALNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONEGO CELU. See the 'License Agreement' tab for more details. Zobacz "Umowę licencyjną" dla dalszych szczegółów. Athens, Greece Ateny, Grecja Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Oficjalny opiekun paczek Arch linux (AUR) Valuable advisor Cenny doradca Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Autor paczki rpm, cenny tester i zdalny doradca Patrick Matthaei Patrick Matthaei Debian package maintainer Opiekun paczki dla Debiana Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Grecki tłumacz GUI i cenny tester The indifex team Zespół indifex for developing the wonderful transifex localization platform and providing it for free za opracowanie wspaniałej platformy lokalizacyjnej Transifex i dostarczanie go za darmo Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Opiekun paczki dla OpenSUSE (KDE4 Community repo) i cenny doradca Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Opiekun paczki dla Mepis (Community repo) i hiszpański tłumacz GUI Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Opiekun paczki dla Ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows port do MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Współtwórca kodu obsługi zdalnej i vss dla portu Windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port do Mac OS X Elbert Pol Elbert Pol port to OS/2 port do OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Opiekun Gentoo ebuild Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Opiekun Puppy pet & sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Opiekun paczki dla Mandriva (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Opiekun paczki dla FreeBSD Dimitris Jemos Dimitris Jemos Slackel package maintainer Opiekun paczki dla Slackel ex Fedora package maintainer Opiekun paczki dla Fedora Pavel Fric Pavel Fric Czech gui translator Czeski tłumacz GUI Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Grecki tłumacz podręcznika German gui translator Niemiecki tłumacz GUI Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portugalski tłumacz GUI Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Francuski tłumacz GUI i cenny doradca pakietowania (i nie tylko) Raffaele Raffaele Italian gui translator Włoski tłumacz GUI using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Rosyjski tłumacz GUI i cenny tester Kenny Verstraete Kenny Verstraete Dutch gui translator Holenderski tłumacz GUI Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Bośniacki tłumacz GUI oraz opiekun paczki dla Mandriva Majed Sahli Majed Sahli Arabic gui translator Arabski tłumacz GUI Adrian Murariu Adrian Murariu Romanian gui translator Rumuński tłumacz GUI Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer projektant GUI v0.3 fri13 fri13 v.0.3 gui designer projektant GUI v0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Bez niego i jego tutoriali nie uruchomiłbym tego projektu Thomas Glatt Thomas Glatt French gui translator Francuski tłumacz GUI Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Hiszpański tłumacz GUI Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Szwedzki tłumacz GUI Catalan gui translator Kataloński tłumacz GUI Slovak gui translator Słowacki tłumacz GUI Rivo Zangov Rivo Zangov Estonian gui translator Estoński tłumacz gui Nicolay Boychev Nicolay Boychev Bulgarian gui translator Bułgarski tłumacz gui Manuel Meixide Manuel Meixide Galician gui translator Galicyjski tłumacz gui Roger Foss Roger Foss Norwegian gui translator Norweski tłumacz gui Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Chiński (tajwański) tłumacz gui Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Gość specjalny, zabójca błędów ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist cenny tester i specjalista burzy mózgów Yuri Vidal Yuri Vidal backupwhenidle python script developer twórca skryptu Pythona backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester cenne testy w systemach OS/2 i Windows ...to all users of the ...do wszystkich użytkowników forums for their support. Fora dla wsparcia Especially W szczególności that contributed to this project one way or another który przyczynił się do tego projektu w ten czy inny sposób Last but no least Na sam koniec Could not locate the license file Nie można znaleźć pliku licencji no money żadnych pieniędzy If you like this app and would like to donate something to me personally, all you have to do is: Jeśli podoba ci się ta aplikacja i chciałbyś mi osobiście coś ofiarować, wszystko co musisz zrobić: Give a thumbs up at: Polub na: Vote good & become a fan at: Głosuj i zostań fanem na: This is my reward :) To jest moja nagroda :) money pieniądze I personally never had and never will accept money for this project. Osobiście nigdy nie miałem i nie będę akceptował pieniędzy za ten projekt. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Niemniej jednak postanowiłem wykorzystać luckyBackup, aby wspierać ludzi, którzy naprawdę potrzebują pomocy finansowej. So, please consider it seriously to donate money that will eventually be used for a good cause. Proszę więc poważnie rozważyć ofiarowanie pieniędzy, które ostatecznie zostaną użyte w dobrym celu. donation link donation link luckyBackup - about O luckyBackup close zamknij &About &O <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Wsparcie A&uthor &Autor &Thanks to &Podziękowania dla &License Agreement &Umowa licencyjna luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup jest rozpowszechniany zgodnie z warunkami <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! To jest <b>wolne oprogramowanie</b>: możesz je dalej rozpowszechniać i/albo modyfikować zgodnie z warunkami GNU General Public License, wydanymi przez Free Software Foundation, wersja licencji 3. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Opiekun paczki dla Fedory (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Słoweński tłumacz gui E. Hakan Duran E. Hakan Duran Turkish gui translator Turecki tłumacz gui Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Opiekun paczki dla Slackware (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...moją drugą połowę <b>Dimitra</b>, która spędza cały ten czas poświęcony rozwojowi tego projektu emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Wyślij email po wykonaniu profilu command: Komenda: Use default This means "use the default value for this field" Użyj domyślnego Arguments Argumenty %f from: %f z: Enter the sender of the message Podaj nadawcę wiadomości %l logfile %l plik z logami %c logfile.tar.gz %c logfile.tar.gz %d date %d data %i time %i czas %p profile name %p nazwa profilu %e No of errors %e Liczba błędów If unchecked "TLS auto" is used. Only available for sendemail Jeśli nie jest zaznaczone, zostanie użyta opcja "TLS auto". Dostępne jedynie dla sendemail Disable TLS Wyłącz TLS %t to: %t do: Enter the recipient of the message Podaj odbiorcę wiadomości %s subject: %s temat: Enter the subject of the message Podaj temat wiadomości %v smtp server: %v SMTP serwer: Enter the smtp server used to send the message Podaj SMTP serwer do wysłania wiadomości %b body: %b tekst: Enter the body of the message Napisz wiadomość Send an email right now to test the provided arguments Wyślij teraz wiadomość email, aby przetestować podane argumenty Test Test Accept changes and close dialog Zaakceptuj zmiany i zamknij okno dialogowe Okay Okay Close dialog Zamknij okno dialogowe Cancel Zamknij Specify the conditions to send an email Określ warunki wysłania wiadomości email Enter the command to run eg sendemail Wprowadź komendę uruchamiającą np. sendemail arguments: argumenty: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Wprowadź argumenty dla polecenia email np. -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Warunki Only send when error(s) occurred during a run Wysyłaj tylko, gdy błąd (błędy) wystąpił(y) podczas uruchamiania Error(s) occurred Błąd (błędy) wystąpił(y) Only send when profile is scheduled to run Wysyłaj tylko jeśli profil jest zaplanowany do wykonania Profile is scheduled Profil jest zaplanowany Never send an email Nigdy nie wysyłaj email Never Nigdy The command field is empty Pole komend jest puste helpBrowser luckyBackup - help luckyBackup - pomoc manual/ podręcznik/ Okay Okay logDialog luckyBackup - tasks execution progress luckyBackup - postęp wykonania zadań <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error poprzedni błąd next error następny błąd close zamknij loading logfile... wczytywanie pliku z logami... wait czekaj luckyBackupWindow commands output output window label wyjście komend rsync and pre/post task commands output is displayed here tooltip rsync i przed/po zadania komend wyjścia zostały pokazane tutaj Task list task list label Lista zadań List of all the available tasks task list tooltip - line1 Lista wszystkich dostępnych zadań Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Użyj "Dołącz pola wyboru" w celu objęcia lub nie wybranego zadania Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Wykonanie profilu finished full phrase: 'Execution of profile <PROFILENAME> finished' zakończono simulation mode tryb symulacji Could not update last execution time of tasks Nie można zaktualizować ostatniego czasu wykonania wyjścia Last execution time of tasks updated Zaktualizowano ostatni czas wykonania zadań &Abort &Przerwij &Minimize to tray tray menu action &Minimalizuj do tray &Restore tray menu action &Przywróć execution of profile: tray message - execution of profile: <PROFILENAME> in progress... Wykonanie profilu in progress... tray message - execution of profile: <PROFILENAME> in progress... w toku... Removed all older snapshots data Usunięto wszystkie starsze dane migawki failed to remove all older snapshots data Usuwanie wszystkich starszych danych migawki nie powiodło się Unknown error Nieznany błąd Elapsed time Upływający czas pre-task execution of command Wykonanie komendy przed zadaniem post-task execution of command Wykonanie komendy po zadaniu Now performing task Zadanie teraz wykonywane Directory Katalog calculating obliczanie deleting files usuwanie plików Total files transferred trying to send an email próbuj wysłać email The system will shutdown in 1 minute System zostanie za 1 minutę zamknięty Source Źródło Destination Miejsce docelowe All tasks completed Wszystkie zadania zakończone No errors found Nie znaleziono żadnych błędów errors found Znaleziono błąd logfile(s) have been created under directory: Plik(i) z logami zostały utworzone w katalogu: Done Gotowe execution of profile: wykonanie profilu finished zakończono Execution of tasks were terminated violently by user Wykonanie zadania zostało przerwana przez użytkownika &Profile This is a top menu item &Profil &Settings This is a top menu item &Ustawienia &Language This is a top menu item &Język &Help This is a top menu item &Pomoc &Handbook full phrase: 'luckyBackup Handbook' &Podręcznik &About full phrase: 'about luckyBackup' &O current profile aktualny profil include label of 'include' checkboxes wstaw Move the highlighted task up, by one position button tooltip Przesuń zaznaczone zadanie o 1 pozycję w górę Move the highlighted task down, by one position button tooltip Przesuń zaznaczone zadanie o 1 pozycję w dół jump to next error button tooltip przeskocz do następnego błędu jump to previous error button tooltip przeskocz do poprzedniego błędu Task task groupbox (add, remove, modify buttons) label Zadanie add add task button label dodaj add task add task button tooltip dodaj zadanie remove remove task button label usuń remove highlighted task remove task button tooltip Usuń zaznaczone zadanie modify modify task button label zmień modify highlighted task modify task button tooltip zmień zaznaczone zadanie Begin the execution of all included tasks start button tooltip Rozpocznij wykonanie wszystkich wybranych zadań NOTE simulation checkbox tooltip - line2 UWAGA Progressbar update will not be realistic simulation checkbox tooltip - line2 Pasek postępu nie jest realistyczny Information window information window title Okno informacji Exit exit button tooltip. full phrase is: 'exit luckybackup' Wyjście EXIT EXIT button label WYJŚCIE minimize to tray minimalizuj do tray minimizes the window to the tray area minimalizuj okno do tray F1 F1 English Polski &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Chcesz stworzyć punkt przywracania Please have a good look at the following task properties dialog 'create restore' message line 2/4 Proszę dobrze się przyjrzeć właściwościom zadania w następnym oknie and change anything you wish before proceeding 'create restore' message line 3/4 i zmień wszystko co chcesz przed wykonaniem Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Sprawdź szczegółowo "Nazwę zadania", "źródło", "miejsce docelowe" i "pomiń nowsze pliki docelowe", pole wyboru (zaawansowane) ERROR BŁĄD loading default profile ... information window message wczytywanie profilu domyślnego... loading profile ... information window message wczytywanie profilu... loading failed information window message wczytywanie nie powiodło się Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Otwarcie profilu jest nie możliwe is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y jest nie ważne dla version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y wersja: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' wczytywanie zakończone sukcesem scheduled this refers to a profile zaplanowano YES TAK NO NIE Description Opis saving default profile ... Information window message zapisywanie profilu domyślnego... saving profile ... Information window message zapisywanie profilu... WARNING UWAGA default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profil domyślny profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' zapis zakończony sukcesem creating default profile ... Information window message tworzenie profilu domyślnego... creating profile ... Information window message tworzenie profilu... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' tworzenie zakończone sukcesem Would you like to save it before proceeding ? Chcesz zapisać przed kontynuowaniem? Would you like to proceed anyway? Chcesz kontynuować mimo to? super user super user is the root user super user super user mode tryb super user Welcome to full phrase: 'Welcome to luckyBackup' Witamy English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. polski Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Tworzenie nowego profilu nie powiodło się The name you have entered contains only invalid characters Twoja nazwa zawiera niedozwolone znaki Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' już istnieje Would you like to replace it ? Czy chcesz go zastąpić? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Zastąpienie profilu nie powiodło się Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Zmiana nazwy profilu nie powiodła się profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' zmiana nazwy zakończyła się sukcesem default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. profil domyślny renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' zmiana nazwy zakończyła się sukcesem All relevant files (logs etc) have also been updated Wszystkie istotne pliki (logi itp.) również zostały zaktualizowane Failed to update all relevant files (logs etc) Aktualizacja wszystkich istotnych plików (logi itp.) nie powiodła się Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Jesteś pewien, że chcesz usunąć profil domyślny a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' jeden nowy pusty, z tą samą nazwą, zostanie utworzony Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Jesteś pewien, że chcesz usunąć profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Usuwanie profilu nie powiodło się Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' usunięto z powodzeniem All relevant files (logs etc) have also been deleted Wszystkie istotne pliki (logi itp.) zostały również usunięte Failed to delete all relevant files (logs etc) Usuwanie wszystkich istotnych plików (logi itp.) zakończyło się niepowodzeniem Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' ustaw jako domyślne All relevant files (logs etc) have also been duplicated Wszystkie istotne pliki (logi itp.) zostały także zduplikowane Failed to duplicate all relevant files (logs etc) Duplikowanie wszystkich istotnych plików (logi itp.) zakończyło się niepowodzeniem The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Opis profilu set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' ustawiony na Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importuj profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Import profilu zakończył się niepowodzeniem Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Import zakończony powodzeniem as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' jako and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' i dodano do listy profilów Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Nie można znaleźć pliku You have reached the maximum limit of supported tasks Został osiągnięty maksymalny limit obsługiwanych zadań You have to remove a task if you wish to add another !! Usuń jakieś zadanie jeśli chcesz dodać inne!! Select export directory this is a dialog title for selecting a directory to export a profile to Wybierz katalog eksportu Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Eksport profilu zakończył się niepowodzeniem to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' do Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' eksportowano z powodzeniem do The directory you have selected does not contain valid profile data Katalog, który wybrałeś nie zawiera poprawnych danych profilu Errors occurred during snapshots and logfiles transfer Błędy wystąpiły podczas migawek i przenoszenia plików z logami Errors occurred during snapshots transfer Błędy wystąpiły podczas przenoszenia migawek Errors occurred during logfiles transfer Błędy wystąpiły podczas przenoszenia plików z logami Errors occurred during the profile file transfer Błędy wystąpiły podczas przenoszenia plików profilu Please select a task to modify first Proszę wybrać najpierw zadanie do modyfikowania Please select a task to remove first Proszę wybrać najpierw zadanie do usunięcia Are you sure you want to remove the following task ?? Jesteś pewien, że chcesz usunąć następujące zadanie?? Would you like to also remove: Czy chciałbyś również usunąć: Please select a task to manage first Proszę najpierw wybrać jakieś zadanie do opracowania nothing to do Nie ma nic do zrobienia current crontab <font color=green>updated successfully obecny crontab <font color=green>zaktualizowano z powodzeniem Email preferences have been <font color=green>updated successfully Ustawienia email zostały <font color=green>z powodzeniem zaktualizowane status status NOT INCLUDED NIE ZAWARTO Checks are disabled. This task will be <b>skipped</b> Kontrole są wyłączone. To zadanie zostanie <b>pominięte</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista zadań profilu and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' i "profil" z listy rozwijanej refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' odświeżono luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Okno informacji CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Przerwanie: Poczekaj na zabicie wszystkich procesów Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Usuwanie starych migawek i plików z logami zadania Removing Usuwanie failed to remove usuwanie nie powiodło się Failed to start this refers to a process rozpoczęcie nie powiodło się Crashed this refers to a process Crashed Timed out this refers to a process Timed out Write error this refers to a process Błąd zapisu Read error this refers to a process Błąd odczytu Unknown error this refers to a process Nieznany błąd calculating info message displayed during ...calculations obliczanie transferring files info message displayed during ...file transfers przesyłanie plików deleting files info message displayed during ...file deletions usuwanie plików transferring files przesyłanie plików Total files transfered Łącznie przesłanych plików ABORTED PRZERWANO &Refresh This is a top 'Profile' menu action &Odśwież De&fault This is a top 'Profile' menu action &Domyślny Set as Default This is a top 'Profile' menu action tooltip Ustaw jako domyślny &View/Edit Description This is a top 'Profile' menu action &Pokaż/Edytuj opis View/Edit the profile description This is a top 'Profile' menu action tooltip Pokaż/Edytuj opis profilu R&ename This is a top 'Profile' menu action &Zmień nazwę &Delete This is a top 'Profile' menu action &Usuń &New This is a top 'Profile' menu action &Nowy &Save This is a top 'Profile' menu action &Zapisz E&xport This is a top 'Profile' menu action &Eksportuj &Import This is a top 'Profile' menu action &Importuj S&chedule This is a top 'Profile' menu action &Harmonogram E&mail This is a top 'Profile' menu action &Email Email report after profile execution This is a top 'Profile' menu action tooltip Wyślij email po wykonaniu profilu &Quit This is a top 'Profile' menu action &Wyjście D&uplicate This is a top 'Profile' menu action &Duplikuj &Task This is a top menu action &Zadanie &Add This is a top 'Task' menu action &Dodaj &Remove This is a top 'Task' menu action &Usuń &Modify This is a top 'Task' menu action &Modyfikuj Create D&uplicate task This is a top 'Task' menu action Utwórz &duplikat zadania Create R&estore task This is a top 'Task' menu action Utwórz zadanie przywracania Manage &Backup This is a top 'Task' menu action Zarządzaj &kopiami zapasowymi display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip pokaż - przywróć - usuń istniejące kopie zapasowe podświetlonych zadań Actions This is a top menu action Akcje Current Profile This is a top menu action Aktualny profil Lock This is a top menu action. Refers to toolbars Zablokuj Show text under icons This is a top menu action Pokaż tekst pod ikonami &Toolbars This is a top menu item &Paski narzędzi Set paths This is a top menu action Ustaw ścieżki Set paths for rsync and ssh commands This is a top menu action tooltip Ustaw ścieżki dla komend rsync i ssh quiet mode tryb cichy Only show errors and important messages during window update Pokazuj tylko błędy i ważne informacji podczas aktualizacji okna Run start button label Wykonaj Abort Abort button label Przerwij Stop the execution of running tasks NOW Abort button tooltip Zatrzymaj wykonywanie uruchomionych zadań TERAZ Execution of tasks finished Done button tooltip Wykonanie zadań zakończone Dry simulation checkbox label. Translate this as 'simulation' Symulacja This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Zostanie przeprowadzona <b>symulacja</b>, która nie powoduje żadnych zmian (i daje prawie taki sam wynik jak prawdziwe wykonanie) shutdown shutdown button label zakończ Press down to shutdown the system when done shutdown button tooltip Zamknij system po zakończeniu Hide information window show/hide information window button tooltip Ukryj okno informacji Show information window show/hide information window button tooltip Pokaż okno informacji profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Lista zadań jest pusta Use the "add" button on the right to get started Please keep the add word inside quotes Użyj przycisku "dodaj" po prawej, aby rozpocząć could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' nie mógł zostać zapisany default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. profil domyślny could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' nie mógł zostać utworzony Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' został zmodyfikowany Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' nie mógł zostać zapisany profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Nie można zduplikować profilu Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Nie można zduplikować profilu as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' jako Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' zduplikowano z sukcesem jako Please select a task to duplicate first Proszę wybrać najpierw zadanie do duplikowania Please select a task first Proszę wybrać najpierw zadanie Hide information window hide/show information window button tooltip Ukryj okno informacji Show information window hide/show information window button tooltip Pokaż okno informacji You have only included tasks that are going to be skipped Uwzględniłeś tylko zadania, które zostaną pominięte Manage Task This is a top 'Task' menu action Menadżer zadań display information regarding highlighted task This is a top 'Task' menu action tooltip Pokaż informacje na temat zaznaczonego zadania &Task &Zadanie Successfully created destination directory Z powodzenie stworzono katalog docelowy Failed to create destination directory Tworzenie katalogu docelowego zakończono niepowodzeniem manageDialog profile profil task zadanie Delete Usuń Restore Przywróć view log Pokaż logi destination: miejsce docelowe: source: źródło: hide source ukryj źródło Close this window Zamknij okno Close Zamknij Please select a snapshot from the list Information message Proszę wybrać migawkę z listy This directory does not exist Ten katalog nie istnieje This directory does not exist Information message Ten katalog nie istnieje I do not have sufficient permissions to read this directory Information message Nie masz wystarczających uprawnień do czytania tego katalogu sync dir A full phrase: sync dir a: <DIRECTORY_A> synchronizacja katalogu A sync dir B full phrase: sync dir a: <DIRECTORY_b> synchronizacja katalogu B View the logfile of the selected sync task 'view log' pushbutton tooltip Pokaż plik z logami dla wybranego zadania synchronizacji Please wait until the thread is terminated Proszę czekać, aż proces zostanie zakończony STOP STOP Stop calculations NOW Zatrzymaj obliczanie TERAZ Calculations terminated by user Obliczanie zakończone przez użytkownika not available refers to a date-time nie dostępne luckyBackup - manage backup luckyBackup - menadżer kopii zapasowych Delete the selected snapshot and its logfile Usuń wybraną migawkę i jej plik z logami Restore the selected snapshot Przywróć wybraną migawkę View the logfile of the selected snapshot Pokaż logi wybranej migawki Calculate the differences between the source and the selected snapshot Oblicz różnice pomiędzy źródłem i wybraną migawką Calculate differences Oblicz różnice manageWizard not available refers to a date-time nie dostępne Delete backup this is the title of a wizard Usuń kopie zapasową Date & time simple label of the wizard gui Data i czas Path ...is a directory path Ścieżka WARNING OSTRZEŻENIE You are about to delete backup data information message - line1 Masz zamiar usunąć dane kopii zapasowych If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Jeśli powyższe informacje są poprawne, kliknij <b>start</b>, aby rozpocząć Restore backup this is the title of a wizard Przywróć kopie zapasową Backup path ...is the backup directory path Ścieżka kopii zapasowej close zamknij Deleting snapshot logfile info message displayed during ...logfile deletion Usuń plik z logami migawki Updating list of snapshots info message displayed during ...snaps list update Zaktualizuj listę migawek Aborted Przerwane Finished Zakończone simulation Symulacja no errors brak błędów errors found znaleziono błędy Restoring data: main trunk info message displayed during ...data restoration Przywracanie danych: część główna Restoring data: snapshot files info message displayed during ...data restoration Przywracanie danych: pliki migawek Deleting data info message displayed during ...data deletion Usuwanie danych luckyBackup - manage backup luckyBackup - menadżer kopii zapasowych Jump to previous error Idź do poprzedniego błędu previous error poprzedni błąd Jump to next error Idź do następnego błędu next error następny błąd This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Zostanie przeprowadzona <b>symulacja</b>, która nie powoduje żadnych zmian (pokazuje prawie taki sam wynik jak prawdziwy przebieg) start start ABORT PRZERWIJ cancel zamknij The restore directory will become identical to the backup snapshot Katalog przywracania będzie identyczny z migawką kopii zapasowej Existing backup files will replace the corresponding files at the restore directory information message - line1. Istniejące pliki kopii zapasowej zostaną zastąpione odpowiednimi plikami w katalogu przywracania If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Jeśli powyższe informacje są poprawne, kliknij <b>start</b>, aby rozpocząć success info message displayed after ...logfile deletion sukces failed info message displayed after ...logfile deletion niepowodzenie Deleting file that lists snapshot changes info message displayed during ...file deletion Usunąć pliki, którym migawka wylicza zmiany success info message displayed after ...file deletion sukces failed info message displayed after ...file deletion niepowodzenie success info message displayed after ...snapshots list update sukces Select new restore directory directory selection dialog title Wybierz nowy katalog przywracania Restore path ...is the restore directory path ścieżka przywracania No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Nie istnieje migawka specyficznych danych. Pomijam... Check this, to clone the backup snapshot to the restore directory. Sprawdź to, aby skopiować migawkę kopii zapasowej do katalogu przywracania. Delete existing data that do not exist at the backup Usuń istniejące dane, które nie istnieją w kopii Browse locally for a new restore path Przeglądaj lokalnie za nową ścieżka przywracania change zmień <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple podstawowe advanced zaawansowane Task name Nazwa zadania Destination Miejsce docelowe Source Źródło Task properties Właściwości zadania Enter a name for this task (eg "Backup my home directory") Podaj nazwę dla tego zadania (np. "Kopia zapasowa mojego katalogu domowego") Name : Nazwa: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Zdefiniuj typ tego zadania: 1. Kopia zapasowa zawartości źródła wewnątrz miejsca docelowego 2. Kopia zapasowa katalogu źródłowego według nazwy wewnątrz miejsca docelowego 3. Synchronizuj źródło i miejsce docelowe, zachowuj najnowsze pliki w obydwu miejscach Type : Typ: Synchronize Source and Destination Synchronizuj źródło i miejsce docelowe Enter the full path of the source directory (eg /home/luckyb/) Podaj pełną ścieżkę katalogu źródłowego (np. /home/luckyb/) Source : Źródło: browse localy przeglądaj lokalnie Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Podaj pełną ścieżkę katalogu docelowego (np. /media/backups/SiduxHome/) Destination : Miejsce docelowe: eg -C4c arcfour,blowfish-cbc np. -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Dzięki tej opcji rsync przeniesie numeryczne grupy i identyfikatory użytkowników ⏎ zamiast używać nazw użytkowników i grup ⏎ i mapowanie ich po obu stronach ⏎. (--numeric-ids) Use numeric group and user IDs Użyj numerycznych grup i identyfikatorów użytkowników This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) This tells the receiving side to attempt super-user activities ⏎ obiór rsync nie był uruchomiony przez super-użytkownika ⏎ Działania te obejmują: ⏎ zachowaniu użytkowników za pośrednictwem opcji - właścicielem ⏎ nie zachowując wszystkie grupy (nie tylko obecnych użytkowników grup) poprzez --opcje grupy ⏎ i kopiowanie urządzeń za pośrednictwem --opcje urządzeń ⏎ (--super) Attempt super-user activities Spróbuj aktywować super użytkownika Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Próbuje zarchiwizować otwarte pliki w systemach Windows za pomocą vss (działa w systemie Windows 2000 i nowszych) (-vss) Backup open files Archiwizacja otwartych plików Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Przywróć zarchiwizowane uprawnienia Windows zawarte w nt-streams (--restore-nt-streams) Repeat any command that fails, x times Powtarzaj każdą komendę, która zakończy się nie powodzeniem, x razy Repeat on fail: Powtarzaj w razie błędu: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Zaznacz to, aby klonować źródło do miejsca docelowego Pozostaw niezaznaczone, aby utworzyć dodatkowy katalog wewnątrz miejsca docelowego Do NOT create extra directory NIE twórz dodatkowego katalogu Advanced zaawansowane Shows the rsync command as it will be executed Pokaż polecenia rsync podczas uruchomienia polecenia validate sprawdź Okay Okay Cancel Anuluj Exclude Wyjątek Add any directory, file or pattern to be excluded from this task Dodaj jakiś katalog, plik czy ścieżkę, które w tym zadaniu jest pominięte Templates Szablony Exclude all temp folders (**/*tmp*/) Wyklucz wszystkie foldery tymczasowe (**/*tmp*/) Temporary folders Foldery tymczasowe Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Wyklucz systemowe foldery montowania /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Systemowe foldery montowania Exclude all backup files & folders (**~) Wyklucz wszystkie pliki i foldery kopii zapasowych (**~) Backup files Pliki kopii zapasowych System folders Foldery systemowe Exclude all cache folders (**/*cache*/ & **/*Cache*/) Wyklucz wszystkie foldery cache (**/*cache*/ & **/*Cache*/) Cache folders Foldery cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Wyklucz wszystkie katalogi "kosz" użytkownika (**/*Trash*/, **/*trash*/) Trash Kosz Exclude all "lost+found" folders (**/lost+found*/) Wyklucz wszystkie foldery "lost+found" (**/lost+found*/) lost+found lost+found User Defined Określone przez użytkownika Add exclusion as entered in the next field Dodaj wyjątki jak podano w następnym polu add dodaj Exclude list Wyklucz liste Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Wprowadź tutaj plik, folder lub wzór i naciśnij przycisk "Dodaj", aby dodać go do list wykluczeń⏎ *-dopasowuje dowolny niepusty składnik (zatrzymuje się przy ukośnikach) ⏎ **-dopasowuje wszystko, włączając ukośniki⏎? -dopasowuje dowolny znak z wyjątkiem ukośnika⏎ końcowy dir_name / ***-dopasowuje zarówno katalog jak i wszystko, co w nim⏎ uruchomiane - wzorzec jest zakotwiczony do określonego miejsca w hierarchii ⏎ transferu (normalnie jest to "Źródło")⏎ Końcowy / - tylko katalog jest dopasowany, nie regularne pliki, dowiązania symboliczne lub urządzenia Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Określenie tego typu zadania: ⏎ 1. Kopia zapasowa katalogu źródłowego, wewnątrz miejsca docelowego (patrz również pole "nie twórz katalogu") ⏎ 2. Zsynchronizuj źródło i miejsce docelowe, utrzymuj najnowsze pliki u obu Backup Source inside Destination Kopia zapasowa źródła wewnątrz miejsca docelowego Description Opis Task description Opis zadania Type a description of the task Podaj opis zadania Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Wyklucz katalogi systemowe /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Wyklucz katalogi .gvfs wszystkich użytkowników (**/.gvfs/) launch the pattern editor Uruchom edytor wzorców Remove highlighted exclusion from list Usuń zaznaczone wyjątki z listy remove usuń Edit highlighted inclusion Edytuj podświetlone uwzględnienie edit edytuj Move highlighted inclusion up Przesuń wyżej podświetlone uwzględnienie move up do góry Move highlighted inclusion down Przesuń niżej podświetlone uwzględnienie move down do dołu Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Obejmuje tylko tą listę wzorów. Nic więcej. ⏎ zapoznaj się z podręcznikiem dla lepszego zrozumienia zawartych zasad. ⏎ to spowoduje wyłączenie funkcji wykluczania. Only Include Zawierać tylko Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Wprowadź tutaj plik, folder lub wzór i naciśnij przycisk "Dodaj", aby dodać go do list wykluczeń⏎ *-dopasowuje dowolny niepusty składnik (zatrzymuje się przy ukośnikach) ⏎ **-dopasowuje wszystko, włączając ukośniki⏎? -dopasowuje dowolny znak z wyjątkiem ukośnika⏎ końcowy dir_name / ***-dopasowuje zarówno katalog jak i wszystko, co w nim⏎ uruchomiane - wzorzec jest zakotwiczony do określonego miejsca w hierarchii ⏎ transferu (normalnie jest to "Źródło")⏎ Końcowy / - tylko katalog jest dopasowany, nie regularne pliki, dowiązania symboliczne lub urządzenia Add inclusion as entered in the next field Dodaj włączenie jak wprowadzone w następnym polu Include list Lista zawartości Remove highlighted inclusion from list Usuń podświetlone włączenie z listy Remote Zdalnie Use a remote host either for source or destination Użyj zdalnego hosta albo dla źródła albo miejsca docelowego Use remote host Użyj zdalnego hosta Use a remote host for destination data. Użyj zdalnego hosta dla danych docelowych. destination miejsce docelowe Use a remote host for source data. Użyj zdalnego hosta dla danych źródłowych source źródło User: Użytkownik Enter your username for the remote host (leave blank if not applicable). Wprowadź twoją nazwę użytkownika dla zdalnego hosta (pozostaw puste jeśli nie dotyczy). @Host: @Host: Enter the name of the remote host. Podaj nazwę zdalnego hosta. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Wprowadź pełną ścieżkę do pliku zawierającego (nie SSH) hasło autoryzacji dla rsync (pozostaw puste jeśli nie dotyczy). rsync password file: plik z hasłem rsync: Check this to connect to an rsync Remote module Sprawdź to, aby połączyć się z zdalnym modułem rsync Remote module Zdalny moduł Use ssh as transport shell Użyj SSH jako powłoki transportowej ssh ssh password: hasło: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Podaj pełną ścieżkę do pliku zawierającego prywatny klucz autoryzujący SSH (pozostaw puste, jeśli nie dotyczy). private key file : plik z prywatnym kluczem: Enter the port you would like to use for the ssh connection (leave blank for default port) Wprowadź port, który chciałbyś używać dla połączenia SSH (pozostaw puste jeśli nie dotyczy) port : port: Command Options Opcje wiersza polecenia Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Dodaj albo usuń jakiekolwiek opcje rsync.⏎ Jeśli nie wiesz co to znaczy, zostaw nietknięte!! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Usuń pliki z miejsca docelowego, które nie istnieją w źródle⏎ . "Rekursja do katalogów" musi być wybrana ⏎ (- usuń-po & - usuń-wykluczone, jeśli opcja "Wyklucz" jest używana) Copy device (super user only) & special files as they are (-D) Kopiuj urządzenie (super użytkownik tylko) & i specjalne pliki, które są (-D) Preserve device, special files Zachowaj urządzenia, specjalne pliki Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Pliki, które są twarde połączone ze sobą od źródła będzie trudno połączyć ze sobą od miejsca docelowego ⏎ UWAGA: Wszystkie pliki muszą być w zestawie transferu ⏎ (-H)! Preserve hard links Zabezpieczone twarde połączenia Delete files on the destination Usuń dane z miejsca docelowego Recurse into directories (-r) Rekursja do katalogów ⏎ (-r) Recurse into directories Rekursja do katalogów Do not backup source files that are newer on the destination (--update) Nie twórz kopii zapasowej plików źródłowych, które są nowsze w miejscu docelowym ⏎ (--aktualizacja) Skip newer destination files Pomiń nowsze pliki w miejscu docelowym Preserve the owner (super user only), group & time stamp of files (-tgo) Zachowaj właściciela (super użytkownik tylko), grupy i sygnaturę czasową plików ⏎ (-tgo) Preserve ownership, times Zachowaj własności, czasy Preserve permissions of files (-p) Zachowaj prawa do plików⏎ (-p) Preserve permissions Zachowaj prawa Copy symlinks as symlinks (-l) Kopiuj dowiązania symboliczne jako dowiązania symboliczne ⏎ (-l) Preserve symlinks Zachowaj dowiązania symboliczne Ignore files using a similar algorithm to CVS (-C) Ignorowanie plików używających podobnego algorytmu do CVS ⏎ (-C) Ignore files the CVS way Ignoruj pliki w stylu CVS User defined Określone przez użytkownika Enter here an rsync option to add (eg "--delete-excluded", "-X") Wpisz tutaj opcję rsync do dodania (np. "--delete-excluded", "-X") Extra rsync options list Lista dodatkowych opcji rsync Remove highlighted option from list Usuń zaznaczone opcje z listy Add rsync option as entered in the next field Dodaj opcje rsync jak podanej w następnym polu options list Lista opcji Also Execute Również wykonaj Execute extra commands, before or after the task. Wykonaj dodatkowe komendy, przed albo po zadaniu. Before Zanim Enter here a command to be executed before the task and then press the "add" button to add it to the list below Wpisz tutaj polecenie, które zostanie wykonane przed zadaniem, a następnie naciśnij przycisk "Dodaj", aby dodać go do listy poniżej Add command as entered in the field beside Dodaj komendę tak jak wpisaną w polu obok Command list Lista wiersza polecenia Remove highlighted command from list Usuń zaznaczoną komendę z listy Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Wykonaj zadanie, nawet jeśli pojawia się komunikat ostrzegawczy ⏎ Normalnie stosowane jeśli polecenie "Wykonaj przed" może naprawić ostrzeżenie (np. montuj partycje) ⏎ ⏎ UWAGA: sprawdzić, czy naprawdę wiesz, co robisz by-pass WARNING Pomiń OSTRZEŻENIE After Po Enter here a command to be executed after the task and then press the "add" button to add it to the list below Wpisz tutaj polecenie, które zostanie wykonane po zadaniu, a następnie naciśnij przycisk "Dodaj", aby dodać go do listy poniżej Select source directory file selection dialog title Wybierz katalog źródłowy Select destination directory file selection dialog title Wybierz katalog docelowy Select rsync password file file selection dialog title Wybierz plik z hasłem rsync Select ssh keyfile file selection dialog title Wybierz plik z kluczem SSH Select command to be executed file selection dialog title Wybierz komendę do wykonania Select file to read include patterns file selection dialog title Wybierz plik do odczytu zawierającego wzorce Select file to read exclude patterns file selection dialog title Wybierz plik do odczytania pozbawionego wzorców Please define the source before launching the pattern editor message box, message Proszę określić źródło zanim edytor wzorców zostanie uruchomiony ERROR message box message BŁĄD Please specify the following before proceeding: message box, message Proszę podać następujące przed wykonaniem: ERROR message box message - line1 BŁĄD That is not allowed because '/' does not have an actual name message box message - line2 Tego nie można, ponieważ '/' nie ma żadnej aktualnej nazwy Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Pozostaw zaznaczone pole wyboru, aby <b> ZATRZYMAĆ </ b> wykonanie uruchomionego zadania, jeśli to polecenie kończy pracę z błędem use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Użyj <b>STOP</b> wykonania zadania w przypadku błędu You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Nie określono katalogu '/' (root) jako źródła i NIE wybrano 'NIE twórz dodatkowego katalogu' Please check the relevant box before proceeding message box message - line3 Proszę zaznaczyć odpowiednie pole, przed przystąpieniem You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Określono root-katalog całej partycji jako źródło i NIE wybrano 'NIE twórz dodatkowego katalogu' That is not allowed because the root partition does not have an actual name message box message - line2 Tego nie wolno, ponieważ partycja root nie ma aktualnej nazwy The name of the task you requested already exists message box message - line1 Nazwa żądanej akcji już istnieje Please specify a different name before proceeding message box message - line2 Proszę podać inną nazwę przed wykonaniem The source you have declared is identical to the destination message box message - line1 Określone źródło i miejsce docelowe są identyczne Please modify at least one of them message box message - line2 Proszę zmienić co najmniej jeden z nich WARNING message box message - line1 OSTRZEŻENIE You have declared a destination that is part of the source directory structure message box message - line1 Określono miejsce docelowe, które jest częścią struktury katalogu źródłowego <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Nie zapomnij</b> zdefiniować katalogu w polu grupowym "Wyklucz", który będzie zawierał miejsce docelowe You have checked the 'delete files on the destination' option message box message - line2 Wybrałeś opcje "usuń pliki z miejsca docelowego" without having checked 'Recurse into directories' which is required message box message - line3 bez zaznaczenia 'rekursja w katalogach ", które jest wymagane 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Zdalny host' jest zaznaczony, ale nie wybrano żadnej nazwy hosta Please specify a remote host name message box message - line3 Prozę podać nazwę zdalnego hosta Otherwise uncheck 'Remote Host' to operate locally message box message - line4 W przeciwnym wypadku, odznacz 'Zdalny host' aby pracować lokalnie All declared fields of the task properties window seem to be ok message box message first line Wszystkie zadeklarowane pola w oknie właściwości zadania wydają się być ok Errors have been found message box message first line Znaleziono błędy command to be executed full phrase: command to be executed: <COMMAND> polecenie zostało wykonane You have already added this exclude item message box message Już dodałeś ten wyjątek You have already added this include item message box message Już dodałeś tą zawartość You have already added this option message box message Już dodałeś/aś tą opcje done skończone done editing zakończono edytowanie cancel Anuluj cancel editing Anuluj edytowanie Read exclude patterns from file Odczytaj wzór wyjątku z pliku Read file: Odczyt pliku: filename nazwa pliku browse przeglądaj ... ... Include Wstawianie Add any directory, file or pattern to be included by this task Dodaj dowolny katalog, plik lub wzór, które należy uwzględnić przy tym zadaniu Include mode Tryb wstawiania Mode: Tryb: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Nie wykluczaj tej listy wzorców. ⏎ Proszę odnieść się do instrukcji dla lepszego zrozumienia zasad włączania. Normal Include Normalne wstawianie Read include patterns from file Odczytaj wzory włączania z pliku browse locally przeglądaj lokalnie additional options: dodatkowe opcje: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Zaznacz to, aby użyć partycję FAT / NTFS jako miejsce docelowe. ⏎ Własność i uprawnienia danych nie zostaną zachowane. ⏎ (-t - modify-window = 1) Destination is FAT/NTFS Miejsce docelowym jest FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Próbuje zarchiwizować otwarte pliki w systemach Windows za pomocą vss (działa w systemie Windows 2000 i nowszych) (-vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Przywróć uprawnienia Set the total number of backup snapshots to keep Ustaw całkowitą liczbę kopii zapasowych migawek do zachowania Snapshots to keep: Migawki do zachowania: patternEditor directory : katalog: Select file Wybierz plik Please choose a file within the source Proszę wybrać plik z wewnątrz źródła Select directory Wybierz katalog Please choose a directory within the source Proszę wybrać katalog z wewnątrz źródła file : plik: pattern editor Edytor wzorców Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Zaznacz to, aby użyć katalogu powyżej jako ścieżki bezwzględnej ⏎ jeśli niezaznaczone, wzór pasuje do każdego pliku / katalogu, który spełnia kryterium "nazwa" Define here, what would you like the pattern to refer to Określ tutaj, co powinno się odnosić do wzoru The pattern refers to a: Wzór odnosi się do: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Użyj to jeśli wzór odnosi się do specyficznego pliku⏎ np. "/media/music/album/song.mp3" Specific file Specyficzny plik Use this if the pattern refers to a specific directory eg "/media/music/Album/" Użyj to jeśli wzór odnosi się do specyficznego katalogu⏎ np. "/media/music/Album/" Specific directory Specyficzny katalog Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Użyj tego, jeśli wzór odnosi się do zestawu plików, które mają coś wspólnego ⏎ np. wszystkie pliki z rozszerzeniem ". txt" Set of files Zestaw plików Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Użyj tego, jeśli wzór odnosi się do zestawu katalogów, które mają coś wspólnego ⏎ np. wszystkie katalogi, które są nazwane jako "temp" Set of directories Zestaw katalogów name Nazwa starts with : rozpoczynając z: Enter here the starting characters of the name of the files/directories that the pattern refers to Wpisz tutaj początkowe znaki nazwy plików/katalogów, których wzór odnosi się do ends with : kończąc z: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Wpisz tutaj końcowe znaki nazwy plików/katalogów, których wzór odnosi się do Enter here the name of the files/directories that the pattern refers to Wpisz tutaj nazwę plików/katalogów, których wzór odnosi się do is exactly : jest dokładnie: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Wpisz tutaj znaki, zawarte w dowolnej pozycji, nazwy plików / katalogów, których wzór odnosi się do contains : zawarte: browse localy for a file lokalnie przeglądaj pliki browse localy for a directory path lokalnie przeglądaj ścieżkę katalogu use absolute path użyj ścieżki bezwzględnej Go deeper in path by : Idź głębiej w ścieżce przez: Go deeper in path by any level Idź głębiej w ścieżce przez każdy poziom any każdy Define here the name criteria for the files/directories to be matched Zdefiniuj tutaj kryteria nazw dla plików / katalogów, które mają być dopasowane final pattern ostateczny wzór The actual pattern is displayed here Rzeczywisty wzór wyświetlany jest tutaj Reset the pattern editor fields to the default values Przywróć pola edytora wzorców do wartości domyślnych reset przywróć Okay Okay Cancel Anuluj Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Użyj tego, aby odnieść się do głębszych podkatalogów ⏎ np. ⏎ katalog "/ media / muzyka" zawiera 3 podkatalogi: ⏎ 1.Rock ⏎ 2.Jazz ⏎ 3.Soundtracks ⏎ i chcesz odnieść się do całej zawartości tych 3, określ następująco: ⏎ * Zestaw katalogów ⏎ * Zawartość katalogów ⏎ * Ścieżkę: / media / muzyka / ⏎ * Idź głębiej w ścieżkę przez "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Użyj tego, jeśli wzór odnosi się do zawartości katalogu (lub zestawu katalogów), a nie do samego katalogu ⏎ np. zawartość katalogu "/media/muzyka/album/" Directory contents Zawartość katalogu scheduleDialog Starting from scratch Począwszy od podstaw No schedules are declared !! Nie określono harmonogramów !! Unable to create schedule file Nie można utworzyć pliku harmonogramu You have reached the maximum limit of supported scheduled profiles Został osiągnięty maksymalny limit obsługiwanych zaplanowanych profili You have to remove an item if you wish to add another Musisz usunąć jakiś wpis, aby dodać inny Add profile schedule Dodaj profil harmonogramu Modify profile schedule Modyfikuj profil harmonogramu Profile schedule details Szczegóły profilu harmonogramu Invalid profile Profil nieprawidłowy Execute profile Wykonaj profil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at o every każdy day dzień Sunday Niedziela Monday Poniedziałek Tuesday Wtorek Wednesday Środa Thursday Czwartek Friday Piątek Saturday Sobota & on the i na st as in 1st day . nd as in 2nd day . rd as in 3rd day . th as in 4th, 5th, 6th or 7th day . th as in 8th day . th as in 9th day . th as in 10th day . th as in 11th day . th as in 12th....19th day . th as in 20th day . st as in 21st day . nd as in 22nd day . rd as in 23rd day . th as in 24th...30th day . st as in 31st day . of any month każdego miesiąca of na January full phrase: 'of January' Styczeń February full phrase: 'of February' Luty March full phrase: 'of March' Marzec April full phrase: 'of April' Kwiecień May full phrase: 'of May' Maj June full phrase: 'of June' Czerwiec July full phrase: 'of July' Lipiec August full phrase: 'of August' Sierpień September full phrase: 'of September' Wrzesień October full phrase: 'of October' Październik November full phrase: 'of November' Listopad December full phrase: 'of December' Grudzień Unable to create cron file Nie można utworzyć pliku cron luckyBackup - schedule luckyBackup - harmonogram <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Harmonogram wykonania profilu</span></p></body></html> Add a new profile schedule Dodano nowy profil harmonogramu add dodaj Modify selected profile schedule Modyfikuj wybrany profil harmonogramu modify zmień Remove selected profile schedule Usuń wybrany profil harmonogramu remove usuń Profile : Profil: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Pomiń zadania, które pokazują ostrzeżenia 'KRYTYCZNY' po sprawdzaniu katalogu skip critical pomiń krytyczne time (hour:min) : czas (godz:min) : set this value to -1 for the schedule to occur every hour : : :delay :opóźnienie Delay luckybackup execution at startup Opóźnione wykonanie luckybackup przy starcie min means: minutes (time) min day of week : dzień tygodnia: Any każdy month : miesiąc: January Styczeń February Luty March Marzec April Kwiecień May Maj June Czerwiec July Lipiec August Sierpień September Wrzesień October Październik November Listopad December Grudzień day of month : Dzień miesiąca: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) To sprawdzić, czy urządzenie nie obsługuje środowiska graficznego (np. serwer) Console Mode Tryb konsoli okay okay Cancel Anuluj schedule the execution of profiles as declared in the list above zaplanuj wykonanie profili jak na podanej powyżej liście cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Istniejący plik harmonogramu nie jest poprawny luckyBackup v. file BEWARE of the whitespace before file plik You have made changes without clicking the cronIT button Dokonano zmian bez klikania przycisku cronIT Are you sure you want to close the schedule dialog ? Jesteś pewny, że chcesz zamknąć okno harmonogramu? Your crontab is updated successfully Twój crontab został zaktualizowany no crontab entries exist wpisy crontab nie istnieją crontab content zawartość crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup raz, przy starcie systemu Run once, at startup Uruchom raz, przy starcie @ reboot @ uruchom ponownie close this dialog zamknij okno close zamknij Display the current crontab Wyświetl aktualny crontab view current crontab Pokaż aktualny crontab textDialog Enter the name of the new profile : Podaj nazwę nowego profilu: Enter the new name of the profile : Podaj nazwę nowego profilu: Profile description : Opis profilu: A profile with the same name already exists Profil o takiej nazwie już istnieje Please enter a different name Proszę podać inną nazwę Enter password : Podaj hasło: Enter passphrase : Podaj hasło: Do not show this again for this task Nie pokazuj tego ponownie dla tego zadania You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Wybrałeś "Kopia zapasowa zawartości katalogu źródłowego" <br>razem z opcją "usuń dane z miejsca docelowego" BEWARE, if your intention is NOT to clone source to destination !! OSTROŻNIE, jeśli twoją intencją NIE jest klonowanie źródła do miejsca docelowego!! Are you sure you wish to proceed ?? Jesteś pewny, że chcesz kontynuować?? luckyBackup luckyBackup Okay Okay Cancel Anuluj Copy command to clipboard Kopiuj komendę do pamięci podręcznej eMail information eMail informacja No Nie Yes Tak winDialog luckyBackup luckyBackup declaration of paths Określenie ścieżki rsync: rsync: Enter the full path of the rsync command Podaj pełną ścieżkę do komendy rsync browse locally przeglądaj lokalnie Use default value Użyj wartości domyślnych ssh: ssh: Enter the full path of the ssh command Podaj pełną ścieżkę komendy ssh cygpath: cygpath: Enter the full path of the cygpath command Wprowadż pełną ścieżkę komendy cygpath dosdev: dosdev: Enter the full path of the dosdev command Podaj pełną ścieżkę komency dosdev main dir: główny katalog: Enter the full path of the luckybackup directory Podaj pełną ścieżkę do katalogu luckybackup vshadow dir: katalog vshadow: Enter the full path of the vshadow directory Podaj pełną ścieżkę do katalogu vshadow temp dir: katalog tymczasowy: Enter the full path of the temporary directory Podaj pełną ścieżkę do katalogu tymczasowego Okay Okay Cancel Anuluj Select rsync command file selection dialog title Wybierz komendę rsync Executable Files (*.exe) Pliki wykonywalne (*. exe) Select ssh command file selection dialog title Wybierz komendę SSH Select cygpath command file selection dialog title Wybierz polecenie cygpath Select dosdev command file selection dialog title Wybierz polecenie dosdev luckybackup-0.5.0/translations/luckybackup_eo.ts0000666000175000017500000064125013165410113021475 0ustar luckybluckyb CalcDiffThread Scanning destination Skananta celdosieron Please wait Bonvolu pacienci Scanning snapshot Skananta tujpretan kopion Scanning source Skananta fonton Calculating differences Kalkulanta diferencon Sync dir A & B differences Sinkronigi dosierujan A & B diferencojn Snapshot and source differences Tujpreta kopio kaj fonta diferencoj Sync dir B data that also exists at sync dir A and is different Sinkronigi dosierujon B kiu ankaŭ ekzistas en sinkronigo de la dosiero A kaj estas malsama Snapshot data that also exists at the source and is different Tujpretaj datumoj kiuj ankaŭ ekzistas en la fonto kaj malsamas The snapshot data will replace the source data during RESTORE La tujpretaj datumoj anstataŭigos la fonton dum RESTORE Data amount is huge. Displaying only first entries Datumoj estas grandegaj. Vidigi nur unuajn erojn Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transferred over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty La taskolisto estas malplena nothing to start Nenio por komenci You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting startanta Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting startanta execution of task Full phrase: execution of task: <TASKNAME> starting plenumo de tasko starting Full phrase: execution of task: <TASKNAME> starting startanta Source Full phrase: source: <SOURCE_NAME Fonto Destination Full phrase: Destination: <DEST_NAME Celdosiero execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting startanta Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sinkroniganta to Full phrase: Syncing <DIR-A> to <DIR-B> al execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting startanta Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sinkroniganta to Full phrase: Syncing <DIR-B> to <DIR-A> al pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finita post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finita execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished finita execution of task Full phrase: execution of task: <TASKNAME> finished plenumo de tasko finished Full phrase: execution of task: <TASKNAME> finished finita execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error plenumo de tasko finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: komando: exit code: elira kodo : output: eligo: Last execution time Lasta plenumtempo not available ne disponebla no errors neniu eraro errors found eraroj trovitaj status stato OK BONE Sync directory Sinkronigita dosierujo Source directory Font-dosierujo Using remote, check is skipped Uzanta foran, preterpasas kontroladon Destination directory Celdosierujo free as in free disk space libera WARNING AVERTO I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory Dosierujo and/or kaj/aŭ does not exist ne ekzistas is not mounted ne estas muntita is empty or does not exist estas malplena aŭ ne ekzistas I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty malplenas I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description Priskribo de tasko ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog using Qt4 uzanta Qt4 Backup & Sync Application Loukas Avgeriou Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Ateno, Grekujo Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Patrick Matthaei Debian package maintainer Fleganto de Debian-pakaĵo Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Fleganto de Ubuntu-pakaĵo (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows portado al MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X portado al Mac OS X Elbert Pol Elbert Pol port to OS/2 portado al OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Fleganto de Gentoo-ebuild Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Fleganto de Mandriva-pakaĵo (oficiala deponejo de kontribuantoj) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Fleganto de Free BSD-pakaĵo Dimitris Jemos Dimitris Jemos Slackel package maintainer Fleganto de Slackel-pakaĵo ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Ĉeka tradukisto por la grafika fasado Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Greka tradukisto por la manlibro German gui translator Germana tradukisto por la grafika fasado Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portuga tradukisto por la grafika fasado Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Raffaele Italian gui translator Itala tradukisto por la grafika fasado using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Rusa tradukisto por la grafika fasado kaj valora testanto Kenny Verstraete Kenny Verstraete Dutch gui translator Nederlanda tradukisto por la grafika fasado Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Majed Sahli Arabic gui translator Araba tradukisto por la grafika fasado Adrian Murariu Adrian Murariu Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer fri13 fri13 v.0.3 gui designer Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt Thomas Glatt French gui translator Franca tradukisto por la grafika fasado Sébastien Bourgain Sébastien Bourgain pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Hispana tradukisto por la grafika fasado Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Sveda tradukisto por la grafika fasado Catalan gui translator Kataluna tradukisto por la grafika fasado Slovak gui translator Slovaka tradukisto por la grafika fasado Rivo Zangov Rivo Zangov Estonian gui translator Estona tradukisto por la grafika fasado Nicolay Boychev Nicolay Boychev Bulgarian gui translator Manuel Meixide Manuel Meixide Galician gui translator Roger Foss Roger Foss Norwegian gui translator Norvega tradukisto por la grafika fasado Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Ĉina (tajvana) tradukisto por la grafika fasado Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the forums for their support. Especially that contributed to this project one way or another Last but no least Could not locate the license file no money neniu mono If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Vote good & become a fan at: This is my reward :) money mono I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link ligilo por donaci luckyBackup - about luckyBackup - pri close fermi &About &Pri <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support A&uthor &Thanks to &Dankon al &License Agreement luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email luckyBackup - retmesaĝo Email a report after profile execution command: komando: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Testo Accept changes and close dialog Okay Bone Close dialog Fermi dialogon Cancel Rezigni Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never Neniam The command field is empty helpBrowser luckyBackup - help manual/ Okay Bone logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error next error close fermi loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' finita simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Nekonata eraro Elapsed time pre-task execution of command post-task execution of command Now performing task Directory Dosierujo calculating deleting files Total files transferred trying to send an email The system will shutdown in 1 minute Source Fonto Destination Celdosiero All tasks completed No errors found errors found eraroj trovitaj logfile(s) have been created under directory: Done Farite execution of profile: finished finita Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Helpo &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' &Pri current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label Tasko add add task button label aldoni add task add task button tooltip remove remove task button label forigi remove highlighted task remove task button tooltip modify modify task button label modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 NOTE Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 F1 English Angla &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versio: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES JES NO NE Description Priskribo saving default profile ... Information window message saving profile ... Information window message WARNING AVERTO default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Angla Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' al Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status stato NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+X Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process Nekonata eraro calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty La taskolisto estas malplena Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile task Delete Restore view log destination: source: hide source Close this window Close Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time ne disponebla luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time ne disponebla Delete backup this is the title of a wizard Date & time simple label of the wizard gui Path ...is a directory path WARNING AVERTO You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close fermi Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors neniu eraro errors found eraroj trovitaj Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error Jump to next error next error This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT cancel The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Celdosiero Source Fonto Task properties Enter a name for this task (eg "Backup my home directory") Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay Bone Cancel Rezigni Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add aldoni Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Priskribo Task description Priskribo de tasko Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove forigi Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay Bone Cancel Rezigni Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' Januaro February full phrase: 'of February' Februaro March full phrase: 'of March' Marto April full phrase: 'of April' Aprilo May full phrase: 'of May' Majo June full phrase: 'of June' Junio July full phrase: 'of July' Julio August full phrase: 'of August' Aŭugsto September full phrase: 'of September' Septembro October full phrase: 'of October' Oktobro November full phrase: 'of November' Novembro December full phrase: 'of December' Decembro Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add aldoni Modify selected profile schedule modify Remove selected profile schedule remove forigi Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) min day of week : tago de la semajno: Any month : monato: January Januaro February Februaro March Marto April Aprilo May Majo June Junio July Julio August Aŭugsto September Septembro October Oktobro November Novembro December Decembro day of month : tago de la monato: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay bone Cancel Rezigni schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file dosiero You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close fermi Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup Okay Bone Cancel Rezigni Copy command to clipboard eMail information No Yes winDialog luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Bone Cancel Rezigni Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_pt_BR.ts0000666000175000017500000071613313165410113022103 0ustar luckybluckyb CalcDiffThread Scanning destination Varrendo destino Please wait Por favor, aguarde Scanning snapshot Varrendo registro instantâneo Scanning source Varrendo origem Calculating differences Calculando diferenças Sync dir A & B differences Sincronizar diferenças entre os diretórios A & B Snapshot and source differences Diferenças entre a origem e o registro instantâneo Sync dir B data that also exists at sync dir A and is different Sincronizar os dados do diretório B que também estão no diretório A e são diferentes Snapshot data that also exists at the source and is different Os dados do registro instantâneo que também existem na origem e são diferentes The snapshot data will replace the source data during RESTORE Os dados do registro instantâneo irão substituir os dados da origem durante a RESTAURAÇÃO Data amount is huge. Displaying only first entries A quantidade de dados é enorme. Exibindo apenas as primeiras entradas Sync dir B data that do NOT exist at sync dir A Sincronizar os dados do diretório B que NÃO existem no diretório A Snapshot data that do NOT exist at the source Os dados do registro instantâneo que NÃO existem na origem These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Estes serão transferidos da fonte durante a RESTAURAÇÃO Sync dir A data that do NOT exist at sync dir B Sincronizar os dados do diretório A que NÃO existem no diretório B Source data that do NOT exist at the snapshot Os dados da origem que NÃO existem no registro instantâneo These will be deleted during RESTORE only if you enable the option: Estes serão excluídos durante a RESTAURAÇÃO apenas se você habilitar a opção: delete existing source data that do not exist at the backup Excluir dados existentes da origem que não existem no backup QObject The task list is empty A lista de tarefas está vazia nothing to start nada para iniciar You have included both of the following connected tasks: Você incluiu ambas das seguintes tarefas conectadas: this is not allowed for obvious reasons isso não é permitido por razões óbvias Please <b>uncheck appropriate include boxes</b> before proceeding Por favor, <b>desmarque as caixas de inclusão apropriadas</b> antes de prosseguir You have not included any tasks Você não incluiu qualquer tarefas The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory As seguintes tarefas incluídas <b>compartilham o mesmo diretório de destino</b> (todos em conjunto ou em grupos) e, pelo menos um deles realizará o backup do conteúdo de um diretório this will lead to one task canceling the other isto levará a uma tarefa cancelando as outras Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Por favor, desmarque as caixas de inclusão apropriadas ou altere todos os tipos de tarefas para outros do '<b>Backup do conteúdo do diretório</b>' ou use 'Backup do conteúdo do diretório' juntamente com a opção' <b>Apenas incluir</b>', antes de prosseguir pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting pré-execução de tarefas de comando starting Full phrase: pre-task execution of command: <COMMAND> starting iniciando Command re-run due to failure This means that a specific command is run for once more because it failed the first time Comando executa novamente devido a uma falha post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting pós-execução de tarefas de comando starting Full phrase: post-task execution of command: <COMMAND> starting iniciando execution of task Full phrase: execution of task: <TASKNAME> starting execução de tarefa starting Full phrase: execution of task: <TASKNAME> starting iniciando Source Full phrase: source: <SOURCE_NAME Origem Destination Full phrase: Destination: <DEST_NAME Destino execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting execução da primeira parte da tarefa starting Full phrase: execution of 1st part of task: <TASKNAME> starting iniciando Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sincronizando to Full phrase: Syncing <DIR-A> to <DIR-B> a execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting execução da segunda parte da tarefa starting Full phrase: execution of 2nd part of task: <TASKNAME> starting iniciando Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sincronizando to Full phrase: Syncing <DIR-B> to <DIR-A> a pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished pré-execução de tarefas de comando finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finalizado post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished pós-execução de tarefas de comando finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finalizado execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished execução da primeira parte da tarefa finished Full phrase: execution of 1st part of task: <TASKNAME> finished finalizada execution of task Full phrase: execution of task: <TASKNAME> finished execução de tarefa finished Full phrase: execution of task: <TASKNAME> finished finalizada execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error execução de tarefa finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error terminou por causa de erros na pré/pós execução de tarefas de comando The process reported an error O processo reportou um erro Backing-up profile, logfiles and snapshot data Perfil de backup, arquivos de log e dados instantâneos Could not open the logfile Não foi possível abrir o aquivo de log The logfile does not exist O arquivo de log não existe The specified command is probably not installed O comando especificado provalvemente não está intalado The logfile could not be created O arquivo de log não pode ser criado command: comando: exit code: código de saída: output: saída: Last execution time Último tempo de execução not available não disponível no errors sem erros errors found erros encontrados status status OK Ok Sync directory Sincronizar diretório Source directory Diretório de origem Using remote, check is skipped Usando remoto, seleção é ignorada Destination directory Diretório de destino free as in free disk space livre WARNING AVISO I do not have the permission to read/enter sync directory A Eu não tenho permissão de ler/entrar no diretório A sincronizado I do not have the permission to read/enter the source directory Eu não tenho persmissão de ler/entrar no diretório de origem I do not have the permission to read/enter sync directory B Eu não tenho permissão para ler/entrar no diretório B sincronizado I do not have the permission to read/enter the destination directory Eu não tenho persmissão de ler/entra rno diretório de destino Directory Diretório and/or e/ou does not exist não existe is not mounted não está montado is empty or does not exist está vazio ou não existe I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Eu <font color=red><b>NÃO PULAREI</b></font> esta tarefa por que você habilitou a opção "AVISO por senha" This task will be <font color=red><b>skipped</b></font> Esta tarefa será <font color=red><b>ignorada</b></font> CRITICAL CRÍTICO is empty está vazioa I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Eu <font color=organge><b>não pularei</b></font> esta tarefa. A Sincronização será realizada de qualquer maneira This task will <font color=orange><b>not be skipped Esta tarefa <font color=orange><b>será ignorada The Destination Directory will be created if it doesn't exist and filled with new backup data O Diretório De Destino será criado se não existir e preenchido com novos dados de backup Task description Descrição da tarefa ReadLogFile Could not locate the logfile Could not open the logfile Não foi possível abrir o aquivo de log aboutDialog using Qt4 Usando Qt4 Backup & Sync Application Aplicação de Sincronização & Backup Loukas Avgeriou Loukas Avgeriou It 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. É distribuído na esperança de que seja útil, mas SEM QUALQUER GARANTIA, sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou DE QUE SERVIRÁ PARA UM PROPÓSITO PARTICULAR. See the 'License Agreement' tab for more details. Veja a aba 'Acordo de Licença' para mais informações. Athens, Greece Atenas, Grécia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Mantenedor oficial do pacote/construção do pacote para Arch Linux Valuable advisor Conselheiro valioso Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Empacotador rpm, testador valioso e conselheiro de conexões remotas Patrick Matthaei Patrick Matthaei Debian package maintainer Mantenedor do pacote para o Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Tradutor da interface para Grego e testador valioso The indifex team A equipe indifex for developing the wonderful transifex localization platform and providing it for free para o desenvolvimento maravilhoso da plataforma de localização Transifex e fornecendo-a livremente Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Mantenedor do pacote para o OpenSUSE (Repositório comunitário KDE4) e valioso acessor de empacotamento Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mantenedor do pacote para o Mepis linux (Repositório comunitário) & tradutor da interface para Espanhol Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Mantenedor do pacote para o Ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows adaptação para o MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Contribuidor de código para suporte remoto & vss relativos ao porte do windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X Adaptação para o Mac OS X Elbert Pol Elbert Pol port to OS/2 Port para OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Mantenedor de construção para o Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Mantenedor do Puppy & sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mantenedor do pacote para o Mandriva (repositório contrib oficial) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Mantenedor do pacote para o Free BSD Dimitris Jemos Dimitris Jemos Slackel package maintainer Mantendor do pacote Slackel ex Fedora package maintainer Ex-mantenedor do pacote para o Fedora Pavel Fric Pavel Fric Czech gui translator Tradutor da interface para Checo Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Tradutor do manual para Grego German gui translator Tradutor da interface para Alemão Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Tradutor da interface para Português do Brasil Marcio Moraes Márcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Tradutor da interface para Francês e valioso acessor de empacotamento (e não apenas) Raffaele Raffaele Italian gui translator Tradutor da interface para Italiano using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Tradutor da interface para Russo e testador valioso Kenny Verstraete Kenny Verstraete Dutch gui translator Tradutor da interface para Holandês Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Tradutor da interface para Bósnio & mantenedor do pacote para o Mandriva Majed Sahli Majed Sahli Arabic gui translator Tradutor da interface para Árabe Adrian Murariu Adrian Murariu Romanian gui translator Tradutor da interface para Romeno Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Designer da interface versão 0.3 fri13 fri13 v.0.3 gui designer Designer da interface versão 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Se não fosse por ele e seus tutoriais, eu nunca teria começado este projeto Thomas Glatt Thomas Glatt French gui translator Tradutor da interface para Francês Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Tradutor da interface para Espanhol Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Tradutor da interface para Sueco Catalan gui translator Tradutor da interface para Catalão Slovak gui translator Tradutor da interface Eslovaco Rivo Zangov Rivo Zangov Estonian gui translator Tradução da interface para Estoniano Nicolay Boychev Nicolay Boychev Bulgarian gui translator Tradutor búlgaro da interface Manuel Meixide Manuel Meixide Galician gui translator Tradutor galego da interface Roger Foss Roger Foss Norwegian gui translator Tradutor norueguês da interface Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Tradutor Chinês (Taiwan) da interface Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Convidado especial matador de falhas ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Testador valioso & especialista em tempestade de ideias Yuri Vidal Yuri Vidal backupwhenidle python script developer desenvolvedor do script python backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester valioso testador do windows e OS/2 ...to all users of the ...a todos os usuários dos forums for their support. fóruns pelo seu apoio. Especially Especialmente that contributed to this project one way or another que contribuiu para este projeto de uma forma ou de outra Last but no least E para terminar Could not locate the license file Não foi possível localizar o arquivo de licença no money sem dinheiro If you like this app and would like to donate something to me personally, all you have to do is: Se você gostou deste aplicativo e gostaria de doar alguma coisa para mim pessoalmente, tudo que você tem a fazer é: Give a thumbs up at: Dê um polegar para cima em: Vote good & become a fan at: Vote bom & torne-se um fã de: This is my reward :) Esta é minha recompensa money dinheiro I personally never had and never will accept money for this project. Eu pessoalmente nunca tive e nunca irei aceitar dinheiro para este projeto. Nevertheless, I decided to use luckyBackup to support people that really need financial help. No entanto, eu decidi usar luckyBackup para apoiar as pessoas que realmente precisam de ajuda financeira. So, please consider it seriously to donate money that will eventually be used for a good cause. Então, por favor, considere seriamente em doar dinheiro que será eventualmente usado para uma boa causa. donation link Link para doação luckyBackup - about luckyBackup - Sobre close Fechar &About &Sobre <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Apoio A&uthor A&utor &Thanks to &Agradecimentos &License Agreement Acordo de &Licença luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup é distribuído sob os termos da <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Licença Pública Geral GNU</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! É <b>software livre</b>: você pode redistribuir e/ou modificar sob os termos da Licença Pública Geral GNU como publicado pela Fundação do Software Livre, versão 3 da Licença. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Mantenedor do pacote para o Fedora (repositório oficial) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Tradutor da interface para Esloveno E. Hakan Duran E. Hakan Duran Turkish gui translator Tradutor da interface para Turco Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Mantenedor do pacote para Slackware ((Repositório SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...minha outra metade, <b>Dimitra</b> que me aturou e atura enquanto este projeto está em desenvolvimento emailDialog luckyBackup - email luckyBackup - e-mail Email a report after profile execution Reportar um e-mail após a execução do perfil command: Comando: Use default This means "use the default value for this field" Usar padrão Arguments Argumentos %f from: %f de: Enter the sender of the message Digite o remetente da mensagem %l logfile %l arquivo de registro %c logfile.tar.gz %c arquivolog.tar.gz %d date %d data %i time %i hora %p profile name %p nome do perfil %e No of errors %e Nº de erros If unchecked "TLS auto" is used. Only available for sendemail Se nada for marcado "TLS auto" é usuado. Apenas disponível para sendmail Disable TLS Desabilitar TLS %t to: %t para: Enter the recipient of the message Digite o destinatário da mensagem %s subject: %s assunto: Enter the subject of the message Digite o assunto da mensagem %v smtp server: Servidor smtp %v: Enter the smtp server used to send the message Digite o servidor smtp usado para enviar a mensagem %b body: %b mensagem: Enter the body of the message Digite o corpo da mensagem Send an email right now to test the provided arguments Enviar um e-mail agora para testar os argumentos fornecidos Test Testar Accept changes and close dialog Aceitar as alterações e fechar este diálogo Okay Ok Close dialog Fechar diálogo Cancel Cancelar Specify the conditions to send an email Especificar as condições para enviar um e-mail Enter the command to run eg sendemail Digite o comando para executar ex sendmail arguments: argumentos: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Digite argumentos do comando sendmail ex -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Condições Only send when error(s) occurred during a run Somente enviar quando erro(s) ocorrer(em) durante a execução Error(s) occurred Erro(s) ocorrido(s) Only send when profile is scheduled to run Somente enviar quando o perfil está agendado para executar Profile is scheduled Perfil está agendado Never send an email Nunca enviar um e-mail Never Nunca The command field is empty O campo comando está vazio helpBrowser luckyBackup - help luckyBackup - ajuda manual/ manual/ Okay Ok logDialog luckyBackup - tasks execution progress luckyBackup - progresso da execução das tarefas <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error Erro anterior next error Próximo erro close Fechar loading logfile... Carregando arquivo de registro... wait Aguarde luckyBackupWindow commands output output window label Saída de comandos rsync and pre/post task commands output is displayed here tooltip Rsync e pré/pós saída de comandos de tarefas é exibida aqui Task list task list label Lista de tarefas List of all the available tasks task list tooltip - line1 Lista de todas as tarefas disponíveis Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Utilizar o 'incluir checkboxes' para incluir ou não uma tarefa selecionada Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Execução de perfil finished full phrase: 'Execution of profile <PROFILENAME> finished' Concluído simulation mode Modo de simulação Could not update last execution time of tasks Não foi possível atualizar a última execução decorrida das tarefas Last execution time of tasks updated Última execução decorrida das tarefas atualizada &Abort Cancel&ar &Minimize to tray tray menu action &Minimizar para a área de notificação &Restore tray menu action &Restaurar execution of profile: tray message - execution of profile: <PROFILENAME> in progress... Execução de perfil: in progress... tray message - execution of profile: <PROFILENAME> in progress... em progresso... Removed all older snapshots data Removido todos os dados antigos do registro instantâneo failed to remove all older snapshots data Falha ao remover todos os dados antigos do resgistro instantâneo Unknown error Erro desconhecido Elapsed time Tempo decorrido pre-task execution of command Pré-execução de comando da tarefa post-task execution of command Pós-execução de comando da tarefa Now performing task Agora otimizando tarefa Directory Diretório calculating Calculando deleting files Excluindo arquivos Total files transferred trying to send an email tentando enviar um e-mail The system will shutdown in 1 minute O sistema será desligado em 1 minuto Source Origem Destination Destino All tasks completed Todas as tarefas completadas No errors found Nenhum erro encontrado errors found Erros encontrados logfile(s) have been created under directory: Arquivos de registros, foram criados sob o diretório: Done Terminado execution of profile: Execução de perfil: finished Concluído Execution of tasks were terminated violently by user A execução das tarefas foram violentamente terminadas pelo usuário &Profile This is a top menu item &Perfil &Settings This is a top menu item &Configurações &Language This is a top menu item &Idioma &Help This is a top menu item &Ajuda &Handbook full phrase: 'luckyBackup Handbook' &Manual &About full phrase: 'about luckyBackup' &Sobre current profile Perfil atual include label of 'include' checkboxes Incluir Move the highlighted task up, by one position button tooltip Mover a tarefa selecionada para cima, uma posição Move the highlighted task down, by one position button tooltip Mover a tarefa selecionada para baixo, uma posição jump to next error button tooltip Pular para o próximo erro jump to previous error button tooltip Pular para o erro anterior Task task groupbox (add, remove, modify buttons) label Tarefa add add task button label Adicionar add task add task button tooltip Adicionar uma tarefa remove remove task button label Remover remove highlighted task remove task button tooltip Remover a tarefa selecionada modify modify task button label Modificar modify highlighted task modify task button tooltip Modificar a tarefa selecionada Begin the execution of all included tasks start button tooltip Iniciar a execução de todas as tarefas incluídas NOTE simulation checkbox tooltip - line2 NOTA Progressbar update will not be realistic simulation checkbox tooltip - line2 A atualização da barra de progresso não será realista Information window information window title Janela de informações Exit exit button tooltip. full phrase is: 'exit luckybackup' Sair EXIT EXIT button label SAIR minimize to tray Minimizar para a área de notificação minimizes the window to the tray area Minimizar a janela para a área de notificação F1 F1 English Português (Brasil) &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Você pediu por uma tarefa de RESTAURAÇÃO a ser criada Please have a good look at the following task properties dialog 'create restore' message line 2/4 Por favor, dê um boa olha no seguinte diálogo das propriedades da tarefa and change anything you wish before proceeding 'create restore' message line 3/4 e altere qualquer coisa que você queira antes de prosseguir Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Verifique especialmente 'Nome da tarefa', 'origem', 'destino' & o checkbox 'descartar arquivos mais recentes no destino' (avançado) ERROR ERRO loading default profile ... information window message Carregando perfil padrão ... loading profile ... information window message Carregando perfil ... loading failed information window message Falha ao carregar Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Não foi possível abrir o perfil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y não é válido para version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versão: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' perfil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' carregado com sucesso scheduled this refers to a profile Agendado YES SIM NO NÃO Description Descrição saving default profile ... Information window message Salvando perfil padrão ... saving profile ... Information window message Salvando perfil ... WARNING AVISO default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. perfil padrão profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' perfil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' perfil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' salvo com sucesso creating default profile ... Information window message Criando perfil padrão ... creating profile ... Information window message Criando perfil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' perfil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' criado com sucesso Would you like to save it before proceeding ? Você gostaria de salvá-lo antes de prosseguir? Would you like to proceed anyway? Você gostaria de prosseguir mesmo assim? super user super user is the root user Super usuário super user mode Modo super usuário Welcome to full phrase: 'Welcome to luckyBackup' Bem-vindo ao English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Português do Brasil Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Falha ao criar o novo perfil The name you have entered contains only invalid characters O nome que você digitou contém apenas caracteres inválidos Profile full phrase: 'Profile <PROFILENAME> already exists' Perfil already exists full phrase: 'Profile <PROFILENAME> already exists' já existe Would you like to replace it ? Você gostaria de substitui-lo? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Falha ao substituir o perfil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Falha ao renomear o perfil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' perfil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renomeado com sucesso para default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Perfil padrão renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renomeado com sucesso para All relevant files (logs etc) have also been updated Todos os arquivos (logs etc) relevantes também têm sido atualizados Failed to update all relevant files (logs etc) Falha ao atualizar todos os arqvivos (logs etc) relevantes Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Você tem certeza de que deseja excluir o perfil padrão a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' um novo em branco, com o mesmo nome, será criado Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Você tem certeza que deseja excluir o perfil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Falha ao excluir o perfil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Perfil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' excluído com sucesso All relevant files (logs etc) have also been deleted Todos os arquivos (logs etc) relevantes também têm sido excluídos Failed to delete all relevant files (logs etc) Falha ao excluir todos os arquivos (logs etc) relevantes Profile full phrase: 'Profile <PROFILENAME> set as default' Perfil set as default full phrase: 'Profile <PROFILENAME> set as default' definido como padrão All relevant files (logs etc) have also been duplicated Todos os arquivos (logs etc) relevantes também têm sido duplicados Failed to duplicate all relevant files (logs etc) Falha ao duplicar todos os arquivos (logs etc) relevantes The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' A descrição do perfil set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' definida para Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importar Perfil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Falha ao importar o perfil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Perfil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importado com sucesso as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' como and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' e adicionado na lista de perfil Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Não foi possível localizar o arquivo You have reached the maximum limit of supported tasks Você atingiu o limite máximo de tarefas suportadas You have to remove a task if you wish to add another !! Você tem que remover uma tarefa se você quiser adicionar outra !! Select export directory this is a dialog title for selecting a directory to export a profile to Selecionar o diretório de exportação Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Falha ao exportar perfil to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' para Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Perfil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exportado com sucesso para The directory you have selected does not contain valid profile data O diretório que você selecionou não contém dados válidos do perfil Errors occurred during snapshots and logfiles transfer Ocorreram erros durante a transferência de dados e arquivos de log Errors occurred during snapshots transfer Ocorreram erros durante a transferência de dados Errors occurred during logfiles transfer Ocorreram erros durante a transferência de arquivos de log Errors occurred during the profile file transfer Ocorreram erros durante a transferência do arquivo de perfil Please select a task to modify first Por favor, selecione um tarefa para modificar primeiro Please select a task to remove first Por favor, selecione uma tarefa para remover primeiro Are you sure you want to remove the following task ?? Você tem certeza que deseja remover a seguinte tarefa ?? Would you like to also remove: Você gostaria também de remover : Please select a task to manage first Por favor, selecione uma tarefa para gerenciar primeiro nothing to do Nada a fezer current crontab <font color=green>updated successfully contrab atual <font color=green>atualizado com sucesso Email preferences have been <font color=green>updated successfully As preferências do e-mail foram <font color=green>atualizadas com sucesso status Status NOT INCLUDED NÃO INCLUÍDO Checks are disabled. This task will be <b>skipped</b> Verificação está desativada. Essa tarefa será <b>descartada</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista de tarefas do perfil and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' e lista suspensa do 'perfil' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' atualizada luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informação da janela CheckBox Caixa de Verificação <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Perfil Ctrl+N Ctrl+N Ctrl+X CTRL+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Cancelando: Por favor, aguarde por todos os processos serem finalizados Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removendo registro instantâneo antigo e arquivo de log de tarefa Removing Removendo failed to remove falhou ao remover Failed to start this refers to a process Falhou ai iniciar Crashed this refers to a process Fechou abrupitamente Timed out this refers to a process Tempo esgotado Write error this refers to a process Escrever erro Read error this refers to a process Ler erro Unknown error this refers to a process Erro desconhecido calculating info message displayed during ...calculations calculando transferring files info message displayed during ...file transfers transferindo arquivos deleting files info message displayed during ...file deletions excluindo arquivos transferring files transferindo arquivos Total files transfered Total de arquivos transferidos ABORTED CANCELADO &Refresh This is a top 'Profile' menu action &Atualizar De&fault This is a top 'Profile' menu action Pa&drão Set as Default This is a top 'Profile' menu action tooltip Definir com padrão &View/Edit Description This is a top 'Profile' menu action &Visualizar/Editar Descrição View/Edit the profile description This is a top 'Profile' menu action tooltip Visualizar/Editar a descrição do perfil R&ename This is a top 'Profile' menu action R&enomear &Delete This is a top 'Profile' menu action Ex&cluir &New This is a top 'Profile' menu action &Novo &Save This is a top 'Profile' menu action &Salvar E&xport This is a top 'Profile' menu action E&xportar &Import This is a top 'Profile' menu action &Importar S&chedule This is a top 'Profile' menu action A&gendar E&mail This is a top 'Profile' menu action E-&mail Email report after profile execution This is a top 'Profile' menu action tooltip Reportar e-mail após a execução do perfil &Quit This is a top 'Profile' menu action &Sair D&uplicate This is a top 'Profile' menu action D&uplicar &Task This is a top menu action &Tarefa &Add This is a top 'Task' menu action &Adicionar &Remove This is a top 'Task' menu action &Remover &Modify This is a top 'Task' menu action &Modificar Create D&uplicate task This is a top 'Task' menu action Criar tarefa D&uplicada Create R&estore task This is a top 'Task' menu action Criar tarefa de R&estauração Manage &Backup This is a top 'Task' menu action Gerenciador De &Backup display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip exibr - restaurar - excluir backups existentes das tarefas destacadas Actions This is a top menu action Ações Current Profile This is a top menu action Perfil Atual Lock This is a top menu action. Refers to toolbars Travar Show text under icons This is a top menu action Mostrar texto sob ícones &Toolbars This is a top menu item &Barra de ferramentas Set paths This is a top menu action Definir caminhos Set paths for rsync and ssh commands This is a top menu action tooltip Definir os caminhos para os comandos ssh e rsync quiet mode modo silencioso Only show errors and important messages during window update Apenas mostrar erros e mensagens importantes durante a atualização da janela Run start button label Executar Abort Abort button label Cancelar Stop the execution of running tasks NOW Abort button tooltip Parar AGORA as tarefas em execução Execution of tasks finished Done button tooltip Execução das tarefas concluídas Dry simulation checkbox label. Translate this as 'simulation' Simulação This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Isto irá executar um <b>simulação</b> que não fará qualquer alteração (e produz principalmente a mesma saída como uma execução real) shutdown shutdown button label desligar Press down to shutdown the system when done shutdown button tooltip Pressione para baixo para desligar o sistema quando terminar Hide information window show/hide information window button tooltip Ocultar informações da janela Show information window show/hide information window button tooltip Mostrar informações da janela profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end perfil The task list is empty A lista de tarefa está vazia Use the "add" button on the right to get started Please keep the add word inside quotes Utilizar o botão "adicionar" à diretira para iniciar could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' não pôde ser salvo default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. perfil padrão could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' não pôde ser criado Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Perfil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' foi modificado Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Perfil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' não pôde ser salvo profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Falha ao duplicar perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Falha ao duplicar perfil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' como Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Perfil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicado com sucesso como Please select a task to duplicate first Por favor, selecione a tarefa para duplicar primeiro Please select a task first Por favor, selecione um tarefa primeiro Hide information window hide/show information window button tooltip Ocultar informações da janela Show information window hide/show information window button tooltip Mostrar informações da janela You have only included tasks that are going to be skipped Você incluiu apenas as tarefas que vão ser ignorados Manage Task This is a top 'Task' menu action Gerenciador de Tarefas display information regarding highlighted task This is a top 'Task' menu action tooltip exibir informações sobre tarefas destacadas &Task &Tarefas Successfully created destination directory Diretório de destino criado com êxito Failed to create destination directory Falha ao criar o diretório de destino manageDialog profile Perfil task Tarefa Delete Excluir Restore Restaurar view log Visualizar registro destination: Destino: source: Origem: hide source Ocultar origem Close this window Fechar esta janela Close Fechar Please select a snapshot from the list Information message Por favor, selecione um registro instantâneo da lista This directory does not exist Este diretório não existe This directory does not exist Information message Este diretório não existe I do not have sufficient permissions to read this directory Information message Eu não tenho permissões suficientes para ler este diretório sync dir A full phrase: sync dir a: <DIRECTORY_A> sincronizar diretório A sync dir B full phrase: sync dir a: <DIRECTORY_b> sincronizar diretório B View the logfile of the selected sync task 'view log' pushbutton tooltip Visualizar o arquivo de log da tarefa de sincronização selecionada Please wait until the thread is terminated Por favor, aguarde até que a tarefa esteja terminada STOP PARAR Stop calculations NOW Para cálculos AGORA Calculations terminated by user Cálculos encerrado pelo usuário not available refers to a date-time Não disponível luckyBackup - manage backup luckyBackup - gerenciador de backup Delete the selected snapshot and its logfile Excluir o registro instantâneo e seu arquivo de log Restore the selected snapshot Restaurar o resgistro instantâneo selecionado View the logfile of the selected snapshot Visualizar o arquivo de log do registro instantâneo selecionado Calculate the differences between the source and the selected snapshot Calcular as diferenças entre a origem e o registro instantâneo selecionado Calculate differences Calcular diferenças manageWizard not available refers to a date-time Não disponível Delete backup this is the title of a wizard Excluir backup Date & time simple label of the wizard gui Data & hora Path ...is a directory path Caminho WARNING AVISO You are about to delete backup data information message - line1 Você está prestes a excluir dados de backup If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Se a informação anterior está correta, clique em <b>Iniciar</b> para começar Restore backup this is the title of a wizard Restaurar backup Backup path ...is the backup directory path Caminho do backup close Fechar Deleting snapshot logfile info message displayed during ...logfile deletion Excluindo o arquivo de resgistro recente Updating list of snapshots info message displayed during ...snaps list update Atualizando a lista de arquivos recentes Aborted Cancelado Finished Terminado simulation Simulação no errors Sem erros errors found erros encontrado Restoring data: main trunk info message displayed during ...data restoration Restaurando dados: tronco principal Restoring data: snapshot files info message displayed during ...data restoration Restaurando dados: arquivos da lista Deleting data info message displayed during ...data deletion Excluindo dados luckyBackup - manage backup luckyBackup - gerenciador de backup Jump to previous error Pular para o erro anterior previous error Erro anterior Jump to next error Pular para o próximo erro next error Próximo erro This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Isto irá executar uma <b>simulação</b> que não faz quaisquer alterações (e produz principalmente o mesmo resultado como uma execução real) start Iniciar ABORT ABORTAR cancel Cancelar The restore directory will become identical to the backup snapshot O diretório de restauração será idêntico ao backup recente Existing backup files will replace the corresponding files at the restore directory information message - line1. Os arquivos de backup existentes irão substituir os arquivos correspondentes ao restaurar o diretório If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Se a informação anterior está correta, clique em <b>Iniciar</b> para começar success info message displayed after ...logfile deletion sucesso failed info message displayed after ...logfile deletion falhou Deleting file that lists snapshot changes info message displayed during ...file deletion Excluindo o arquivo que lista as alterações success info message displayed after ...file deletion sucesso failed info message displayed after ...file deletion falhou success info message displayed after ...snapshots list update sucesso Select new restore directory directory selection dialog title Selecionar novo diretório de restauração Restore path ...is the restore directory path Caminho de restauração No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Não há dados específicos recentes. Ignorando... Check this, to clone the backup snapshot to the restore directory. Marque isto, para clonar o backup recente para o diretório de restauração. Delete existing data that do not exist at the backup Excluir os dados existentes que não existem no backup Browse locally for a new restore path Navegar localmente para um novo caminho de restauração change Alterar <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Simples advanced Avançado Task name Nome da tarefa Destination Destino Source Origem Task properties Propriedades da tarefa Enter a name for this task (eg "Backup my home directory") Digite um nome para essa tarefa (ex.: "Backup do meu diretório pessoal") Name : Nome : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Define o tipo dessa tarefa: 1. Backup do conteúdo da Origem dentro do Destino 2. Backup do diretório Origem pelo nome dentro do Destino 3. Sincronizar Origem & Destino, mantendo os arquivo mais recentes em ambos os lados Type : Tipo : Synchronize Source and Destination Sincronizar Origem e Destino Enter the full path of the source directory (eg /home/luckyb/) Digite o caminho completo do diretório de origem (ex.: /home/luckyb/) Source : Origem : browse localy Navegar localmente Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Digite o caminho completo do diretório de destino (ex.: /media/backups/SiduxHome/) Destination : Destino : eg -C4c arcfour,blowfish-cbc ex -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Com esta opção, rsync transferirá os IDs numéricos do grupo e do usuário ao invés de usar nomes de grupo e usuário e mapeá-los em ambas as extremidades. (--numeric-ids) Use numeric group and user IDs Usar IDs numéricos do grupo e do usuário This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Isso diz ao lado de recepção para tentar atividades do super-usuário mesmo se o rsync de recepção não foi executado pelo super-usuário. Essas atividades incluem: preservação dos usuários através da opção --owner preservação de todos os grupos (não apenas os grupos dos usuários atuais) através da opção --groups e dispositivos de cópia através da opção --devices. (--super) Attempt super-user activities Tentativa de atividades do super-usuário Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Tente fazer o backup de arquivos abertos no sistema windows usando vss (Só funciona no windows 2000 e superior) (--vss) Backup open files Backup de arquivos abertos Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Restaurar permissões windows do backed-up localizadas no nt-streams (--restore-nt-streams) Repeat any command that fails, x times Repetir todo comando que falhar, n vezes Repeat on fail: Repetir ao falhar: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Marque esta para clonar a origem para o destino Desmarque para criar um diretório extra dentro do destino Do NOT create extra directory NÃO criar diretório extra Advanced Avançado Shows the rsync command as it will be executed Mostrar o comando rsync como ele será executado validate Validar Okay Ok Cancel Cancelar Exclude Excluir Add any directory, file or pattern to be excluded from this task Adicionar qualquer diretório, arquivo ou padão para ser executado a partir dessa lista Templates Modelos Exclude all temp folders (**/*tmp*/) Excluir todas as pastas temporárias (**/*tmp*/) Temporary folders Pastas temporárias Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Excluir as pastas do sistema de montagem /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Pasta de montagem do sistema Exclude all backup files & folders (**~) Excluir todos os arquivos & pastas de backup (**~) Backup files Arquivos de backup System folders Pastas do sistema Exclude all cache folders (**/*cache*/ & **/*Cache*/) Excluir todas as pastas cache (**/*cache*/ & **/*Cache*/) Cache folders Pastas cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Excluir todas as pastas trash do usuário (**/*Trash*/, **/*trash*/) Trash Lixo Exclude all "lost+found" folders (**/lost+found*/) Excluir todas as pastas "lost+found" (**/lost+found*/) lost+found lost+found User Defined Definido pelo Usuário Add exclusion as entered in the next field Adicionar exclusão como digitado no próximo campo add Adicionar Exclude list Lista de exclusão Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Digite aqui o arquivo, pasta ou padrão e em seguida, pressione o botão "Adicionar" para adicioná-lo incluindo na lista * - corresponde a qualquer componente não vazio (ele para em barras) ** - corresponde a qualquer coisa, incluindo barras ? - corresponde a qualquer caractere exceto uma barra caminho dir_name/*** - corresponde tanto o diretório & tudo dentro dele iniciando em / - padrão é ancorado a um determinado local na hierarquia da transferência (normalmente essa é a "origem") caminho / - corresponde apenas diretórios, sem arquivos regulares, links simbólicos ou dispositivos Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definir o tipo desta tarefa: 1. Backup do Diretório de Origem, dentro do Destino (veja também a caixa "NÃO criar diretório") 2. Sincronizar Origem & Destino, mantendo os arquivos mais recentes em ambos Backup Source inside Destination Backup da Origem dentro do Destino Description Descrição Task description Descrição da tarefa Type a description of the task Digite uma descrição da tarefa Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Pastas do sistema excluídas /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Excluir todas as pastas .gvfs dos usuários (**/.gvfs/) launch the pattern editor Lançar o editor padrão Remove highlighted exclusion from list Remover exclusão selecionada da lista remove Remover Edit highlighted inclusion Editar inclusão destacada edit Editar Move highlighted inclusion up Mover inclusão destacada para cima move up Mover para cima Move highlighted inclusion down Mover inclusão destacada para baixo move down Mover para baixo Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Incluir APENAS esta lista de padrões. Nada mais. Por favor, consulte o manual para melhor entendimento de regras de inclusão. Isso irá desativar o recurso de exclusão. Only Include Incluir apenas Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Digite aqui arquivo, pasta ou padrão e, em seguida, pressione o botão "Adicionar" para adicioná-lo incluindo na lista * - corresponde a qualquer componente não vazio (ele para em barras) ** - corresponde a qualquer coisa, incluindo barras ? - corresponde a qualquer caractere exceto uma barra caminho dir_name/*** - corresponde tanto o diretório & tudo dentro dele iniciando em / - padrão é ancorado a um determinado local na hierarquia da transferência (normalmente essa é a "origem") caminho / - corresponde apenas diretórios, sem arquivos regulares, links simbólicos ou dispositivos Add inclusion as entered in the next field Adicionar inclusão como digitado no próximo campo Include list Lista de inclusão Remove highlighted inclusion from list Remover inclusão selecionada da lista Remote Remota Use a remote host either for source or destination Utilizar uma máquina remota, quer de origem ou de destino Use remote host Utilizar máquina remota Use a remote host for destination data. Utilizar uma máquina remota para o destino dos dados. destination Destino Use a remote host for source data. Utilizar uma máquina remota para a origem dos dados. source Origem User: Usuário: Enter your username for the remote host (leave blank if not applicable). Digite seu nome de usuário para a máquina remota (deixe em branco se não for aplicável). @Host: @Máquina: Enter the name of the remote host. Digite o nome da máquina remota. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Digite o caminho completo do arquivo que contém a senha de autenticação do rsync (não o ssh) (deixe em branco se não for aplicável). rsync password file: Arquivo de senha rsync: Check this to connect to an rsync Remote module Verifique isso para se conectar a um módulo remoto do rsync Remote module Módulo remoto Use ssh as transport shell Usar ssh como transporte shell ssh ssh password: senha: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Digite o caminho completo do arquivo que contém a chave de autenticação privada do ssh(deixe em branco se não for aplicável). Note que você tem que fazer todas as ações necessárias para uma conexão remota ssh sem senha usando um par de chaves OpenSSH private key file : Arquivo de chave privada : Enter the port you would like to use for the ssh connection (leave blank for default port) Digite a porta que gostaria de usar para a conexão ssh (deixe em branco para a porta padrão) port : Porta : Command Options Opções do Comando Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Adicionar ou remover quaisquer opções do rsysnc. Se você não tem ideia do que significa isso, deixá-los intocados !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Excluir arquivos no destino que não existem na origem "Recursivo nos diretórios" tem que ser selecionado (--delete-after & --delete-excluded se "Exclude" é usado) Copy device (super user only) & special files as they are (-D) Copiar dispositivo (super usuário apenas) & arquivos especiais como eles são (-D) Preserve device, special files Preservar dispositivo, arquivos especiais Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Arquivos que estão ligados com hard link na origem irão ligados com hard link no destino AVISO: Todos os arquivos serão incluídos na hora da transferência !! (-H) Preserve hard links Presevar hard links Delete files on the destination Excluir os arquivos no destino Recurse into directories (-r) Descer recursivamente nos diretórios (-r) Recurse into directories Descer recursivamente nos diretórios Do not backup source files that are newer on the destination (--update) Não fazer backup dos arquivos de origem que são mais recentes no destino (--upadte) Skip newer destination files Descartar os arquivos mais recentes no destino Preserve the owner (super user only), group & time stamp of files (-tgo) Preservar o dono (super usuário apenas), grupo & time stamp de arquivos (-tgo) Preserve ownership, times Preservar proprietário, datas Preserve permissions of files (-p) Preservar permissões de arquivos (-p) Preserve permissions Preservar permissões Copy symlinks as symlinks (-l) Copiar links simbólicos como links simbólicos (-l) Preserve symlinks Preservar links simbólicos Ignore files using a similar algorithm to CVS (-C) Ignorar arquivos usando um algoritmo semelhante ao CVS (-C) Ignore files the CVS way Ignorar os arquivos similar ao CVS User defined Definifo pelo usuário Enter here an rsync option to add (eg "--delete-excluded", "-X") Digite aqui uma opção do rsync para adicionar (ex.: "--delete-excluded", "-X" Extra rsync options list Lista extra de opções do rsync Remove highlighted option from list Remover opção selecionada da lista Add rsync option as entered in the next field Adicionar opção do rsysnc como digitado no próximo campo options list Lista de opções Also Execute Executar Também Execute extra commands, before or after the task. Executar comandos extras, antes ou depois da tarefa. Before Antes Enter here a command to be executed before the task and then press the "add" button to add it to the list below Digite aqui um comando para ser executado antes da tarefa e então pressine o botão "Adicionar" para adicioná-lo na lista abaixo Add command as entered in the field beside Adicionar comando como digitado no campo ao lado Command list Lista de comandos Remove highlighted command from list Remover o comando selecionado da lista Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Executar a tarefa, mesmo se ela aparecer com uma mensagem de AVISO Normalmente usado quando "Executar Antes de " comandos podem corrigir um aviso (por exemplo montar partições) ATENÇÃO: verificar isto, se você realmente sabe o que está fazendo by-pass WARNING ignorar AVISO After Depois Enter here a command to be executed after the task and then press the "add" button to add it to the list below Digite aqui um comando para ser executado depois da tarefa e então pressine o botão "Adicionar" para adicioná-lo na lista abaixo Select source directory file selection dialog title Selecionar o diretório de origem Select destination directory file selection dialog title Selecionar o diretório de destino Select rsync password file file selection dialog title Selecionar o arquivo de senha rsync Select ssh keyfile file selection dialog title Selecionar o arquivo de chave ssh Select command to be executed file selection dialog title Selecionar o comando para ser executado Select file to read include patterns file selection dialog title Selecionar arquivo para ler padrões incluídos Select file to read exclude patterns file selection dialog title Selecionar arquivo para ler padrões excluídos Please define the source before launching the pattern editor message box, message Por favor, defina a fonte antes de lançar o editor padrão ERROR message box message ERRO Please specify the following before proceeding: message box, message Por favor, especifique o seguinte antes de prosseguir: ERROR message box message - line1 ERRO That is not allowed because '/' does not have an actual name message box message - line2 Isso não é permitido porque '/' não tem um nome real Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Deixar a caixa marcada, para <b>PARAR</b> a execução da tarefa em execução se este comando finalizar com um erro use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Usar as caixas para </b>PARAR<b> a execução da tarefa em caso de erro You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Você declarou o diretório '/' (raiz) como origem e NÃO marcou a caixa 'NÃO criar diretório extra' Please check the relevant box before proceeding message box message - line3 Por favor, marque a caixa relevante antes de prosseguir You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Você declarou o diretório raiz de uma partição inteira como origem e NÃO marcou a caixa 'NÃO criar diretório extra' That is not allowed because the root partition does not have an actual name message box message - line2 Isso não é permitido porque a partição raiz não tem um nome real The name of the task you requested already exists message box message - line1 O nome da tarefa que você requisitou já existe Please specify a different name before proceeding message box message - line2 Por favor, especifique um nome diferente antes de prosseguir The source you have declared is identical to the destination message box message - line1 A origem que você declarou é idêntico ao destino Please modify at least one of them message box message - line2 Por favor, modifique pelo menos um deles WARNING message box message - line1 AVISO You have declared a destination that is part of the source directory structure message box message - line1 Você tem declarado um destino que é parte da estrutura do diretório de origem <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Não se esqueça</b> de definir um diretório na caixa 'Excluir' que irá conter o destino You have checked the 'delete files on the destination' option message box message - line2 Você marcou a opção 'excluir arquivos no destino' without having checked 'Recurse into directories' which is required message box message - line3 sem ter marcado 'Recursivo nos diretórios", que é necessário 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Máquina remota' está marcada, mas o nome da máquina remota não foi declarado Please specify a remote host name message box message - line3 Por favor, especifique o nome da máquina remota Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Caso contrário, desmarque 'Máquina Remota' para operar localmente All declared fields of the task properties window seem to be ok message box message first line Todos os campos declarados na janela Propriedades da tarefa parecem estar ok Errors have been found message box message first line Erros foram encontrados command to be executed full phrase: command to be executed: <COMMAND> Comando a ser executado You have already added this exclude item message box message Você já adicionou este item excluir You have already added this include item message box message Você já adicionou este item incluir You have already added this option message box message Você já adicionou esta opção done terminado done editing terminar edição cancel cancelar cancel editing cancelar edição Read exclude patterns from file Ler padrões incluir do arquivo Read file: Ler arquivo: filename Nome do arquivo browse Procurar ... ... Include Incluir Add any directory, file or pattern to be included by this task Adicionar qualquer diretório, arquivo ou padrão para ser incluído por esta tarefa Include mode Modo de incluir Mode: Modo: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Não excluir isto da lista de padrões. Por favor, consulte o manual para melhor entendimento das regras de exclusão. Normal Include Incluir normal Read include patterns from file Ler padões incluir do arquivo browse locally Navegar localmente additional options: opções adicionais: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Marque isto se você utilizar uma partição FAT/NTFS como destino. Permissões e proprietários dos dados NÃO serão preservados. (-t --modify-window=1) Destination is FAT/NTFS Destino é FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Tente fazer o backup de arquivos abertos no sistema windows usando vss (Só funciona no windows 2000 e superior) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Restaurar permissões Set the total number of backup snapshots to keep Definir o número total de backup dos registros instantâneos a serem mantidos Snapshots to keep: Registros instantâneos a serem mantidos: patternEditor directory : Diretório: Select file Selecionar arquivo Please choose a file within the source Por favor, escolha um arquivo dentro da origem Select directory Selecionar diretório Please choose a directory within the source Por favor, escola um diretório dentro da origem file : Arquivo: pattern editor Editor padrão Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Verifique isto para usar o diretório acima como um caminho absoluto Se não fôr verificado, o padrão irá corresponder a qualquer arquivo/diretório que reúne o nome Define here, what would you like the pattern to refer to Defina aqui, o que você gostaria que o padrão referi-se a The pattern refers to a: O padrão se refere a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Use isto se o padrão se refere a um arquivo específico por exemplo, "/media/music/album/song.mp3" Specific file Especificar arquivo Use this if the pattern refers to a specific directory eg "/media/music/Album/" Use isto se o padrão se refere a um diretório específico por exemplo, "/media/music/Album/" Specific directory Especificar diretório Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Use isto se o padrão se refere a um conjunto de arquivos que têm algo em comum por exemplo, todos os arquivos com uma extensão ".txt" Set of files Conjunto de arquivos Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Use isto se o padrão se refere a um conjunto de diretórios que têm algo em comum por exemplo, todos os diretórios que estão nomeados como "temp" Set of directories Conjunto de diretórios name Nome starts with : Começa com : Enter here the starting characters of the name of the files/directories that the pattern refers to Digite aqui os caracteres iniciais do nome dos arquivos/diretórios que o padrão refere-se a ends with : Termina com: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Digite aqui os caracteres que terminam com o nome dos arquivos/diretórios que o padrão refere-se a por exemplo, para se referir a todos os arquivos ".txt", digite .txt Enter here the name of the files/directories that the pattern refers to Digite aqui o nome dos arquivos/diretórios que o padrão refere-se a is exactly : É exatamente : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Digite aqui os caracteres contidos em qualquer posição do nome dos arquivos/diretórios que o padrão refere-se a contains : Contém : browse localy for a file Navegar localmente para um arquivo browse localy for a directory path Navegar localmente para um caminho de diretório use absolute path Utilizar o caminho absoluto Go deeper in path by : Ir mais fundo no caminho por: Go deeper in path by any level Ir mais fundo no caminho de qualquer nível any Qualquer Define here the name criteria for the files/directories to be matched Defina aqui o nome para os arquivos/diretórios a serem combinados final pattern Padrão final The actual pattern is displayed here O padrão atual é exibido aqui Reset the pattern editor fields to the default values Redefinir os campos do editor padrão para os valores padrão reset Redefinir Okay Ok Cancel Cancelar Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use isso para se referir a mais sub-diretórios por exemplo O diretório "/media/music" inclui três sub-diretórios: 1.Rock 2.Jazz 3.Soundtracks e você gostaria de se referir a todo o conteúdo desses 3, defina o seguinte: * Conjunto de diretórios * Conteúdo do diretório * Caminho: /media/music/ * Ir mais fundo no caminho por "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Use isso se o padrão se refere ao conteúdo de um diretório (ou um conjunto de diretórios) e não ao próprio diretório por exemplo, o conteúdo do diretório "/media/music/Album/" Directory contents Conteúdo do diretório scheduleDialog Starting from scratch Começando do zero No schedules are declared !! Nenhum agendamento foi declarado !! Unable to create schedule file Não foi possível criar arquivo de agendamento You have reached the maximum limit of supported scheduled profiles Você atingiu o limite máximo suportado de perfis agendados You have to remove an item if you wish to add another Você tem que remover um item se você deseja adicionar outro Add profile schedule Adicionar agenda do perfil Modify profile schedule Modificar agenda do perfil Profile schedule details Detalhes da agenda do perfil Invalid profile Perfil inválido Execute profile Executar perfil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> de hora em hora at em every todo day dia Sunday Domingo Monday Segunda-feira Tuesday Terça-feira Wednesday Quarta-feira Thursday Quinta-feira Friday Sexta-feira Saturday Sábado & on the & no st as in 1st day º nd as in 2nd day º rd as in 3rd day º th as in 4th, 5th, 6th or 7th day º th as in 8th day º th as in 9th day º th as in 10th day º th as in 11th day º th as in 12th....19th day º th as in 20th day º st as in 21st day º nd as in 22nd day º rd as in 23rd day º th as in 24th...30th day º st as in 31st day º of any month de qualquer mês of do January full phrase: 'of January' Janeiro February full phrase: 'of February' Fevereiro March full phrase: 'of March' Março April full phrase: 'of April' Abril May full phrase: 'of May' Maio June full phrase: 'of June' Junho July full phrase: 'of July' Julho August full phrase: 'of August' Agosto September full phrase: 'of September' Setembro October full phrase: 'of October' Outubro November full phrase: 'of November' Novembro December full phrase: 'of December' Dezembro Unable to create cron file Não foi possível criar arquivo cron luckyBackup - schedule luckyBackup - Agenda <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Agendando execução do perfil</span></p></body></html> Add a new profile schedule Adicionar um nova agenda para o perfil add Adicionar Modify selected profile schedule Modificar a agenda do perfil selecioando modify Modificar Remove selected profile schedule Remover a agenda do perfil selecionado remove Remover Profile : Perfil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Descartar as tarefas que surgirem com uma mensagem de aviso 'CRÍTICO' depois de verificar os diretórios skip critical Descartar crítico time (hour:min) : Hora:Minuto : set this value to -1 for the schedule to occur every hour defina este valor para -1 para o agendamento ocorrer a cada hora : : :delay :Atraso Delay luckybackup execution at startup Atrasar a execução do luckybackup na inicialização min means: minutes (time) min day of week : Dia da semana : Any Qualquer month : Mês : January Janeiro February Fevereiro March Março April Abril May Maio June Junho July Julho August Agosto September Setembro October Outubro November Novembro December Dezembro day of month : Dia do mês : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Marque esta opção se a sua máquina não suporta um ambiente gráfico (por exemplo, um servidor) Console Mode Modo console okay Ok Cancel Cancelar schedule the execution of profiles as declared in the list above Agendar a execução de perfis como declarado na lista acima cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version O arquivo de agendamento existente não é uma versão válida para luckyBackup. file BEWARE of the whitespace before file arquivo You have made changes without clicking the cronIT button Você fez alterações sem clicar no botão cronIT Are you sure you want to close the schedule dialog ? Tem certeza que deseja fechar a janela de agendamento? Your crontab is updated successfully Seu crontab foi atualizado com sucesso no crontab entries exist Não existem entradas no crontab crontab content Conteúdo do crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup Uma vez, na inicialização do sistema Run once, at startup Executar uma vez, na inicialização @ reboot @ Reiniciar close this dialog Fechar este diálogo close Fechar Display the current crontab Exibir o crontab atual view current crontab Ver crontab atual textDialog Enter the name of the new profile : Digite o nome do novo perfil : Enter the new name of the profile : Digite o novo nome do perfil : Profile description : Descrição do perfil : A profile with the same name already exists Um perfil com o mesmo nome já existe Please enter a different name Por favor, digite um nome diferente Enter password : Digite a senha : Enter passphrase : Digite a frase secreta : Do not show this again for this task Não mostrar isto novamente para esta tarefa You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Você selecionou o 'Backup do conteúdo do diretório de origem'<br>juntamente com a opção 'excluir arquivos no destino' BEWARE, if your intention is NOT to clone source to destination !! CUIDADO, se sua intenção NÃO é clone da origem para o destino! Are you sure you wish to proceed ?? Tem certeza de que deseja prosseguir? luckyBackup luckyBackup Okay Ok Cancel Cancelar Copy command to clipboard Copiar comando para a área de transferência eMail information Informações do e-mail No Não Yes Sim winDialog luckyBackup luckyBackup declaration of paths declaração dos caminhos rsync: rsync: Enter the full path of the rsync command Digite o caminho completo do comando rsync browse locally navegar localmente Use default value Utilizar o valor padrão ssh: ssh: Enter the full path of the ssh command Digite o caminho completo do comando ssh cygpath: cygpath: Enter the full path of the cygpath command Digite o caminho completo do comando cygpath dosdev: dosdev: Enter the full path of the dosdev command Digite o caminho completo do comando dosdev main dir: diretório principal: Enter the full path of the luckybackup directory Digite o caminho completo do diretório luckybackup vshadow dir: diretório vshadow: Enter the full path of the vshadow directory Digite o caminho completo do diretório vshadow temp dir: diretório temp: Enter the full path of the temporary directory Digite o caminho completo do diretório temporário Okay Okay Cancel Cancelar Select rsync command file selection dialog title Selecionar o comando rsync Executable Files (*.exe) Arquivos Executáveis (*.exe) Select ssh command file selection dialog title Selecionar comando ssh Select cygpath command file selection dialog title Selecionar o comando cygpath Select dosdev command file selection dialog title Selecionar o comando dosdev luckybackup-0.5.0/translations/luckybackup_es.qm0000666000175000017500000040167713157502317021510 0ustar luckybluckybEHYKSŋYЮ]_ggghY(j~szvy~f fKfEXvS Eq9 EĘ4·5N~Dia|Qalaraah']@.EH5awT$"f"&%({Y*`3*0+++,By/]^?:BTEtt]FZ9\GQG9Hx9J6 DJ; J;qIJwBPd(;PdPd#USTZrT{[\Z`sj6iJj6j6.cj6Vl̙ImCjtdmxz1rßKY?}0R2hL3_a /Ws$?>1ĉU'zS6ى>Xg[ v=&3-Gr :~ dgș9c!b@(e'c+&m.+6F<$MGI|LQ198Q/R[Ջ_/dEfC15hxhwZpNpNq>tcm1!M>1ӊYE65BѐSciuEԳaŵw  ,'wy _`bWK #ux&o+/rі2w8IuBZyxC c?3PoE5\c-cf:EuHK|BFO 2R]>pZIZRCgX+0+W3_CNP÷lIY۸ԥy{*vV[%&ES5">uiGҐGO,o8^  i&WOa$4)@4)**߬ ,b 98My:MT_rUu4em{h !6iJ0iU}^B.e .e2TWQctz$V.%mmt$d ܑM|Ň-[ʵ^Pn0[{aܯ"<]bzϗ]u{  ‰y*{gY PsQwArL~DOMOjz2eJOiYzsi^rJt$}74;1:օ:}IwCI;IIIcIcW, L^APFvфg l.2He~Fe Bi@d /}i]6 uI Bg8ur:=O\xl@*m6>/n\np^!txvWycG~i֯CFyK9OȕȕԦȕXaJEg:tî"?pߘE?Sz)v U"@" E.;K:CKOʶVfY_hD<b#g%hn#hnEiοiwNkՒakՒ0sD!v3 y^|&vb#(TIYqfutEI-ICni..VjhyU.Ȓ+0`=':KD@Z|  ѣ|ux M`:읒TX^` X'|<5yB^8;+9+e-zH2 29Y>EKEN3xUtoYv|`xea#vuGv:{_gI_DFAFdFϕi=ΕUUurdgG%BfȕA1`aXT%%UU DߘneJǧ(~y^1̐jII;K%vߖak2YY) 2;t"()@,"-#/e1U9GF\}IX9mJFJεɩL5NPO4#Ry hV)}gh 9mt@xa5S31`ʹ(ʴ5Wʶ'W,7B]`i])( NV v cs q. I *{j +)p 6K 8 CcK&f Mg MgE N# { WP ]t j^jH ḽ mE( pE5 qC RI @ ey oC # a7^ -B=q Z& '0% Ԡ;R  ׊$b =/ .| (q Ѿ Tk7   c2r   -0' -n /l$ 7E@ 81 ? @ ~ `Y f g l& pN%\ zj CL V . G` iT[ cY1 XB^i z 24 ,   GCf< ñ 1 Xh1 hŹ t$3 ݓ ˪ T i 7 pa "N k v ~ VdR dw jM  # (N& +d -r 0b[ 7'yh 93Bc- :UC#B ;6 E Ge' HZ L9 PA T, Zhl _yj _L ftE g.w"S g.wߛ g.w-# kˋ {7 {M {$ ^ 2 F Ҟ "    YŠ YD ܐ @e A. Eh* Fϣ F. LM N00 X ^  bU o o9! r'^ C  h j(R !k \% D "8 UN= n_  =  W T s  % 2f a Rb[^ )V ?BRz B ;g% Ԫ sd @ TI #~ &,f &'2 ) *}E + ,D ,D/w 6=* P \.~6H c i {v eB 1  ( {- 0 msu cs XwH * f zg> lz9 { IF  j! Yڀ iڵ [ " , #~m 䕜{  c2r 7 8 8# 8 ' 6IF=/7L>C{Ե7U'~ (qב/#Y֪E7G;J Tba a\P].p acRne~d4mRv2p{>PEyi+{AXrV<Y{RAkft$TrIuS֭N 3wMdk{dr4~U"';eT CN~tW#!&A&)Ne(դ,(դM-X`Ӎ4?<Ey"E^~G E<NRN>k[=JNci{f/GlnJsqsqu@uu@~(N!YaVu k44fC?t3),*F6-ypF&)v%ɟ)YʱN?u+\uH_(֙SC5GbߖR]c0.'YؠPI9ŕvi&,Calculando diferenciasCalculating differencesCalcDiffThreadLa cantidad de datos es enorme. Visualizando solo las primeras entradas2Data amount is huge. Displaying only first entriesCalcDiffThread Espere por favor Please waitCalcDiffThread$Analizando destinoScanning destinationCalcDiffThread"Analizando imagenScanning snapshotCalcDiffThread"Analizando fuenteScanning sourceCalcDiffThreadBDiferencias entre Imagen y FuenteSnapshot and source differencesCalcDiffThreadpDatos de Imagen hallados en la Fuente que son diferentes=Snapshot data that also exists at the source and is differentCalcDiffThreadVDatos de imagen que NO existen en la fuente-Snapshot data that do NOT exist at the sourceCalcDiffThread\Datos de la Fuente que NO existen en la Imagen-Source data that do NOT exist at the snapshotCalcDiffThreadZSincronizar diferencias de directorios A & B Sync dir A & B differencesCalcDiffThreadSincronizar datos del directorio A que NO existen al sincronizar el directorio B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSincronizar datos del directorio B sincronizados con el A y que son diferentes?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSincronizar datos del directorio B que NO existen al sincronizar el directorio A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadLos datos de Imagen sustituirn a los datos de la Fuente durante la Restauracin=The snapshot data will replace the source data during RESTORECalcDiffThreadEstos sern borrados durante la RESTAURACIN solo si habilita la opcin:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadborrar los datos de origen existente que no estn en el respaldo;delete existing source data that do not exist at the backupCalcDiffThreadtDatos de perfil de respaldo, ficheros de registro e imagen.Backing-up profile, logfiles and snapshot dataQObjectCRTICOCRITICALQObjectNComando a re-ejecutar debido a un falloCommand re-run due to failureQObjectNNo puede abrirse el fichero de registroCould not open the logfileQObjectDestino DestinationQObject$Directorio destinoDestination directoryQObjectDirectorio DirectoryQObjectNo tengo permiso para leer/acceder al directorio A a sincronizar;I do not have the permission to read/enter sync directory AQObjectNo tengo permiso para leer/acceder al directorio B a sincronizar;I do not have the permission to read/enter sync directory BQObjectpNo tengo permiso para leer/acceder al directorio destinoDI do not have the permission to read/enter the destination directoryQObjectnNo tengo permiso para leer/acceder al directorio fuente?I do not have the permission to read/enter the source directoryQObject<font color=orange><b>No se omitir</b></font> esta tarea. La sincronizacin se har de todos modosiI will not skip this task. Synchronizing is going to be performed anywayQObject<font color=red><b>NO SE OMITIR</b></font> esta tarea porque est habilitada la opcin "evitar ADVERTENCIA"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject:Tiempo de la ltima ejecucinLast execution timeQObjectOKOKQObjectPor favor, <b>desmarque la correspondiente casilla</b> antes de continuarAPlease uncheck appropriate include boxes before proceedingQObject Por favor, desmarque adecuadamente las casillas incluidas o cambie todos los tipos de tareas a otras de '<b>contenidos del directorio de Respaldo</b>' o usar 'los contenidos del directorio de Respaldo' junto a la opcin '<b>Solo incluyen</b>', antes de procederPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject FuenteSourceQObject"Directorio fuenteSource directoryQObject,Sincronizar directorioSync directoryQObjectSincronizacinSyncingQObjectSincronizacin'Full phrase: Syncing to SyncingQObject(Descripcin de tareaTask descriptionQObjectLa Carpeta de Destino se crear si no existe y los datos de respaldo se copiarn en la misma]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectZLas siguientes tareas indicadas <b>comparten el mismo directorio de destino</b> (todas juntas o en grupos) y al menos una de ellas respaldar los contenidos de un directorioThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectNNo puede crearse el archivo de registro The logfile could not be createdQObject@El fichero de registro no existeThe logfile does not existQObject@El proceso ha reportado un errorThe process reported an errorQObjectjEs probable que el comando indicado no est instalado/The specified command is probably not installedQObject4La ltima lista est vacaThe task list is emptyQObjectvEsta tarea <font color=orange><b>no ser omitida</b></font>3This task will not be skippedQObjectjEsta tarea ser <font color=red><b>omitida</b></font>7This task will be skippedQObject@Uso remoto, comprobacin omitidaUsing remote, check is skippedQObjectADVERTENCIAWARNINGQObjectbHa incluido las dos siguientes tareas conectadas:8You have included both of the following connected tasks:QObject8No ha incluido ninguna tareaYou have not included any tasksQObjecty/oand/orQObjectcomando:  command: QObjectno existedoes not existQObject&errores encontrados errors foundQObjectHejecucin de la 1 parte de la tareaexecution of 1st part of taskQObjectHejecucin de la 1 parte de la tarea?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectHejecucion de la 2 parte de la tareaexecution of 2nd part of taskQObject$ejecucin de tareaexecution of taskQObject$ejecucin de tarea3Full phrase: execution of task: finishedexecution of taskQObject$ejecucin de tareadFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject$cdigo de salida:  exit code: QObjectterminadofinishedQObjectterminado?Full phrase: execution of 1st part of task: finishedfinishedQObjectterminado3Full phrase: execution of task: finishedfinishedQObjectterminadoCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectfinalizado por un error de ejecucin de comando de pre/post tarea9finished because of pre/post task command execution errorQObjectest vacois emptyQObject,est vaco o no existeis empty or does not existQObjectno est montadois not mountedQObjectsin errores no errorsQObjectno disponible not availableQObject nada que empezarnothing to startQObjectsalida:  output: QObjectDejecucin de comando de post-tareapost-task execution of commandQObjectDejecucin de post-tarea de comandoCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectBejecucin de comando de pre-tareapre-task execution of commandQObjectBejecucin de pre-tarea de comandoBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectcomenzandostartingQObjectcomenzando?Full phrase: execution of 1st part of task: startingstartingQObjectcomenzando?Full phrase: execution of 2nd part of task: startingstartingQObjectcomenzando3Full phrase: execution of task: startingstartingQObjectcomenzando?Full phrase: post-task execution of command: startingstartingQObject estadostatusQObjectHno est permitido por razones obvias'this is not allowed for obvious reasonsQObjectVesto llevar a una tarea cancelando la otra.this will lead to one task canceling the otherQObject haciatoQObject hacia'Full phrase: Syncing to toQObjectNNo puede abrirse el fichero de registroCould not open the logfile ReadLogFile &About&About aboutDialog(Acuerdo de &Licencia&License Agreement aboutDialog&Support&Support aboutDialog &Agradecimientos &Thanks to aboutDialog...mi otra mitad, <b>Dimitra</b> por su paciencia conmigo todas las veces que este proyecto est en desarrolloj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog>... a todos los usuarios de los...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialogAphofis Scott Aphofis Scott aboutDialogBTraductor de la interfaz al rabeArabic gui translator aboutDialogmatenimiento de los paquetes/pkgbuild oficiales de Arch linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtenas, GreciaAthens, Greece aboutDialogdAplicacin de copias de seguridad y sincronizacinBackup & Sync Application aboutDialogTraductor de la interfaz al bosnio y mantenimiento de los paquetes de mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog<Traductor al Cataln de la guiCatalan gui translator aboutDialogXNo se puede localizar el archivo de licencia!Could not locate the license file aboutDialogBTraductor de la interfaz al checoCzech gui translator aboutDialogNMantenimiento de los paquetes de DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogHTraductor de la interfaz al holandsDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogEspecialmente Especially aboutDialogXMantenedor del paquete Fedora (repo oficial))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog>Mantenedor del paquete Free BSDFree BSD package maintainer aboutDialog<Traductor al Francs de la guiFrench gui translator aboutDialogTraductor de la interfaz al francs e importante probador (y no slo)AFrench gui translator and valuable packing advisor (and not only) aboutDialogJMantenimiento de los ebuild de GentooGentoo ebuild maintainer aboutDialogDTraductor de la interfaz al alemnGerman gui translator aboutDialogDar permiso a:Give a thumbs up at: aboutDialogpTraductor de la interfaz al griego e importante probador(Greek gui translator and valuable tester aboutDialog<Traductor del manual en GriegoGreek manual translator aboutDialogPersonalmente nunca he aceptado ni aceptar dinero por este proyecto.DI personally never had and never will accept money for this project. aboutDialogSi no hubiera sido por l y sus tutoriales nunca hubiera empezado este proyectoJIf it wasn't him and his tutorials I would never have started this project aboutDialogsi le gusta esta aplicacin y desea hacer una donacin personal, solo tiene que hacer lo siguiente:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogjEs <b>software libre</b>: puede redistribuirlo y/o modificarlo bajo los trminos de la Licencia Pblica General GNU publicada por Free Software Foundation, versin 3 de la Licencia.It 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, version 3 of the License. aboutDialoglSe distribuye con la esperanza de que sea de utilidad, pero SIN NINGN TIPO DE GARANTA; incluso sin la garanta implcita de COMERCIABILIDAD o IDONEIDAD PARA UN PROPSITO ESPECFICOIt 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. aboutDialogHTraductor de la interfaz al italianoItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogJY por ltimo pero no menos importanteLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogMantenimiento de los paquetes de Mandriva (repositorio oficial de contribuciones)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarcaMarcos Del Puerto Garcia aboutDialogMarvin Gmez Marvin Gomez aboutDialogmantenimiento de los paquetes de Mepis (repositorio de la comunidad) y traductor al Espaol de la interfazBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogSIn embargo, decid usar luckyBackup para ayudar a gente que realmente necesita ayuda econmica.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogmantenimiento de los paquetes de OpenSUSE (repositorio de la comunidad de KDE4) e importante asesor de empaquetadoNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogJTraductor de la interfaz al portugusPortuguese gui translator aboutDialog6Cachorrito & mantenedor sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialog:Traductor al Rumano de la guiRomanian gui translator aboutDialoglTraductor de la interfaz al ruso e importante probador*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialognVer la pestaa 'Acuerdo de licencia' para ms detalles.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog>Traductor al Eslovaco de la guiSlovak gui translator aboutDialog8Traductor esloveno de la guiSlovenian gui translator aboutDialogPor tanto, por favor, considere seriamente la donacin econmica que eventualmente ser destinada a una buena causa._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog<Traductor al Espaol de la guiSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog8Traductor al Sueco de la guiSwedish gui translator aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog0sta es mi recompensa :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialog2Traductor turco de la guiTurkish gui translator aboutDialog Aviso importanteValuable advisor aboutDialogLVoto positivo y convertirse en fan en:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogZdesarrollador de backupwhenidle python script&backupwhenidle python script developer aboutDialog cerrarclose aboutDialog$enlace de donacin donation link aboutDialog@Mantenedor del paquete ex Fedoraex Fedora package maintainer aboutDialog&foros por su apoyo.forums for their support. aboutDialog fri13fri13 aboutDialog.luckyBackup - acerca deluckyBackup - about aboutDialogluckyBackup se distribuye bajo los trminos del <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog dineromoney aboutDialogsin dinerono money aboutDialog&puerto a MS Windowsport to MS Windows aboutDialog$port para Mac OS Xport to Mac OS X aboutDialogpuerto a OS/2 port to OS/2 aboutDialogEmpaquetador rpm, importante probador y asesor de conexiones remotas <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog cerrarclose logDialog>cargando archivo de registro...loading logfile... logDialoghluckyBackup - progreso de la ejecucin de las tareas&luckyBackup - tasks execution progress logDialogsiguiente error next error logDialogerror anteriorprevious error logDialogesperarwait logDialog &%1 %2&%1 %2luckyBackupWindow&Abortar&AbortluckyBackupWindow&Acerca de&AboutluckyBackupWindow&Aadir&AddluckyBackupWindow&Borrar&DeleteluckyBackupWindow&Manual &HandbookluckyBackupWindow &Ayuda&HelpluckyBackupWindow&Importar&ImportluckyBackupWindow&Idioma &LanguageluckyBackupWindow.&Minimizar a la bandeja&Minimize to trayluckyBackupWindow&Modificar&ModifyluckyBackupWindow &Nuevo&NewluckyBackupWindow&Perfil&ProfileluckyBackupWindow&PerfilThis is a top menu item&ProfileluckyBackupWindow &Salir&QuitluckyBackupWindow&Actualizar&RefreshluckyBackupWindow&Borrar&RemoveluckyBackupWindow&Restaurar&RestoreluckyBackupWindow&Guardar&SaveluckyBackupWindow&Configuracin &SettingsluckyBackupWindow &Tarea&TaskluckyBackupWindow &TareaThis is a top menu action&TaskluckyBackupWindow&Herramientas &ToolbarsluckyBackupWindow.&Ver/Editar Descripcin&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowABORTADOABORTEDluckyBackupWindowAbortarAbortluckyBackupWindow|Abortando: Por favor, espere a que terminen todos los procesos4Aborting: Please wait for all processes to be killedluckyBackupWindowAccionesActionsluckyBackupWindowTodos los ficheros relacionados (logs, etc.) tambin han sido borrados 4All relevant files (logs etc) have also been deletedluckyBackupWindowTodos los ficheros relacionados (logs, etc.) tambin han sido duplicados7All relevant files (logs etc) have also been duplicatedluckyBackupWindowTodos los archivos importantes (logs, etc.) tambin han sido actualizados4All relevant files (logs etc) have also been updatedluckyBackupWindow8Completadas todas las tareasAll tasks completedluckyBackupWindowX Est seguro de que quiere borrar el perfil'Are you sure you want to delete profileluckyBackupWindowjEst seguro de que desea borrar el perfil por defecto3Are you sure you want to delete the default profileluckyBackupWindowx Est seguro de que quiere eliminar las siguientes tareas ?5Are you sure you want to remove the following task ??luckyBackupWindowfComenzar la ejecucin de todas las tareas incluidas)Begin the execution of all included tasksluckyBackupWindow.Casilla de verificacinCheckBoxluckyBackupWindowLas comprobaciones estn deshabilitadas. Se <b>omitir</b> esta tarea5Checks are disabled. This task will be skippedluckyBackupWindow>No se pudo encontrar el archivoCould not locate the fileluckyBackupWindowNo se puede actualizar el ltimo momento de ejecucin de las tareas-Could not update last execution time of tasksluckyBackupWindowRotoCrashedluckyBackupWindow*Crear Duplicar tareasCreate D&uplicate taskluckyBackupWindow,Crear Restaurar tareasCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+GCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowPerfil actualCurrent ProfileluckyBackupWindowD&uplicar D&uplicateluckyBackupWindowDefectoDe&faultluckyBackupWindowDescripcin DescriptionluckyBackupWindowDestino DestinationluckyBackupWindowDirectorio DirectoryluckyBackupWindow HechoDoneluckyBackupWindow VacoDryluckyBackupWindow$Correo electrnicoE&mailluckyBackupWindowE&xportarE&xportluckyBackupWindow ERRORERRORluckyBackupWindow SALIREXITluckyBackupWindow&Tiempo transcurrido Elapsed timeluckyBackupWindowLas preferencias del email han sido <font color=green>correctamente actualizadasBEmail preferences have been updated successfullyluckyBackupWindowZInforme de email tras la ejecucin del perfil$Email report after profile executionluckyBackupWindowEspaolEnglishluckyBackupWindowEspaolDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowErrores ocurridos durante la transferencia de archivos de registro'Errors occured during logfiles transferluckyBackupWindowErrores producidos durante la transferencia de imgenes y archivos de registro5Errors occured during snapshots and logfiles transferluckyBackupWindowlErrores ocurridos durante la transferencia de imgenes(Errors occured during snapshots transferluckyBackupWindowErrores ocurridos durante la transferencia del fichero del perfil/Errors occured during the profile file transferluckyBackupWindow(Ejecucin del perfilExecution of profileluckyBackupWindowBFinalizada la ejecucin de tareasExecution of tasks finishedluckyBackupWindowLa ejecucin de las tareas se cancelaron de forma abrupta por el usuario4Execution of tasks were terminated violently by userluckyBackupWindow SalirExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowHFallo al crear la carpeta de destino&Failed to create destination directoryluckyBackupWindowBNo se pudo crear el nuevo perfil Failed to create new profileluckyBackupWindowxFallo al borrar todos los ficheros relacionados (logs, etc.).Failed to delete all relevant files (logs etc)luckyBackupWindow6No se pudo borrar el perfilFailed to delete profileluckyBackupWindow|Fallo al duplicar todos los archivos relacionados (logs, etc.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow6Fall al duplicar el perfilFailed to duplicate profileluckyBackupWindow6Fall al duplicar el perfilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow0Fallo al exportar perfilFailed to export profileluckyBackupWindow:No se pudo importar el perfilFailed to import profileluckyBackupWindow<No se pudo renombrar el perfilFailed to rename profileluckyBackupWindow4No se pudo crear el perfilFailed to replace profileluckyBackupWindow Fallo al empezarFailed to startluckyBackupWindowFallo al actualizar todos los ficheros relacionados (logs, etc.).Failed to update all relevant files (logs etc)luckyBackupWindowBOcultar la ventana de informacinHide information windowluckyBackupWindow<Ocultar ventana de informacin+hide/show information window button tooltipHide information windowluckyBackupWindowImportar perfilImport ProfileluckyBackupWindow,Ventana de informacinInformation windowluckyBackupWindow,Ventana de informacininformation window titleInformation windowluckyBackupWindowjltimo momento de ejecucin de las tareas actualizado$Last execution time of tasks updatedluckyBackupWindow6Lista de tareas disponiblesList of all the available tasksluckyBackupWindowBloqueaLockluckyBackupWindowGestin &BackupManage &BackupluckyBackupWindow"Administrar tarea Manage TaskluckyBackupWindowpMover la operacin seleccionada una posicin hacia abajo/Move the highlighted task down, by one positionluckyBackupWindowrMover la operacin seleccionada una posicin hacia arriba-Move the highlighted task up, by one positionluckyBackupWindowNONOluckyBackupWindowNO INCLUIDO NOT INCLUDEDluckyBackupWindow AVISONOTEluckyBackupWindow0No se produjeron erroresNo errors foundluckyBackupWindow<Llevando a cabo ahora la tareaNow performing taskluckyBackupWindowMuestra slo errores y mensajes importantes durante la actualizacin de la ventana. could not be saved'ProfileluckyBackupWindow PerfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Perfil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow PerfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow PerfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Perfillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Perfil3full phrase: 'Profile set as default'ProfileluckyBackupWindowrLa actualizacin de la barra de progreso no ser realista(Progressbar update will not be realisticluckyBackupWindowR&enombrarR&enameluckyBackupWindow Error de lectura Read errorluckyBackupWindowNEliminando los datos antiguos de imagen Removed all older snapshots dataluckyBackupWindowEliminandoRemovingluckyBackupWindowxEliminando antiguas imgenes y ficheros de registro de tarea+Removing old snapshots and logfiles of taskluckyBackupWindowEjecutarRunluckyBackupWindowP&rogramar S&cheduleluckyBackupWindow<Seleccionar carpeta a exportarSelect export directoryluckyBackupWindow2Configuracin por defectoSet as DefaultluckyBackupWindow,Establecer direcciones Set pathsluckyBackupWindow`Establecer direcciones para comandos rsync y ssh$Set paths for rsync and ssh commandsluckyBackupWindowBMostrar la ventana de informacinShow information windowluckyBackupWindow<Mostrar ventana de informacin+hide/show information window button tooltipShow information windowluckyBackupWindow:Mostrar texto bajo los iconosShow text under iconsluckyBackupWindow OrigenSourceluckyBackupWindow`Detener AHORA las tareas que se estn ejecutando'Stop the execution of running tasks NOWluckyBackupWindowTCreada correctamente la carpeta de destino)Successfuly created destination directoryluckyBackupWindow TareaTaskluckyBackupWindowLista de tareas Task listluckyBackupWindow4Lista de tareas del perfilTask list of profileluckyBackupWindow4La descripcin del archivoThe description of profileluckyBackupWindow|El directorio seleccionado no contiene datos de perfil vlidosCThe directory you have selected does not contain valid profile dataluckyBackupWindowhEl nombre introducido contiene caracteres no vlidos:The name you have entered contains only invalid charactersluckyBackupWindowBEl sistema se apagar en 1 minuto$The system will shutdown in 1 minuteluckyBackupWindow:La lista de tareas est vacaThe task list is emptyluckyBackupWindowEsto realizar una <b>simulacin</b> que no producir ningn cambio (y emitir un resultado muy parecido a un caso real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowFuera de tiempo Timed outluckyBackupWindow6No se puede abrir el perfilUnable to open profileluckyBackupWindow"Error desconocido Unknown errorluckyBackupWindow"Error desconocidothis refers to a process Unknown errorluckyBackupWindowhUtilizar el botn "aadir" a la derecha para empezar0Use the "add" button on the right to get startedluckyBackupWindowUsar las 'casillas de inclusin' para incluir o no seleccionar una operacin>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowHVer/Editar la descripcin del perfil!View/Edit the profile descriptionluckyBackupWindowADVERTENCIAWARNINGluckyBackupWindowBienvenido a Welcome toluckyBackupWindow2Quieres eliminar tambin:Would you like to also remove:luckyBackupWindowD Desea continuar de todas formas?!Would you like to proceed anyway?luckyBackupWindow* Desea reemplazarlo?Would you like to replace it ?luckyBackupWindowJ Desea guardarlo antes de proceder ?-Would you like to save it before proceeding ?luckyBackupWindow$Error de escritura Write errorluckyBackupWindowSYESluckyBackupWindowlHa solicitado la creacin de una tarea de RESTAURACIN/You have asked for a RESTORE task to be createdluckyBackupWindowfSe ha alcanzado el nmero mximo de tareas posibles5You have reached the maximum limit of supported tasksluckyBackupWindowl Tiene que eliminar una tarea si quiere aadir otra !7You have to remove a task if you wish to add another !!luckyBackupWindowdse crear una nueva en blanco, con el mismo nombre4a new blank one, with the same name, will be createdluckyBackupWindow aadiraddluckyBackupWindowaadir tareaadd taskluckyBackupWindowya existealready existsluckyBackupWindow@y lista desplegable de 'perfil'and 'profile' drop-down listluckyBackupWindow@y aadido a la lista de perfilesand added at the profile listluckyBackupWindow\y cambia todo lo que quieras antes de proceder.and change anything you wish before proceedingluckyBackupWindowcomoasluckyBackupWindowcomoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowcalculando calculatingluckyBackupWindowcalculando-info message displayed during ...calculations calculatingluckyBackupWindow,salida de los comandoscommands outputluckyBackupWindowno pudo crearsecould not be createdluckyBackupWindow"no pudo guardarsecould not be savedluckyBackupWindow$no se pudo guardarPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow creado con xitocreated successfullyluckyBackupWindow<creando perfil por defecto ...creating default profile ...luckyBackupWindow$creando perfil ...creating profile ...luckyBackupWindowtcrontrab actual <font color=green>actualizado exitosamente6current crontab updated successfullyluckyBackupWindowperfil actualcurrent profileluckyBackupWindow$perfil por defectodefault profileluckyBackupWindow$perfil por defecto^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow$perfil por defectoVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow"borrado con xitodeleted successfullyluckyBackupWindow"borrando archivosdeleting filesluckyBackupWindow"borrando archivos/info message displayed during ...file deletionsdeleting filesluckyBackupWindowvisualiza - restaura - borra backups existentes o tareas destacadas?display - restore - delete existing backups of highlighted taskluckyBackupWindowjvisualizar informacin considerando la tarea sealada.display information regarding highlighted taskluckyBackupWindowBduplicado satisfactoriamente comoduplicated successfully asluckyBackupWindow&errores encontrados errors foundluckyBackupWindow*ejecucin del perfil:execution of profile:luckyBackupWindow*ejecucin del perfil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow2exportado correctamente aexported successfully toluckyBackupWindow"fallo al eliminarfailed to removeluckyBackupWindow\fallo al eliminar los datos antiguos de imagen)failed to remove all older snapshots dataluckyBackupWindowcompletadofinishedluckyBackupWindowcompletado:full phrase: 'Execution of profile finished'finishedluckyBackupWindow&importado con xitoimported successfullyluckyBackupWindowin progreso...in progress...luckyBackupWindowincluirincludeluckyBackupWindowes modificado is modifiedluckyBackupWindow"no es vlido parais not valid forluckyBackupWindow2saltar al siguiente errorjump to next errorluckyBackupWindow0saltar al error anteriorjump to previous errorluckyBackupWindow"cargado con xitoloaded successfullyluckyBackupWindow<cargando perfil por defecto...loading default profile ...luckyBackupWindowerror al cargarloading failedluckyBackupWindow&cargando perfil ...loading profile ...luckyBackupWindowjlos archivos de registro se crearon en el directorio:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow,minimizar a la bandejaminimize to trayluckyBackupWindowRminimiza la ventana al rea de la bandeja%minimizes the window to the tray arealuckyBackupWindowmodificarmodifyluckyBackupWindow8modificar tarea seleccionadamodify highlighted taskluckyBackupWindownada que hacer nothing to doluckyBackupWindowZejecucin de un comando posterior a la tareapost-task execution of commandluckyBackupWindowRejecucin de un comando previa a la tareapre-task execution of commandluckyBackupWindow perfilprofileluckyBackupWindow perfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow perfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow perfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow perfilprofile luckyBackupWindowmodo silencioso quiet modeluckyBackupWindowactualizada refreshedluckyBackupWindoweliminarremoveluckyBackupWindow6eliminar tarea seleccionadaremove highlighted taskluckyBackupWindow,renombrado con xito arenamed successfully toluckyBackupWindow2renombrado con xito paraWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowla salida de rsync y de los comandos anteriores y posteriores se muestra aqu9rsync and pre/post task commands output is displayed hereluckyBackupWindow$guardado con xitosaved successfullyluckyBackupWindow@guardando perfil por defecto ...saving default profile ...luckyBackupWindow(guardando perfil ...saving profile ...luckyBackupWindowplanificado scheduledluckyBackupWindow.fijado como por defectoset as defaultluckyBackupWindowestablecer aset toluckyBackupWindow cierreshutdownluckyBackupWindowmodo simulacinsimulation modeluckyBackupWindow estadostatusluckyBackupWindowsuperusuario super userluckyBackupWindow"modo superusuariosuper user modeluckyBackupWindow haciatoluckyBackupWindow,transfiriendo archivostransferring filesluckyBackupWindow,transfiriendo archivos/info message displayed during ...file transferstransferring filesluckyBackupWindow4intentando enviar un emailtrying to send an emailluckyBackupWindowversin:version:luckyBackupWindow(Calcular diferenciasCalculate differences manageDialogCalcular las diferencias entre el origen y la imagen seleccionadaFCalculate the differences between the source and the selected snapshot manageDialogBClculos detenidos por el usuarioCalculations terminated by user manageDialog CerrarClose manageDialog&Cerrar esta ventanaClose this window manageDialog BorrarDelete manageDialogrEliminada la imagen seleccionada y su archivo de registro,Delete the selected snapshot and its logfile manageDialognNo tengo permisos suficientes para leer este directorio;I do not have sufficient permissions to read this directory manageDialogNPor favor, elija una imagen de la lista&Please select a snapshot from the list manageDialoghPor favor, espere hasta que el enlace haya terminado*Please wait until the thread is terminated manageDialogRestaurarRestore manageDialog@Restaurar la imagen seleccionadaRestore the selected snapshot manageDialogALTOSTOP manageDialog4Detener los clculos AHORAStop calculations NOW manageDialog2Este directorio no existeThis directory does not exist manageDialog2Este directorio no existeInformation messageThis directory does not exist manageDialogpMostrar el archivo de registro de la imagen seleccionada)View the logfile of the selected snapshot manageDialogrMostrar el logfile de la tarea a sincronizar seleccionada*View the logfile of the selected sync task manageDialogdestino: destination: manageDialogocultar origen hide source manageDialog^luckyBackup - administrar la copia de seguridadluckyBackup - manage backup manageDialogno disponible not available manageDialog perfilprofile manageDialogorigen:source: manageDialog"sincronizar dir A sync dir A manageDialog"sincronizar dir B sync dir B manageDialog tareatask manageDialogver el registroview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABORTARABORT manageWizardAbortadoAborted manageWizard<Lugar de la copia de seguridad Backup path manageWizardlNavegar localmente para un nuevo lugar de restauracin%Browse locally for a new restore path manageWizardComprobar, clonar la imagen de la copia de seguridad al restaurar el directorio.BCheck this, to clone the backup snapshot to the restore directory. manageWizardFecha & hora Date & time manageWizard2Borrar copia de seguridad Delete backup manageWizardBorrar los datos existentes que no estn en la copia de seguridad4Delete existing data that do not exist at the backup manageWizardBorrando datos Deleting data manageWizardvBorrando fichero que ha cambiado en la imagen de las listas)Deleting file that lists snapshot changes manageWizardXBorrando el fichero de registro de la imagenDeleting snapshot logfile manageWizardLos ficheros de la copia de seguridad existente reemplazarn a los correspondientes del directorio de restauracinSExisting backup files will replace the corresponding files at the restore directory manageWizardTerminadoFinished manageWizardSi la informacin anterior es correcta, pulse <b>comenzar</b> para empezar@If the information above is correct, click start to begin manageWizardSi la informacin superior es correcta, pulsar <b>comenzar</b> para empezar`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard2Saltar al error siguienteJump to next error manageWizard0Saltar al error anteriorJump to previous error manageWizardhNo existen datos especficos de imagen. Omitiendo...,No snapshot specific data exist. Skipping... manageWizard AccesoPath manageWizard>Restaurar la copia de seguridadRestore backup manageWizard*Lugar de restauracin Restore path manageWizardBRestaurando datos: rama principalRestoring data: main trunk manageWizardHRestaurando datos: fichero de imagenRestoring data: snapshot files manageWizardTElegir un nuevo directorio de restauracinSelect new restore directory manageWizardEl directorio restaurado llegar a ser el mismo que la imagen de la copia de seguridadBThe restore directory will become identical to the backup snapshot manageWizardEsto efectuar una <b>simulacin</b> que no efectuar ningn cambio (y provocar prcticamente el mismo resultado que una ejecucin real).{This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardBActualizando la lista de imgenesUpdating list of snapshots manageWizardATENCIONWARNING manageWizardXVa a eliminar datos de la copia de seguridad#You are about to delete backup data manageWizardcancelarcancel manageWizardcambiarchange manageWizard cerrarclose manageWizard&encontrados errores errors found manageWizard fallofailed manageWizard fallo-info message displayed after ...file deletionfailed manageWizarddluckyBackup - administrador de copias de seguridadluckyBackup - manage backup manageWizarderror siguiente next error manageWizardsin errores no errors manageWizardno disponible not available manageWizarderror anteriorprevious error manageWizardsimulacin simulation manageWizardcomenzarstart manageWizardsatisfactoriosuccess manageWizardsatisfactorio-info message displayed after ...file deletionsuccess manageWizardsatisfactorio5info message displayed after ...snapshots list updatesuccess manageWizard...... modifyDialog @Host:@Host: modifyDialogAadir un directorio, archivo o expresin que excluir de esta tarea@Add any directory, file or pattern to be excluded from this task modifyDialogAadir cualquier directorio, archivo o patrn para ser incluido por esta tarea>Add any directory, file or pattern to be included by this task modifyDialogAadir comandos tal y como si muestran en el campo a continuacin*Add command as entered in the field beside modifyDialogvAadir exclusin tal y como se figura en el siguiente campo*Add exclusion as entered in the next field modifyDialogvAadir exclusin tal y como se figura en el siguiente campo*Add inclusion as entered in the next field modifyDialogAadir o eliminar opciones de rsync. Si no sabe lo que significan, mejor no cambiar nada !]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogAadir opcin de rsync tal y como se figura en el siguiente campo-Add rsync option as entered in the next field modifyDialogAvanzadoAdvanced modifyDialogDespusAfter modifyDialog Ejecutar tambin Also Execute modifyDialogDCopia de seguridad de los archivos Backup files modifyDialog AntesBefore modifyDialog(Directorios de cache Cache folders modifyDialogCancelarCancel modifyDialog$Verificar que se usa una particin FAT/NTFS como destino. El propietario de los datos y los permisos NO sern preservados. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogComprobar el clonar el origen en el destino Dejar sin verificar al crear un directorio extra en el destinoiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialognSeleccionar para conectarse a un mdulo remoto de rsync/Check this to connect to an rsync Remote module modifyDialog(Opciones del comandoCommand Options modifyDialog"Lista de comandos Command list modifyDialogCopiar dispositivo (slo superusuario) y archivos especiales como aparecen (-D)?Copy device (super user only) & special files as they are (-D) modifyDialoglCopiar enlaces simblicos como enlaces simblicos (-l)Copy symlinks as symlinks (-l) modifyDialogDefinir el tipo de esta tarea: 1. Hacer una copia de seguridad de los contenidos del Origen en el Destino 2. Hacer una copia de seguridad del directorio Origen por nombre en el Destino 3. Sincronizar Origen y Destino, manteniendo los archivos ms recientes de los dosDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogBBorrar los archivos en el destinoDelete files on the destination modifyDialogDescripcin Description modifyDialogDestino Destination modifyDialogDestino : Destination : modifyDialog,El destino es FAT/NTFSDestination is FAT/NTFS modifyDialog8NO crear un directorio extraDo NOT create extra directory modifyDialogNo hacer copia de seguridad de archivos del origen que son ms recientes en el destino (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNo excluir esta lista de patrones. Por favor, ir al manual para ampliar la informacin para incluir reglas.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogIntroducir el nombre de esta tarea (por ejemplo, "Copia de seguridad de mi directorio home"):Enter a name for this task (eg "Backup my home directory") modifyDialog Introducir aqu un comando a ejecutar despus de la tarea y a continuacin pulsar el botn "aadir" para aadirlo a la siguiente listanEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogIntroducir aqu un comando a ejecutar antes de la tarea y a continuacin pulsar el botn "aadir" para aadirlo a la siguiente listaoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogIntroducir aqu opciones adicionales para rsync (ej. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogDIntroduce aqu el archivo, carpeta o expresin y pulsa el botn "aadir" para aadirlo a la lista de inclusiones * - corresponde con cualquier componente no vacio (se detiene en las barras) ** - corresponde con cualquier componente, incluyendo una barra ? - corresponde con cualquier carcter excepto una barra parte_de_la_ruta nombre_directorio /*** - corresponde con el directorio y con todo lo contenido en l inicio / - se expande la expresin a un punto en particular de la jerarqua de la transferencia (normalmente esto es la "fuente") parte_de_la_ruta nombre_directorio / - slo corresponde con el directorio, ni archivos regulares, enlaces simblicos o dispositivosEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogDIntroduce aqu el archivo, carpeta o expresin y pulsa el botn "aadir" para aadirlo a la lista de inclusiones * - corresponde con cualquier componente no vacio (se detiene en las barras) ** - corresponde con cualquier componente, incluyendo una barra ? - corresponde con cualquier carcter excepto una barra parte_de_la_ruta nombre_directorio /*** - corresponde con el directorio y con todo lo contenido en l inicio / - se expande la expresin a un punto en particular de la jerarqua de la transferencia (normalmente esto es la "fuente") parte_de_la_ruta nombre_directorio / - slo corresponde con el directorio, ni archivos regulares, enlaces simblicos o dispositivosEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogIntroducir la ruta completa al directorio de destino (ej. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialog<Introducir la ruta completa del archivo que contiene la clave privada de autenticacin ssh (dejar en blanco si no es aplicable) Hay que tener presente que tienes que llevar a cabo todas las opciones necesarias para una conexin remota ssh sin contrasea usando un par de claves OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogIntroducir la ruta completa al archivos que contiene la contrasea de autenticacin de rsync (no de ssh, dejar en blanco si no es aplicable).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogIntroducir la ruta completa al directorio de origen (ej. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogHIntroduce el nombre del host remoto."Enter the name of the remote host. modifyDialogIntroducir el puerto que se quiere usar para la conexin ssh (dejar en blanco para el puerto por defecto)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogIntroduce el nombre de usuario para el host remoto (dejar en blanco si no es aplicable).HEnter your username for the remote host (leave blank if not applicable). modifyDialogExcluirExclude modifyDialogrExcluir todas las carpetas "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogExcluir todos los archivos y carpetas de copias de seguridad (**~)(Exclude all backup files & folders (**~) modifyDialog~Excluir todas las carpetas de cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogbExcluir todas las carpetas temporales (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogExcluir las carpetas de papelera de todos los usuarios (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogExcluir lista Exclude list modifyDialogExcluir carpetas con los puntos de montaje /mnt y /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogvEjecutar comandos adicionales, antes o despus de la tarea.1Execute extra commands, before or after the task. modifyDialogDLista de opciones extra para rsyncExtra rsync options list modifyDialogRLos archivos con hard links en el orgien tendrn hard links en el destino. AVISO: Todos los archivos tienen que ser incluidos en el conjunto de la transferencia ! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogDIgnorar los archivos al estilo CVSIgnore files the CVS way modifyDialognIgnorar archivos usando un algoritmo similar a CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogIncluirInclude modifyDialog(Lista de inclusiones Include list modifyDialogIncluir modo Include mode modifyDialog Modo:Mode: modifyDialogNombre :Name : modifyDialogOkOkay modifyDialogIncluir slo Only Include modifyDialogXConservar archivos especiales de dispositivoPreserve device, special files modifyDialog(Conservar hard linksPreserve hard links modifyDialog<Conservar propietarios, fechasPreserve ownership, times modifyDialog$Conservar permisosPreserve permissions modifyDialogVConservar los permisos de los archivos (-p)"Preserve permissions of files (-p) modifyDialog8Conservar enlaces simblicosPreserve symlinks modifyDialogConservar el propietario (slo superusuario), grupo y fecha de los archivos (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialogNLeer los patrones excluidos del archivoRead exclude patterns from file modifyDialogLeer archivo: Read file: modifyDialogJLeer patrones a incluir desde archivoRead include patterns from file modifyDialogVDescender recursivamente en los directoriosRecurse into directories modifyDialog`Descender recursivamente en los directorios (-r)Recurse into directories (-r) modifyDialog RemotoRemote modifyDialogMdulo remoto Remote module modifyDialogXEliminar el comando seleccionado de la lista$Remove highlighted command from list modifyDialog<Eliminar seleccin de la lista&Remove highlighted exclusion from list modifyDialog\Eliminar la inclusin seleccionada de la lista&Remove highlighted inclusion from list modifyDialogPEliminar opcin seleccionada de la lista#Remove highlighted option from list modifyDialogVRepetir cualquir comando que falle, x veces&Repeat any command that fails, x times modifyDialog$Repetir al fallar:Repeat on fail: modifyDialogConfigurar el nmero total de imgenes de copias de seguridad a mantener0Set the total number of backup snapshots to keep modifyDialoglMostrar los comandos de rsync a medida que se ejecuten.Shows the rsync command as it will be executed modifyDialogRIgnorar archivos de destino ms recientesSkip newer destination files modifyDialog(Imgenes a mantener:Snapshots to keep: modifyDialog FuenteSource modifyDialogOrigen :Source : modifyDialog8Sincronizar Origen y Destino"Synchronize Source and Destination modifyDialog,Directorios de sistemaSystem folders modifyDialog:Puntos de montaje del sistemaSystem mount folders modifyDialog(Descripcin de tareaTask description modifyDialog$Nombre de la tarea Task name modifyDialog.Propiedades de la tareaTask properties modifyDialogPlantillas Templates modifyDialog,Directorios temporalesTemporary folders modifyDialogPapeleraTrash modifyDialog Tipo :Type : modifyDialogfUsar equipo remoto ya bien para el origen o destino2Use a remote host either for source or destination modifyDialog\Usar un host remoto para los datos de destino.'Use a remote host for destination data. modifyDialogZUsar un host remoto para los datos de origen."Use a remote host for source data. modifyDialog$Usar equipo remotoUse remote host modifyDialogBUsar ssh como shell de transporteUse ssh as transport shell modifyDialog.Definida por el usuario User Defined modifyDialog.Definida por el usuario User defined modifyDialogUsuario:User: modifyDialog<Ya ha aadido el tem incluido(You have already added this include item modifyDialog2Ya ha aadido esta opcin"You have already added this option modifyDialog aadiradd modifyDialogavanzadoadvanced modifyDialognavegarbrowse modifyDialog$navegar localmentebrowse locally modifyDialog$navegar localmente browse localy modifyDialogcancelarcancel modifyDialog cancelar edicincancel editing modifyDialogdestino destination modifyDialog hechodone modifyDialogedicin hecha done editing modifyDialog"nombre de archivofilename modifyDialog:iniciar el editor de patroneslaunch the pattern editor modifyDialoglost+found lost+found modifyDialog"lista de opciones options list modifyDialogpuerto :port : modifyDialog4archivo de clave privada :private key file : modifyDialogeliminarremove modifyDialog>archivo de contrasea de rsync:rsync password file: modifyDialog simplesimple modifyDialogdestinosource modifyDialogsshssh modifyDialogvalidarvalidate modifyDialogCancelarCancel patternEditorSeleccionar esto parar usar el directorio de arriba como ruta absoluta, si no esta seleccionado se buscar la correspondencia del patrn con cualquier archivo/directorio que cumpla con el criterio "nombre"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefinir aqu el criterio para los nombres de los archivos/directorios para los que buscar la correspondenciaEDefine here the name criteria for the files/directories to be matched patternEditorjDefinir aqu a qu se quiere que se refiera el patrn8Define here, what would you like the pattern to refer to patternEditor2Contenidos del directorioDirectory contents patternEditorIntroducir aqu los caracteres que aparecen en cualquier posicin del nombre de los archivos/directorios a los que se refiere el patrnsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor`Introducir aqu los caracteres finales de los archivos/directorios a los que se refiere el patrn por ejemplo para hacer referencia a todos los archivos ".txt", introducir .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorIntroducir aqu el nombre de los archivos/directorios a los que se refiere el patrnGEnter here the name of the files/directories that the pattern refers to patternEditorIntroducir aqu los caracteres iniciales de los archivos/directorios a los que se refiere el patrnbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor2Descender en la ruta en :Go deeper in path by : patternEditorLDescender en la ruta a cualquier nivelGo deeper in path by any level patternEditorOKOkay patternEditor`Por favor, seleccione un directorio en el origen+Please choose a directory within the source patternEditorZPor favor, seleccione un archivo en el origen&Please choose a file within the source patternEditorRestaurar los campos del editor de patrones con los valores por defecto5Reset the pattern editor fields to the default values patternEditor,Seleccionar directorioSelect directory patternEditor&Seleccionar archivo Select file patternEditor.Conjunto de directoriosSet of directories patternEditor(Conjunto de archivos Set of files patternEditor,Especificar directorioSpecific directory patternEditor&Especificar archivo Specific file patternEditor@El patrn actual se muestra aqu$The actual pattern is displayed here patternEditor0El patrn se refiere a :The pattern refers to a: patternEditor(Usar esto si el patrn hace referencia a un conjunto de directorios que tienen algo en comn por ejemplo, todos los directorios con el nombre "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUsar esto si el patrn hace referencia a un conjunto de archivos que tienen algo en comnpor ejemplo todos los archivos con la extensin ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUsar esto si el patrn hacer referencia a un directorio especfico por ejemplo "/media/musica/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUsar esto si el patrn se refiere a un archivo especfico por ejemplo "/media/musica/album/cancion.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorPUsar esto si el patrn se refiere al contenido de un directorio (o un conjunto de ellos), no al mismo directorio ej. los contenidos del directorio "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorUsar esto al referirse a subdirectorios ms desarrollados ej. El directorio "/media/music" incluye 3 subdirectorios: 1.Rock 2.Jazz 3.Soundtracks y le gustara referirse a todo el contenido de los 3, definirlo como: * Conjunto de directorios * Contenido del directorio * lugar:/media/music/ * Profundizar en el lugar por "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorcualquieraany patternEditor`navegar localmente para la ruta de un directorio"browse localy for a directory path patternEditorBnavegar localmente por un archivobrowse localy for a file patternEditorcontiene : contains : patternEditordirectorio: directory : patternEditortermina con : ends with : patternEditorarchivo :file : patternEditorpatrn final final pattern patternEditor es exactamente : is exactly : patternEditor nombrename patternEditor$editor de patronespattern editor patternEditorrestablecerreset patternEditorcomienza con : starts with : patternEditor,usar una ruta absolutause absolute path patternEditorarchivo filescheduleDialog & del& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3231scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:retardar:delayscheduleDialogT<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Perfiles de planificacin de ejecucin</span></p></body></html>

Profile execution scheduling

scheduleDialog@ reboot@ rebootscheduleDialogNAadir un nuevo perfil de planificacinAdd a new profile schedulescheduleDialog<Aadir perfil de planificacinAdd profile schedulescheduleDialogCualquieraAnyscheduleDialog AbrilAprilscheduleDialog Abrilfull phrase: 'of April'AprilscheduleDialogrEst seguro de que desea cerrar el dilogo del programa?4Are you sure you want to close the schedule dialog ?scheduleDialog AgostoAugustscheduleDialog Agostofull phrase: 'of August'AugustscheduleDialogCancelarCancelscheduleDialogCompruebe si su equipo no admite un entorno grfico (por ejemplo un servidor)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogModo consola Console ModescheduleDialogDiciembreDecemberscheduleDialogDiciembrefull phrase: 'of December'DecemberscheduleDialog\Retardar la ejecucin de luckybackup al inicio&Delay luckybackup execution at startupscheduleDialog8Visualizar el crontab actualDisplay the current crontabscheduleDialogEjecutar perfilExecute profilescheduleDialogFebreroFebruaryscheduleDialogFebrerofull phrase: 'of February'FebruaryscheduleDialogViernesFridayscheduleDialog Perfil no vlidoInvalid profilescheduleDialog EneroJanuaryscheduleDialog Enerofull phrase: 'of January'JanuaryscheduleDialog JulioJulyscheduleDialog Juliofull phrase: 'of July'JulyscheduleDialog JunioJunescheduleDialog Juniofull phrase: 'of June'JunescheduleDialog MarzoMarchscheduleDialog Marzofull phrase: 'of March'MarchscheduleDialogMayoMayscheduleDialogMayofull phrase: 'of May'MayscheduleDialogBModificar perfil de planificacinModify profile schedulescheduleDialogbModificar el perfil de planificacin seleccionado Modify selected profile schedulescheduleDialog LunesMondayscheduleDialog> No se declar ningn perfil !No schedules are declared !!scheduleDialogNoviembreNovemberscheduleDialogNoviembrefull phrase: 'of November'NovemberscheduleDialogOctubreOctoberscheduleDialogOctubrefull phrase: 'of October'OctoberscheduleDialogPerfil : Profile :scheduleDialogHDetalles del perfil de planificacinProfile schedule detailsscheduleDialog`Eliminar el perfil de planificacin seleccionado Remove selected profile schedulescheduleDialog6Ejecutar una vez, al inicioRun once, at startupscheduleDialog SbadoSaturdayscheduleDialogSeptiembre SeptemberscheduleDialogSeptiembrefull phrase: 'of September' SeptemberscheduleDialogOmitir las tareas para las cuales se produzca un mensaje de aviso 'CRITICAL' tras la comprobacin de los directoriosSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog$Empezar desde ceroStarting from scratchscheduleDialogDomingoSundayscheduleDialogEl fichero de programa existente no es vlido para luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialog JuevesThursdayscheduleDialog MartesTuesdayscheduleDialogBNo se puede crear el archivo cronUnable to create cron filescheduleDialogJNo se pudo crear el archivo de tareasUnable to create schedule filescheduleDialogMircoles WednesdayscheduleDialog^Ha realizado cambios sin pulsar el botn cronIT8You have made changes without clicking the cronIT buttonscheduleDialogjHas alcanzado el nmero mximo de perfiles permitidosBYou have reached the maximum limit of supported scheduled profilesscheduleDialoglTienes que eliminar un elemento si quieres aadir otro5You have to remove an item if you wish to add anotherscheduleDialogTSu crontab se ha actualizado correctamente$Your crontab is updated successfullyscheduleDialog aadiraddscheduleDialog a lasatscheduleDialog cerrarclosescheduleDialog&cerrar este dilogoclose this dialogscheduleDialog cronIT ! cronIT !!scheduleDialog(contenido de crontabcrontab contentscheduleDialogdadayscheduleDialogda del mes :day of month :scheduleDialog$da de la semana : day of week :scheduleDialogcadaeveryscheduleDialog6luckyBackup - planificacinluckyBackup - schedulescheduleDialogminminscheduleDialogmodificarmodifyscheduleDialog mes :month :scheduleDialogndscheduleDialogas in 22nd dayndscheduleDialog<no existen entradas de crontabno crontab entries existscheduleDialogdeofscheduleDialog de cualquier mes of any monthscheduleDialogaceptarokayscheduleDialog<una vez, al inicio del sistemaonce, at system startupscheduleDialogrdscheduleDialogas in 23rd dayrdscheduleDialogeliminarremovescheduleDialogplanificar la ejecucin de perfiles como se ha indicado en la lista de arriba@schedule the execution of profiles as declared in the list abovescheduleDialogsaltar crticos skip criticalscheduleDialogstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialog,hora (horas:minutos) :time (hour:min) :scheduleDialog2mostrar el crontab actualview current crontabscheduleDialogNYa existe un perfil con el mismo nombre+A profile with the same name already exists textDialogJEst seguro de que quiere continuar?#Are you sure you wish to proceed ?? textDialog CUIDADO, si tu intencin NO es clonar el origen en el destino !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogCancelarCancel textDialogBCopiar el comando al portapapelesCopy command to clipboard textDialogPNo volver a mostrar esto para esta tarea$Do not show this again for this task textDialog8Introducir clave de acceso :Enter passphrase : textDialog.Introducir contrasea :Enter pasword : textDialogNIntroducir el nombre del nuevo perfil :#Enter the name of the new profile : textDialogBIntroducir el nombre del perfil :#Enter the new name of the profile : textDialogNoNo textDialogAceptarOkay textDialogPPor favor, introduzca un nombre distintoPlease enter a different name textDialog.Descripcin del perfil:Profile description : textDialogSYes textDialog(Ha seleccionado "Hacer una copia de seguridad de los contenidos del Origen en el Destino"<br>junto con la opcin "Borrar los archivos en el destino"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogDinformacin del correo electrnicoeMail information textDialogluckyBackup luckyBackup textDialogCancelarCancel winDialog$navegar localmentebrowse locally winDialogluckyBackup luckyBackup winDialogluckybackup-0.5.0/translations/luckybackup_zh_TW.qm0000666000175000017500000030715413157502317022127 0ustar luckybluckyb0HYOKSUYE]_kCgg(g^hY?ej_saz-vfffvS{{egsQEV9ToET45 N~/-aYa\a ca4ajanh@Ż[E*z*H5AcabWdwT_"f*J"i&%Bh({Y) *`3*0fD+h4+i+i,B+/]^+:.BTEttϢFZ9@GwGHxO>J6J;J;JwB"PdPdtPdxSUGTZ %TYL[ \Z#?`Sj6Kcj6cj6j6_ l̙`mCM qHtdNxAz[SKY}2JXL3CIa/WA+s$)7>ܱĉ;f˱&XSى>X3T(?=3z<#LGr: :~\ d3gW9P!b,f(e'+&O.+6F7r<$)GOI|XQ19PQ R[v_/FfChWhwgKpN'pNcq>ЈtcO&!t- j!_7YE5d657ѐSFBi7u\VԳŵ P ,'V _Db=xK #uVe&oǒ)+q/r]2,8IWBZyC cIPoE\cNc0f:u2z|B1OWk2dRA'QZI^SR.gvY+e* ebC}NkP7,÷Ie&Yeԥ{*UyV[,%l&ESv"GҐOo^q Kу&<a654)4)*߬d*,b8My:M$T_rUTelh !iJYiUctM$}^Us.e.e ]eT WTcT/2F%OVtd fRMhYkŇnʵ;0\[Yܯ"))>%bjRN)ϗU]u| } ‰G)>BMyeJjr PbsQAL~O5OjzeJahiYzSi^"lw+rGt2}7;:օjPIVrII.IPIhIl~&~^~~,{5,#m^AV1Gф2 ɱ. lHeFaH]S -id@Gi7  -8U4}w=k9:RF<=Q7N@IEXV@h#FJVFwIG3?H7: OT!Zܒ-[`> \xl@m6>ڦnnp^txw_v=4y~i >6Fq9rlȕȕȕ}XWJZg: =t,î"+pX+ߘ?98 (v ;"," ._u;KC\bKOVf_AvB _hDb#jf0 ghnhniiRkՒdhkՒ^sD}v36yy|X]~gvb(TN4YR uzEII)n(` Q|VkgyS!{ȒIۑ=W:':@Q_@Z  |uWl`7읒:8XB`47  X !|)5`B^+v;+eC-z22 9YH>lLEHEa;N3UtYvC`xeBa#6vuAv:,D{_gQIC38ڄkDNOFF,Fcϕ?i*zΕgUUȋurdGjogPG%- BFȕ-Kax9aYqXTU&4U;1DhnG~Eǧ~A̐j@II%׃0[vߖDkZ YfH33{2 0;txj"r)@?,-/e./19GF\4IX9Jf JεXL"NfPO!Ry AV)|gAh [mTlzG@x?59Zm k>#Y@(hkYʴ5hʶ?V'<,7&BAvDJ|if~) Ni ] c1 o! q.  *{i +) 64 8ć CcK| Mg Mgt N# W_ ]e d.\ j^L lj mE p06 q[X R @a eX P ӥ aD -B*/ Z ' Ԡ;9  ׊$ =8 .[  Ѿ!( r TM   c2R  C ! -0; -n| /l$ 7E D 8~ ?6o @  ` f g lȷ pN% zj@, CY }W   : H 1 i: ~& c>( XBB  24 b/ ,e %_ GCH ñ/ n' ܅ Xh, hU t$!k ԑ @ , ݓ@^ w T\- i9 7 p "< Oj vf{ R Vdu dV jS  #+. (Nե +x - 0b0 7'y 93BE :UC` ;f Eg: Ge' HZ L9\ PAk T,\ ZJ _yM9 _ fS g.w g.w g.wB i5 kY mP {{ {g { 1 8# Fh Ҟ@ " \ u G YS Y/ @e A.4 EhM F F.b LMbt N0 P}* Sz X ^æ bU o o9 r'^ O v+ .  JU j֧ Ҏ r [ \%5 /w " UN0 P(  ~n j U Tn siS % 2I{ af Rb? K ?B8 D ; `! sGx @y T": #g &,{ &'* ) *}E: + ,D ,D 6) P`V \.~# c iJ {U eq 1A  B) { d mst c XwY  f] zI lz>  Ie] 1C j& Yd id [ ": ,G ݗ #Z 䕜Yu x c2R n* 6 8` 8l 8o[ r 63=As+C(/Ե'~(q/#YaE7GkJTba\P].acROe~!mRUp{>7yi{-r;Y<>x{}R-O{$r3Wu9֭g 3VEMmkSF{dyq4ZU" ae: C3)m{#!`&)NH(դ(դ-X`&4?g<EWE^!G E)NNNRN>[=3cKf/cln4s s &u@#u@"~(N]YDh3xkk;4rfC5t!+)*ZyQO0ךvɀɟ)[ʱNuj+\"vun_֙S.-Gcߖl+I]E70.YcKPRNŕio kcW({]upCalculating differencesCalcDiffThreadeϟY'0Soy:{,Ne2Data amount is huge. Displaying only first entriesCalcDiffThreadz _ Please waitCalcDiffThread kcW(ccvjScanning destinationCalcDiffThread kcW(cc_qgScanning snapshotCalcDiffThread kcW(ccOnScanning sourceCalcDiffThread_qgTOnv]upSnapshot and source differencesCalcDiffThreadOnQg][XeN T v_qge=Snapshot data that also exists at the source and is differentCalcDiffThreadN W(OnQgv_qge-Snapshot data that do NOT exist at the sourceCalcDiffThreadN W(_qgQgvOne-Source data that do NOT exist at the snapshotCalcDiffThread T kev A  B NKv]upSync dir A & B differencesCalcDiffThread(N W(T kev B QgvT kev A e/Sync dir A data that do NOT exist at sync dir BCalcDiffThread2T kev A Qg][XeN T vT kev B e?Sync dir B data that also exists at sync dir A and is differentCalcDiffThread(N W(T kev A QgvT kev B e/Sync dir B data that do NOT exist at sync dir ACalcDiffThread"_qge\W(0 S0 fBfcOne=The snapshot data will replace the source data during RESTORECalcDiffThread2Sg W(U_u(rxfB NebMgW(0 S0 fBR*dCThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadR*dOnQgv^PNe;delete existing source data that do not exist at the backupCalcDiffThreadkcW(PN\hH0e劌j_qge.Backing-up profile, logfiles and snapshot dataQObjectVCRITICALQObjectcNVY1eW eWLCommand re-run due to failureQObjectq!lՕU_e劌jCould not open the logfileQObjectvj DestinationQObject vvW0vDestination directoryQObjectv DirectoryQObject&blg S/2QeT keeY> A vk P;I do not have the permission to read/enter sync directory AQObject&blg S/2QeT keeY> B vk P;I do not have the permission to read/enter sync directory BQObject blg S/2QevjeY>vk PDI do not have the permission to read/enter the destination directoryQObject blg S/2QeOneY>vk P?I do not have the permission to read/enter the source directoryQObjectnb\<font color=orange><b>N N</b></font>g,NR0T ke]O\q!YOU\YWLiI will not skip this task. Synchronizing is going to be performed anywayQObjectlb\<font color=red><b>N N</b></font>g,NR Vp`]}U_u(0 NfTJ0 xmI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject N k!WLfBLast execution timeQObjectY}OKQObject,~|~NKRM<b>SmRxiuvvST+</b>APlease uncheck appropriate include boxes before proceedingQObjectSmRxiuvvST+ bfe9NR٘^Wp0 <b>PNvQg[</b>0 NYv^W T&RGW(~|~NKRM \b@g NR٘^Wp0 <b>PNvQg[</b>0 vNRِxd0 <b>PST+</b>0 xPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObjectOnSourceQObjectOnvSource directoryQObjectT kevSync directoryQObjectkcW(T keSyncingQObjectkcW(T ke'Full phrase: Syncing to SyncingQObjectNRcϏTask descriptionQObject8vjeY>N [XW( \^zNP eeY>N&XkQeePNve]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectjN RxSvNRN-g (QhbR) NR<b>Qqu(vT vvjeY></b> QvN-\g NNR\PNvThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjecte劌jq!l^z The logfile could not be createdQObject e劌jN [XW(The logfile does not existQObjectz ^VX1NNN/The process reported an errorQObjectc[vcNSg*[/The specified command is probably not installedQObject NRnUpzzThe task list is emptyQObject<b>N N3This task will not be skippedQObjectJg,NR\<font color=red><b>N</b></font>7This task will be skippedQObjectOu(`z NjgUsing remote, check is skippedQObjectfTJWARNINGQObject`]xSN RQiP N#cNR8You have included both of the following connected tasks:QObject`\g*xSNOUNRYou have not included any tasksQObjectT/band/orQObjectcN command: QObjectN [XW(does not existQObjectv|s/ errors foundQObjectWL{,1RNRexecution of 1st part of taskQObjectWL{,1RNR?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectWL{,2RNRexecution of 2nd part of taskQObjectWLNRexecution of taskQObjectWLNR3Full phrase: execution of task: finishedexecution of taskQObjectWLNRdFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject }Pg_Nx exit code: QObject[ubfinishedQObject[ub?Full phrase: execution of 1st part of task: finishedfinishedQObject[ub3Full phrase: execution of task: finishedfinishedQObject[ubCFull phrase: post-task execution of COMMAND: finishedfinishedQObject [ub0NRRM/_UtcNWL/9finished because of pre/post task command execution errorQObjectpzzis emptyQObject pzzbN [XW(is empty or does not existQObject\g*c is not mountedQObjectlg / no errorsQObjectN Su( not availableQObjectq!NSPZnothing to startQObject8Q output: QObjectNR_WLcNpost-task execution of commandQObjectNR_UtcNCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectNRRMWLcNpre-task execution of commandQObjectNRRMUtcNBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectYstartingQObjectY?Full phrase: execution of 1st part of task: startingstartingQObjectY?Full phrase: execution of 2nd part of task: startingstartingQObjectY3Full phrase: execution of task: startingstartingQObjectY?Full phrase: post-task execution of command: startingstartingQObjectraKstatusQObjectVpfoSV N QA1'this is not allowed for obvious reasonsQObject"\\gNNRgQvNNRSm.this will lead to one task canceling the otherQObjecttoQObject'Full phrase: Syncing to toQObjectq!lՕU_e劌jCould not open the logfile ReadLogFile e &A&About aboutDialogck hk> &L&License Agreement aboutDialog e/c &S&Support aboutDialog a &T &Thanks to aboutDialogR...bvSNSJ <b>Dimitra</b> W(\hHYpkY|2LfB\ bvԊST+j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog...NN Xvb@g Ou(...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog O\ &UA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialogAphofis Scott Aphofis Scott aboutDialog?bO/e gui oArabic gui translator aboutDialogBArch linux YWN/pkgbuild [e}w (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog ^ QxAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogPNT kez _Backup & Sync Application aboutDialog2lX\u1ߚ</b>h9dځu1ߚWg (Free Software Foundation) QrHv GNU u(QlQq1SIhk> (GNU General Public License) {,N rH `SNev|^N&Oe9g,z _0It 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, version 3 of the License. aboutDialogbv|^g,ߚvvvf/^ g u( OF0 lg NOUdO0 ulg N0 i`'0 b0 ry[vv0 T+vdO0It 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. aboutDialogY'R)e gui oItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogg_Last but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialog>Mandriva YWN}w ([e contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialogNMepis YWN}w (Community repo)0srYe gui oBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogHN N blz[u( luckyBackup e/cNwkc}oSTRvNP0]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogNOpenSUSE YWN}w (KDE4 y> repo) s͌vYWNS^pNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogarYe gui oPortuguese gui translator aboutDialog$Puppy pet & sfs }wPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialog\0 01See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialogemOQKe gui oSlovak gui translator aboutDialogem}\#}P donation link aboutDialogex Fedora YWN}wex Fedora package maintainer aboutDialog6v|QY}v transifex o^sSN&QMcOVfor developing the wonderful transifex localization platform and providing it for free aboutDialog cOve/c0forums for their support. aboutDialog fri13fri13 aboutDialog luckyBackup - eluckyBackup - about aboutDialogluckyBackup cu( <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU u(QlQq1SIhk></a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogѓ" Rmoney aboutDialogQM Rno money aboutDialogyi MS Windowsport to MS Windows aboutDialogyi Mac OS Xport to Mac OS X aboutDialogyi OS/2 port to OS/2 aboutDialog4rpm YWNS0s{oYvn,f0}fN`z#}v^p <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogܕclose logDialogkcW( Qee劌j...loading logfile... logDialog(luckyBackup - NRWLz ^&luckyBackup - tasks execution progress logDialogN P / next error logDialogN P /previous error logDialog{I_wait logDialog &%1 %2&%1 %2luckyBackupWindow N-kb(&A)&AbortluckyBackupWindow e(&A)&AboutluckyBackupWindow eX(&A)&AddluckyBackupWindow R*d(&D)&DeleteluckyBackupWindow bKQ(&H) &HandbookluckyBackupWindow ^kR(&H)&HelpluckyBackupWindow S/Qe(&I)&ImportluckyBackupWindow (&L) &LanguageluckyBackupWindow~.\|}qR(&M)&Minimize to trayluckyBackupWindow Oe9(&M)&ModifyluckyBackupWindow eX(&N)&NewluckyBackupWindow \hH(&P)&ProfileluckyBackupWindow \hH(&P)This is a top menu item&ProfileluckyBackupWindow Q(&Q)&QuitluckyBackupWindoweett(&R)&RefreshluckyBackupWindow yd(&R)&RemoveluckyBackupWindow S(&R)&RestoreluckyBackupWindow Q2[X(&S)&SaveluckyBackupWindow -[(&S) &SettingsluckyBackupWindow NR(&T)&TaskluckyBackupWindow NR(&T)This is a top menu action&TaskluckyBackupWindow]QwR(&T) &ToolbarsluckyBackupWindowj/}/cϏ(&V)&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow]N-kbABORTEDluckyBackupWindowN-kbAbortluckyBackupWindowN-kb{IPb@g z ^Qpkb4Aborting: Please wait for all processes to be killedluckyBackupWindowRO\ActionsluckyBackupWindow(b@g ܀ojhH (e劌j{I) v]nd[ub4All relevant files (logs etc) have also been deletedluckyBackupWindow(b@g vjhH (Ye劌j) N_][ub7All relevant files (logs etc) have also been duplicatedluckyBackupWindow(b@g ܀ojhH (e劌j{I) v]fe[ub4All relevant files (logs etc) have also been updatedluckyBackupWindowb@g NRv][bAll tasks completedluckyBackupWindow`x[R*d\hH'Are you sure you want to delete profileluckyBackupWindow`x[R*d-\hH3Are you sure you want to delete the default profileluckyBackupWindow`x[ydNN vNRU5Are you sure you want to remove the following task ??luckyBackupWindowU_Rb@g mNRvWLz ^)Begin the execution of all included tasksluckyBackupWindowRxhFCheckBoxluckyBackupWindow*]SmRx0NR\<b>N</b>5Checks are disabled. This task will be skippedluckyBackupWindow q!lb~R0jhHCould not locate the fileluckyBackupWindowq!lfeNRRMNk!vWLfB-Could not update last execution time of tasksluckyBackupWindow])opCrashedluckyBackupWindow^zNRRog,(&U)Create D&uplicate taskluckyBackupWindow^zːSNR(&E)Create R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowvRM\hHCurrent ProfileluckyBackupWindow Rog,(&U) D&uplicateluckyBackupWindow -(&F)De&faultluckyBackupWindowcϏ DescriptionluckyBackupWindowvj DestinationluckyBackupWindowv DirectoryluckyBackupWindow[bDoneluckyBackupWindown,fDryluckyBackupWindow E&mailE&mailluckyBackupWindow S/Q(&X)E&xportluckyBackupWindow/ERRORluckyBackupWindow╋EXITluckyBackupWindow}NfB Elapsed timeluckyBackupWindow@Email -[]}<font color=green>bRfeBEmail preferences have been updated successfullyluckyBackupWindow$\hHWL}Pg__v| Email X1TJ$Email report after profile executionluckyBackupWindow N-e(~A)EnglishluckyBackupWindow N-e(~A)Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowW(P8e劌jfBv|u/'Errors occured during logfiles transferluckyBackupWindowW(P8_qge劌jfBv|u/5Errors occured during snapshots and logfiles transferluckyBackupWindowW(P8_qgfBv|u/(Errors occured during snapshots transferluckyBackupWindowW(P8\hHjfBv|u//Errors occured during the profile file transferluckyBackupWindowNRWLExecution of profileluckyBackupWindow NRWL}Pg_Execution of tasks finishedluckyBackupWindowNRz ^]Ou(_7R6N-kb4Execution of tasks were terminated violently by userluckyBackupWindow╋ExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowvjeY>^zY1eW&Failed to create destination directoryluckyBackupWindowq!l^ze\hHFailed to create new profileluckyBackupWindow$b@g ܀ojhH (e劌j{I) ndY1eW.Failed to delete all relevant files (logs etc)luckyBackupWindow q!lR*d\hHFailed to delete profileluckyBackupWindow"q!lՉb@g vjhH (Ye劌j)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow q!lՉ\hHFailed to duplicate profileluckyBackupWindow q!lՉ\hHFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow q!lS/Q\hHFailed to export profileluckyBackupWindow q!lS/Qe\hHFailed to import profileluckyBackupWindowq!lՑeT}T \hHFailed to rename profileluckyBackupWindow q!lSN\hHFailed to replace profileluckyBackupWindowU_RY1eWFailed to startluckyBackupWindow$b@g ܀ojhH (e劌j{I) feY1eW.Failed to update all relevant files (logs etc)luckyBackupWindow όNJ zHide information windowluckyBackupWindow όNJ z+hide/show information window button tooltipHide information windowluckyBackupWindowS/Qe\hHImport ProfileluckyBackupWindowNJ zInformation windowluckyBackupWindowNJ zinformation window titleInformation windowluckyBackupWindowNRvN k!WLfB]fe$Last execution time of tasks updatedluckyBackupWindowb@g SLNRvnUList of all the available tasksluckyBackupWindow[LockluckyBackupWindow{tPN(&B)Manage &BackupluckyBackupWindow{tNR Manage TaskluckyBackupWindow\jvNR_N yRNh</Move the highlighted task down, by one positionluckyBackupWindow\jvNR_N yRNh<-Move the highlighted task up, by one positionluckyBackupWindowT&NOluckyBackupWindowN ST+ NOT INCLUDEDluckyBackupWindowlaNOTEluckyBackupWindowg*v|sNOU/No errors foundluckyBackupWindow kcW(WLNRNow performing taskluckyBackupWindow fezfBSoy:/T͉v `o could not be saved'ProfileluckyBackupWindow\hHIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow\hH9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow\hHJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow\hHGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow\hHlfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow\hH3full phrase: 'Profile set as default'ProfileluckyBackupWindow2^feg*_Tw[`l{&T(Progressbar update will not be realisticluckyBackupWindoweT}T (&E)R&enameluckyBackupWindowS֓/ Read errorluckyBackupWindow]ydb@g _qge Removed all older snapshots dataluckyBackupWindowydN-RemovingluckyBackupWindowkcW(ydrNRv _qge劌j+Removing old snapshots and logfiles of taskluckyBackupWindowWLRunluckyBackupWindow cz (&C) S&cheduleluckyBackupWindowxdS/QeY>Select export directoryluckyBackupWindow -b-P<Set as DefaultluckyBackupWindow-[_ Set pathsluckyBackupWindow&-[ rsync T ssh cN_$Set paths for rsync and ssh commandsluckyBackupWindow oy:NJ zShow information windowluckyBackupWindow oy:NJ z+hide/show information window button tooltipShow information windowluckyBackupWindowW(Wy:N oy:e[WShow text under iconsluckyBackupWindowOnSourceluckyBackupWindowzR;P\kbNRWLz ^'Stop the execution of running tasks NOWluckyBackupWindowvjeY>]bR^z)Successfuly created destination directoryluckyBackupWindowNRTaskluckyBackupWindowNRnU Task listluckyBackupWindowNRnUvb@\l\hHTask list of profileluckyBackupWindow\hHcϏThe description of profileluckyBackupWindow"`xdvvN&g*ST+g eHv\hHeCThe directory you have selected does not contain valid profile dataluckyBackupWindow`8QevT z1SST+q!eHv[WQC:The name you have entered contains only invalid charactersluckyBackupWindow|}q\e 1 R_j_$The system will shutdown in 1 minuteluckyBackupWindow NRnUpzzThe task list is emptyluckyBackupWindowD2L<b>j!dn,f</b> N PZNOUfR (N&vSu"uvT v8Q){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow>fB Timed outluckyBackupWindow q!lՕU_\hHUnable to open profileluckyBackupWindow g*wv/ Unknown errorluckyBackupWindow g*wv/this refers to a process Unknown errorluckyBackupWindowc SPtv0 eX0 c YOu(0Use the "add" button on the right to get startedluckyBackupWindow$Ou(0 mRxhF0 OxdljmvNR>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowj/}/\hHcϏ!View/Edit the profile descriptionluckyBackupWindowfTJWARNINGluckyBackupWindowkaOu( Welcome toluckyBackupWindow`OydWould you like to also remove:luckyBackupWindowq!YOU`~|~U!Would you like to proceed anyway?luckyBackupWindow`SN[UWould you like to replace it ?luckyBackupWindowW(~|~NKRM`QHQ2[XU-Would you like to save it before proceeding ?luckyBackupWindow[Qe/ Write errorluckyBackupWindowf/YESluckyBackupWindow`]lB^zNP 0 S0 NR/You have asked for a RESTORE task to be createdluckyBackupWindow`vNRex]Te/cN P5You have reached the maximum limit of supported tasksluckyBackupWindow*剁eXSYv\hH `_ŘQHR*dQvN-N7You have to remove a task if you wish to add another !!luckyBackupWindow\^zNP vT T z1vezzv}\hH4a new blank one, with the same name, will be createdluckyBackupWindoweXaddluckyBackupWindoweXNRadd taskluckyBackupWindow]}[XW(already existsluckyBackupWindow0 \hH0 N bnUand 'profile' drop-down listluckyBackupWindowN&R2\hHnUQgand added at the profile listluckyBackupWindowN&W(~|~NKRMO`vlBfe9.and change anything you wish before proceedingluckyBackupWindowpasluckyBackupWindowpFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow{N- calculatingluckyBackupWindow{N--info message displayed during ...calculations calculatingluckyBackupWindowcN8Qcommands outputluckyBackupWindowq!l^zcould not be createdluckyBackupWindowq!lQ2[Xcould not be savedluckyBackupWindowq!lQ2[XPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow ]bR^zcreated successfullyluckyBackupWindowkcW(^z˘-\hH...creating default profile ...luckyBackupWindowkcW(^z\hH...creating profile ...luckyBackupWindowFvRMv crontab <font color=green>]bRfe6current crontab updated successfullyluckyBackupWindowvRM\hHcurrent profileluckyBackupWindow-\hHdefault profileluckyBackupWindow-\hH^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow-\hHVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow ]bRyddeleted successfullyluckyBackupWindow R*djhHN-deleting filesluckyBackupWindow R*djhHN-/info message displayed during ...file deletionsdeleting filesluckyBackupWindow,oy: - `b_ - R*db@jNRvs[XPN?display - restore - delete existing backups of highlighted taskluckyBackupWindowoy:jvNRٌNJ .display information regarding highlighted taskluckyBackupWindow bRpduplicated successfully asluckyBackupWindowv|s/ errors foundluckyBackupWindow \hHWLexecution of profile:luckyBackupWindow \hHWLAtray message - execution of profile: in progress...execution of profile:luckyBackupWindow ]bRS/Qexported successfully toluckyBackupWindowydY1eWfailed to removeluckyBackupWindowb@g _qgevydY1eW)failed to remove all older snapshots dataluckyBackupWindow}Pg_finishedluckyBackupWindow][b:full phrase: 'Execution of profile finished'finishedluckyBackupWindow ]bRS/Qeimported successfullyluckyBackupWindow 2LN-...in progress...luckyBackupWindowmincludeluckyBackupWindow]Oe9 is modifiedluckyBackupWindowpq!eHvis not valid forluckyBackupWindowN NP /jump to next errorluckyBackupWindowN NP /jump to previous errorluckyBackupWindow ]bR Qeloaded successfullyluckyBackupWindowkcW( Qe-\hH...loading default profile ...luckyBackupWindow QeY1eWloading failedluckyBackupWindowkcW( Qe\hH...loading profile ...luckyBackupWindowe劌j]^zeN ReY>.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow ~.\|}qRminimize to trayluckyBackupWindow~.\z|}qRS@W%minimizes the window to the tray arealuckyBackupWindowOe9modifyluckyBackupWindowOe9jvNRmodify highlighted taskluckyBackupWindowq!NSPZ nothing to doluckyBackupWindowNR_WLcNpost-task execution of commandluckyBackupWindowNRRMWLcNpre-task execution of commandluckyBackupWindow\hHprofileluckyBackupWindow\hHVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow\hHSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow\hHUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow\hHSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow\hHMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow\hHprofile luckyBackupWindow[\j!_ quiet modeluckyBackupWindow]et refreshedluckyBackupWindowydremoveluckyBackupWindowydjvNRremove highlighted taskluckyBackupWindowbReT}T prenamed successfully toluckyBackupWindowbReT}T pWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindow0oy:N rsync0NRRM/_WLcNv8Q9rsync and pre/post task commands output is displayed hereluckyBackupWindow ]bRQ2[Xsaved successfullyluckyBackupWindowkcW(Q2[X-\hH...saving default profile ...luckyBackupWindowkcW(Q2[X\hH...saving profile ...luckyBackupWindowcz  scheduledluckyBackupWindow -p-\hHset as defaultluckyBackupWindow-pset toluckyBackupWindowj_shutdownluckyBackupWindowj!dj!_simulation modeluckyBackupWindowraKstatusluckyBackupWindow }Ou( super userluckyBackupWindow}Ou(j!_super user modeluckyBackupWindowtoluckyBackupWindow PjhHN-transferring filesluckyBackupWindow PjhHN-/info message displayed during ...file transferstransferring filesluckyBackupWindowkcW(VfP emailtrying to send an emailluckyBackupWindowrHg,version:luckyBackupWindow{]upCalculate differences manageDialog{OneY>b@x_qgv]upFCalculate the differences between the source and the selected snapshot manageDialog{Ou(}BkbCalculations terminated by user manageDialogܕClose manageDialog ܕkdzClose this window manageDialogR*dDelete manageDialog\b@xv_qg#e劌jNT R*d,Delete the selected snapshot and its logfile manageDialogblg QENvk POSkdv;I do not have sufficient permissions to read this directory manageDialog_nUQgxdNN_qg&Please select a snapshot from the list manageDialog{IPWL}}Pg_*Please wait until the thread is terminated manageDialogSRestore manageDialogOu(b@xv_qgSRestore the selected snapshot manageDialogP\kbSTOP manageDialog zR;}Bkb{Stop calculations NOW manageDialogkdvN&N [XW(This directory does not exist manageDialogkdvN&N [XW(Information messageThis directory does not exist manageDialogjb@x_qgve劌j)View the logfile of the selected snapshot manageDialogjb@xT keNRve劌j*View the logfile of the selected sync task manageDialogvj destination: manageDialogOn hide source manageDialog$luckyBackup - {tPNluckyBackup - manage backup manageDialogq!eH not available manageDialog\hHprofile manageDialogOnsource: manageDialogT keeY> A sync dir A manageDialogT keeY> A sync dir B manageDialogNRtask manageDialogje劌view log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardN-kbABORT manageWizardN-kbAborted manageWizardPN_ Backup path manageWizardeg,j_pevS_%Browse locally for a new restore path manageWizard(Rxkd \PN_qgR0SeY>Qg0BCheck this, to clone the backup snapshot to the restore directory. manageWizardeg & fB Date & time manageWizardR*dPN Delete backup manageWizardR*dg*W(PNQgvs[Xe4Delete existing data that do not exist at the backup manageWizard kcW(R*de Deleting data manageWizardkcW(R*dR _qgfRvjhH)Deleting file that lists snapshot changes manageWizardkcW(R*d_qge劌jDeleting snapshot logfile manageWizard*s[XvPNj\SN㐄SeY>Qgv\ avjhHSExisting backup files will replace the corresponding files at the restore directory manageWizard}Pg_Finished manageWizard,N vNJ kcx d<b>Y</b>WL@If the information above is correct, click start to begin manageWizard,N vNJ kcx d<b>Y</b>WL`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizardN NP /Jump to next error manageWizardN NP /Jump to previous error manageWizard _qgc[veN [XW(0N...,No snapshot specific data exist. Skipping... manageWizard_Path manageWizardSPNRestore backup manageWizardS_ Restore path manageWizardkcW(SeN;eY>Restoring data: main trunk manageWizardkcW(Se_qgjRestoring data: snapshot files manageWizardxdevSeY>Select new restore directory manageWizardSeY>\PN_qgNBThe restore directory will become identical to the backup snapshot manageWizardD2L<b>j!dn,f</b> N PZNOUfR (N&vSu"uvT v8Q){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardkcW(fe_qgnUUpdating list of snapshots manageWizardfTJWARNING manageWizard`Ss\R*dPNe#You are about to delete backup data manageWizardSmcancel manageWizardfe9change manageWizardܕclose manageWizardv|s/ errors found manageWizardY1eWfailed manageWizardY1eW-info message displayed after ...file deletionfailed manageWizard$luckyBackup - {tPNluckyBackup - manage backup manageWizardN P / next error manageWizardlg / no errors manageWizardq!eH not available manageWizardN P /previous error manageWizardj!d simulation manageWizardYstart manageWizardbRsuccess manageWizardbR-info message displayed after ...file deletionsuccess manageWizardbR5info message displayed after ...snapshots list updatesuccess manageWizard.]Rx0 `zN;j_0 OF\g*[TJNOU`zN;j_T z1='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog8<b>N _؊</b>W(0 cd0 }DN-RQeST+vjvvfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@N;j_@Host: modifyDialog"pNReXk2cdvv0jhHbhN@Add any directory, file or pattern to be excluded from this task modifyDialog"RQeg,NRk2ST+vv0jhHbj#_>Add any directory, file or pattern to be included by this task modifyDialogRQeekOMQg8QevcN*Add command as entered in the field beside modifyDialog\8QeeXkvcdvRQe*Add exclusion as entered in the next field modifyDialog\8QeeXkvST+vRQe*Add inclusion as entered in the next field modifyDialogDeXbyd rsync x0 Yg\ Nxkq!i_ OcN ]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialog&RQeekOMQg8Qev rsync x-Add rsync option as entered in the next field modifyDialog2Advanced modifyDialog_UtAfter modifyDialog(NR\l`'zQgvb@g [TJkOMw OlUOL?All declared fields of the task properties window seem to be ok modifyDialogSYWL Also Execute modifyDialogVf}Ou(dO\Attempt super-user activities modifyDialog\OnvPN[XevjQg Backup Source inside Destination modifyDialogPNj Backup files modifyDialogRMUtBefore modifyDialog _S֌eY> Cache folders modifyDialogSmCancel modifyDialog`vvjeY>OMe FAT/NTFS xS@ Rxkd0 edg NTk PNJ \0 N OuY0 0 (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogT\vjeY>O\pOnvRog, \1Rxkd N Rx \W(vjQg^zNNeve>nPNiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialog$RxkdN#c rsync `zj!}D/Check this to connect to an rsync Remote module modifyDialogcNxCommand Options modifyDialogcNnU Command list modifyDialog2OuYn (}Ou(P[) rykjhH (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogOuYߐ#}P (-l)Copy symlinks as symlinks (-l) modifyDialog[g,k!NRv^W 1. PNOnv [XW(vjQg (T fBla0 N ^z˘MYveY>0 x) 2. T keOn & vj eQiOuYggvjhHDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog|[g,NRv^W 1. \OnvQg[PNvjQg 2. u1vjQgvT z1PNOnv 3. T keOnvj SOuYgevjhHDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogR*dvjQgvjhHDelete files on the destination modifyDialogR*dvjN N [XW(eOnvjhH _Řxd0 ST+[Pv0 (--delete-after Ou(0 cd0 RGp --delete-excluded)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogcϏ Description modifyDialogvvW0 Destination modifyDialogvj Destination : modifyDialogvjp FAT/NTFSDestination is FAT/NTFS modifyDialogN ^z˘MYvDo NOT create extra directory modifyDialog0N PNvjkOnevjhH (--update)HDo not backup source files that are newer on the destination (--update) modifyDialog4N cdkdNj#_nU0 SqgbKQmQeNST+RG0kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog}/jvm˘vEdit highlighted inclusion modifyDialog0pg,NRُ8QeNP T z1 (Y0 PNbv[v0 ):Enter a name for this task (eg "Backup my home directory") modifyDialog>8QeNRWLNK_WLvcN N&ސx0 RQe0 c eXN RnUnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialog>8QeNRWLNKRMWLvcN N&ސx0 RQe0 c eXN RnUoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialog^W(kd8QeRQev rsync x (Y "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogjW(kd8QejhH0eY>bd}"j#_ ސx0 RQe0 c eXcdnU * - {&TNOU^zzv}v (e}P\kb) ** - {&Tb@g v ST+e} ? - {&Tde}YNN[WQC c~ dir_name/*** - {&TeY>Qgb@g v - / - j#_V[eP8}PiN-NKry[OMn (N,Ssp0 On0 ) c~ / - S{&TeY> kc^8jhH0ߐ#}PbnN ST+W(QgEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogjW(kd8QejhH0eY>bd}"j#_ ސx0 RQe0 c eXST+nU * - {&TNOU^zzv}v (e}P\kb) ** - {&Tb@g v ST+e} ? - {&Tde}YNN[WQC c~ dir_name/*** - {&TeY>Qgb@g v - / - j#_V[eP8}PiN-NKry[OMn (N,Ssp0 On0 ) c~ / - S{&TeY> kc^8jhH0ߐ#}PbnN ST+W(QgEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogT8QevjeY>v[et_ (Y /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialog8Qe ssh IypjhHv[et_ (N Su(RGuYzz)0 la `Ou(N\ OpenSSH pSM\ bMWLq![x ssh `z#}vb@g _ŘdO\Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogN8Qe rsync (^ ssh) I[xjhHv[et_ (N Su(RGuYzz)0~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialog<8QeOneY>v[et_ (Y /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog8Qe`zN;j_vT z10"Enter the name of the remote host. modifyDialog48Qe ssh #}ډOu(v#cW (uYzzOu(-W)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialog68Qe`W(`zN;j_N vOu(T z1 (N Ou(RGuYzz)0HEnter your username for the remote host (leave blank if not applicable). modifyDialog ]v|s/Errors have been found modifyDialogcdExclude modifyDialogNcdb@g "lost+found" eY> (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog$cdb@g PNjhHeY> (**~)(Exclude all backup files & folders (**~) modifyDialogJcdb@g _S֌eY> (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialog*cdb@g f[XeY> (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialog (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogRcdb@g Ou(vVe6{ReY> (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogcdnU Exclude list modifyDialog`cd|}qc eY> /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogNRWLRM_WLvMYcN01Execute extra commands, before or after the task. modifyDialogq!f/T&Qs0 fTJ0 `o ~|~WLNR ^8W(0 RMUt0 cNSO_fTJfBOu( (Yc RRrS@) laSg W(`Nb@O\Lpv`lN bMRxkdExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialogrsync vMYxnUExtra rsync options list modifyDialogNW(vjN OcOnvxl#}P fTJxl#}Pvb@g jhH_ŘST+W(PNQg (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog_ue CVS jhHIgnore files the CVS way modifyDialog._ueOu( CVS vo{lvjhH (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogST+Include modifyDialoglU/g {&TkdnUb@Rj#_ve\ST+ N ST+QvNjhH0 SÕbKQNfRNST+RG0 kdx\SmcdR0Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialogST+nU Include list modifyDialogST+j!_ Include mode modifyDialogBOuYkdRx uvcNv|u/QfBSN<b>N-kb</b>WLN-NRgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialogj!_Mode: modifyDialog\jvm˘vTN yRMove highlighted inclusion down modifyDialog\jvm˘vTN yRMove highlighted inclusion up modifyDialogT z1Name : modifyDialogkc^8ST+Normal Include modifyDialogY}Okay modifyDialogPST+ Only Include modifyDialog*T&RG\0 `zN;j_0 SmRx NOW(g,j_dO\2Otherwise uncheck 'Remote Host' to operate locally modifyDialogW(~|~NKRMRxvܐx/Please check the relevant box before proceeding modifyDialog"W(U_j#_}/VhNKRM QH[OnSelect destination directory modifyDialogxdljScdj#_vjhH$Select file to read exclude patterns modifyDialogxdljSmj#_vjhH$Select file to read include patterns modifyDialogxd rsync [xjSelect rsync password file modifyDialogxdOneY>Select source directory modifyDialogxd ssh єpjSelect ssh keyfile modifyDialog-[O[XvPN_qg~=ex0Set the total number of backup snapshots to keep modifyDialog"oy:_gWLv rsync cN.Shows the rsync command as it will be executed modifyDialogNevvjjhHSkip newer destination files modifyDialog O[X_qgexSnapshots to keep: modifyDialogOnSource modifyDialogOnSource : modifyDialogT keOnTvj"Synchronize Source and Destination modifyDialog |}qeY>System folders modifyDialog|}qc eY>System mount folders modifyDialogNRcϏTask description modifyDialogNRT z1 Task name modifyDialogNR\l`'Task properties modifyDialogj#g Templates modifyDialog f[XeY>Temporary folders modifyDialog"'/' lg x[T z1 N QA1kd-[Ou(kdRx NRWLN-v|u/S<b>N-kb</b>NRWL0use boxes to STOP task execution on error modifyDialogWIvalidate modifyDialogOFg*Rx_Řv0 ST+[Pv0 Cwithout having checked 'Recurse into directories' which is required modifyDialogSmCancel patternEditor\Ygxdkd N c[vv\Ou(}U\ _ T& \\ b~b@g 0 T z10 ܓu^{&TvjhH/vCheck this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditor$W(kd[jhH/vT z1M\ vܓu^EDefine here the name criteria for the files/directories to be matched patternEditor W(kd[j#_8Define here, what would you like the pattern to refer to patternEditorvQg[Directory contents patternEditor*W(8QejhH/vT z1Qgb@ST+vNOU[WQCsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor^W(8QejhH/vT z1}P\>v[WQC OY 剁c[b@g ".txt" jhH 8Qe .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorW(8QejhH/vvT z1GEnter here the name of the files/directories that the pattern refers to patternEditor"W(8QejhH/vT z1-v[WQCbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor_mQe\dexGo deeper in path by : patternEditor mQe_N v[Pv (q!\d})Go deeper in path by any level patternEditorY}Okay patternEditorːxdOnQgvv+Please choose a directory within the source patternEditorːxdOnQgvjhH&Please choose a file within the source patternEditor \j#_}j_VhQgvkOMV_b-P<5Reset the pattern editor fields to the default values patternEditorxdvSelect directory patternEditorxdjhH Select file patternEditorvSet of directories patternEditorjhH Set of files patternEditorc[vSpecific directory patternEditorc[jhH Specific file patternEditorgoy:[斛vj#_$The actual pattern is displayed here patternEditor k\ j#_The pattern refers to a: patternEditorRxdkd rj#_\cTdg vT \l`'vv Yb@g T}T p "temp" vvUse this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorTxdkd rj#_\cTdg vT \l`'vjhH Yb@g RojT p ".txt" vjhHwUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorRxdkd rj#_\cTry[v Y"/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorbxdkd rj#_\cTry[jhH Y"/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorxdkd j#_\cTv (bv) ^N vQg[ ^vg, Yv "/media/music/Album/" N vQg[Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditor$xdkdNcTfm\dv[Pv0 {OYN  v "/media/music" ST+ 3 P [Pv 1.Rock 2.Jazz 3.Soundtracks 剁cTN P [PvN vQg[ Ou(NN [ * v * vQg[ * _/media/music/ * _mQe\dex"1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorNaany patternEditoreg,j_pv_"browse localy for a directory path patternEditoreg,j_pjhHbrowse localy for a file patternEditorST+ contains : patternEditorv directory : patternEditor}P\>p ends with : patternEditorjhHfile : patternEditorg}Bj#_ final pattern patternEditor [Qh{&T is exactly : patternEditorT z1name patternEditor j#_}/Vhpattern editor patternEditor͊-reset patternEditor-p starts with : patternEditor Ou([et_use absolute path patternEditor jhH filescheduleDialog& e& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:^r:delayscheduleDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">\hHWLcz </span></p></body></html>

Profile execution scheduling

scheduleDialog ͕j_WL@ rebootscheduleDialogRQeev\hHcz Add a new profile schedulescheduleDialog RQe\hHcz Add profile schedulescheduleDialogNOUAnyscheduleDialogVgAprilscheduleDialogVgfull phrase: 'of April'AprilscheduleDialog`x[ܕcz zU4Are you sure you want to close the schedule dialog ?scheduleDialogQkgAugustscheduleDialogQkgfull phrase: 'of August'AugustscheduleDialogSmCancelscheduleDialog2`vj_Vh (O:g Vh) N e/cW_btX RxkdOCheck this if your machine does not support a graphical environment (eg server)scheduleDialoge[Wj!_ Console ModescheduleDialogSANgDecemberscheduleDialogSANgfull phrase: 'of December'DecemberscheduleDialog*U_RfB^r luckybackup vWL&Delay luckybackup execution at startupscheduleDialogoy:vRMv crontabDisplay the current crontabscheduleDialogWL\hHExecute profilescheduleDialogNgFebruaryscheduleDialogNgfull phrase: 'of February'FebruaryscheduleDialogfgNFridayscheduleDialog q!eHv\hHInvalid profilescheduleDialogNgJanuaryscheduleDialogNgfull phrase: 'of January'JanuaryscheduleDialogNgJulyscheduleDialogNgfull phrase: 'of July'JulyscheduleDialogQmgJunescheduleDialogQmgfull phrase: 'of June'JunescheduleDialogN gMarchscheduleDialogN gfull phrase: 'of March'MarchscheduleDialogNgMayscheduleDialogNgfull phrase: 'of May'MayscheduleDialog Oe9\hHcz Modify profile schedulescheduleDialogOe9xdv\hHcz  Modify selected profile schedulescheduleDialogfgNMondayscheduleDialog\g*cfNOU\hHNo schedules are declared !!scheduleDialogSANgNovemberscheduleDialogSANgfull phrase: 'of November'NovemberscheduleDialogSAgOctoberscheduleDialogSAgfull phrase: 'of October'OctoberscheduleDialog\hH Profile :scheduleDialog \hHcz s`Profile schedule detailsscheduleDialogydxdv\hHcz  Remove selected profile schedulescheduleDialogeU_RfBNk!WLRun once, at startupscheduleDialogfgQmSaturdayscheduleDialogN]g SeptemberscheduleDialogN]gfull phrase: 'of September' SeptemberscheduleDialogBjgv_NQs 'CRITICAL' (V) fTJ `ovNRSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog_-YStarting from scratchscheduleDialogfgeSundayscheduleDialog2Ncz jN f/g eHv luckyBakcup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogfgVThursdayscheduleDialogfgNTuesdayscheduleDialogq!l^z cron jhHUnable to create cron filescheduleDialogq!l^z\hHjUnable to create schedule filescheduleDialogfgN  WednesdayscheduleDialog,`]PZNf OF\g*d cronIT c 8You have made changes without clicking the cronIT buttonscheduleDialog`vcz \hH]Te/cN PBYou have reached the maximum limit of supported scheduled profilesscheduleDialog _ŘQHR*dNbMRQeSNcz 5You have to remove an item if you wish to add anotherscheduleDialog `v crontab ]bRfe$Your crontab is updated successfullyscheduleDialogeXaddscheduleDialogeatscheduleDialogܕclosescheduleDialog ܕkdzclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialogcrontab Qg[crontab contentscheduleDialogY)dayscheduleDialogeday of month :scheduleDialog N1N-v day of week :scheduleDialogkeveryscheduleDialog luckyBackup - cz luckyBackup - schedulescheduleDialogRminscheduleDialogOe9modifyscheduleDialoggmonth :scheduleDialogndndscheduleDialogndas in 22nd dayndscheduleDialogcrontab 2QeN [XW(no crontab entries existscheduleDialog0ofscheduleDialog 0NNgN of any monthscheduleDialogY}okayscheduleDialogU_R|}qfBNk!WLonce, at system startupscheduleDialogrdrdscheduleDialogrdas in 23rd dayrdscheduleDialogydremovescheduleDialog\N c[v\hHRQecz @schedule the execution of profiles as declared in the list abovescheduleDialog NV͋fTJ skip criticalscheduleDialogststscheduleDialogstas in 21st daystscheduleDialogstas in 31st daystscheduleDialogththscheduleDialogthas in 10th daythscheduleDialogthas in 11th daythscheduleDialogthas in 12th....19th daythscheduleDialogthas in 20th daythscheduleDialogthas in 24th...30th daythscheduleDialogth as in 8th daythscheduleDialogth as in 9th daythscheduleDialogfB (fB:R)time (hour:min) :scheduleDialogjvRMv crontabview current crontabscheduleDialog][XW(vT T z1v\hH+A profile with the same name already exists textDialog`x[~|~U#Are you sure you wish to proceed ?? textDialog2`g*bS{\vjeY>O\pOnvRog, ryR%\_BBEWARE, if your intention is NOT to clone source to destination !! textDialogSmCancel textDialogcNR0Rj|?Copy command to clipboard textDialogR%Qoy:kd `o$Do not show this again for this task textDialog 8Qe[ƊEnter passphrase : textDialog 8Qe[xEnter pasword : textDialog8Qee\hHvT z1#Enter the name of the new profile : textDialog8Qe\hHveT z1#Enter the new name of the profile : textDialogT&No textDialogY}Okay textDialogˏ8QeNP N T vT z1Please enter a different name textDialog \hHcϏProfile description : textDialogf/Yes textDialogF`]T fBxd0 PNOnvvQg[0 <br> 0 R*dvjQgvjhH0 xYou have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogeMail NJ eMail information textDialogluckyBackup luckyBackup textDialogSmCancel winDialog 8Qe rsync cNv[et_(Enter the full path of the rsync command winDialog8Qe ssh cNv[et_&Enter the full path of the ssh command winDialogWLj (*.exe)Executable Files (*.exe) winDialogY}Okay winDialogxd rsync cNSelect rsync command winDialogxd ssh cNSelect ssh command winDialog Ou(-P<Use default value winDialogpg,j_browse locally winDialogc[_declaration of paths winDialogluckyBackup luckyBackup winDialog rsync:rsync: winDialogluckybackup-0.5.0/translations/luckybackup_pl.qm0000666000175000017500000043430213157502317021503 0ustar luckybluckybG^HYKhSY]_ 9gggg\hY֧js1zf ffQvSOE29#E45/N~Eaaaama Vah*@Eص)cH5Sa .wLTs"f" &%ں({Y6)*`3*0+++6,B;/]^>:BTEtt oFZ9^GlG> HxFJ6J;J;~dJwBPd'PdyPd&S#TZT [%\Z`xj6lj6}j61Ej6l̙mCo@qj tdqxz4RKYF}/2lIL3b4a/qWs$F$>4ĉV˱ B/S;@ى>$K4hXp(=G8#mGrϧ :~ dKg91!b@D(e'+&r.+6F7<$GI|)OWOQ19GQRD[N_/ffC09h}hwGpN pNq>!tcq!YݯĚ- 6YE665_ѐSfiɶAwTuԳŨŵ_  ,'|G _c3^bYK[  #u&o)+/r)28IBZyBC cF)I?PoE:YB@ZH \c,(cf:Q[uJ|BHmO2\R_|uAZIRE2g*3+s2sCNk>6Pi,÷wRIYԥ c{*zV [!% &E"S:"EqrpG ҐO/o=!^[ mS Av\#n&Xfaȅ4)ޫ4).*߬,b 8My:MqT(_rUyezh !iJiU5tM}^W.e .e1ITWVcy:(#1y%r_t#Fd MNŇ0KʵhIC0M[ܯ";W)>[b[~g2ϗ]u F ‰m>`ygxker: P<sQ&ADȪL~N9OO&Ojz7eJiYzxxi^lwWr9t'}7;:օAaI|IAIII hIf&^,\M^AQGф  ~.1HeFi  CiGd^3ig  C|D08z:=l\x?l@)m6>2nTnp^ 8tx-vY<yl~iyh F9rYȕȕkȕX\Jg:tî"?pߘ)?T(\v. W%"@" Q.5;KAC4KO9Vf=_Av`_hDXb#f0g)8hnuhnViikՒkՒ2sD!v3.y)|/~gU2vb"(T4Yv u3ER]ZI0In`1Vs ay>Sf1Ȓ*3D=':؈U@Z   |u~ `@읒UXa{`m H X& |<5B^;*Q+e-zJr2 O9Yb>EaE]N3UtȬYvG`xea#vuSv:{_gIb~3>ڄ5DFFFϕbi=fΕ9UdUuw rd#jg G%(B\ȕc0 gaIXT$=UUVD nh~Eǧ,~4`K̐+jGIIB %׃FGvߖdkl5Y& Y3V32 ;t"')@j,!-#/e{1a 9G٣F\MIX9{JoJεL4N*PO3+Ry qV)gh ?*myzGx@x5TH0  (ʴ5xʶ 'X,7B_ckiZ0) Nq  c  q.  ) #rr *{ ? +)} 6M 8 CcK%Z Mgk MgP N#5 U S Wɗ ]X aY; d j^n l0 lRc| mE9 pF q Rn ] @ e" t ' ͆} & a; -B= Z% '/3 Ԡ;T  ׊$# =. . 'U Ѿ5 To  w c2v d  U  -0* -n /l$y 7E 8 ? @  `7 f g j* l pN%u zj C 0 .  Ho H iU ~ cZ XBaC < 24 bFd ,8    GCi ñ nj 4 Xh!9 h t$2 ԑ @N ݓ - T i 7 pjx " ~ v  Vd d| j@  S #z (N* +mS - 0b 7'yp 93Be :UC"t ;e E Ge'M HZ[ L9O PA T,l T Zl _yoo _ fy g.w! g.w g.w0 i i k\ ms { { { m S FA Ҟغ "P s   Y YF >ӊ @e A.q Acsa Eh# F F.y LM N0Y P}N Sz~ X[ ^ bU o o9%} r'^ v D l k j+ _8 % r? \%ƛ E "л UNC sI  ~   T *A s ͤ % - 2j a Rb] , ?BS  ;o  sh< @ T #c &, &'< )Z *}E + ,D ,D2u 6< PF \.~5: c i mY {{E e 1  U {Ѱ 3 i2AR ms% ci l9 Xw, ) f zj lz@  IC  j] lc} Y} i [, "Β , ݗ # 䕜; r c2v  n U& 8C 8& 8$ +I 6J=.YكsN> CԵ1'~((q *#Qyi+{BrWfTY?u<[?:{RC$t\$ DrKuT֭u 3{Mw̖ik{dK4NU"&+eV= CZxtG#!)&)Ni5(դ+(դe-X`p4?<EE^G E;INRN>[=K^iXcm f/lnL ssu@Iu@~(NYdH fXk4fCt2)*R#ϰytG-vAɟ)ʱN 'u +\eu6_֙SDzGFߖNl>U]fQe0.YP,Uŕi"Obliczanie r|nicCalculating differencesCalcDiffThreadxIlo[ danych jest bardzo du|a. Pokazano tylko pierwsze wpisy2Data amount is huge. Displaying only first entriesCalcDiffThreadProsz czeka Please waitCalcDiffThread6Miejsce docelowe skanowaniaScanning destinationCalcDiffThread$Skanowanie migawkiScanning snapshotCalcDiffThread"yrdBo skanowaniaScanning sourceCalcDiffThread.Migawka i zrdBo r|nicSnapshot and source differencesCalcDiffThreadpDane migawki, ktre tak|e w zrdle istniej i si r|ni=Snapshot data that also exists at the source and is differentCalcDiffThreadRDane migawki, ktre NIE istniej w zrdle-Snapshot data that do NOT exist at the sourceCalcDiffThreadVDane zrdBowe, ktre NIE ISTNIEJ w migawce-Source data that do NOT exist at the snapshotCalcDiffThread6Synchronizuj katalogi A i BSync dir A & B differencesCalcDiffThreadSynchronizacja danych katalogu A, ktre NIE istniej w synchronizowanym katalogu B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSynchronizuj dane katalogu B, ktre tak samo istniej w katalogu A i s r|ne?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSynchronizacja danych katalogu B, ktre NIE istniej w synchronizowanym katalogu A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadDane migawki zostan zastpione danymi zrdBowymi podczas PRZYWRACANIA=The snapshot data will replace the source data during RESTORECalcDiffThreadTe zostan usunite podczas PRZYWRACANIA tylko w przypadku wBczenia opcji:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadzusuD istniejce dane zrdBowe, ktre nie maj kopii zapasowej;delete existing source data that do not exist at the backupCalcDiffThreadXProfil kopii zapasowych, logi i dane migawki.Backing-up profile, logfiles and snapshot dataQObjectKRYTYCZNYCRITICALQObjectTPonowne wykonanie polecenia z powodu bBduCommand re-run due to failureQObjectBNie mo|na otworzy pliku z logamiCould not open the logfileQObject Miejsce docelowe DestinationQObject Katalog docelowyDestination directoryQObjectKatalog DirectoryQObjectNie mam uprawnienia do czytania/otwierania synchronizowanego katalogu A;I do not have the permission to read/enter sync directory AQObjectNie mam uprawnienia do czytania/otwierania synchronizowanego katalogu B;I do not have the permission to read/enter sync directory BQObjectzNie ma uprawnienia do czytania/otwierania katalogu docelowegoDI do not have the permission to read/enter the destination directoryQObject|Nie mam uprawnienia do czytania/otwierania katalogu zrdBowego?I do not have the permission to read/enter the source directoryQObjectTo zadanie<font color=orange><b>nie zostanie pominite</b></font>. Synchronizacja zostanie mimo to wykonana.iI will not skip this task. Synchronizing is going to be performed anywayQObjectTo zadanie <font color=red><b>NIE ZOSTANIE POMINITE</b></font>, poniewa| wBczyBe[ opcje "omijaj OSTRZE{ENIA"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject,Ostatni czas wykonaniaLast execution timeQObjectOKOKQObjectpProsz <b>odznaczy odpowiednie opcje</b> przed procesemAPlease uncheck appropriate include boxes before proceedingQObjectProsz odznaczy odpowiednie opcje albo zmieni wszystkie typy zadaD innych ni| '<b>Kopia zapasowa zawarto[ci katalogu</b>' albo u|yj 'Kopia zapasowa zawarto[ci katalogu' razem z '<b>Tylko uwzgldnij</b>' opcje, przed procesemPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject yrdBoSourceQObject Katalog zrdBowySource directoryQObject,Katalog synchronizacjiSync directoryQObjectSynchronizujSyncingQObjectSynchronizuj'Full phrase: Syncing to SyncingQObjectOpis zadaniaTask descriptionQObjectKatalog docelowy zostanie utworzony, je[li nie istnieje i wypeBniony nowymi danymi kopii zapasowych]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectLNastpujce dodane zadania <b> dziel ten sam katalog docelowy</b> (wszystkie razem albo w grupach) i co najmniej jedno z nich bdzie archiwizowaBo zawarto[ kataloguThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectNPlik z logami nie mgB zosta utworzony The logfile could not be createdQObject4Plik z logami nie istniejeThe logfile does not existQObject&Proces zgBosiB bBdThe process reported an errorQObjectxTa specyficzna komenda jest prawdopodobnie nie zainstalowana/The specified command is probably not installedQObject2Ta lista zadaD jest pustaThe task list is emptyQObjectjTo zadanie <font color=orange><b>nie bdzie pominite3This task will not be skippedQObjectvTo zadanie zostanie <font color=red><b>pominite</b></font>7This task will be skippedQObjectNU|yj zdalnie, sprawdzanie jest pomijaneUsing remote, check is skippedQObject UWAGAWARNINGQObjectjMasz dodane obydwa z nastpujcych powizanych zadaD:8You have included both of the following connected tasks:QObject2Nie dodaBe[ |adnych zadaDYou have not included any tasksQObject i/alboand/orQObjectkomenda: command: QObjectnie istniejedoes not existQObjectznaleziono bBd errors foundQObject6Wykonanie 1. cz[ci zadaniaexecution of 1st part of taskQObject6Wykonanie 1. cz[ci zadania?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject6Wykonanie 2. cz[ci zadaniaexecution of 2nd part of taskQObject"Wykonanie zadaniaexecution of taskQObject"wykonanie zadania3Full phrase: execution of task: finishedexecution of taskQObject"wykonanie zadaniadFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectkod wyj[cia: exit code: QObjectzakoDczonofinishedQObjectzakoDczono?Full phrase: execution of 1st part of task: finishedfinishedQObjectzakoDczono3Full phrase: execution of task: finishedfinishedQObjectzakoDczonoCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectzzakoDczono z powodu bBdw wykonania poleceD przed/po zadania9finished because of pre/post task command execution errorQObject wolnefreeQObjectjest pustyis emptyQObject8jest pusty albo nie istniejeis empty or does not existQObject(jest nie zamontowanyis not mountedQObjectbrak bBdw no errorsQObjectniedostpne not availableQObject2nie ma nic do rozpoczcianothing to startQObjectwyj[cie: output: QObject<Wykonywanie poleceD po zadaniupost-task execution of commandQObject<Wykonywanie poleceD po zadaniuCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectDWykonywanie poleceD przed zadaniempre-task execution of commandQObjectDWykonywanie poleceD przed zadaniemBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjecturuchamianiestartingQObject start?Full phrase: execution of 1st part of task: startingstartingQObject Start?Full phrase: execution of 2nd part of task: startingstartingQObject Start3Full phrase: execution of task: startingstartingQObjecturuchamianie?Full phrase: post-task execution of command: startingstartingQObjectstanstatusQObject^z oczywistych wzgldw nie mo|na na to pozwoli'this is not allowed for obvious reasonsQObjecthto doprowadzi do tego, |e jedno zadanie anuluje inne.this will lead to one task canceling the otherQObjectdotoQObjectdo'Full phrase: Syncing to toQObjectBNie mo|na otworzy pliku z logamiCould not open the logfile ReadLogFile&O&About aboutDialog"&Umowa licencyjna&License Agreement aboutDialog&Wsparcie&Support aboutDialog$&Podzikowania dla &Thanks to aboutDialog...moj drug poBow <b>Dimitra</b>, ktra spdza caBy ten czas po[wicony rozwojowi tego projektuj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog< ...do wszystkich u|ytkownikw...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog &AutorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog&Arabski tBumacz GUIArabic gui translator aboutDialogROficjalny opiekun paczek Arch linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAteny, GrecjaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialog\Aplikacja do kopii zapasowych i synchronizacjiBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialoglBo[niacki tBumacz GUI oraz opiekun paczki dla Mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog*BuBgarski tBumacz guiBulgarian gui translator aboutDialog,KataloDski tBumacz GUICatalan gui translator aboutDialog>ChiDski (tajwaDski) tBumacz guiChinese (Taiwan) gui translator aboutDialogpWspBtwrca kodu obsBugi zdalnej i vss dla portu WindowsDCode contributor for remote & vss support regarding the windows port aboutDialog@Nie mo|na znalez pliku licencji!Could not locate the license file aboutDialog$Czeski tBumacz GUICzech gui translator aboutDialog4Opiekun paczki dla DebianaDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog.Holenderski tBumacz GUIDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogW szczeglno[ci Especially aboutDialog(EstoDski tBumacz guiEstonian gui translator aboutDialogROpiekun paczki dla Fedory (official repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog4Opiekun paczki dla FreeBSDFree BSD package maintainer aboutDialog*Francuski tBumacz GUIFrench gui translator aboutDialogFrancuski tBumacz GUI i cenny doradca pakietowania (i nie tylko)AFrench gui translator and valuable packing advisor (and not only) aboutDialog,Galicyjski tBumacz guiGalician gui translator aboutDialog*Opiekun Gentoo ebuildGentoo ebuild maintainer aboutDialog*Niemiecki tBumacz GUIGerman gui translator aboutDialogPolub na:Give a thumbs up at: aboutDialogBGrecki tBumacz GUI i cenny tester(Greek gui translator and valuable tester aboutDialog4Grecki tBumacz podrcznikaGreek manual translator aboutDialogOsobi[cie nigdy nie miaBem i nie bd akceptowaB pienidzy za ten projekt.DI personally never had and never will accept money for this project. aboutDialogrBez niego i jego tutoriali nie uruchomiBbym tego projektuJIf it wasn't him and his tutorials I would never have started this project aboutDialogJe[li podoba ci si ta aplikacja i chciaBby[ mi osobi[cie co[ ofiarowa, wszystko co musisz zrobi:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogTo jest <b>wolne oprogramowanie</b>: mo|esz je dalej rozpowszechnia i/albo modyfikowa zgodnie z warunkami GNU General Public License, wydanymi przez Free Software Foundation, wersja licencji 3.It 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, version 3 of the License. aboutDialog`Jest on rozpowszechniony w nadziei, |e bdzie u|yteczny, ale BEZ JAKIEJKOLWIEK GWARANCJI; nawet bez gwarancji ODPOWIEDZIALNOZCI HANDLOWEJ albo PRZYDATNOZCI DO OKREZLONEGO CELU.It 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. aboutDialog$WBoski tBumacz GUIItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogNa sam koniecLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogfOpiekun paczki dla Mandriva (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogOpiekun paczki dla Mepis (Community repo) i hiszpaDski tBumacz GUIBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNiemniej jednak postanowiBem wykorzysta luckyBackup, aby wspiera ludzi, ktrzy naprawd potrzebuj pomocy finansowej.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog(Norweski tBumacz guiNorwegian gui translator aboutDialogOpiekun paczki dla OpenSUSE (KDE4 Community repo) i cenny doradcaNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog.Portugalski tBumacz GUIPortuguese gui translator aboutDialog.Opiekun Puppy pet & sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog*RumuDski tBumacz GUI Romanian gui translator aboutDialogFRosyjski tBumacz GUI i cenny tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogdZobacz "Umow licencyjn" dla dalszych szczegBw.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog4Opiekun paczki dla SlackelSlackel package maintainer aboutDialog(SBowacki tBumacz GUISlovak gui translator aboutDialog*SBoweDski tBumacz guiSlovenian gui translator aboutDialogProsz wic powa|nie rozwa|y ofiarowanie pienidzy, ktre ostatecznie zostan u|yte w dobrym celu._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog,HiszpaDski tBumacz GUISpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog(Szwedzki tBumacz GUISwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogZespB indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog.To jest moja nagroda :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog&Turecki tBumacz guiTurkish gui translator aboutDialogCenny doradcaValuable advisor aboutDialog2GBosuj i zostaD fanem na:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogJtwrca skryptu Pythona backupwhenidle&backupwhenidle python script developer aboutDialogzamknijclose aboutDialogdonation link donation link aboutDialog2Opiekun paczki dla Fedoraex Fedora package maintainer aboutDialogza opracowanie wspaniaBej platformy lokalizacyjnej Transifex i dostarczanie go za darmoVfor developing the wonderful transifex localization platform and providing it for free aboutDialog"Fora dla wsparciaforums for their support. aboutDialog fri13fri13 aboutDialogO luckyBackupluckyBackup - about aboutDialog&luckyBackup jest rozpowszechniany zgodnie z warunkami <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogpienidzemoney aboutDialog"|adnych pienidzyno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog$port do MS Windowsport to MS Windows aboutDialog port do Mac OS Xport to Mac OS X aboutDialogport do OS/2 port to OS/2 aboutDialog`Autor paczki rpm, cenny tester i zdalny doradca  <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogzamknijclose logDialog:wczytywanie pliku z logami...loading logfile... logDialogHluckyBackup - postp wykonania zadaD&luckyBackup - tasks execution progress logDialognastpny bBd next error logDialogpoprzedni bBdprevious error logDialog czekajwait logDialog &%1 %2&%1 %2luckyBackupWindow&Przerwij&AbortluckyBackupWindow&O&AboutluckyBackupWindow &Dodaj&AddluckyBackupWindow &UsuD&DeleteluckyBackupWindow&Podrcznik &HandbookluckyBackupWindow &Pomoc&HelpluckyBackupWindow&Importuj&ImportluckyBackupWindow &Jzyk &LanguageluckyBackupWindow(&Minimalizuj do tray&Minimize to trayluckyBackupWindow&Modyfikuj&ModifyluckyBackupWindow &Nowy&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Wyj[cie&QuitluckyBackupWindow&Od[wie|&RefreshluckyBackupWindow &UsuD&RemoveluckyBackupWindow&Przywr&RestoreluckyBackupWindow&Zapisz&SaveluckyBackupWindow&Ustawienia &SettingsluckyBackupWindow&Zadanie&TaskluckyBackupWindow&ZadanieThis is a top menu action&TaskluckyBackupWindow&Paski narzdzi &ToolbarsluckyBackupWindow$&Poka|/Edytuj opis&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowPRZERWANOABORTEDluckyBackupWindowPrzerwijAbortluckyBackupWindowfPrzerwanie: Poczekaj na zabicie wszystkich procesw4Aborting: Please wait for all processes to be killedluckyBackupWindow AkcjeActionsluckyBackupWindowzWszystkie istotne pliki (logi itp.) zostaBy rwnie| usunite 4All relevant files (logs etc) have also been deletedluckyBackupWindow|Wszystkie istotne pliki (logi itp.) zostaBy tak|e zduplikowane7All relevant files (logs etc) have also been duplicatedluckyBackupWindowWszystkie istotne pliki (logi itp.) rwnie| zostaBy zaktualizowane4All relevant files (logs etc) have also been updatedluckyBackupWindow8Wszystkie zadania zakoDczoneAll tasks completedluckyBackupWindowLJeste[ pewien, |e chcesz usun profil'Are you sure you want to delete profileluckyBackupWindow^Jeste[ pewien, |e chcesz usun profil domy[lny3Are you sure you want to delete the default profileluckyBackupWindowjJeste[ pewien, |e chcesz usun nastpujce zadanie??5Are you sure you want to remove the following task ??luckyBackupWindow^Rozpocznij wykonanie wszystkich wybranych zadaD)Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindowvKontrole s wyBczone. To zadanie zostanie <b>pominite</b>5Checks are disabled. This task will be skippedluckyBackupWindow.Nie mo|na znalez plikuCould not locate the fileluckyBackupWindowtNie mo|na zaktualizowa ostatniego czasu wykonania wyj[cia-Could not update last execution time of tasksluckyBackupWindowCrashedCrashedluckyBackupWindow0Utwrz &duplikat zadaniaCreate D&uplicate taskluckyBackupWindow6Utwrz zadanie przywracaniaCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowAktualny profilCurrent ProfileluckyBackupWindow&Duplikuj D&uplicateluckyBackupWindow&Domy[lnyDe&faultluckyBackupWindowOpis DescriptionluckyBackupWindow Miejsce docelowe DestinationluckyBackupWindowKatalog DirectoryluckyBackupWindow GotoweDoneluckyBackupWindowSymulacjaDryluckyBackupWindow &EmailE&mailluckyBackupWindow&EksportujE&xportluckyBackupWindowBADERRORluckyBackupWindowWYJZCIEEXITluckyBackupWindowUpBywajcy czas Elapsed timeluckyBackupWindowUstawienia email zostaBy <font color=green>z powodzeniem zaktualizowaneBEmail preferences have been updated successfullyluckyBackupWindowBWy[lij email po wykonaniu profilu$Email report after profile executionluckyBackupWindow PolskiEnglishluckyBackupWindow polskiDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowhBBdy wystpiBy podczas przenoszenia plikw z logami'Errors occured during logfiles transferluckyBackupWindow|BBdy wystpiBy podczas migawek i przenoszenia plikw z logami5Errors occured during snapshots and logfiles transferluckyBackupWindowXBBdy wystpiBy podczas przenoszenia migawek(Errors occured during snapshots transferluckyBackupWindowfBBdy wystpiBy podczas przenoszenia plikw profilu/Errors occured during the profile file transferluckyBackupWindow"Wykonanie profiluExecution of profileluckyBackupWindow4Wykonanie zadaD zakoDczoneExecution of tasks finishedluckyBackupWindowjWykonanie zadania zostaBo przerwana przez u|ytkownika4Execution of tasks were terminated violently by userluckyBackupWindowWyj[cieExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindownTworzenie katalogu docelowego zakoDczono niepowodzeniem&Failed to create destination directoryluckyBackupWindowRTworzenie nowego profilu nie powiodBo siFailed to create new profileluckyBackupWindowUsuwanie wszystkich istotnych plikw (logi itp.) zakoDczyBo si niepowodzeniem.Failed to delete all relevant files (logs etc)luckyBackupWindowBUsuwanie profilu nie powiodBo siFailed to delete profileluckyBackupWindowDuplikowanie wszystkich istotnych plikw (logi itp.) zakoDczyBo si niepowodzeniem1Failed to duplicate all relevant files (logs etc)luckyBackupWindow:Nie mo|na zduplikowa profiluFailed to duplicate profileluckyBackupWindow:Nie mo|na zduplikowa profiluFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindowXEksport profilu zakoDczyB si niepowodzeniemFailed to export profileluckyBackupWindowVImport profilu zakoDczyB si niepowodzeniemFailed to import profileluckyBackupWindowJZmiana nazwy profilu nie powiodBa siFailed to rename profileluckyBackupWindowHZastpienie profilu nie powiodBo siFailed to replace profileluckyBackupWindow8rozpoczcie nie powiodBo siFailed to startluckyBackupWindowAktualizacja wszystkich istotnych plikw (logi itp.) nie powiodBa si.Failed to update all relevant files (logs etc)luckyBackupWindow*Ukryj okno informacjiHide information windowluckyBackupWindow*Ukryj okno informacji+hide/show information window button tooltipHide information windowluckyBackupWindowImportuj profilImport ProfileluckyBackupWindowOkno informacjiInformation windowluckyBackupWindowOkno informacjiinformation window titleInformation windowluckyBackupWindowVZaktualizowano ostatni czas wykonania zadaD$Last execution time of tasks updatedluckyBackupWindowBLista wszystkich dostpnych zadaDList of all the available tasksluckyBackupWindowZablokujLockluckyBackupWindow:Zarzdzaj &kopiami zapasowymiManage &BackupluckyBackupWindowMenad|er zadaD Manage TaskluckyBackupWindowXPrzesuD zaznaczone zadanie o 1 pozycj w dB/Move the highlighted task down, by one positionluckyBackupWindowZPrzesuD zaznaczone zadanie o 1 pozycj w gr-Move the highlighted task up, by one positionluckyBackupWindowNIENOluckyBackupWindowNIE ZAWARTO NOT INCLUDEDluckyBackupWindow UWAGANOTEluckyBackupWindow:Nie znaleziono |adnych bBdwNo errors foundluckyBackupWindow0Zadanie teraz wykonywaneNow performing taskluckyBackupWindowPokazuj tylko bBdy i wa|ne informacji podczas aktualizacji okna could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindowFPasek postpu nie jest realistyczny(Progressbar update will not be realisticluckyBackupWindow&ZmieD nazwR&enameluckyBackupWindowBBd odczytu Read errorluckyBackupWindowNUsunito wszystkie starsze dane migawki Removed all older snapshots dataluckyBackupWindowUsuwanieRemovingluckyBackupWindowdUsuwanie starych migawek i plikw z logami zadania+Removing old snapshots and logfiles of taskluckyBackupWindowWykonajRunluckyBackupWindow&Harmonogram S&cheduleluckyBackupWindow0Wybierz katalog eksportuSelect export directoryluckyBackupWindow&Ustaw jako domy[lnySet as DefaultluckyBackupWindowUstaw [cie|ki Set pathsluckyBackupWindowHUstaw [cie|ki dla komend rsync i ssh$Set paths for rsync and ssh commandsluckyBackupWindow*Poka| okno informacjiShow information windowluckyBackupWindow*Poka| okno informacji+hide/show information window button tooltipShow information windowluckyBackupWindow.Poka| tekst pod ikonamiShow text under iconsluckyBackupWindow yrdBoSourceluckyBackupWindow^Zatrzymaj wykonywanie uruchomionych zadaD TERAZ'Stop the execution of running tasks NOWluckyBackupWindowNZ powodzenie stworzono katalog docelowy)Successfuly created destination directoryluckyBackupWindowZadanieTaskluckyBackupWindowLista zadaD Task listluckyBackupWindow&Lista zadaD profiluTask list of profileluckyBackupWindowOpis profiluThe description of profileluckyBackupWindowzKatalog, ktry wybraBe[ nie zawiera poprawnych danych profiluCThe directory you have selected does not contain valid profile dataluckyBackupWindowLTwoja nazwa zawiera niedozwolone znaki:The name you have entered contains only invalid charactersluckyBackupWindowJSystem zostanie za 1 minut zamknity$The system will shutdown in 1 minuteluckyBackupWindow,Lista zadaD jest pustaThe task list is emptyluckyBackupWindowZostanie przeprowadzona <b>symulacja</b>, ktra nie powoduje |adnych zmian (i daje prawie taki sam wynik jak prawdziwe wykonanie){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTimed out Timed outluckyBackupWindowBOtwarcie profilu jest nie mo|liweUnable to open profileluckyBackupWindowNieznany bBd Unknown errorluckyBackupWindowNieznany bBdthis refers to a process Unknown errorluckyBackupWindow^U|yj przycisku "dodaj" po prawej, aby rozpocz0Use the "add" button on the right to get startedluckyBackupWindowU|yj "DoBcz pola wyboru" w celu objcia lub nie wybranego zadania>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindow2Poka|/Edytuj opis profilu!View/Edit the profile descriptionluckyBackupWindow UWAGAWARNINGluckyBackupWindow Witamy Welcome toluckyBackupWindow:Czy chciaBby[ rwnie| usun:Would you like to also remove:luckyBackupWindow6Chcesz kontynuowa mimo to?!Would you like to proceed anyway?luckyBackupWindow.Czy chcesz go zastpi?Would you like to replace it ?luckyBackupWindowHChcesz zapisa przed kontynuowaniem?-Would you like to save it before proceeding ?luckyBackupWindowBBd zapisu Write errorluckyBackupWindowTAKYESluckyBackupWindowDChcesz stworzy punkt przywracania/You have asked for a RESTORE task to be createdluckyBackupWindowhUwzgldniBe[ tylko zadania, ktre zostan pominite 9You have only included tasks that are going to be skippedluckyBackupWindowlZostaB osignity maksymalny limit obsBugiwanych zadaD5You have reached the maximum limit of supported tasksluckyBackupWindowZUsuD jakie[ zadanie je[li chcesz doda inne!!7You have to remove a task if you wish to add another !!luckyBackupWindowjjeden nowy pusty, z t sam nazw, zostanie utworzony4a new blank one, with the same name, will be createdluckyBackupWindow dodajaddluckyBackupWindowdodaj zadanieadd taskluckyBackupWindowju| istniejealready existsluckyBackupWindow:i "profil" z listy rozwijanejand 'profile' drop-down listluckyBackupWindow4i dodano do listy profilwand added at the profile listluckyBackupWindowVi zmieD wszystko co chcesz przed wykonaniem.and change anything you wish before proceedingluckyBackupWindowjakoasluckyBackupWindowjakoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowobliczanie calculatingluckyBackupWindowobliczanie-info message displayed during ...calculations calculatingluckyBackupWindowwyj[cie komendcommands outputluckyBackupWindow2nie mgB zosta utworzonycould not be createdluckyBackupWindow0nie mgB zosta zapisanycould not be savedluckyBackupWindow0nie mgB zosta zapisanyPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow:tworzenie zakoDczone sukcesemcreated successfullyluckyBackupWindow>tworzenie profilu domy[lnego...creating default profile ...luckyBackupWindow(tworzenie profilu...creating profile ...luckyBackupWindowzobecny crontab <font color=green>zaktualizowano z powodzeniem6current crontab updated successfullyluckyBackupWindowaktualny profilcurrent profileluckyBackupWindowprofil domy[lnydefault profileluckyBackupWindowprofil domy[lny^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowprofil domy[lnyVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow,usunito z powodzeniemdeleted successfullyluckyBackupWindowusuwanie plikwdeleting filesluckyBackupWindowusuwanie plikw/info message displayed during ...file deletionsdeleting filesluckyBackupWindowpoka| - przywr - usuD istniejce kopie zapasowe pod[wietlonych zadaD?display - restore - delete existing backups of highlighted taskluckyBackupWindow\Poka| informacje na temat zaznaczonego zadania.display information regarding highlighted taskluckyBackupWindow8zduplikowano z sukcesem jakoduplicated successfully asluckyBackupWindowZnaleziono bBd errors foundluckyBackupWindow"wykonanie profiluexecution of profile:luckyBackupWindow"Wykonanie profiluAtray message - execution of profile: in progress...execution of profile:luckyBackupWindow<eksportowano z powodzeniem do exported successfully toluckyBackupWindow2usuwanie nie powiodBo sifailed to removeluckyBackupWindowzUsuwanie wszystkich starszych danych migawki nie powiodBo si)failed to remove all older snapshots dataluckyBackupWindowzakoDczonofinishedluckyBackupWindowzakoDczono:full phrase: 'Execution of profile finished'finishedluckyBackupWindow:Import zakoDczony powodzeniemimported successfullyluckyBackupWindoww toku...in progress...luckyBackupWindow wstawincludeluckyBackupWindow(zostaB zmodyfikowany is modifiedluckyBackupWindow$jest nie wa|ne dlais not valid forluckyBackupWindow:przeskocz do nastpnego bBdujump to next errorluckyBackupWindow>przeskocz do poprzedniego bBdujump to previous errorluckyBackupWindow>wczytywanie zakoDczone sukcesemloaded successfullyluckyBackupWindowBwczytywanie profilu domy[lnego...loading default profile ...luckyBackupWindow8wczytywanie nie powiodBo siloading failedluckyBackupWindow,wczytywanie profilu...loading profile ...luckyBackupWindow\Plik(i) z logami zostaBy utworzone w katalogu:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow&minimalizuj do trayminimize to trayluckyBackupWindow0minimalizuj okno do tray%minimizes the window to the tray arealuckyBackupWindow zmieDmodifyluckyBackupWindow0zmieD zaznaczone zadaniemodify highlighted taskluckyBackupWindow.Nie ma nic do zrobienia nothing to doluckyBackupWindow8Wykonanie komendy po zadaniupost-task execution of commandluckyBackupWindow@Wykonanie komendy przed zadaniempre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow profilprofile luckyBackupWindowtryb cichy quiet modeluckyBackupWindowod[wie|ono refreshedluckyBackupWindowusuDremoveluckyBackupWindow.UsuD zaznaczone zadanieremove highlighted taskluckyBackupWindowHzmiana nazwy zakoDczyBa si sukcesemrenamed successfully toluckyBackupWindowHzmiana nazwy zakoDczyBa si sukcesemWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindow|rsync i przed/po zadania komend wyj[cia zostaBy pokazane tutaj9rsync and pre/post task commands output is displayed hereluckyBackupWindow2zapis zakoDczony sukcesemsaved successfullyluckyBackupWindowBzapisywanie profilu domy[lnego...saving default profile ...luckyBackupWindow,zapisywanie profilu...saving profile ...luckyBackupWindowzaplanowano scheduledluckyBackupWindow&ustaw jako domy[lneset as defaultluckyBackupWindowustawiony naset toluckyBackupWindowzakoDczshutdownluckyBackupWindowtryb symulacjisimulation modeluckyBackupWindow statusstatusluckyBackupWindowsuper user super userluckyBackupWindowtryb super usersuper user modeluckyBackupWindowdotoluckyBackupWindow$przesyBanie plikwtransferring filesluckyBackupWindow$przesyBanie plikw/info message displayed during ...file transferstransferring filesluckyBackupWindow&prbuj wysBa emailtrying to send an emailluckyBackupWindowwersja:version:luckyBackupWindowOblicz r|niceCalculate differences manageDialogbOblicz r|nice pomidzy zrdBem i wybran migawkFCalculate the differences between the source and the selected snapshot manageDialogNObliczanie zakoDczone przez u|ytkownikaCalculations terminated by user manageDialogZamknijClose manageDialogZamknij oknoClose this window manageDialogUsuDDelete manageDialogPUsuD wybran migawk i jej plik z logami,Delete the selected snapshot and its logfile manageDialogxNie masz wystarczajcych uprawnieD do czytania tego katalogu;I do not have sufficient permissions to read this directory manageDialog:Prosz wybra migawk z listy&Please select a snapshot from the list manageDialogXProsz czeka, a| proces zostanie zakoDczony*Please wait until the thread is terminated manageDialogPrzywrRestore manageDialog0Przywr wybran migawkRestore the selected snapshot manageDialogSTOPSTOP manageDialog4Zatrzymaj obliczanie TERAZStop calculations NOW manageDialog0Ten katalog nie istniejeThis directory does not exist manageDialog0Ten katalog nie istniejeInformation messageThis directory does not exist manageDialog6Poka| logi wybranej migawki)View the logfile of the selected snapshot manageDialogpPoka| plik z logami dla wybranego zadania synchronizacji*View the logfile of the selected sync task manageDialog"miejsce docelowe: destination: manageDialogukryj zrdBo hide source manageDialogNluckyBackup - menad|er kopii zapasowychluckyBackup - manage backup manageDialognie dostpne not available manageDialog profilprofile manageDialogzrdBo:source: manageDialog2synchronizacja katalogu A sync dir A manageDialog2synchronizacja katalogu B sync dir B manageDialogzadanietask manageDialogPoka| logiview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardPRZERWIJABORT manageWizardPrzerwaneAborted manageWizard.Zcie|ka kopii zapasowej Backup path manageWizard`Przegldaj lokalnie za now [cie|ka przywracania%Browse locally for a new restore path manageWizardSprawdz to, aby skopiowa migawk kopii zapasowej do katalogu przywracania.BCheck this, to clone the backup snapshot to the restore directory. manageWizardData i czas Date & time manageWizard&UsuD kopie zapasow Delete backup manageWizard`UsuD istniejce dane, ktre nie istniej w kopii4Delete existing data that do not exist at the backup manageWizardUsuwanie danych Deleting data manageWizardVUsun pliki, ktrym migawka wylicza zmiany)Deleting file that lists snapshot changes manageWizard4UsuD plik z logami migawkiDeleting snapshot logfile manageWizardIstniejce pliki kopii zapasowej zostan zastpione odpowiednimi plikami w katalogu przywracaniaSExisting backup files will replace the corresponding files at the restore directory manageWizardZakoDczoneFinished manageWizardJe[li powy|sze informacje s poprawne, kliknij <b>start</b>, aby rozpocz@If the information above is correct, click start to begin manageWizardJe[li powy|sze informacje s poprawne, kliknij <b>start</b>, aby rozpocz`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard.Idz do nastpnego bBduJump to next error manageWizard2Idz do poprzedniego bBduJump to previous error manageWizardjNie istnieje migawka specyficznych danych. Pomijam...,No snapshot specific data exist. Skipping... manageWizardZcie|kaPath manageWizard.Przywr kopie zapasowRestore backup manageWizard([cie|ka przywracania Restore path manageWizardBPrzywracanie danych: cz[ gBwnaRestoring data: main trunk manageWizardDPrzywracanie danych: pliki migawekRestoring data: snapshot files manageWizardBWybierz nowy katalog przywracaniaSelect new restore directory manageWizardKatalog przywracania bdzie identyczny z migawk kopii zapasowejBThe restore directory will become identical to the backup snapshot manageWizardZostanie przeprowadzona <b>symulacja</b>, ktra nie powoduje |adnych zmian (pokazuje prawie taki sam wynik jak prawdziwy przebieg){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard2Zaktualizuj list migawekUpdating list of snapshots manageWizardOSTRZE{ENIEWARNING manageWizardPMasz zamiar usun dane kopii zapasowych#You are about to delete backup data manageWizardzamknijcancel manageWizard zmieDchange manageWizardzamknijclose manageWizard znaleziono bBdy errors found manageWizardniepowodzeniefailed manageWizardniepowodzenie-info message displayed after ...file deletionfailed manageWizardNluckyBackup - menad|er kopii zapasowychluckyBackup - manage backup manageWizardnastpny bBd next error manageWizardbrak bBdw no errors manageWizardnie dostpne not available manageWizardpoprzedni bBdprevious error manageWizardSymulacja simulation manageWizard startstart manageWizard sukcessuccess manageWizard sukces-info message displayed after ...file deletionsuccess manageWizard sukces5info message displayed after ...snapshots list updatesuccess manageWizard'Zdalny host' jest zaznaczony, ale nie wybrano |adnej nazwy hosta='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Nie zapomnij</b> zdefiniowa katalogu w polu grupowym "Wyklucz", ktry bdzie zawieraB miejsce docelowefDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogDodaj jaki[ katalog, plik czy [cie|k, ktre w tym zadaniu jest pominite@Add any directory, file or pattern to be excluded from this task modifyDialogDodaj dowolny katalog, plik lub wzr, ktre nale|y uwzgldni przy tym zadaniu>Add any directory, file or pattern to be included by this task modifyDialogRDodaj komend tak jak wpisan w polu obok*Add command as entered in the field beside modifyDialogRDodaj wyjtki jak podano w nastpnym polu*Add exclusion as entered in the next field modifyDialog`Dodaj wBczenie jak wprowadzone w nastpnym polu*Add inclusion as entered in the next field modifyDialogDodaj albo usuD jakiekolwiek opcje rsync.# Je[li nie wiesz co to znaczy, zostaw nietknite!!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialog\Dodaj opcje rsync jak podanej w nastpnym polu-Add rsync option as entered in the next field modifyDialogzaawansowaneAdvanced modifyDialogPoAfter modifyDialogWszystkie zadeklarowane pola w oknie wBa[ciwo[ci zadania wydaj si by ok?All declared fields of the task properties window seem to be ok modifyDialogRwnie| wykonaj Also Execute modifyDialogFSprbuj aktywowa super u|ytkownikaAttempt super-user activities modifyDialogbKopia zapasowa zrdBa wewntrz miejsca docelowego Backup Source inside Destination modifyDialog,Pliki kopii zapasowych Backup files modifyDialog:Archiwizacja otwartych plikwBackup open files modifyDialog ZanimBefore modifyDialogFoldery cache Cache folders modifyDialog AnulujCancel modifyDialog"Zaznacz to, aby u|y partycj FAT / NTFS jako miejsce docelowe. # WBasno[ i uprawnienia danych nie zostan zachowane. # (-t - modify-window = 1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogZaznacz to, aby klonowa zrdBo do miejsca docelowego Pozostaw niezaznaczone, aby utworzy dodatkowy katalog wewntrz miejsca docelowegoiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialoghSprawdz to, aby poBczy si z zdalnym moduBem rsync/Check this to connect to an rsync Remote module modifyDialog.Opcje wiersza poleceniaCommand Options modifyDialog.Lista wiersza polecenia Command list modifyDialogKopiuj urzdzenie (super u|ytkownik tylko) & i specjalne pliki, ktre s (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogKopiuj dowizania symboliczne jako dowizania symboliczne # (-l)Copy symlinks as symlinks (-l) modifyDialogOkre[lenie tego typu zadania: # 1. Kopia zapasowa katalogu zrdBowego, wewntrz miejsca docelowego (patrz rwnie| pole "nie twrz katalogu") # 2. Zsynchronizuj zrdBo i miejsce docelowe, utrzymuj najnowsze pliki u obuDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogZdefiniuj typ tego zadania: 1. Kopia zapasowa zawarto[ci zrdBa wewntrz miejsca docelowego 2. Kopia zapasowa katalogu zrdBowego wedBug nazwy wewntrz miejsca docelowego 3. Synchronizuj zrdBo i miejsce docelowe, zachowuj najnowsze pliki w obydwu miejscachDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog<UsuD dane z miejsca docelowegoDelete files on the destination modifyDialog\UsuD pliki z miejsca docelowego, ktre nie istniej w zrdle# . "Rekursja do katalogw" musi by wybrana # (- usuD-po & - usuD-wykluczone, je[li opcja "Wyklucz" jest u|ywana)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogOpis Description modifyDialog Miejsce docelowe Destination modifyDialog"Miejsce docelowe: Destination : modifyDialog@Miejsce docelowym jest FAT/NTFSDestination is FAT/NTFS modifyDialog<NIE twrz dodatkowego kataloguDo NOT create extra directory modifyDialogNie twrz kopii zapasowej plikw zrdBowych, ktre s nowsze w miejscu docelowym # (--aktualizacja)HDo not backup source files that are newer on the destination (--update) modifyDialogNie wykluczaj tej listy wzorcw. # Prosz odnie[ si do instrukcji dla lepszego zrozumienia zasad wBczania.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogBEdytuj pod[wietlone uwzgldnienieEdit highlighted inclusion modifyDialogPodaj nazw dla tego zadania (np. "Kopia zapasowa mojego katalogu domowego"):Enter a name for this task (eg "Backup my home directory") modifyDialogWpisz tutaj polecenie, ktre zostanie wykonane po zadaniu, a nastpnie naci[nij przycisk "Dodaj", aby doda go do listy poni|ejnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogWpisz tutaj polecenie, ktre zostanie wykonane przed zadaniem, a nastpnie naci[nij przycisk "Dodaj", aby doda go do listy poni|ejoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogWpisz tutaj opcj rsync do dodania (np. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog^Wprowadz tutaj plik, folder lub wzr i naci[nij przycisk "Dodaj", aby doda go do list wykluczeD# *-dopasowuje dowolny niepusty skBadnik (zatrzymuje si przy uko[nikach) # **-dopasowuje wszystko, wBczajc uko[niki#? -dopasowuje dowolny znak z wyjtkiem uko[nika# koDcowy dir_name / ***-dopasowuje zarwno katalog jak i wszystko, co w nim# uruchomiane - wzorzec jest zakotwiczony do okre[lonego miejsca w hierarchii # transferu (normalnie jest to "yrdBo")# KoDcowy / - tylko katalog jest dopasowany, nie regularne pliki, dowizania symboliczne lub urzdzeniaEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog^Wprowadz tutaj plik, folder lub wzr i naci[nij przycisk "Dodaj", aby doda go do list wykluczeD# *-dopasowuje dowolny niepusty skBadnik (zatrzymuje si przy uko[nikach) # **-dopasowuje wszystko, wBczajc uko[niki#? -dopasowuje dowolny znak z wyjtkiem uko[nika# koDcowy dir_name / ***-dopasowuje zarwno katalog jak i wszystko, co w nim# uruchomiane - wzorzec jest zakotwiczony do okre[lonego miejsca w hierarchii # transferu (normalnie jest to "yrdBo")# KoDcowy / - tylko katalog jest dopasowany, nie regularne pliki, dowizania symboliczne lub urzdzeniaEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogPodaj peBn [cie|k katalogu docelowego (np. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogPodaj peBn [cie|k do pliku zawierajcego prywatny klucz autoryzujcy SSH (pozostaw puste, je[li nie dotyczy). Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogWprowadz peBn [cie|k do pliku zawierajcego (nie SSH) hasBo autoryzacji dla rsync (pozostaw puste je[li nie dotyczy).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogvPodaj peBn [cie|k katalogu zrdBowego (np. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog6Podaj nazw zdalnego hosta."Enter the name of the remote host. modifyDialogWprowadz port, ktry chciaBby[ u|ywa dla poBczenia SSH (pozostaw puste je[li nie dotyczy)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogWprowadz twoj nazw u|ytkownika dla zdalnego hosta (pozostaw puste je[li nie dotyczy).HEnter your username for the remote host (leave blank if not applicable). modifyDialog Znaleziono bBdyErrors have been found modifyDialogWyjtekExclude modifyDialogpWyklucz wszystkie foldery "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogpWyklucz wszystkie pliki i foldery kopii zapasowych (**~)(Exclude all backup files & folders (**~) modifyDialogvWyklucz wszystkie foldery cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialog`Wyklucz wszystkie foldery tymczasowe (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogtWyklucz katalogi .gvfs wszystkich u|ytkownikw (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogWyklucz wszystkie katalogi "kosz" u|ytkownika (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogWyklucz liste Exclude list modifyDialogWyklucz katalogi systemowe /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogWyklucz systemowe foldery montowania /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogbWykonaj dodatkowe komendy, przed albo po zadaniu.1Execute extra commands, before or after the task. modifyDialogWykonaj zadanie, nawet je[li pojawia si komunikat ostrzegawczy # Normalnie stosowane je[li polecenie "Wykonaj przed" mo|e naprawi ostrze|enie (np. montuj partycje) # # UWAGA: sprawdzi, czy naprawd wiesz, co robiszExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog:Lista dodatkowych opcji rsyncExtra rsync options list modifyDialogNPliki, ktre s twarde poBczone ze sob od zrdBa bdzie trudno poBczy ze sob od miejsca docelowego # UWAGA: Wszystkie pliki musz by w zestawie transferu # (-H)!Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog2Ignoruj pliki w stylu CVSIgnore files the CVS way modifyDialogIgnorowanie plikw u|ywajcych podobnego algorytmu do CVS # (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogWstawianieInclude modifyDialogHObejmuje tylko t list wzorw. Nic wicej. # zapoznaj si z podrcznikiem dla lepszego zrozumienia zawartych zasad. # to spowoduje wyBczenie funkcji wykluczania. Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog Lista zawarto[ci Include list modifyDialogTryb wstawiania Include mode modifyDialogPozostaw zaznaczone pole wyboru, aby <b> ZATRZYMA </ b> wykonanie uruchomionego zadania, je[li to polecenie koDczy prac z bBdemgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Tryb: Mode: modifyDialogPPrzesuD ni|ej pod[wietlone uwzgldnienieMove highlighted inclusion down modifyDialogPPrzesuD wy|ej pod[wietlone uwzgldnienieMove highlighted inclusion up modifyDialog Nazwa:Name : modifyDialog&Normalne wstawianieNormal Include modifyDialogOkayOkay modifyDialogZawiera tylko Only Include modifyDialogW przeciwnym wypadku, odznacz 'Zdalny host' aby pracowa lokalnie2Otherwise uncheck 'Remote Host' to operate locally modifyDialognProsz zaznaczy odpowiednie pole, przed przystpieniem/Please check the relevant box before proceeding modifyDialogProsz okre[li zrdBo zanim edytor wzorcw zostanie uruchomionyZabezpieczone twarde poBczeniaPreserve hard links modifyDialog2Zachowaj wBasno[ci, czasyPreserve ownership, times modifyDialogZachowaj prawaPreserve permissions modifyDialog<Zachowaj prawa do plikw# (-p)"Preserve permissions of files (-p) modifyDialog>Zachowaj dowizania symbolicznePreserve symlinks modifyDialogZachowaj wBa[ciciela (super u|ytkownik tylko), grupy i sygnatur czasow plikw # (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialog:Odczytaj wzr wyjtku z plikuRead exclude patterns from file modifyDialogOdczyt pliku: Read file: modifyDialog@Odczytaj wzory wBczania z plikuRead include patterns from file modifyDialog*Rekursja do katalogwRecurse into directories modifyDialog8Rekursja do katalogw # (-r)Recurse into directories (-r) modifyDialogZdalnieRemote modifyDialogZdalny moduB Remote module modifyDialog>UsuD zaznaczon komend z listy$Remove highlighted command from list modifyDialog>UsuD zaznaczone wyjtki z listy&Remove highlighted exclusion from list modifyDialogFUsuD pod[wietlone wBczenie z listy&Remove highlighted inclusion from list modifyDialog:UsuD zaznaczone opcje z listy#Remove highlighted option from list modifyDialogPowtarzaj ka|d komend, ktra zakoDczy si nie powodzeniem, x razy&Repeat any command that fails, x times modifyDialog0Powtarzaj w razie bBdu:Repeat on fail: modifyDialog(Przywr uprawnieniaRestore permissions modifyDialog8Wybierz komend do wykonaniaSelect command to be executed modifyDialog0Wybierz katalog docelowySelect destination directory modifyDialog^Wybierz plik do odczytania pozbawionego wzorcw$Select file to read exclude patterns modifyDialogXWybierz plik do odczytu zawierajcego wzorce$Select file to read include patterns modifyDialog6Wybierz plik z hasBem rsyncSelect rsync password file modifyDialog0Wybierz katalog zrdBowySelect source directory modifyDialog4Wybierz plik z kluczem SSHSelect ssh keyfile modifyDialogzUstaw caBkowit liczb kopii zapasowych migawek do zachowania0Set the total number of backup snapshots to keep modifyDialoghPoka| polecenia rsync podczas uruchomienia polecenia.Shows the rsync command as it will be executed modifyDialogNPomiD nowsze pliki w miejscu docelowym Skip newer destination files modifyDialog,Migawki do zachowania:Snapshots to keep: modifyDialog yrdBoSource modifyDialogyrdBo:Source : modifyDialogLSynchronizuj zrdBo i miejsce docelowe"Synchronize Source and Destination modifyDialog"Foldery systemoweSystem folders modifyDialog8Systemowe foldery montowaniaSystem mount folders modifyDialogOpis zadaniaTask description modifyDialogNazwa zadania Task name modifyDialog&WBa[ciwo[ci zadaniaTask properties modifyDialogSzablony Templates modifyDialog$Foldery tymczasoweTemporary folders modifyDialogtTego nie mo|na, poniewa| '/' nie ma |adnej aktualnej nazwySTOP</b> wykonania zadania w przypadku bBdu0use boxes to STOP task execution on error modifyDialogsprawdzvalidate modifyDialogzbez zaznaczenia 'rekursja w katalogach ", ktre jest wymaganeCwithout having checked 'Recurse into directories' which is required modifyDialog AnulujCancel patternEditor>Zaznacz to, aby u|y katalogu powy|ej jako [cie|ki bezwzgldnej # je[li niezaznaczone, wzr pasuje do ka|dego pliku / katalogu, ktry speBnia kryterium "nazwa"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorZdefiniuj tutaj kryteria nazw dla plikw / katalogw, ktre maj by dopasowaneEDefine here the name criteria for the files/directories to be matched patternEditorZOkre[l tutaj, co powinno si odnosi do wzoru8Define here, what would you like the pattern to refer to patternEditor$Zawarto[ kataloguDirectory contents patternEditorWpisz tutaj znaki, zawarte w dowolnej pozycji, nazwy plikw / katalogw, ktrych wzr odnosi si dosEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorWpisz tutaj koDcowe znaki nazwy plikw/katalogw, ktrych wzr odnosi si doEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditor|Wpisz tutaj nazw plikw/katalogw, ktrych wzr odnosi si doGEnter here the name of the files/directories that the pattern refers to patternEditorWpisz tutaj pocztkowe znaki nazwy plikw/katalogw, ktrych wzr odnosi si dobEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor8Idz gBbiej w [cie|ce przez:Go deeper in path by : patternEditorPIdz gBbiej w [cie|ce przez ka|dy poziomGo deeper in path by any level patternEditorOkayOkay patternEditorNProsz wybra katalog z wewntrz zrdBa+Please choose a directory within the source patternEditorHProsz wybra plik z wewntrz zrdBa&Please choose a file within the source patternEditorhPrzywr pola edytora wzorcw do warto[ci domy[lnych5Reset the pattern editor fields to the default values patternEditorWybierz katalogSelect directory patternEditorWybierz plik Select file patternEditor Zestaw katalogwSet of directories patternEditorZestaw plikw Set of files patternEditor&Specyficzny katalogSpecific directory patternEditor Specyficzny plik Specific file patternEditorNRzeczywisty wzr wy[wietlany jest tutaj$The actual pattern is displayed here patternEditor&Wzr odnosi si do:The pattern refers to a: patternEditor U|yj tego, je[li wzr odnosi si do zestawu katalogw, ktre maj co[ wsplnego # np. wszystkie katalogi, ktre s nazwane jako "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorU|yj tego, je[li wzr odnosi si do zestawu plikw, ktre maj co[ wsplnego # np. wszystkie pliki z rozszerzeniem ". txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorU|yj to je[li wzr odnosi si do specyficznego katalogu# np. "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorU|yj to je[li wzr odnosi si do specyficznego pliku# np. "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor2U|yj tego, je[li wzr odnosi si do zawarto[ci katalogu (lub zestawu katalogw), a nie do samego katalogu # np. zawarto[ katalogu "/media/muzyka/album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorU|yj tego, aby odnie[ si do gBbszych podkatalogw # np. # katalog "/ media / muzyka" zawiera 3 podkatalogi: # 1.Rock # 2.Jazz # 3.Soundtracks # i chcesz odnie[ si do caBej zawarto[ci tych 3, okre[l nastpujco: # * Zestaw katalogw # * Zawarto[ katalogw # * Zcie|k: / media / muzyka / # * Idz gBbiej w [cie|k przez "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditor ka|dyany patternEditorHlokalnie przegldaj [cie|k katalogu"browse localy for a directory path patternEditor2lokalnie przegldaj plikibrowse localy for a file patternEditorzawarte: contains : patternEditorkatalog: directory : patternEditorkoDczc z: ends with : patternEditor plik:file : patternEditorostateczny wzr final pattern patternEditorjest dokBadnie: is exactly : patternEditor Nazwaname patternEditorEdytor wzorcwpattern editor patternEditorprzywrreset patternEditor rozpoczynajc z: starts with : patternEditor2u|yj [cie|ki bezwzgldnejuse absolute path patternEditorplik filescheduleDialogi na& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:opznienie:delayscheduleDialogB<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Harmonogram wykonania profilu</span></p></body></html>

Profile execution scheduling

scheduleDialog$@ uruchom ponownie@ rebootscheduleDialog>Dodano nowy profil harmonogramuAdd a new profile schedulescheduleDialog2Dodaj profil harmonogramuAdd profile schedulescheduleDialog ka|dyAnyscheduleDialogKwiecieDAprilscheduleDialogKwiecieDfull phrase: 'of April'AprilscheduleDialogdJeste[ pewny, |e chcesz zamkn okno harmonogramu?4Are you sure you want to close the schedule dialog ?scheduleDialogSierpieDAugustscheduleDialogSierpieDfull phrase: 'of August'AugustscheduleDialog AnulujCancelscheduleDialogTo sprawdzi, czy urzdzenie nie obsBuguje [rodowiska graficznego (np. serwer)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogTryb konsoli Console ModescheduleDialogGrudzieDDecemberscheduleDialogGrudzieDfull phrase: 'of December'DecemberscheduleDialogXOpznione wykonanie luckybackup przy starcie&Delay luckybackup execution at startupscheduleDialog2Wy[wietl aktualny crontabDisplay the current crontabscheduleDialogWykonaj profilExecute profilescheduleDialogLutyFebruaryscheduleDialogLutyfull phrase: 'of February'FebruaryscheduleDialog PitekFridayscheduleDialog(Profil nieprawidBowyInvalid profilescheduleDialogStyczeDJanuaryscheduleDialogStyczeDfull phrase: 'of January'JanuaryscheduleDialog LipiecJulyscheduleDialog Lipiecfull phrase: 'of July'JulyscheduleDialogCzerwiecJunescheduleDialogCzerwiecfull phrase: 'of June'JunescheduleDialog MarzecMarchscheduleDialog Marzecfull phrase: 'of March'MarchscheduleDialogMajMayscheduleDialogMajfull phrase: 'of May'MayscheduleDialog:Modyfikuj profil harmonogramuModify profile schedulescheduleDialogJModyfikuj wybrany profil harmonogramu Modify selected profile schedulescheduleDialogPoniedziaBekMondayscheduleDialog<Nie okre[lono harmonogramw !!No schedules are declared !!scheduleDialogListopadNovemberscheduleDialogListopadfull phrase: 'of November'NovemberscheduleDialogPazdziernikOctoberscheduleDialogPazdziernikfull phrase: 'of October'OctoberscheduleDialogProfil: Profile :scheduleDialog<SzczegBy profilu harmonogramuProfile schedule detailsscheduleDialog@UsuD wybrany profil harmonogramu Remove selected profile schedulescheduleDialog2Uruchom raz, przy starcieRun once, at startupscheduleDialog SobotaSaturdayscheduleDialogWrzesieD SeptemberscheduleDialogWrzesieDfull phrase: 'of September' SeptemberscheduleDialogPomiD zadania, ktre pokazuj ostrze|enia 'KRYTYCZNY' po sprawdzaniu kataloguSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog(Poczwszy od podstawStarting from scratchscheduleDialogNiedzielaSundayscheduleDialogzIstniejcy plik harmonogramu nie jest poprawny luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogCzwartekThursdayscheduleDialog WtorekTuesdayscheduleDialog:Nie mo|na utworzy pliku cronUnable to create cron filescheduleDialogJNie mo|na utworzy pliku harmonogramuUnable to create schedule filescheduleDialog Zroda WednesdayscheduleDialogXDokonano zmian bez klikania przycisku cronIT8You have made changes without clicking the cronIT buttonscheduleDialogZostaB osignity maksymalny limit obsBugiwanych zaplanowanych profiliBYou have reached the maximum limit of supported scheduled profilesscheduleDialogPMusisz usun jaki[ wpis, aby doda inny5You have to remove an item if you wish to add anotherscheduleDialogDTwj crontab zostaB zaktualizowany$Your crontab is updated successfullyscheduleDialog dodajaddscheduleDialogoatscheduleDialogzamknijclosescheduleDialogzamknij oknoclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog"zawarto[ crontabcrontab contentscheduleDialog dzieDdayscheduleDialogDzieD miesica:day of month :scheduleDialogdzieD tygodnia: day of week :scheduleDialog ka|dyeveryscheduleDialog2luckyBackup - harmonogramluckyBackup - schedulescheduleDialogminminscheduleDialog zmieDmodifyscheduleDialogmiesic:month :scheduleDialog.ndscheduleDialog.as in 22nd dayndscheduleDialog4wpisy crontab nie istniejno crontab entries existscheduleDialognaofscheduleDialog ka|dego miesica of any monthscheduleDialogokayokayscheduleDialog2raz, przy starcie systemuonce, at system startupscheduleDialog.rdscheduleDialog.as in 23rd dayrdscheduleDialogusuDremovescheduleDialogpzaplanuj wykonanie profili jak na podanej powy|ej li[cie@schedule the execution of profiles as declared in the list abovescheduleDialogpomiD krytyczne skip criticalscheduleDialog.stscheduleDialog.as in 21st daystscheduleDialog.as in 31st daystscheduleDialog.thscheduleDialog.as in 10th daythscheduleDialog.as in 11th daythscheduleDialog.as in 12th....19th daythscheduleDialog.as in 20th daythscheduleDialog.as in 24th...30th daythscheduleDialog. as in 8th daythscheduleDialog. as in 9th daythscheduleDialog"czas (godz:min) :time (hour:min) :scheduleDialog,Poka| aktualny crontabview current crontabscheduleDialogFProfil o takiej nazwie ju| istnieje+A profile with the same name already exists textDialogJJeste[ pewny, |e chcesz kontynuowa??#Are you sure you wish to proceed ?? textDialogOSTRO{NIE, je[li twoj intencj NIE jest klonowanie zrdBa do miejsca docelowego!!BBEWARE, if your intention is NOT to clone source to destination !! textDialog AnulujCancel textDialogHKopiuj komend do pamici podrcznejCopy command to clipboard textDialogTNie pokazuj tego ponownie dla tego zadania$Do not show this again for this task textDialogPodaj hasBo:Enter passphrase : textDialogPodaj hasBo:Enter pasword : textDialog6Podaj nazw nowego profilu:#Enter the name of the new profile : textDialog6Podaj nazw nowego profilu:#Enter the new name of the profile : textDialogNieNo textDialogOkayOkay textDialog.Prosz poda inn nazwPlease enter a different name textDialogOpis profilu:Profile description : textDialogTakYes textDialogWybraBe[ "Kopia zapasowa zawarto[ci katalogu zrdBowego" <br>razem z opcj "usuD dane z miejsca docelowego"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog eMail informacjaeMail information textDialogluckyBackup luckyBackup textDialog AnulujCancel winDialogLWprowad| peBn [cie|kkomendy cygpath*Enter the full path of the cygpath command winDialogDPodaj peBn [cie|k komency dosdev)Enter the full path of the dosdev command winDialogVPodaj peBn [cie|k do katalogu luckybackup0Enter the full path of the luckybackup directory winDialogHPodaj peBn [cie|k do komendy rsync(Enter the full path of the rsync command winDialog>Podaj peBn [cie|k komendy ssh&Enter the full path of the ssh command winDialogXPodaj peBn [cie|kdo katalogu tymczasowego.Enter the full path of the temporary directory winDialogNPodaj peBn [cie|kdo katalogu vshadow,Enter the full path of the vshadow directory winDialog4Pliki wykonywalne (*. exe)Executable Files (*.exe) winDialogOkayOkay winDialog2Wybierz polecenie cygpathSelect cygpath command winDialog0Wybierz polecenie dosdevSelect dosdev command winDialog*Wybierz komend rsyncSelect rsync command winDialog&Wybierz komend SSHSelect ssh command winDialog0U|yj warto[ci domy[lnychUse default value winDialog&przegldaj lokalniebrowse locally winDialogcygpath:cygpath: winDialog$Okre[lenie [cie|kideclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialoggBwny katalog: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog&katalog tymczasowy: temp dir: winDialog katalog vshadow: vshadow dir: winDialog , luckybackup-0.5.0/translations/luckybackup_et.ts0000666000175000017500000063721113165410113021504 0ustar luckybluckyb CalcDiffThread Scanning destination Sihtkohha skanneerimine Please wait oota Scanning snapshot Scanning source Allikka skanneerimine Calculating differences Erinevuste arvutamine Sync dir A & B differences Snapshot and source differences Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transferred over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty Ülesannete nimekiri on tühi nothing to start You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting alustamine Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting alustamine execution of task Full phrase: execution of task: <TASKNAME> starting ülesande käivitamine starting Full phrase: execution of task: <TASKNAME> starting alustamine Source Full phrase: source: <SOURCE_NAME Allikas Destination Full phrase: Destination: <DEST_NAME Sihtkoht execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting alustamine Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sünkroniseerimine to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting alustamine Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sünkroniseerimine to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished lõpetatud post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished lõpetatud execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished lõpetatud execution of task Full phrase: execution of task: <TASKNAME> finished ülesande käivitamine finished Full phrase: execution of task: <TASKNAME> finished lõpetatud execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error ülesande käivitamine finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available no errors vigu pole errors found leitud vead status OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING HOIATUS I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description Ülesande kirjeldus ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog Backup & Sync Application Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Debian package maintainer Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink port to Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Czech gui translator Stergios Prosiniklis Greek manual translator German gui translator Wilfried Schobel Sergio Gameiro Portuguese gui translator Marcio Moraes Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Italian gui translator using Qt António Correia Aurelien Merckel Denis Skorski Russian gui translator and valuable tester Kenny Verstraete Dutch gui translator Martin Grashoff (linuxrev) Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Arabic gui translator Adrian Murariu Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero v0.3 gui designer fri13 v.0.3 gui designer Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Rivo Zangov Estonian gui translator Eestikeelne kasutajaliides Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the forums for their support. Especially that contributed to this project one way or another Last but no least Could not locate the license file no money If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Vote good & become a fan at: This is my reward :) money I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link luckyBackup - about close sule &About <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support A&uthor &Thanks to &License Agreement luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay OK Close dialog Cancel Loobu Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help manual/ Okay OK logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error next error järgmine viga close sule loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' lõpetatud simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time pre-task execution of command post-task execution of command Now performing task Directory calculating deleting files Total files transferred trying to send an email The system will shutdown in 1 minute Source Allikas Destination Sihtkoht All tasks completed No errors found errors found leitud vead logfile(s) have been created under directory: Done execution of profile: finished lõpetatud Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label lisa add task add task button tooltip remove remove task button label eemalda remove highlighted task remove task button tooltip modify modify task button label muuda modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 F1 English &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR VIGA loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profiil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES NO Description Kirjeldus saving default profile ... Information window message saving profile ... Information window message WARNING HOIATUS default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profiil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profiil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profiil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' Profiil already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profiil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profiil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' Profiil set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profiil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' kui and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profiil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Lukusta Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Käivita Abort Abort button label Katkesta Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty Ülesannete nimekiri on tühi Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' ei saa salvestada default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profiil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' on muudetud Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profiil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' ei saa salvestada profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profiil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' kui Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profiil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile profiil task sanne Delete Kustuta Restore Taasta view log vaata logi destination: Sihtkoht: source: allikas: hide source peida allikas Close this window Sule see aken Close Sule Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP PEATA Stop calculations NOW Calculations terminated by user not available refers to a date-time pole sadaval luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time pole saadaval Delete backup this is the title of a wizard Kustuta varukoopia Date & time simple label of the wizard gui Kuupäev ja kellaaeg Path ...is a directory path Asukoht WARNING HOIATUS You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close sule Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Katkestatud Finished Lõpetatud simulation simuleerimine no errors vigu pole errors found leitud vead Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error Jump to next error next error järgmine viga This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT KATKESTA cancel Loobu The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion korras failed info message displayed after ...logfile deletion ebaõnnestus Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion korras failed info message displayed after ...file deletion ebaõnnestus success info message displayed after ...snapshots list update korras Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change muuda <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple lihtne advanced asjatundjatele Task name Ülesande nimi Destination Sihtkoht Source Allikas Task properties Ülesande omadused Enter a name for this task (eg "Backup my home directory") Name : Nimi : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Tüüp : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : Allikas : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : Sihtkoht : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Asjatundjatele Shows the rsync command as it will be executed validate kontrolli Okay OK Cancel Loobu Exclude Jäta välja Add any directory, file or pattern to be excluded from this task Templates Mallid Exclude all temp folders (**/*tmp*/) Temporary folders Ajutised kaustad Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Prügikast Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add lisa Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Kirjeldus Task description Ülesande kirjeldus Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove eemalda Edit highlighted inclusion edit muuda Move highlighted inclusion up move up liiguta üles Move highlighted inclusion down move down liiguta alla Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Ainult kaasa Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination sihtkoht Use a remote host for source data. source allikas User: Kasutaja: Enter your username for the remote host (leave blank if not applicable). @Host: @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Säilita õigused Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Kasutaja määratud Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list valikute nimekiri Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Pärast Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message ERROR message box message VIGA Please specify the following before proceeding: message box, message ERROR message box message - line1 VIGA That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 WARNING message box message - line1 HOIATUS You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done valmis done editing muutmine lõpetatud cancel loobu cancel editing tühista muutmine Read exclude patterns from file Read file: Loe faili: filename failinimi browse sirvi ... ... Include Kaasa Add any directory, file or pattern to be included by this task Include mode Kaasamise režiim Mode: Režiim: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Tavaline kaasamine Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Vali kaust Please choose a directory within the source file : fail : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name nimi starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay OK Cancel Loobu Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Pühapäev Monday Esmaspäev Tuesday Teisipäev Wednesday Kolmapäev Thursday Neljapäev Friday Reede Saturday Laupäev & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' Jaanuar February full phrase: 'of February' Veebruar March full phrase: 'of March' Märts April full phrase: 'of April' Aprill May full phrase: 'of May' Mai June full phrase: 'of June' Juuni July full phrase: 'of July' Juuli August full phrase: 'of August' August September full phrase: 'of September' September October full phrase: 'of October' Oktoober November full phrase: 'of November' November December full phrase: 'of December' Detsember Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add lisa Modify selected profile schedule modify muuda Remove selected profile schedule remove eemalda Profile : Profiil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : : :delay :viivitus Delay luckybackup execution at startup min means: minutes (time) min day of week : Any Kõik month : kuu : January Jaanuar February Veebruar March Märts April Aprill May Mai June Juuni July Juuli August ugust September September October Oktoober November November December Detsember day of month : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Console Mode Käsurea režiim okay ok Cancel Loobu schedule the execution of profiles as declared in the list above cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file fail You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close sule Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Sisesta parool: Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup luckyBackup Okay OK Cancel Loobu Copy command to clipboard eMail information No Ei Yes Jah winDialog luckyBackup luckyBackup declaration of paths rsync: rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay OK Cancel Loobu Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_ru.qm0000666000175000017500000040572613157502317021526 0ustar luckybluckyb72HYKSʂY]e_ggqgghhYjsUzXxTf 3ff9-vS}zE]9!Eɕ4)5$N~5<aoatamaSahah@Hs0EH5a5h}ҒwTؗ"fJ"&%({Y2)n*`3*0~+++e,B;/]^0:BTEtt FZ9N6GG&Hx0J6^J;J;gUJwBCPdPd[PdS TZkTo[\Z`gj6[j6{pj6j6l̙ٸmC^KqXtd`xzȜKY.}"E2[L3Q/uWs$.=>*ĉG[˱8 nmS$Tى>EМXY<=!V#\Gr :~ԝ dGgt9?!b1(e'+&a.+6F7p"<$G¯I|Q19QRe[o_/VfC"hkhw!pNtpN{q> tc`!A-) YE 65ѐSUizuԳŵvk  ,'k5 _RbIK[ #ua&o7+%/r!28ItkBZyw^C c.I(5PoE#$\cc]f:9mu9|B8QO2}ERNdZIR4gg:+}}$J}CNk',P,e÷^IRYԥ{*iV[%%&E S#"-I[fGҐOo&#^ \F &HaM4)4)P*߬.,bk8My:MATX_rUhebh !iJiU_tM}^9.e.e#u:TWPch4c%q%a5td vƫMˇoŇʵPNpl0m[nܯ"-BbGϗ]u ? ‰>P<yLZ4% P`sQYAqvL~6EO?cOjz!#eJںiYzgfi^lwSr t-}7;):օ)LIkI)IhII@I-e,>)^A-7ф .#HeFX  3i/d>}ViO@ s 3H8i2=\xl@Nm6>nn+p^ytxlvIWyT}Fx9/rȕȕĞȕ\X<Jg:tî"0pߘ?E\Ovr G"1" 9.G;K)@CtKOVf]_AvO_hDb#f0lnghnhn#iiv&kՒ|kՒmv3=yT|~g=vbx(T4zYeXuNEIUIcn`kV\ySLȒ.=̴':P+  |ul`(읒EXP`_ 0 X o|-5B^;+e-z:W2 9Yc>:EqEځN3vUt`xea#vu;v:{_gųIQ3pDFMF^F(ϕ i.ΕTUU~u8 r6dDjg G%Bbȕ!"aϵXTU9ތUFDqnWlǧa~xO̐<jII)%׃{7sdvߖSkd3|K3{2z;t"})@h,u-/e-1I9GF\IX9cJ~xJεzL&NOPO%Ry ZV)gh 'mh}zG_@x5EP  |(ʴ5ʶ~'H,7BOISli>0 N  crq O q.  *{? +)f 6=1 8^ CcK Mg Mg8 N# W ] j^] l mE p6y qr R @ emZ cG p : a$ -B.V Zf '! Ԡ;D r ׊$6 =!s .  Ѿg  T^  ? c2fa |   -0 -n /l$ٵ 7E 8 ? @ ~ ` fϴ gժ l pN% zj Cx n HX 8 iF= ~ cJ XBP} y 24֪ b5 ,~;  GCXb ñ  Xh hʮ t$$ @m' ݓ Ts i 7 pS< " d v n Vd dky jB t #v (N, +V? -m 0b 7'yY 93BT :UC ; E Ge'{ HZ L9g PAf T,tS ZZ _y^z _ fg g.w6 g.wk g.w kH m\ {   F^ Ҟ " B Y Y5 y) w@e P  M3 ! ! # % / 79P 79 9%+ 9)rX ;wÁ <T <J >D @e& A.ء Eh V F F.ۅ LM N0 P} Szg Xg ^ bU o 1 o9 r'^ = v! 4Z 2 Z j  rjd \%} 5 " UN+c bO c ~   Tԫ s" C 2Yh a RbM  ?BD\  ;Y ' sW @ T' #A &, &' )̛ *}Eo + ,D ,D 6. Pp \.~'% i- {jE e 1  = { | : msA cr XwT ~ ft zY lz z; Iߋ Y j Y޵ i [K " ,B ݗ #q 䕜oR  c2e  4 8c 8 8  6:=!os6/~CmԵ!'~(q?/#YE7GJ nTba\P].f a>cRae~UmRip{>Ayi{2_rG<J{R2]is2$0r;4uE֭ 3jMtkǸ{d4qeU"eF CBr#!&)NW(դ-(դc-X`Ë4?<ElE^G E-uNRN>[=;c[f/{ln;LH>9 >1JQ< 40==KE. >:070=K B>;L:> ?5@2K5 70?8A82Data amount is huge. Displaying only first entriesCalcDiffThread*>60;C9AB0, ?>4>648B5 Please waitCalcDiffThread@!:0=8@>20=85 :0B0;>30 07=0G5=85Scanning destinationCalcDiffThreadJ!:0=8@>20=85 :0B0;>30 @575@2=>9 :>?88Scanning snapshotCalcDiffThread>!:0=8@>20=85 :0B0;>30 8AB>G=8:0Scanning sourceCalcDiffThreadj 07;8G8O <564C @575@2=>9 :>?859 8 :0B0;>3>< AB>G=8:0Snapshot and source differencesCalcDiffThread\$09;K @575@2=>9 :>?88, :>B>@KE " 2 AB>G=8:5-Snapshot data that do NOT exist at the sourceCalcDiffThread`$09;K 2 8AB>G=8:5, :>B>@KE " 2 @575@2=>9 :>?88-Source data that do NOT exist at the snapshotCalcDiffThreadb 07;8G8O <564C A8=E@>=878@C5<K<8 :0B0;>30<8 A 8 BSync dir A & B differencesCalcDiffThreadl$09;K 2 :0B0;>35 A, :>B>@KE =5 ACI5AB2C5B 2 :0B0;>35 B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadl$09;K 2 :0B0;>35 B, :>B>@KE =5 ACI5AB2C5B 2 :0B0;>35 A/Sync dir B data that do NOT exist at sync dir ACalcDiffThread=8 <>3CB 1KBL C40;5=K 2 7040G5 !!", B>;L:> 5A;8 2K C:070;8 >?F8N:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThread6#40;OBL >BACBAB2CNI85 D09;K;delete existing source data that do not exist at the backupCalcDiffThread "'+CRITICALQObject652>7<>6=> >B:@KBL ;>3-D09;Could not open the logfileQObject07=0G5=85 DestinationQObject07=0G5=85Destination directoryQObject0B0;>3 DirectoryQObject-B0 7040G0 <font color=orange><b>  #!"!/</b></font>. !8=E@>=870F8O 1C45B 2K?>;=5=0 2 ;N1>< A;CG05iI will not skip this task. Synchronizing is going to be performed anywayQObject-B0 7040G0 <font color=red><b>  #!"!/</b></font> ?>B><C GB> 2K1@0=0 >?F8O ">B:;NG8BL  # /"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject6@5<O ?>A;54=53> 2K?>;=5=8OLast execution timeQObjectOKOKQObject~>60;C9AB0, <b>8A:;NG8B5 =5=C6=CN 7040GC</b> ?5@54 ?@>4>;65=85<APlease uncheck appropriate include boxes before proceedingQObjectAB>G=8:SourceQObjectAB>G=8:Source directoryQObject!8=E@>=870F8OSyncingQObject!8=E@>=870F8O'Full phrase: Syncing to SyncingQObject?8A0=85 7040G8Task descriptionQObjectA;8 :0B0;>3 07=0G5=85 =5 ACI5AB2C5B, >= 1C45B A>740= 8 70?>;=5= =>2K<8 40==K<8 @575@2=>9 :>?88]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject652>7<>6=> A>740BL ;>3-D09; The logfile could not be createdQObject,>3-D09; =5 ACI5AB2C5BThe logfile does not existQObject4@>F5AA A>>1I05B >1 >H81:5The process reported an errorQObjectR#:070==0O :><0=40 2>7<>6=> =5 CAB0=>2;5=0/The specified command is probably not installedQObject&!?8A>: 7040G ?CAB>9The task list is emptyQObjectb-B0 7040G0 <font color=orange><b> =5 ?@>?CA:05BAO3This task will not be skippedQObjectj-B0 7040G0 <font color=red><b>?@>?CA:05BAO</b></font>7This task will be skippedQObject # WARNINGQObject@K 2K1@0;8 425 A2O70==K5 7040G8:8You have included both of the following connected tasks:QObject45 2K1@0=> =8 >4=>9 7040G8You have not included any tasksQObject 8/8;8and/orQObject:><0=40:  command: QObject=5 ACI5AB2C5Bdoes not existQObject,K;8 >1=0@C65=K >H81:8 errors foundQObject<K?>;=5=85 ?5@2>9 G0AB8 7040G8execution of 1st part of taskQObject<K?>;=5=85 ?5@2>9 G0AB8 7040G8?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject<K?>;=5=85 2B>@>9 G0AB8 7040G8execution of 2nd part of taskQObject"K?>;=5=85 7040G8execution of taskQObject"K?>;=5=85 7040G83Full phrase: execution of task: finishedexecution of taskQObject"K?>;=5=85 7040G8dFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject :>4 7025@H5=8O:  exit code: QObject :>=5FfinishedQObject :>=5F?Full phrase: execution of 1st part of task: finishedfinishedQObject :>=5F3Full phrase: execution of task: finishedfinishedQObject :>=5FCFull phrase: post-task execution of COMMAND: finishedfinishedQObject>AB0=>2;5=>, ?>B><C GB> :><0=4K, 2K?>;=ONI85AO 4>/?>A;5 7040G8, 2K?>;=8;8AL A >H81:>99finished because of pre/post task command execution errorQObject ?CAB>9is emptyQObject0?CAB>9 8;8 =5 ACI5AB2C5Bis empty or does not existQObject =5 ?@8<>=B8@>20=is not mountedQObjectH81>: =5B no errorsQObject=5 4>ABC?=> not availableQObject =5G53> 2K?>;=OBLnothing to startQObject2K2>4:  output: QObjectRK?>;=5=85 :><0=4 ?>A;5 2K?>;=5=8O 7040G8post-task execution of commandQObjectRK?>;=5=85 :><0=4 ?>A;5 2K?>;=5=8O 7040G8CFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectLK?>;=5=85 :><0=4 4> 2K?>;=5=8O 7040G8pre-task execution of commandQObjectLK?>;=5=85 :><0=4 4> 2K?>;=5=8O 7040G8BFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObject =0G0;>startingQObject =0G0;>?Full phrase: execution of 1st part of task: startingstartingQObject =0G0;>?Full phrase: execution of 2nd part of task: startingstartingQObject =0G0;>3Full phrase: execution of task: startingstartingQObject =0G0;>?Full phrase: post-task execution of command: startingstartingQObject !B0BCAstatusQObjectNMB> =5 4>?CA:05BAO ?> ?>=OB=K< ?@8G8=0<'this is not allowed for obvious reasonsQObject8toQObject8'Full phrase: Syncing to toQObject652>7<>6=> >B:@KBL ;>3-D09;Could not open the logfile ReadLogFile& ?@>5:B5&About aboutDialog0&8F5=78>==>5 A>3;0H5=85&License Agreement aboutDialog&><>IL&Support aboutDialog&!?0A81> &Thanks to aboutDialog... <>O 2B>@0O ?>;>28=:0 <b>Dimitra</b>, :>B>@0O B5@?5;82> >B=>A8BAO :> <=5 2A5 B> 2@5<O, ?>:0 O @07@010BK20N ?@>5:Bj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog&... 2A5< CG0AB=8:0<...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog &2B>@A&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialogAphofis Scott Aphofis Scott aboutDialogB?5@52>4G8: 8=B5@D59A0 =0 0@01A:89Arabic gui translator aboutDialog\>D8F80;L=K9 A>?@>2>640NI89 ?0:5B0 2 Arch linux5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogD8=K, @5F8OAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogh@>3@0<<0 4;O @575@2=>3> :>?8@>20=8O 8 A8=E@>=870F88Backup & Sync Application aboutDialog?5@52>4G8: 8=B5@D59A0 =0 1>A=89A:89 8 A>?@>2>640NI89 ?0:5B0 2 Mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialogH?5@52>4G8: 8=B5@D59A0 =0 :0B0;>=A:89Catalan gui translator aboutDialog4$09; A ;8F5=7859 =5 =0945=!Could not locate the license file aboutDialog@?5@52>4G8: 8=B5@D59A0 =0 G5HA:89Czech gui translator aboutDialog<A>?@>2>640NI89 ?0:5B0 2 DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogL?5@52>4G8: 8=B5@D59A0 =0 =845@;0=4A:89Dutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogA>15==> Especially aboutDialogD?5@52>4G8: 8=B5@D59A0 =0 MAB>=A:89Estonian gui translator aboutDialogpA>?@>2>640NI89 ?0:5B0 2 Fedora (>D8F80;L=K9 @5?>78B>@89))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialogDA>?@>2>640NI89 ?0:5B0 4;O Free BSDFree BSD package maintainer aboutDialogH?5@52>4G8: 8=B5@D59A0 =0 D@0=FC7A:89French gui translator aboutDialog?5@52>4G8: 8=B5@D59A0 =0 D@0=FC7A:89 8 F5==K9 A>25BG8: ?> A1>@:5 ?0:5B>2 (8 =5 B>;L:> MB>)AFrench gui translator and valuable packing advisor (and not only) aboutDialog<A>?@>2>640NI89 ebuild 2 GentooGentoo ebuild maintainer aboutDialogB?5@52>4G8: 8=B5@D59A0 =0 =5<5F:89German gui translator aboutDialog2 5:><5=4>20BL ?@8;>65=85:Give a thumbs up at: aboutDialogn?5@52>4G8: 8=B5@D59A0 =0 3@5G5A:89 8 F5==K9 B5AB8@>2I8:(Greek gui translator and valuable tester aboutDialogF?5@52>4G8: @C:>2>4AB20 A 3@5G5A:>3>Greek manual translator aboutDialogf/ =8:>340 =5 1@0; 8 =5 1C4C 1@0BL 45=L38 =0 ?@>5:B.DI personally never had and never will accept money for this project. aboutDialog5A;8 1K =5 1K;> 53> 8 53> @C:>2>4AB2, O 1K =8:>340 =5 =0G0; MB>B ?@>5:BJIf it wasn't him and his tutorials I would never have started this project aboutDialogA;8 20< ?>=@028;>AL ?@8;>65=85 8 2K 70E>B5;8 ?><>GL ?@>5:BC, B> 2K <>65B5 A45;0BL A;54CNI55:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog-B> <b>A2>1>4=>5 ?@>3@0<<=>5 >15A?5G5=85</b>. K <>65B5 @0A?@>AB@0=OBL 8/8;8 87<5=OBL 53> ?@8 A>1;N45=88 CA;>289 ;8F5=788 GNU General Public License (25@A88 3), >?C1;8:>20==>9 $>=4>< A2>1>4=>3> ?@>3@0<<=>3> >15A?5G5=8O.It 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, version 3 of the License. aboutDialog0==>5 ?@>3@0<<=>5 >15A?5G5=85 @0A?@>AB@0=O5BAO 2 =045645, GB> >=> 1C45B ?>;57=K<, =>  !/  ", 2 B>< G8A;5 157 A2O70==>9 30@0=B88 "   !" 8;8  !" /  "  /.It 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. aboutDialogH?5@52>4G8: 8=B5@D59A0 =0 8B0;LO=A:89Italian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog> ?>A;54=55, => =5 <5=55 206=>5Last but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialoglA>?@>2>640NI89 ?0:5B0 2 Mandriva (@5?>78B>@89 contrib)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialog?5@52>4G8: 8=B5@D59A0 =0 8A?0=A:89 8 A>?@>2>640NI89 ?0:5B0 4;O Mepis (Community repo)BMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialog4=0:>, O @5H8; 8A?>;L7>20BL luckyBackup, GB>1K ?>445@60BL ;N459, :>B>@K5 459AB28B5;L=> =C640NBAO 2 D8=0=A>2>9 ?><>I8.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogA>?@>2>640NI89 ?0:5B0 2 OpenSUSE (@5?>78B>@89 KDE4 Community) 8 F5==K9 :>=AC;LB0=B ?> A1>@:5 ?0:5B>2NOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogL?5@52>4G8: 8=B5@D59A0 =0 ?>@BC30;LA:89Portuguese gui translator aboutDialog@A>?@>2>640NI89 pet 8 sfs 2 PuppyPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogD?5@52>4G8: 8=B5@D59A0 =0 @C<K=A:89Romanian gui translator aboutDialogj?5@52>4G8: 8=B5@D59A0 =0 @CAA:89 8 F5==K9 B5AB8@>2I8:*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogt>4@>1=>AB8 A<>B@8B5 2 70:;04:5 "8F5=78>==>5 A>3;0H5=8e".1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialogD?5@52>4G8: 8=B5@D59A0 =0 A;>20F:89Slovak gui translator aboutDialogF?5@52>4G8: 8=B5@D59A0 =0 A;>25=A:89Slovenian gui translator aboutDialogt>4C<09B5 > B><, GB>1K ?>65@B2>20BL 45=L38 =0 1;03>5 45;>._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogD?5@52>4G8: 8=B5@D59A0 =0 8A?0=A:89Spanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogB?5@52>4G8: 8=B5@D59A0 =0 H254A:89Swedish gui translator aboutDialog><0=40 indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog4-B> 1C45B <>59 =03@04>9 :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogB?5@52>4G8: 8=B5@D59A0 =0 BC@5F:89Turkish gui translator aboutDialog$F5==K9 :>=AC;LB0=BValuable advisor aboutDialog<@>3>;>A>20BL 8 AB0BL D0=0B><:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogX@07@01>BG8: A:@8?B0 backupwhenidle =0 python&backupwhenidle python script developer aboutDialog0:@KBLclose aboutDialog0AAK;:0 4;O ?>65@B2>20=89 donation link aboutDialogJ1K2H89 A>?@>2>640NI89 ?0:5B0 2 Fedoraex Fedora package maintainer aboutDialog@07@01>BG8:8 C4>1=>3> 8 15A?;0B=>3> A5@28A0 Transifex 4;O ;>:0;870F88 ?@8;>65=89Vfor developing the wonderful transifex localization platform and providing it for free aboutDialog0D>@C<>2 70 8E ?>445@6:C.forums for their support. aboutDialog fri13fri13 aboutDialog2luckyBackup - > ?@>3@0<<5luckyBackup - about aboutDialog4luckyBackup @0A?@>AB@0=O5BAO ?@8 A>1;N45=88 CA;>289 ;8F5=788 <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog5=L30<8money aboutDialog5 45=L30<8no money aboutDialog4?>@B8@>20=85 =0 MS Windowsport to MS Windows aboutDialog0?>@B8@>20=85 =0 Mac OS Xport to Mac OS X aboutDialog(?>@B8@>20=85 =0 OS/2 port to OS/2 aboutDialogA1>@I8: ?0:5B>2 rpm, F5==K9 B5AB8@>2I8: 8 :>=AC;LB0=B ?> C40;Q==K< A>548=5=8O<?@>2>640NI89 ?0:5B0 2 Slackware (@5?>78B>@89 SlackBuilds)5slackware package maintainer (SlackBuilds Repository) aboutDialogNA?5F80;L=> ?@83;0HQ==K9 C189F0 103>2 ;)special guest bug killer ;) aboutDialogj:>B>@K5 B0: 8;8 8=0G5 2=5A;8 A2>9 2:;04 2 MB>B ?@>5:B3that contributed to this project one way or another aboutDialog\A>?@>2>640NI89 ?0:5B0 2 Ubuntu (launchpad PPA))ubuntu package maintainer (launchpad PPA) aboutDialog248709=5@ 8=B5@D59A0 v.0.3v.0.3 gui designer aboutDialog248709=5@ 8=B5@D59A0 v.0.3v0.3 gui designer aboutDialogXF5==K9 B5AB8@>2I8: 8 7=0B>: <>73>2>3> HBC@<0*valuable tester & brainstorming specialist aboutDialog%b A>45@60=85:%b body: emailDialog$%c ;>3-D09;.tar.gz%c logfile.tar.gz emailDialog%d 40B0%d date emailDialog%e =5B >H81>:%e No of errors emailDialog%f >B :>3>:%f from: emailDialog%i 2@5<O%i time emailDialog%l ;>3-D09; %l logfile emailDialog&%p =0720=85 ?@>D8;O%p profile name emailDialog%s B5<0: %s subject: emailDialog%t :><C:%t to: emailDialog%v A5@25@ SMTP:%v smtp server: emailDialogD@8<5=8BL 87<5=5=8O 8 70:@KBL >:=>Accept changes and close dialog emailDialog@3C<5=BK Arguments emailDialog B<5=0Cancel emailDialog0:@KBL >:=> Close dialog emailDialogB>A;5 2K?>;=5=8O >B?@028BL ?8AL<> Conditions emailDialog`B?@02;OBL >BG5BK ?>A;5 2K?>;=5=8O 7040G ?@>D8;O&Email a report after profile execution emailDialog"!>45@60=85 ?8AL<0Enter the body of the message emailDialog.4@5A ?>;CG0B5;O ?8AL<0"Enter the recipient of the message emailDialog64@5A >B?@028B5;O A>>1I5=8OEnter the sender of the message emailDialogP4@5A A5@25@0 SMTP 4;O >B?@02;5=8O ?8A5<.Enter the smtp server used to send the message emailDialog"5<0 ?8AL<0 Enter the subject of the message emailDialog,@8 >H81:0E 2K?>;=5=8OError(s) occured emailDialog8:>340Never emailDialog>8:>340 =5 >B?@02;OBL A>>1I5=8ONever send an email emailDialogOKOkay emailDialogxB?@02;OBL, B>;L:> 5A;8 2> 2@5<O 2K?>;=5=8O ?@>87>H;8 >H81:8,Only send when error(s) occured during a run emailDialoglB?@02;OBL ?8AL<0 ?@8 2K?>;=5=88 ?@>D8;O ?> @0A?8A0=8N*Only send when profile is scheduled to run emailDialog8@8 2K?>;=5=88 ?> @0A?8A0=8NProfile is scheduled emailDialogxB?@028BL ?8AL<> A59G0A 4;O ?@>25@:8 ?@028;L=>AB8 0@3C<5=B>26Send an email right now to test the provided arguments emailDialogJ#:068B5 CA;>28O 4;O >B?@02;5=8O ?8A5<'Specify the conditions to send an email emailDialog@>25@:0Test emailDialog:CAB>5 ?>;5 4;O 22>40 :><0=4KThe command field is empty emailDialog>-C<>;G0=8N Use default emailDialog:><0=40:command: emailDialog0luckyBackup - >?>25I5=8OluckyBackup - email emailDialogOKOkay helpBrowser*luckyBackup - A?@02:0luckyBackup - help helpBrowser@C:>2>4AB2>/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog0:@KBLclose logDialog*703@C7:0 ;>3-D09;0...loading logfile... logDialogDluckyBackup - E>4 2K?>;=5=8O 7040G&luckyBackup - tasks execution progress logDialog !;54CNI0O >H81:0 next error logDialog"@54K4CI0O >H81:0previous error logDialog 648B5wait logDialog &%1 %2&%1 %2luckyBackupWindow&@5@20BL&AbortluckyBackupWindow& ?@>3@0<<5&AboutluckyBackupWindow&>1028BL&AddluckyBackupWindow&#40;8BL&DeleteluckyBackupWindow2&@C:>2>4AB2> ?>;L7>20B5;O &HandbookluckyBackupWindow&!?@02:0&HelpluckyBackupWindow&<?>@B&ImportluckyBackupWindow &/7K: &LanguageluckyBackupWindow &!25@=CBL 2 B@59&Minimize to trayluckyBackupWindow&7<5=8BL&ModifyluckyBackupWindow &>2K9&NewluckyBackupWindow&@>D8;L&ProfileluckyBackupWindow&@>D8;LThis is a top menu item&ProfileluckyBackupWindow &KE>4&QuitluckyBackupWindow&1=>28BL&RefreshluckyBackupWindow&#40;8BL&RemoveluckyBackupWindow&>AAB0=>28BL&RestoreluckyBackupWindow&!>E@0=8BL&SaveluckyBackupWindow&0AB@>9:0 &SettingsluckyBackupWindow&040G0&TaskluckyBackupWindow&040G0This is a top menu action&TaskluckyBackupWindow(&0=5;8 8=AB@C<5=B>2 &ToolbarsluckyBackupWindow. &540:B8@>20BL >?8A0=85&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow&K?>;=5=85   ABORTEDluckyBackupWindow@5@20BLAbortluckyBackupWindowf@5@K20=85: ?>4>648B5, ?>:0 7025@H0BAO 2A5 ?@>F5AAK4Aborting: Please wait for all processes to be killedluckyBackupWindow59AB28OActionsluckyBackupWindowlA5 =5>1E>48<K5 D09;K (;>38 8 B.4.) B0:65 1K;8 C40;5=K4All relevant files (logs etc) have also been deletedluckyBackupWindowtA5 =5>1E>48<K5 D09;K (;>38 8 B.4.) B0:65 1K;8 A:>?8@>20=K7All relevant files (logs etc) have also been duplicatedluckyBackupWindowlA5 =5>1E>48<K5 D09;K (;>38 B.4.) B0:65 1K;8 >1=>2;5=K4All relevant files (logs etc) have also been updatedluckyBackupWindow(A5 7040G8 7025@H5=KAll tasks completedluckyBackupWindowLK C25@5=K, GB> E>B8B5 C40;8BL ?@>D8;L'Are you sure you want to delete profileluckyBackupWindowfK C25@5=K, GB> E>B8B5 C40;8BL ?@>D8;L ?>-C<>;G0=8N3Are you sure you want to delete the default profileluckyBackupWindowdK C25@5=K, GB> E>B8B5 C40;8BL A;54CNICN 7040GC ??5Are you sure you want to remove the following task ??luckyBackupWindowN0G0BL 2K?>;=5=85 2A5E 2:;NG5==KE 7040G)Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindowj@>25@:8 >B:;NG5=K. -B0 7040G0 <b>1C45B ?@>?CI5=0</b>5Checks are disabled. This task will be skippedluckyBackupWindow*52>7<>6=> =09B8 D09;Could not locate the fileluckyBackupWindow^52>7<>6=> >1=>28BL 2@5<O ?>A;54=53> 2K?>;=5=8O-Could not update last execution time of tasksluckyBackupWindow&20@89=0O >AB0=>2:0CrashedluckyBackupWindow*!>740BL &:>?8N 7040G8Create D&uplicate taskluckyBackupWindowD!>740BL 7040GC 4;O &2>AAB0=>2;5=8OCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindow"5:CI89 ?@>D8;LCurrent ProfileluckyBackupWindow!>740BL &:>?8N D&uplicateluckyBackupWindow0&#AB0=>28BL ?> C<>;G0=8NDe&faultluckyBackupWindow?8A0=85 DescriptionluckyBackupWindow07=0G5=85 DestinationluckyBackupWindow0B0;>3 DirectoryluckyBackupWindow >B>2>DoneluckyBackupWindow"5ABDryluckyBackupWindow?>&25I5=8OE&mailluckyBackupWindow&-:A?>@BE&xportluckyBackupWindow (ERRORluckyBackupWindow KE>4EXITluckyBackupWindow"0B@0G5==>5 2@5<O Elapsed timeluckyBackupWindowp0AB@>9:8 >?>25I5=89 <font color=green>CA?5H=> >1=>2;5=KBEmail preferences have been updated successfullyluckyBackupWindow^B?@028BL ?8AL<> ?>A;5 2K?>;=5=8O 7040G ?@>D8;O$Email report after profile executionluckyBackupWindow CAA:89EnglishluckyBackupWindow CAA:89Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow\@8 8<?>@B8@>20=88 ;>3-D09;>2 ?@>87>H;8 >H81:8'Errors occured during logfiles transferluckyBackupWindow@8 8<?>@B8@>20=88 @575@2=KE :>?89 8 ;>3-D09;>2 ?@>87>H;8 >H81:85Errors occured during snapshots and logfiles transferluckyBackupWindowf@8 8<?>@B8@>20=88 @575@2=KE :>?89 ?@>87>H;8 >H81:8(Errors occured during snapshots transferluckyBackupWindowd@8 8<?>@B8@>20=88 D09;>2 ?@>D8;O ?@>87>H;8 >H81:8/Errors occured during the profile file transferluckyBackupWindow$K?>;=5=85 ?@>D8;OExecution of profileluckyBackupWindow 040G8 7025@H5=KExecution of tasks finishedluckyBackupWindow^>;L7>20B5;L >AB0=>28; 2K?>;=5=85 7040G ?@>D8;O4Execution of tasks were terminated violently by userluckyBackupWindow KE>4ExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowJ52>7<>6=> A>740BL :0B0;>3 =070=G5=8O&Failed to create destination directoryluckyBackupWindow@52>7<>6=> A>740BL =>2K9 ?@>D8;LFailed to create new profileluckyBackupWindowt52>7<>6=> C40;8BL 2A5 2A5 =5>1E>48<K5 D09;K (;>38 8 B.4.).Failed to delete all relevant files (logs etc)luckyBackupWindow452>7<>6=> C40;8BL ?@>D8;LFailed to delete profileluckyBackupWindowt52>7<>6=> A:>?8@>20BL 2A5 =5>1E>48<K5 D09;K (;>38 8 B.4.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow@52>7<>6=> A>740BL :>?8N ?@>D8;OFailed to duplicate profileluckyBackupWindow@52>7<>6=> A>740BL :>?8N ?@>D8;OFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindowB52>7<>6=> M:A?>@B8@>20BL ?@>D8;LFailed to export profileluckyBackupWindow@52>7<>6=> 8<?>@B8@>20BL ?@>D8;LFailed to import profileluckyBackupWindow@52>7<>6=> ?5@58<5=>20BL ?@>D8;LFailed to rename profileluckyBackupWindow652>7<>6=> 70<5=8BL ?@>D8;LFailed to replace profileluckyBackupWindow(52>7<>6=> 70?CAB8BLFailed to startluckyBackupWindown5 C40;>AL >1=>28BL 2A5 =5>1E>48<K5 D09;K (;>38 8 B.4.).Failed to update all relevant files (logs etc)luckyBackupWindow6!25@=CBL >:=> A 8=D>@<0F859Hide information windowluckyBackupWindow6!25@=CBL >:=> A 8=D>@<0F859+hide/show information window button tooltipHide information windowluckyBackupWindow<?>@B ?@>D8;OImport ProfileluckyBackupWindow=D>@<0F8OInformation windowluckyBackupWindow=D>@<0F8Oinformation window titleInformation windowluckyBackupWindowJ@5<O ?>A;54=53> 2K?>;=5=8O >1=>2;5=>$Last execution time of tasks updatedluckyBackupWindow6!?8A>: 2A5E 4>ABC?=KE 7040GList of all the available tasksluckyBackupWindowB01;>:8@>20BL ?0=5;8 8=AB@C<5=B>2LockluckyBackupWindow.&!?8A>: @575@2=KE :>?89Manage &BackupluckyBackupWindow"!2545=8O > 7040G5 Manage TaskluckyBackupWindowb5@5<5AB8BL 2K1@0==CN 7040GC 2=87 =0 >4=C ?>78F8N/Move the highlighted task down, by one positionluckyBackupWindowd5@5<5AB8BL 2K1@0==CN 7040GC 225@E =0 >4=C ?>78F8N-Move the highlighted task up, by one positionluckyBackupWindow"NOluckyBackupWindow .' NOT INCLUDEDluckyBackupWindowNOTEluckyBackupWindowH81>: =5BNo errors foundluckyBackupWindow2!59G0A 2K?>;=O5BAO 7040G0Now performing taskluckyBackupWindowr>:07K20BL B>;L:> 206=K5 A>>1I5=8O 8 A>>1I5=8O >1 >H81:0E@>H> ?@>25@LB5 ?0@0<5B@K 7040G8?Please have a good look at the following task properties dialogluckyBackupWindowK15@8B5 7040GCPlease select a task firstluckyBackupWindow^K15@8B5 7040GC, :>B>@CN =5>1E>48<> A:>?8@>20BL'Please select a task to duplicate firstluckyBackupWindow^K15@8B5 7040GC, :>B>@CN =5>1E>48<> ?@>A<>B@5BL$Please select a task to manage firstluckyBackupWindowXK15@8B5 7040GC, :>B>@CN =5>1E>48<> 87<5=8BL$Please select a task to modify firstluckyBackupWindowVK15@8B5 7040GC, :>B>@CN =5>1E>48<> C40;8BL$Please select a task to remove firstluckyBackupWindowbK:;NG5=85 :><?LNB5@0 ?>A;5 2K?>;=5=8O 2A5E 7040G+Press down to shutdown the system when doneluckyBackupWindow@>D8;LProfileluckyBackupWindow@>D8;LPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindow@>D8;LIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow@>D8;L9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow>?8O ?@>D8;OJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow@>D8;LGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow@>D8;Llfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow@>D8;L3full phrase: 'Profile set as default'ProfileluckyBackupWindowd=48:0B>@ 2K?>;=5=8O 1C45B >1=>2;OBLAO ?@>872>;L=>(Progressbar update will not be realisticluckyBackupWindow&5@58<5=>20BLR&enameluckyBackupWindowH81:0 GB5=8O Read errorluckyBackupWindow<!B0@K5 @575@2=K5 :>?88 C40;5=K Removed all older snapshots dataluckyBackupWindow#40;5=85RemovingluckyBackupWindowX#40;5=85 AB0@KE @575@2=KE :>?89 8 ;>3-D09;>2+Removing old snapshots and logfiles of taskluckyBackupWindowK?>;=8BLRunluckyBackupWindow& 0A?8A0=85 S&cheduleluckyBackupWindow:K15@8B5 :0B0;>3 4;O M:A?>@B0Select export directoryluckyBackupWindowF#AB0=>28BL :0: ?@>D8;L ?>-C<>;G0=8NSet as DefaultluckyBackupWindowCB8 Set pathsluckyBackupWindowZ#:070BL ?CB8 : 8A?>;=O5<K< D09;0< rsync 8 ssh$Set paths for rsync and ssh commandsluckyBackupWindow6>:070BL >:=> A 8=D>@<0F859Show information windowluckyBackupWindow6>:070BL >:=> A 8=D>@<0F859+hide/show information window button tooltipShow information windowluckyBackupWindow:>:07K20BL B5:AB ?>4 7=0G:0<8Show text under iconsluckyBackupWindowAB>G=8:SourceluckyBackupWindowH@5@20BL 2K?>;=5=85 70?CI5==KE 7040G'Stop the execution of running tasks NOWluckyBackupWindowB0B0;>3 =07=0G5=8O CA?5H=> A>740=)Successfuly created destination directoryluckyBackupWindow 040G0TaskluckyBackupWindow!?8A>: 7040G Task listluckyBackupWindow(!?8A>: 7040G ?@>D8;OTask list of profileluckyBackupWindow ?8A0=85 ?@>D8;OThe description of profileluckyBackupWindowXK1@0==K9 :0B0;>3 =5 A>45@68B 40==KE ?@>D8;OCThe directory you have selected does not contain valid profile dataluckyBackupWindown254Q==>5 =0720=85 A>45@68B B>;L:> =54>?CAB8<K5 A8<2>;K:The name you have entered contains only invalid charactersluckyBackupWindowT!8AB5<0 1C45B ?5@5703@C65=0 G5@57 1 <8=CBC$The system will shutdown in 1 minuteluckyBackupWindow&!?8A>: 7040G ?CAB>9The task list is emptyluckyBackupWindowC45B 2K?>;=5= <b>B5AB>2K9 70?CA:</b> 157 A>E@0=5=8O 87<5=5=89 (E>BO @57C;LB0B 2K?>;=5=8O 1C45B ?>GB8 B0:8< 65, :0: 8 ?@8 =0AB>OI5< 70?CA:5){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow@52KH5=> 2@5<O Timed outluckyBackupWindow452>7<>6=> >B:@KBL ?@>D8;LUnable to open profileluckyBackupWindow$58725AB=0O >H81:0 Unknown errorluckyBackupWindow$58725AB=0O >H81:0this refers to a process Unknown errorluckyBackupWindowd;O =0G0;0 @01>BK =06<8B5 A?@020 :=>?:C ">1028BL"0Use the "add" button on the right to get startedluckyBackupWindowA?>;L7C9B5 "2:;NG0NI85 >B<5B:8" 4;O 2:;NG5=8O 8;8 8A:;NG5=8O 2K1@0==>9 7040G8>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindow`@>A<>B@5BL 8;8 >B@540:B8@>20BL >?8A0=85 ?@>D8;O!View/Edit the profile descriptionluckyBackupWindow # WARNINGluckyBackupWindow$>1@> ?>60;>20BL 2 Welcome toluckyBackupWindowP#40;8BL B0:65 7040GC 4;O 2>AAB0=>2;5=8O:Would you like to also remove:luckyBackupWindow*AQ @02=> ?@>4>;68BL?!Would you like to proceed anyway?luckyBackupWindow(%>B8B5 70<5=8BL 53>?Would you like to replace it ?luckyBackupWindowN!>E@0=8BL 87<5=5=8O ?5@54 ?@>4>;65=85<?-Would you like to save it before proceeding ?luckyBackupWindowH81:0 70?8A8 Write errorluckyBackupWindowYESluckyBackupWindowZK 70?@>A8;8 A>740=85 7040G8 ">AAB0=>2;5=85"/You have asked for a RESTORE task to be createdluckyBackupWindowP>AB83=CB> <0:A8<0;L=>5 :>;8G5AB2> 7040G5You have reached the maximum limit of supported tasksluckyBackupWindowb#40;8B5 :0:CN-;81> 7040GC, GB>1K 4>1028BL =>2CN!!7You have to remove a task if you wish to add another !!luckyBackupWindowl1C45B A>740= =>2K9 ?CAB>9 ?@>D8;L A B0:8< 65 =0720=85<4a new blank one, with the same name, will be createdluckyBackupWindow>1028BLaddluckyBackupWindow>1028BL 7040GCadd taskluckyBackupWindowC65 ACI5AB2C5Balready existsluckyBackupWindow"8 A?8A>: ?@>D8;59and 'profile' drop-down listluckyBackupWindow88 4>102;5= 2 A?8A>: ?@>D8;59and added at the profile listluckyBackupWindowv8 87<5=8B5 2AQ, GB> =5>1E>48<>, 2 A;54CNI5< 480;>3>2>< >:=5.and change anything you wish before proceedingluckyBackupWindow:0:asluckyBackupWindowA =0720=85<Ffull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow2KG8A;5=85 calculatingluckyBackupWindowKG8A;5=85-info message displayed during ...calculations calculatingluckyBackupWindow( 57C;LB0B 2K?>;=5=8Ocommands outputluckyBackupWindow(=5 <>65B 1KBL A>740=could not be createdluckyBackupWindow,=5 <>65B 1KBL A>E@0=Q=could not be savedluckyBackupWindow,=5 <>65B 1KBL A>E@0=Q=PQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindowA>740= CA?5H=>created successfullyluckyBackupWindow@!>740=85 ?@>D8;O ?>-C<>;G0=8N...creating default profile ...luckyBackupWindow&!>740=85 ?@>D8;O...creating profile ...luckyBackupWindow^$09; crontab <font color=green>CA?5H=> >1=>2;Q=6current crontab updated successfullyluckyBackupWindow"5:CI89 ?@>D8;Lcurrent profileluckyBackupWindow(@>D8;L ?>-C<>;G0=8Ndefault profileluckyBackupWindow(@>D8;L ?>-C<>;G0=8N^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow(@>D8;L ?>-C<>;G0=8NVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindowC40;5= CA?5H=>deleted successfullyluckyBackupWindowC40;5=85 D09;>2deleting filesluckyBackupWindowC40;5=85 D09;>2/info message displayed during ...file deletionsdeleting filesluckyBackupWindow@>A<>B@5BL, 2>AAB0=>28BL 8;8 C40;8BL @575@2=K5 :>?88 2K45;5==>9 7040G8?display - restore - delete existing backups of highlighted taskluckyBackupWindowJ>:070BL A2545=8O > 2K45;5==>9 7040G5.display information regarding highlighted taskluckyBackupWindow8A>740=0 CA?5H=> 8 =07K205BAOduplicated successfully asluckyBackupWindow,K;8 >1=0@C65=K >H81:8 errors foundluckyBackupWindow&K?>;=5=85 ?@>D8;O:execution of profile:luckyBackupWindow(K?>;=O5BAO ?@>D8;L:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow>CA?5H=> M:A?>@B8@>20= 2 :0B0;>3exported successfully toluckyBackupWindow,52>7<>6=> ?5@5<5AB8BLfailed to removeluckyBackupWindowZ5 C40;>AL C40;8BL 2A5 AB0@K5 @575@2=K5 :>?88)failed to remove all older snapshots dataluckyBackupWindow7025@H5=>finishedluckyBackupWindow7025@H5=>:full phrase: 'Execution of profile finished'finishedluckyBackupWindow01K; 8<?>@B8@>20= CA?5H=>imported successfullyluckyBackupWindow...in progress...luckyBackupWindow:;NG8BLincludeluckyBackupWindow87<5=Q= is modifiedluckyBackupWindow=5 A>2<5AB8< Ais not valid forluckyBackupWindow !;54CNI0O >H81:0jump to next errorluckyBackupWindow"@54K4CI0O >H81:0jump to previous errorluckyBackupWindow 703@C65= CA?5H=>loaded successfullyluckyBackupWindow@03@C7:0 ?@>D8;O ?>-C<>;G0=8N...loading default profile ...luckyBackupWindow&703@C7:0 =52>7<>6=0loading failedluckyBackupWindow&03@C7:0 ?@>D8;O...loading profile ...luckyBackupWindow>;>3-D09;K A>E@0=5=K 2 :0B0;>35:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow!25@=CBL 2 B@59minimize to trayluckyBackupWindow(!25@=CBL >:=> 2 B@59%minimizes the window to the tray arealuckyBackupWindow7<5=8BLmodifyluckyBackupWindow27<5=8BL 2K1@0==CN 7040GCmodify highlighted taskluckyBackupWindow!86C, :C@N nothing to doluckyBackupWindowRK?>;=5=85 :><0=4 ?>A;5 2K?>;=5=8O 7040G8post-task execution of commandluckyBackupWindowLK?>;=5=85 :><0=4 4> 2K?>;=5=8O 7040G8pre-task execution of commandluckyBackupWindow@>D8;LprofileluckyBackupWindow@>D8;LVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow@>D8;LSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow@>D8;LUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow@>D8;LSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow@>D8;LMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow@>D8;L profile luckyBackupWindow"8E89 @568< quiet modeluckyBackupWindow>1=>2;5=K refreshedluckyBackupWindow#40;8BLremoveluckyBackupWindow0#40;8BL 2K1@0==CN 7040GCremove highlighted taskluckyBackupWindow,CA?5H=> ?5@58<5=>20= 2renamed successfully toluckyBackupWindow,CA?5H=> ?5@58<5=>20= 2Wfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowv45AL 2K2>4OBAO @57C;LB0BK 2K?>;=5=8O rsync 8 4@C38E :><0=49rsync and pre/post task commands output is displayed hereluckyBackupWindow A>E@0=5= CA?5H=>saved successfullyluckyBackupWindowD!>E@0=5=85 ?@>D8;O ?>-C<>;G0=8N...saving default profile ...luckyBackupWindow*!>E@0=5=85 ?@>D8;O...saving profile ...luckyBackupWindow45ABL @0A?8A0=85 2K?>;=5=8O scheduledluckyBackupWindowDCAB0=>2;5= :0: ?@>D8;L ?>-<>;G0=8Nset as defaultluckyBackupWindowCAB0=>2;5=> :0:set toluckyBackupWindowK:;NG5=85shutdownluckyBackupWindow"5AB>2K9 @568<simulation modeluckyBackupWindow!>AB>O=85statusluckyBackupWindow"AC?5@?>;L7>20B5;L super userluckyBackupWindow.@568< AC?5@?>;L7>20B5;Osuper user modeluckyBackupWindow2 :0B0;>3toluckyBackupWindow?5@540G0 D09;>2transferring filesluckyBackupWindow?5@540G0 D09;>2/info message displayed during ...file transferstransferring filesluckyBackupWindow6>?KB:0 >B?@028BL A>>1I5=85trying to send an emailluckyBackupWindow25@A88:version:luckyBackupWindow">:070BL @07;8G8OCalculate differences manageDialog~>:070BL @07;8G8O <564C AB>G=8:>< 8 2K1@0==>9 @575@2=>9 :>?859FCalculate the differences between the source and the selected snapshot manageDialogBKG8A;5=85 >B<5=5=> ?>;L7>20B5;5<Calculations terminated by user manageDialog0:@KBLClose manageDialog0:@KBL >:=>Close this window manageDialog#40;8BLDelete manageDialog`#40;8BL 2K1@0==CN @575@2=CN :>?8N 8 5Q ;>3-D09;K,Delete the selected snapshot and its logfile manageDialogD5B ?@02 4;O GB5=8O MB>3> :0B0;>30;I do not have sufficient permissions to read this directory manageDialogDK15@8B5 @575@2=CN :>?8N 87 A?8A:0&Please select a snapshot from the list manageDialogJ>4>648B5, ?>:0 2K?>;=O5BAO ?@>3@0<<0*Please wait until the thread is terminated manageDialog>AAB0=>28BLRestore manageDialogL>AAB0=>28BL 2K1@0==CN @575@2=CN :>?8NRestore the selected snapshot manageDialog!"",STOP manageDialog8AB0=>28BL 2KG8A;5=85 !'!Stop calculations NOW manageDialog<0B0;>3 AB>G=8: =5 ACI5AB2C5BThis directory does not exist manageDialog@0B0;>3 07=0G5=85 =5 ACI5AB2C5BInformation messageThis directory does not exist manageDialogV>:070BL ;>3-D09; 2K1@0==>9 @575@2=>9 :>?88)View the logfile of the selected snapshot manageDialogR>:070BL ;>3-D09; 2K1@0==>9 A8=E@>=870F88*View the logfile of the selected sync task manageDialog07=0G5=85: destination: manageDialog!:@KBL AB>G=8: hide source manageDialog:luckyBackup - @575@2=K5 :>?88luckyBackup - manage backup manageDialog=5 4>ABC?=> not available manageDialog@>D8;Lprofile manageDialogAB>G=8::source: manageDialog0B0;>3 A sync dir A manageDialog0B0;>3 B sync dir B manageDialog 040G0task manageDialog>3-D09;view log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizard@5@20BLABORT manageWizard@5@20=>Aborted manageWizard.0B0;>3 @575@2=>9 :>?88 Backup path manageWizardBK1@0BL 4@C3>9 :0B0;>3 =07=0G5=8O%Browse locally for a new restore path manageWizard#AB0=>28B5, GB>1K A>740BL B>G=CN :>?8N :0B0;>3>2 @575@2=>9 :>?88 8 =07=0G5=8O.BCheck this, to clone the backup snapshot to the restore directory. manageWizard0B0 8 2@5<O Date & time manageWizard0#40;5=85 @575@2=>9 :>?88 Delete backup manageWizard#40;8BL D09;K 2 :0B0;>35 =07=0G5=8O, :>B>@KE =5B 2 @575@2=>9 :>?884Delete existing data that do not exist at the backup manageWizard#40;5=85 D09;>2 Deleting data manageWizardx#40;5=85 D09;0 A> A?8A:>< 87<5=5=89 <564C @575@2=K<8 :>?8O<8)Deleting file that lists snapshot changes manageWizard$#40;5=85 ;>3-D09;0Deleting snapshot logfile manageWizard$09;K @575@2=>9 :>?88 70<5=OB A>>B25BAB2CNI85 D09;K 2 :0B0;>35 =07=0G5=8OSExisting backup files will replace the corresponding files at the restore directory manageWizard025@H5=>Finished manageWizardA;8 ?@82545==0O 2KH5 8=D>@<0F8O ?@028;L=0O, =06<8B5 :=>?:C <b>0G0BL</b>@If the information above is correct, click start to begin manageWizardA;8 ?@82545==0O 2KH5 8=D>@<0F8O ?@028;L=0O, =06<8B5 :=>?:C <b>0G0BL</b>`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard !;54CNI0O >H81:0Jump to next error manageWizard"@54K4CI0O >H81:0Jump to previous error manageWizardn$09;K @575@2=>9 :>?88 =5 A>45@60B 87<5=5=89. @>?CA:...,No snapshot specific data exist. Skipping... manageWizardCBLPath manageWizardB>AAB0=>2;5=85 87 @575@2=>9 :>?88Restore backup manageWizard$0B0;>3 =07=0G5=8O Restore path manageWizardP>AAB0=>2;5=85 D09;>2: >A=>2=0O >?5@0F8ORestoring data: main trunk manageWizardL>AAB0=>2;5=85 D09;>2: @575@2=0O :>?8ORestoring data: snapshot files manageWizardDK15@8B5 4@C3>9 :0B0;>3 =07=0G5=8OSelect new restore directory manageWizard0B0;>3 =07=0G5=8O AB0=5B B>G=>9 :>?859 :0B0;>30 @575@2=>9 :>?88BThe restore directory will become identical to the backup snapshot manageWizardC45B 2K?>;=5= <b>B5AB>2K9 70?CA:</b> 157 A>E@0=5=8O 87<5=5=89 (E>BO @57C;LB0B 2K?>;=5=8O 1C45B ?>GB8 B0:8< 65, :0: 8 ?@8 =0AB>OI5< 70?CA:5){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardB1=>2;5=85 A?8A:0 @575@2=KE :>?89Updating list of snapshots manageWizard # WARNING manageWizardLK A>18@05B5AL C40;8BL @575@2=CN :>?8N#You are about to delete backup data manageWizard B<5=0cancel manageWizard7<5=8BLchange manageWizard0:@KBLclose manageWizard,K;8 >1=0@C65=K >H81:8 errors found manageWizard=5 2K?>;=5=>failed manageWizard=5 2K?>;=5=>-info message displayed after ...file deletionfailed manageWizard:luckyBackup - @575@2=K5 :>?88luckyBackup - manage backup manageWizard !;54CNI0O >H81:0 next error manageWizardH81>: =5B no errors manageWizard=5 4>ABC?=> not available manageWizard"@54K4CI0O >H81:0previous error manageWizard"5AB simulation manageWizard 0G0BLstart manageWizard2K?>;=5=>success manageWizard2K?>;=5=>-info message displayed after ...file deletionsuccess manageWizard2K?>;=5=>5info message displayed after ...snapshots list updatesuccess manageWizard<b>5 701C4LB5</b> 4>1028BL :0B0;>3 07=0G5=85 2 A?8A>: =0 2:;04:5 "A:;NG8BL"fDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @%>AB:@Host: modifyDialog>102LB5 ;N1>9 :0B0;>3, D09; 8;8 H01;>= 4;O 8A:;NG5=8O 87 MB>9 7040G8@Add any directory, file or pattern to be excluded from this task modifyDialog>102LB5 ;N1>9 :0B0;>3, D09; 8;8 H01;>= 4;O 2:;NG5=8O 2 MBC 7040GC>Add any directory, file or pattern to be included by this task modifyDialogP>1028BL :><0=4C, 22545==CN 2 ?>;5 @O4><*Add command as entered in the field beside modifyDialogJ>1028BL 8A:;NG5=85, 2254Q==>5 2 ?>;5*Add exclusion as entered in the next field modifyDialogH>1028BL 2:;NG5=85, 2254Q==>5 2 ?>;5*Add inclusion as entered in the next field modifyDialog>1028BL 8;8 C40;8BL >?F88 rsync. A;8 K =5 A>2A5< ?>=8<05B5, GB> MB> B0:>5 - =5 B@>309B5 8E!!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogL>1028BL >?F8N rsync, 2254Q==CN 2 ?>;5-Add rsync option as entered in the next field modifyDialog 0AH8@5==K9Advanced modifyDialog >A;5After modifyDialog^>E>65, GB> 2A5 ?>;O 2 >:=5 70?>;=5=K ?@028;L=>?All declared fields of the task properties window seem to be ok modifyDialog"0:65 2K?>;=8BL Also Execute modifyDialogV 575@2=0O :>?8O AB>G=8:0 2=CB@8 07=0G5=8O Backup Source inside Destination modifyDialog@E82=K5 D09;K Backup files modifyDialog>Before modifyDialog 0B0;>38 A :MH5< Cache folders modifyDialog B<5=0Cancel modifyDialog#AB0=>28B5, 5A;8 :0B0;>3 07=0G5=8O =0E>48BAO =0 @0745;5 FAT/NTFS. @020 4>ABC?0 =5 1C4CB A>E@0=OBLAO. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialog\#AB0=>28B5 D;06>:, GB>1K A>74020BL @575@2=K5 :>?88 AB>G=8:0 2=CB@8 07=0G5=8O !=8<8B5 D;06>:, GB>1K A>74020BL @575@2=K5 :>?88 AB>G=8:0 2=CB@8 2;>65==>3> :0B0;>30 07=0G5=8OiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogjB<5BLB5 MB> 4;O A>548=5=8O A #40;5==K< <>4C;5< rsync/Check this to connect to an rsync Remote module modifyDialog ?F88Command Options modifyDialog!?8A>: :><0=4 Command list modifyDialog>?8@>20BL D09;K D878G5A:8E CAB@>9AB2 (B>;L:> 4;O AC?5@?>;L7>20B5;O), 8<5=>20==K5 :0=0;K (1CD5@K FIFO), 3=Q740 (A>:5BK) (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogA;8 >1=0@C65=0 A8<2>;L=0O AAK;:0, B> >=0 65 A>7405BAO 8 =0 ?@8Q<=>9 AB>@>=5 (-l)Copy symlinks as symlinks (-l) modifyDialog?@545;8B5 B8? MB>9 7040G8: 1.  575@2=0O :>?8O :0B0;>30 AB>G=8:0 2=CB@8 07=0G5=8O (>1@0B8B5 2=8<0=85 =0 D;06>: " A>74020BL 2;>65==>3> :0B0;>30") 2. !8=E@>=870F8O :0B0;>3>2 AB>G=8:0 8 07=0G5=8O, A>E@0=ONBAO =>2K5 D09;K 2 >1>8E :0B0;>30EDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog?@545;8B5 B8? MB>9 7040G8: 1. @E828@>20BL A>45@68<>5 AB>G=8:0 2=CB@8 07=0G5=8O 2. @E828@>20BL 48@5:B>@8N AB>G=8:0 ?> 8<5=8 2=CB@8 07=0G5=8O 3. !8=E@>=878@>20BL AB>G=8: 8 07=0G5=85, A>E@0=OO 2 =8E A0<K5 A25685 D09;KDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog6#40;OBL >BACBAB2CNI85 D09;KDelete files on the destination modifyDialogl#40;OBL D09;K 2 :0B0;>35 07=0G5=8O, :>B>@KE =5B 2 AB>G=8:5. "0:65 4>;6=> 1KBL 2K1@0=> " 5:C@A82=> 2 ?>4:0B0;>30E" (--delete-after 8 --delete-excluded 5A;8 8A?>;L7C5BAO "A:;NG8BL")Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialog?8A0=85 Description modifyDialog07=0G5=85 Destination modifyDialog07=0G5=85: Destination : modifyDialog807=0G5=85 - @0745; FAT/NTFSDestination is FAT/NTFS modifyDialog@ A>74020BL 2;>65==>3> :0B0;>30Do NOT create extra directory modifyDialog@>?CA:0BL ;N1K5 D09;K, C65 ACI5AB2CNI85 2 07=0G5=88 A 1>;55 ?>74=59 40B>9, G5< 2 AB>G=8:5 (--update)HDo not backup source files that are newer on the destination (--update) modifyDialog$$09;K, :>B>@K5 4>;6=K 8A:;NG0BLAO A>3;0A=> A?8A:C 8A:;NG5=89, 2:;NG0NBAO A>3;0A=> A?8A:C 2:;NG5=89. >4@>1=55 A<>B@8B5 2 @C:>2>4AB25 ?>;L7>20B5;O.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog07<5=8BL 2K1@0==K9 ?C=:BEdit highlighted inclusion modifyDialog2548B5 =0720=85 7040G8 (=0?@8<5@, " 575@2=>5 :>?8@>20=85 4><0H=53> :0B0;>30"):Enter a name for this task (eg "Backup my home directory") modifyDialog2548B5 :><0=4C, :>B>@0O 4>;6=0 2K?>;=OBLAO ?>A;5 7040G8 8 70B5< =06<8B5 :=>?:C ">1028BL" 4;O 4>102;5=8O 2 A?8A>: =865nEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialog2548B5 :><0=4C, :>B>@0O 4>;6=0 2K?>;=OBLAO ?5@54 7040G59 8 70B5< =06<8B5 :=>?:C ">1028BL" 4;O 4>102;5=8O 2 A?8A>: =865oEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialog2548B5 AN40 4>?>;=8B5;L=K5 >?F88 rsync (=0?@8<5@, "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog2548B5 745AL 8<O D09;0, :0B0;>30 8;8 H01;>=, 70B5< =06<8B5 :=>?:C ">1028BL" 4;O 4>102;5=8O 53> 2 A?8A>: 8A:;NG5=89 * - >7=0G05B ;N1>9 =5?CAB>9 A8<2>; (>AB0=02;8205BAO =0 A;MH0E) ** - >7=0G05B ;N1>9 A8<2>;, 2:;NG0O A;MH ? - >7=0G05B ;N1>9 A8<2>;, :@><5 A;MH0 8<O_:0B0;>30/*** (2 :>=F5) - >7=0G05B 8 :0B0;>3, 8 2AQ 53> A>45@68<>5 / (2 =0G0;5) - H01;>= ?@82O7K205BAO : :>=:@5B=><C <5ABC 2 85@0@E88 :0B0;>3>2 (>1KG=> MB> AB>G=8:) / (2 :>=F5) - A>>B25BAB2C5B B>;L:> :0B0;>3C, => =5 >1KG=K< D09;0<, AAK;:0< 8;8 CAB@>9AB20<Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog2548B5 745AL 8<O D09;0, :0B0;>30 8;8 H01;>=, 70B5< =06<8B5 :=>?:C ">1028BL" 4;O 4>102;5=8O 53> 2 A?8A>: 8A:;NG5=89 * - >7=0G05B ;N1>9 =5?CAB>9 A8<2>; (>AB0=02;8205BAO =0 A;MH0E) ** - >7=0G05B ;N1>9 A8<2>;, 2:;NG0O A;MH ? - >7=0G05B ;N1>9 A8<2>;, :@><5 A;MH0 8<O_:0B0;>30/*** (2 :>=F5) - >7=0G05B 8 :0B0;>3, 8 2AQ 53> A>45@68<>5 / (2 =0G0;5) - H01;>= ?@82O7K205BAO : :>=:@5B=><C <5ABC 2 85@0@E88 :0B0;>3>2 (>1KG=> MB> AB>G=8:) / (2 :>=F5) - A>>B25BAB2C5B B>;L:> :0B0;>3C, => =5 >1KG=K< D09;0<, AAK;:0< 8;8 CAB@>9AB20<Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog2548B5 ?>;=K9 ?CBL : :0B0;>3C 07=0G5=8O (=0?@8<5@, /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialog2548B5 ?>;=K9 ?CBL : D09;C, :>B>@K9 A>45@68B ?@820B=K9 0CB5=B8D8:0F8>==K9 :;NG ssh (>AB02LB5 ?CABK<, 5A;8 =5 8A?>;L7C5BAO). @>25@LB5, A45;0;8 ;8 K 2A5 459AB28O, =5>1E>48<K5 4;O 15A?0@>;L=>3> ssh-A>548=5=8O A 8A?>;L7>20=85< ?0@K :;NG59 OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialog2548B5 ?>;=K9 ?CBL : D09;C, A>45@60I5<C 0CB5=B8D8:0F8>==K9 ?0@>;L 4;O rsync (=5 ssh) (>AB02LB5 ?CABK<, 5A;8 =5 8A?>;L7C5BAO)~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialog2548B5 ?>;=K9 ?CBL : :0B0;>3C AB>G=8:0 (=0?@8<5@, /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogD2548B5 =0720=85 C40;Q==>3> E>AB0."Enter the name of the remote host. modifyDialog2548B5 ?>@B, :>B>@K9 2K E>B8B5 8A?>;L7>20BL 4;O ssh-A>548=5=8O (>AB02LB5 ?CABK< 4;O 7=0G5=8O ?>-C<>;G0=8N)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialog2548B5 8<O ?>;L7>20B5;O 4;O C40;Q==>3> E>AB0 (>AB02LB5 ?CABK<, 5A;8 =5 B@51C5BAO).HEnter your username for the remote host (leave blank if not applicable). modifyDialog,K;8 >1=0@C65=K >H81:8Errors have been found modifyDialogA:;NG8BLExclude modifyDialogjA:;NG8BL 2A5 :0B0;>38 'lost+found' (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogZA:;NG8BL 2A5 0@E82=K5 D09;K 8 :0B0;>38 (**~)(Exclude all backup files & folders (**~) modifyDialogtA:;NG8BL 2A5 :0B0;>38 A :MH5< (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogXA:;NG8BL 2A5 2@5<5==K5 :0B0;>38 (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogrA:;NG8BL 2A5 ?>;L7>20B5;LA:85 :0B0;>38 .gvfs (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogxA:;NG8BL 2A5 :0B0;>38 A :>@78=>9 (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog"!?8A>: 8A:;NG5=89 Exclude list modifyDialogA:;NG8BL A<>=B8@>20==K5 :0B0;>38 /mnt 8 /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogfK?>;=8BL 4>?>;=8B5;L=K5 :><0=4K 4> 8 ?>A;5 7040G8.1Execute extra commands, before or after the task. modifyDialogK?>;=8BL 7040GC, 4065 5A;8 ?>O2;O5BAO  #  1KG=> 8A?>;L7C5BAO, :>340 :><0=4K, 2K?>;=ONI85AO 4> 70?CA:0 7040G8, <>3CB CAB@0=8BL ?@8G8=C ?@54C?@5645=8O (=0?@8<5@, ?@8<>=B8@>20BL @0745;) : 8A?>;L7C9B5, B>;L:> 5A;8 2K B>G=> 7=05B5, GB> 45;05B5Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialogB!?8A>: 4>?>;=8B5;L=KE >?F89 rsyncExtra rsync options list modifyDialog`#:07K205B ?5@5A>740BL 65AB:85 AAK;:8 2 07=0G5=88 2 A>>B25BAB288 A B5<, GB> 8<55BAO 2 AB>G=8:5. 57 MB>3> ?0@0<5B@0 65AB:85 AAK;:8 >1@010BK20NBAO :0: >1KG=K5 D09;K. : rsync <>65B >1=0@C6820BL 65AB:85 AAK;:8, B>;L:> 5A;8 >15 G0AB8 AAK;:8 ?>?040NB 2 A?8A>: ?@54=07=0G5==KE : ?5@540G5 D09;>2!! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog43=>@8@>20BL D09;K :0: CVSIgnore files the CVS way modifyDialogt3=>@8@>20BL D09;K, 8A?>;L7CO ?>E>689 =0 CVS 0;3>@8B< (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialog:;NG8BLInclude modifyDialog^:;NG0NBAO ", D09;K, C:070==K5 2 A?8A:5 2:;NG5=89, 1>;LH5 =8G53>. >4@>1=55 A<>B@8B5 2 @C:>2>4AB25 ?>;L7>20B5;O. @028;0, >?@545;Q==K5 2 A?8A:5 8A:;NG5=89, =5 ?@8<5=ONBAO.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog !?8A>: 2:;NG5=89 Include list modifyDialog@5B>4 >1@01>B:8 A?8A:0 2:;NG5=89 Include mode modifyDialog#AB0=>2;5==K9 D;06>: >7=0G05B, GB> 2K?>;=5=85 7040G8 <b>!""!/</b> ?@8 2K?>;=5=88 :><0=4K A >H81:>9gLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog 5B>4:Mode: modifyDialog@5@5<5AB8BL 2K1@0==K9 ?C=:B 2=87Move highlighted inclusion down modifyDialogB5@5<5AB8BL 2K1@0==K9 ?C=:B 225@EMove highlighted inclusion up modifyDialog0720=85:Name : modifyDialog45 8A:;NG0BL ?5@5G8A;5==>5Normal Include modifyDialogOKOkay modifyDialog::;NG0BL B>;L:> ?5@5G8A;5==>5 Only Include modifyDialogh5@54 ?@>4>;65=85< CAB0=>28B5 A>>B25BAB2CNI89 D;06>:/Please check the relevant box before proceeding modifyDialogx5@54 70?CA:>< @540:B>@0 H01;>=>2 2K15@8B5 :0B0;>3 AB>G=8:0BO 1K >48= 87 =8E"Please modify at least one of them modifyDialogT5@54 ?@>4>;65=85< 70409B5 4@C3>5 =0720=851Please specify a different name before proceeding modifyDialog^5@54 ?@>4>;65=85< 70409B5 A;54CNI85 ?0@0<5B@K:/Please specify the following before proceeding: modifyDialogX!>E@0=OBL D09;K CAB@>9AB2, A?5F80;L=K5 D09;KPreserve device, special files modifyDialog0!>E@0=OBL 65AB:85 AAK;:8Preserve hard links modifyDialog4!>E@0=OBL 2;045;LF0 8 40BKPreserve ownership, times modifyDialog!>E@0=OBL ?@020Preserve permissions modifyDialog>?8@C5B 2A5 ?@020 =0 ?@8Q<=CN AB>@>=C B>GL 2 B>GL A >@838=0;>< (-p)"Preserve permissions of files (-p) modifyDialog<!>E@0=OBL A8<2>;8G5A:85 AAK;:8Preserve symlinks modifyDialog!>E@0=OBL 0B81CBK 2;045;LF0 (B>;L:> 4;O AC?5@?>;L7>20B5;O) 8 3@C??K, 2@5<O <>48D8:0F88 D09;>2 (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialogJ03@C78BL 87 D09;0 H01;>=K 8A:;NG5=8ORead exclude patterns from file modifyDialogB:@KBL D09;: Read file: modifyDialogH03@C78BL 87 D09;0 H01;>=K 2:;NG5=8ORead include patterns from file modifyDialog2 5:C@A82=> 2 ?>4:0B0;>30ERecurse into directories modifyDialogf#:07K205B rsync :>?8@>20BL :0B0;>38 @5:C@A82=> (-r)Recurse into directories (-r) modifyDialog*#40;Q==>5 ?>4:;NG5=85Remote modifyDialog #40;5==K9 <>4C;L Remote module modifyDialogB#40;8BL 2K1@0==K9 ?C=:B 87 A?8A:0$Remove highlighted command from list modifyDialogB#40;8BL 2K1@0==K9 ?C=:B 87 A?8A:0&Remove highlighted exclusion from list modifyDialogB#40;8BL 2K1@0==K9 ?C=:B 87 A?8A:0&Remove highlighted inclusion from list modifyDialogB#40;8BL 2K1@0==K9 ?C=:B 87 A?8A:0#Remove highlighted option from list modifyDialog8K15@8B5 2K?>;=O5<CN :><0=4CSelect command to be executed modifyDialog6K15@8B5 :0B0;>3 07=0G5=8OSelect destination directory modifyDialog\K15@8B5 D09; 4;O 703@C7:8 H01;>=>2 8A:;NG5=8O$Select file to read exclude patterns modifyDialogZK15@8B5 D09; 4;O 703@C7:8 H01;>=>2 2:;NG5=8O$Select file to read include patterns modifyDialog4K15@8B5 :0B0;>3 AB>G=8:0Select source directory modifyDialogL>;8G5AB2> A>E@0=O5<KE @575@2=KE :>?890Set the total number of backup snapshots to keep modifyDialog^>:070BL :><0=4C rsync, :>B>@0O 1C45B 2K?>;=5=0.Shows the rsync command as it will be executed modifyDialog,@>?CA:0BL =>2K5 D09;KSkip newer destination files modifyDialog  575@2=KE :>?89:Snapshots to keep: modifyDialogAB>G=8:Source modifyDialogAB>G=8::Source : modifyDialog\!8=E@>=870F8O :0B0;>3>2 AB>G=8:0 8 07=0G5=8O"Synchronize Source and Destination modifyDialog$!8AB5<=K5 :0B0;>38System folders modifyDialog.!<>=B8@>20==K5 :0B0;>38System mount folders modifyDialog?8A0=85 7040G8Task description modifyDialog0720=85 7040G8 Task name modifyDialog 0@0<5B@K 7040G8Task properties modifyDialog(01;>=K Templates modifyDialog$@5<5==K5 :0B0;>38Temporary folders modifyDialogp-B> =5?@028;L=>, ?>A:>;L:C '/' =54>?CAB8<>5 8<O :0B0;>305 =0720=85 7040G8 C65 ACI5AB2C5B1The name of the task you requested already exists modifyDialogb0B0;>3 07=0G5=85 A>2?0405B A :0B0;>3>< AB>G=8:@78=CTrash modifyDialog"8?:Type : modifyDialog.2548B5 >?8A0=85 7040G8Type a description of the task modifyDialog~A?>;L7>20BL C40;Q==K9 E>AB 2 :0G5AB25 AB>G=8:0 8;8 07=0G5=8O2Use a remote host either for source or destination modifyDialogdA?>;L7>20BL C40;Q==K9 E>AB 2 :0G5AB25 07=0G5=8O.'Use a remote host for destination data. modifyDialogbA?>;L7>20BL C40;Q==K9 E>AB 2 :0G5AB25 AB>G=8:0."Use a remote host for source data. modifyDialog0A?>;L7>20BL G8A;>2K5 IDUse numeric group and user IDs modifyDialogDA?>;L7>20BL C40;Q==>5 ?>4:;NG5=85Use remote host modifyDialog<A?>;L7>20BL ssh :0: B@0=A?>@BUse ssh as transport shell modifyDialog,040==K5 ?>;L7>20B5;5< User Defined modifyDialog,040==K5 ?>;L7>20B5;5< User defined modifyDialog>;L7>20B5;L:User: modifyDialog<5AB> 8<5= 3@C?? 8 ?>;L7>20B5;59 ?>AK;0NBAO 8E G8A;>2K5 id 8 AB02OBAO 2 A>>B25BAB285 4@C3 4@C3C =0 >1>8E :>=F0E. (--numeric-ids)With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) modifyDialog<K C65 4>1028;8 MB> 8A:;NG5=85(You have already added this exclude item modifyDialog:K C65 4>1028;8 MB> 2:;NG5=85(You have already added this include item modifyDialog2K C65 4>1028;8 MBC >?F8N"You have already added this option modifyDialogK >?@545;8;8 :0B0;>3 07=0G5=85 :0: G0ABL AB@C:BC@K :0B0;>3>2 AB>G=8:0NYou have declared a destination that is part of the source directory structure modifyDialogK >?@545;8;8 '/' (:>@=52>9 :0B0;>3) :0: AB>G=8: 8  CAB0=>28;8 D;06>: " A>74020BL 2;>65==>3> :0B0;>30"qYou have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box modifyDialog>1028BLadd modifyDialog 0AH8@5==K9advanced modifyDialogK1>@ D09;0browse modifyDialog(K1>@ D09;0 =0 48A:5browse locally modifyDialog.K1>@ :0B0;>30 =0 48A:5 browse localy modifyDialog0>B:;NG8BL  # /by-pass WARNING modifyDialog B<5=0cancel modifyDialog$B<5=8BL 87<5=5=8Ocancel editing modifyDialog*:><0=40 =0 2K?>;=5=85command to be executed modifyDialog07=0G5=85 destination modifyDialogOKdone modifyDialog&!>E@0=8BL 87<5=5=8O done editing modifyDialog7<5=8BLedit modifyDialog<O D09;0filename modifyDialog2B:@KBL @540:B>@ H01;>=>2launch the pattern editor modifyDialoglost+found lost+found modifyDialog=87 move down modifyDialog 25@Emove up modifyDialog!?8A>: >?F89 options list modifyDialog >@B:port : modifyDialog0$09; A ?@820B=K< :;NG5<:private key file : modifyDialog#40;8BLremove modifyDialog$$09; ?0@>;O rsync:rsync password file: modifyDialog@>AB>9simple modifyDialogAB>G=8:source modifyDialogsshssh modifyDialogZ$;06>: - <b>!"",</b> 7040GC ?@8 >H81:0E0use boxes to STOP task execution on error modifyDialog@>25@8BLvalidate modifyDialog B<5=0Cancel patternEditor4B<5BLB5, GB>1K 8A?>;L7>20BL C:070==K9 :0B0;>3 :0: :>@=52>9 5A;8 =5 >B<5G5=>, H01;>= 1C45B ?@8<5=OBLAO :> 2A5< D09;0</:0B0;>30<, A>>B25BAB2CNI8< :@8B5@8O<Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditort?@545;8B5 :@8B5@88 A>2?045=8O 4;O =01>@0 D09;>2/:0B0;>3>2EDefine here the name criteria for the files/directories to be matched patternEditorH#:068B5, GB> =C6=> 2:;NG8BL 2 H01;>=8Define here, what would you like the pattern to refer to patternEditor&!>45@68<>5 :0B0;>30Directory contents patternEditor2548B5 A8<2>;K, :>B>@K5 <>3CB =0E>48BAO 2 ;N1>< <5AB5 =0720=89 D09;>2/:0B0;>3>2 4;O 2:;NG5=8O 2 H01;>=sEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor2548B5 ?>A;54=85 A8<2>;K =0720=89 D09;>2/:0B0;>3>2 4;O 2:;NG5=8O 2 H01;>= =0?@8<5@, 4;O 2:;NG5=8O 2A5E D09;>2".txt", 22548B5 .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorp2548B5 =0720=85 D09;>2/:0B0;>3>2 4;O 2:;NG5=8O 2 H01;>=GEnter here the name of the files/directories that the pattern refers to patternEditor2548B5 =0G0;L=K5 A8<2>;K =0720=89 D09;>2/:0B0;>3>2 4;O 2:;NG5=8O 2 H01;>=bEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor$;C18=0 2;>65=8O :Go deeper in path by : patternEditorX5>3@0=8G5==0O 3;C18=0 2;>65=8O ?>4:0B0;>3>2Go deeper in path by any level patternEditorOKOkay patternEditorBK15@8B5 :0B0;>3 2=CB@8 8AB>G=8:0+Please choose a directory within the source patternEditor<K15@8B5 D09; 2=CB@8 8AB>G=8:0&Please choose a file within the source patternEditorf5@=CBL 2A5 ?>;O @540:B>@0 : 7=0G5=8O< ?>-C<>;G0=8N5Reset the pattern editor fields to the default values patternEditor#:068B5 :0B0;>3Select directory patternEditor#:068B5 D09; Select file patternEditor01>@ :0B0;>3>2Set of directories patternEditor01>@ D09;>2 Set of files patternEditor$>=:@5B=K9 :0B0;>3Specific directory patternEditor>=:@5B=K9 D09; Specific file patternEditorD45AL >B>1@0605BAO 8B>3>2K9 H01;>=$The actual pattern is displayed here patternEditor0'B> 2:;NG05BAO 2 H01;>=:The pattern refers to a: patternEditor:;NG8BL 2 H01;>= =01>@ :0B0;>3>2, =0720=8O :>B>@KE 8<5NB GB>-B> >1I55 =0?@8<5@, 2A5 :0B0;>38 A =0720=85< "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditor:;NG8BL 2 H01;>= =01>@ D09;>2, =0720=8O :>B>@KE 8<5NB GB>-B> >1I55 =0?@8<5@, 2A5 D09;K A @0AH8@5=85< ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditor:;NG8BL 2 H01;>= :>=:@5B=K9 :0B0;>3 =0?@8<5@, "/media/C7K:0/;L1></"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditor:;NG8BL 2 H01;>= :>=:@5B=K9 D09; =0?@8<5@, "/media/C7K:0/;L1></"@5:.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor:;NG8BL 2 H01;>= A>45@68<>5 :0B0;>30 (8;8 =01>@0 :0B0;>3>2), 0 =5 A0< :0B0;>3 =0?@8<5@, A>45@68<>5 :0B0;>30 "/media/C7K:0/;L1></"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorJ#:068B5 3;C18=C 2;>65=8O ?>4:0B0;>3>2 =0?@8<5@  :0B0;>35 "/media/C7K:0" =0E>4OBAO 3 ?>4:0B0;>30: 1. >: 2.607 3.!0C=4B@5:8 'B>1K 2:;NG8BL 2A5 A>45@68<>5 MB8E 3 ?>4:0B0;>3>2, C:068B5 A;54CNI55: * 01>@ :0B0;>3>2 * !>45@68<>5 :0B0;>30 * ?CBL :/media/C7K:0/ * ;C18=0 2;>65=8O ?>4:0B0;>3>2 "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditor ;N10Oany patternEditor.K1>@ :0B0;>30 =0 48A:5"browse localy for a directory path patternEditor(K1>@ D09;0 =0 48A:5browse localy for a file patternEditorA>45@60B : contains : patternEditor0B0;>3: directory : patternEditor$70:0=G820NBAO =0 : ends with : patternEditor $09;:file : patternEditorB>3>2K9 H01;>= final pattern patternEditorA>2?040NB A : is exactly : patternEditor20720=8O D09;>2/:0B0;>3>2name patternEditor" 540:B>@ H01;>=>2pattern editor patternEditor !1@>Areset patternEditor=0G8=0NBAO A : starts with : patternEditor:8A?>;L7>20BL :>@=52>9 :0B0;>3use absolute path patternEditor  filescheduleDialog8& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:7045@6:0:delayscheduleDialogB<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;"> 0A?8A0=85 2K?>;=5=8O ?@>D8;O</span></p></body></html>

Profile execution scheduling

scheduleDialog$?>A;5 ?5@5703@C7:8@ rebootscheduleDialogB>1028BL =>2>5 @0A?8A0=85 ?@>D8;OAdd a new profile schedulescheduleDialog8>1028BL 70?8AL 2 @0A?8A0=85Add profile schedulescheduleDialog N1>9AnyscheduleDialog ?@5;LAprilscheduleDialog 0?@5;Ofull phrase: 'of April'AprilscheduleDialogFK C25@5=K GB> E>B8B5 70:@KBL >:=>?4Are you sure you want to close the schedule dialog ?scheduleDialog 23CABAugustscheduleDialog023CAB0full phrase: 'of August'AugustscheduleDialog B<5=0CancelscheduleDialog#AB0=>28B5 D;06>:, 5A;8 20H :><?LNB5@ =5 ?>445@68205B 3@0D8G5A:CN A@54C (=0?@8<5@, A5@25@)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialog >=A>;L=K9 @568< Console ModescheduleDialog5:01@LDecemberscheduleDialog45:01@Ofull phrase: 'of December'DecemberscheduleDialog\045@6:0 2K?>;=5=8O luckybackup ?>A;5 703@C7:8&Delay luckybackup execution at startupscheduleDialogB>:070BL A>45@68<>5 D09;0 crontabDisplay the current crontabscheduleDialog"K?>;=8BL ?@>D8;LExecute profilescheduleDialog$52@0;LFebruaryscheduleDialogD52@0;Ofull phrase: 'of February'FebruaryscheduleDialogOB=8F0FridayscheduleDialog(5?@028;L=K9 ?@>D8;LInvalid profilescheduleDialog /=20@LJanuaryscheduleDialog O=20@Ofull phrase: 'of January'JanuaryscheduleDialogN;LJulyscheduleDialog8N;Ofull phrase: 'of July'JulyscheduleDialogN=LJunescheduleDialog8N=Ofull phrase: 'of June'JunescheduleDialog0@BMarchscheduleDialog <0@B0full phrase: 'of March'MarchscheduleDialog09MayscheduleDialog<0Ofull phrase: 'of May'MayscheduleDialog87<5=8BL 70?8AL 2 @0A?8A0=88Modify profile schedulescheduleDialogJ7<5=8BL 2K1@0==>5 @0A?8A0=85 ?@>D8;O Modify selected profile schedulescheduleDialog>=545;L=8:MondayscheduleDialogH5 >?@545;5=> =8 >4=>3> @0A?8A0=8O!!No schedules are declared !!scheduleDialog >O1@LNovemberscheduleDialog =>O1@Ofull phrase: 'of November'NovemberscheduleDialog:BO1@LOctoberscheduleDialog>:BO1@Ofull phrase: 'of October'OctoberscheduleDialog@>D8;L: Profile :scheduleDialog>>4@>1=>AB8 70?8A8 2 @0A?8A0=88Profile schedule detailsscheduleDialogH#40;8BL 2K1@0==>5 @0A?8A0=85 ?@>D8;O Remove selected profile schedulescheduleDialog@K?>;=8BL >48= @07, ?@8 703@C7:5Run once, at startupscheduleDialogB>@=8:SaturdayscheduleDialog!5=BO1@L SeptemberscheduleDialogA5=BO1@Ofull phrase: 'of September' SeptemberscheduleDialog@>?CAB8BL 7040G8, :>B>@K5 8<5NB ?@54C?@5645=85 " "'" ?>A;5 ?@>25@:8 :0B0;>3>2SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog:!>740= ?CAB>9 D09; @0A?8A0=8OStarting from scratchscheduleDialog>A:@5A5=L5SundayscheduleDialog!CI5AB2CNI89 D09; @0A?8A0=8O =5 A>2<5AB8< A D09;>< luckyBackup 25@A88 8The existent schedule file is not a valid luckyBackup v.scheduleDialog'5B25@3ThursdayscheduleDialogB>@=8:TuesdayscheduleDialog852>7<>6=> A>740BL cron-D09;Unable to create cron filescheduleDialogD52>7<>6=> A>740BL D09; @0A?8A0=8OUnable to create schedule filescheduleDialog !@540 WednesdayscheduleDialogV 0A?8A0=85 A>45@68B =5A>E@0=Q==K5 87<5=5=8O8You have made changes without clicking the cronIT buttonscheduleDialogn>AB83=CB> <0:A8<0;L=>5 :>;8G5AB2> 70?8A59 2 @0A?8A0=88BYou have reached the maximum limit of supported scheduled profilesscheduleDialogn#40;8B5 :0:>9-;81> M;5<5=B, GB>1K 4>1028BL =>2CN 70?8AL5You have to remove an item if you wish to add anotherscheduleDialog:$09; crontab CA?5H=> >1=>2;Q=$Your crontab is updated successfullyscheduleDialog>1028BLaddscheduleDialog2atscheduleDialog0:@KBLclosescheduleDialog0:@KBL >:=>close this dialogscheduleDialog$>1028BL 2 crontab cronIT !!scheduleDialog0A>45@68<>5 D09;0 crontabcrontab contentscheduleDialog45=LdayscheduleDialog5=L <5AOF0:day of month :scheduleDialog5=L =545;8: day of week :scheduleDialog :064K9everyscheduleDialog0luckyBackup - @0A?8A0=85luckyBackup - schedulescheduleDialog<8=minscheduleDialog7<5=8BLmodifyscheduleDialog 5AOF:month :scheduleDialog->9ndscheduleDialog->9as in 22nd dayndscheduleDialog62 D09;5 crontab =5B 70?8A59no crontab entries existscheduleDialog ofscheduleDialog;N1>3> <5AOF0 of any monthscheduleDialogOKokayscheduleDialog*>48= @07 ?@8 703@C7:5once, at system startupscheduleDialog-89rdscheduleDialog-89as in 23rd dayrdscheduleDialog#40;8BLremovescheduleDialogl>1028BL 2 D09; crontab @0A?8A0=85 2K?>;=5=8O ?@>D8;59@schedule the execution of profiles as declared in the list abovescheduleDialog,@>?CAB8BL :@8B8G5A:85 skip criticalscheduleDialog-K9stscheduleDialog-K9as in 21st daystscheduleDialog-K9as in 31st daystscheduleDialog->9thscheduleDialog-K9as in 10th daythscheduleDialog-K9as in 11th daythscheduleDialog-K9as in 12th....19th daythscheduleDialog-K9as in 20th daythscheduleDialog-K9 as in 9th daythscheduleDialog(@5<O (G0AK:<8=CBK):time (hour:min) :scheduleDialog$09; crontabview current crontabscheduleDialogP@>D8;L A B0:8< =0720=85< C65 ACI5AB2C5B+A profile with the same name already exists textDialogDK C25@5=K, GB> E>B8B5 ?@>4>;68BL?#Are you sure you wish to proceed ?? textDialog!" , 5A;8 2K  =0<5@5=K A>74020BL B>G=CN :>?8N AB>G=8:0 8 07=0G5=8O !!BBEWARE, if your intention is NOT to clone source to destination !! textDialog B<5=0Cancel textDialogB>?8@>20BL :><0=4C 2 1CD5@ >1<5=0Copy command to clipboard textDialogd>;LH5 =5 ?>:07K20BL MB> A>>1I5=85 4;O MB>9 7040G8$Do not show this again for this task textDialog02548B5 ?0@>;L=CN D@07C:Enter passphrase : textDialog2548B5 ?0@>;L:Enter pasword : textDialog@2548B5 =0720=85 =>2>3> ?@>D8;O:#Enter the name of the new profile : textDialog>2548B5 =>2>5 =0720=85 ?@>D8;O:#Enter the new name of the profile : textDialog5BNo textDialogOKOkay textDialogF>60;C9AB0, 22548B5 4@C3>5 =0720=85Please enter a different name textDialog"?8A0=85 ?@>D8;O:Profile description : textDialog0Yes textDialogK 2K1@0;8 B8? " 575@2=0O :>?8O :0B0;>30 AB>G=8:0 2=CB@8 07=0G5=8O"<br>>4=>2@5<5==> A >?F859 "#40;OBL D09;K, :>B>@KE =5B 2 AB>G=8:5"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog8 57C;LB0B 2K?>;=5=8O :><0=4KeMail information textDialogluckyBackup luckyBackup textDialog B<5=0Cancel winDialog\2548B5 ?>;=K9 ?CBL : 8A?>;=O5<><C D09;C rsync(Enter the full path of the rsync command winDialogX2548B5 ?>;=K9 ?CBL : 8A?>;=O5<><C D09;C ssh&Enter the full path of the ssh command winDialog2A?>;=O5<K5 D09;K (*.exe)Executable Files (*.exe) winDialogOKOkay winDialog<#:068B5 ?CBL 4;O 70?CA:0 rsyncSelect rsync command winDialog8#:068B5 ?CBL 4;O 70?CA:0 sshSelect ssh command winDialog>-C<>;G0=8NUse default value winDialog(K1>@ D09;0 =0 48A:5browse locally winDialog"CB8 : ?@>3@0<<0<declaration of paths winDialogluckyBackup luckyBackup winDialog rsync:rsync: winDialog ) , luckybackup-0.5.0/translations/luckybackup_en.ts0000666000175000017500000064145213165410113021500 0ustar luckybluckyb CalcDiffThread Scanning destination Please wait Scanning snapshot Scanning source Calculating differences Sync dir A & B differences Snapshot and source differences Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transfered over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty nothing to start You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting execution of task Full phrase: execution of task: <TASKNAME> starting starting Full phrase: execution of task: <TASKNAME> starting Source Full phrase: source: <SOURCE_NAME Destination Full phrase: Destination: <DEST_NAME execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-A> to <DIR-B> to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-B> to <DIR-A> to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished finished Full phrase: execution of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available no errors errors found status OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog Backup & Sync Application Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Debian package maintainer Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink port to Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Czech gui translator Stergios Prosiniklis Greek manual translator German gui translator Wilfried Schobel Sergio Gameiro Portuguese gui translator Marcio Moraes Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Italian gui translator using Qt António Correia Aurelien Merckel Denis Skorski Russian gui translator and valuable tester Kenny Verstraete Dutch gui translator Martin Grashoff (linuxrev) Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Arabic gui translator Adrian Murariu Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero v0.3 gui designer fri13 v.0.3 gui designer Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the forums for their support. Especially that contributed to this project one way or another Last but no least Could not locate the license file no money If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Vote good & become a fan at: This is my reward :) money I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link luckyBackup - about close &About <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support A&uthor &Thanks to &License Agreement luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay Close dialog Cancel Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help manual/ Okay logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error next error close loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time pre-task execution of command post-task execution of command Now performing task Directory calculating deleting files Total files transferred trying to send an email The system will shutdown in 1 minute Source Destination All tasks completed No errors found errors found logfile(s) have been created under directory: Done execution of profile: finished Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label add task add task button tooltip remove remove task button label remove highlighted task remove task button tooltip modify modify task button label modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 English English &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES NO Description saving default profile ... Information window message saving profile ... Information window message WARNING default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. English Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+X Ctrl+D F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile task Delete Restore view log destination: source: hide source Close this window Close Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time Delete backup this is the title of a wizard Date & time simple label of the wizard gui Path ...is a directory path WARNING You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors errors found Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error Jump to next error next error This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT cancel The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Source Task properties Enter a name for this task (eg "Backup my home directory") Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay Cancel Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Task description Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay Cancel Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add Modify selected profile schedule modify Remove selected profile schedule remove Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup Okay Cancel Copy command to clipboard eMail information No Yes winDialog luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Cancel Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_bg.qm0000666000175000017500000011544013157502317021457 0ustar luckybluckyb@\A\B\C]D].E]WF]G]H]I]P^JQ^sR^S^T^U_V_>W_gX_Y_``a`1FPF|/F;jO }D<V< S5>HYi]Sq]L_0gLgYg|j~ssz[ffCfXOADyF9pEq5FN~Na7ca8aXa[aEa@Th7Za@T~"&%\+B+B:FZ9! HxiJ6SJwBDBPdSqT6[Y\ZY`4 j6.2j6?{j6}?l̙:mC/q+\td/zWp#} 5Jp2-L3$O/Jĉ;pYS :~zgtn!b+&0f6FP9GjI|uQ19k_/(hwtc/}yѐS(S ,'6{ _$#ur/r{|BIsR!1{ZI|cRBTWC@ CANOIY{*5VRU&EU&*߬_rU5MiJviU}^q9OWpc4_MVU%0d `nL0yhuϗqE ‰ad>"B, Plw[*jI6KIkkIAIBCCPC,T/. *o a85/n_9:R(FJskG3 H7:Xl@vxȕȕJȕXXt4Jxbî" pt?8 ".}C8&KOG_Av"phnihnY&kՒ@ kՒV|tvbIV"IZtW=sli`X읒X# X| 5l;-z>VENE`xe\5_gm.Dh2FRF[pFUNUTuGj7 RavUDxn*""8ߖ&Y"-(JεuhL 3PO m455Dvhʴ5BUrl'$i*  *{ 6 ]Q j^. lI -B ' Ԡ; ׊$K =_ .x 6 c22 -0U fLh  i c XB" b ,AL GC+ hr+ t$ H T7 i  jo 93B's ;A L9z~ T,8^ Z-n _y/F f4` g.w g.wL+ g.wU kw6 Yo Y Ki EhUO LMH N0D vZ V -  "HV Sc a ?B ~ s) )K 6 @ P~ {IK @R W XwO f8 z,< I Y= it 䕜7 c22< 8N^ 8 8 6s= /#YeE7QSJcR0{< R!ruy 36koIex&)N*4?G E NhRN>E:[=c.if/?ln~(N9Y%zt y)DGKy1 ɟ)yʱNRuru ֙SGPl `]( 0.MYePmig>;O 87G0:09B5 Please waitCalcDiffThread2!:0=8@0=5 =0 45AB8=0F8OB0Scanning destinationCalcDiffThread&!:0=8@0=5 =0 A=8<:0Scanning snapshotCalcDiffThread*!:0=8@0=5 =0 87B>G=8:Scanning sourceCalcDiffThread "'CRITICALQObject5AB8=0F8O DestinationQObject,5AB8=0F8O =0 48@5:F8ODestination directoryQObject48@5:F8O DirectoryQObject >1@5OKQObject7B>G=8:SourceQObject!8=E@>=878@0=5SyncingQObject!8=E@>=878@0=5'Full phrase: Syncing to SyncingQObject(>?8A0=85 =0 7040G0B0Task descriptionQObject # WARNINGQObject 8/8;8and/orQObject:><0=40: command: QObject8CAB0=>28 =0;8G85B> =0 3@5H:8 errors foundQObject:>4 70 87E>4: exit code: QObject702J@H5=>finishedQObject702J@H5=>?Full phrase: execution of 1st part of task: finishedfinishedQObject702J@H5=>3Full phrase: execution of task: finishedfinishedQObject702J@H5=>CFull phrase: post-task execution of COMMAND: finishedfinishedQObject5 ?@07=>is emptyQObject=5 5 <>=B8@0=>is not mountedQObject=O<0 3@5H:8 no errorsQObject=5 5 =0;8G5= not availableQObject87;870=5: output: QObject?CA:0=5startingQObject?CA:0=5?Full phrase: execution of 1st part of task: startingstartingQObject?CA:0=5?Full phrase: execution of 2nd part of task: startingstartingQObject?CA:0=53Full phrase: execution of task: startingstartingQObject?CA:0=5?Full phrase: post-task execution of command: startingstartingQObject AB0BCAstatusQObject:J<toQObject:J<'Full phrase: Syncing to toQObject&B=>A=>&About aboutDialog 8F5=7&License Agreement aboutDialog>44@J6:0&Support aboutDialog;03>40@O =0 &Thanks to aboutDialog<...=0 2A8G:8B5 ?>B@518B5;8 =0 ...to all users of the  aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialogAphofis Scott Aphofis Scott aboutDialog^@01A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Arabic gui translator aboutDialogB8=0,J@F8OAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialog>A=5=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4 8 >B3>2>@=8: 70 ?0:5B8@0=5 =0 mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialogd0B0;>=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Catalan gui translator aboutDialogH5 <>60E 40 =0<5@O ;8F5=78@0=8O D09;!Could not locate the license file aboutDialogd'5H:8 ?@52>40G =0 3@0D8G5= ?>B@518B5;A:8 8=B5@D59ACzech gui translator aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogb%>;0=4A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Dutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialog!?5F80;=> Especially aboutDialog`AB>=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Estonian gui translator aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog^$@5=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4French gui translator aboutDialogb5@<0=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4German gui translator aboutDialog4;0AC209B5 ?>;>68B5;=> =0:Give a thumbs up at: aboutDialog|@JF:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4 8 F5=5= B5AB5@ (Greek gui translator and valuable tester aboutDialog<@52>40G =0 3@JF:> @J:>2>4AB2>Greek manual translator aboutDialogD8G=> =8:>30 =5 AJ< ?>;CG020; ?0@8DI personally never had and never will accept money for this project. aboutDialog:> =5 15H5 Dimitris 8 =53>28B5 C@>F8,=8:>30 =5 18; AJ740; B>78 ?@>5:BJIf it wasn't him and his tutorials I would never have started this project aboutDialog:> 28 E0@5A20 B>20 ?@8;>65=85 8 18EB5 8A:0;8 40 40@8B5 =5I> ;8G=> 70 <5=,2A8G:> :>5B> B@O120 40 =0?@028B5 5 A;54=>B>:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogdB0;80=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Italian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogB =0:@0O, => =5 =0 ?>A;54=> <OAB>Last but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogJ?@5:8 B>20, @5H8E 40 87?>;720< luckyBackup 70 40 ?>4:@5?O E>@0B0,:>9B> 8<0B =08AB8=0 =C640 >B D8=0=A>20 ?><>I.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogf>@BC30;A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Portuguese gui translator aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogd C<J=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>40GRomanian gui translator aboutDialogx CA:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4 8 F5=5= B5AB5@*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogSergio GameiroSergio Gameiro aboutDialogb!;>25=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Slovak gui translator aboutDialogl!;>25=A:8 ?@52>40G =0 3@0D8G5= ?>B@518B5;A:8 8=B5@D59ASlovenian gui translator aboutDialog"0:0 G5 <>;O ?><8A;5B5 A5@8>7=> 70 40 40@8B5 ?0@8,:>8B> 2 :@09=0 A<5B:0,I5 1J40B 87?>;720=8 70 4>1@0 :0C70._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog`A?0=A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Spanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog^(254A:8 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A ?@52>4Swedish gui translator aboutDialog:8? indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog.">20 5 <>OB0 =03@040 :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogf"C@A:8 ?@52>40G =0 3@0D8G5= ?>B@518B5;A:8 8=B5@D59ATurkish gui translator aboutDialogP;0AC209B5 ?>;>68B5;=> 8 AB0=5B5 D5= =0:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialog@ 0728B85 =0 ?@>3@0<0B0 70 python&backupwhenidle python script developer aboutDialog0B20@O=5close aboutDialog$2@J7:0 :J< 40@5=85 donation link aboutDialog$?>4:@5?0 >B D>@C<8forums for their support. aboutDialog fri13fri13 aboutDialog*luckyBackup - >B=>A=>luckyBackup - about aboutDialog0@8money aboutDialog157 ?0@8no money aboutDialog,?>@B20=5 =0 MS Windowsport to MS Windows aboutDialog(?>@B20=5 =0 Mac OS Xport to Mac OS X aboutDialog ?>@B20=5 =0 OS/2 port to OS/2 aboutDialog6special guest bug killer ;)special guest bug killer ;) aboutDialogn:>9B> 4>?@8=5A>E0 70 B>78 ?@>5:B ?> 548= 8;8 4@C3 =0G8=3that contributed to this project one way or another aboutDialogh25@A8O 0.3 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A 48709=5@v.0.3 gui designer aboutDialogh25@A8O 0.3 3@0D8G5= ?>B@518B5;A:8 8=B5@D59A 48709=5@v0.3 gui designer aboutDialogTF5=5= B5AB5@ 8 A?5F80;8AB ?> brainstorming*valuable tester & brainstorming specialist aboutDialog"%c logfile.tar.gz%c logfile.tar.gz emailDialog%d 40B0%d date emailDialog"%e @>9 =0 3@5H:8%e No of errors emailDialog %f >B:%f from: emailDialog %i G0A%i time emailDialog%l log D09; %l logfile emailDialog %p 8<5 =0 ?@>D8;%p profile name emailDialog%t :J<:%t to: emailDialog@3C<5=B8 Arguments emailDialog B:07Cancel emailDialog(0B20@O=5 =0 480;>30 Close dialog emailDialog 8:>30Never emailDialog08:>30 =5 87?@0I09 8<59;Never send an email emailDialog >1@5Okay emailDialog@>25@:0Test emailDialog67?>;7209B5 ?> ?>4@0718@0=5 Use default emailDialog:><0=40:command: emailDialog8luckyBackup- 5;5:B@>=0 ?>I0 luckyBackup - email emailDialog >1@5Okay helpBrowser&luckyBackup - ><>IluckyBackup - help helpBrowsermanual/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog70B20@O=5close logDialog,70@5640=5 =0 log D09;0loading logfile... logDialogA;5420I0 3@5H:0 next error logDialog?@548H=0 3@5H:0previous error logDialog87G0:09B5wait logDialog@5:JA20=5&AbortluckyBackupWindow&B=>A=>&AboutluckyBackupWindow&7B@820=5&DeleteluckyBackupWindow(&8=8<878@0=5 2 tray&Minimize to trayluckyBackupWindow&>2&NewluckyBackupWindow &7E>4&QuitluckyBackupWindow&J7AB0=>2O20=5&RestoreluckyBackupWindow&0?0720=5&SaveluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindow5AB8=0F8O DestinationluckyBackupWindow0B0;>3 DirectoryluckyBackupWindow  (ERRORluckyBackupWindow %EXITluckyBackupWindow7<8=0;> 2@5<5 Elapsed timeluckyBackupWindow=3;89A:8EnglishluckyBackupWindow=3;89A:8Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow 7E>4ExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindow0:;NG20=5LockluckyBackupWindowNOluckyBackupWindow @>D8;ProfileluckyBackupWindow @>D8;PQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindow @>D8;IQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow @>D8;9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow @>D8;Jfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow @>D8;Gfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow @>D8;lfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow @>D8;3full phrase: 'Profile set as default'ProfileluckyBackupWindow7B>G=8:SourceluckyBackupWindow"A?8AJ: AJA 7040G8 Task listluckyBackupWindow"58725AB=0 3@5H:0 Unknown errorluckyBackupWindow"58725AB=0 3@5H:0this refers to a process Unknown errorluckyBackupWindowWARNINGluckyBackupWindow>1@5 4>H;8 2 Welcome toluckyBackupWindowYESluckyBackupWindow4>102O=5addluckyBackupWindow.AJ74020=5 =0 ?@>D8; ...creating profile ...luckyBackupWindow8CAB0=>28 =0;8G85B> =0 3@5H:8 errors foundluckyBackupWindow A2J@H8:full phrase: 'Execution of profile finished'finishedluckyBackupWindowluckyBackup luckyBackupluckyBackupWindow87<5=O20=5modifyluckyBackupWindow ?@>D8;profileluckyBackupWindow ?@>D8;VInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow ?@>D8;SInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow ?@>D8;UInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow ?@>D8;SInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow ?@>D8;Mfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow?@>D8; profile luckyBackupWindow?@5<0E20=5removeluckyBackupWindow.70?0720=5 =0 ?@>D8; ...saving profile ...luckyBackupWindow87:;NG20=5shutdownluckyBackupWindow AB0BCAstatusluckyBackupWindow:J<toluckyBackupWindow25@A8O:version:luckyBackupWindow0B2>@8Close manageDialog*0B2>@8 B>78 ?@>7>@5FClose this window manageDialog7B@820=5Delete manageDialogSTOPSTOP manageDialog=5 5 =0;8G5= not available manageDialog ?@>D8;profile manageDialog0B0 & G0A Date & time manageWizard7B@89 backup Delete backup manageWizard$J7AB0=>28 backup Restore backup manageWizardWARNING manageWizard >B<O=0cancel manageWizard8CAB0=>28 =0;8G85B> =0 3@5H:8 errors found manageWizardA;5420I0 3@5H:0 next error manageWizard=O<0 3@5H:8 no errors manageWizard=5 5 =0;8G5= not available manageWizard?@548H=0 3@5H:0previous error manageWizard AB0@Bstart manageWizardBackup D09;>25 Backup files modifyDialog5AB8=0F8O Destination modifyDialog <5 :Name : modifyDialog >1@5Okay modifyDialog7B>G=8:Source modifyDialog(>?8A0=85 =0 7040G0B0Task description modifyDialog >HG5Trash modifyDialog>B@518B5;:User: modifyDialog4>102O=5add modifyDialog&;>:0;=> @073;5640=5browse locally modifyDialog >B<O=0cancel modifyDialog@540:B8@0=5edit modifyDialog?@5<5AB8 =04>;C move down modifyDialog?@5<5AB8 =03>@5move up modifyDialog?@5<0E20=5remove modifyDialogsshssh modifyDialog >1@5Okay patternEditorD09; filescheduleDialog=0& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog70102O=5:delayscheduleDialogR<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"># <html><head><meta name="qrichtext" content="1" /><style type="text/css"># p, li { white-space: pre-wrap; }# </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"># <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">@>3@0<8@0=> 87?J;=5=85 =0 ?@>D8;</span></p></body></html>

Profile execution scheduling

scheduleDialog@5AB0@B8@0=5@ rebootscheduleDialog>>102O=5 =0 =>2 ?@>D8; ?@>3@0<0Add a new profile schedulescheduleDialog6>102O=5 =0 ?@>D8; ?@>3@0<0Add profile schedulescheduleDialog:>5B> 8 40 5AnyscheduleDialog ?@8;AprilscheduleDialog ?@8;full phrase: 'of April'AprilscheduleDialog|!83C@=8 ;8 AB5,G5 8A:0B5 40 70B2>@8B5 480;>30 70 ?@>3@0<8@0=5?4Are you sure you want to close the schedule dialog ?scheduleDialog 23CABAugustscheduleDialog 23CABfull phrase: 'of August'AugustscheduleDialog B:07CancelscheduleDialog715@5B5 B>20,0:> 20H0B0 <0H8=0 =5 ?>44J@60 3@0D8G=0 A@540 (?@8<5@=> AJ@2J@)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialog>=7>;5= @568< Console ModescheduleDialog5:5<2@8DecemberscheduleDialog5:5<2@8full phrase: 'of December'DecemberscheduleDialog0102O=5 AB0@B8@0=5B> =0 luckybackup ?@8 AB0@B8@0=5 =0 :><?NBJ@0&Delay luckybackup execution at startupscheduleDialog*86B5 B5:CI8O crontabDisplay the current crontabscheduleDialog(72J@H20=5 =0 ?@>D8;Execute profilescheduleDialog$52@C0@8FebruaryscheduleDialog$52@C0@8full phrase: 'of February'FebruaryscheduleDialog 5BJ:FridayscheduleDialog 520;845= ?@>D8;Invalid profilescheduleDialog /=C0@8JanuaryscheduleDialog /=C0@8full phrase: 'of January'JanuaryscheduleDialog.;8JulyscheduleDialog.;8full phrase: 'of July'JulyscheduleDialog.=8JunescheduleDialog.=8full phrase: 'of June'JunescheduleDialog0@BMarchscheduleDialog0@Bfull phrase: 'of March'MarchscheduleDialog09MayscheduleDialog09full phrase: 'of May'MayscheduleDialog4@><O=0 =0 ?@>D8; ?@>3@0<0Modify profile schedulescheduleDialogN7<5=O20=5 =0 871@0= ?@>D8; >B ?@>3@0<0 Modify selected profile schedulescheduleDialog>=545;=8:MondayscheduleDialog>5<2@8NovemberscheduleDialog>5<2@8full phrase: 'of November'NovemberscheduleDialog:B><2@8OctoberscheduleDialog:B><2@8full phrase: 'of October'OctoberscheduleDialog @>D8; Profile :scheduleDialog45B09;8 =0 ?@>D8; ?@>3@0<0Profile schedule detailsscheduleDialogN@5<0E20=5 =0 871@0= ?@>D8; >B ?@>3@0<0 Remove selected profile schedulescheduleDialog8CA=8 254=J6, ?@8 AB0@B8@0=5Run once, at startupscheduleDialog !J1>B0SaturdayscheduleDialog!5?B5<2@8 SeptemberscheduleDialog!5?B5<2@8full phrase: 'of September' SeptemberscheduleDialog@5?CA=8 7040G8,:>9B> 8<0B ?@54C?@548B5;=> AJ>1I5=85 ":@8B8G=>" A;54 ?@>25@:0 =0 48@5:B>@88SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog 545;OSundayscheduleDialog!JI5AB2C20I8O ?@>3@0<8@0= D09; =5 5 20;845= D09; =0 luckyBackup 25@A8O.8The existent schedule file is not a valid luckyBackup v.scheduleDialog'5B2J@BJ:ThursdayscheduleDialogB>@=8:TuesdayscheduleDialogL5H5 =52J7<>6=> AJ74020=5 =0 cron D09;Unable to create cron filescheduleDialog !@O40 WednesdayscheduleDialog|85 AB5 =0?@028;8 ?@><5=8, 157 40 I@0:=5B5 2J@EC 1CB>=0 cronIT8You have made changes without clicking the cronIT buttonscheduleDialog"@O120 40 ?@5<0E=5B5 4045= 5;5<5=B, 0:> 65;05B5 40 4>1028B5 4@C35You have to remove an item if you wish to add anotherscheduleDialog8crontab CA?5H=> 0:BC0;878@0=$Your crontab is updated successfullyscheduleDialog4>102O=5addscheduleDialog2atscheduleDialog0B20@O=5closescheduleDialog,0B20@O=5 =0 B>20 ?>;5close this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog*AJ4J@60=85 =0 contentcrontab contentscheduleDialog45=dayscheduleDialog45= >B <5A5F0day of month :scheduleDialog 45= >B A54<8F0B0 day of week :scheduleDialog 2A5:8everyscheduleDialog(luckyBackup-?@>3@0<0luckyBackup - schedulescheduleDialog <8=CB8minscheduleDialog87<5=O20=5modifyscheduleDialogB8ndscheduleDialogB8as in 22nd dayndscheduleDialogH=5 AJI5AB2C20B AJ4J@60=8O =0 crontabno crontab entries existscheduleDialogotofscheduleDialog2A5:8 <5A5F of any monthscheduleDialog >1@5okayscheduleDialogD254=J6,?@8 AB0@B8@0=5 =0 A8AB5<0B0once, at system startupscheduleDialogB8rdscheduleDialogB8as in 23rd dayrdscheduleDialog?@5<0E20=5removescheduleDialog3@0D8:0 =0 87?J;=5=85 =0 ?@>D8;8, :0:B> 5 70O25=> 2 3>@=8O A?8AJ:@schedule the execution of profiles as declared in the list abovescheduleDialog&?@5?CA=5B5 :@8B8G5= skip criticalscheduleDialogB8stscheduleDialogB8as in 21st daystscheduleDialogB8as in 31st daystscheduleDialogB8thscheduleDialogB8as in 10th daythscheduleDialogB8as in 11th daythscheduleDialogB8as in 12th....19th daythscheduleDialogB8as in 20th daythscheduleDialog8as in 24th...30th daythscheduleDialogB8 as in 8th daythscheduleDialogB8 as in 9th daythscheduleDialog(2@5<5 (G0A:<8=CB8) :time (hour:min) :scheduleDialog*86B5 B5:CI8O crontabview current crontabscheduleDialogJ@>D8; AJA AJI>B> 8<5 25G5 AJI5AB2C20+A profile with the same name already exists textDialogN!83C@5= ;8 AB5,G5 8A:0B5 40 ?@>4J;68B5?#Are you sure you wish to proceed ?? textDialogB:0720=5Cancel textDialogB>?8@0=5 =0 :><0=40B0 2 :;8?1>@40Copy command to clipboard textDialogL5 ?>:07209 B>20 >B=>2> 70 B078 7040G0$Do not show this again for this task textDialogJ2545B5 ?0@>;0Enter passphrase : textDialogJ2545B5 ?0@>;0Enter pasword : textDialog@J2545B5 =>2> 8<5 70 B>78 ?@>D8;#Enter the name of the new profile : textDialog@J2545B5 =>2> 8<5 70 B>78 ?@>D8;#Enter the new name of the profile : textDialog5No textDialog >1@5Okay textDialog.>;O 2J2545B5 4@C3> 8<5Please enter a different name textDialog @>D8; >?8A0=85:Profile description : textDialog0Yes textDialog 8<59; 8=D>@<0F8OeMail information textDialogluckyBackup luckyBackup textDialogB:0720=5Cancel winDialog >1@5Okay winDialog&;>:0;=> @073;5640=5browse locally winDialog,45:;0@0F8O =0 ?JB5:0B0declaration of paths winDialogluckyBackup luckyBackup winDialog rsync:rsync: winDialogluckybackup-0.5.0/translations/luckybackup_cs.ts0000666000175000017500000071003613165410113021476 0ustar luckybluckyb CalcDiffThread Scanning destination Prohledává se cíl Please wait Počkejte, prosím Scanning snapshot Prohledává se snímek Scanning source Prohledává se zdroj Calculating differences Počítají se rozdíly Sync dir A & B differences Rozdíly seřizovacích adresářů A & B Snapshot and source differences Rozdíly snímku a zdroje Sync dir B data that also exists at sync dir A and is different Data seřizovacího adresáře B, která jsou rovněž v seřizovacím adresáři A a jsou rozdílná Snapshot data that also exists at the source and is different Data snímku, která existují rovněž ve zdroji a jsou rozdílná The snapshot data will replace the source data during RESTORE Data snímku nahradí během OBNOVY data zdroje Data amount is huge. Displaying only first entries Množství dat je ohromné. Zobrazují se pouze první záznamy Sync dir B data that do NOT exist at sync dir A Data seřizovacího adresáře B, která NEEXISTUJÍ v seřizovacím adresáři A Snapshot data that do NOT exist at the source Data snímku, která NEEXISTUJÍ ve zdroji These will be transferred over at the source during RESTORE Tato budou během OBNOVY ve zdroji přenesena Sync dir A data that do NOT exist at sync dir B Data seřizovacího adresáře A, která NEEXISTUJÍ v seřizovacím adresáři B Source data that do NOT exist at the snapshot Data zdroje, která NEEXISTUJÍ ve snímku These will be deleted during RESTORE only if you enable the option: Tato budou během OBNOVY smazána pouze tehdy, když povolite volbu: delete existing source data that do not exist at the backup Smazat stávající zdrojová data, která nejsou v záloze QObject The task list is empty Seznam úkolů je prázdný nothing to start není do čeho se pustit You have included both of the following connected tasks: Zařadil jste oba následující spojené úkoly: this is not allowed for obvious reasons toto není ze zřejmých důvodů povoleno Please <b>uncheck appropriate include boxes</b> before proceeding Prosím <b>zrušte označení fajfkou příslušného zařazovacího políčka</b> předtím, než budete pokračovat You have not included any tasks Nezařadil jste žádné úkoly The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Následující zařazené úkoly <b>sdílejí tentýž cílový adresář</b> (všechny dohromady nebo ve skupinách) a alespoň jeden z nich bude zálohovat obsah adresáře this will lead to one task canceling the other toto povede k tomu, že jeden úkol bude rušit jiný Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Zrušte, prosím, označení fajfkou příslušného zařazovacího políčka, nebo změňte všechny typy úkolů na jiný než '<b>Zálohovat obsah adresáře</b>', nebo použijte 'Zálohovat obsah adresáře' společně s volbou '<b>Pouze zařadit</b>', předtím, než budete pokračovat pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Vykonání příkazu před úkolem starting Full phrase: pre-task execution of command: <COMMAND> starting se spouští Command re-run due to failure This means that a specific command is run for once more because it failed the first time Opětovné spuštění příkazu z důvodu předchozího selhání při vykonání post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Vykonání příkazu po úkolu starting Full phrase: post-task execution of command: <COMMAND> starting se spouští execution of task Full phrase: execution of task: <TASKNAME> starting Vykonání úkolu starting Full phrase: execution of task: <TASKNAME> starting se spouští Source Full phrase: source: <SOURCE_NAME Zdroj Destination Full phrase: Destination: <DEST_NAME Cíl execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Vykonání první části úkolu starting Full phrase: execution of 1st part of task: <TASKNAME> starting se spouští Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Seřizuje se to Full phrase: Syncing <DIR-A> to <DIR-B> vůči execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Vykonání druhé části úkolu starting Full phrase: execution of 2nd part of task: <TASKNAME> starting se spouští Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Seřizuje se to Full phrase: Syncing <DIR-B> to <DIR-A> vůči pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Vykonání příkazu před úkolem finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished dokončen post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Vykonání příkazu po úkolu finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished dokončen execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Vykonání první části úkolu finished Full phrase: execution of 1st part of task: <TASKNAME> finished dokončen execution of task Full phrase: execution of task: <TASKNAME> finished Vykonání úkolu finished Full phrase: execution of task: <TASKNAME> finished dokončen execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error Vykonání úkolu finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error ukončeno z důvodu chyby ve vykonání příkazu před úkolem/po úkolu The process reported an error Proces nahlásil chybu Backing-up profile, logfiles and snapshot data Zálohuje se profil, soubory se zápisy a data snímku Could not open the logfile Soubor se zápisem nebyl otevřen The logfile does not exist Soubor se zápisem neexistuje The specified command is probably not installed Zadaný příkaz pravděpodobně není nainstalován The logfile could not be created Soubor se zápisem nebyl vytvořen command: Příkaz: exit code: Kód ukončení: output: Výstup: Last execution time Čas posledního vykonání not available Nedostupný no errors Žádné chyby errors found Byly nalezeny chyby status Stav OK OK Sync directory Seřídit adresář Source directory Zdrojový adresář Using remote, check is skipped Používá se vzdálený hostitelský počítač, ověření je přeskočeno Destination directory Cílový adresář free as in free disk space volné WARNING VAROVÁNÍ I do not have the permission to read/enter sync directory A Nemám oprávnění pro čtení/vstup do seřizovacího adresáře A I do not have the permission to read/enter the source directory Nemám oprávnění pro čtení/vstup do zdrojového adresáře I do not have the permission to read/enter sync directory B Nemám oprávnění pro čtení/vstup do seřizovacího adresáře B I do not have the permission to read/enter the destination directory Nemám oprávnění pro čtení/vstup do cílového adresáře Directory Adresář and/or a/nebo does not exist neexistuje is not mounted Není připojen is empty or does not exist je prázdný nebo neexistuje I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option <font color=orange><b>NEPŘESKOČÍM</b></font> tento úkol, protože jste povolil volbu "Obejít VAROVÁNÍ" This task will be <font color=red><b>skipped</b></font> Tento úkol <font color=red><b>bude přeskočen CRITICAL KRITICKÝ is empty je prázdný I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway <font color=orange><b>Nepřeskočím</b></font> tento úkol. Seřízení bude tak jako tak provedeno This task will <font color=orange><b>not be skipped Tento úkol<font color=orange><b>nebude přeskočen The Destination Directory will be created if it doesn't exist and filled with new backup data Cílový adresář bude vytvořen, pokud neexistuje, a bude naplněn novými záložními daty Task description Popis úkolu aboutDialog using Qt4 Používá Qt4 Backup & Sync Application Program pro zálohování & seřizování Loukas Avgeriou Loukas Avgeriou It 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. Je šířen v naději, že bude užitečný, ale BEZ JAKÉKOLI ZÁRUKY; rovněž bez mlčky předpokládané záruky PRODEJNOSTI nebo VHODNOSTI PRO KONKRÉTNÍ ÚČEL. See the 'License Agreement' tab for more details. Kvůli dalším podrobnostem si prohlédněte kartu 'Povolení'. Athens, Greece Athény, Řecko Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Oficiální správce (AUR) balíčku/pkgbuild pro Arch linux Valuable advisor Cenný poradce Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Výrobce rpm balíčků, cenný testér a poradce ve věcech dálkového připojení Patrick Matthaei Patrick Matthaei Debian package maintainer Správce balíčku pro Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Překladatel řeckého grafického rozhraní a cenný testér The indifex team Lidem z indifexu for developing the wonderful transifex localization platform and providing it for free za vývoj skvělého systému na správu překladů a jeho poskytování zdarma Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Správce balíčku pro OpenSUSE (KDE4 repozitář společenství) a cenný rádce pro balení Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Správce balíčku pro Mepis (repozitář společenství) & překladatel grafického uživatelského rozhraní do španělštiny Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Správce balíčku pro Ubuntu (odpalovací rampa PPA) Bruce Marriner Bruce Marriner port to MS Windows Přenos na MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Přispěvatel kódem pro vzdálenou podporu a podporu vss týkající se přenesení na Windows Jack Fink Jack Fink port to Mac OS X Přenos na Mac OS X Elbert Pol Elbert Pol port to OS/2 Přenos na OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Správce sestavení pro Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Živitel štěňátka a správce sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Správce balíčku pro Mandrivu (veřejný sklad balíčků Contrib) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Správce balíčku pro Free BSD Dimitris Jemos Dimitris Jemos Slackel package maintainer Správce balíčku pro Slackel ex Fedora package maintainer Bývalý správce balíčku Fedora Pavel Fric Pavel Fric Czech gui translator Překladatel grafického uživatelského rozhraní do češtiny Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Překladatel grafického uživatelského rozhraní do řečtiny German gui translator Překladatel grafického uživatelského rozhraní do němčiny Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Překladatel grafického uživatelského rozhraní do portugalštiny Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Překladatel grafického uživatelského rozhraní do francouštiny a cenný rádce pro balení (a nejen to) Raffaele Raffaele Italian gui translator Překladatel grafického uživatelského rozhraní do italštiny Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Překladatel grafického uživatelského rozhraní do ruštiny a cenný testér Kenny Verstraete Kenny Verstraete Dutch gui translator Překladatel grafického uživatelského rozhraní do nizozemštiny Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Překladatel grafického uživatelského rozhraní do bosenštiny a správce balíčku pro Mandrivu Majed Sahli Majed Sahli Arabic gui translator Překladatel grafického uživatelského rozhraní do arabštiny Adrian Murariu Adrian Murariu Romanian gui translator Překladatel grafického uživatelského rozhraní do rumunštiny Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Javi Romero Javi Romero v0.3 gui designer Návrhář grafického uživatelského rozhraní v. 0.3 fri13 fri13 v.0.3 gui designer Návrhář grafického uživatelského rozhraní v. 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Kdyby nebylo jeho a jeho návodů, nikdy bych nezačal s tímto projektem Thomas Glatt Thomas Glatt French gui translator Překladatel grafického uživatelského rozhraní do francouzštiny Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Překladatel grafického uživatelského rozhraní do španělštiny Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Překladatel grafického uživatelského rozhraní do švédštiny Catalan gui translator Překladatel grafického uživatelského rozhraní do katalánštiny Slovak gui translator Překladatel grafického uživatelského rozhraní do slovenštiny Rivo Zangov Rivo Zangov Estonian gui translator Překladatel grafického uživatelského rozhraní do estonštiny Nicolay Boychev Nicolay Boychev Bulgarian gui translator Překladatel grafického uživatelského rozhraní do bulharštiny Manuel Meixide Manuel Meixide Galician gui translator Překladatel grafického uživatelského rozhraní do galicijštiny Roger Foss Roger Foss Norwegian gui translator Překladatel grafického uživatelského rozhraní do norštiny Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Překladatel grafického uživatelského rozhraní do čínštiny (Tchaj-wan) Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Zabiják zvláštních chyb :-) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Cenný zkoušeč a odborník na hledání nových nápadů Yuri Vidal Yuri Vidal backupwhenidle python script developer Vývojář pythonovského skriptu backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester Cenný zkoušeč programu v operačních systémech OS/2 a Windows ...to all users of the ...všem uživatelům forums for their support. Fórům pro jejich podporu. Especially Obzvláště that contributed to this project one way or another kteří přispěli tomuto projektu tím neb oním způsobem Last but no least V neposlední řadě Could not locate the license file Soubor s licencí nelze najít no money Žádné peníze If you like this app and would like to donate something to me personally, all you have to do is: Pokud se vám tento program líbí a chtěl byste mi osobně něco darovat, vše, co musíte udělat, je: Give a thumbs up at: Dát palce nahoru na: Vote good & become a fan at: Hlasovat "dobré" & stát se nadšeným obdivovatelem na: This is my reward :) To je moje odměna :-) money Peníze I personally never had and never will accept money for this project. Osobně jsem za tento projekt nikdy neměl nějaké peníze a nikdy je za něj nepřijmu. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Přesto však jsem se rozhodl, že použiju luckyBackup na podporu lidí, kteří finanční pomoc opravdu potřebují. So, please consider it seriously to donate money that will eventually be used for a good cause. Zvažte tedy, prosím, dar peněz, které by se časem použily na dobrý účel. donation link Dárcovský odkaz luckyBackup - about O programu luckyBackup close Zavřít &About &O programu <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Podpora A&uthor A&utor &Thanks to &Poděkování &License Agreement &Povolení luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup je šířen za podmínek <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Je to <b>svobodný program</b>: můžete jej šířit a/nebo upravovat za podmínek GNU General Public License tak, jak jsou zveřejněny Free Software Foundation, verze 3 Licence. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Správce balíčku pro Fedoru (veřejný sklad) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Překladatel grafického uživatelského rozhraní do slovinštiny E. Hakan Duran E. Hakan Duran Turkish gui translator Překladatel grafického uživatelského rozhraní do turečtiny Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Správce balíčku pro Slackware (sklad SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...mojí druhé polovičce, <b>Dimitře</b>, která je se mnou po celou dobu, co je tento projekt vyvíjen emailDialog luckyBackup - email luckyBackup - e-mail Email a report after profile execution Po vykonání profilu poslat zprávu elektronickou poštou command: Příkaz: Use default This means "use the default value for this field" ---------- This means "use the default value for this field" ---------- This means "use the default value for this field" Použít výchozí Arguments Argumenty %f from: %f od: Enter the sender of the message Zadejte odesílatele zprávy %l logfile %l soubor se zápisem %c logfile.tar.gz %c soubor se zápisem.tar.gz %d date %d datum %i time %i čas %p profile name %p název profilu %e No of errors %e žádné z chyb If unchecked "TLS auto" is used. Only available for sendemail Pokud je zrušeno zaškrtnutí, použije se "TLS auto". Dostupné pouze pro sendemail Disable TLS Zakázat TLS %t to: %t do: Enter the recipient of the message Zadejte příjemce zprávy %s subject: %s předmět: Enter the subject of the message Zadejte předmět zprávy %v smtp server: %v smtp server: Enter the smtp server used to send the message Zadejte smtp server, který se použije pro poslání zprávy %b body: %b tělo: Enter the body of the message Zadejte obsah zprávy Send an email right now to test the provided arguments Poslat elektronický dopis hned teď, aby se vyzkoušely poskytnuté argumenty Test Zkouška Accept changes and close dialog Přijmout změny a zavřít dialog Okay OK Close dialog Zavřít dialog Cancel Zrušit Specify the conditions to send an email Určit podmínky pro posílání elektronických dopisů Enter the command to run eg sendemail Zadejte příkaz ke spuštění např. sendemail arguments: Argumenty: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Zadejte argumenty příkazu pro elektronickou poštu např. -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Podmínky Only send when error(s) occurred during a run Poslat jen tehdy, když se během spuštění vyskytla chyba(y) Error(s) occurred Vyskytla se chyba(y) Only send when profile is scheduled to run Poslat jen tehdy, když je profil rozvržen ke spuštění Profile is scheduled Profil je zařazen do rozvrhu Never send an email Nikdy neposílat elektronický dopis Never Nikdy The command field is empty Příkazové pole je prázdné helpBrowser luckyBackup - help luckyBackup - nápověda k programu manual/ Příručka/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - postup vykonání úkolů <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error Předchozí chyba next error Další chyba close Zavřít loading logfile... Nahrává se soubor se zápisem... wait Počkat luckyBackupWindow commands output output window label Výstup příkazů rsync and pre/post task commands output is displayed here tooltip Výstup příkazů rsync a před/po úkolů se zobrazuje zde Task list task list label Seznam úkolů List of all the available tasks task list tooltip - line1 Seznam všech dostupných úkolů Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Použijte "zařadit zaškrtávací políčka" pro zařazení, nebo nezařazení vybraného úkolu Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Vykonání profilu finished full phrase: 'Execution of profile <PROFILENAME> finished' Hotovo simulation mode Režim předstírání Could not update last execution time of tasks Nepodařilo se obnovit čas posledního vykonání úkolů Last execution time of tasks updated Čas posledního vykonání úkolů obnoven &Abort &Předčasně ukončit &Minimize to tray tray menu action &Zmenšit do panelu &Restore tray menu action &Obnovit execution of profile: tray message - execution of profile: <PROFILENAME> in progress... Vykonání profilu: in progress... tray message - execution of profile: <PROFILENAME> in progress... Probíhá... Removed all older snapshots data Odstraněna všechna starší data snímku failed to remove all older snapshots data Nepodařilo se odstranit všechna starší data snímku Unknown error Neznámá chyba Elapsed time Uplynulý čas pre-task execution of command Vykonání příkazu před úkolem post-task execution of command Vykonání příkazu po úkolu Now performing task Nyní se provádí úkol Directory Adresář calculating Počítá se deleting files Soubory se mažou trying to send an email Zkouší se poslání elektronického dopisu The system will shutdown in 1 minute Systém bude vypnut za 1 minutu Source Zdroj Destination Cíl All tasks completed Všechny úkoly byly dokončeny No errors found Nebyly nalezeny žádné chyby errors found Byly nalezeny chyby logfile(s) have been created under directory: Soubor(y) se zápisem(y) byly vytvořeny v adresáři: Done Hotovo execution of profile: Vykonání profilu: finished Hotovo Execution of tasks were terminated violently by user Vykonání úkolů bylo násilně přerušeno uživatelem &Profile This is a top menu item &Profil &Settings This is a top menu item &Nastavení &Language This is a top menu item &Jazyk &Help This is a top menu item &Nápověda &Handbook full phrase: 'luckyBackup Handbook' &Příručka &About full phrase: 'about luckyBackup' &O programu current profile Nynější profil include label of 'include' checkboxes Zařazení Move the highlighted task up, by one position button tooltip Přesunout zvýrazněný úkol nahoru o jednu pozici Move the highlighted task down, by one position button tooltip Přesunout zvýrazněný úkol dolů o jednu pozici jump to next error button tooltip Skočit k další chybě jump to previous error button tooltip Skočit k předchozí chybě Task task groupbox (add, remove, modify buttons) label Úkol add add task button label Přidat add task add task button tooltip Přidat úkol remove remove task button label Odstranit remove highlighted task remove task button tooltip Odstranit zvýrazněný úkol modify modify task button label Upravit modify highlighted task modify task button tooltip Upravit zvýrazněný úkol Begin the execution of all included tasks start button tooltip Začít s vykonáním všech zařazených úkolů NOTE simulation checkbox tooltip - line2 POZNÁMKA Progressbar update will not be realistic simulation checkbox tooltip - line2 Aktualizace ukazatele průběhu nebude realistická Information window information window title Informační okno Exit exit button tooltip. full phrase is: 'exit luckybackup' Ukončit EXIT EXIT button label UKONČIT minimize to tray Zmenšit do panelu minimizes the window to the tray area Zmenšit okno do oblasti panelu F1 F1 English Čeština &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Zažádal jste o to, aby byl vytvořen úkol OBNOVIT Please have a good look at the following task properties dialog 'create restore' message line 2/4 Dobře se, prosím, podívejte na následující dialog vlastností úkolu and change anything you wish before proceeding 'create restore' message line 3/4 a změňte, cokoli si budete přát, předtím, než budete pokračovat Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Obzvláště zkontrolujte zaškrtávací okénka "Název úkolu", "Zdroj", "Cíl" & "Přeskočit novější soubory cíle" (pokročilé volby) ERROR CHYBA loading default profile ... information window message Nahrává se výchozí profil... loading profile ... information window message Nahrává se profil... loading failed information window message Nahrávání selhalo Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Profil nelze otevřít is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y není platným pro version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y verze: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' Profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' byl úspěšně nahrán scheduled this refers to a profile Zařazeno do rozvrhu prací YES ANO NO NE Description Popis saving default profile ... Information window message Ukládá se výchozí profil... saving profile ... Information window message Ukládá se profil... WARNING VAROVÁNÍ default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Výchozí profil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' Profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' byl úspěšně uložen creating default profile ... Information window message Vytváří se výchozí profil... creating profile ... Information window message Vytváří se profil... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' byl úspěšně vytvořen Would you like to save it before proceeding ? Chtěl byste jej uložit předtím, než se bude pokračovat? Would you like to proceed anyway? Chtěl byste přesto pokračovat? super user super user is the root user Superuživatel super user mode Režim superuživatele Welcome to full phrase: 'Welcome to luckyBackup' Vítejte v English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Čeština Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Nepodařilo se vytvořit nový profil The name you have entered contains only invalid characters Název, který jste zadal, obsahuje jen neplatné znaky Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' již existuje Would you like to replace it ? Chtěl byste jej nahradit? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Nepodařilo se nahradit profil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Nepodařilo se přejmenovat profil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' byl úspěšně přejmenován na default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Výchozí profil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' byl úspěšně přejmenován na All relevant files (logs etc) have also been updated Všechny přímo související soubory (zápisy atd.) byly obnoveny také Failed to update all relevant files (logs etc) Nepodařilo se obnovit všechny přímo související soubory (zápisy atd.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Jste si jist, že chcete smazat výchozí profil a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' bude vytvořen nový prázdný profil, se stejným názvem Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Jste si jist, že chcete smazat profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Nepodařilo se smazat profil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' byl úspěšně smazán All relevant files (logs etc) have also been deleted Všechny přímo související soubory (zápisy atd.) byly také smazány Failed to delete all relevant files (logs etc) Nepodařilo se smazat všechny přímo související soubory (zápisy atd.) Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' byl nastaven jako výchozí All relevant files (logs etc) have also been duplicated Všechny přímo související soubory (zápisy atd.) byly také zdvojeny Failed to duplicate all relevant files (logs etc) Nepodařilo se zdvojit všechny přímo související soubory (zápisy atd.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Popis profilu set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' nastaven na Import Profile this is a dialog title Zavedení profilu Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Nepodařilo se zavést profil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' byl úspěšně zaveden as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' jako and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' a přidán do seznamu profilů Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Soubor nelze najít You have reached the maximum limit of supported tasks Dosáhl jste nejvyšší možné meze podporovaných úkolů You have to remove a task if you wish to add another !! Musíte odstranit úkol, pokud si přejete přidat další! Select export directory this is a dialog title for selecting a directory to export a profile to Vybrat adresář pro vyvedení Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Nepodařilo se vyvést profil to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' do Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' byl vyveden úspěšně do The directory you have selected does not contain valid profile data Adresář, který jste vybral, neobsahuje platná data profilu Errors occurred during snapshots and logfiles transfer Během přesunu snímků a souborů se zápisy se vyskytly chyby Errors occurred during snapshots transfer Během přesunu snímků se vyskytly chyby Errors occurred during logfiles transfer Během přesunu souborů se zápisy se vyskytly chyby Errors occurred during the profile file transfer Během přesunu souboru s profilem se vyskytly chyby Please select a task to modify first Vyberte, prosím, úkol, který bude upraven jako první Please select a task to remove first Vyberte, prosím, úkol, který bude odstraněn jako první Are you sure you want to remove the following task ?? Jste si jistý, že chcete odstranit následující úkol? Would you like to also remove: Rád byste také odstranil: Please select a task to manage first Vyberte, prosím, úkol, který bude spravován jako první nothing to do Není co dělat current crontab <font color=green>updated successfully Nynější crontab <font color=green>úspěšně obnoven Email preferences have been <font color=green>updated successfully Nastavení elektronické pošty byla <font color=green>úspěšně obnovena status Stav NOT INCLUDED NEZAŘAZENO Checks are disabled. This task will be <b>skipped</b> Kontroly jsou zakázány. Tento úkol bude <b>přeskočen</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Seznam úkolů profilu and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' a seznam profilů, který je posunutý dolů, je obnoven. refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' obnoveny luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informace CheckBox Zaškrtávací okénko <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Přerušení: Počkejte, prosím, až budou všechny procesy ukončeny Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Odstraňují se staré snímky a soubory se zápisy k úkolu Removing Odstraňuje se failed to remove Nepodařilo se odstranit Failed to start this refers to a process Nepodařilo se spustit Crashed this refers to a process Spadl Timed out this refers to a process Čas překročen Write error this refers to a process Chyba při zápisu Read error this refers to a process Chyba při čtení Unknown error this refers to a process Neznámá chyba calculating info message displayed during ...calculations Počítá se transferring files info message displayed during ...file transfers Přenáší se soubory deleting files info message displayed during ...file deletions Soubory se mažou transferring files Přenáší se soubory Total files transferred Celkový počet přenesených souborů ABORTED Zrušeno &Refresh This is a top 'Profile' menu action &Obnovit De&fault This is a top 'Profile' menu action Vý&chozí Set as Default This is a top 'Profile' menu action tooltip Nastavit jako výchozí &View/Edit Description This is a top 'Profile' menu action &Zobrazit/Upravit popis View/Edit the profile description This is a top 'Profile' menu action tooltip Zobrazit/Upravit popis profilu R&ename This is a top 'Profile' menu action Přejm&enovat &Delete This is a top 'Profile' menu action &Smazat &New This is a top 'Profile' menu action &Nový &Save This is a top 'Profile' menu action &Uložit E&xport This is a top 'Profile' menu action V&yvést &Import This is a top 'Profile' menu action &Zavést S&chedule This is a top 'Profile' menu action R&ozvrh prací E&mail This is a top 'Profile' menu action Elektronický &dopis Email report after profile execution This is a top 'Profile' menu action tooltip Zpráva elektronickou poštou po vykonání profilu &Quit This is a top 'Profile' menu action &Ukončit D&uplicate This is a top 'Profile' menu action Z&dvojit &Task This is a top menu action &Úkol &Add This is a top 'Task' menu action &Přidat &Remove This is a top 'Task' menu action &Odstranit &Modify This is a top 'Task' menu action &Upravit Create D&uplicate task This is a top 'Task' menu action Vytvořit Z&dvojit úkol Create R&estore task This is a top 'Task' menu action Vytvořit O&bnovit úkol Manage &Backup This is a top 'Task' menu action Spravovat &zálohu display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Zobrazit - obnovit - smazat stávající zálohy zvýrazněného úkolu Actions This is a top menu action Činnosti Current Profile This is a top menu action Nynější profil Lock This is a top menu action. Refers to toolbars Zamknout Show text under icons This is a top menu action Ukázat text pod ikonami &Toolbars This is a top menu item &Nástrojové pruhy Set paths This is a top menu action Nastavit cesty Set paths for rsync and ssh commands This is a top menu action tooltip Nastavit cesty pro příkazy rsync a ssh quiet mode Tichý režim Only show errors and important messages during window update Během aktualizace okba ukázat pouze chyby a důležité zprávy Run start button label Spustit Abort Abort button label Zrušit Stop the execution of running tasks NOW Abort button tooltip Zastavit vykonávání běžících úkolů NYNÍ Execution of tasks finished Done button tooltip Vykonání úkolů dokončeno Dry simulation checkbox label. Translate this as 'simulation' Zkouška This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Tímto se provede <b>předstírané spuštění</b>, které neudělá žádné změny (a ve většině případů vede k témuž výstupu, k jakému vede skutečné spuštění) shutdown shutdown button label Vypnutí Press down to shutdown the system when done shutdown button tooltip Stiskněte pro vypnutí systému, když je práce hotova Hide information window show/hide information window button tooltip Skrýt okno s informacemi Show information window show/hide information window button tooltip Ukázat okno s informacemi profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Profil The task list is empty Seznam úkolů je prázdný Use the "add" button on the right to get started Please keep the add word inside quotes Použít tlačítko "Přidat" napravo pro začátek could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' se nepodařilo uložit default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Výchozí profil could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' se nepodařilo vytvořit Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' je upraven Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' se nepodařilo uložit profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Nepodařilo se zdvojit profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Nepodařilo se zdvojit profil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' jako Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' byl úspěšně zdvojen jako Please select a task to duplicate first Vyberte, prosím, úkol, který bude zdvojen jako první Please select a task first Vyberte, prosím, první úkol Hide information window hide/show information window button tooltip Skrýt okno s informacemi Show information window hide/show information window button tooltip Ukázat okno s informacemi You have only included tasks that are going to be skipped Zařadil jste pouze úkoly, které budou přeskočeny Manage Task This is a top 'Task' menu action Spravovat úkol display information regarding highlighted task This is a top 'Task' menu action tooltip Zobrazit informace týkající se zvýrazněného úkolu &Task &Úkol Successfully created destination directory Cílový adresář úspěšně vytvořen Failed to create destination directory Cílový adresář se nepodařilo vytvořit manageDialog profile Profil task Úkol Delete Smazat Restore Obnovit view log Zobrazit zápis destination: Cíl: source: Zdroj: hide source Skrýt zdroj Close this window Zavřít toto okno Close Zavřít Please select a snapshot from the list Information message Vyberte, prosím, snímek ze seznamu This directory does not exist Tento adresář neexistuje This directory does not exist Information message Tento adresář neexistuje I do not have sufficient permissions to read this directory Information message Nemám dostatečná oprávnění pro čtení z tohoto adresáře sync dir A full phrase: sync dir a: <DIRECTORY_A> Seřizovací adresář A sync dir B full phrase: sync dir a: <DIRECTORY_b> Seřizovací adresář B View the logfile of the selected sync task 'view log' pushbutton tooltip Zobrazit soubor se zápisem pro vybraný seřizovací úkol Please wait until the thread is terminated Počkejte, prosím, až bude vlákno ukončeno STOP ZASTAVIT Stop calculations NOW Zastavit výpočty NYNÍ Calculations terminated by user Výpočty byly ukončeny uživatelem not available refers to a date-time Nedostupný luckyBackup - manage backup luckyBackup - správa zálohy Delete the selected snapshot and its logfile Smazat vybraný snímek a soubor se zápisem k němu Restore the selected snapshot Obnovit vybraný snímek View the logfile of the selected snapshot Zobrazit soubor se zápisem pro vybraný snímek Calculate the differences between the source and the selected snapshot Spočítat rozdíly mezi zdrojem a vybraným snímkem Calculate differences Spočítat rozdíly manageWizard not available refers to a date-time Nedostupný Delete backup this is the title of a wizard Smazat zálohu Date & time simple label of the wizard gui Datum & čas Path ...is a directory path Cesta WARNING VAROVÁNÍ You are about to delete backup data information message - line1 Chystáte se smazat data se zálohou If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Pokud je informace výše správná, klepněte na <b>začít</b> pro začátek Restore backup this is the title of a wizard Obnovit zálohu Backup path ...is the backup directory path Cesta k záloze close Zavřít Deleting snapshot logfile info message displayed during ...logfile deletion Maže se soubor se zápisem ke snímku Updating list of snapshots info message displayed during ...snaps list update Obnovuje se seznam snímků Aborted Zrušeno Finished Dokončeno simulation Předstírání no errors Žádné chyby errors found Byly nalezeny chyby Restoring data: main trunk info message displayed during ...data restoration Obnovují se data: hlavní kmen Restoring data: snapshot files info message displayed during ...data restoration Obnovují se data: soubory snímku Deleting data info message displayed during ...data deletion Mažou se data luckyBackup - manage backup luckyBackup - správa zálohy Jump to previous error Skočit k předchozí chybě previous error Předchozí chyba Jump to next error Skočit k další chybě next error Další chyba This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Tímto se provede <b>předstírané spuštění</b>, které neudělá žádné změny (a ve většině případů vede k témuž výstupu, k jakému vede skutečné spuštění) start Začít ABORT ZRUŠIT cancel Zrušit The restore directory will become identical to the backup snapshot Obnovovací adresář se stane totožným se snímkem se zálohou Existing backup files will replace the corresponding files at the restore directory information message - line1. Stávající zálohovací soubory nahradí odpovídající soubory v obnovovacím adresáři If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Pokud je informace výše správná, klepněte na <b>začít</b> pro začátek success info message displayed after ...logfile deletion Podařilo se failed info message displayed after ...logfile deletion Nepodařilo se Deleting file that lists snapshot changes info message displayed during ...file deletion Maže se soubor, který vyjmenovává změny ve snímku success info message displayed after ...file deletion Podařilo se failed info message displayed after ...file deletion Nepodařilo se success info message displayed after ...snapshots list update Podařilo se Select new restore directory directory selection dialog title Vybrat nový obnovovací adresář Restore path ...is the restore directory path Cesta k obnovovacímu adresáři No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Neexistují žádná data příznačná pro snímek. Přeskakuje se... Check this, to clone the backup snapshot to the restore directory. Toto zaškrtněte kvůli klonování snímku se zálohou do obnovovacího adresáře. Delete existing data that do not exist at the backup Smazat stávající data, která nejsou v záloze Browse locally for a new restore path Procházet místně kvůli nové cestě k obnovovacímu adresáři change Změnit <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Jednoduché volby advanced Rozšířené volby Task name Název úkolu Destination Cíl Source Zdroj Task properties Vlastnosti úkolu Enter a name for this task (eg "Backup my home directory") Zadejte název pro tento úkol (např. "Zálohovat můj domovský adresář") Name : Název: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Stanovit druh tohoto úkolu: 1. Zálohovat obsah Zdroje v Cíli 2. Zálohovat Zdrojový adresář podle názvu v Cíli 3. Seřídit Zdroj & Cíl, uchovávaje nejposlednější soubory v obou z nich Type : Druh: Synchronize Source and Destination Seřídit Zdroj a Cíl Enter the full path of the source directory (eg /home/luckyb/) Zadejte celou cestu ke zdrojovému adresáři (např. /home/luckyb/) Source : Zdroj: browse localy Procházet místně Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Zadejte celou cestu k cílovému adresáři (např. /media/backups/SiduxHome/) Destination : Cíl: eg -C4c arcfour,blowfish-cbc Např. -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) S touto volbou rsync přenese ID číselné skupiny a uživatele, spíše než aby použil jméno uživatele a název skupiny a přiřadil je na obou koncích. (--numeric-ids) Use numeric group and user IDs Použít ID číselné skupiny a uživatele This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Toto řekne přijímající straně, aby se pokusila o superuživatelské činnosti, i když přijímající rsync nebyl spuštěn superuživatelem. Tyto činnosti zahrnují: zachování uživatelů přes volbu --owner zachování všech skupin (nejen skupin současného uživatele) přes volbu --groups a kopírování zařízení přes volbu --devices. (--super) Attempt super-user activities Pokusit se o superuživatelské činnosti Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Pokusit se zálohovat otevřené soubory v systému Windows pomocí vss (Pracuje jen na Windows 2000 a novějších) (--vss) Backup open files Zálohovat otevřené soubory Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Obnovit oprávnění pro zálohy ve Windows umístěné v nt-streams (--restore-nt-streams) Repeat any command that fails, x times Opakovat každý příkaz, který selže, x krát Repeat on fail: Opakovat při selhání: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Toto zaškrtnout pro klonování zdroje do cíle Ponechejte nezaškrtnuté pro vytvoření adresáře navíc v cíli Do NOT create extra directory NEVYTVÁŘET adresář navíc Advanced Rozšířené volby Shows the rsync command as it will be executed Ukáže příkaz rsync, jak bude vykonán validate Potvrdit platnost Okay OK Cancel Zrušit Exclude Vyloučit Add any directory, file or pattern to be excluded from this task Přidat kterýkoli adresář, soubor nebo vzor, který má být vyloučen z tohoto úkolu Templates Šablony Exclude all temp folders (**/*tmp*/) Vyloučit všechny složky s dočasnými soubory (**/*tmp*/) Temporary folders Složky s dočasnými soubory Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Vyloučit složky vztahující se k připojování zařízení /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Složky pro připojení systému Exclude all backup files & folders (**~) Vyloučit všechny zálohovací soubory & složky (**~) Backup files Soubory se zálohou System folders Systémové složky Exclude all cache folders (**/*cache*/ & **/*Cache*/) Vyloučit všechny složky s vyrovnávací paměťí (**/*cache*/ & **/*Cache*/) Cache folders Složky vyrovnávací paměti Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Vyloučit všechny uživatelovy složky na smetí (**/*Trash*/, **/*trash*/) Trash Smetí Exclude all "lost+found" folders (**/lost+found*/) Vyloučit všechny "ztracené+nalezené" složky (**/lost+found*/) lost+found Ztracené+nalezené User Defined Stanoveno uživatelem Add exclusion as entered in the next field Přidat vyloučení, jak bylo zadáno, do dalšího pole add Přidat Exclude list Seznam vyloučených Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Zde zadejte název souboru, složky nebo vzor, a potom stiskněte tlačítko "přidat", abyste jej přidali do seznamu vyloučení * - odpovídá kterékoli ne-prázdné složce (zastaví se u lomítka) ** - odpovídá čemukoli, včetně lomítek ? - odpovídá kterémukoli znaku kromě lomítka jsoucí za dir_name/ *** - odpovídá jednak adresáři & a také čemukoli v něm začíná na / - vzor je ukotven k zvláštnímu místu v hierarchii souborů (normálně je to "zdroj") jsoucí za / - odpovídá pouze adresáři, ne řádným souborům, symbolickým odkazům nebo zařízením Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Stanovit druh tohoto úkolu: 1. Zálohovat obsah Zdroje v Cíli (podívejte se také na okénko 'NEVYTVÁŘET adresář' 2. Seřídit Zdroj & Cíl, uchovávaje nejposlednější soubory v obou z nich Backup Source inside Destination Zálohovat obsah Zdroje v Cíli Description Popis Task description Popis úkolu Type a description of the task Napište popis úkolu Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Vyloučit systémové složky /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Vyloučit všechny uživatelské složky .gvfs (**/.gvfs/) launch the pattern editor Spustit editor vzorů Remove highlighted exclusion from list Odstranit zvýrazněná vyloučení ze seznamu remove Odstranit Edit highlighted inclusion Upravit zvýrazněná zařazení edit Upravit Move highlighted inclusion up Posunout zvýrazněná zařazení nahoru move up Posunout nahoru Move highlighted inclusion down Posunout zvýrazněná zařazení dolů move down Posunout dolů Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Zahrnout pouze tento seznam vzorů. Nic víc. Projděte si, prosím, návod kvůli lepšímu porozumění zařazovacích pravidel. Toto zakáže funkci vyloučení. Only Include Pouze zařazené Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Zde zadejte název souboru, složky nebo vzor, a potom stiskněte tlačítko "přidat", abyste jej přidali do seznamu zahrnutí * - odpovídá kterékoli ne-prázdné složce (zastaví se u lomítka) ** - odpovídá čemukoli, včetně lomítek? - odpovídá kterémukoli znaku kromě lomítkajsoucí za dir_name/ *** - odpovídá jednak adresáři & a také čemukoli v něm začíná na / - vzor je ukotven k zvláštnímu místu v hierarchii souborů (normálně je to "zdroj") jsoucí za / - odpovídá pouze adresáři, ne řádným souborům, symbolickým odkazům nebo zařízením Add inclusion as entered in the next field Přidat zařazení, jak bylo zadáno, do dalšího pole Include list Seznam zařazených Remove highlighted inclusion from list Odstranit zvýrazněná zařazení ze seznamu Remote Vzdálený hostitelský počítač Use a remote host either for source or destination Použít vzdálený hostitelský počítač buď pro zdroj nebo pro cíl dat Use remote host Použít vzdálený hostitelský počítač Use a remote host for destination data. Použít vzdálený hostitelský počítač pro cíl dat. destination Cíl Use a remote host for source data. Použít vzdálený hostitelský počítač pro zdroj dat. source Zdroj User: Uživatel: Enter your username for the remote host (leave blank if not applicable). Zadejte Vaše uživatelské jméno pro vzdálený hostitelský počítač (opusťte prázdné, jestliže toto není použitelné/vhodné). @Host: @Hostitel: Enter the name of the remote host. Zadejte název vzdáleného hostitelského počítače. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Zadejte úplnou cestu k souboru, která obsahuje rsync (nikoli ssh) autentizační heslo (opusťte prázdné, jestliže toto není použitelné/vhodné). rsync password file: Soubor s heslem rsync: Check this to connect to an rsync Remote module Označte toto fajfkou, abyste se připojili k modulu rsync pro vzdálený hostitelský počítač Remote module Modul pro vzdálený hostitelský počítač Use ssh as transport shell Použít ssh jako přepravní shell (schránka) ssh ssh password: Heslo: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Zadejte úplnou cestu k souboru, která obsahuje soukromý ssh autentizační klíč (opusťte prázdné, jestliže toto není použitelné/vhodné). Povšimněte si, že musíte udělat všechny akce, které jsou potřeba pro ssh vzdálené připojení bez hesla za použití OpenSSH páru klíčů private key file : Soubor se soukromým klíčem: Enter the port you would like to use for the ssh connection (leave blank for default port) Zadejte port (bránu), kterou byste rád použil pro ssh připojení (opusťte prázdné v případě výchozího portu (brány)) port : Port: Command Options Volby pro příkazy Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Přidat nebo odstranit jakékoli volby rsync. Pokud nemáte ponětí o tom, co to znamená, ponechte je netknuty! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Smazat soubory v cíli, které neexistují ve zdroji. Musí být vybrán "Záchrana do adresářů" (--delete-after & --delete-excluded jestliže "Vyloučené" je označeno fajfkou) Copy device (super user only) & special files as they are (-D) Kopírovat zařízení (pouze superuživatel) & speciální soubory tak, jako jsou (-D) Preserve device, special files Zachovat zařízení, speciální soubory Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Soubory, které jsou pevně (na tvrdo) spojeny dohromady ve zdroji, budou pevně spojeny dohromady v cíli VAROVÁNÍ: Všechny soubory musí být zařazeny v řadě souborů určených k přenosu! (-H) Preserve hard links Zachovat tvrdé odkazy Delete files on the destination Smazat soubory v cíli Recurse into directories (-r) Záchrana do adresářů (-r) Recurse into directories Záchrana do adresářů Do not backup source files that are newer on the destination (--update) Nezálohovat zdrojové soubory, které jsou v cíli novější (--update) Skip newer destination files Přeskočit soubory, které jsou v cíli novější Preserve the owner (super user only), group & time stamp of files (-tgo) Zachovat vlastníka (pouze superuživatel), značku skupiny & čas souborů (-tgo) Preserve ownership, times Zachovat vlastnictví a časové údaje Preserve permissions of files (-p) Zachovat oprávnění k souborům (-p) Preserve permissions Zachovat oprávnění Copy symlinks as symlinks (-l) Kopírovat symbolické odkazy jako symbolické odkazy (-l) Preserve symlinks Zachovat symbolické odkazy Ignore files using a similar algorithm to CVS (-C) Nevšímat si souborů, které používají algoritmus podobný CVS (-C) Ignore files the CVS way Nevšímat si souborů na způsob CVS User defined Stanoveno uživatelem Enter here an rsync option to add (eg "--delete-excluded", "-X") Zde zadejte rsync volbu, která má přidat (např. "--delete-excluded", "-X") Extra rsync options list Zvláštní seznam voleb rsync Remove highlighted option from list Odstranit zvýrazněnou volbu ze seznamu Add rsync option as entered in the next field Přidat rsync volbu, jak byla zadána, do dalšího pole options list Seznam voleb Also Execute Také provést Execute extra commands, before or after the task. Vykonat extra příkazy, před nebo po úkolu. Before Před Enter here a command to be executed before the task and then press the "add" button to add it to the list below Zde zadejte příkaz, který bude vykonán před úkolem, a pak stiskněte tlačítko "Přidat" pro jeho přidání do seznamu níže Add command as entered in the field beside Přidat příkaz tak, jak byl zadán, do pole hned vedle Command list Seznam s příkazy Remove highlighted command from list Odstranit zvýrazněný příkaz ze seznamu Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Vykonat úkol, i když je doprovázen VAROVNOU zprávou. Používá se běžně, když příkazy "Vykonat před" mohou varování opravit (např. připojit oddíly) POZOR: zaškrtněte tuto volbu jen v případě, že jste si opravdu vědom toho, co děláte by-pass WARNING Obejít VAROVÁNÍ After Po Enter here a command to be executed after the task and then press the "add" button to add it to the list below Zde zadejte příkaz, který bude vykonán po úkolu, a pak stiskněte tlačítko "Přidat" pro jeho přidání do seznamu níže Select source directory file selection dialog title Vybrat zdrojový adresář Select destination directory file selection dialog title Vybrat cílový adresář Select rsync password file file selection dialog title Vybrat soubor s heslem rsync Select ssh keyfile file selection dialog title Vybrat soubor s klíčem ssh Select command to be executed file selection dialog title Vybrat příkaz k provedení Select file to read include patterns file selection dialog title Vybrat soubor pro čtení zařazených vzorů Select file to read exclude patterns file selection dialog title Vybrat soubor pro čtení vylučovacích vzorů Please define the source before launching the pattern editor message box, message Stanovte, prosím, před spuštěním editoru vzorů zdroj ERROR message box message CHYBA Please specify the following before proceeding: message box, message Prosím, upřesněte následující, předtím než budete pokračovat: ERROR message box message - line1 CHYBA That is not allowed because '/' does not have an actual name message box message - line2 Toto není dovoleno, protože '/' nemá skutečný název Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Ponechejte toto okénko zaškrtnuto, aby byl běžící úkol <b>ZASTAVEN</b>, pokud tento příkaz skončí s chybou use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Použít okénka k <b>ZASTAVENÍ</b> provádění úkolu při chybě You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Prohlásil jste adresář '/' (root; kořenový) za zdrojový a NEZAŠKRTNUL jste okénko 'NEVYTVÁŘET adresář navíc' Please check the relevant box before proceeding message box message - line3 Před pokračováním, prosím, zaškrtněte související okénko You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Prohlásil jste kořenový adresář celého oddílu za zdrojový a NEZAŠKRTNUL jste okénko 'NEVYTVÁŘET adresář navíc' That is not allowed because the root partition does not have an actual name message box message - line2 Toto není dovoleno, protože kořenový oddíl nemá skutečný název The name of the task you requested already exists message box message - line1 Název úkolu, který jste žádal, již existuje Please specify a different name before proceeding message box message - line2 Prosím, určete jiný název předtím, než budete pokračovat The source you have declared is identical to the destination message box message - line1 Zdroj, který jste prohlásil, se shoduje s cílem Please modify at least one of them message box message - line2 Prosím, upravte alespoň jeden z nich WARNING message box message - line1 VAROVÁNÍ You have declared a destination that is part of the source directory structure message box message - line1 Prohlásil jste cíl, který je částí struktury zdrojového adresáře <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Nezapomeňte</b> stanovit adresář ve 'vylučovacím' skupinovém políčku, které bude obsahovat cíl You have checked the 'delete files on the destination' option message box message - line2 Zaškrtl jste 'smazat soubory' u volby cíle, without having checked 'Recurse into directories' which is required message box message - line3 aniž byste zaškrtl 'Záchrana do adresářů', která je vyžadována 'Remote Host' is checked, but no remote host name is declared message box message - line2 Volba 'Vzdálený hostitel' je označena fajfkou, ale není prohlášen název žádného vzdáleného hostitele Please specify a remote host name message box message - line3 Určete, prosím, název vzdáleného hostitelského počítače Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Jinak zrušte označení fajfkou u volby 'Vzdálený hostitel', abyste pracovali místně All declared fields of the task properties window seem to be ok message box message first line Zdá se, že všechna prohlášená pole okna vlastností úkolu, jsou v pořádku Errors have been found message box message first line Byly nalezeny chyby command to be executed full phrase: command to be executed: <COMMAND> Příkaz k vykonání You have already added this exclude item message box message Tuto vylučovací položku jste již přidal You have already added this include item message box message Tuto zařazovací položku jste již přidal You have already added this option message box message Tuto volbu položku jste již přidal done Hotovo done editing Úpravy hotovy cancel Zrušit cancel editing Zrušit úpravy Read exclude patterns from file Císt vylučovací vzorce ze souboru Read file: Číst soubor: filename Název souboru browse Procházet ... ... Include Zařazení Add any directory, file or pattern to be included by this task Přidat kterýkoli adresář, soubor nebo vzor, který má být zařazen do tohoto úkolu Include mode Režim zařazení Mode: Režim: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Nevylučovat tento seznam vzorů. Projděte si, prosím, návod kvůli lepšímu porozumění zařazovacích pravidel. Normal Include Obvyklé zařazení Read include patterns from file Císt zahrnovací vzorce ze souboru browse locally Procházet místně additional options: Dodatečné volby: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Tuto volbu zatrhněte, pokud jako cíl používáte oddíl FAT/NTFS. Vlastnická práva k datům a oprávnění NEBUDOU zachována. (-t --modify-window=1) Destination is FAT/NTFS Cíl je FAT/NTFS Restore permissions Obnovit oprávnění Set the total number of backup snapshots to keep Nastavit celkový počet zálohovacích snímků, které se mají uchovat Snapshots to keep: Zálohovací snímky k uchování: patternEditor directory : Adresář: Select file Vybrat soubor Please choose a file within the source Vyberte, prosím, soubor uvnitř zdroje Select directory Vybrat adresář Please choose a directory within the source Vyberte, prosím, adresář uvnitř zdroje file : Soubor: pattern editor Editor vzorů Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Toto zaškrtněte kvůli použití adresáře výše jako absolutní cesty Pokud není zaškrtnuto, vzor bude odpovídat jakémukoli souboru/adresáři, který vyhoví měřítku "název" Define here, what would you like the pattern to refer to Zde určete, na co byste chtěl, aby vzor odkazoval The pattern refers to a: Vzor odkazuje na: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Toto použijte v případě, že vzor odkazuje na zvláštní soubor např. "/media/music/album/song.mp3" Specific file Zvláštní soubor Use this if the pattern refers to a specific directory eg "/media/music/Album/" Toto použijte v případě, že vzor odkazuje na zvláštní adresář např. "/media/music/Album/" Specific directory Zvláštní adresář Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Toto použijte v případě, že vzor odkazuje na sadu souborů, které mají něco společného např. všechny soubory s příponou ".txt" Set of files Sada souborů Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Toto použijte v případě, že vzor odkazuje na sadu adresářů, které mají něco společného např. všechny adresáře s názvem "temp" Set of directories Sada adresářů name Název starts with : Začíná: Enter here the starting characters of the name of the files/directories that the pattern refers to Zde zadejte začáteční znaky názvů souborů/adresářů, na které vzor odkazuje ends with : Končí: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Zde zadejte koncové znaky názvů souborů/adresářů, na které vzor odkazuje např. pro odkaz na všechny soubory ".txt", zadejte .txt Enter here the name of the files/directories that the pattern refers to Zde zadejte názvy souborů/adresářů, na které vzor odkazuje is exactly : Je přesně: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Zde zadejte znaky obsažené v jakékoli poloze v názvech souborů/adresářů, na které vzor odkazuje contains : Obsahuje: browse localy for a file Procházet místně kvůli souboru browse localy for a directory path Procházet místně kvůli cestě k adresáři use absolute path Použít absolutní cestu Go deeper in path by : Jít hlouběji v cestě o: Go deeper in path by any level Jít hlouběji v cestě o jakoukoli úroveň any Jakákoli Define here the name criteria for the files/directories to be matched Zde určete znaky názvů souborů/adresářů, které se mají shodovat final pattern Konečný vzor The actual pattern is displayed here Skutečný vzor se zobrazuje zde Reset the pattern editor fields to the default values Nastavit znovu editor vzorů na výchozí hodnoty reset Nastavit znovu Okay OK Cancel Zrušit Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Toto použijte kvůli odkazování na podadresáře například Adresář "/media/music" obsahuje tři podadresáře: 1.Rock 2.Jazz 3.Soundtracks a vy chcete odkazovat na obsah u všech těchto tří, stanovte následující: * Sada adresářů * Pouze obsah * cesta:/media/music/ * Jít hlouběji v cestě o "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Toto použijte tehdy, když vzor odkazuje na obsah adresáře (nebo více adresářů), ne na sám adresář; např. obsah adresáře "/media/music/Album/" Directory contents Obsah adresáře scheduleDialog Starting from scratch Začíná úplně od začátku No schedules are declared !! Nebyl prohlášen žádný rozvrh prací! Unable to create schedule file Neschopen vytvořit soubor s rozvrhem prací You have reached the maximum limit of supported scheduled profiles Dosáhl jste nejvyšší možné meze podporovaných naplánovaných profilů You have to remove an item if you wish to add another Musíte odstranit nějakou položku, jestliže si přejete přidat jinou Add profile schedule Přidat rozvrh prací profilu Modify profile schedule Upravit rozvrh prací profilu Profile schedule details Podrobnosti profilu rozvrhu prací Invalid profile Neplatný profil Execute profile Vykonat profil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> každou hodinu na minutu at every každý day Den Sunday neděle Monday pondělí Tuesday úterý Wednesday středa Thursday čtvrtek Friday pátek Saturday sobota & on the & na st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day tý(mý) th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month každého měsíce of January full phrase: 'of January' Leden February full phrase: 'of February' Únor March full phrase: 'of March' Březen April full phrase: 'of April' Duben May full phrase: 'of May' Květen June full phrase: 'of June' Červen July full phrase: 'of July' Červenec August full phrase: 'of August' Srpen September full phrase: 'of September' Září October full phrase: 'of October' Říjen November full phrase: 'of November' Listopad December full phrase: 'of December' Prosinec Unable to create cron file Nelze vytvořit cron soubor luckyBackup - schedule luckyBackup - rozvrh naplánovaných prací <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Sestavování rozvrhu vykonání profilu</span></p></body></html> Add a new profile schedule Přidat nový rozvrh prací profilu add Přidat Modify selected profile schedule Upravit vybraný rozvrh prací profilu modify Upravit Remove selected profile schedule Odstranit vybraný rozvrh prací profilu remove Odstranit Profile : Profil: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Přeskočit úkoly, které se po zkontrolování adresáře objeví s varovným sdělením "KRITICKÝ" skip critical Přeskočit kritické time (hour:min) : Čas (hod:min): set this value to -1 for the schedule to occur every hour Nastavte tuto hodnotu na -1 aby se rozvrh dělal každou hodinu : : :delay :zpoždění Delay luckybackup execution at startup Při spuštění zpozdit provedení luckybackupu min means: minutes (time) minut day of week : Den v týdnu: Any jakýkoli month : Měsíc: January leden February únor March březen April duben May květen June červen July červenec August srpen September září October říjen November listopad December prosinec day of month : Den v měsíci: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Toto zaškrtněte v případě, že váš stroj nepodporuje grafické prostředí (např. server) Console Mode Režim ovládacího panelu okay OK Cancel Zrušit schedule the execution of profiles as declared in the list above Zařadit do rozvrhu vykonání profilů, jak byl prohlášen v seznamu výše cronIT !! cronIT! The existent schedule file is not a valid luckyBackup v. v is for version Stávající soubor s rozvrhem prací není platný luckyBackup v. file BEWARE of the whitespace before file soubor You have made changes without clicking the cronIT button Provedl jste změny, aniž byste klepl na tlačítko cronIT Are you sure you want to close the schedule dialog ? Jste si jist, že chcete zavřít dialog s rozvrhem prací? Your crontab is updated successfully Váš crontab je úspěšně obnoven no crontab entries exist Nejsou záznamy crontab crontab content Obsah crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup jednou při spuštění systému Run once, at startup Spustit jednou, při spuštění systému @ reboot @ reboot close this dialog Zavřít toto okno close Zavřít Display the current crontab Zobrazit nynější crontab view current crontab Podívat se na nynější crontab textDialog Enter the name of the new profile : Zadejte název nového profilu: Enter the new name of the profile : Zadejte nový název profilu: Profile description : Popis profilu: A profile with the same name already exists Profil se stejným názvem již existuje Please enter a different name Zadejte, prosím, jiný název Enter password : Zadejte heslo: Enter passphrase : Zadejte heslo (jsou dvojice klíčů): Do not show this again for this task Toto znovu pro tento úkol neukazovat You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Vybral jste "Zálohovat obsah zdrojového adresáře"<br>společně s volbou 'Smazat soubory v cíli' BEWARE, if your intention is NOT to clone source to destination !! DEJTE SI POZOR, pokud NENÍ vaším záměrem klonovat zdroj do cíle! Are you sure you wish to proceed ?? Jste si jist, že chcete pokračovat? luckyBackup luckyBackup Okay OK Cancel Zrušit Copy command to clipboard Kopírovat příkaz do schránky eMail information Poslat informace e-mailem No Ne Yes Ano winDialog luckyBackup luckyBackup declaration of paths Prohlášení cesty rsync: rsync: Enter the full path of the rsync command Zadejte úplnou cestu příkazu rsync browse locally Procházet místně Use default value Použít výchozí hodnotu ssh: ssh: Enter the full path of the ssh command Zadejte úplnou cestu příkazu ssh cygpath: cygpath: Enter the full path of the cygpath command Zadejte úplnou cestu příkazu cygpath dosdev: dosdev: Enter the full path of the dosdev command Zadejte úplnou cestu příkazu dosdev main dir: Hlavní adresář: Enter the full path of the luckybackup directory Zadejte úplnou cestu k adresáři s luckybackup vshadow dir: Adresář vshadow: Enter the full path of the vshadow directory Zadejte úplnou cestu k adresáři s vshadow temp dir: Adresář s dočasnými soubory: Enter the full path of the temporary directory Zadejte úplnou cestu k adresáři s dočasnými soubory Okay OK Cancel Zrušit Select rsync command file selection dialog title Vybrat příkaz rsync Executable Files (*.exe) Spustitelné soubory (*.exe) Select ssh command file selection dialog title Vybrat příkaz ssh Select cygpath command file selection dialog title Vybrat příkaz cygpath Select dosdev command file selection dialog title Vybrat příkaz dosdev luckybackup-0.5.0/translations/luckybackup_ta.ts0000666000175000017500000060557213165410113021505 0ustar luckybluckyb CalcDiffThread Scanning destination இலக்கை சோதிக்கிறது Please wait தயவுசெய்து காத்திருக்கவும் Scanning snapshot நிழற்படத்தைச் சோதிக்கிறது Scanning source மூலத்தைச் சோதிக்கிறது Calculating differences வேறுபாடுகளை கணக்கிடுகிறது Sync dir A & B differences கோப்பு A & B வேறுபாடுகளை ஒத்திசை Snapshot and source differences நிழற்படமும் மூலமும் வேறுபடுகிறது Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries தகவல்களின் அளவு அதிகமாக இருக்கிறது. முதல் பதிவுகளை மட்டும் காட்டுகிறது Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source நிழற்படத் தகவல்கள் மூலத்தில் இல்லை These will be transfered over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty பணிப்பட்டியல் காலியாக உள்ளது nothing to start துவக்குவதற்கு ஏதுமில்லை You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks நீங்கள் எந்த பணியையும் சேர்க்கவில்லை The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting execution of task Full phrase: execution of task: <TASKNAME> starting starting Full phrase: execution of task: <TASKNAME> starting Source Full phrase: source: <SOURCE_NAME Destination Full phrase: Destination: <DEST_NAME execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-A> to <DIR-B> to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-B> to <DIR-A> to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished finished Full phrase: execution of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available no errors errors found status OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description aboutDialog using Qt4 Backup & Sync Application Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Debian package maintainer Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Jack Fink port to Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Czech gui translator Stergios Prosiniklis Greek manual translator German gui translator Wilfried Schobel Sergio Gameiro Portuguese gui translator Marcio Moraes Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Italian gui translator Aurelien Merckel Denis Skorski Russian gui translator and valuable tester Kenny Verstraete Dutch gui translator Martin Grashoff (linuxrev) Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Arabic gui translator Adrian Murariu Romanian gui translator Roger Calvo Tomas Vadina Javi Romero v0.3 gui designer fri13 v.0.3 gui designer Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Manuel Meixide Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the forums for their support. Especially that contributed to this project one way or another Last but no least Could not locate the license file no money If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Vote good & become a fan at: This is my reward :) money I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link luckyBackup - about close &About <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support A&uthor &Thanks to &License Agreement luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" ---------- This means "use the default value for this field" ---------- This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay Close dialog Cancel Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help manual/ Okay logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error next error close loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time pre-task execution of command post-task execution of command Now performing task Directory calculating deleting files trying to send an email The system will shutdown in 1 minute Source Destination All tasks completed No errors found errors found logfile(s) have been created under directory: Done execution of profile: finished Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label add task add task button tooltip remove remove task button label remove highlighted task remove task button tooltip modify modify task button label modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 English &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 ERROR loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES NO Description saving default profile ... Information window message saving profile ... Information window message WARNING default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+X Ctrl+D F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files Total files transfered ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile task Delete Restore view log destination: source: hide source Close this window Close Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time Delete backup this is the title of a wizard Date & time simple label of the wizard gui Path ...is a directory path WARNING You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors errors found Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error Jump to next error next error This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT cancel The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Source Task properties Enter a name for this task (eg "Backup my home directory") Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Backup open files Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay Cancel Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Task description Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: பயனர்: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh ssh password: கடவுச்சொல்: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options கட்டளை விருப்பங்கள் Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message ERROR message box message Please specify the following before proceeding: message box, message ERROR message box message - line1 That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 WARNING message box message - line1 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay Cancel Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add Modify selected profile schedule modify Remove selected profile schedule remove Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup Okay Cancel Copy command to clipboard eMail information No Yes winDialog luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: தற்காலிக கோப்பு: Enter the full path of the temporary directory தற்காலிக கோப்பின் முழுப்பாதையையும் தருக Okay சரி Cancel ரத்து Select rsync command file selection dialog title rsync கட்டளையை தேர்ந்தெடுக்கவும் Executable Files (*.exe) Select ssh command file selection dialog title ssh கட்டளையை தேர்ந்தெடுக்கவும் Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_vi.ts0000666000175000017500000064502013165410113021507 0ustar luckybluckyb CalcDiffThread Scanning destination Đang quét vị trí kết quả Please wait Xin vui lòng đợi trong giây lát Scanning snapshot Đang quét phần snapshot Scanning source Đang quét nguồn Calculating differences Đang tính toán các điểm khác biệt Sync dir A & B differences Đồng bộ hóa tính khác biệt giữa thư mục A & B Snapshot and source differences Điểm khác biệt giữa snapshot và nguồn Sync dir B data that also exists at sync dir A and is different Đồng bộ hóa dữ liệu thư mục B có trong phần đồng bộ hóa của thư mục A và khác nhau Snapshot data that also exists at the source and is different Dữ liệu snapshot cũng tồ tại trong nguồn và khác nhau The snapshot data will replace the source data during RESTORE Dữ liệu snapshot sẽ thay thế dữ liệu nguồn trong quá trình KHÔI PHỤC Data amount is huge. Displaying only first entries Số lượng dữ liệu quá lớn. Chỉ hiển thị các mục đầu tiên Sync dir B data that do NOT exist at sync dir A Đồng bộ hóa dữ liệu thư mục B và không tồn tại trong phần đồng bộ hóa tại thư mục A Snapshot data that do NOT exist at the source Dữ liệu snapshot KHÔNG tồn tại ở phần nguồn These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Các thao tác này sẽ chuyển dựa trên nguồ trong quá trình KHÔI PHỤC Sync dir A data that do NOT exist at sync dir B Đồng bộ hóa dữ liệu thư mục A và không tồn tại trong phần đồng bộ hóa tại thư mục B Source data that do NOT exist at the snapshot Dữ liệu từ nguồn không tồn tại trong phần snapshot These will be deleted during RESTORE only if you enable the option: Các phần này sẽ bị xóa trong suốt quá trình KHÔI PHỤC nếu bạn chọn phần phía sau: delete existing source data that do not exist at the backup xóa các dữ liệu nguồn đang tồn tại và không tồn tại trong phần sao lưu QObject The task list is empty Danh sách tác vụ hiện đang rỗng[ nothing to start không có tác vụ nào để bắt đầu You have included both of the following connected tasks: Bạn đã bao gồm các tác vụ được kết nối phía sau đây: this is not allowed for obvious reasons điều này không được tiến hành vì các nguyên nhân sau Please <b>uncheck appropriate include boxes</b> before proceeding Xin vui lòng <b>bỏ chọn các ô lựa chọn thích hợp</b> trước khi tiếp tục You have not included any tasks Bạn vẫn chưa thêm vào bất kỳ tác vụ nào The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Các tác vụ được bao gồm phía sau đây <b>chia sẻ chung cùng một thư mục kết quảả</b> (tất cả hoặc ở các nhóm) và ít nhất một trong số những phần này sẽ sao lưu lại nội dung của thư mục this will lead to one task canceling the other điều này sẽ dẫn đến việc một tác vụ được quyền hủy những tác vụ khác Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting starting Full phrase: pre-task execution of command: <COMMAND> starting Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting starting Full phrase: post-task execution of command: <COMMAND> starting execution of task Full phrase: execution of task: <TASKNAME> starting starting Full phrase: execution of task: <TASKNAME> starting Source Full phrase: source: <SOURCE_NAME Destination Full phrase: Destination: <DEST_NAME execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-A> to <DIR-B> to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-B> to <DIR-A> to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished finished Full phrase: execution of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available no errors errors found status OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog Backup & Sync Application Loukas Avgeriou It 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 'License Agreement' tab for more details. Athens, Greece Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Debian package maintainer Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink port to Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Czech gui translator Stergios Prosiniklis Greek manual translator German gui translator Wilfried Schobel Sergio Gameiro Portuguese gui translator Marcio Moraes Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Italian gui translator using Qt António Correia Aurelien Merckel Denis Skorski Russian gui translator and valuable tester Kenny Verstraete Dutch gui translator Martin Grashoff (linuxrev) Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Arabic gui translator Adrian Murariu Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero v0.3 gui designer fri13 v.0.3 gui designer Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the forums for their support. Especially that contributed to this project one way or another Last but no least Could not locate the license file no money If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Vote good & become a fan at: This is my reward :) money I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link luckyBackup - about close &About <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support A&uthor &Thanks to &License Agreement luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay Close dialog Cancel Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help manual/ Okay logDialog luckyBackup - tasks execution progress <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error next error close loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' simulation mode Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time pre-task execution of command post-task execution of command Now performing task Directory calculating deleting files Total files transferred trying to send an email The system will shutdown in 1 minute Source Destination All tasks completed No errors found errors found logfile(s) have been created under directory: Done execution of profile: finished Execution of tasks were terminated violently by user &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label add task add task button tooltip remove remove task button label remove highlighted task remove task button tooltip modify modify task button label modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 English &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES NO Description saving default profile ... Information window message saving profile ... Information window message WARNING default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+X Ctrl+D F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty Danh sách tác vụ hiện đang rỗng[ Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile task Delete Restore view log destination: source: hide source Close this window Close Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time Delete backup this is the title of a wizard Date & time simple label of the wizard gui Path ...is a directory path WARNING You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors errors found Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error Jump to next error next error This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT cancel The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Source Task properties Enter a name for this task (eg "Backup my home directory") Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay Cancel Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Task description Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay Cancel Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add Modify selected profile schedule modify Remove selected profile schedule remove Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup Okay Cancel Copy command to clipboard eMail information No Yes winDialog luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Cancel Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_ru.ts0000666000175000017500000075723613165410113021534 0ustar luckybluckyb CalcDiffThread Scanning destination Сканирование каталога Назначение Please wait Пожалуйста, подождите Scanning snapshot Сканирование каталога резервной копии Scanning source Сканирование каталога источника Calculating differences Определение различий Sync dir A & B differences Различия между синхронизируемыми каталогами A и B Snapshot and source differences Различия между резервной копией и каталогом Источника Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Большой объём данных. Показаны только первые записи Sync dir B data that do NOT exist at sync dir A Файлы в каталоге B, которых не существует в каталоге A Snapshot data that do NOT exist at the source Файлы резервной копии, которых НЕТ в Источнике These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Они будут перемещены на Источник в задаче ВОССТАНОВЛЕНИЕ Sync dir A data that do NOT exist at sync dir B Файлы в каталоге A, которых не существует в каталоге B Source data that do NOT exist at the snapshot Файлы в источнике, которых НЕТ в резервной копии These will be deleted during RESTORE only if you enable the option: Они могут быть удалены в задаче ВОССТАНОВЛЕНИЕ, только если вы указали опцию: delete existing source data that do not exist at the backup Удалять отсутствующие файлы QObject The task list is empty Список задач пустой nothing to start нечего выполнять You have included both of the following connected tasks: Вы выбрали две связанные задачи: this is not allowed for obvious reasons это не допускается по понятным причинам Please <b>uncheck appropriate include boxes</b> before proceeding Пожалуйста, <b>исключите ненужную задачу</b> перед продолжением You have not included any tasks Не выбрано ни одной задачи The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Выполнение команд до выполнения задачи starting Full phrase: pre-task execution of command: <COMMAND> starting начало Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Выполнение команд после выполнения задачи starting Full phrase: post-task execution of command: <COMMAND> starting начало execution of task Full phrase: execution of task: <TASKNAME> starting Выполнение задачи starting Full phrase: execution of task: <TASKNAME> starting начало Source Full phrase: source: <SOURCE_NAME Источник Destination Full phrase: Destination: <DEST_NAME Назначение execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Выполнение первой части задачи starting Full phrase: execution of 1st part of task: <TASKNAME> starting начало Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Синхронизация to Full phrase: Syncing <DIR-A> to <DIR-B> и execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Выполнение второй части задачи starting Full phrase: execution of 2nd part of task: <TASKNAME> starting начало Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Синхронизация to Full phrase: Syncing <DIR-B> to <DIR-A> и pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Выполнение команд до выполнения задачи finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished конец post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Выполнение команд после выполнения задачи finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished конец execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Выполнение первой части задачи finished Full phrase: execution of 1st part of task: <TASKNAME> finished конец execution of task Full phrase: execution of task: <TASKNAME> finished Выполнение задачи finished Full phrase: execution of task: <TASKNAME> finished конец execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error Выполнение задачи finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error остановлено, потому что команды, выполняющиеся до/после задачи, выполнились с ошибкой The process reported an error Процесс сообщает об ошибке Backing-up profile, logfiles and snapshot data Could not open the logfile Невозможно открыть лог-файл The logfile does not exist Лог-файл не существует The specified command is probably not installed Указанная команда возможно не установлена The logfile could not be created Невозможно создать лог-файл command: команда: exit code: код завершения: output: вывод: Last execution time Время последнего выполнения not available не доступно no errors Ошибок нет errors found Были обнаружены ошибки status Статус OK OK Sync directory Source directory Источник Using remote, check is skipped Destination directory Назначение free as in free disk space WARNING ПРЕДУПРЕЖДЕНИЕ I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory Каталог and/or и/или does not exist не существует is not mounted не примонтирован is empty or does not exist пустой или не существует I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Эта задача <font color=red><b>НЕ ПРОПУСКАЕТСЯ</b></font> потому что выбрана опция "отключить ПРЕДУПРЕЖДЕНИЯ" This task will be <font color=red><b>skipped</b></font> Эта задача <font color=red><b>пропускается</b></font> CRITICAL КРИТИЧНЫЙ is empty пустой I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Эта задача <font color=orange><b>НЕ ПРОПУСКАЕТСЯ</b></font>. Синхронизация будет выполнена в любом случае This task will <font color=orange><b>not be skipped Эта задача <font color=orange><b> не пропускается The Destination Directory will be created if it doesn't exist and filled with new backup data Если каталог Назначение не существует, он будет создан и заполнен новыми данными резервной копии Task description Описание задачи ReadLogFile Could not locate the logfile Could not open the logfile Невозможно открыть лог-файл aboutDialog using Qt4 использует Qt4 Backup & Sync Application Программа для резервного копирования и синхронизации Loukas Avgeriou Loukas Avgeriou It 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 'License Agreement' tab for more details. Подробности смотрите в закладке "Лицензионное соглашениe". Athens, Greece Афины, Греция Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) официальный сопровождающий пакета в Arch linux Valuable advisor ценный консультант Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor сборщик пакетов rpm, ценный тестировщик и консультант по удалённым соединениям Patrick Matthaei Patrick Matthaei Debian package maintainer сопровождающий пакета в Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester переводчик интерфейса на греческий и ценный тестировщик The indifex team Команда indifex for developing the wonderful transifex localization platform and providing it for free разработчики удобного и бесплатного сервиса Transifex для локализации приложений Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor сопровождающий пакета в OpenSUSE (репозиторий KDE4 Community) и ценный консультант по сборке пакетов Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator переводчик интерфейса на испанский и сопровождающий пакета для Mepis (Community repo) Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) сопровождающий пакета в Ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows портирование на MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X портирование на Mac OS X Elbert Pol Elbert Pol port to OS/2 портирование на OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer сопровождающий ebuild в Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer сопровождающий pet и sfs в Puppy Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) сопровождающий пакета в Mandriva (репозиторий contrib) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer сопровождающий пакета для Free BSD Dimitris Jemos Slackel package maintainer ex Fedora package maintainer бывший сопровождающий пакета в Fedora Pavel Fric Pavel Fric Czech gui translator переводчик интерфейса на чешский Stergios Prosiniklis Stergios Prosiniklis Greek manual translator переводчик руководства с греческого German gui translator переводчик интерфейса на немецкий Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator переводчик интерфейса на португальский Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) переводчик интерфейса на французский и ценный советчик по сборке пакетов (и не только это) Raffaele Raffaele Italian gui translator переводчик интерфейса на итальянский using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester переводчик интерфейса на русский и ценный тестировщик Kenny Verstraete Kenny Verstraete Dutch gui translator переводчик интерфейса на нидерландский Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer переводчик интерфейса на боснийский и сопровождающий пакета в Mandriva Majed Sahli Majed Sahli Arabic gui translator переводчик интерфейса на арабский Adrian Murariu Adrian Murariu Romanian gui translator переводчик интерфейса на румынский Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer дизайнер интерфейса v.0.3 fri13 fri13 v.0.3 gui designer дизайнер интерфейса v.0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project если бы не было его и его руководств, я бы никогда не начал этот проект Thomas Glatt French gui translator переводчик интерфейса на французский Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator переводчик интерфейса на испанский Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator переводчик интерфейса на шведский Catalan gui translator переводчик интерфейса на каталонский Slovak gui translator переводчик интерфейса на словацкий Rivo Zangov Rivo Zangov Estonian gui translator переводчик интерфейса на эстонский Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) специально приглашённый убийца багов ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist ценный тестировщик и знаток мозгового штурма Yuri Vidal Yuri Vidal backupwhenidle python script developer разработчик скрипта backupwhenidle на python Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ... всем участникам forums for their support. форумов за их поддержку. Especially Особенно that contributed to this project one way or another которые так или иначе внесли свой вклад в этот проект Last but no least И последнее, но не менее важное Could not locate the license file Файл с лицензией не найден no money Не деньгами If you like this app and would like to donate something to me personally, all you have to do is: Если вам понравилось приложение и вы захотели помочь проекту, то вы можете сделать следующее: Give a thumbs up at: Рекомендовать приложение: Vote good & become a fan at: Проголосовать и стать фанатом: This is my reward :) Это будет моей наградой :) money Деньгами I personally never had and never will accept money for this project. Я никогда не брал и не буду брать деньги на проект. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Однако, я решил использовать luckyBackup, чтобы поддержать людей, которые действительно нуждаются в финансовой помощи. So, please consider it seriously to donate money that will eventually be used for a good cause. Подумайте о том, чтобы пожертвовать деньги на благое дело. donation link ссылка для пожертвований luckyBackup - about luckyBackup - о программе close Закрыть &About &О проекте <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Помощь A&uthor &Автор &Thanks to &Спасибо &License Agreement &Лицензионное соглашение luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup распространяется при соблюдении условий лицензии <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Это <b>свободное программное обеспечение</b>. Вы можете распространять и/или изменять его при соблюдении условий лицензии GNU General Public License (версии 3), опубликованной Фондом свободного программного обеспечения. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) сопровождающий пакета в Fedora (официальный репозиторий) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator переводчик интерфейса на словенский E. Hakan Duran E. Hakan Duran Turkish gui translator переводчик интерфейса на турецкий Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) сопровождающий пакета в Slackware (репозиторий SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ... моя вторая половинка <b>Dimitra</b>, которая терпеливо относится ко мне все то время, пока я разрабатываю проект emailDialog luckyBackup - email luckyBackup - оповещения Email a report after profile execution Отправлять отчеты после выполнения задач профиля command: команда: Use default This means "use the default value for this field" По-умолчанию Arguments Аргументы %f from: %f от кого: Enter the sender of the message Адрес отправителя сообщения %l logfile %l лог-файл %c logfile.tar.gz %c лог-файл.tar.gz %d date %d дата %i time %i время %p profile name %p название профиля %e No of errors %e нет ошибок If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t кому: Enter the recipient of the message Адрес получателя письма %s subject: %s тема: Enter the subject of the message Тема письма %v smtp server: %v сервер SMTP: Enter the smtp server used to send the message Адрес сервера SMTP для отправления писем %b body: %b содержание: Enter the body of the message Содержание письма Send an email right now to test the provided arguments Отправить письмо сейчас для проверки правильности аргументов Test Проверка Accept changes and close dialog Применить изменения и закрыть окно Okay OK Close dialog Закрыть окно Cancel Отмена Specify the conditions to send an email Укажите условия для отправления писем Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions После выполнения отправить письмо Only send when error(s) occurred during a run Отправлять, только если во время выполнения произошли ошибки Error(s) occurred При ошибках выполнения Only send when profile is scheduled to run Отправлять письма при выполнении профиля по расписанию Profile is scheduled При выполнении по расписанию Never send an email Никогда не отправлять сообщения Never Никогда The command field is empty Пустое поле для ввода команды helpBrowser luckyBackup - help luckyBackup - справка manual/ руководство/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - ход выполнения задач <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error Предыдущая ошибка next error Следующая ошибка close Закрыть loading logfile... загрузка лог-файла... wait ждите luckyBackupWindow commands output output window label Результат выполнения rsync and pre/post task commands output is displayed here tooltip Здесь выводятся результаты выполнения rsync и других команд Task list task list label Список задач List of all the available tasks task list tooltip - line1 Список всех доступных задач Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Используйте "включающие отметки" для включения или исключения выбранной задачи Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Выполнение профиля finished full phrase: 'Execution of profile <PROFILENAME> finished' завершено simulation mode Тестовый режим Could not update last execution time of tasks Невозможно обновить время последнего выполнения Last execution time of tasks updated Время последнего выполнения обновлено &Abort &Прервать &Minimize to tray tray menu action &Свернуть в трей &Restore tray menu action &Восстановить execution of profile: tray message - execution of profile: <PROFILENAME> in progress... Выполняется профиль: in progress... tray message - execution of profile: <PROFILENAME> in progress... ... Removed all older snapshots data Старые резервные копии удалены failed to remove all older snapshots data Не удалось удалить все старые резервные копии Unknown error Неизвестная ошибка Elapsed time Затраченное время pre-task execution of command Выполнение команд до выполнения задачи post-task execution of command Выполнение команд после выполнения задачи Now performing task Сейчас выполняется задача Directory Каталог calculating вычисление deleting files удаление файлов Total files transferred trying to send an email Попытка отправить сообщение The system will shutdown in 1 minute Система будет перезагружена через 1 минуту Source Источник Destination Назначение All tasks completed Все задачи завершены No errors found Ошибок нет errors found Были обнаружены ошибки logfile(s) have been created under directory: лог-файлы сохранены в каталоге: Done Готово execution of profile: Выполнение профиля: finished завершено Execution of tasks were terminated violently by user Пользователь остановил выполнение задач профиля &Profile This is a top menu item &Профиль &Settings This is a top menu item &Настройка &Language This is a top menu item &Язык &Help This is a top menu item &Справка &Handbook full phrase: 'luckyBackup Handbook' &руководство пользователя &About full phrase: 'about luckyBackup' &О программе current profile Текущий профиль include label of 'include' checkboxes Включить Move the highlighted task up, by one position button tooltip Переместить выбранную задачу вверх на одну позицию Move the highlighted task down, by one position button tooltip Переместить выбранную задачу вниз на одну позицию jump to next error button tooltip Следующая ошибка jump to previous error button tooltip Предыдущая ошибка Task task groupbox (add, remove, modify buttons) label Задача add add task button label Добавить add task add task button tooltip Добавить задачу remove remove task button label Удалить remove highlighted task remove task button tooltip Удалить выбранную задачу modify modify task button label Изменить modify highlighted task modify task button tooltip Изменить выбранную задачу Begin the execution of all included tasks start button tooltip Начать выполнение всех включенных задач NOTE simulation checkbox tooltip - line2 ВНИМАНИЕ Progressbar update will not be realistic simulation checkbox tooltip - line2 Индикатор выполнения будет обновляться произвольно Information window information window title Информация Exit exit button tooltip. full phrase is: 'exit luckybackup' Выход EXIT EXIT button label Выход minimize to tray Свернуть в трей minimizes the window to the tray area Свернуть окно в трей F1 F1 English Русский &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Вы запросили создание задачи "Восстановление" Please have a good look at the following task properties dialog 'create restore' message line 2/4 Хорошо проверьте параметры задачи and change anything you wish before proceeding 'create restore' message line 3/4 и измените всё, что необходимо, в следующем диалоговом окне Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Обратите внимание на 'Название', 'Источник', 'Назначение' и параметр 'Пропустить более новые файлы назначения' (в расширенных настройках) ERROR ОШИБКА loading default profile ... information window message Загрузка профиля по-умолчанию... loading profile ... information window message Загрузка профиля... loading failed information window message загрузка невозможна Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Невозможно открыть профиль is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y не совместим с version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y версии: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' Профиль loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' загружен успешно scheduled this refers to a profile есть расписание выполнения YES ДА NO НЕТ Description Описание saving default profile ... Information window message Сохранение профиля по-умолчанию... saving profile ... Information window message Сохранение профиля... WARNING ПРЕДУПРЕЖДЕНИЕ default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Профиль по-умолчанию profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' Профиль profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' Профиль saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' сохранен успешно creating default profile ... Information window message Создание профиля по-умолчанию... creating profile ... Information window message Создание профиля... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Профиль created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' создан успешно Would you like to save it before proceeding ? Сохранить изменения перед продолжением? Would you like to proceed anyway? Всё равно продолжить? super user super user is the root user суперпользователь super user mode режим суперпользователя Welcome to full phrase: 'Welcome to luckyBackup' Добро пожаловать в English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Русский Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Невозможно создать новый профиль The name you have entered contains only invalid characters Введённое название содержит только недопустимые символы Profile full phrase: 'Profile <PROFILENAME> already exists' Профиль already exists full phrase: 'Profile <PROFILENAME> already exists' уже существует Would you like to replace it ? Хотите заменить его? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Невозможно заменить профиль Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Невозможно переименовать профиль profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Профиль renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' успешно переименован в default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Профиль по-умолчанию renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' успешно переименован в All relevant files (logs etc) have also been updated Все необходимые файлы (логи т.д.) также были обновлены Failed to update all relevant files (logs etc) Не удалось обновить все необходимые файлы (логи и т.д.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Вы уверены, что хотите удалить профиль по-умолчанию a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' будет создан новый пустой профиль с таким же названием Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Вы уверены, что хотите удалить профиль Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Невозможно удалить профиль Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Профиль deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' удален успешно All relevant files (logs etc) have also been deleted Все необходимые файлы (логи и т.д.) также были удалены Failed to delete all relevant files (logs etc) Невозможно удалить все все необходимые файлы (логи и т.д.) Profile full phrase: 'Profile <PROFILENAME> set as default' Профиль set as default full phrase: 'Profile <PROFILENAME> set as default' установлен как профиль по-молчанию All relevant files (logs etc) have also been duplicated Все необходимые файлы (логи и т.д.) также были скопированы Failed to duplicate all relevant files (logs etc) Невозможно скопировать все необходимые файлы (логи и т.д.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Описание профиля set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' установлено как Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Импорт профиля Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Невозможно импортировать профиль Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Профиль imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' был импортирован успешно as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' как and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' и добавлен в список профилей Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Невозможно найти файл You have reached the maximum limit of supported tasks Достигнуто максимальное количество задач You have to remove a task if you wish to add another !! Удалите какую-либо задачу, чтобы добавить новую!! Select export directory this is a dialog title for selecting a directory to export a profile to Выберите каталог для экспорта Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Невозможно экспортировать профиль to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' в каталог Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Профиль exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' успешно экспортирован в каталог The directory you have selected does not contain valid profile data Выбранный каталог не содержит данных профиля Errors occurred during snapshots and logfiles transfer При импортировании резервных копий и лог-файлов произошли ошибки Errors occurred during snapshots transfer При импортировании резервных копий произошли ошибки Errors occurred during logfiles transfer При импортировании лог-файлов произошли ошибки Errors occurred during the profile file transfer При импортировании файлов профиля произошли ошибки Please select a task to modify first Выберите задачу, которую необходимо изменить Please select a task to remove first Выберите задачу, которую необходимо удалить Are you sure you want to remove the following task ?? Вы уверены, что хотите удалить следующую задачу ?? Would you like to also remove: Удалить также задачу для восстановления: Please select a task to manage first Выберите задачу, которую необходимо просмотреть nothing to do Сижу, курю current crontab <font color=green>updated successfully Файл crontab <font color=green>успешно обновлён Email preferences have been <font color=green>updated successfully Настройки оповещений <font color=green>успешно обновлены status Состояние NOT INCLUDED НЕ ВКЛЮЧЕНА Checks are disabled. This task will be <b>skipped</b> Проверки отключены. Эта задача <b>будет пропущена</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Список задач профиля and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' и список профилей refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' обновлены luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Информация CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Профиль Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Прерывание: подождите, пока завершатся все процессы Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Удаление старых резервных копий и лог-файлов Removing Удаление failed to remove Невозможно переместить Failed to start this refers to a process Невозможно запустить Crashed this refers to a process Аварийная остановка Timed out this refers to a process Превышено время Write error this refers to a process Ошибка записи Read error this refers to a process Ошибка чтения Unknown error this refers to a process Неизвестная ошибка calculating info message displayed during ...calculations Вычисление transferring files info message displayed during ...file transfers передача файлов deleting files info message displayed during ...file deletions удаление файлов transferring files передача файлов ABORTED Выполнение ПРЕРВАНО &Refresh This is a top 'Profile' menu action &Обновить De&fault This is a top 'Profile' menu action &Установить по умолчанию Set as Default This is a top 'Profile' menu action tooltip Установить как профиль по-умолчанию &View/Edit Description This is a top 'Profile' menu action Р&едактировать описание View/Edit the profile description This is a top 'Profile' menu action tooltip Просмотреть или отредактировать описание профиля R&ename This is a top 'Profile' menu action &Переименовать &Delete This is a top 'Profile' menu action &Удалить &New This is a top 'Profile' menu action &Новый &Save This is a top 'Profile' menu action &Сохранить E&xport This is a top 'Profile' menu action &Экспорт &Import This is a top 'Profile' menu action &Импорт S&chedule This is a top 'Profile' menu action &Расписание E&mail This is a top 'Profile' menu action Опо&вещения Email report after profile execution This is a top 'Profile' menu action tooltip Отправить письмо после выполнения задач профиля &Quit This is a top 'Profile' menu action &Выход D&uplicate This is a top 'Profile' menu action Создать &копию &Task This is a top menu action &Задача &Add This is a top 'Task' menu action &Добавить &Remove This is a top 'Task' menu action &Удалить &Modify This is a top 'Task' menu action &Изменить Create D&uplicate task This is a top 'Task' menu action Создать &копию задачи Create R&estore task This is a top 'Task' menu action Создать задачу для &восстановления Manage &Backup This is a top 'Task' menu action &Список резервных копий display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Просмотреть, восстановить или удалить резервные копии выделенной задачи Actions This is a top menu action Действия Current Profile This is a top menu action Текущий профиль Lock This is a top menu action. Refers to toolbars Заблокировать панели инструментов Show text under icons This is a top menu action Показывать текст под значками &Toolbars This is a top menu item &Панели инструментов Set paths This is a top menu action Пути Set paths for rsync and ssh commands This is a top menu action tooltip Указать пути к исполняемым файлам rsync и ssh quiet mode Тихий режим Only show errors and important messages during window update Показывать только важные сообщения и сообщения об ошибках Run start button label Выполнить Abort Abort button label Прервать Stop the execution of running tasks NOW Abort button tooltip Прервать выполнение запущенных задач Execution of tasks finished Done button tooltip Задачи завершены Dry simulation checkbox label. Translate this as 'simulation' Тест This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Будет выполнен <b>тестовый запуск</b> без сохранения изменений (хотя результат выполнения будет почти таким же, как и при настоящем запуске) shutdown shutdown button label Выключение Press down to shutdown the system when done shutdown button tooltip Выключение компьютера после выполнения всех задач Hide information window show/hide information window button tooltip Свернуть окно с информацией Show information window show/hide information window button tooltip Показать окно с информацией profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Профиль The task list is empty Список задач пустой Use the "add" button on the right to get started Please keep the add word inside quotes Для начала работы нажмите справа кнопку "Добавить" could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' не может быть сохранён default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Профиль по-умолчанию could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' не может быть создан Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Профиль is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' изменён Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Профиль could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' не может быть сохранён profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Профиль Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Невозможно создать копию профиля Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Невозможно создать копию профиля as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' с названием Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Копия профиля duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' создана успешно и называется Please select a task to duplicate first Выберите задачу, которую необходимо скопировать Please select a task first Выберите задачу Hide information window hide/show information window button tooltip Свернуть окно с информацией Show information window hide/show information window button tooltip Показать окно с информацией You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Сведения о задаче display information regarding highlighted task This is a top 'Task' menu action tooltip Показать сведения о выделенной задаче &Task &Задача Successfully created destination directory Каталог назначения успешно создан Failed to create destination directory Невозможно создать каталог назанчения manageDialog profile Профиль task Задача Delete Удалить Restore Восстановить view log Лог-файл destination: Назначение: source: Источник: hide source Скрыть Источник Close this window Закрыть окно Close Закрыть Please select a snapshot from the list Information message Выберите резервную копию из списка This directory does not exist Каталог Источник не существует This directory does not exist Information message Каталог Назначение не существует I do not have sufficient permissions to read this directory Information message Нет прав для чтения этого каталога sync dir A full phrase: sync dir a: <DIRECTORY_A> Каталог A sync dir B full phrase: sync dir a: <DIRECTORY_b> Каталог B View the logfile of the selected sync task 'view log' pushbutton tooltip Показать лог-файл выбранной синхронизации Please wait until the thread is terminated Подождите, пока выполняется программа STOP ОСТАНОВИТЬ Stop calculations NOW Остановить вычисление СЕЙЧАС Calculations terminated by user Вычисление отменено пользователем not available refers to a date-time не доступно luckyBackup - manage backup luckyBackup - резервные копии Delete the selected snapshot and its logfile Удалить выбранную резервную копию и её лог-файлы Restore the selected snapshot Восстановить выбранную резервную копию View the logfile of the selected snapshot Показать лог-файл выбранной резервной копии Calculate the differences between the source and the selected snapshot Показать различия между Источником и выбранной резервной копией Calculate differences Показать различия manageWizard not available refers to a date-time не доступно Delete backup this is the title of a wizard Удаление резервной копии Date & time simple label of the wizard gui Дата и время Path ...is a directory path Путь WARNING ПРЕДУПРЕЖДЕНИЕ You are about to delete backup data information message - line1 Вы собираетесь удалить резервную копию If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Если приведенная выше информация правильная, нажмите кнопку <b>Начать</b> Restore backup this is the title of a wizard Восстановление из резервной копии Backup path ...is the backup directory path Каталог резервной копии close Закрыть Deleting snapshot logfile info message displayed during ...logfile deletion Удаление лог-файла Updating list of snapshots info message displayed during ...snaps list update Обновление списка резервных копий Aborted Прервано Finished Завершено simulation Тест no errors Ошибок нет errors found Были обнаружены ошибки Restoring data: main trunk info message displayed during ...data restoration Восстановление файлов: основная операция Restoring data: snapshot files info message displayed during ...data restoration Восстановление файлов: резервная копия Deleting data info message displayed during ...data deletion Удаление файлов luckyBackup - manage backup luckyBackup - резервные копии Jump to previous error Предыдущая ошибка previous error Предыдущая ошибка Jump to next error Следующая ошибка next error Следующая ошибка This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Будет выполнен <b>тестовый запуск</b> без сохранения изменений (хотя результат выполнения будет почти таким же, как и при настоящем запуске) start Начать ABORT Прервать cancel Отмена The restore directory will become identical to the backup snapshot Каталог назначения станет точной копией каталога резервной копии Existing backup files will replace the corresponding files at the restore directory information message - line1. Файлы резервной копии заменят соответствующие файлы в каталоге назначения If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Если приведенная выше информация правильная, нажмите кнопку <b>Начать</b> success info message displayed after ...logfile deletion выполнено failed info message displayed after ...logfile deletion не выполнено Deleting file that lists snapshot changes info message displayed during ...file deletion Удаление файла со списком изменений между резервными копиями success info message displayed after ...file deletion выполнено failed info message displayed after ...file deletion не выполнено success info message displayed after ...snapshots list update выполнено Select new restore directory directory selection dialog title Выберите другой каталог назначения Restore path ...is the restore directory path Каталог назначения No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Файлы резервной копии не содержат изменений. Пропуск... Check this, to clone the backup snapshot to the restore directory. Установите, чтобы создать точную копию каталогов резервной копии и назначения. Delete existing data that do not exist at the backup Удалить файлы в каталоге назначения, которых нет в резервной копии Browse locally for a new restore path Выбрать другой каталог назначения change Изменить <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Простой advanced Расширенный Task name Название задачи Destination Назначение Source Источник Task properties Параметры задачи Enter a name for this task (eg "Backup my home directory") Введите название задачи (например, "Резервное копирование домашнего каталога") Name : Название: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Определите тип этой задачи: 1. Архивировать содержимое Источника внутри Назначения 2. Архивировать директорию Источника по имени внутри Назначения 3. Синхронизировать Источник и Назначение, сохраняя в них самые свежие файлы Type : Тип: Synchronize Source and Destination Синхронизация каталогов Источника и Назначения Enter the full path of the source directory (eg /home/luckyb/) Введите полный путь к каталогу Источника (например, /home/luckyb/) Source : Источник: browse localy Выбор каталога на диске Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Введите полный путь к каталогу Назначения (например, /media/backups/SiduxHome/) Destination : Назначение: eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Вместо имен групп и пользователей посылаются их числовые id и ставятся в соответствие друг другу на обоих концах. (--numeric-ids) Use numeric group and user IDs Использовать числовые ID This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Установите флажок, чтобы создавать резервные копии Источника внутри Назначения Снимите флажок, чтобы создавать резервные копии Источника внутри вложенного каталога Назначения Do NOT create extra directory НЕ создавать вложенного каталога Advanced Расширенный Shows the rsync command as it will be executed Показать команду rsync, которая будет выполнена validate Проверить Okay OK Cancel Отмена Exclude Исключить Add any directory, file or pattern to be excluded from this task Добавьте любой каталог, файл или шаблон для исключения из этой задачи Templates Шаблоны Exclude all temp folders (**/*tmp*/) Исключить все временные каталоги (**/*tmp*/) Temporary folders Временные каталоги Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Исключить смонтированные каталоги /mnt и /media (/mnt/*/**, /media/*/**) System mount folders Смонтированные каталоги Exclude all backup files & folders (**~) Исключить все архивные файлы и каталоги (**~) Backup files Архивные файлы System folders Системные каталоги Exclude all cache folders (**/*cache*/ & **/*Cache*/) Исключить все каталоги с кэшем (**/*cache*/ & **/*Cache*/) Cache folders Каталоги с кэшем Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Исключить все каталоги с корзиной (**/*Trash*/, **/*trash*/) Trash Корзину Exclude all "lost+found" folders (**/lost+found*/) Исключить все каталоги 'lost+found' (**/lost+found*/) lost+found lost+found User Defined Заданные пользователем Add exclusion as entered in the next field Добавить исключение, введённое в поле add Добавить Exclude list Список исключений Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Введите здесь имя файла, каталога или шаблон, затем нажмите кнопку "Добавить" для добавления его в список исключений * - означает любой непустой символ (останавливается на слэшах) ** - означает любой символ, включая слэш ? - означает любой символ, кроме слэша имя_каталога/*** (в конце) - означает и каталог, и всё его содержимое / (в начале) - шаблон привязывается к конкретному месту в иерархии каталогов (обычно это Источник) / (в конце) - соответствует только каталогу, но не обычным файлам, ссылкам или устройствам Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Определите тип этой задачи: 1. Резервная копия каталога Источника внутри Назначения (обратите внимание на флажок "НЕ создавать вложенного каталога") 2. Синхронизация каталогов Источника и Назначения, сохраняются новые файлы в обоих каталогах Backup Source inside Destination Резервная копия Источника внутри Назначения Description Описание Task description Описание задачи Type a description of the task Введите описание задачи Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Исключить все пользовательские каталоги .gvfs (**/.gvfs/) launch the pattern editor Открыть редактор шаблонов Remove highlighted exclusion from list Удалить выбранный пункт из списка remove Удалить Edit highlighted inclusion Изменить выбранный пункт edit Изменить Move highlighted inclusion up Переместить выбранный пункт вверх move up Вверх Move highlighted inclusion down Переместить выбранный пункт вниз move down Вниз Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Включаются ТОЛЬКО файлы, указанные в списке включений, больше ничего. Подробнее смотрите в руководстве пользователя. Правила, определённые в списке исключений, не применяются. Only Include Включать только перечисленное Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Введите здесь имя файла, каталога или шаблон, затем нажмите кнопку "Добавить" для добавления его в список исключений * - означает любой непустой символ (останавливается на слэшах) ** - означает любой символ, включая слэш ? - означает любой символ, кроме слэша имя_каталога/*** (в конце) - означает и каталог, и всё его содержимое / (в начале) - шаблон привязывается к конкретному месту в иерархии каталогов (обычно это Источник) / (в конце) - соответствует только каталогу, но не обычным файлам, ссылкам или устройствам Add inclusion as entered in the next field Добавить включение, введённое в поле Include list Список включений Remove highlighted inclusion from list Удалить выбранный пункт из списка Remote Удалённое подключение Use a remote host either for source or destination Использовать удалённый хост в качестве Источника или Назначения Use remote host Использовать удалённое подключение Use a remote host for destination data. Использовать удалённый хост в качестве Назначения. destination Назначение Use a remote host for source data. Использовать удалённый хост в качестве Источника. source Источник User: Пользователь: Enter your username for the remote host (leave blank if not applicable). Введите имя пользователя для удалённого хоста (оставьте пустым, если не требуется). @Host: @Хост: Enter the name of the remote host. Введите название удалённого хоста. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Введите полный путь к файлу, содержащему аутентификационный пароль для rsync (не ssh) (оставьте пустым, если не используется) rsync password file: Файл пароля rsync: Check this to connect to an rsync Remote module Отметьте это для соединения с Удаленным модулем rsync Remote module Удаленный модуль Use ssh as transport shell Использовать ssh как транспорт ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Введите полный путь к файлу, который содержит приватный аутентификационный ключ ssh (оставьте пустым, если не используется). Проверьте, сделали ли Вы все действия, необходимые для беспарольного ssh-соединения с использованием пары ключей OpenSSH private key file : Файл с приватным ключем: Enter the port you would like to use for the ssh connection (leave blank for default port) Введите порт, который вы хотите использовать для ssh-соединения (оставьте пустым для значения по-умолчанию) port : Порт: Command Options Опции Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Добавить или удалить опции rsync. Если Вы не совсем понимаете, что это такое - не трогайте их!! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Удалять файлы в каталоге Назначения, которых нет в Источнике. Также должно быть выбрано "Рекурсивно в подкаталогах" (--delete-after и --delete-excluded если используется "Исключить") Copy device (super user only) & special files as they are (-D) Копировать файлы физических устройств (только для суперпользователя), именованные каналы (буферы FIFO), гнёзда (сокеты) (-D) Preserve device, special files Сохранять файлы устройств, специальные файлы Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Указывает пересоздать жесткие ссылки в Назначении в соответствии с тем, что имеется в Источнике. Без этого параметра жесткие ссылки обрабатываются как обычные файлы. ВНИМАНИЕ: rsync может обнаруживать жесткие ссылки, только если обе части ссылки попадают в список предназначенных к передаче файлов!! (-H) Preserve hard links Сохранять жесткие ссылки Delete files on the destination Удалять отсутствующие файлы Recurse into directories (-r) Указывает rsync копировать каталоги рекурсивно (-r) Recurse into directories Рекурсивно в подкаталогах Do not backup source files that are newer on the destination (--update) Пропускать любые файлы, уже существующие в Назначении с более поздней датой, чем в Источнике (--update) Skip newer destination files Пропускать новые файлы Preserve the owner (super user only), group & time stamp of files (-tgo) Сохранять атибуты владельца (только для суперпользователя) и группы, время модификации файлов (-tgo) Preserve ownership, times Сохранять владельца и даты Preserve permissions of files (-p) Копирует все права на приёмную сторону точь в точь с оригиналом (-p) Preserve permissions Сохранять права Copy symlinks as symlinks (-l) Если обнаружена символьная ссылка, то она же создается и на приёмной стороне (-l) Preserve symlinks Сохранять символические ссылки Ignore files using a similar algorithm to CVS (-C) Игнорировать файлы, используя похожий на CVS алгоритм (-C) Ignore files the CVS way Игнорировать файлы как CVS User defined Заданные пользователем Enter here an rsync option to add (eg "--delete-excluded", "-X") Введите сюда дополнительные опции rsync (например, "--delete-excluded", "-X") Extra rsync options list Список дополнительных опций rsync Remove highlighted option from list Удалить выбранный пункт из списка Add rsync option as entered in the next field Добавить опцию rsync, введённую в поле options list Список опций Also Execute Также выполнить Execute extra commands, before or after the task. Выполнить дополнительные команды до и после задачи. Before До Enter here a command to be executed before the task and then press the "add" button to add it to the list below Введите команду, которая должна выполняться перед задачей и затем нажмите кнопку "Добавить" для добавления в список ниже Add command as entered in the field beside Добавить команду, введенную в поле рядом Command list Список команд Remove highlighted command from list Удалить выбранный пункт из списка Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Выполнить задачу, даже если появляется ПРЕДУПРЕЖДЕНИЕ Обычно используется, когда команды, выполняющиеся до запуска задачи, могут устранить причину предупреждения (например, примонтировать раздел) ВНИМАНИЕ: используйте, только если вы точно знаете, что делаете by-pass WARNING отключить ПРЕДУПРЕЖДЕНИЯ After После Enter here a command to be executed after the task and then press the "add" button to add it to the list below Введите команду, которая должна выполняться после задачи и затем нажмите кнопку "Добавить" для добавления в список ниже Select source directory file selection dialog title Выберите каталог Источника Select destination directory file selection dialog title Выберите каталог Назначения Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Выберите выполняемую команду Select file to read include patterns file selection dialog title Выберите файл для загрузки шаблонов включения Select file to read exclude patterns file selection dialog title Выберите файл для загрузки шаблонов исключения Please define the source before launching the pattern editor message box, message Перед запуском редактора шаблонов выберите каталог Источника ERROR message box message ОШИБКА Please specify the following before proceeding: message box, message Перед продолжением задайте следующие параметры: ERROR message box message - line1 ОШИБКА That is not allowed because '/' does not have an actual name message box message - line2 Это неправильно, поскольку '/' недопустимое имя каталога Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Установленный флажок означает, что выполнение задачи <b>ОСТАНОВИТСЯ</b> при выполнении команды с ошибкой use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Флажок - <b>ОСТАНОВИТЬ</b> задачу при ошибках You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Вы определили '/' (корневой каталог) как Источник и НЕ установили флажок "НЕ создавать вложенного каталога" Please check the relevant box before proceeding message box message - line3 Перед продолжением установите соответствующий флажок You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Введённое название задачи уже существует Please specify a different name before proceeding message box message - line2 Перед продолжением задайте другое название The source you have declared is identical to the destination message box message - line1 Каталог Назначение совпадает с каталогом Источник Please modify at least one of them message box message - line2 Измените хотя бы один из них WARNING message box message - line1 ПРЕДУПРЕЖДЕНИЕ You have declared a destination that is part of the source directory structure message box message - line1 Вы определили каталог Назначение как часть структуры каталогов Источника <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Не забудьте</b> добавить каталог Назначение в список на вкладке "Исключить" You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Похоже, что все поля в окне заполнены правильно Errors have been found message box message first line Были обнаружены ошибки command to be executed full phrase: command to be executed: <COMMAND> команда на выполнение You have already added this exclude item message box message Вы уже добавили это исключение You have already added this include item message box message Вы уже добавили это включение You have already added this option message box message Вы уже добавили эту опцию done OK done editing Сохранить изменения cancel Отмена cancel editing Отменить изменения Read exclude patterns from file Загрузить из файла шаблоны исключения Read file: Открыть файл: filename Имя файла browse Выбор файла ... Include Включить Add any directory, file or pattern to be included by this task Добавьте любой каталог, файл или шаблон для включения в эту задачу Include mode Метод обработки списка включений Mode: Метод: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Файлы, которые должны исключаться согласно списку исключений, включаются согласно списку включений. Подробнее смотрите в руководстве пользователя. Normal Include Не исключать перечисленное Read include patterns from file Загрузить из файла шаблоны включения browse locally Выбор файла на диске additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Установите, если каталог Назначения находится на разделе FAT/NTFS. Права доступа не будут сохраняться. (-t --modify-window=1) Destination is FAT/NTFS Назначение - раздел FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Количество сохраняемых резервных копий Snapshots to keep: Резервных копий: patternEditor directory : Каталог: Select file Укажите файл Please choose a file within the source Выберите файл внутри источника Select directory Укажите каталог Please choose a directory within the source Выберите каталог внутри источника file : Файл: pattern editor Редактор шаблонов Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Отметьте, чтобы использовать указанный каталог как корневой если не отмечено, шаблон будет применяться ко всем файлам/каталогам, соответствующим критериям Define here, what would you like the pattern to refer to Укажите, что нужно включить в шаблон The pattern refers to a: Что включается в шаблон: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Включить в шаблон конкретный файл например, "/media/Музыка/Альбом/Трек.mp3" Specific file Конкретный файл Use this if the pattern refers to a specific directory eg "/media/music/Album/" Включить в шаблон конкретный каталог например, "/media/Музыка/Альбом/" Specific directory Конкретный каталог Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Включить в шаблон набор файлов, названия которых имеют что-то общее например, все файлы с расширением ".txt" Set of files Набор файлов Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Включить в шаблон набор каталогов, названия которых имеют что-то общее например, все каталоги с названием "temp" Set of directories Набор каталогов name Названия файлов/каталогов starts with : начинаются с : Enter here the starting characters of the name of the files/directories that the pattern refers to Введите начальные символы названий файлов/каталогов для включения в шаблон ends with : заканчиваются на : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Введите последние символы названий файлов/каталогов для включения в шаблон например, для включения всех файлов".txt", введите .txt Enter here the name of the files/directories that the pattern refers to Введите название файлов/каталогов для включения в шаблон is exactly : совпадают с : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Введите символы, которые могут находится в любом месте названий файлов/каталогов для включения в шаблон contains : содержат : browse localy for a file Выбор файла на диске browse localy for a directory path Выбор каталога на диске use absolute path использовать корневой каталог Go deeper in path by : Глубина вложения : Go deeper in path by any level Неограниченная глубина вложения подкаталогов any любая Define here the name criteria for the files/directories to be matched Определите критерии совпадения для набора файлов/каталогов final pattern Итоговый шаблон The actual pattern is displayed here Здесь отображается итоговый шаблон Reset the pattern editor fields to the default values Вернуть все поля редактора к значениям по-умолчанию reset Сброс Okay OK Cancel Отмена Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Укажите глубину вложения подкаталогов например В каталоге "/media/Музыка" находятся 3 подкаталога: 1.Рок 2.Джаз 3.Саундтреки Чтобы включить все содержимое этих 3 подкаталогов, укажите следующее: * Набор каталогов * Содержимое каталога * путь :/media/Музыка/ * Глубина вложения подкаталогов "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Включить в шаблон содержимое каталога (или набора каталогов), а не сам каталог например, содержимое каталога "/media/Музыка/Альбом/" Directory contents Содержимое каталога scheduleDialog Starting from scratch Создан пустой файл расписания No schedules are declared !! Не определено ни одного расписания!! Unable to create schedule file Невозможно создать файл расписания You have reached the maximum limit of supported scheduled profiles Достигнуто максимальное количество записей в расписании You have to remove an item if you wish to add another Удалите какой-либо элемент, чтобы добавить новую запись Add profile schedule Добавить запись в расписание Modify profile schedule Изменить запись в расписании Profile schedule details Подробности записи в расписании Invalid profile Неправильный профиль Execute profile Выполнить профиль hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at в every каждый day день Sunday Воскресенье Monday Понедельник Tuesday Вторник Wednesday Среда Thursday Четверг Friday Пятница Saturday Вторник & on the и st as in 1st day -ый nd as in 2nd day -ой rd as in 3rd day -ий th as in 4th, 5th, 6th or 7th day th as in 8th day -ой th as in 9th day -ый th as in 10th day -ый th as in 11th day -ый th as in 12th....19th day -ый th as in 20th day -ый st as in 21st day -ый nd as in 22nd day -ой rd as in 23rd day -ий th as in 24th...30th day st as in 31st day -ый of any month любого месяца of January full phrase: 'of January' января February full phrase: 'of February' февраля March full phrase: 'of March' марта April full phrase: 'of April' апреля May full phrase: 'of May' мая June full phrase: 'of June' июня July full phrase: 'of July' июля August full phrase: 'of August' августа September full phrase: 'of September' сентября October full phrase: 'of October' октября November full phrase: 'of November' ноября December full phrase: 'of December' декабря Unable to create cron file Невозможно создать cron-файл luckyBackup - schedule luckyBackup - расписание <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Расписание выполнения профиля</span></p></body></html> Add a new profile schedule Добавить новое расписание профиля add Добавить Modify selected profile schedule Изменить выбранное расписание профиля modify Изменить Remove selected profile schedule Удалить выбранное расписание профиля remove Удалить Profile : Профиль: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Пропустить задачи, которые имеют предупреждение "КРИТИЧНО" после проверки каталогов skip critical Пропустить критические time (hour:min) : Время (часы:минуты): set this value to -1 for the schedule to occur every hour : : :delay :задержка Delay luckybackup execution at startup Задержка выполнения luckybackup после загрузки min means: minutes (time) мин day of week : День недели: Any Любой month : Месяц: January Январь February Февраль March Март April Апрель May Май June Июнь July Июль August Август September Сентябрь October Октябрь November Ноябрь December Декабрь day of month : День месяца: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Установите флажок, если ваш компьютер не поддерживает графическую среду (например, сервер) Console Mode Консольный режим okay OK Cancel Отмена schedule the execution of profiles as declared in the list above Добавить в файл crontab расписание выполнения профилей cronIT !! Добавить в crontab The existent schedule file is not a valid luckyBackup v. v is for version Существующий файл расписания не совместим с файлом luckyBackup версии file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Расписание содержит несохранённые изменения Are you sure you want to close the schedule dialog ? Вы уверены что хотите закрыть окно? Your crontab is updated successfully Файл crontab успешно обновлён no crontab entries exist в файле crontab нет записей crontab content содержимое файла crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup один раз при загрузке Run once, at startup Выполнить один раз, при загрузке @ reboot после перезагрузки close this dialog Закрыть окно close Закрыть Display the current crontab Показать содержимое файла crontab view current crontab Файл crontab textDialog Enter the name of the new profile : Введите название нового профиля: Enter the new name of the profile : Введите новое название профиля: Profile description : Описание профиля: A profile with the same name already exists Профиль с таким названием уже существует Please enter a different name Пожалуйста, введите другое название Enter password : Введите пароль: Enter passphrase : Введите парольную фразу: Do not show this again for this task Больше не показывать это сообщение для этой задачи You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Вы выбрали тип "Резервная копия каталога Источника внутри Назначения"<br>одновременно с опцией "Удалять файлы, которых нет в Источнике" BEWARE, if your intention is NOT to clone source to destination !! ОСТОРОЖНО, если вы НЕ намерены создавать точную копию Источника и Назначения !! Are you sure you wish to proceed ?? Вы уверены, что хотите продолжить? luckyBackup luckyBackup Okay OK Cancel Отмена Copy command to clipboard Копировать команду в буфер обмена eMail information Результат выполнения команды No Нет Yes Да winDialog luckyBackup luckyBackup declaration of paths Пути к программам rsync: rsync: Enter the full path of the rsync command Введите полный путь к исполняемому файлу rsync browse locally Выбор файла на диске Use default value По-умолчанию ssh: Enter the full path of the ssh command Введите полный путь к исполняемому файлу ssh cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay OK Cancel Отмена Select rsync command file selection dialog title Укажите путь для запуска rsync Executable Files (*.exe) Исполняемые файлы (*.exe) Select ssh command file selection dialog title Укажите путь для запуска ssh Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_gl.ts0000666000175000017500000070027213165410113021474 0ustar luckybluckyb CalcDiffThread Scanning destination Analizando o destino Please wait Agarde Scanning snapshot Analizando a imaxe Scanning source Analizando a orixe Calculating differences Calculando as diferenzas Sync dir A & B differences Diferenzas entre os cartafoles de sinc. A e B Snapshot and source differences Diferenzas entre a imaxe e a orixe Sync dir B data that also exists at sync dir A and is different Datos no cartafol de sinc. B que existen no cartafol de sinc. A e son diferentes Snapshot data that also exists at the source and is different Datos da imaxe que tamén existen na orixe e son difetentes The snapshot data will replace the source data during RESTORE Os datos da imaxe substituirán os datos da orixe durante o RESTABELECEMENTO Data amount is huge. Displaying only first entries A cantidade de datos é moi grande. Mostrando só as primeiras entradas Sync dir B data that do NOT exist at sync dir A Datos do cartafol de sinc. B que NON existen no A Snapshot data that do NOT exist at the source Datos da imaxe que NON existen na orixe These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Estes transferiranse á orixe durante o RESTABELECEMENTO Sync dir A data that do NOT exist at sync dir B Datos do cartafol de sinc. A que NON existen no B Source data that do NOT exist at the snapshot Datos da orixe que NON existen na imaxe These will be deleted during RESTORE only if you enable the option: Estes eliminaranse durante o RESTABELECEMENTO só se activa esta opción: delete existing source data that do not exist at the backup eliminar os datos existentes na orixe que non existen na copia QObject The task list is empty A lista de tarefas está baleira nothing to start nada que iniciar You have included both of the following connected tasks: Incluiu as seguintes tarefas conectadas: this is not allowed for obvious reasons isto non se permite por razóns obvias Please <b>uncheck appropriate include boxes</b> before proceeding <b>Desmarque os recadros axeitados</b> antes de continuar You have not included any tasks Non incluiu ningunha tarefa The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory As seguintes tarefas incluídas <b>comparten o mesmo cartafol de destino</b> (xuntas ou en grupos) e polo menos unha copiará os contidos dun cartafol this will lead to one task canceling the other isto provocará que unha tarefa cancele a outra Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Desmarque os cadros axeitados ou cambie todos os tipos de tarefas a outras que «<b>Copien os contidos do cartafol</b>» ou use «Copiar os contidos do cartafol» xunto coa opción «<b>Incluír só</b>» antes de continuar pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting execución da orde pre-tarefa starting Full phrase: pre-task execution of command: <COMMAND> starting comezando Command re-run due to failure This means that a specific command is run for once more because it failed the first time Nova execución da orde debido a un fallo post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting execución da orde post-tarefa starting Full phrase: post-task execution of command: <COMMAND> starting comezando execution of task Full phrase: execution of task: <TASKNAME> starting execución da tarefa starting Full phrase: execution of task: <TASKNAME> starting comezando Source Full phrase: source: <SOURCE_NAME Orixe Destination Full phrase: Destination: <DEST_NAME Destino execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting execución da 1ª parte da tarefa starting Full phrase: execution of 1st part of task: <TASKNAME> starting comezando Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sincronizando to Full phrase: Syncing <DIR-A> to <DIR-B> a execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting execución da 2ª parte da tarefa starting Full phrase: execution of 2nd part of task: <TASKNAME> starting comezando Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sincronizando to Full phrase: Syncing <DIR-B> to <DIR-A> a pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished execución da orde pre-tarefa finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished rematada post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished execución da orde post-tarefa finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished rematada execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished execución da 1ª parte da tarefa finished Full phrase: execution of 1st part of task: <TASKNAME> finished rematada execution of task Full phrase: execution of task: <TASKNAME> finished execución da tarefa finished Full phrase: execution of task: <TASKNAME> finished rematada execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error a execución da tarefa finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error rematou por un erro da execución pre/post-tarefa The process reported an error O proceso informou dun erro Backing-up profile, logfiles and snapshot data Copiando os datos do perfil, dos ficheiros de rexistro e da imaxe Could not open the logfile Non foi posíbel abrir o ficheiro do rexistro The logfile does not exist O ficheiro do rexistro non existe The specified command is probably not installed Posibelmente a orde especificada non está instalada The logfile could not be created Non foi posíbel crear o ficheiro do rexistro command: orde: exit code: código de saída: output: saída: Last execution time Data e hora da última execución not available non dispoñíbel no errors sen erros errors found erros atopados status estado OK OK Sync directory Sincronizar cartafol Source directory Cartafol de orixe Using remote, check is skipped Uso remoto, comprobación ignorada Destination directory Cartafol de destino free as in free disk space libre WARNING AVISO I do not have the permission to read/enter sync directory A Non hai permisos para ler/entrar no cartafol de sincronización A I do not have the permission to read/enter the source directory Non hai permisos para ler/entrar no cartafol de orixe I do not have the permission to read/enter sync directory B Non hai permisos para ler/entrar no cartafol de sincronización B I do not have the permission to read/enter the destination directory Non hai permisos para ler/entrar no cartafol de destino Directory Cartafol and/or e/o does not exist non existe is not mounted non está montado is empty or does not exist está baleiro ou non existe I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option <font color=red><b>NON SE SALTARÁ</b></font> esta tarefa porque ten activada a opción "ignorar AVISO" This task will be <font color=red><b>skipped</b></font> Esta tarefa <font color=red><b>ignorarase</b></font> CRITICAL CRÍTICO is empty está baleiro I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway <font color=orange><b>Non se saltará</b></font> esta tarefa. A sincronización executarase de todos os xeitos This task will <font color=orange><b>not be skipped Esta tarefa <font color=orange><b>non se saltará The Destination Directory will be created if it doesn't exist and filled with new backup data Se non existe, crearase o cartafol de destino e encherase cos datos da nova copia de seguranza Task description Descrición da tarefa ReadLogFile Could not locate the logfile Could not open the logfile Non foi posíbel abrir o ficheiro do rexistro aboutDialog using Qt4 usando QT4 Backup & Sync Application Aplicativo para copias de seguranza e sincronización Loukas Avgeriou Loukas Avgeriou It 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. Distribúese para se útil pero SEN GARANTÍA NINGUNHA; nin sequera a garantía ESTÁNDAR para bens semellantes nin ADAPTACIÓN A UN PROPÓSITO PARTICULAR. See the 'License Agreement' tab for more details. Vexa a lapela «Acordo da Licenza» para máis información. Athens, Greece Atenas, Grecia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Patrick Matthaei Debian package maintainer Nikolas Poniros Greek gui translator and valuable tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic ubuntu package maintainer (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink port to Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Gentoo ebuild maintainer Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Czech gui translator Stergios Prosiniklis Greek manual translator German gui translator Wilfried Schobel Sergio Gameiro Portuguese gui translator Marcio Moraes Julien Cynober French gui translator and valuable packing advisor (and not only) Raffaele Italian gui translator using Qt António Correia Aurelien Merckel Denis Skorski Russian gui translator and valuable tester Kenny Verstraete Dutch gui translator Martin Grashoff (linuxrev) Subhi Honaco Bosnian gui translator & mandriva package maintainer Majed Sahli Arabic gui translator Adrian Murariu Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero v0.3 gui designer fri13 v.0.3 gui designer Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Manuel Meixide Marcos Lans Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...a todos os ususarios dos forums for their support. foros polo seu apoio. Especially Especialmente that contributed to this project one way or another que colaboraron con este proxecto dun ou doutro xeito Last but no least Último pero non menos importante Could not locate the license file Non foi posíbel localizar o ficheiro da licenza no money Apoio non económico If you like this app and would like to donate something to me personally, all you have to do is: Se lle gusta este aplicativo e desexa realizar unha doazón, todo o que ten que facer é: Give a thumbs up at: Apoiar este proxecto en: Vote good & become a fan at: Votar «good» e converterse nun seguidor en: This is my reward :) Esa é a miña recompensa :) money Apoio económico I personally never had and never will accept money for this project. Eu persoalmente nunca aceptei e nunca aceptarei cartos por este proxecto. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. Por iso, considere facer unha doazón económica a unha boa causa. donation link ligazón para doar luckyBackup - about luckyBackup - sobre close pechar &About &Sobre <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Asistencia A&uthor A&utor &Thanks to &Grazas a &License Agreement &Acordo da Licenza luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Thomas Janssen Fedora package maintainer (official repo) Karsten Jaschultowski Francesco Braile Andrej Znidarsic Slovenian gui translator E. Hakan Duran Turkish gui translator Tito Poquito slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email luckyBackup - correo-e Email a report after profile execution Enviar un correo-e despois de executar o perfil command: orde: Use default This means "use the default value for this field" Usar o valor predeterminado Arguments Argumentos %f from: %f de: Enter the sender of the message Introducir o remitente da mensaxe %l logfile %l ficheiro do rexistro %c logfile.tar.gz %c logfile.tar.gz %d date %d data %i time %i hora %p profile name %p nome do perfil %e No of errors %e Nº de erros If unchecked "TLS auto" is used. Only available for sendemail Se non está marcado, utilizarase «TLS-auto». Só dispoñíbel para sendemail Disable TLS Desactivar TLS %t to: %t a: Enter the recipient of the message Introducir o destinatario da mensaxe %s subject: %s asunto: Enter the subject of the message Introducir o asunto da mensaxe %v smtp server: %v servidor smtp: Enter the smtp server used to send the message Introducir o servidor smtp que se usou para enviar a mensaxe %b body: %b corpo: Enter the body of the message Introducir o corpo da mensaxe Send an email right now to test the provided arguments Enviar un correo-e agora para comprobar os argumentos indicados Test Proba Accept changes and close dialog Aceptar os cambios e pechar o diálogo Okay Aceptar Close dialog Pechar diálogo Cancel Cancelar Specify the conditions to send an email Indicar as condicións para enviar un correo-e Enter the command to run eg sendemail Introduza a orde a executar p.e. sendemail arguments: argumentos: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Introduza os argumentos da orde email p.e: -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Condicións Only send when error(s) occured during a run Enviar só se ocorren erros durante a execución Error(s) occured Erros atopados Only send when profile is scheduled to run Enviar só cando se programou un perfil para execución Profile is scheduled Programouse o perfil Never send an email Non enviar un correo-e nunca Never Nunca The command field is empty O campo da orde está baleiro helpBrowser luckyBackup - help luckyBackup - axuda manual/ manual/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - progreso da execución das tarefas <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error erro anterior next error erro seguinte close pechar loading logfile... cargando o ficheiro do rexistro... wait agarde luckyBackupWindow commands output output window label saída de ordes rsync and pre/post task commands output is displayed here tooltip a saída de rsync e das ordes pre/post tarefa móstranse aquí Task list task list label Lista de tarefas List of all the available tasks task list tooltip - line1 Lista das tarefas dispoñíbeis Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Usar os recadros de inclusión para incluír ou non unha tarefa Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Execución do perfil finished full phrase: 'Execution of profile <PROFILENAME> finished' rematado simulation mode modo simulación Could not update last execution time of tasks Non foi posíbel actualizar a data e a hora da última execución das tarefas Last execution time of tasks updated Actualizouse a data e a hora da última execución das tarefas &Abort &Cancelar &Minimize to tray tray menu action &Minimizar á bandexa &Restore tray menu action &Restabelecer execution of profile: tray message - execution of profile: <PROFILENAME> in progress... execución do perfil: in progress... tray message - execution of profile: <PROFILENAME> in progress... en proceso... Removed all older snapshots data Eliminados os datos das imaxes antigas failed to remove all older snapshots data produciuse un fallo eliminando os datos das imaxes antigas Unknown error Erro descoñecido Elapsed time Tempo transcorrido pre-task execution of command execución da orde pre-tarefa post-task execution of command execución da orde post-tarefa Now performing task Executando a tarefa Directory Cartafol calculating calculando deleting files eliminando ficheiros Total files transferred trying to send an email tentando enviar un correo electrónico The system will shutdown in 1 minute O sistema pechará nun minuto Source Orixe Destination Destino All tasks completed Completáronse todas as tarefas No errors found Non se atoparon erros errors found erros atopados logfile(s) have been created under directory: os ficheiros do rexistro creáronse no cartafol: Done Feito execution of profile: execución do perfil: finished rematado Execution of tasks were terminated violently by user A execución das tarefas cancelouse abruptamente polo usuario &Profile This is a top menu item &Perfil &Settings This is a top menu item &Axustes &Language This is a top menu item &Idioma &Help This is a top menu item &Axuda &Handbook full phrase: 'luckyBackup Handbook' &Manual &About full phrase: 'about luckyBackup' &Sobre current profile perfil actual include label of 'include' checkboxes incluír Move the highlighted task up, by one position button tooltip Mover a tarefa seleccionada un posto cara a arriba Move the highlighted task down, by one position button tooltip Mover a tarefa seleccionada un posto cara a abaixo jump to next error button tooltip ir ao erro seguinte jump to previous error button tooltip ir ao erro anterior Task task groupbox (add, remove, modify buttons) label Tarefa add add task button label engadir add task add task button tooltip engadir tarefa remove remove task button label eliminar remove highlighted task remove task button tooltip eliminar a tarefa seleccionada modify modify task button label modificar modify highlighted task modify task button tooltip modificar a tarefa seleccionada Begin the execution of all included tasks start button tooltip Comezar a execución de todas as tarefas incluídas NOTE simulation checkbox tooltip - line2 AVISO Progressbar update will not be realistic simulation checkbox tooltip - line2 A actualización da barra de progreso non será real Information window information window title Xanela informativa Exit exit button tooltip. full phrase is: 'exit luckybackup' Saír EXIT EXIT button label SAÍR minimize to tray minimizar á bandexa minimizes the window to the tray area minimiza a xanela á bandexa F1 F1 English English &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Solicitou crear unha tarefa de RESTABELECEMENTO Please have a good look at the following task properties dialog 'create restore' message line 2/4 Comprobe con coidado o seguinte diálogo das propiedades da tarefa and change anything you wish before proceeding 'create restore' message line 3/4 e cambie todo o que desexe antes de continuar Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Marcar especialmente os recadros «Nome da tarefa», «orixe», «destino» e «ignorar os ficheiros máis recentes do destino» (avanzado) ERROR ERRO loading default profile ... information window message cargando o perfil predeterminado... loading profile ... information window message cargando o perfil... loading failed information window message fallou a carga Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Non é posíbel abrir o perfil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y non é válido para version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versión: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' perfil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' cargado correctamente scheduled this refers to a profile programado YES SI NO NON Description Descrición saving default profile ... Information window message gardando o perfil predeterminado... saving profile ... Information window message gardando o perfil... WARNING AVISO default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. perfil predeterminado profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' O perfil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' O perfil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' gardouse correctamente creating default profile ... Information window message creando o perfil predeterminado... creating profile ... Information window message creando o perfil... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' O perfil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' creouse correctamente Would you like to save it before proceeding ? Desexa gardalo antes de continuar? Would you like to proceed anyway? Desexa seguir de calquera xeito? super user super user is the root user super-usuario super user mode modo super-usuario Welcome to full phrase: 'Welcome to luckyBackup' Benvido/a a English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Galego Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Produciuse un fallo ao crear o perfil novo The name you have entered contains only invalid characters O nome que introduciu contén só caracteres incorrectos Profile full phrase: 'Profile <PROFILENAME> already exists' O perfil already exists full phrase: 'Profile <PROFILENAME> already exists' xa existe Would you like to replace it ? Desexa substituílo ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Produciuse un fallo ao substituír o perfil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Produciuse un fallo ao renomear o perfil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' O perfil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renomeouse correctamente como default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. O perfil predeterminado renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renomeouse correctamente como All relevant files (logs etc) have also been updated Tamén se actualizaron todos os ficheiros importantes (rexistros...) Failed to update all relevant files (logs etc) Produciuse un fallo ao actualizar os ficheiros importantes (rexistros...) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Está seguro de eliminar o perfil predeterminado a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' crearase un perfil baleiro co mesmo nome Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Está seguro de eliminar o perfil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Produciuse un fallo na eliminación do perfil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' O perfil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' eliminouse correctamente All relevant files (logs etc) have also been deleted Tamén se eliminaron todos os ficheiros importantes (rexistros...) Failed to delete all relevant files (logs etc) Produciuse un fallo ao eliminar os ficheiros importantes (rexistros...) Profile full phrase: 'Profile <PROFILENAME> set as default' O perfil set as default full phrase: 'Profile <PROFILENAME> set as default' estabeleceuse como predeterminado All relevant files (logs etc) have also been duplicated Tamén se duplicaron todos os ficheiros importantes (rexistros...) Failed to duplicate all relevant files (logs etc) Produciuse un fallo ao duplicar os ficheiros importantes (rexistros...) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Descrición do perfil set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' é Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importar perfil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Produciuse un fallo ao importar o perfil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' O perfil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importouse correctamente as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' como and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' e engadiuse á lista se perfís Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Non foi posíbel localizar o ficheiro You have reached the maximum limit of supported tasks Acadou o límite máximo de tarefas permitidas You have to remove a task if you wish to add another !! Debe eliminar unha tarefa para poder engadir outra. Select export directory this is a dialog title for selecting a directory to export a profile to Seleccionar o destino da exportación Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Produciuse un fallo ao exportar o perfil to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' a Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' O perfil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exportouse correctamente a The directory you have selected does not contain valid profile data O cartafol seleccionado non contén datos válidos do perfil Errors occured during snapshots and logfiles transfer Erros durante a transferencia das imaxes e dos ficheiros do rexistro Errors occured during snapshots transfer Erros durante a transferencia das imaxes Errors occured during logfiles transfer Erros durante a transferencia dos ficheiros do rexistro Errors occured during the profile file transfer Erros durante a transferencia do ficheiro do perfil Please select a task to modify first Seleccione primeiro unha tarefa que modificar Please select a task to remove first Seleccione primeiro unha tarefa que eliminar Are you sure you want to remove the following task ?? Está seguro de eliminar a seguinte tarefa?? Would you like to also remove: Desexa eliminar tamén: Please select a task to manage first Primeiro debe seleccionar unha tarefa nothing to do nada que facer current crontab <font color=green>updated successfully crontab actual<font color=green>actualizado correctamente Email preferences have been <font color=green>updated successfully Os axustes do correo electrónico <font color=green>actualizáronse correctamente status estado NOT INCLUDED NON INCLUÍDO Checks are disabled. This task will be <b>skipped</b> As comprobacións están desactivadas. Esta tarefa <b>ignorarase</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' A lista de tarefas do perfil and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' e a lista despregábel do perfil refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' actualizáronse luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Xanela de información CheckBox Caixa de comprobación <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Perfil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Cancelando: agarde a que rematen todos os procesos Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Eliminando as imaxes antigas e os ficheiros de rexistro das tarefas Removing Eliminando failed to remove fallou a eliminación Failed to start this refers to a process Produciuse un fallo ao iniciar Crashed this refers to a process Fallo Timed out this refers to a process Excedeuse o tempo Write error this refers to a process Erro de escritura Read error this refers to a process Erro de lectura Unknown error this refers to a process Erro descoñecido calculating info message displayed during ...calculations calculando transferring files info message displayed during ...file transfers transferindo ficheiros deleting files info message displayed during ...file deletions eliminando ficheiros transferring files transferindo ficheiros Total files transfered Ficheiros transferidos ABORTED CANCELADO &Refresh This is a top 'Profile' menu action &Actualizar De&fault This is a top 'Profile' menu action P&redeterminado Set as Default This is a top 'Profile' menu action tooltip Facer predeterminado &View/Edit Description This is a top 'Profile' menu action &Ver/Editar a descrición View/Edit the profile description This is a top 'Profile' menu action tooltip Ver/Editar a descrición do perfil R&ename This is a top 'Profile' menu action R&enomear &Delete This is a top 'Profile' menu action &Eliminar &New This is a top 'Profile' menu action &Novo &Save This is a top 'Profile' menu action &Gardar E&xport This is a top 'Profile' menu action E&xportar &Import This is a top 'Profile' menu action &Importar S&chedule This is a top 'Profile' menu action Pro&gramar E&mail This is a top 'Profile' menu action C&orreo electrónico Email report after profile execution This is a top 'Profile' menu action tooltip Enviar correo-e despois de executar o perfil &Quit This is a top 'Profile' menu action &Saír D&uplicate This is a top 'Profile' menu action D&uplicar &Task This is a top menu action &Tarefa &Add This is a top 'Task' menu action Eng&adir &Remove This is a top 'Task' menu action &Eliminar &Modify This is a top 'Task' menu action &Modificar Create D&uplicate task This is a top 'Task' menu action Crear tarefa de d&uplicación Create R&estore task This is a top 'Task' menu action Crear tarefa de r&estabelecemento Manage &Backup This is a top 'Task' menu action Xestionar copias de seguranza display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Accións Current Profile This is a top menu action Perfil actual Lock This is a top menu action. Refers to toolbars Bloquear Show text under icons This is a top menu action Mostrar texto debaixo das iconas &Toolbars This is a top menu item Barras de ferramen&tas Set paths This is a top menu action Estabelecer as rutas Set paths for rsync and ssh commands This is a top menu action tooltip Estabelecer as rutas para as ordes rsync e ssh quiet mode modo silencioso Only show errors and important messages during window update Mostrar só os erros e mensaxes importantes Run start button label Executar Abort Abort button label Cancelar Stop the execution of running tasks NOW Abort button tooltip Deter a execución das tarefas AGORA Execution of tasks finished Done button tooltip Rematou a execución das tarefas Dry simulation checkbox label. Translate this as 'simulation' Proba This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Executarase unha <b>simulación</b> que non fai ningún cambio (envía as mesmas saídas por pantalla que unha execución real) shutdown shutdown button label pechar Press down to shutdown the system when done shutdown button tooltip Prema abaixo para que se peche o sistema ao rematar Hide information window show/hide information window button tooltip Ocultar a xanela informativa Show information window show/hide information window button tooltip Mostrar a xanela informativa profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end perfil The task list is empty A lista de tarefas está baleira Use the "add" button on the right to get started Please keep the add word inside quotes Usar o botón «Engadir» situado á dereita para comezar could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' non foi posíbel gardalo default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. O perfil predeterminado could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' non foi posíbel crealo Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' O perfil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' modificouse Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' O perfil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' non se puido gardar profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. O perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Produciuse un fallo ao duplicar o perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Produciuse un fallo ao duplicar o perfil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' como Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' O perfil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicouse correctamente como Please select a task to duplicate first Seleccione primeiro unha tarefa que duplicar Please select a task first Primeiro seleccione unha tarefa Hide information window hide/show information window button tooltip Ocultar a xanela informativa Show information window hide/show information window button tooltip Mostrar a xanela informativa You have only included tasks that are going to be skipped Incluiu unicamente tarefas que se van saltar Manage Task This is a top 'Task' menu action Xestión de tarefas display information regarding highlighted task This is a top 'Task' menu action tooltip Mostrar a información da tarefa seleccionada &Task &Tarefa Successfully created destination directory O cartafol de destino creouse correctamente Failed to create destination directory Produciuse un fallo ao crear o cartafol de destino manageDialog profile perfil task tarefa Delete Eliminar Restore Restabelecer view log ver o rexistro destination: destino: source: orixe: hide source agochar a orixe Close this window Pechar esta xanela Close Pechar Please select a snapshot from the list Information message Seleccione unha imaxe da lista This directory does not exist Esta cartafol non existe This directory does not exist Information message Este cartafol non existe I do not have sufficient permissions to read this directory Information message Non teño permisos para ler este cartafol sync dir A full phrase: sync dir a: <DIRECTORY_A> Cartafol de sincronización. A sync dir B full phrase: sync dir a: <DIRECTORY_b> Cartafol de sincronización B View the logfile of the selected sync task 'view log' pushbutton tooltip Ver o rexistro da tarefa de sincronización seleccionada Please wait until the thread is terminated Agarde a que remate a tarefa STOP PARAR Stop calculations NOW Parar os cálculos AGORA Calculations terminated by user Cálculos parados polo usuario not available refers to a date-time non dispoñíbel luckyBackup - manage backup luckyBackup - xestionar copia de seguranza Delete the selected snapshot and its logfile Eliminar a imaxe seleccionada e o seu ficheiro do rexistro Restore the selected snapshot Restabelecer a imaxe seleccionada View the logfile of the selected snapshot Ver o rexistro da imaxe seleccionada Calculate the differences between the source and the selected snapshot Calcular as diferenzas entre a orixe e a imaxe seleccionada Calculate differences Calcular as diferenzas manageWizard not available refers to a date-time non dispoñíbel Delete backup this is the title of a wizard Eliminar a copia Date & time simple label of the wizard gui Data e hora Path ...is a directory path Ruta WARNING AVISO You are about to delete backup data information message - line1 Vai eliminar a copia de seguranza If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Se a información é correcta, prema <b>Comezar</b> Restore backup this is the title of a wizard Restabelecer a copia de seguranza Backup path ...is the backup directory path Ruta á copia close pechar Deleting snapshot logfile info message displayed during ...logfile deletion Eliminando o ficheiro de rexistro da imaxe Updating list of snapshots info message displayed during ...snaps list update Actualizando a lista das imaxes Aborted Cancelado Finished simulation simulación no errors sen erros errors found erros atopados Restoring data: main trunk info message displayed during ...data restoration Restabelecendo os datos: tronco principal Restoring data: snapshot files info message displayed during ...data restoration Restabelecendo os datos: ficheiros das imaxes Deleting data info message displayed during ...data deletion Eliminando os datos luckyBackup - manage backup luckyBackup - xestión da copia Jump to previous error Ir ao erro anterior previous error erro anterior Jump to next error Ir ao erro seguinte next error erro seguinte This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Executa <b>unha simulación</b> que non modifica nada (e mostra case a mesma saída que a real) start comezar ABORT CANCELAR cancel cancelar The restore directory will become identical to the backup snapshot O cartafol de restauración será idéntico á imaxe da copia de seguranza Existing backup files will replace the corresponding files at the restore directory information message - line1. As copias existentes substituirán os ficheiros correspondentes no cartafol de restauración If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Se a información superior é correcta, prema <b>iniciar</b> para comezar success info message displayed after ...logfile deletion rematado failed info message displayed after ...logfile deletion fallou Deleting file that lists snapshot changes info message displayed during ...file deletion Eliminando o ficheiro que lista os cambios nas imaxes success info message displayed after ...file deletion rematado failed info message displayed after ...file deletion fallou success info message displayed after ...snapshots list update rematado Select new restore directory directory selection dialog title Seleccionar o novo cartafol de restauración Restore path ...is the restore directory path Ruta de restauración No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Non existen datos específicos da imaxe. Saltando... Check this, to clone the backup snapshot to the restore directory. Marcar isto para clonar as imaxes das copias ao cartafol de restauración. Delete existing data that do not exist at the backup Eliminar os datos que non existen na copia Browse locally for a new restore path Buscar localmente unha nova ruta de restauración change cambiar <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple simple advanced avanzado Task name Nome da tarefa Destination Destino Source Orixe Task properties Propiedades da tarefa Enter a name for this task (eg "Backup my home directory") Name : Nome : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definir o tipo de tarefa: 1. Copiar os contidos da orixe dentro do destino 2. Copiar o cartafol da orixe polo nome dentro do destino 3. Sincronizar orixe e destino mantendo os ficheiros máis recentes en ambos os dous Type : Tipo : Synchronize Source and Destination Sincronizar orixe e destino Enter the full path of the source directory (eg /home/luckyb/) Introducir a ruta completa ao cartafol de orixe (p.e: /Cartafol persoal/luckyb/) Source : Orixe : browse localy examinar localmente Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Introducir a ruta completa ao cartafol de destino (p.e: /media/copias/luckyb/) Destination : Destino : eg -C4c arcfour,blowfish-cbc eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs Usar identificadores numéricos de grupos e usuarios This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Tentar accións de super-usuario Backup open files Copiar os ficheiros abertos Repeat any command that fails, x times Repetir X veces as ordes que fallen Repeat on fail: Repetir cando falle: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Marcar isto para clonar a orixe no destino Deixar sen marcar para crear un cartafol extra dentro do destino Do NOT create extra directory NON crear cartafol extra Advanced Avanzado Shows the rsync command as it will be executed Mostra a orde rsync a segundo se executa validate validar Okay Aceptar Cancel Cancelar Exclude Excluír Add any directory, file or pattern to be excluded from this task Engada os cartafoles, ficheiros ou patróns que desexe excluír desta tarefa Templates Exclude all temp folders (**/*tmp*/) Excluír todos os cartafoles temporais (**/*tmp*/) Temporary folders Cartafoles temporais Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Excluír os cartafoles de montaxe do sistema /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Cartafoles de montaxe do sistema Exclude all backup files & folders (**~) Excluír os ficheiros e cartafoles que son copias de seguranza (**~) Backup files Copias de seguranza dos ficheiros System folders Cartafoles do sistema Exclude all cache folders (**/*cache*/ & **/*Cache*/) Excluír todos os cartafoles da caché (**/*cache*/ & **/*Cache*/) Cache folders Cartafoles da caché Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Excluír todos os cartafoles do lixo (**/*Trash*/, **/*trash*/) Trash Lixo Exclude all "lost+found" folders (**/lost+found*/) Excluír todos os cartafoles «lost+found» (**/lost+found*/) lost+found lost+found User Defined Definido polo usuario Add exclusion as entered in the next field Engadir como exclusión o elemento do seguinte campo add engadir Exclude list Lista de exclusións Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definir o tipo de tarefa: 1. Copiar o cartafol de orixe dentro do destino (ver tamén o cadro «NON crear cartafol) 2. Sincronizar orixe e destino mantendo os ficheiros máis recentes en ambos os dous Backup Source inside Destination Copiar a orixe dentro do destino Description Descrición Task description Descrición da tarefa Type a description of the task Escriba unha descrición da tarefa Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Excluír os cartafoles do sistema /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Excluír os cartafoles gvfs do usuario (**/.gvfs/) launch the pattern editor iniciar o editor de patróns Remove highlighted exclusion from list Eliminar da lista as exclusións resaltadas remove eliminar Edit highlighted inclusion Editar o elemento resaltado incluído edit editar Move highlighted inclusion up Mover arriba o elemento resaltado incluído move up mover arriba Move highlighted inclusion down Mover abaixo o elemento resaltado incluído move down mover abaixo Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Incluír SÓ esta lista de patróns. Nada máis. Consulte o manual para unha mellor comprensión das regras. Isto desactivará a funcionalidade de exclusión. Only Include Incluír só Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Engadir inclusión introducida no seguinte campo Include list Lista de inclusións Remove highlighted inclusion from list Eliminar os elementos resaltados da lista Remote Remoto Use a remote host either for source or destination Usar un servidor remoto ben como orixe ou como destino Use remote host Usar un servidor remoto Use a remote host for destination data. Usar un servidor remoto para os datos de destino. destination destino Use a remote host for source data. Usar un servidor remoto para os datos de orixe. source orixe User: Usuario: Enter your username for the remote host (leave blank if not applicable). Introduza o nome do usuario para o servidor remoto (deixar en branco se non é aplicábel). @Host: @Host: Enter the name of the remote host. Introducir o nome do servidor remoto. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Introducir a ruta completa ao ficheiro que contén o contrasinal de autenticación para rsync (non o ssh) (deixalo baleiro se non é aplicábel). rsync password file: Ficheiro do contrasinal de rsync: Check this to connect to an rsync Remote module Marcar isto para conectarse a un módulo remoto de rsync Remote module Módulo remoto Use ssh as transport shell Usar ssh como shell de transporte ssh ssh password: contrasinal: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Introducir a ruta completa ao ficheiro que contén a clave de autenticación ssh (deixalo baleiro se non é aplicábel). Debe levar a cabo as accións precisas para unha conexión remota ssh sen contrasinal usando unha parella de claves OpenSSH private key file : ficheiro da clave privada: Enter the port you would like to use for the ssh connection (leave blank for default port) Introduza o porto que desexa usar para a conexión ssh (deixar baleiro para usar o porto predeterminado) port : porto : Command Options Opcións para as ordes Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Engadir ou eliminar todas as opción de rsync. Non toque este axuste se non sabe ben o que fai !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Eliminar os ficheiros do destino que non existen na orixe .Debe seleccionar «Recursivo dentro dos cartafoles» (--delete-after e --delete-excluded se usa "Excluír") Copy device (super user only) & special files as they are (-D) Copiar o dispositivo (só superusuario) e os ficheiros especiais tal como están (-D) Preserve device, special files Conservar dispositivo, ficheiros especiais Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Os ficheiros con hard links na orixe manterán as hard links no destino AVISO: Todos os ficheiros teñen que incluirse no grupo da transferencia (-H) Preserve hard links Preservar hardlinks Delete files on the destination Eliminar os ficheiros no destino Recurse into directories (-r) Recursivo dentro dos cartafoles (-r) Recurse into directories Recursivo dentro dos cartafoles Do not backup source files that are newer on the destination (--update) Non copiar os ficheiros da orixe que son máis novos no destino (--update) Skip newer destination files Ignorar os ficheiros máis recentes do destino Preserve the owner (super user only), group & time stamp of files (-tgo) Conservar o propietario (só en modo superusuario), o grupo e a marca de tempo dos ficheiros (-tgo) Preserve ownership, times Conservar propietarios e datas Preserve permissions of files (-p) Conservar os permisos dos ficheiros (-p) Preserve permissions Preservar permisos Copy symlinks as symlinks (-l) Copiar symlinks como symlinks (-l) Preserve symlinks Preservar symlinks Ignore files using a similar algorithm to CVS (-C) Ignorar ficheiros cun algoritmo similar a CVS (-C) Ignore files the CVS way Ignorar ficheiros con forma CVS User defined Usar definicións Enter here an rsync option to add (eg "--delete-excluded", "-X") Introducir aquí unha opción rsync a engadir (p.e: "--delete-excluded", "-X") Extra rsync options list Lista adicional de opcións de resync Remove highlighted option from list Eliminar da lista a opción resaltada Add rsync option as entered in the next field Engadir a opción rsync introducida na campo seguinte options list lista de opcións Also Execute Executar tamén Execute extra commands, before or after the task. Executar ordes extra antes ou despois da tarefa. Before Antes Enter here a command to be executed before the task and then press the "add" button to add it to the list below Introducir aquí a orde a executar antes da tarefa, despois prema o botón «engadir» para incorporalo á lista de debaixo Add command as entered in the field beside Engadir a orde introducida no campo do lado Command list Lista de ordes Remove highlighted command from list Eliminar da lista a orde resaltada Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Despois Enter here a command to be executed after the task and then press the "add" button to add it to the list below Introduza aquí a orde a executar despois da tarefa e prema o botón «engadir» para incorporala á lista de debaixo Select source directory file selection dialog title Seleccionar o cartafol de orixe Select destination directory file selection dialog title Seleccionar o cartafol de destino Select rsync password file file selection dialog title Seleccionar o ficheiro da contrasinal de resync Select ssh keyfile file selection dialog title Seleccionar o ficheiro coa clave ssh Select command to be executed file selection dialog title Seleccionar a orde a executar Select file to read include patterns file selection dialog title Seleccionar o ficheiro cos patróns de inclusión Select file to read exclude patterns file selection dialog title Seleccionar o ficheiro cos patróns de exclusión Please define the source before launching the pattern editor message box, message Defina a orixe antes de iniciar o editor de patróns ERROR message box message ERRO Please specify the following before proceeding: message box, message Especifique o seguinte antes de continuar: ERROR message box message - line1 ERRO That is not allowed because '/' does not have an actual name message box message - line2 Isto non se permite porque «/» non ten un nome real Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Deixar o cadro marcado para <b>PARAR</b> a execución da tarefa activa se a orde remata cun erro use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated usar os cadros para <b>PARAR</b> a execución da tarefa se hai un erro You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Indicou o cartafol '/' (root) como orixe e NON marcou o cadro «NON crear un cartafol extra» Please check the relevant box before proceeding message box message - line3 Comprobe os elementos importantes antes de continuar You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Indicou o directorio root dunha partición como orixe e NON marcou o cadro «NON crear un cartafol extra» That is not allowed because the root partition does not have an actual name message box message - line2 Isto non se permite porque a partición root non ten un nome The name of the task you requested already exists message box message - line1 O nome da tarefa que solicitou xa existe Please specify a different name before proceeding message box message - line2 Especifique un nome diferente antes de continuar The source you have declared is identical to the destination message box message - line1 A orixe que indicou é idéntica ao destino Please modify at least one of them message box message - line2 Modifique polo menos un deles WARNING message box message - line1 AVISO You have declared a destination that is part of the source directory structure message box message - line1 Indicou un destino que forma parte da estrutura do cartafol de orixe <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Non esqueza</b> definir un cartafol no grupo de exclusións que conterá o destino You have checked the 'delete files on the destination' option message box message - line2 Marcou a opción «Eliminar os ficheiros no destino» without having checked 'Recurse into directories' which is required message box message - line3 sen escoller «Recursivo dentro dos cartafoles», que é obrigado 'Remote Host' is checked, but no remote host name is declared message box message - line2 Marcou «Servidor remoto» pero non indicou un nome para o servidor Please specify a remote host name message box message - line3 Indique un nome para o servidor remoto Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Noutro caso, desmarque «Servidor remoto» para operar localmente All declared fields of the task properties window seem to be ok message box message first line Todos os campos indicados na xanela de propiedades da tarefa parecen correctos Errors have been found message box message first line Atopáronse erros command to be executed full phrase: command to be executed: <COMMAND> orde a executar You have already added this exclude item message box message Xa engadiu este elemento de exclusión You have already added this include item message box message Xa engadiu este elemento de inclusión You have already added this option message box message Xa engadiu esta opción done rematado done editing edición rematada cancel cancelar cancel editing cancelar edición Read exclude patterns from file Ler os patróns de exclusión do ficheiro Read file: Ler o ficheiro: filename nome do ficheiro browse buscar ... ... Include Incluír Add any directory, file or pattern to be included by this task Engadir todos os cartafoles, ficheiros ou patróns a esta tarefa Include mode Modo inclusión Mode: Modo: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Non excluír esta lista de patróns. Ver o manual para ampliar a información sobre as regras de inclusión. Normal Include Inclusión normal Read include patterns from file Ler os patróns incluídos do ficheiro browse locally explorar localmente additional options: opcións adicionais: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Marque isto se usa unha partición FAT/NTFS como destino. Os permisos e a propiedade dos datos non se gardarán. (-t --modify-window=1) Destination is FAT/NTFS O destino é FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Restabelecer os permisos Set the total number of backup snapshots to keep Estabelecer o número de imaxes que conservar Snapshots to keep: Imaxes que conservar: patternEditor directory : cartafol : Select file Seleccionar un ficheiro Please choose a file within the source Seleccione un ficheiro na orixe Select directory Seleccionar cartafol Please choose a directory within the source Seleccione un cartafol na orixe file : ficheiro : pattern editor editor de patróns Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Marque isto para usar o cartafol de arriba como ruta absoluta, se non o marca buscarase calquera ficheiro ou cartafol que cumpra co criterio «nome» Define here, what would you like the pattern to refer to Defina aquí a que se refire o patrón The pattern refers to a: O patrón refírese a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Use isto se o patrón se refire a un ficheiro específico p.e: «/media/música/álbum/canción.mp3» Specific file Ficheiro específico Use this if the pattern refers to a specific directory eg "/media/music/Album/" Use isto se o patrón se refire a un cartafol específico p.e: «/media/música/álbum/» Specific directory Cartafol específico Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Use isto se o patrón se refire a un conxunto de ficheiros con algo en común p.e: todos os ficheiros coa extensión .txt Set of files Conxunto de ficheiros Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Usar isto se o patrón se refire a un grupo de cartafoles que teñen algo en común p.e: todos os cartafoles chamados «temp» Set of directories Conxunto de cartafoles name nome starts with : comeza con : Enter here the starting characters of the name of the files/directories that the pattern refers to Introducir aquí os caracteres iniciais do nome dos ficheiros/cartafoles aos que se refire o patrón ends with : remata con : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Introducir aquí os caracteres finais do nome dos ficheiro/cartafoles aos que se refire o patrón p.e: para todos os ficheiros «txt» escribir .txt Enter here the name of the files/directories that the pattern refers to Introducir aquí o nome dos ficheiros/cartafoles aos que se refire o patrón is exactly : é exacto : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Introducir aquí os caracteres contidos en calquera posición do nome dos ficheiros/cartafoles aos que se refire o patŕon contains : contén : browse localy for a file buscar localmente un ficheiro browse localy for a directory path percorrer localmente a ruta a un cartafol use absolute path usar a ruta absoluta Go deeper in path by : Descender na ruta : Go deeper in path by any level Descender na ruta a todos os niveis any todos Define here the name criteria for the files/directories to be matched Definir o criterio do nome para atopar os ficheiros/cartafoles correspondentes final pattern patrón final The actual pattern is displayed here O patrón actual móstrase aquí Reset the pattern editor fields to the default values Restabelecer os valores predeterminados dos campos do editor de patróns reset restabelecer Okay Aceptar Cancel Cancelar Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Usar isto para indicar subcartafoles máis profundos p.e: O cartafol "/media/música" inclúe 3 subcartafoles: 1.Rock 2.Jazz 3.Clásica para especificar os contidos dos tres indique o seguinte: * Grupo de cartafoles * Contido dos cartafoles * ruta:/media/música/ * Profundizar na ruta até "1" nivel Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Usar isto se o patrón se refire aos contidos dun cartafol (ou grupo de cartafoles) non ao cartafol mesmo p.e: os contidos do cartafol «/media/música/álbum/» Directory contents Contidos do cartafol scheduleDialog Starting from scratch Comezar desde cero No schedules are declared !! Non se especificou ningunha programación! Unable to create schedule file Non foi posíbel crear o ficheiro da programación You have reached the maximum limit of supported scheduled profiles Xa acadou o límite máximo de perfís programados You have to remove an item if you wish to add another Debe eliminar un elemento se desexa engadir outro Add profile schedule Programar un perfil Modify profile schedule Modificar a programación do perfil Profile schedule details Detalles da programación do perfil Invalid profile O perfil é incorrecto Execute profile Executar o perfil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> cada hora no minuto at ás every cada day día Sunday Domingo Monday Luns Tuesday Martes Wednesday Mércores Thursday Xoves Friday Venres Saturday Sábado & on the e o st as in 1st day º nd as in 2nd day º rd as in 3rd day º th as in 4th, 5th, 6th or 7th day º th as in 8th day º th as in 9th day º th as in 10th day º th as in 11th day º th as in 12th....19th day º th as in 20th day º st as in 21st day º nd as in 22nd day º rd as in 23rd day º th as in 24th...30th day º st as in 31st day º of any month de cada mes of de January full phrase: 'of January' Xaneiro February full phrase: 'of February' Febreiro March full phrase: 'of March' Marzo April full phrase: 'of April' Abril May full phrase: 'of May' Maio June full phrase: 'of June' Xuño July full phrase: 'of July' Xullo August full phrase: 'of August' Agosto September full phrase: 'of September' Setembro October full phrase: 'of October' Outubro November full phrase: 'of November' Novembro December full phrase: 'of December' Decembro Unable to create cron file Non foi posíbel crear o ficheiro cron luckyBackup - schedule luckyBackup - programación <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programación da execución do perfil</span></p></body></html> Add a new profile schedule Engadir unha programación do perfil add engadir Modify selected profile schedule Modificar a programación do perfil seleccionado modify modificar Remove selected profile schedule Eliminar a programación do perfil seleccionado remove eliminar Profile : Perfil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Saltar as tarefas que mostran un aviso de «CRÍTICO» despois de comprobar os cartafoles skip critical Saltar «críticos» time (hour:min) : hora (hora:minuto) : set this value to -1 for the schedule to occur every hour estabelece este valor a 1 para programar cada hora : : :delay :retraso Delay luckybackup execution at startup Retrasar a execución de luckybackup ao iniciar min means: minutes (time) min. day of week : día da semana : Any Todos month : mes : January Xaneiro February Febreiro March Marzo April Abril May Maio June Xuño July Xullo August Agosto September Setembro October Outubro November Novembro December Decembro day of month : día do mes : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Comprobe se a súa máquina non é compatíbel co contorno gráfico (p.e: servidor) Console Mode Modo consola okay aceptar Cancel Cancelar schedule the execution of profiles as declared in the list above programar a execución dos perfís como se indica na lista superior cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version O ficheiro de programación existente non é válido para luckyBackup v. file BEWARE of the whitespace before file ficheiro You have made changes without clicking the cronIT button Realizou os cambios sen premer no botón cronIT Are you sure you want to close the schedule dialog ? Está certo de pechar o diálogo de programación ? Your crontab is updated successfully O seu crontab actualizouse correctamente no crontab entries exist no existen entradas de crontab crontab content contido do crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup unha vez, no inicio do sistema Run once, at startup Executar unha vez no inicio @ reboot ao iniciar close this dialog Pechar este diálogo close pechar Display the current crontab Mostrar o crontab actual view current crontab ver o crontab actual textDialog Enter the name of the new profile : Introducir o nome do perfil novo : Enter the new name of the profile : Introducir o novo nome do perfil : Profile description : Descrición do perfil : A profile with the same name already exists Xa existe un perfil co mesmo nome Please enter a different name Introduza un nome diferente Enter pasword : Introduza un contrasinal : Enter passphrase : Introduza unha frase secreta: Do not show this again for this task Non volver mostrar esta mensaxe para esta tarefa You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Seleccionou "Copiar os contidos do cartafol orixe"<br>xunto coa opción "eliminar os ficheiros do destino" BEWARE, if your intention is NOT to clone source to destination !! TEÑA TINO, se a súa intención NON é clonar a orixe no destino!! Are you sure you wish to proceed ?? Está seguro de continuar? luckyBackup luckyBackup Okay Aceptar Cancel Cancelar Copy command to clipboard Copiar a orde ao portapapeis eMail information Información do correo-e No Non Yes Si winDialog luckyBackup luckyBackup declaration of paths declaración das rutas rsync: rsync: Enter the full path of the rsync command Introducir a ruta completa da orde de rsync browse locally explorar localmente Use default value Usar o valor predeterminado ssh: ssh: Enter the full path of the ssh command Introducir a ruta completa da orde ssh cygpath: cygpath: Enter the full path of the cygpath command Introducir o camiño completo da orde cygpath dosdev: dosdev: Enter the full path of the dosdev command Introduza a ruta completa da orde dosdev main dir: cartafol principal: Enter the full path of the luckybackup directory Introduza a ruta ao cartafol de luckybackup vshadow dir: cartafol vshadow: Enter the full path of the vshadow directory Ruta completa ao cartafol vshadow temp dir: cartafol temporal: Enter the full path of the temporary directory Introduza o camiño ao cartafol temporal Okay Aceptar Cancel Cancelar Select rsync command file selection dialog title Seleccione a orde resync Executable Files (*.exe) Ficheiros executábeis (*.exe) Select ssh command file selection dialog title Seleccione a orde ssh Select cygpath command file selection dialog title Seleccione a orde cygpath Select dosdev command file selection dialog title Seleccione a orde dosdev luckybackup-0.5.0/translations/luckybackup_el.qm0000666000175000017500000047114113157502317021472 0ustar luckybluckybRHYKȐS%Y]L_E g egg2hY ,j4ts6*z9fffw'vSq.QɅE\Ӥ9#E$4V5AN~PaaafaaCaLhN@6VEص.BP2H5 a8YĉdS˱)Sa ى>FAK4{eX #72=]R#Gr :~/ dg(%t9!bG(e' +&T.+`6F%7<$!GI|)OWQ&Q198QڨR,[_/yfC56hhw>pN/pN qAU6q>Datco!Fv݌-x[3tYE65pѐSxiAu.Գ޸ŵ  ,' _tw:bgK .#u%&o:)â+V/r1r28IBZyoC clmIfUPoE_fYBHZHK\c1 cf:wguVW|BT TO('2Rn<ZI2TROkg۽/;XR+7CKN$ikdnP{,ˀ÷MIbh[~yϗ$C]u X UJ  ‰ C>pBJy^<~= P8SsQ&PAC>lDȪL~t O\}Ojz]eJ6iYzi^lwrtK}7;K:yօg{wIyIgI]II@IG@x,3 [?K^A&SyфO <.6He\F{"l N imd0  iG P MNg8p= \xl@.rm6>Vn;n<p^$Qtxvgny~iF9KrIȕȕȕmX'J,g:Ct&î"Fp(zXR:qߘ?b-]vf d"H" w.3;KgC"KOxU; GVf)'_Avpc_hD"{b#f0`gMhnPhnii3kՒkՒWsD%v3-y|(~g{vb'R(T42YuEORkIUIn`XUVE4y֌SׇVȒƜ/pW='U': J@Z ,u |u<`f읒cXrlC` no X+ X|A55BΤ^;/+e-zV2 9Y>FE"E6ZN3UtYv`xea#vuyv:Q{!@_gIs3MڄZrDF(FF9=ϕ iD-ΕU$*U;ZuCrdͫjP{g,G%Bbȕ5-a*vUXT(UUdD@Z 5nz~EǧP;~p+̐Ij IIh#%y׃vߖv@k,OZY=a K33-2:D ʄ;t<",)@,%-'~/e19GF\(AIX9JJε)1L:NhPO8Ry V)gzh exmzG@x c5a5Lx>Dy*=(K> Bʴ5ʶ6*%'f,!7BouQQi=)- N  c Oj q.  G #r *{B +)E 6Z- 84 CcK) MgǓ Mgv N#0 U  Uy= W ]'0 aYA dU j^K l lRc1 mEQ pR qP R ] @ǩ e % ͆ J| aa -BC Z*F '4( Ԡ;a o ׊$ =3 ., , Ѿ  Ty D K K c2 @   -0N -nf /l$ 7Ew 8 ? @ Ņ ` fs g jHi l; pN% zj Q C.4 ģ 3  H T ici ~& ci@ XBq  24 bQu ,j ݑ  * GC|7 ñ n9 Yh XhC IBP h%A t$8` ԑ @ ݓ x T i 77 p% "8 5 v)  Vd d j"  S # (NM +" - 0b 7'y 93Bw :UC& ; E Ge' HZ L9/ PA" T,X TI Z~ _y _ f[ g.w% g.w, g.wT g.w i iO k+ m { { { D b F Ҟ U " [  Y! YP >ӊ @e- A.  Acsp EhE F F. LM7 N0 P}o SzK X ^3A bU'r oCY o9I r'^ v> O  ~ jO n Hg r8 \%P PQ " UNj  0K ~N CV # T *K0 sE } ` % 2}e a>% Rbl P ?B`  ; 4 sz @/ T$ #? &, &'E (aq# )H *}E +Q ,D: ,DW= 6CM P4 \.~; c i mg { e٧ 1 '  { X i2IT ms c lM Xw$ . f z} lz h I<~  j7 lt Y; i; [ " , ݗɱ # 䕜9  c2Y M s b 8 8GO 8O OW 6Wd=3B stDCV9<Եưk!~UE'~4( (q*#B/#Y6E7&GJ TbaG7\P5{].a^cRe~mR\p{>^yi0{Ll}9rdTMr9QYe<iFx{RL($,&rWub[֭ 3<M̖Kk"{d44U"*ec CA`#Ȼ!Mk&)N{(դ0(դ#-X`4??.<E\E^ G EAiIGNVPZ5 RN>[=X^igcf/lnY'sxsu@xu@~(NYuAt}"E6dk47fCt8")ɻ*xyS)Q_v<ɟ)-ʱN-uD0+\ؒu~_֙SNG&ߖlE2]xsO40.;Y9P 5|ŕiQh( Calculating differencesCalcDiffThread     .     2Data amount is huge. Displaying only first entriesCalcDiffThread&  Please waitCalcDiffThread6  Scanning destinationCalcDiffThreadB   Scanning snapshotCalcDiffThread4   Scanning sourceCalcDiffThread>   Snapshot and source differencesCalcDiffThread          =Snapshot data that also exists at the source and is differentCalcDiffThreadh       -Snapshot data that do NOT exist at the sourceCalcDiffThreadd      -Source data that do NOT exist at the snapshotCalcDiffThreadJ    & Sync dir A & B differencesCalcDiffThread           /Sync dir A data that do NOT exist at sync dir BCalcDiffThread            ?Sync dir B data that also exists at sync dir A and is differentCalcDiffThread           /Sync dir B data that do NOT exist at sync dir ACalcDiffThread           =The snapshot data will replace the source data during RESTORECalcDiffThread         :CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadt        :These will be transfered over at the source during RESTORECalcDiffThreadt        ;These will be transferred over at the source during RESTORECalcDiffThread         ;delete existing source data that do not exist at the backupCalcDiffThread backup  ,   log    .Backing-up profile, logfiles and snapshot dataQObjectCRITICALQObjectP    Command re-run due to failureQObjectF      logCould not open the logfileQObject DestinationQObject( Destination directoryQObject DirectoryQObject     /     ;I do not have the permission to read/enter sync directory AQObject     /     ;I do not have the permission to read/enter sync directory BQObject     /    DI do not have the permission to read/enter the destination directoryQObject     /    ?I do not have the permission to read/enter the source directoryQObject  <font color=red></font>   .     iI will not skip this task. Synchronizing is going to be performed anywayQObject<font color=red>  </font>         " "mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject.  Last execution timeQObjectOKOKQObject <b>  x    </b>  APlease uncheck appropriate include boxes before proceedingQObject   x                '<b>Backup . </b>'   'Backup . '     '<b>. </b>',  Please uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObjectSourceQObject Source directoryQObject, Sync directoryQObject0  SyncingQObject0  'Full phrase: Syncing to SyncingQObject$ Task descriptionQObject                ]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectZ   <b>    </b> (    )        backup    The following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectZ  log      The logfile could not be createdQObject2  log  The logfile does not existQObject4   The process reported an errorQObjectV     /The specified command is probably not installedQObjectL      The task list is emptyQObjecth   <font color=red><b>  3This task will not be skippedQObjectv    <font color=red><b></b></font>7This task will be skippedQObjectR ,   Using remote, check is skippedQObjectWARNINGQObject         :8You have included both of the following connected tasks:QObjectN    You have not included any tasksQObject /and/orQObject: command: QObject does not existQObject"  errors foundQObject@ 1   execution of 1st part of taskQObjectD  1   ?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject@ 2   execution of 2nd part of taskQObject.   execution of taskQObject.   3Full phrase: execution of task: finishedexecution of taskQObject.   dFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject : exit code: QObjectfinishedQObject?Full phrase: execution of 1st part of task: finishedfinishedQObject3Full phrase: execution of task: finishedfinishedQObjectCFull phrase: post-task execution of COMMAND: finishedfinishedQObject,      /-9finished because of pre/post task command execution errorQObjectfreeQObject is emptyQObject4    is empty or does not existQObject.  is not mountedQObject*   no errorsQObject  not availableQObject&  nothing to startQObject: output: QObjectH   - post-task execution of commandQObjectH   - CFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectF   - pre-task execution of commandQObjectF   - BFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectstartingQObject?Full phrase: execution of 1st part of task: startingstartingQObject?Full phrase: execution of 2nd part of task: startingstartingQObject3Full phrase: execution of task: startingstartingQObject?Full phrase: post-task execution of command: startingstartingQObjectstatusQObjectR     'this is not allowed for obvious reasonsQObjectp         .this will lead to one task canceling the otherQObjecttoQObject'Full phrase: Syncing to toQObject@      logCould not locate the logfile ReadLogFileF      logCould not open the logfile ReadLogFile&&About aboutDialog &&License Agreement aboutDialog&&Support aboutDialog&  &Thanks to aboutDialog0...   ,  <b></b>,           (-, -)  PC     j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog8...    ...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog&A&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog(Angelescu ConstantinAngelescu Constantin aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAntnio CorreiaAntónio Correia aboutDialogAphofis Scott Aphofis Scott aboutDialogd     Arabic gui translator aboutDialogh     Arch Linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog, Athens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogAxel Rousseau Axel Rousseau aboutDialogv     & Backup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialog    Mandriva &      4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialogj     Bulgarian gui translator aboutDialogj     Catalan gui translator aboutDialogx      ()Chinese (Taiwan) gui translator aboutDialog      ,       Qt5KCode contributor for important fixes, structure improvement and port to Qt5 aboutDialog           vss    windowsDCode contributor for remote & vss support regarding the windows port aboutDialogN       !Could not locate the license file aboutDialogd     Czech gui translator aboutDialogT     DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog Dimitris Jemos aboutDialog$ Dimitris Kalamaras aboutDialog, Dimitris Stasinopoulos aboutDialogh     Dutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialog  Especially aboutDialogh     Esperanto gui translator aboutDialogf     Estonian gui translator aboutDialog~     Fedora ( ))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialogX     Free BSDFree BSD package maintainer aboutDialogd     French gui translator aboutDialog         AFrench gui translator and valuable packing advisor (and not only) aboutDialogh     Galician gui translator aboutDialog8 ebuild  GentooGentoo ebuild maintainer aboutDialogh     German gui translator aboutDialog(  :Give a thumbs up at: aboutDialog        (Greek gui translator and valuable tester aboutDialogP    Greek manual translator aboutDialog,          '  .DI personally never had and never will accept money for this project. aboutDialog        ,        projectJIf it wasn't him and his tutorials I would never have started this project aboutDialog           ' ,    :`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog <b> </b>:     /      GNU General Public License     Free Software Foundation,  3  .It 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, version 3 of the License. aboutDialogL           ,              .It 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. aboutDialogd     Italian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog Last but no least aboutDialog Loukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialog     Mandriva (  contrib)3Mandriva package maintainer (official contrib repo) aboutDialogManuel MeixideManuel Meixide aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarcos Lans Marcos Lans aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialog     Mepis (Community repo) &      BMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialog,     luckyBackup           .]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialog Nikolas Poniros aboutDialogh     Norwegian gui translator aboutDialogOmar Anwar Omar Anwar aboutDialog     openSUSE (KDE4 Community repo)    NOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialogl     Portuguese gui translator aboutDialogf    pet & sfs  PuppyPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialogh     "Romanian gui reviewer & translator aboutDialogh     Romanian gui translator aboutDialog        *Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialog      GNU General Public License.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialogV     SlackelSlackel package maintainer aboutDialogh     Slovak gui translator aboutDialogh     Slovenian gui translator aboutDialog'              ._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogf     Spanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogf     Swedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog"  indifexThe indifex team aboutDialog$ Theo Chatzimichos aboutDialog:     :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialog  Tom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogf     Turkish gui translator aboutDialog& Valuable advisor aboutDialogF "good" &  "fan" :Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$ Yiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogd   backupwhenidle  python&backupwhenidle python script developer aboutDialogclose aboutDialog   donation link aboutDialog      Fedora ( )ex Fedora package maintainer aboutDialog       transifex       Vfor developing the wonderful transifex localization platform and providing it for free aboutDialog4   .forums for their support. aboutDialog fri13fri13 aboutDialogloh.tarloh.tar aboutDialog*luckyBackup - luckyBackup - about aboutDialog luckyBackup      <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogmoney aboutDialog no money aboutDialogpinguinofuriosopinguinofurioso aboutDialog$port  MS Windowsport to MS Windows aboutDialog port  MAC OS Xport to Mac OS X aboutDialogport  OS/2 port to OS/2 aboutDialog  rpm,       <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogclose logDialog,  log...loading logfile... logDialogVluckyBackup -   &luckyBackup - tasks execution progress logDialog  next error logDialog$ previous error logDialogwait logDialog &%1 %2&%1 %2luckyBackupWindow&&AbortluckyBackupWindow &&AboutluckyBackupWindow&&AddluckyBackupWindow&&DeleteluckyBackupWindow& &HandbookluckyBackupWindow&&HelpluckyBackupWindow&&ImportluckyBackupWindow& &LanguageluckyBackupWindow0&  tray&Minimize to trayluckyBackupWindow&&ModifyluckyBackupWindow&&NewluckyBackupWindow&&ProfileluckyBackupWindow&This is a top menu item&ProfileluckyBackupWindow&&QuitluckyBackupWindow&&RefreshluckyBackupWindow&&RemoveluckyBackupWindow&&RestoreluckyBackupWindow&&SaveluckyBackupWindow& &SettingsluckyBackupWindow&&TaskluckyBackupWindow&This is a top menu action&TaskluckyBackupWindow"&  &ToolbarsluckyBackupWindow>&/ &View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowABORTEDluckyBackupWindowAbortluckyBackupWindow :       4Aborting: Please wait for all processes to be killedluckyBackupWindowActionsluckyBackupWindowj    (log )  4All relevant files (logs etc) have also been deletedluckyBackupWindowp    (log )  7All relevant files (logs etc) have also been duplicatedluckyBackupWindowj    (log )  4All relevant files (logs etc) have also been updatedluckyBackupWindow:   All tasks completedluckyBackupWindowf /      'Are you sure you want to delete profileluckyBackupWindow /       3Are you sure you want to delete the default profileluckyBackupWindow         ??5Are you sure you want to remove the following task ??luckyBackupWindowh      )Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindow   .     <b></b>5Checks are disabled. This task will be skippedluckyBackupWindow8     Could not locate the fileluckyBackupWindow         -Could not update last execution time of tasksluckyBackupWindowCrashedCrashedluckyBackupWindow>&  Create D&uplicate taskluckyBackupWindow>  &Create R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindow Current ProfileluckyBackupWindow& D&uplicateluckyBackupWindow&De&faultluckyBackupWindow DescriptionluckyBackupWindow DestinationluckyBackupWindow DirectoryluckyBackupWindow DoneluckyBackupWindowDryluckyBackupWindow&E&mailluckyBackupWindow&E&xportluckyBackupWindow ERRORluckyBackupWindow EXITluckyBackupWindow"   Elapsed timeluckyBackupWindow    <font color=green> BEmail preferences have been updated successfullyluckyBackupWindowz       $Email report after profile executionluckyBackupWindowEnglishluckyBackupWindowDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow|       log'Errors occured during logfiles transferluckyBackupWindow         log5Errors occured during snapshots and logfiles transferluckyBackupWindow~      (Errors occured during snapshots transferluckyBackupWindow       /Errors occured during the profile file transferluckyBackupWindow   ' ', '', '' & '      '  ()jEspecially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced)luckyBackupWindow*   Execution of profileluckyBackupWindow@    Execution of tasks finishedluckyBackupWindowx        4Execution of tasks were terminated violently by userluckyBackupWindow  ExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowR   &Failed to create destination directoryluckyBackupWindow@   Failed to create new profileluckyBackupWindowh     (log ).Failed to delete all relevant files (logs etc)luckyBackupWindow2  Failed to delete profileluckyBackupWindown     (log )1Failed to duplicate all relevant files (logs etc)luckyBackupWindowT    Failed to duplicate profileluckyBackupWindowT    Ffull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow0  Failed to export profileluckyBackupWindow:   Failed to import profileluckyBackupWindow@   Failed to rename profileluckyBackupWindowD   Failed to replace profileluckyBackupWindow$ Failed to startluckyBackupWindowh     (log ).Failed to update all relevant files (logs etc)luckyBackupWindow<  Hide information windowluckyBackupWindow<  +hide/show information window button tooltipHide information windowluckyBackupWindow Import ProfileluckyBackupWindow( Information windowluckyBackupWindow( information window titleInformation windowluckyBackupWindowj      $Last execution time of tasks updatedluckyBackupWindowD    List of all the available tasksluckyBackupWindowLockluckyBackupWindow@  &Manage &BackupluckyBackupWindow&  Manage TaskluckyBackupWindown    ,   /Move the highlighted task down, by one positionluckyBackupWindowp    ,   -Move the highlighted task up, by one positionluckyBackupWindowNOluckyBackupWindow*  NOT INCLUDEDluckyBackupWindowNOTEluckyBackupWindow*  No errors foundluckyBackupWindow8   Now performing taskluckyBackupWindow            could not be saved'ProfileluckyBackupWindow IQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow 9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow Jfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow Gfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow lfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow 3full phrase: 'Profile set as default'ProfileluckyBackupWindowj        (Progressbar update will not be realisticluckyBackupWindow&R&enameluckyBackupWindow   Read errorluckyBackupWindow~      log   Removed all older snapshots dataluckyBackupWindow  RemovingluckyBackupWindow  a    log  +Removing old snapshots and logfiles of taskluckyBackupWindowRunluckyBackupWindow & S&cheduleluckyBackupWindow4  Select export directoryluckyBackupWindow*  Set as DefaultluckyBackupWindow&  Set pathsluckyBackupWindowb     rsync  ssh$Set paths for rsync and ssh commandsluckyBackupWindow<  Show information windowluckyBackupWindow<  +hide/show information window button tooltipShow information windowluckyBackupWindowN     Show text under iconsluckyBackupWindowSourceluckyBackupWindowX     'Stop the execution of running tasks NOWluckyBackupWindowZ    )Successfuly created destination directoryluckyBackupWindowTaskluckyBackupWindow  Task listluckyBackupWindow<    Task list of profileluckyBackupWindow,   The description of profileluckyBackupWindowz        CThe directory you have selected does not contain valid profile dataluckyBackupWindowx        :The name you have entered contains only invalid charactersluckyBackupWindow@     1 $The system will shutdown in 1 minuteluckyBackupWindowB    The task list is emptyluckyBackupWindow$     <b> </b>     (         ){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTimed out Timed outluckyBackupWindow>   Total files transferedluckyBackupWindow>   Total files transferredluckyBackupWindowD     Unable to open profileluckyBackupWindow  Unknown errorluckyBackupWindow this refers to a process Unknown errorluckyBackupWindow~   ""     0Use the "add" button on the right to get startedluckyBackupWindow   ''        >Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowR/   !View/Edit the profile descriptionluckyBackupWindowWARNINGluckyBackupWindow    Welcome toluckyBackupWindow:    :Would you like to also remove:luckyBackupWindowJ      ?!Would you like to proceed anyway?luckyBackupWindow<    ?Would you like to replace it ?luckyBackupWindowX      ?-Would you like to save it before proceeding ?luckyBackupWindow  Write errorluckyBackupWindowYESluckyBackupWindowj     /You have asked for a RESTORE task to be createdluckyBackupWindowh      9You have only included tasks that are going to be skippedluckyBackupWindowd     5You have reached the maximum limit of supported tasksluckyBackupWindow           !!7You have to remove a task if you wish to add another !!luckyBackupWindow`  ,    ,  4a new blank one, with the same name, will be createdluckyBackupWindowaddluckyBackupWindow" add taskluckyBackupWindow already existsluckyBackupWindow0     and 'profile' drop-down listluckyBackupWindowJ      and added at the profile listluckyBackupWindowV     .and change anything you wish before proceedingluckyBackupWindowasluckyBackupWindowFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow calculatingluckyBackupWindow& -info message displayed during ...calculations calculatingluckyBackupWindow commands outputluckyBackupWindow>    could not be createdluckyBackupWindow<    could not be savedluckyBackupWindow<    PQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow, created successfullyluckyBackupWindowH   ...creating default profile ...luckyBackupWindow*  ...creating profile ...luckyBackupWindowp  crontab <font color=green> 6current crontab updated successfullyluckyBackupWindow current profileluckyBackupWindow.  default profileluckyBackupWindow.  ^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow.  Vfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow& deleted successfullyluckyBackupWindow  deleting filesluckyBackupWindow0  /info message displayed during ...file deletionsdeleting filesluckyBackupWindow -  -       ?display - restore - delete existing backups of highlighted taskluckyBackupWindowl      .display information regarding highlighted taskluckyBackupWindow.  duplicated successfully asluckyBackupWindow"  errors foundluckyBackupWindow(  :execution of profile:luckyBackupWindow(  :Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow&  exported successfully toluckyBackupWindow$ failed to removeluckyBackupWindow        log  )failed to remove all older snapshots dataluckyBackupWindowfinishedluckyBackupWindow:full phrase: 'Execution of profile finished'finishedluckyBackupWindow&  imported successfullyluckyBackupWindow ...in progress...luckyBackupWindowincludeluckyBackupWindow is modifiedluckyBackupWindow.    is not valid forluckyBackupWindow4   jump to next errorluckyBackupWindow<   jump to previous errorluckyBackupWindow  loaded successfullyluckyBackupWindowB   ...loading default profile ...luckyBackupWindow"  loading failedluckyBackupWindow$  ...loading profile ...luckyBackupWindowT   log  :.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow.  trayminimize to trayluckyBackupWindowx       tray%minimizes the window to the tray arealuckyBackupWindowmodifyluckyBackupWindow@  modify highlighted taskluckyBackupWindow   nothing to doluckyBackupWindowJ  - post-task execution of commandluckyBackupWindowH  - pre-task execution of commandluckyBackupWindow profileluckyBackupWindow VInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow SInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow UInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow SInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow Mfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow  profile luckyBackupWindow  quiet modeluckyBackupWindow refreshedluckyBackupWindowremoveluckyBackupWindow:  remove highlighted taskluckyBackupWindow2  renamed successfully toluckyBackupWindow2  Wfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindow   rsync   /    9rsync and pre/post task commands output is displayed hereluckyBackupWindow0  saved successfullyluckyBackupWindowH   ...saving default profile ...luckyBackupWindow*  ...saving profile ...luckyBackupWindow  scheduledluckyBackupWindow.  set as defaultluckyBackupWindow set toluckyBackupWindowshutdownluckyBackupWindow( simulation modeluckyBackupWindowstatusluckyBackupWindow- super userluckyBackupWindow* -super user modeluckyBackupWindowtoluckyBackupWindow0  transferring filesluckyBackupWindow0  /info message displayed during ...file transferstransferring filesluckyBackupWindowN    emailtrying to send an emailluckyBackupWindow:version:luckyBackupWindow( Calculate differences manageDialog         FCalculate the differences between the source and the selected snapshot manageDialogT     Calculations terminated by user manageDialogClose manageDialog.   Close this window manageDialogDelete manageDialogr       log,Delete the selected snapshot and its logfile manageDialog|        ;I do not have sufficient permissions to read this directory manageDialog\      &Please select a snapshot from the list manageDialogd      *Please wait until the thread is terminated manageDialogRestore manageDialogL   Restore the selected snapshot manageDialog STOP manageDialog4   Stop calculations NOW manageDialog:    This directory does not exist manageDialog:    Information messageThis directory does not exist manageDialogh   log   )View the logfile of the selected snapshot manageDialogz   log    *View the logfile of the selected sync task manageDialog: destination: manageDialog  hide source manageDialog>luckyBackup -  backupluckyBackup - manage backup manageDialog&   not available manageDialog profile manageDialog :source: manageDialog0   sync dir A manageDialog0   sync dir B manageDialogtask manageDialog(  logview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABORT manageWizardAborted manageWizard<   Backup path manageWizardZ     %Browse locally for a new restore path manageWizard   ,        ,   .BCheck this, to clone the backup snapshot to the restore directory. manageWizard  &  Date & time manageWizard:   Delete backup manageWizard        4Delete existing data that do not exist at the backup manageWizard4   Deleting data manageWizard        )Deleting file that lists snapshot changes manageWizardb    log  Deleting snapshot logfile manageWizard            SExisting backup files will replace the corresponding files at the restore directory manageWizardFinished manageWizard     ,     <b></b>  @If the information above is correct, click start to begin manageWizard     ,    <b></b>  `information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard4   Jump to next error manageWizard<   Jump to previous error manageWizard    .  ...,No snapshot specific data exist. Skipping... manageWizardPath manageWizard<  Restore backup manageWizard(  Restore path manageWizardT  :  Restoring data: main trunk manageWizardh  :   Restoring data: snapshot files manageWizard@   Select new restore directory manageWizard           BThe restore directory will become identical to the backup snapshot manageWizard$     <b> </b>     (         ){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardP    Updating list of snapshots manageWizardWARNING manageWizardv /     #You are about to delete backup data manageWizard cancel manageWizard change manageWizardclose manageWizard"  errors found manageWizardfailed manageWizard-info message displayed after ...file deletionfailed manageWizard>luckyBackup -  backupluckyBackup - manage backup manageWizard  next error manageWizard*   no errors manageWizard&   not available manageWizard$ previous error manageWizard simulation manageWizard start manageWizardsuccess manageWizard-info message displayed after ...file deletionsuccess manageWizard5info message displayed after ...snapshots list updatesuccess manageWizard ' '         ='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b> </b>       ''      fDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialog  ,         @Add any directory, file or pattern to be excluded from this task modifyDialog  ,         >Add any directory, file or pattern to be included by this task modifyDialogr ,      *Add command as entered in the field beside modifyDialog    ,      *Add exclusion as entered in the next field modifyDialog     ,      *Add inclusion as entered in the next field modifyDialog     rsync.       ,    !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialog\  rsync    -Add rsync option as entered in the next field modifyDialogAdvanced modifyDialogAfter modifyDialog            ?All declared fields of the task properties window seem to be ok modifyDialog*   Also Execute modifyDialogH   -Attempt super-user activities modifyDialog>Backup     Backup Source inside Destination modifyDialog backup Backup files modifyDialog.Backup  Backup open files modifyDialogBefore modifyDialog cache Cache folders modifyDialog Cancel modifyDialogT       FAT/NTFS             (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialog                    iCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogf     rsync /Check this to connect to an rsync Remote module modifyDialog  Command Options modifyDialog  Command list modifyDialog   (- ) &   (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogH symlinks  symlinks (-l)Copy symlinks as symlinks (-l) modifyDialog     : 1. Backup       (   "    ") 2.      ,      ' Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog    : 1. Backup     ,   2. Backup    ,   3.    &  ,        Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog6   Delete files on the destination modifyDialog           . "   "     (--delete-after & --delete-excluded   ""  )Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialog Description modifyDialog Destination modifyDialog : Destination : modifyDialog6   FAT/NTFSDestination is FAT/NTFS modifyDialogF    Do NOT create extra directory modifyDialog  backup          (--update)HDo not backup source files that are newer on the destination (--update) modifyDialog      patterns.         .kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog ERROR modifyDialog message box message - line1ERROR modifyDialog0  Edit highlighted inclusion modifyDialog       ( "Backup   home"):Enter a name for this task (eg "Backup my home directory") modifyDialog               ""       nEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialog               ""       oEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialog    rsync    ( "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogb   ,   pattern,     ""        * -   -  (  ) ** -  ,    ? -        dir_name/*** -    &     / -  pattern         (    "")  / -   ,   , symlinks  Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogt   ,   pattern,     ""        * -   -  (  ) ** -  ,    ? -        dir_name/*** -    &     / -  pattern         (    "")  / -   ,   , symlinks  Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog       ( /media/backups/siduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialog          ssh  (      ).            ssh   password      OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialog         password   rsync (  ssh) (      ).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogv       ( /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogZ     ."Enter the name of the remote host. modifyDialog  port        ssh (    port )ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialog        (      ).HEnter your username for the remote host (leave blank if not applicable). modifyDialog Errors have been found modifyDialogExclude modifyDialogx   "lost+found"  (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog^    &  backup (**~)(Exclude all backup files & folders (**~) modifyDialog~    cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogj     (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogp     .gvfs (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialog       (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog&  Exclude list modifyDialog   /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialog   /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialog|   ,      .1Execute extra commands, before or after the task. modifyDialog                       (  ) :       Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog:    rsyncExtra rsync options list modifyDialog~        hard link,     hard link   :           !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogF      CVSIgnore files the CVS way modifyDialogr       CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInclude modifyDialogn      patterns.  .          .      .Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog2  Include list modifyDialog4  Include mode modifyDialog      <b></b>           gLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog:Mode: modifyDialog8   Move highlighted inclusion down modifyDialog:   Move highlighted inclusion up modifyDialog :Name : modifyDialog* Normal Include modifyDialogOkay modifyDialog"  Only Include modifyDialog   x   ' '    2Otherwise uncheck 'Remote Host' to operate locally modifyDialogJ    /Please check the relevant box before proceeding modifyDialog          Use remote host modifyDialogP ssh   Use ssh as transport shell modifyDialog.    User Defined modifyDialog.    User defined modifyDialog:User: modifyDialogWARNING modifyDialog   ,  rsync              . (--numeric-ids)With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) modifyDialogh       (You have already added this exclude item modifyDialogx        (You have already added this include item modifyDialogJ     "You have already added this option modifyDialogf   '   '=You have checked the 'delete files on the destination' option modifyDialogz         NYou have declared a destination that is part of the source directory structure modifyDialog    "/"        "    "qYou have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box modifyDialog               '    'You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box modifyDialogadd modifyDialog& :additional options: modifyDialogadvanced modifyDialogbrowse modifyDialog  browse locally modifyDialog   browse localy modifyDialog0 by-pass WARNING modifyDialog cancel modifyDialog( cancel editing modifyDialog0   command to be executed modifyDialog destination modifyDialog done modifyDialog$  done editing modifyDialogedit modifyDialog8 -C4c arcfour,blowfish-cbceg -C4c arcfour,blowfish-cbc modifyDialog filename modifyDialog<   launch the pattern editor modifyDialoglost+found lost+found modifyDialog  move down modifyDialog  move up modifyDialog  options list modifyDialog: password: modifyDialog  :port : modifyDialog8   :private key file : modifyDialogremove modifyDialog*  rsync:rsync password file: modifyDialogsimple modifyDialogsource modifyDialogsshssh modifyDialog     <b></b>       0use boxes to STOP task execution on error modifyDialogvalidate modifyDialog     '   ',   Cwithout having checked 'Recurse into directories' which is required modifyDialog Cancel patternEditorZ             ,      /     ""Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditor      /  EDefine here the name criteria for the files/directories to be matched patternEditor` ,       8Define here, what would you like the pattern to refer to patternEditor* Directory contents patternEditor             /     sEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor           /                ".txt",  .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditor     /     GEnter here the name of the files/directories that the pattern refers to patternEditor           /     bEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditorH     :Go deeper in path by : patternEditorl      Go deeper in path by any level patternEditorOkay patternEditorb       +Please choose a directory within the source patternEditorT      &Please choose a file within the source patternEditor        5Reset the pattern editor fields to the default values patternEditor" Select directory patternEditor  Select file patternEditor  Set of directories patternEditor  Set of files patternEditor* Specific directory patternEditor&  Specific file patternEditorB    $The actual pattern is displayed here patternEditor0   :The pattern refers to a: patternEditor ,                   "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditor ,                   ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditor ,         "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditor ,         "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorj          (   ),          "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditor       -    "/media/music"  3 -: 1.Rock 2.Jazz 3.Soundtracks         3,   : *   *    * :/media/music/ *      "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorany patternEditor:   "browse localy for a directory path patternEditor6   browse localy for a file patternEditor : contains : patternEditor : directory : patternEditor  : ends with : patternEditor :file : patternEditor  final pattern patternEditor  : is exactly : patternEditor name patternEditor( pattern editor patternEditorreset patternEditor  : starts with : patternEditor2  use absolute path patternEditor  filescheduleDialog & & on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog::delayscheduleDialogH<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">  </span></p></body></html>

Profile execution scheduling

scheduleDialog@ @ rebootscheduleDialogB   Add a new profile schedulescheduleDialog8  Add profile schedulescheduleDialogAnyscheduleDialogAprilscheduleDialogfull phrase: 'of April'AprilscheduleDialog /         ?4Are you sure you want to close the schedule dialog ?scheduleDialogAugustscheduleDialogfull phrase: 'of August'AugustscheduleDialog CancelscheduleDialog          ( server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialog$  Console ModescheduleDialogDecemberscheduleDialogfull phrase: 'of December'DecemberscheduleDialog    luckybackup     &Delay luckybackup execution at startupscheduleDialog:   crontabDisplay the current crontabscheduleDialog$  Execute profilescheduleDialogFebruaryscheduleDialogfull phrase: 'of February'FebruaryscheduleDialogFridayscheduleDialog   Invalid profilescheduleDialogJanuaryscheduleDialogfull phrase: 'of January'JanuaryscheduleDialogJulyscheduleDialogfull phrase: 'of July'JulyscheduleDialogJunescheduleDialogfull phrase: 'of June'JunescheduleDialogMarchscheduleDialogfull phrase: 'of March'MarchscheduleDialog MayscheduleDialog full phrase: 'of May'MayscheduleDialog>  Modify profile schedulescheduleDialogV    Modify selected profile schedulescheduleDialogMondayscheduleDialogH     !!No schedules are declared !!scheduleDialogNovemberscheduleDialogfull phrase: 'of November'NovemberscheduleDialogOctoberscheduleDialogfull phrase: 'of October'OctoberscheduleDialog : Profile :scheduleDialog@  Profile schedule detailsscheduleDialogP    Remove selected profile schedulescheduleDialogB  ,   Run once, at startupscheduleDialogSaturdayscheduleDialog SeptemberscheduleDialogfull phrase: 'of September' SeptemberscheduleDialog        ''    SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog*   Starting from scratchscheduleDialogSundayscheduleDialog          luckyBackup .8The existent schedule file is not a valid luckyBackup v.scheduleDialog ThursdayscheduleDialog TuesdayscheduleDialogL     cronUnable to create cron filescheduleDialogb     Unable to create schedule filescheduleDialog WednesdayscheduleDialogt         cronIT8You have made changes without clicking the cronIT buttonscheduleDialog       BYou have reached the maximum limit of supported scheduled profilesscheduleDialog          5You have to remove an item if you wish to add anotherscheduleDialog> crontab  $Your crontab is updated successfullyscheduleDialogaddscheduleDialogatscheduleDialogclosescheduleDialog6   close this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog& crontabcrontab contentscheduleDialog dayscheduleDialog   :day of month :scheduleDialog&   : day of week :scheduleDialogeveryscheduleDialog hourly at minute scheduleDialog.luckyBackup - luckyBackup - schedulescheduleDialog minscheduleDialogmodifyscheduleDialog :month :scheduleDialogndscheduleDialogas in 22nd dayndscheduleDialog:   crontabno crontab entries existscheduleDialogofscheduleDialog"  of any monthscheduleDialogokayscheduleDialogT ,     once, at system startupscheduleDialogrdscheduleDialogas in 23rd dayrdscheduleDialogremovescheduleDialog          @schedule the execution of profiles as declared in the list abovescheduleDialogr     -1     9set this value to -1 for the schedule to occur every hourscheduleDialog"  skip criticalscheduleDialogstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialog( (:) :time (hour:min) :scheduleDialog:   crontabview current crontabscheduleDialogN       +A profile with the same name already exists textDialogZ /     ??#Are you sure you wish to proceed ?? textDialog,             !!BBEWARE, if your intention is NOT to clone source to destination !! textDialog Cancel textDialogD    Copy command to clipboard textDialogz     '  $Do not show this again for this task textDialog"  :Enter passphrase : textDialog"  :Enter pasword : textDialog@      :#Enter the name of the new profile : textDialog>      :#Enter the new name of the profile : textDialogNo textDialogOkay textDialogH    Please enter a different name textDialog$  :Profile description : textDialogYes textDialog    '      '<br>    '   'You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog2 eMail information textDialogluckyBackup luckyBackup textDialogCancel winDialog`      cygpath*Enter the full path of the cygpath command winDialog^      dosdev)Enter the full path of the dosdev command winDialogt        luckybackup0Enter the full path of the luckybackup directory winDialog\      rsync(Enter the full path of the rsync command winDialogX      ssh&Enter the full path of the ssh command winDialogh       .Enter the full path of the temporary directory winDialogl        vshadow,Enter the full path of the vshadow directory winDialog2  (*.exe)Executable Files (*.exe) winDialogOkay winDialog.  cygpathSelect cygpath command winDialog,  dosdevSelect dosdev command winDialog*  rsyncSelect rsync command winDialog&  sshSelect ssh command winDialog6  Use default value winDialog  browse locally winDialogcygpath:cygpath: winDialog$ declaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog" : main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog* : temp dir: winDialogvshadow dir: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_ara.qm0000666000175000017500000006226313157502316021635 0ustar luckybluckyb!2_[affE5fPEEN~ 'aBbaBaPaQ[aZa]ص "Yc({Y*`3/]^:FZ92tPd ~PdKKj6;Yj6CWj6Nj6V mC<td>}L34/ĉ-~+&>v_/8fChwV?pNCtc>BѐS7uT _5b/P/rU]\c iu"cR3@#R xNiODCJzԥM&.CGJO tHܯ"l:O'_IB2IPbIQ)IQIWI\,N&_^AR._9G  =I Z- Rb1 ?B* s8\ #W; \.~O DR P fB z:C [G6 c2AS 8K 8\ 8]> 6#V=JMJp{>)]yi {r. RAr#u+U"e,&)N9(դ (դL<4?VG ENQRN>F^[=$Jc;ln$Y6Xt)EuZu7֙SW]7ri]}J-3( 'D%.*D'A'*Calculating differencesCalcDiffThreadEF A6DC %F*81 Please waitCalcDiffThreadJA-5 'DH,G)Scanning destinationCalcDiffThreadJA-5 'DDB7)Scanning snapshotCalcDiffThreadJA-5 'DE5/1Scanning sourceCalcDiffThread.%.*D'A'* 'DDB7) H'DE5/1Snapshot and source differencesCalcDiffThreadr%E3- (J'F'* 'DE5/1 'D0J DJ3 EH,H/'K AJ 'DF3.) 'D%-*J'7J);delete existing source data that do not exist at the backupCalcDiffThread.7J1CRITICALQObject 'DH,G) DestinationQObjectE,D/ 'DH,G)Destination directoryQObjectE,D/ DirectoryQObject -3F'KOKQObjectEF A6DC <b>#2D 'D'.*J'1 9F E1(9'* 'D*6EJF 'DEF'3()</b> B(D 'DEH'5D)APlease uncheck appropriate include boxes before proceedingQObject 'DE5/1SourceQObjectE,D/ 'DE5/1Source directoryQObjectE,D/ 'DE2'EF)Sync directoryQObject JO2'EFSyncingQObject JO2'EF'Full phrase: Syncing to SyncingQObject$B'&E) 'DEG'E A'1:)The task list is emptyQObject *-0J1WARNINGQObjectRDB/ *6EF* CD EF 'DEG'E 'DE*1'(7) 'D*'DJ):8You have included both of the following connected tasks:QObject*DE *BE (*6EJF #J EG'EYou have not included any tasksQObjectH/#Hand/orQObject:J1 EH,H/does not existQObject&*E 'D9+H1 9DI #.7'! errors foundQObject*FAJ0 'DEGE)execution of taskQObject*FAJ0 'DEGE)3Full phrase: execution of task: finishedexecution of taskQObject*FAJ0 'DEGE)dFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject %F*GIfinishedQObject %F*GI?Full phrase: execution of 1st part of task: finishedfinishedQObject %F*GI3Full phrase: execution of task: finishedfinishedQObject %F*GICFull phrase: post-task execution of COMMAND: finishedfinishedQObject E,'F'KfreeQObjectA'1:is emptyQObjectD' #.7'! no errorsQObject:J1 E*HA1 not availableQObject$D'JH,/ 4& DD(/# (Gnothing to startQObject,*FAJ0 'D#E1 (9/ 'DEGE)post-task execution of commandQObject,*FAJ0 'D#E1 (9/ 'DEGE)CFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject,*FAJ0 'D#E1 B(D 'DEGE)pre-task execution of commandQObject,*FAJ0 'D#E1 B(D 'DEGE)BFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectJ(/#startingQObjectJ(/#?Full phrase: execution of 1st part of task: startingstartingQObjectJ(/#?Full phrase: execution of 2nd part of task: startingstartingQObjectJ(/#3Full phrase: execution of task: startingstartingQObjectJ(/#?Full phrase: post-task execution of command: startingstartingQObject 'D-'D)statusQObject4G0' :J1 E3EH- D#3('( H'6-)'this is not allowed for obvious reasonsQObjectb3HA J$/J G0' %DI #F *D:J #-/ 'DEG'E 'DEGE) 'D#.1I.this will lead to one task canceling the otherQObject%DItoQObject%DI'Full phrase: Syncing to toQObject&9F&About aboutDialog &%*A'BJ) 'D*1.J5&License Agreement aboutDialog &'D/9E&Support aboutDialog&4C1'K D@ &Thanks to aboutDialog...F5AJ 'D".1 <b>Dimitra</b> 'D*J 5(1* E9J 9DI CD G0G 'D#HB'* 'D*J B6J*G' AJ 'D9ED 9DI G0' 'DE41H9j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog0...D,EJ9 E3*./EJ EF*/J'*...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog'D&C'*(A&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog "F/1JG 2FJ/'13JCAndrej Znidarsic aboutDialogBE*1,E H',G) 'DE3*./E DD:) 'D91(J)Arabic gui translator aboutDialogF'D5'&F 'D13EJ D12E Arch linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog#+JF' 'DJHF'FAthens, Greece aboutDialog2*7(JB F3. '-*J'7J & *2'EFBackup & Sync Application aboutDialoglE*1,E H',G) 'DE3*./E DD:) 'D(H3FJ) & 5'&F 12E mandriva4Bosnian gui translator & mandriva package maintainer aboutDialog>DE J*E 'D9+H1 9DI EDA 'D'*A'BJ)!Could not locate the license file aboutDialogDE*1,E H',G) 'DE3*./E DD:) 'D*4JCJ)Czech gui translator aboutDialog5'&F -2E DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialogFE*1,E H',G) 'DE3*./E DD:) 'DGHDF/J)Dutch gui translator aboutDialog%J G'C'F /H1'FE. Hakan Duran aboutDialog .5H5'K Especially aboutDialogB5'&F -2E'* AJ/H1' ('DE.2F 'D13EJ))Fedora package maintainer (official repo) aboutDialogA1'F3J3CH (1JDJFrancesco Braile aboutDialogE*1,E H',G) 'DE3*./E DD:) 'DA1F3J) HE3*4'1 %9/'/ 'D-2E (HDJ3 AB7)AFrench gui translator and valuable packing advisor (and not only) aboutDialog@5'&F 'D(F'! 'D%DC*1HFJ D@ GentooGentoo ebuild maintainer aboutDialogFE*1,E H',G) 'DE3*./E DD:) 'D#DE'FJ)German gui translator aboutDialog'D*-J) DCD EF:Give a thumbs up at: aboutDialog\E*1,E H',G) 'DE3*./E DD:) 'DJHF'FJ) HA'-5 B/J1(Greek gui translator and valuable tester aboutDialog:E*1,E /DJD 'DE3*./E DDJHF'FJ)Greek manual translator aboutDialog^#F' 4.5J'K DE HDF #B(D 'DE'D EB'(D G0' 'DE41H9.DI personally never had and never will accept money for this project. aboutDialogxJ9H/ 'DA6D DG HD/1H3G 'D*H6J-J) 'D*J ,9D*FJ #(/# G0' 'DE41H9JIf it wasn't him and his tutorials I would never have started this project aboutDialog%0' #9,(C G0' 'D*7(JB HH//* 'D*(19 DJ 4.5J'K CD E'9DJC A9DG GH:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog %FG <b>(1F'E, -1</b>: *3*7J9 *H2J9G H/#H *9/JDG *-* FA3 41H7 1.5) GNU 'D9EHEJ) CE' GJ EF4H1) 9F 71JB E$33) 'D(1E,J'* 'D-1) 'D%5/'1 3 EF 'D1.5).It 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, version 3 of the License. aboutDialogJ*E *H2J9G 9DI #ED #F JCHF EAJ/'K HDCF (/HF #J 6E'F'*: HD'-*I CHFG 5'D-'K DD*1HJ, #H D#J :16 E9JF.It 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. aboutDialogFE*1,E H',G) 'DE3*./E DD:) 'D%J7'DJ)Italian gui translator aboutDialogJack Fink Jack Fink aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog"C'13*F ,H4HD*H3CJKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog"#.J1'K HDJ3 ".1'KLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogE',/ 'D3GDJ Majed Sahli aboutDialogB5'&F 12E Mandriva ('DE.2F 'D13EJ)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog5'&F -2E Mepis (Community repo) & E*1,E H',G) 'DE3*./E DD:) 'D#3('FJ)BMepis package maintainer (Community repo) & Spanish gui translator aboutDialog|HDCFFJ B11* #F #3*9ED luckyBackup D#/9E 'DF'3 'DE-*',) E'/J'K.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialog5'&F -2E OpenSUSE (KDE4 Community repo) H E3*4'1 B/J1 D%9/'/ 'D-2ENOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogHE*1,E H',G) 'DE3*./E DD:) 'D(1*:'DJ)Portuguese gui translator aboutDialogRaffaeleRaffaele aboutDialog<E*1,E H',G) 'DE3*./E DD1HE'FJ)Romanian gui translator aboutDialogZE*1,E H',G) 'DE3*./E DD:) 'D1H3J) HA'-5 B/J1*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialog\#F81 %DI "'*A'BJ) 'D*1.J5" DDE2J/ EF 'D*A'5JD.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog>E*1,E H',G) 'DE3*./E DD3DHAJFJ)Slovenian gui translator aboutDialogjD0DC #1,H #F */9EH' ('DE'D 'D0J 3HA J3*./E D:16 F(JD._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog G0G GJ ,'&2*J :)This is my reward :) aboutDialog*HE'3 ,'F3FThomas Janssen aboutDialog*J*H (HBHJ*H Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialog8E*1,E H',G) 'DE3*./E DD*1CJ)Turkish gui translator aboutDialog45H* H CF #-/ 'DE9,(JF GF':Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialog %:D'Bclose aboutDialogH5D) 'D*(19 donation link aboutDialogD/9EGE.forums for their support. aboutDialog fri13fri13 aboutDialog9F luckyBackupluckyBackup - about aboutDialogluckyBackup JH29 *-* 41H7 <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">1.5) GNU 'D9'E)</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogE'Dmoney aboutDialog E,'F'Kno money aboutDialog$'DFBD %DI Mac OS Xport to Mac OS X aboutDialogdE9/ -2E rpm A'-5 B/J1 H E3*4'1 'D'*5'D'* 'D.'1,J)5'&F -2E Ubuntu (launchpad PPA))ubuntu package maintainer (launchpad PPA) aboutDialog>E5EE H',G) 'DE3*./E DD%5/'1 0 3v.0.3 gui designer aboutDialog>E5EE H',G) 'DE3*./E DD%5/'1 0 3v0.3 gui designer aboutDialog %D:'!Cancel emailDialogF9EOkay emailDialogF9EOkay helpBrowser,luckyBackup - 'DE3'9/)luckyBackup - help helpBrowser/DJD 'DE3*./E/manual/ helpBrowser %:D'Bclose logDialogJluckyBackup - H69 *FAJ0 'DEG'E 'D-'DJ&luckyBackup - tasks execution progress logDialog'D.7# 'D*'DJ next error logDialog'D.7# 'D3'(Bprevious error logDialog&9F&AboutluckyBackupWindow4*E %CE'D *FAJ0 ,EJ9 'DEG'EAll tasks completedluckyBackupWindow 'DH,G) DestinationluckyBackupWindowE,D/ DirectoryluckyBackupWindow EF*GJDoneluckyBackupWindow'DHB* 'DEFB6J Elapsed timeluckyBackupWindow91(JEnglishluckyBackupWindow91(JDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowT*E %JB'A *FAJ0 'DEG'E (9FA EF B(D 'DE3*./E4Execution of tasks were terminated violently by userluckyBackupWindow.DE J*E 'D9+H1 9DI #.7'!No errors foundluckyBackupWindow*J*E 'D"F *FAJ0 'DEGE)Now performing taskluckyBackupWindow 'DE5/1SourceluckyBackupWindow$B'&E) 'DEG'E A'1:)The task list is emptyluckyBackupWindow *-0J1WARNINGluckyBackupWindowJ*E '-*3'( calculatingluckyBackupWindowJ*E '-*3'(-info message displayed during ...calculations calculatingluckyBackupWindow-0A 'DEDA'*deleting filesluckyBackupWindow-0A 'DEDA'*/info message displayed during ...file deletionsdeleting filesluckyBackupWindow&*E 'D9+H1 9DI #.7'! errors foundluckyBackupWindow %F*GIfinishedluckyBackupWindow %F*GI:full phrase: 'Execution of profile finished'finishedluckyBackupWindowluckyBackup luckyBackupluckyBackupWindow,*FAJ0 'D#E1 (9/ 'DEGE)post-task execution of commandluckyBackupWindow,*FAJ0 'D#E1 B(D 'DEGE)pre-task execution of commandluckyBackupWindowH69 'DE-'C')simulation modeluckyBackupWindow 'DH69statusluckyBackupWindow1HH* super userluckyBackupWindow%DItoluckyBackupWindow'-0ADelete manageDialog'3*1,'9Restore manageDialog:J1 E*HA1 not available manageDialog *-0J1WARNING manageWizard %:D'Bclose manageWizard&*E 'D9+H1 9DI #.7'! errors found manageWizard'D.7# 'D*'DJ next error manageWizardD' #.7'! no errors manageWizard:J1 E*HA1 not available manageWizard'D.7# 'D3'(Bprevious error manageWizard %D:'!Cancel modifyDialog 'DH,G) Destination modifyDialogF9EOkay modifyDialog 'DE5/1Source modifyDialog %D:'!Cancel patternEditorF9EOkay patternEditor,#6A ,/HD) D3,D 'D*91JAAdd profile schedulescheduleDialog %D:'!CancelscheduleDialog EDA 3,D :J1 5-J-Invalid profilescheduleDialog*9/D ,/HD) EDA 'D*91JAModify profile schedulescheduleDialog>DE J*E *91JA #J ,/HD DDEGE'* !!No schedules are declared !!scheduleDialog0*A'5JD ,/HD) EDA 'D*91JAProfile schedule detailsscheduleDialog'D(/# EF 'D5A1Starting from scratchscheduleDialogFDE #*ECF EF %F4'! EDA ,/HD) 'DEGE'*Unable to create schedule filescheduleDialogbDB/ H5D* 'D-/ 'D#B5I EF EDA'* *91JA ,/HD) 'DEGE'*BYou have reached the maximum limit of supported scheduled profilesscheduleDialogXD'(/ #F *-0A #-/ 'D(FH/ D**ECF EF %6'A) ,/J/5You have to remove an item if you wish to add anotherscheduleDialog %:D'BclosescheduleDialog2JH,/ EDA *91JA (FA3 'D'3E+A profile with the same name already exists textDialog>GD #F* E*#C/ #FC *H/ 'DEH'5D)#Are you sure you wish to proceed ?? textDialogX%F*(G %0' C'F B5/C DJ3 F3. 'DE5/1 DDH,G) !!BBEWARE, if your intention is NOT to clone source to destination !! textDialog %D:'!Cancel textDialog$'F3. 'D#E1 DD0'C1)Copy command to clipboard textDialogPD' *8G1 G0' 'D*F(JG E1) #.1I DG0G 'DEGE)$Do not show this again for this task textDialog #/.D ,ED) 'D31 :Enter passphrase : textDialog #/.D CDE) 'D31 :Enter pasword : textDialog:#/.D '3E EDA 'D*91JA 'D,/J/ :#Enter the name of the new profile : textDialog@#/.D 'D'3E 'D,/J/ DEDA 'D*91JA :#Enter the new name of the profile : textDialogD'No textDialogF9EOkay textDialog('D1,'! %/.'D '3E ".1Please enter a different name textDialogF9EYes textDialogDB/ '.*1* #F "*F3. E-*HJ'* 'DE5/1"<br>E9 "-0A 'DEDA'* AJ 'DH,G)"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogluckyBackup luckyBackup textDialog %D:'!Cancel winDialogF9EOkay winDialogluckyBackup luckyBackup winDialog$ * luckybackup-0.5.0/translations/luckybackup_ara.ts0000666000175000017500000065306513165410113021644 0ustar luckybluckyb CalcDiffThread Scanning destination يفحص الوجهة Please wait من فضلك إنتظر Scanning snapshot يفحص اللقطة Scanning source يفحص المصدر Calculating differences يحسب الإختلافات Sync dir A & B differences Snapshot and source differences إختلافات اللقطة والمصدر Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transferred over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup إمسح بيانات المصدر الذي ليس موجوداً في النسخة الإحتياطية QObject The task list is empty قائمة المهام فارغة nothing to start لايوجد شئ للبدأ به You have included both of the following connected tasks: لقد تضمنت كل من المهام المترابطة التالية: this is not allowed for obvious reasons هذا غير مسموح لأسباب واضحة Please <b>uncheck appropriate include boxes</b> before proceeding من فضلك <b>أزل الاختيار عن مربعات التضمين المناسبة</b> قبل المواصلة You have not included any tasks لم تقم بتضمين أي مهام The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other سوف يؤدي هذا إلى أن تلغي أحد المهام المهمة الأخرى Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting تنفيذ الأمر قبل المهمة starting Full phrase: pre-task execution of command: <COMMAND> starting يبدأ Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting تنفيذ الأمر بعد المهمة starting Full phrase: post-task execution of command: <COMMAND> starting يبدأ execution of task Full phrase: execution of task: <TASKNAME> starting تنفيذ المهمة starting Full phrase: execution of task: <TASKNAME> starting يبدأ Source Full phrase: source: <SOURCE_NAME المصدر Destination Full phrase: Destination: <DEST_NAME الوجهة execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting يبدأ Syncing Full phrase: Syncing <DIR-A> to <DIR-B> يُزامن to Full phrase: Syncing <DIR-A> to <DIR-B> إلى execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting يبدأ Syncing Full phrase: Syncing <DIR-B> to <DIR-A> يُزامن to Full phrase: Syncing <DIR-B> to <DIR-A> إلى pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished تنفيذ الأمر قبل المهمة finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished إنتهى post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished تنفيذ الأمر بعد المهمة finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished إنتهى execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished إنتهى execution of task Full phrase: execution of task: <TASKNAME> finished تنفيذ المهمة finished Full phrase: execution of task: <TASKNAME> finished إنتهى execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error تنفيذ المهمة finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available غير متوفر no errors لا أخطاء errors found تم العثور على أخطاء status الحالة OK حسناً Sync directory مجلد المزامنة Source directory مجلد المصدر Using remote, check is skipped Destination directory مجلد الوجهة free as in free disk space مجاناً WARNING تحذير I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory مجلد and/or و/أو does not exist غير موجود is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL خطير is empty فارغ I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog using Qt4 باستخدام Qt4 Backup & Sync Application تطبيق نسخ احتياطي & تزامن Loukas Avgeriou Loukas Avgeriou It 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 'License Agreement' tab for more details. أنظر إلى "اتفاقية الترخيص" للمزيد من التفاصيل. Athens, Greece أثينا، اليونان Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) الصائن الرسمي لرزم Arch linux (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor معد حزم rpm، فاحص قدير و مستشار الاتصالات الخارجية Patrick Matthaei Patrick Matthaei Debian package maintainer صائن حزم Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester مترجم واجهة المستخدم للغة اليونانية وفاحص قدير The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor صائن حزم OpenSUSE (KDE4 Community repo) و مستشار قدير لإعداد الحزم Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator صائن حزم Mepis (Community repo) & مترجم واجهة المستخدم للغة الأسبانية Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) صائن حزم Ubuntu (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X النقل إلى Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer صائن البناء الإلكتروني لـ Gentoo Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) صائن رزم Mandriva (المخزن الرسمي) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator مترجم واجهة المستخدم للغة التشيكية Stergios Prosiniklis Stergios Prosiniklis Greek manual translator مترجم دليل المستخدم لليونانية German gui translator مترجم واجهة المستخدم للغة الألمانية Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator مترجم واجهة المستخدم للغة البرتغالية Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) مترجم واجهة المستخدم للغة الفرنسية ومستشار إعداد الحزم (وليس فقط) Raffaele Raffaele Italian gui translator مترجم واجهة المستخدم للغة الإيطالية using Qt António Correia Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester مترجم واجهة المستخدم للغة الروسية وفاحص قدير Kenny Verstraete Kenny Verstraete Dutch gui translator مترجم واجهة المستخدم للغة الهولندية Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer مترجم واجهة المستخدم للغة البوسنية & صائن رزم mandriva Majed Sahli ماجد السهلي Arabic gui translator مترجم واجهة المستخدم للغة العربية Adrian Murariu Adrian Murariu Romanian gui translator مترجم واجهة المستخدم للرومانية Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer مصمم واجهة المستخدم للإصدار 0 3 fri13 fri13 v.0.3 gui designer مصمم واجهة المستخدم للإصدار 0 3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project يعود الفضل له ولدروسه التوضيحية التي جعلتني أبدأ هذا المشروع Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Spanish gui translator Antonio Jose Molina Fredrik Holmgren Swedish gui translator Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...لجميع مستخدمي منتديات forums for their support. لدعمهم. Especially خصوصاً that contributed to this project one way or another الذين أسهموا في هذا المشروع بطريقة أو بأخرى Last but no least أخيراً وليس آخراً Could not locate the license file لم يتم العثور على ملف الاتفاقية no money مجاناً If you like this app and would like to donate something to me personally, all you have to do is: إذا أعجبك هذا التطبيق ووددت التبرع لي شخصياً، كل ماعليك فعله هو: Give a thumbs up at: التحية لكل من: Vote good & become a fan at: صوت و كن أحد المعجبين هنا: This is my reward :) هذه هي جائزتي :) money مال I personally never had and never will accept money for this project. أنا شخصياً لم ولن أقبل المال مقابل هذا المشروع. Nevertheless, I decided to use luckyBackup to support people that really need financial help. ولكنني قررت أن أستعمل luckyBackup لأدعم الناس المحتاجة مادياً. So, please consider it seriously to donate money that will eventually be used for a good cause. لذلك أرجو أن تدعموا بالمال الذي سوف يستخدم لغرض نبيل. donation link وصلة التبرع luckyBackup - about عن luckyBackup close إغلاق &About &عن <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &الدعم A&uthor ال&كاتب &Thanks to &شكراً لـ &License Agreement &إتفاقية الترخيص luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup يوزع تحت شروط <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">رخصة GNU العامة</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! إنه <b>برنامج حر</b>: تستطيع توزيعه و/أو تعديله تحت نفس شروط رخصة GNU العمومية كما هي منشورة عن طريق مؤسسة البرمجيات الحرة، الإصدار 3 من الرخصة. Thomas Janssen توماس جانسن Fedora package maintainer (official repo) صائن حزمات فيدورا (المخزن الرسمي) Karsten Jaschultowski كارستن جوشولتوسكي Francesco Braile فرانسيسكو بريلي Andrej Znidarsic آندريه زنيدارسيك Slovenian gui translator مترجم واجهة المستخدم للسلوفينية E. Hakan Duran إي هاكان دوران Turkish gui translator مترجم واجهة المستخدم للتركية Tito Poquito تيتو بوقويتو slackware package maintainer (SlackBuilds Repository) صائن رزم سلاكوير (مخزن سلاك بيلدز) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...نصفي الآخر، <b>Dimitra</b> التي صبرت معي على كل هذه الأوقات التي قضيتها في العمل على هذا المشروع emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay نعم Close dialog Cancel إلغاء Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help luckyBackup - المساعدة manual/ دليل المستخدم/ Okay نعم logDialog luckyBackup - tasks execution progress luckyBackup - وضع تنفيذ المهام الحالي <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error الخطأ السابق next error الخطأ التالي close إغلاق loading logfile... wait luckyBackupWindow commands output output window label rsync and pre/post task commands output is displayed here tooltip Task list task list label List of all the available tasks task list tooltip - line1 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' finished full phrase: 'Execution of profile <PROFILENAME> finished' إنتهى simulation mode وضع المحاكاة Could not update last execution time of tasks Last execution time of tasks updated &Abort &Minimize to tray tray menu action &Restore tray menu action execution of profile: tray message - execution of profile: <PROFILENAME> in progress... in progress... tray message - execution of profile: <PROFILENAME> in progress... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time الوقت المنقضي pre-task execution of command تنفيذ الأمر قبل المهمة post-task execution of command تنفيذ الأمر بعد المهمة Now performing task يتم الآن تنفيذ المهمة Directory مجلد calculating يتم احتساب deleting files حذف الملفات Total files transferred trying to send an email The system will shutdown in 1 minute Source المصدر Destination الوجهة All tasks completed تم إكمال تنفيذ جميع المهام No errors found لم يتم العثور على أخطاء errors found تم العثور على أخطاء logfile(s) have been created under directory: Done منتهي execution of profile: finished إنتهى Execution of tasks were terminated violently by user تم إيقاف تنفيذ المهام بعنف من قبل المستخدم &Profile This is a top menu item &Settings This is a top menu item &Language This is a top menu item &Help This is a top menu item &Handbook full phrase: 'luckyBackup Handbook' &About full phrase: 'about luckyBackup' &عن current profile include label of 'include' checkboxes Move the highlighted task up, by one position button tooltip Move the highlighted task down, by one position button tooltip jump to next error button tooltip jump to previous error button tooltip Task task groupbox (add, remove, modify buttons) label add add task button label add task add task button tooltip remove remove task button label remove highlighted task remove task button tooltip modify modify task button label modify highlighted task modify task button tooltip Begin the execution of all included tasks start button tooltip NOTE simulation checkbox tooltip - line2 Progressbar update will not be realistic simulation checkbox tooltip - line2 Information window information window title Exit exit button tooltip. full phrase is: 'exit luckybackup' EXIT EXIT button label minimize to tray minimizes the window to the tray area F1 English عربي &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 and change anything you wish before proceeding 'create restore' message line 3/4 ERROR loading default profile ... information window message loading profile ... information window message loading failed information window message Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' scheduled this refers to a profile YES NO Description saving default profile ... Information window message saving profile ... Information window message WARNING تحذير default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' creating default profile ... Information window message creating profile ... Information window message profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Would you like to save it before proceeding ? Would you like to proceed anyway? super user super user is the root user رووت super user mode Welcome to full phrase: 'Welcome to luckyBackup' English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. عربي Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' The name you have entered contains only invalid characters Profile full phrase: 'Profile <PROFILENAME> already exists' already exists full phrase: 'Profile <PROFILENAME> already exists' Would you like to replace it ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> deleted successfully' deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' set as default full phrase: 'Profile <PROFILENAME> set as default' All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Could not locate the file full phrase: 'Could not locate the file <FILENAME>' You have reached the maximum limit of supported tasks You have to remove a task if you wish to add another !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' إلى Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Please select a task to remove first Are you sure you want to remove the following task ?? Would you like to also remove: Please select a task to manage first nothing to do current crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully status الوضع NOT INCLUDED Checks are disabled. This task will be <b>skipped</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' luckyBackup luckyBackup Ctrl+S Information window CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile Ctrl+N Ctrl+X Ctrl+D F5 Aborting: Please wait for all processes to be killed Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Removing failed to remove Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations يتم احتساب transferring files info message displayed during ...file transfers deleting files info message displayed during ...file deletions حذف الملفات transferring files ABORTED &Refresh This is a top 'Profile' menu action De&fault This is a top 'Profile' menu action Set as Default This is a top 'Profile' menu action tooltip &View/Edit Description This is a top 'Profile' menu action View/Edit the profile description This is a top 'Profile' menu action tooltip R&ename This is a top 'Profile' menu action &Delete This is a top 'Profile' menu action &New This is a top 'Profile' menu action &Save This is a top 'Profile' menu action E&xport This is a top 'Profile' menu action &Import This is a top 'Profile' menu action S&chedule This is a top 'Profile' menu action E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action D&uplicate This is a top 'Profile' menu action &Task This is a top menu action &Add This is a top 'Task' menu action &Remove This is a top 'Task' menu action &Modify This is a top 'Task' menu action Create D&uplicate task This is a top 'Task' menu action Create R&estore task This is a top 'Task' menu action Manage &Backup This is a top 'Task' menu action display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Actions This is a top menu action Current Profile This is a top menu action Lock This is a top menu action. Refers to toolbars Show text under icons This is a top menu action &Toolbars This is a top menu item Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Abort Abort button label Stop the execution of running tasks NOW Abort button tooltip Execution of tasks finished Done button tooltip Dry simulation checkbox label. Translate this as 'simulation' This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Show information window show/hide information window button tooltip profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end The task list is empty قائمة المهام فارغة Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Please select a task to duplicate first Please select a task first Hide information window hide/show information window button tooltip Show information window hide/show information window button tooltip You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action display information regarding highlighted task This is a top 'Task' menu action tooltip &Task Successfully created destination directory Failed to create destination directory manageDialog profile task Delete احذف Restore استرجاع view log destination: source: hide source Close this window Close Please select a snapshot from the list Information message This directory does not exist This directory does not exist Information message I do not have sufficient permissions to read this directory Information message sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir B full phrase: sync dir a: <DIRECTORY_b> View the logfile of the selected sync task 'view log' pushbutton tooltip Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time غير متوفر luckyBackup - manage backup Delete the selected snapshot and its logfile Restore the selected snapshot View the logfile of the selected snapshot Calculate the differences between the source and the selected snapshot Calculate differences manageWizard not available refers to a date-time غير متوفر Delete backup this is the title of a wizard Date & time simple label of the wizard gui Path ...is a directory path WARNING تحذير You are about to delete backup data information message - line1 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Restore backup this is the title of a wizard Backup path ...is the backup directory path close إغلاق Deleting snapshot logfile info message displayed during ...logfile deletion Updating list of snapshots info message displayed during ...snaps list update Aborted Finished simulation no errors لا أخطاء errors found تم العثور على أخطاء Restoring data: main trunk info message displayed during ...data restoration Restoring data: snapshot files info message displayed during ...data restoration Deleting data info message displayed during ...data deletion luckyBackup - manage backup Jump to previous error previous error الخطأ السابق Jump to next error next error الخطأ التالي This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) start ABORT cancel The restore directory will become identical to the backup snapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' success info message displayed after ...logfile deletion failed info message displayed after ...logfile deletion Deleting file that lists snapshot changes info message displayed during ...file deletion success info message displayed after ...file deletion failed info message displayed after ...file deletion success info message displayed after ...snapshots list update Select new restore directory directory selection dialog title Restore path ...is the restore directory path No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup Browse locally for a new restore path change <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination الوجهة Source المصدر Task properties Enter a name for this task (eg "Backup my home directory") Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Synchronize Source and Destination Enter the full path of the source directory (eg /home/luckyb/) Source : browse localy Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay نعم Cancel إلغاء Exclude Add any directory, file or pattern to be excluded from this task Templates Exclude all temp folders (**/*tmp*/) Temporary folders Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Exclude all backup files & folders (**~) Backup files System folders Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Task description Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Define here, what would you like the pattern to refer to The pattern refers to a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file browse localy for a directory path use absolute path Go deeper in path by : Go deeper in path by any level any Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values reset Okay نعم Cancel إلغاء Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch البدأ من الصفر No schedules are declared !! لم يتم تعريف أي جدول للمهمات !! Unable to create schedule file لم أتمكن من إنشاء ملف جدولة المهمات You have reached the maximum limit of supported scheduled profiles لقد وصلت الحد الأقصى من ملفات تعريف جدولة المهمات You have to remove an item if you wish to add another لابد أن تحذف أحد البنود لتتمكن من إضافة جديد Add profile schedule أضف جدولة لسجل التعريف Modify profile schedule عدل جدولة ملف التعريف Profile schedule details تفاصيل جدولة ملف التعريف Invalid profile ملف سجل غير صحيح Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add Modify selected profile schedule modify Remove selected profile schedule remove Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel إلغاء schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close إغلاق Display the current crontab view current crontab textDialog Enter the name of the new profile : أدخل اسم ملف التعريف الجديد : Enter the new name of the profile : أدخل الاسم الجديد لملف التعريف : Profile description : A profile with the same name already exists يوجد ملف تعريف بنفس الاسم Please enter a different name الرجاء إدخال اسم آخر Enter pasword : أدخل كلمة السر : Enter passphrase : أدخل جملة السر : Do not show this again for this task لا تظهر هذا التنبيه مرة أخرى لهذه المهمة You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option لقد اخترت أن "تنسخ محتويات المصدر"<br>مع "حذف الملفات في الوجهة" BEWARE, if your intention is NOT to clone source to destination !! إنتبه، إذا كان قصدك ليس نسخ المصدر للوجهة !! Are you sure you wish to proceed ?? هل أنت متأكد أنك تود المواصلة؟؟ luckyBackup luckyBackup Okay نعم Cancel إلغاء Copy command to clipboard انسخ الأمر للذاكرة eMail information No لا Yes نعم winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay نعم Cancel إلغاء Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_es.ts0000666000175000017500000070512713165410113021505 0ustar luckybluckyb CalcDiffThread Scanning destination Analizando destino Please wait Espere por favor Scanning snapshot Analizando imagen Scanning source Analizando fuente Calculating differences Calculando diferencias Sync dir A & B differences Sincronizar diferencias de directorios A & B Snapshot and source differences Diferencias entre Imagen y Fuente Sync dir B data that also exists at sync dir A and is different Sincronizar datos del directorio B sincronizados con el A y que son diferentes Snapshot data that also exists at the source and is different Datos de Imagen hallados en la Fuente que son diferentes The snapshot data will replace the source data during RESTORE Los datos de Imagen sustituirán a los datos de la Fuente durante la Restauración Data amount is huge. Displaying only first entries La cantidad de datos es enorme. Visualizando solo las primeras entradas Sync dir B data that do NOT exist at sync dir A Sincronizar datos del directorio B que NO existen al sincronizar el directorio A Snapshot data that do NOT exist at the source Datos de imagen que NO existen en la fuente These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Serán enviados a la fuente durante la RESTAURACIÓN Sync dir A data that do NOT exist at sync dir B Sincronizar datos del directorio A que NO existen al sincronizar el directorio B Source data that do NOT exist at the snapshot Datos de la Fuente que NO existen en la Imagen These will be deleted during RESTORE only if you enable the option: Estos serán borrados durante la RESTAURACIÓN solo si habilita la opción: delete existing source data that do not exist at the backup borrar los datos de origen existente que no están en el respaldo QObject The task list is empty La última lista está vacía nothing to start nada que empezar You have included both of the following connected tasks: Ha incluido las dos siguientes tareas conectadas: this is not allowed for obvious reasons no está permitido por razones obvias Please <b>uncheck appropriate include boxes</b> before proceeding Por favor, <b>desmarque la correspondiente casilla</b> antes de continuar You have not included any tasks No ha incluido ninguna tarea The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Las siguientes tareas indicadas <b>comparten el mismo directorio de destino</b> (todas juntas o en grupos) y al menos una de ellas respaldará los contenidos de un directorio this will lead to one task canceling the other esto llevará a una tarea cancelando la otra Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Por favor, desmarque adecuadamente las casillas incluidas o cambie todos los tipos de tareas a otras de '<b>contenidos del directorio de Respaldo</b>' o usar 'los contenidos del directorio de Respaldo' junto a la opción '<b>Solo incluyen</b>', antes de proceder pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting ejecución de comando de pre-tarea starting Full phrase: pre-task execution of command: <COMMAND> starting comenzando Command re-run due to failure This means that a specific command is run for once more because it failed the first time Comando a re-ejecutar debido a un fallo post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting ejecución de comando de post-tarea starting Full phrase: post-task execution of command: <COMMAND> starting comenzando execution of task Full phrase: execution of task: <TASKNAME> starting ejecución de tarea starting Full phrase: execution of task: <TASKNAME> starting comenzando Source Full phrase: source: <SOURCE_NAME Fuente Destination Full phrase: Destination: <DEST_NAME Destino execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting ejecución de la 1ª parte de la tarea starting Full phrase: execution of 1st part of task: <TASKNAME> starting comenzando Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sincronización to Full phrase: Syncing <DIR-A> to <DIR-B> hacia execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting ejecucion de la 2ª parte de la tarea starting Full phrase: execution of 2nd part of task: <TASKNAME> starting comenzando Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sincronización to Full phrase: Syncing <DIR-B> to <DIR-A> hacia pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished ejecución de pre-tarea de comando finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished terminado post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished ejecución de post-tarea de comando finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished terminado execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished ejecución de la 1ª parte de la tarea finished Full phrase: execution of 1st part of task: <TASKNAME> finished terminado execution of task Full phrase: execution of task: <TASKNAME> finished ejecución de tarea finished Full phrase: execution of task: <TASKNAME> finished terminado execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error ejecución de tarea finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finalizado por un error de ejecución de comando de pre/post tarea The process reported an error El proceso ha reportado un error Backing-up profile, logfiles and snapshot data Datos de perfil de respaldo, ficheros de registro e imagen Could not open the logfile No puede abrirse el fichero de registro The logfile does not exist El fichero de registro no existe The specified command is probably not installed Es probable que el comando indicado no esté instalado The logfile could not be created No puede crearse el archivo de registro command: comando: exit code: código de salida: output: salida: Last execution time Tiempo de la última ejecución not available no disponible no errors sin errores errors found errores encontrados status estado OK OK Sync directory Sincronizar directorio Source directory Directorio fuente Using remote, check is skipped Uso remoto, comprobación omitida Destination directory Directorio destino free as in free disk space WARNING ADVERTENCIA I do not have the permission to read/enter sync directory A No tengo permiso para leer/acceder al directorio A a sincronizar I do not have the permission to read/enter the source directory No tengo permiso para leer/acceder al directorio fuente I do not have the permission to read/enter sync directory B No tengo permiso para leer/acceder al directorio B a sincronizar I do not have the permission to read/enter the destination directory No tengo permiso para leer/acceder al directorio destino Directory Directorio and/or y/o does not exist no existe is not mounted no está montado is empty or does not exist está vacío o no existe I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option <font color=red><b>NO SE OMITIRÁ</b></font> esta tarea porque está habilitada la opción "evitar ADVERTENCIA" This task will be <font color=red><b>skipped</b></font> Esta tarea será <font color=red><b>omitida</b></font> CRITICAL CRÍTICO is empty está vacío I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway <font color=orange><b>No se omitirá</b></font> esta tarea. La sincronización se hará de todos modos This task will <font color=orange><b>not be skipped Esta tarea <font color=orange><b>no será omitida</b></font> The Destination Directory will be created if it doesn't exist and filled with new backup data La Carpeta de Destino se creará si no existe y los datos de respaldo se copiarán en la misma Task description Descripción de tarea ReadLogFile Could not locate the logfile Could not open the logfile No puede abrirse el fichero de registro aboutDialog using Qt4 usando Qt4 Backup & Sync Application Aplicación de copias de seguridad y sincronización Loukas Avgeriou Loukas Avgeriou It 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. Se distribuye con la esperanza de que sea de utilidad, pero SIN NINGÚN TIPO DE GARANTÍA; incluso sin la garantía implícita de COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO ESPECÍFICO See the 'License Agreement' tab for more details. Ver la pestaña 'Acuerdo de licencia' para más detalles. Athens, Greece Atenas, Grecia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) matenimiento de los paquetes/pkgbuild oficiales de Arch linux (AUR) Valuable advisor Aviso importante Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Empaquetador rpm, importante probador y asesor de conexiones remotas Patrick Matthaei Patrick Matthaei Debian package maintainer Mantenimiento de los paquetes de Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Traductor de la interfaz al griego e importante probador The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor mantenimiento de los paquetes de OpenSUSE (repositorio de la comunidad de KDE4) e importante asesor de empaquetado Marcos Del Puerto Garcia Marcos Del Puerto García Mepis package maintainer (Community repo) & Spanish gui translator mantenimiento de los paquetes de Mepis (repositorio de la comunidad) y traductor al Español de la interfaz Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) mantenimiento de los paquetes de ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows puerto a MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port para Mac OS X Elbert Pol Elbert Pol port to OS/2 puerto a OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Mantenimiento de los ebuild de Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Cachorrito & mantenedor sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mantenimiento de los paquetes de Mandriva (repositorio oficial de contribuciones) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Mantenedor del paquete Free BSD Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Mantenedor del paquete ex Fedora Pavel Fric Pavel Fric Czech gui translator Traductor de la interfaz al checo Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Traductor del manual en Griego German gui translator Traductor de la interfaz al alemán Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Traductor de la interfaz al portugués Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Traductor de la interfaz al francés e importante probador (y no sólo) Raffaele Raffaele Italian gui translator Traductor de la interfaz al italiano using Qt António Correia Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Traductor de la interfaz al ruso e importante probador Kenny Verstraete Kenny Verstraete Dutch gui translator Traductor de la interfaz al holandés Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Traductor de la interfaz al bosnio y mantenimiento de los paquetes de mandriva Majed Sahli Majed Sahli Arabic gui translator Traductor de la interfaz al Árabe Adrian Murariu Adrian Murariu Romanian gui translator Traductor al Rumano de la gui Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer diseñador de la interfaz v0.3 fri13 fri13 v.0.3 gui designer diseñador de la interfaz gráfica v.0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Si no hubiera sido por él y sus tutoriales nunca hubiera empezado este proyecto Thomas Glatt French gui translator Traductor al Francés de la gui Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gómez Spanish gui translator Traductor al Español de la gui Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Traductor al Sueco de la gui Catalan gui translator Traductor al Catalán de la gui Slovak gui translator Traductor al Eslovaco de la gui Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) invitado especial como eliminador de errores ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist probador importante y especialista generador de ideas Yuri Vidal Yuri Vidal backupwhenidle python script developer desarrollador de backupwhenidle python script Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ... a todos los usuarios de los forums for their support. foros por su apoyo. Especially Especialmente that contributed to this project one way or another que contribuyeron a este proyecto de una u otra manera Last but no least Y por último pero no menos importante Could not locate the license file No se puede localizar el archivo de licencia no money sin dinero If you like this app and would like to donate something to me personally, all you have to do is: si le gusta esta aplicación y desea hacer una donación personal, solo tiene que hacer lo siguiente: Give a thumbs up at: Dar permiso a: Vote good & become a fan at: Voto positivo y convertirse en fan en: This is my reward :) Ésta es mi recompensa :) money dinero I personally never had and never will accept money for this project. Personalmente nunca he aceptado ni aceptaré dinero por este proyecto. Nevertheless, I decided to use luckyBackup to support people that really need financial help. SIn embargo, decidí usar luckyBackup para ayudar a gente que realmente necesita ayuda económica. So, please consider it seriously to donate money that will eventually be used for a good cause. Por tanto, por favor, considere seriamente la donación económica que eventualmente será destinada a una buena causa. donation link enlace de donación luckyBackup - about luckyBackup - acerca de close cerrar &About &About <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Support A&uthor A&utor &Thanks to &Agradecimientos &License Agreement Acuerdo de &Licencia luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup se distribuye bajo los términos del <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Es <b>software libre</b>: puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General GNU publicada por Free Software Foundation, versión 3 de la Licencia. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Mantenedor del paquete Fedora (repo oficial) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Traductor esloveno de la gui E. Hakan Duran E. Hakan Duran Turkish gui translator Traductor turco de la gui Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) mantenedor del paquete slackware (Repositorio SlacksBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...mi otra mitad, <b>Dimitra</b> por su paciencia conmigo todas las veces que este proyecto está en desarrollo emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Informar por email tras la ejecución del perfil command: comando: Use default This means "use the default value for this field" Usar por defecto Arguments Argumentos %f from: %f from: Enter the sender of the message Introducir el remitente del mensaje %l logfile %l logfile %c logfile.tar.gz %c logfile.tar.gz %d date %d date %i time %i time %p profile name %p profile name %e No of errors %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t to: Enter the recipient of the message Indicar el destinatario del mensaje %s subject: %s subject: Enter the subject of the message Indicar el asunto del mensaje %v smtp server: %v smtp server: Enter the smtp server used to send the message Indicar el servidor smtp usado para enviar el mensaje %b body: %b body: Enter the body of the message Introducir el cuerpo del mensaje Send an email right now to test the provided arguments Enviar un email ahora mismo para probar los argumentos previstos Test Prueba Accept changes and close dialog Aceptar los cambios y cerrar mensaje Okay Conforme Close dialog Cerrar mensaje Cancel Cancelar Specify the conditions to send an email Especificar las condiciones para enviar un email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Condiciones Only send when error(s) occurred during a run Enviar solo cuando ocurra algún error mientras se ejecuta Error(s) occurred Ha ocurrido algún error Only send when profile is scheduled to run Enviar solo cuando el perfil se haya programado para ejecutar Profile is scheduled El perfil está programado Never send an email No enviar nunca un email Never Nunca The command field is empty El campo de comando está vacío helpBrowser luckyBackup - help luckyBackup - ayuda manual/ manual/ Okay Ok logDialog luckyBackup - tasks execution progress luckyBackup - progreso de la ejecución de las tareas <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error error anterior next error siguiente error close cerrar loading logfile... cargando archivo de registro... wait esperar luckyBackupWindow commands output output window label salida de los comandos rsync and pre/post task commands output is displayed here tooltip la salida de rsync y de los comandos anteriores y posteriores se muestra aquí Task list task list label Lista de tareas List of all the available tasks task list tooltip - line1 Lista de tareas disponibles Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Usar las 'casillas de inclusión' para incluir o no seleccionar una operación Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Ejecución del perfil finished full phrase: 'Execution of profile <PROFILENAME> finished' completado simulation mode modo simulación Could not update last execution time of tasks No se puede actualizar el último momento de ejecución de las tareas Last execution time of tasks updated Último momento de ejecución de las tareas actualizado &Abort &Abortar &Minimize to tray tray menu action &Minimizar a la bandeja &Restore tray menu action &Restaurar execution of profile: tray message - execution of profile: <PROFILENAME> in progress... ejecución del perfil: in progress... tray message - execution of profile: <PROFILENAME> in progress... in progreso... Removed all older snapshots data Eliminando los datos antiguos de imagen failed to remove all older snapshots data fallo al eliminar los datos antiguos de imagen Unknown error Error desconocido Elapsed time Tiempo transcurrido pre-task execution of command ejecución de un comando previa a la tarea post-task execution of command ejecución de un comando posterior a la tarea Now performing task Llevando a cabo ahora la tarea Directory Directorio calculating calculando deleting files borrando archivos Total files transferred trying to send an email intentando enviar un email The system will shutdown in 1 minute El sistema se apagará en 1 minuto Source Origen Destination Destino All tasks completed Completadas todas las tareas No errors found No se produjeron errores errors found errores encontrados logfile(s) have been created under directory: los archivos de registro se crearon en el directorio: Done Hecho execution of profile: ejecución del perfil: finished completado Execution of tasks were terminated violently by user La ejecución de las tareas se cancelaron de forma abrupta por el usuario &Profile This is a top menu item &Perfil &Settings This is a top menu item &Configuración &Language This is a top menu item &Idioma &Help This is a top menu item &Ayuda &Handbook full phrase: 'luckyBackup Handbook' &Manual &About full phrase: 'about luckyBackup' &Acerca de current profile perfil actual include label of 'include' checkboxes incluir Move the highlighted task up, by one position button tooltip Mover la operación seleccionada una posición hacia arriba Move the highlighted task down, by one position button tooltip Mover la operación seleccionada una posición hacia abajo jump to next error button tooltip saltar al siguiente error jump to previous error button tooltip saltar al error anterior Task task groupbox (add, remove, modify buttons) label Tarea add add task button label añadir add task add task button tooltip añadir tarea remove remove task button label eliminar remove highlighted task remove task button tooltip eliminar tarea seleccionada modify modify task button label modificar modify highlighted task modify task button tooltip modificar tarea seleccionada Begin the execution of all included tasks start button tooltip Comenzar la ejecución de todas las tareas incluidas NOTE simulation checkbox tooltip - line2 AVISO Progressbar update will not be realistic simulation checkbox tooltip - line2 La actualización de la barra de progreso no será realista Information window information window title Ventana de información Exit exit button tooltip. full phrase is: 'exit luckybackup' Salir EXIT EXIT button label SALIR minimize to tray minimizar a la bandeja minimizes the window to the tray area minimiza la ventana al área de la bandeja F1 F1 English Español &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Ha solicitado la creación de una tarea de RESTAURACIÓN Please have a good look at the following task properties dialog 'create restore' message line 2/4 Por favor, comprueba detenidamente el siguiente cuadro de diálogo de propiedades de la tarea and change anything you wish before proceeding 'create restore' message line 3/4 y cambia todo lo que quieras antes de proceder Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 En concreto selecciona las casillas 'Nombre de la tarea', origen', 'destino' y 'omitir archivos de destino más recientes' (avanzado) ERROR ERROR loading default profile ... information window message cargando perfil por defecto... loading profile ... information window message cargando perfil ... loading failed information window message error al cargar Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' No se puede abrir el perfil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y no es válido para version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versión: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' perfil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' cargado con éxito scheduled this refers to a profile planificado YES NO NO Description Descripción saving default profile ... Information window message guardando perfil por defecto ... saving profile ... Information window message guardando perfil ... WARNING ADVERTENCIA default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. perfil por defecto profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' perfil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' perfil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' guardado con éxito creating default profile ... Information window message creando perfil por defecto ... creating profile ... Information window message creando perfil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' perfil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' creado con éxito Would you like to save it before proceeding ? ¿ Desea guardarlo antes de proceder ? Would you like to proceed anyway? ¿ Desea continuar de todas formas? super user super user is the root user superusuario super user mode modo superusuario Welcome to full phrase: 'Welcome to luckyBackup' Bienvenido a English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Español Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' No se pudo crear el nuevo perfil The name you have entered contains only invalid characters El nombre introducido contiene caracteres no válidos Profile full phrase: 'Profile <PROFILENAME> already exists' Perfil already exists full phrase: 'Profile <PROFILENAME> already exists' ya existe Would you like to replace it ? ¿ Desea reemplazarlo? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' No se pudo crear el perfil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' No se pudo renombrar el perfil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' perfil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renombrado con éxito a default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. perfil por defecto renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' renombrado con éxito para All relevant files (logs etc) have also been updated Todos los archivos importantes (logs, etc.) también han sido actualizados Failed to update all relevant files (logs etc) Fallo al actualizar todos los ficheros relacionados (logs, etc.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Está seguro de que desea borrar el perfil por defecto a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' se creará una nueva en blanco, con el mismo nombre Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' ¿ Está seguro de que quiere borrar el perfil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' No se pudo borrar el perfil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Perfil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' borrado con éxito All relevant files (logs etc) have also been deleted Todos los ficheros relacionados (logs, etc.) también han sido borrados Failed to delete all relevant files (logs etc) Fallo al borrar todos los ficheros relacionados (logs, etc.) Profile full phrase: 'Profile <PROFILENAME> set as default' Perfil set as default full phrase: 'Profile <PROFILENAME> set as default' fijado como por defecto All relevant files (logs etc) have also been duplicated Todos los ficheros relacionados (logs, etc.) también han sido duplicados Failed to duplicate all relevant files (logs etc) Fallo al duplicar todos los archivos relacionados (logs, etc.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' La descripción del archivo set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' establecer a Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importar perfil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' No se pudo importar el perfil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Perfil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importado con éxito as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' como and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' y añadido a la lista de perfiles Could not locate the file full phrase: 'Could not locate the file <FILENAME>' No se pudo encontrar el archivo You have reached the maximum limit of supported tasks Se ha alcanzado el número máximo de tareas posibles You have to remove a task if you wish to add another !! ¡ Tiene que eliminar una tarea si quiere añadir otra ! Select export directory this is a dialog title for selecting a directory to export a profile to Seleccionar carpeta a exportar Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Fallo al exportar perfil to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' hacia Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Perfil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exportado correctamente a The directory you have selected does not contain valid profile data El directorio seleccionado no contiene datos de perfil válidos Errors occurred during snapshots and logfiles transfer Errores producidos durante la transferencia de imágenes y archivos de registro Errors occurred during snapshots transfer Errores ocurridos durante la transferencia de imágenes Errors occurred during logfiles transfer Errores ocurridos durante la transferencia de archivos de registro Errors occurred during the profile file transfer Errores ocurridos durante la transferencia del fichero del perfil Please select a task to modify first Por favor, seleccione primero una tarea que modificar Please select a task to remove first Por favor, seleccione primero una tarea que eliminar Are you sure you want to remove the following task ?? ¿ Está seguro de que quiere eliminar las siguientes tareas ? Would you like to also remove: Quieres eliminar también: Please select a task to manage first Por favor, seleccione primero una tarea para gestionar nothing to do nada que hacer current crontab <font color=green>updated successfully crontrab actual <font color=green>actualizado exitosamente Email preferences have been <font color=green>updated successfully Las preferencias del email han sido <font color=green>correctamente actualizadas status estado NOT INCLUDED NO INCLUIDO Checks are disabled. This task will be <b>skipped</b> Las comprobaciones están deshabilitadas. Se <b>omitirá</b> esta tarea Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista de tareas del perfil and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' y lista desplegable de 'perfil' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' actualizada luckyBackup luckyBackup Ctrl+S Ctrl+G Information window Ventana de información CheckBox Casilla de verificación <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Perfil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Abortando: Por favor, espere a que terminen todos los procesos Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Eliminando antiguas imágenes y ficheros de registro de tarea Removing Eliminando failed to remove fallo al eliminar Failed to start this refers to a process Fallo al empezar Crashed this refers to a process Roto Timed out this refers to a process Fuera de tiempo Write error this refers to a process Error de escritura Read error this refers to a process Error de lectura Unknown error this refers to a process Error desconocido calculating info message displayed during ...calculations calculando transferring files info message displayed during ...file transfers transfiriendo archivos deleting files info message displayed during ...file deletions borrando archivos transferring files transfiriendo archivos ABORTED ABORTADO &Refresh This is a top 'Profile' menu action &Actualizar De&fault This is a top 'Profile' menu action Defecto Set as Default This is a top 'Profile' menu action tooltip Configuración por defecto &View/Edit Description This is a top 'Profile' menu action &Ver/Editar Descripción View/Edit the profile description This is a top 'Profile' menu action tooltip Ver/Editar la descripción del perfil R&ename This is a top 'Profile' menu action R&enombrar &Delete This is a top 'Profile' menu action &Borrar &New This is a top 'Profile' menu action &Nuevo &Save This is a top 'Profile' menu action &Guardar E&xport This is a top 'Profile' menu action E&xportar &Import This is a top 'Profile' menu action &Importar S&chedule This is a top 'Profile' menu action P&rogramar E&mail This is a top 'Profile' menu action Correo electrónico Email report after profile execution This is a top 'Profile' menu action tooltip Informe de email tras la ejecución del perfil &Quit This is a top 'Profile' menu action &Salir D&uplicate This is a top 'Profile' menu action D&uplicar &Task This is a top menu action &Tarea &Add This is a top 'Task' menu action &Añadir &Remove This is a top 'Task' menu action &Borrar &Modify This is a top 'Task' menu action &Modificar Create D&uplicate task This is a top 'Task' menu action Crear Duplicar tareas Create R&estore task This is a top 'Task' menu action Crear Restaurar tareas Manage &Backup This is a top 'Task' menu action Gestión &Backup display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip visualiza - restaura - borra backups existentes o tareas destacadas Actions This is a top menu action Acciones Current Profile This is a top menu action Perfil actual Lock This is a top menu action. Refers to toolbars Bloquea Show text under icons This is a top menu action Mostrar texto bajo los iconos &Toolbars This is a top menu item &Herramientas Set paths This is a top menu action Establecer direcciones Set paths for rsync and ssh commands This is a top menu action tooltip Establecer direcciones para comandos rsync y ssh quiet mode modo silencioso Only show errors and important messages during window update Muestra sólo errores y mensajes importantes durante la actualización de la ventana. Run start button label Ejecutar Abort Abort button label Abortar Stop the execution of running tasks NOW Abort button tooltip Detener AHORA las tareas que se están ejecutando Execution of tasks finished Done button tooltip Finalizada la ejecución de tareas Dry simulation checkbox label. Translate this as 'simulation' Vacío This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Esto realizará una <b>simulación</b> que no producirá ningún cambio (y emitirá un resultado muy parecido a un caso real) shutdown shutdown button label cierre Press down to shutdown the system when done shutdown button tooltip Pulsar debajo para desconectar el sistema cuando finalice Hide information window show/hide information window button tooltip Ocultar la ventana de información Show information window show/hide information window button tooltip Mostrar la ventana de información profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end perfil The task list is empty La lista de tareas está vacía Use the "add" button on the right to get started Please keep the add word inside quotes Utilizar el botón "añadir" a la derecha para empezar could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' no pudo guardarse default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. perfil por defecto could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' no pudo crearse Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Perfil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' es modificado Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Perfil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' no se pudo guardar profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Falló al duplicar el perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Falló al duplicar el perfil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' como Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Perfil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicado satisfactoriamente como Please select a task to duplicate first Por favor, elija una tarea a duplicar primero Please select a task first Por favor, elija una tarea primero Hide information window hide/show information window button tooltip Ocultar ventana de información Show information window hide/show information window button tooltip Mostrar ventana de información You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Administrar tarea display information regarding highlighted task This is a top 'Task' menu action tooltip visualizar información considerando la tarea señalada &Task &Tarea Successfully created destination directory Creada correctamente la carpeta de destino Failed to create destination directory Fallo al crear la carpeta de destino manageDialog profile perfil task tarea Delete Borrar Restore Restaurar view log ver el registro destination: destino: source: origen: hide source ocultar origen Close this window Cerrar esta ventana Close Cerrar Please select a snapshot from the list Information message Por favor, elija una imagen de la lista This directory does not exist Este directorio no existe This directory does not exist Information message Este directorio no existe I do not have sufficient permissions to read this directory Information message No tengo permisos suficientes para leer este directorio sync dir A full phrase: sync dir a: <DIRECTORY_A> sincronizar dir A sync dir B full phrase: sync dir a: <DIRECTORY_b> sincronizar dir B View the logfile of the selected sync task 'view log' pushbutton tooltip Mostrar el logfile de la tarea a sincronizar seleccionada Please wait until the thread is terminated Por favor, espere hasta que el enlace haya terminado STOP ALTO Stop calculations NOW Detener los cálculos AHORA Calculations terminated by user Cálculos detenidos por el usuario not available refers to a date-time no disponible luckyBackup - manage backup luckyBackup - administrar la copia de seguridad Delete the selected snapshot and its logfile Eliminada la imagen seleccionada y su archivo de registro Restore the selected snapshot Restaurar la imagen seleccionada View the logfile of the selected snapshot Mostrar el archivo de registro de la imagen seleccionada Calculate the differences between the source and the selected snapshot Calcular las diferencias entre el origen y la imagen seleccionada Calculate differences Calcular diferencias manageWizard not available refers to a date-time no disponible Delete backup this is the title of a wizard Borrar copia de seguridad Date & time simple label of the wizard gui Fecha & hora Path ...is a directory path Acceso WARNING ATENCION You are about to delete backup data information message - line1 Va a eliminar datos de la copia de seguridad If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Si la información anterior es correcta, pulse <b>comenzar</b> para empezar Restore backup this is the title of a wizard Restaurar la copia de seguridad Backup path ...is the backup directory path Lugar de la copia de seguridad close cerrar Deleting snapshot logfile info message displayed during ...logfile deletion Borrando el fichero de registro de la imagen Updating list of snapshots info message displayed during ...snaps list update Actualizando la lista de imágenes Aborted Abortado Finished Terminado simulation simulación no errors sin errores errors found encontrados errores Restoring data: main trunk info message displayed during ...data restoration Restaurando datos: rama principal Restoring data: snapshot files info message displayed during ...data restoration Restaurando datos: fichero de imagen Deleting data info message displayed during ...data deletion Borrando datos luckyBackup - manage backup luckyBackup - administrador de copias de seguridad Jump to previous error Saltar al error anterior previous error error anterior Jump to next error Saltar al error siguiente next error error siguiente This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Esto efectuará una <b>simulación</b> que no efectuará ningún cambio (y provocará prácticamente el mismo resultado que una ejecución real). start comenzar ABORT ABORTAR cancel cancelar The restore directory will become identical to the backup snapshot El directorio restaurado llegará a ser el mismo que la imagen de la copia de seguridad Existing backup files will replace the corresponding files at the restore directory information message - line1. Los ficheros de la copia de seguridad existente reemplazarán a los correspondientes del directorio de restauración If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Si la información superior es correcta, pulsar <b>comenzar</b> para empezar success info message displayed after ...logfile deletion satisfactorio failed info message displayed after ...logfile deletion fallo Deleting file that lists snapshot changes info message displayed during ...file deletion Borrando fichero que ha cambiado en la imagen de las listas success info message displayed after ...file deletion satisfactorio failed info message displayed after ...file deletion fallo success info message displayed after ...snapshots list update satisfactorio Select new restore directory directory selection dialog title Elegir un nuevo directorio de restauración Restore path ...is the restore directory path Lugar de restauración No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion No existen datos específicos de imagen. Omitiendo... Check this, to clone the backup snapshot to the restore directory. Comprobar, clonar la imagen de la copia de seguridad al restaurar el directorio. Delete existing data that do not exist at the backup Borrar los datos existentes que no estén en la copia de seguridad Browse locally for a new restore path Navegar localmente para un nuevo lugar de restauración change cambiar <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple simple advanced avanzado Task name Nombre de la tarea Destination Destino Source Fuente Task properties Propiedades de la tarea Enter a name for this task (eg "Backup my home directory") Introducir el nombre de esta tarea (por ejemplo, "Copia de seguridad de mi directorio home") Name : Nombre : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definir el tipo de esta tarea: 1. Hacer una copia de seguridad de los contenidos del Origen en el Destino 2. Hacer una copia de seguridad del directorio Origen por nombre en el Destino 3. Sincronizar Origen y Destino, manteniendo los archivos más recientes de los dos Type : Tipo : Synchronize Source and Destination Sincronizar Origen y Destino Enter the full path of the source directory (eg /home/luckyb/) Introducir la ruta completa al directorio de origen (ej. /home/luckyb/) Source : Origen : browse localy navegar localmente Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Introducir la ruta completa al directorio de destino (ej. /media/backups/SiduxHome/) Destination : Destino : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repetir cualquir comando que falle, x veces Repeat on fail: Repetir al fallar: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Comprobar el clonar el origen en el destino Dejar sin verificar al crear un directorio extra en el destino Do NOT create extra directory NO crear un directorio extra Advanced Avanzado Shows the rsync command as it will be executed Mostrar los comandos de rsync a medida que se ejecuten validate validar Okay Ok Cancel Cancelar Exclude Excluir Add any directory, file or pattern to be excluded from this task Añadir un directorio, archivo o expresión que excluir de esta tarea Templates Plantillas Exclude all temp folders (**/*tmp*/) Excluir todas las carpetas temporales (**/*tmp*/) Temporary folders Directorios temporales Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Excluir carpetas con los puntos de montaje /mnt y /media (/mnt/*/**, /media/*/**) System mount folders Puntos de montaje del sistema Exclude all backup files & folders (**~) Excluir todos los archivos y carpetas de copias de seguridad (**~) Backup files Copia de seguridad de los archivos System folders Directorios de sistema Exclude all cache folders (**/*cache*/ & **/*Cache*/) Excluir todas las carpetas de cache (**/*cache*/ & **/*Cache*/) Cache folders Directorios de cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Excluir las carpetas de papelera de todos los usuarios (**/*Trash*/, **/*trash*/) Trash Papelera Exclude all "lost+found" folders (**/lost+found*/) Excluir todas las carpetas "lost+found" (**/lost+found*/) lost+found lost+found User Defined Definida por el usuario Add exclusion as entered in the next field Añadir exclusión tal y como se figura en el siguiente campo add añadir Exclude list Excluir lista Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Introduce aquí el archivo, carpeta o expresión y pulsa el botón "añadir" para añadirlo a la lista de inclusiones * - corresponde con cualquier componente no vacio (se detiene en las barras) ** - corresponde con cualquier componente, incluyendo una barra ? - corresponde con cualquier carácter excepto una barra parte_de_la_ruta nombre_directorio /*** - corresponde con el directorio y con todo lo contenido en él inicio / - se expande la expresión a un punto en particular de la jerarquía de la transferencia (normalmente esto es la "fuente") parte_de_la_ruta nombre_directorio / - sólo corresponde con el directorio, ni archivos regulares, enlaces simbólicos o dispositivos Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Descripción Task description Descripción de tarea Type a description of the task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor iniciar el editor de patrones Remove highlighted exclusion from list Eliminar selección de la lista remove eliminar Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Incluir sólo Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Introduce aquí el archivo, carpeta o expresión y pulsa el botón "añadir" para añadirlo a la lista de inclusiones * - corresponde con cualquier componente no vacio (se detiene en las barras) ** - corresponde con cualquier componente, incluyendo una barra ? - corresponde con cualquier carácter excepto una barra parte_de_la_ruta nombre_directorio /*** - corresponde con el directorio y con todo lo contenido en él inicio / - se expande la expresión a un punto en particular de la jerarquía de la transferencia (normalmente esto es la "fuente") parte_de_la_ruta nombre_directorio / - sólo corresponde con el directorio, ni archivos regulares, enlaces simbólicos o dispositivos Add inclusion as entered in the next field Añadir exclusión tal y como se figura en el siguiente campo Include list Lista de inclusiones Remove highlighted inclusion from list Eliminar la inclusión seleccionada de la lista Remote Remoto Use a remote host either for source or destination Usar equipo remoto ya bien para el origen o destino Use remote host Usar equipo remoto Use a remote host for destination data. Usar un host remoto para los datos de destino. destination destino Use a remote host for source data. Usar un host remoto para los datos de origen. source destino User: Usuario: Enter your username for the remote host (leave blank if not applicable). Introduce el nombre de usuario para el host remoto (dejar en blanco si no es aplicable). @Host: @Host: Enter the name of the remote host. Introduce el nombre del host remoto. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Introducir la ruta completa al archivos que contiene la contraseña de autenticación de rsync (no de ssh, dejar en blanco si no es aplicable). rsync password file: archivo de contraseña de rsync: Check this to connect to an rsync Remote module Seleccionar para conectarse a un módulo remoto de rsync Remote module Módulo remoto Use ssh as transport shell Usar ssh como shell de transporte ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Introducir la ruta completa del archivo que contiene la clave privada de autenticación ssh (dejar en blanco si no es aplicable) Hay que tener presente que tienes que llevar a cabo todas las opciones necesarias para una conexión remota ssh sin contraseña usando un par de claves OpenSSH private key file : archivo de clave privada : Enter the port you would like to use for the ssh connection (leave blank for default port) Introducir el puerto que se quiere usar para la conexión ssh (dejar en blanco para el puerto por defecto) port : puerto : Command Options Opciones del comando Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Añadir o eliminar opciones de rsync. Si no sabe lo que significan, ¡mejor no cambiar nada ! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Copiar dispositivo (sólo superusuario) y archivos especiales como aparecen (-D) Preserve device, special files Conservar archivos especiales de dispositivo Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Los archivos con hard links en el orgien tendrán hard links en el destino. AVISO: ¡ Todos los archivos tienen que ser incluidos en el conjunto de la transferencia ! (-H) Preserve hard links Conservar hard links Delete files on the destination Borrar los archivos en el destino Recurse into directories (-r) Descender recursivamente en los directorios (-r) Recurse into directories Descender recursivamente en los directorios Do not backup source files that are newer on the destination (--update) No hacer copia de seguridad de archivos del origen que son más recientes en el destino (--update) Skip newer destination files Ignorar archivos de destino más recientes Preserve the owner (super user only), group & time stamp of files (-tgo) Conservar el propietario (sólo superusuario), grupo y fecha de los archivos (-tgo) Preserve ownership, times Conservar propietarios, fechas Preserve permissions of files (-p) Conservar los permisos de los archivos (-p) Preserve permissions Conservar permisos Copy symlinks as symlinks (-l) Copiar enlaces simbólicos como enlaces simbólicos (-l) Preserve symlinks Conservar enlaces simbólicos Ignore files using a similar algorithm to CVS (-C) Ignorar archivos usando un algoritmo similar a CVS (-C) Ignore files the CVS way Ignorar los archivos al estilo CVS User defined Definida por el usuario Enter here an rsync option to add (eg "--delete-excluded", "-X") Introducir aquí opciones adicionales para rsync (ej. "--delete-excluded", "-X") Extra rsync options list Lista de opciones extra para rsync Remove highlighted option from list Eliminar opción seleccionada de la lista Add rsync option as entered in the next field Añadir opción de rsync tal y como se figura en el siguiente campo options list lista de opciones Also Execute Ejecutar también Execute extra commands, before or after the task. Ejecutar comandos adicionales, antes o después de la tarea. Before Antes Enter here a command to be executed before the task and then press the "add" button to add it to the list below Introducir aquí un comando a ejecutar antes de la tarea y a continuación pulsar el botón "añadir" para añadirlo a la siguiente lista Add command as entered in the field beside Añadir comandos tal y como si muestran en el campo a continuación Command list Lista de comandos Remove highlighted command from list Eliminar el comando seleccionado de la lista Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Después Enter here a command to be executed after the task and then press the "add" button to add it to the list below Introducir aquí un comando a ejecutar después de la tarea y a continuación pulsar el botón "añadir" para añadirlo a la siguiente lista Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message Ya ha añadido el ítem incluido You have already added this option message box message Ya ha añadido esta opción done hecho done editing edición hecha cancel cancelar cancel editing cancelar edición Read exclude patterns from file Leer los patrones excluidos del archivo Read file: Leer archivo: filename nombre de archivo browse navegar ... ... Include Incluir Add any directory, file or pattern to be included by this task Añadir cualquier directorio, archivo o patrón para ser incluido por esta tarea Include mode Incluir modo Mode: Modo: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. No excluir esta lista de patrones. Por favor, ir al manual para ampliar la información para incluir reglas. Normal Include Read include patterns from file Leer patrones a incluir desde archivo browse locally navegar localmente additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Verificar que se usa una partición FAT/NTFS como destino. El propietario de los datos y los permisos NO serán preservados. (-t --modify-window=1) Destination is FAT/NTFS El destino es FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Configurar el número total de imágenes de copias de seguridad a mantener Snapshots to keep: Imágenes a mantener: patternEditor directory : directorio: Select file Seleccionar archivo Please choose a file within the source Por favor, seleccione un archivo en el origen Select directory Seleccionar directorio Please choose a directory within the source Por favor, seleccione un directorio en el origen file : archivo : pattern editor editor de patrones Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Seleccionar esto parar usar el directorio de arriba como ruta absoluta, si no esta seleccionado se buscará la correspondencia del patrón con cualquier archivo/directorio que cumpla con el criterio "nombre" Define here, what would you like the pattern to refer to Definir aquí a qué se quiere que se refiera el patrón The pattern refers to a: El patrón se refiere a : Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Usar esto si el patrón se refiere a un archivo específico por ejemplo "/media/musica/album/cancion.mp3" Specific file Especificar archivo Use this if the pattern refers to a specific directory eg "/media/music/Album/" Usar esto si el patrón hacer referencia a un directorio específico por ejemplo "/media/musica/Album/" Specific directory Especificar directorio Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Usar esto si el patrón hace referencia a un conjunto de archivos que tienen algo en comúnpor ejemplo todos los archivos con la extensión ".txt" Set of files Conjunto de archivos Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Usar esto si el patrón hace referencia a un conjunto de directorios que tienen algo en común por ejemplo, todos los directorios con el nombre "temp" Set of directories Conjunto de directorios name nombre starts with : comienza con : Enter here the starting characters of the name of the files/directories that the pattern refers to Introducir aquí los caracteres iniciales de los archivos/directorios a los que se refiere el patrón ends with : termina con : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Introducir aquí los caracteres finales de los archivos/directorios a los que se refiere el patrón por ejemplo para hacer referencia a todos los archivos ".txt", introducir .txt Enter here the name of the files/directories that the pattern refers to Introducir aquí el nombre de los archivos/directorios a los que se refiere el patrón is exactly : es exactamente : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Introducir aquí los caracteres que aparecen en cualquier posición del nombre de los archivos/directorios a los que se refiere el patrón contains : contiene : browse localy for a file navegar localmente por un archivo browse localy for a directory path navegar localmente para la ruta de un directorio use absolute path usar una ruta absoluta Go deeper in path by : Descender en la ruta en : Go deeper in path by any level Descender en la ruta a cualquier nivel any cualquiera Define here the name criteria for the files/directories to be matched Definir aquí el criterio para los nombres de los archivos/directorios para los que buscar la correspondencia final pattern patrón final The actual pattern is displayed here El patrón actual se muestra aquí Reset the pattern editor fields to the default values Restaurar los campos del editor de patrones con los valores por defecto reset restablecer Okay OK Cancel Cancelar Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Usar esto al referirse a subdirectorios más desarrollados ej. El directorio "/media/music" incluye 3 subdirectorios: 1.Rock 2.Jazz 3.Soundtracks y le gustaría referirse a todo el contenido de los 3, definirlo como: * Conjunto de directorios * Contenido del directorio * lugar:/media/music/ * Profundizar en el lugar por "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Usar esto si el patrón se refiere al contenido de un directorio (o un conjunto de ellos), no al mismo directorio ej. los contenidos del directorio "/media/music/Album/" Directory contents Contenidos del directorio scheduleDialog Starting from scratch Empezar desde cero No schedules are declared !! ¡ No se declaró ningún perfil ! Unable to create schedule file No se pudo crear el archivo de tareas You have reached the maximum limit of supported scheduled profiles Has alcanzado el número máximo de perfiles permitidos You have to remove an item if you wish to add another Tienes que eliminar un elemento si quieres añadir otro Add profile schedule Añadir perfil de planificación Modify profile schedule Modificar perfil de planificación Profile schedule details Detalles del perfil de planificación Invalid profile Perfil no válido Execute profile Ejecutar perfil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at a las every cada day día Sunday Domingo Monday Lunes Tuesday Martes Wednesday Miércoles Thursday Jueves Friday Viernes Saturday Sábado & on the & del st as in 1st day º nd as in 2nd day º rd as in 3rd day º th as in 4th, 5th, 6th or 7th day º th as in 8th day º th as in 9th day º th as in 10th day º th as in 11th day º th as in 12th....19th day º th as in 20th day º st as in 21st day º nd as in 22nd day º rd as in 23rd day º th as in 24th...30th day º st as in 31st day º of any month de cualquier mes of de January full phrase: 'of January' Enero February full phrase: 'of February' Febrero March full phrase: 'of March' Marzo April full phrase: 'of April' Abril May full phrase: 'of May' Mayo June full phrase: 'of June' Junio July full phrase: 'of July' Julio August full phrase: 'of August' Agosto September full phrase: 'of September' Septiembre October full phrase: 'of October' Octubre November full phrase: 'of November' Noviembre December full phrase: 'of December' Diciembre Unable to create cron file No se puede crear el archivo cron luckyBackup - schedule luckyBackup - planificación <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Perfiles de planificación de ejecución</span></p></body></html> Add a new profile schedule Añadir un nuevo perfil de planificación add añadir Modify selected profile schedule Modificar el perfil de planificación seleccionado modify modificar Remove selected profile schedule Eliminar el perfil de planificación seleccionado remove eliminar Profile : Perfil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Omitir las tareas para las cuales se produzca un mensaje de aviso 'CRITICAL' tras la comprobación de los directorios skip critical saltar críticos time (hour:min) : hora (horas:minutos) : set this value to -1 for the schedule to occur every hour : : :delay :retardar Delay luckybackup execution at startup Retardar la ejecución de luckybackup al inicio min means: minutes (time) min day of week : día de la semana : Any Cualquiera month : mes : January Enero February Febrero March Marzo April Abril May Mayo June Junio July Julio August Agosto September Septiembre October Octubre November Noviembre December Diciembre day of month : día del mes : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 32 Check this if your machine does not support a graphical environment (eg server) Compruebe si su equipo no admite un entorno gráfico (por ejemplo un servidor) Console Mode Modo consola okay aceptar Cancel Cancelar schedule the execution of profiles as declared in the list above planificar la ejecución de perfiles como se ha indicado en la lista de arriba cronIT !! ¡ cronIT ! The existent schedule file is not a valid luckyBackup v. v is for version El fichero de programa existente no es válido para luckyBackup v. file BEWARE of the whitespace before file archivo You have made changes without clicking the cronIT button Ha realizado cambios sin pulsar el botón cronIT Are you sure you want to close the schedule dialog ? ¿Está seguro de que desea cerrar el diálogo del programa? Your crontab is updated successfully Su crontab se ha actualizado correctamente no crontab entries exist no existen entradas de crontab crontab content contenido de crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup una vez, al inicio del sistema Run once, at startup Ejecutar una vez, al inicio @ reboot @ reboot close this dialog cerrar este diálogo close cerrar Display the current crontab Visualizar el crontab actual view current crontab mostrar el crontab actual textDialog Enter the name of the new profile : Introducir el nombre del nuevo perfil : Enter the new name of the profile : Introducir el nombre del perfil : Profile description : Descripción del perfil: A profile with the same name already exists Ya existe un perfil con el mismo nombre Please enter a different name Por favor, introduzca un nombre distinto Enter password : Introducir contraseña : Enter passphrase : Introducir clave de acceso : Do not show this again for this task No volver a mostrar esto para esta tarea You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Ha seleccionado "Hacer una copia de seguridad de los contenidos del Origen en el Destino"<br>junto con la opción "Borrar los archivos en el destino" BEWARE, if your intention is NOT to clone source to destination !! ¡ CUIDADO, si tu intención NO es clonar el origen en el destino !! Are you sure you wish to proceed ?? ¿Está seguro de que quiere continuar? luckyBackup luckyBackup Okay Aceptar Cancel Cancelar Copy command to clipboard Copiar el comando al portapapeles eMail information información del correo electrónico No No Yes winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally navegar localmente Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Cancel Cancelar Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_bs.ts0000666000175000017500000067020113165410113021474 0ustar luckybluckyb CalcDiffThread Scanning destination Please wait Scanning snapshot Scanning source Calculating differences Sync dir A & B differences Snapshot and source differences Sync dir B data that also exists at sync dir A and is different Snapshot data that also exists at the source and is different The snapshot data will replace the source data during RESTORE Data amount is huge. Displaying only first entries Sync dir B data that do NOT exist at sync dir A Snapshot data that do NOT exist at the source These will be transferred over at the source during RESTORE Sync dir A data that do NOT exist at sync dir B Source data that do NOT exist at the snapshot These will be deleted during RESTORE only if you enable the option: delete existing source data that do not exist at the backup QObject The task list is empty nothing to start You have included both of the following connected tasks: this is not allowed for obvious reasons Please <b>uncheck appropriate include boxes</b> before proceeding You have not included any tasks The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory this will lead to one task canceling the other Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting naredba prije izvršavanja zadatka starting Full phrase: pre-task execution of command: <COMMAND> starting Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting naredba nakon izvršavanja zadatka starting Full phrase: post-task execution of command: <COMMAND> starting execution of task Full phrase: execution of task: <TASKNAME> starting starting Full phrase: execution of task: <TASKNAME> starting Source Full phrase: source: <SOURCE_NAME Izvor Destination Full phrase: Destination: <DEST_NAME Odredište execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting starting Full phrase: execution of 1st part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-A> to <DIR-B> to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting starting Full phrase: execution of 2nd part of task: <TASKNAME> starting Syncing Full phrase: Syncing <DIR-B> to <DIR-A> to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished naredba prije izvršavanja zadatka finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished naredba nakon izvršavanja zadatka finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished finished Full phrase: execution of 1st part of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished finished Full phrase: execution of task: <TASKNAME> finished execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error The process reported an error Backing-up profile, logfiles and snapshot data Could not open the logfile The logfile does not exist The specified command is probably not installed The logfile could not be created command: exit code: output: Last execution time not available nije dostupno no errors nema grešaka errors found greška pronađena status status OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING UPOZORENJE I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory Direktorij and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description Opis zadatka ReadLogFile Could not locate the logfile Could not open the logfile aboutDialog using Qt4 korišten Qt4 Backup & Sync Application Backup & Sync aplikacija Loukas Avgeriou Loukas Avgeriou It 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. To je distribuisano u nadi da će biti korisno, ali BEZ IKAKVOG UPOZORENJA; čak i bez implicirane garancije o TERŽIŠNOM PRAVU ILI PRIPADNOSTI ZA ODREĐENU NAMJENU. See the 'License Agreement' tab for more details. Pogledajte "License Agreement" karticu za više detalja. Athens, Greece Atina, Grčka Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Arch linux package/pkgbuild službeni održavatelj (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor rpm packager, vrijedni ispitivač i savjetnik za udaljene konekcije Patrick Matthaei Patrick Matthaei Debian package maintainer Debian upravitelj paketa Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Grčki GUI prevodilac i vrijedni ispitivač The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE održavatelj paketa (KDE4 Community repo) i vrijedni savjetnik za pakete Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis održavatelj paketa (Community repo) & Španski gui prevodilac Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Ubuntu održavatelj paketa (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port za Mac OS X Elbert Pol port to OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild održavatelj Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva upravitelj paketa Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Češki gui prevodilac Stergios Prosiniklis Stergios Prosiniklis Greek manual translator grčki prevodilac upustva German gui translator Njemački gui prevodilac Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portugalski gui prevodilac Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Francuski gui prevodilac i dragocjen savjetnik za pakete (i to nije sve) Raffaele Raffaele Italian gui translator Prevodilac italianskog gui-a using Qt António Correia Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Ruski gui prevodilac i vrijedni ispitivač Kenny Verstraete Kenny Verstraete Dutch gui translator Holandski gui prevodilac Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Prevodilac Bosankog gui-a & mandriva upravitelj paketa Majed Sahli Majed Sahli Arabic gui translator Prevodilac arapskog gui-a Adrian Murariu Adrian Murariu Romanian gui translator Prevodilac rumunskog gui-a Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v0.3 gui dizajner fri13 fri13 v.0.3 gui designer v 0.3 gui dizajner Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project da nije njega i njegovog podučavanja, ja nikad nebi započeo ovaj projekat Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Prevodilac španskog gui-a Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Prevodilac švedskog gui-a Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno special guest bug killer ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ... svim korisnicima forums for their support. forumima za njihovu podršku. Especially Posebno that contributed to this project one way or another onima koji su doprinijeli da ovaj projekt na jedan ili drugi način uspije Last but no least posljednje ali ne i zadnje Could not locate the license file Nemogu pronaći datoteku license no money bez novca If you like this app and would like to donate something to me personally, all you have to do is: Ako ti se ovaj program sviđa te želis nešto donirati meni lično, sve što trebaš uraditi je: Give a thumbs up at: Drži fige za: Vote good & become a fan at: Glasaj rado & zadobi fanove: This is my reward :) ovo je moj nagrada :) money Novac I personally never had and never will accept money for this project. Ja lično nikad nisam niti ću ikada prihvatiti novac za ovaj projekt. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Ipak, ja sam odlućio da koristim luckyBackup kako bi pomagao ljudima koji ma je potrebna financiska pomoć. So, please consider it seriously to donate money that will eventually be used for a good cause. zbog toga, zamolio bi vas da svatite to ozbiljno te donirate nešto novca koji će biti korišten u dobre svrhe. donation link Link za donaciju luckyBackup - about luckyBackup - o meni close zatvori &About &O meni <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Support A&uthor A&utor &Thanks to &Hvala &License Agreement &Ugovor o licenci luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup je distribuisan pod uslovima <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! ovo je <b>slobodan program<b>: možete ga redistribuirati i/ili mijenjati pod uvjetima GNU Opšte javne licence kao što je objavila Slobodna Softverska fondacia, verzije 3 licence. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora upravitelj paketa (oficjalni rep.) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Prevodilac slovenskog gui-a E. Hakan Duran E. Hakan Duran Turkish gui translator Prevodilac turskog gui-a Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) slackware upravitelj paketa (slackware rep.) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ... mojoj drugoj polovici, <b> Dimitra </b> koja je sa mnom prošla sav ovaj put u razvoju ovog projekta emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: Enter the body of the message Send an email right now to test the provided arguments Test Accept changes and close dialog Okay Ok Close dialog Cancel Specify the conditions to send an email Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Only send when error(s) occured during a run Error(s) occured Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help luckyBackup - Pomoć manual/ priručnik/ Okay Ok logDialog luckyBackup - tasks execution progress luckyBackup - izvršavanje zadataka je u toku <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error predhodna greška next error sljedeća greška close zatvori loading logfile... wait luckyBackupWindow commands output output window label Izlazne naredbe rsync and pre/post task commands output is displayed here tooltip rsync i pre/post task povratne naredbe su prikazani ovdje Task list task list label Lista zadataka List of all the available tasks task list tooltip - line1 Lista svih dostupnih zadataka Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Koristite 'okvir za izbor' kako bi izabrali željeni zadatak Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Izvršenje profila finished full phrase: 'Execution of profile <PROFILENAME> finished' gotovo simulation mode Simulaciski mod Could not update last execution time of tasks nije u mogućnost aktualizirati vrijeme zadnjeg izvršenog zadatka Last execution time of tasks updated Vrijeme zadnjeg izvršenog zadatke je aktualiziran &Abort &Prekini &Minimize to tray tray menu action &smani u sistemsku traku &Restore tray menu action &Povrati execution of profile: tray message - execution of profile: <PROFILENAME> in progress... izvršenje profila: in progress... tray message - execution of profile: <PROFILENAME> in progress... Izvršavam... Removed all older snapshots data failed to remove all older snapshots data Unknown error Elapsed time Proteklo vrijeme pre-task execution of command naredba prije izvršavanja zadatka post-task execution of command naredba nakon izvršavanja zadatka Now performing task Izvršavanje zadatka Directory Direktorij calculating Preračunavanje deleting files Brisanje Datoteka Total files transferred trying to send an email The system will shutdown in 1 minute Source Izvor Destination Odredište All tasks completed Svi zadaci su obavljeni No errors found Nije pronađena greška errors found greška pronađena logfile(s) have been created under directory: logfile je kreiran u direktorj: Done Obavljeno execution of profile: izvršenje profila: finished Završeno Execution of tasks were terminated violently by user zvršavanje zadaća je nasilno prekinut od strane korisnika &Profile This is a top menu item &Profil &Settings This is a top menu item &Postavke &Language This is a top menu item &Jezik &Help This is a top menu item &Pomoć &Handbook full phrase: 'luckyBackup Handbook' &Priručnik &About full phrase: 'about luckyBackup' &O meni current profile Trenutni profil include label of 'include' checkboxes Dodaj Move the highlighted task up, by one position button tooltip Pomjeri označeni zadatak za jednu poziciju prema gore Move the highlighted task down, by one position button tooltip Pomjeri označeni zadatak za jednu poziciju prema dole jump to next error button tooltip pređi na sljedeću grešku jump to previous error button tooltip pređi na prethodnu grešku Task task groupbox (add, remove, modify buttons) label Zadatak add add task button label dodaj add task add task button tooltip dodaj zadatak remove remove task button label izbriši remove highlighted task remove task button tooltip izbriši označeni zadatak modify modify task button label izmjeni modify highlighted task modify task button tooltip izmjeni označeni zadatak Begin the execution of all included tasks start button tooltip Započni izvršenje svih izabranih zadataka NOTE simulation checkbox tooltip - line2 PAŽNJA Progressbar update will not be realistic simulation checkbox tooltip - line2 Progresni prozor nije realan Information window information window title informaciski prozor Exit exit button tooltip. full phrase is: 'exit luckybackup' Izlaz EXIT EXIT button label IZLAZ minimize to tray Minimizuj u sistemsku traku minimizes the window to the tray area smani prozor u sistemsku traku F1 F1 English Bosanski &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Vi zahtjevate da POVRATITE svoje odatke odnosno RESTORE Please have a good look at the following task properties dialog 'create restore' message line 2/4 Molimo da obratite pažnju na slijedeći popis mogućnosti vezanih za zadane zadatke and change anything you wish before proceeding 'create restore' message line 3/4 te eventualno nešto promijenite prije izvršenja zadatka Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Bitna provjera'ime zadatka', 'izvor', 'odredište' & 'preskočiti novije odredišne datoteke' kvadratić (napredni) ERROR GREŠKA loading default profile ... information window message Očitavanje osnovnog profila ... loading profile ... information window message Očitavanje profila ... loading failed information window message Očitavanje neuspješno Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Profil se ne može otvoriti is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y nije validan za version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y verzija : profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' očitavanje uspješno scheduled this refers to a profile planirano YES Da NO Ne Description Opis saving default profile ... Information window message snimanje osnovnog profila ... saving profile ... Information window message snimanje profila ... WARNING UPOZORENJE default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' uspješno snimljen creating default profile ... Information window message Kreiranje osnovnog profila ... creating profile ... Information window message kreiranje profila ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Uspješno kreiran Would you like to save it before proceeding ? da li želite snimiti promjene prije zatvaranja ? Would you like to proceed anyway? Da li ipak želite radnju izvršiti ? super user super user is the root user Super Korisnik super user mode Super korisnički način rada Welcome to full phrase: 'Welcome to luckyBackup' Dobrodošli u English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Bosanski Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Neuspješno kreiranje profila The name you have entered contains only invalid characters Ime koje ste unijeli sadrži nevažeće znakove Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' Svakako postoji Would you like to replace it ? Da li želiti da ih zamjenite novim ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' neuspješna zamjena profila Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' neuspješno preimenovanje profila profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Preimenovanje uspješno za default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Preimenovanje uspješno za All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Da li ste sigurni da želite da obrišete osnovni profil a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' novi prazan će sa istim imenom biti kreiran Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Da li ste sigurni da želite da obrišete profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' neuspješno brisanje profila Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' uspješno brisanje profila All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' vrati standardne Postavke All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Opis profila set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' postaviti kao Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importuj Profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' neuspješno importovanje profila Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' uspješno importovanje as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' kao and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' i dodaj na popisu liste profila Could not locate the file full phrase: 'Could not locate the file <FILENAME>' File se ne može locirati You have reached the maximum limit of supported tasks Dosegli ste maksimalno ograničenje podržanih zadataka You have to remove a task if you wish to add another !! Morate izbrisati zadatak kako bi dodali drugi !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Molimo da prvo odaberete zadatak za izmjenu Please select a task to remove first Molimo prvo odaberite zadatak za brisanje Are you sure you want to remove the following task ?? Jeste li sigurni da želite da obrišete spomenute zadatke ?? Would you like to also remove: Želite li da se obriše: Please select a task to manage first Molim da odaberete zadatak prije upravljanje istim nothing to do ništa za uraditi current crontab <font color=green>updated successfully current crontab <font color=green>updated uspjšan Email preferences have been <font color=green>updated successfully status status NOT INCLUDED NIJE UKLJUČENO Checks are disabled. This task will be <b>skipped</b> Provjera je onemogućena. Ovaj zadatak će biti <b>preskočen</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista zadataka profila and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Osvježen luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informacjiski prozor CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Prekidam: Molim pričekaj kako bi sve procese bili zaustavljeni Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Brisanje starog snapshota i logfile-a ovog zadatka Removing Brišem failed to remove Brisanje nije uspješno Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations izračunavam transferring files info message displayed during ...file transfers transfer fajlova deleting files info message displayed during ...file deletions Brisanje Datoteka transferring files transfer fajlova ABORTED PREKID &Refresh This is a top 'Profile' menu action &Osvježi De&fault This is a top 'Profile' menu action St&andardan Set as Default This is a top 'Profile' menu action tooltip Vratiti na Standardne postavke &View/Edit Description This is a top 'Profile' menu action &Prikaz/izmjena Opisa View/Edit the profile description This is a top 'Profile' menu action tooltip Prikaz/izmjena profile-ovog Opisa R&ename This is a top 'Profile' menu action P&reimenovati &Delete This is a top 'Profile' menu action &Izbriši &New This is a top 'Profile' menu action &Novi &Save This is a top 'Profile' menu action &sačuvaj E&xport This is a top 'Profile' menu action E&xportuj &Import This is a top 'Profile' menu action &Importuj S&chedule This is a top 'Profile' menu action P&laniraj E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action &Izlaz D&uplicate This is a top 'Profile' menu action D&uplikat &Task This is a top menu action &Zadatak &Add This is a top 'Task' menu action &Dodaj &Remove This is a top 'Task' menu action &Izbriši &Modify This is a top 'Task' menu action &Izmjeni Create D&uplicate task This is a top 'Task' menu action Kreiraj D&upli zadatak Create R&estore task This is a top 'Task' menu action Kreiraj R&estor zadatak Manage &Backup This is a top 'Task' menu action Upravljaj &Backup-om display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip display - restore - delete existing backups of highlighted task Actions This is a top menu action Akcija Current Profile This is a top menu action Trenutni Profil Lock This is a top menu action. Refers to toolbars Zaključaj Show text under icons This is a top menu action Prikaži tekst ispod ikona &Toolbars This is a top menu item &Ljestvica Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Pokreni Abort Abort button label Prekini Stop the execution of running tasks NOW Abort button tooltip Zaustavi izvršavanje pokrenutog zadatka ODMAH Execution of tasks finished Done button tooltip Izvršavanje zadatka je gotov Dry simulation checkbox label. Translate this as 'simulation' Suho This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Ovo će pokrenuti <b>simulaciju </b> ali to neće učiniti nikakve izmjene ( ali će izazvati isti prikaz dešavanja kao u pravom izvršenju) shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Odkloni prozor informacija Show information window show/hide information window button tooltip Prikaži prozor informacija profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Neuspješna duplikacija profila Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Neuspješna duplikacija profila as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' kao Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Duplikacija uspješna u Please select a task to duplicate first Molim da prvo izabereš želeni zadatak za duplikaciju Please select a task first Molim da prvo izabereš zadatak Hide information window hide/show information window button tooltip Odkloni prozor informacija Show information window hide/show information window button tooltip Prikaži prozor informacija You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Upravljaj Zatatkom display information regarding highlighted task This is a top 'Task' menu action tooltip prikazat informacije u vezi istaknutog zadatka &Task &Zadatak Successfully created destination directory Uspješno kreiran descinaciski direktorij Failed to create destination directory Neuspješno kreiran descinaciski direktorij manageDialog profile profil task zadatak Delete izbriši Restore povrati view log prikaz log-a destination: Odredište: source: izvor: hide source sakrji izvor Close this window zatvori ovaj prozor Close zatvori Please select a snapshot from the list Information message Molm izaberi snapshot iz liste This directory does not exist Ovaj direktorij ne postoji This directory does not exist Information message Ovaj direktorij ne postoji I do not have sufficient permissions to read this directory Information message Nemam dovoljna prava kako bi očitao ovaj direktorij sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir A sync dir B full phrase: sync dir a: <DIRECTORY_b> sync dir B View the logfile of the selected sync task 'view log' pushbutton tooltip Prikaži logfile za izabrane sync zadatke Please wait until the thread is terminated STOP Stop calculations NOW Calculations terminated by user not available refers to a date-time nije dostupno luckyBackup - manage backup luckyBackup - upravljanje beckup-om Delete the selected snapshot and its logfile Izbriši izabrane snapshot-ove i njihove logfile-ove Restore the selected snapshot Povrati izabrnog snapshot-a View the logfile of the selected snapshot Prikaži logfile izabranog snapshot-a Calculate the differences between the source and the selected snapshot Calculate differences izračunavanje diferencije manageWizard not available refers to a date-time nije dostupno Delete backup this is the title of a wizard izbriši backup Date & time simple label of the wizard gui Datum & vrijeme Path ...is a directory path odredište WARNING UPOZORENJE You are about to delete backup data information message - line1 time želiš da izbrišeš backup If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Ako su gore naveden informacije tačne, klikni <b>start</b> da bi počeo Restore backup this is the title of a wizard povrat backup-a Backup path ...is the backup directory path backup odredište close zatvori Deleting snapshot logfile info message displayed during ...logfile deletion brisanje snapshot logfil-a Updating list of snapshots info message displayed during ...snaps list update aktueliziram listu sa snapshot-ovima Aborted poništi Finished izvršeno simulation simulacija no errors nema grešaka errors found greška pronađena Restoring data: main trunk info message displayed during ...data restoration Obnavljanje podataka: glavni stabal Restoring data: snapshot files info message displayed during ...data restoration Obnavljanje podataka: snapshot datoteka Deleting data info message displayed during ...data deletion Brisanje podataka luckyBackup - manage backup luckyBackup - upravljenje backapa-om Jump to previous error prikaži prijašnu grešku previous error predhodna greška Jump to next error prikaži sljedeću grešku next error sljedeća greška This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Ovo ce pokrenuti <b> simulaciju </b> ali neće učiniti nikakve promjene (ono će obično izazvati isti output kao kod pravog izvršenja) start start ABORT prekini cancel poništi The restore directory will become identical to the backup snapshot Obnovljeni direktorij će biti identičan snapshot-u backup-a Existing backup files will replace the corresponding files at the restore directory information message - line1. Postojeća sigurnosna kopija Datoteka će zamijeniti odgovarajuće datoteke u obnovljenom direktorij If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Ako su navedene informacije tačne, klikni <b>start</b> kako bi počeo success info message displayed after ...logfile deletion uspješn failed info message displayed after ...logfile deletion Ne uspješno Deleting file that lists snapshot changes info message displayed during ...file deletion Brisanje datoteka koje su u listi snapshot-a izmjenjeni success info message displayed after ...file deletion uspješn failed info message displayed after ...file deletion Ne uspješno success info message displayed after ...snapshots list update uspješno Select new restore directory directory selection dialog title Izaberi novi restore direktorij Restore path ...is the restore directory path restore odredište No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Nema zadanog snapshot-a podataka koji postoji. Preskakanje ... Check this, to clone the backup snapshot to the restore directory. Klikni ovo, da bi kloniro backup snapshot-a u obnovljenom direktorij. Delete existing data that do not exist at the backup Izbrišite postojeće podatke koji ne postoje u backup-a Browse locally for a new restore path Prikaži lokalno za novi restore putanju change izmjeni <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple manje opcija advanced više opcija Task name Ime zadatka Destination Odredište Source Izvor Task properties Svojstva zadatka Enter a name for this task (eg "Backup my home directory") Unesite ime za ovaj zadatak (npr. "Backup mog važnog direktorija") Name : Ime : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Odredite vrstu ovog zadatka: 1. Sigurnosna kopija sadržaja izvora unutar Odredišta 2. Sigurnosna kopija izvornog direktorija po imenu unutar Odredišta 3. Sinhroniziranje izvor & odredište, imajući najnovije datoteke na obje strane Type : Vrsta : Synchronize Source and Destination Sinhronizacija Izvora i Odredište Enter the full path of the source directory (eg /home/luckyb/) Unesite cijelu putanju izvornog direktorija (npr /home/luckyb/) Source : Izvor : browse localy Prikaži Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Unesite cijelu putanju odredišnog direktorija (npr /media/backups/SiduxHome/) Destination : Odredište : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Više opcija Shows the rsync command as it will be executed Prikazuje rsync naredbe kao kada bi se izvršavale validate provjera Okay Ok Cancel Poništi Exclude Oduzmi Add any directory, file or pattern to be excluded from this task Dodaj bilo koji direktoriji, datoteku ili uzorak kako bi bio isključen iz ovog zadatka Templates Templates Exclude all temp folders (**/*tmp*/) Isključi sve temp direktorije (**/*tmp*/) Temporary folders Temporary derektorij Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Isključi sistemske mount direktorije /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Sistemske mount direktorije Exclude all backup files & folders (**~) Isključi sve backap datoteke & direktorij' (**~) Backup files Backup datoteke System folders Sistemski direktorij Exclude all cache folders (**/*cache*/ & **/*Cache*/) Isključi sve cache direktorije (**/*cache*/ & **/*Cache*/) Cache folders cache direktorij Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Isključi sve korisničke trash (korpa) direktorije (**/*Trash*/, **/*trash*/) Trash Korpa Exclude all "lost+found" folders (**/lost+found*/) Iskluči sve "lost+found" direktorije (**/lost+found*/) lost+found lost+found User Defined Korisnik Definiše Add exclusion as entered in the next field Dodaj izuzimanje kao mogućnost u sljedećem polju add dodaj Exclude list Lista oduzetog Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Ovdje unesite datoteke, direktorij ili uzorak, a zatim pritisnite "dodaj" tipku da bi ste je dodali na popis "oduzmi" * - Odgovara bilo kojem ne-praznom komponentu (te se zaustavlja na kosu crtu) ** - Odgovara svemu, uključujući i kose crte ? - Odgovara bilo kojem znaku osim kosoj crti posljednij dir_name / *** - odgovara oba direktorija & svega u njemu Početna / - uzorak se ukorjenio u posebno mjesto u hijerarhiji prijenosa (normalno to je "izvor") posljednji / - odgovara samo direktorij, nije regularna datoteka, symlinks-u ili uređaju Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Opis Task description Opis zadatka Type a description of the task upiši opis zadatka Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Pokreni šablonski editor Remove highlighted exclusion from list Ukloni označenog iz liste remove obriši Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Dodaj Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Ovdje unesite datoteke, direktorij ili uzorak, a zatim pritisnite "dodaj" tipku da bi ste je dodali na popis "dodaj" * - Odgovara bilo kojem ne-praznom komponentu (te se zaustavlja na kosu crtu) ** - Odgovara svemu, uključujući i kose crte ? - Odgovara bilo kojem znaku osim kosoj crti posljednij dir_name / *** - odgovara oba direktorija & svemu u njemu Početna / - uzorak se ukorijenio u posebno mjesto u hijerarhiji prijenosa (normalno to je "izvor") posljednji / - odgovara samo direktorij, nije regularna datoteka, symlinks-u ili uređaju Add inclusion as entered in the next field Izaberite šta sve želite dodati Include list Dodaj Remove highlighted inclusion from list otkloni označenog iz liste Remote Remote Use a remote host either for source or destination Koristi udaljeni server kao izvor ili odredište Use remote host Koristi udaljeni server Use a remote host for destination data. Korist udaljeni server kao odredište. destination Odredište Use a remote host for source data. Korist udaljeni server kao izvor. source izvor User: Korisnik : Enter your username for the remote host (leave blank if not applicable). Unesite vaše korisničko ime za udaljeni server (ostavite prazno ako nije primjenjivo). @Host: @Host: Enter the name of the remote host. Unesite ime udaljenog server. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Unesite cijeli put datoteke koja sadrži rsync (ne ssh) autentifikacija lozinke (ostavite prazno ako nije primjenjivo). rsync password file: loznik rsync datoteke: Check this to connect to an rsync Remote module Kliknite ovdje za povezivanje sa Remote modulom Remote module Remote modul Use ssh as transport shell Koristi ssh kod prijenosa ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Unesite cijeli put do datoteke koja sadrži privatni ssh ključ za provjeru vjerodostojnosti (ostavite prazno ako nije primjenjivo). Imajte na umu, da morate obaviti sve potrebo, kako bi mogli stvoriti ssh vezu koristeći OpenSSH ključ private key file : privatni ključ : Enter the port you would like to use for the ssh connection (leave blank for default port) Unesite port koji želite koristiti za ssh vezu (ostavite prazno ako je standardni port) port : port : Command Options Opciske komande Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Dodaj ili briši rsync opciju. Ako neznate šta se time misli, onda nemojte ih ni dirati !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Kopiraj uređaj (za administratora) & kao posebne datoteke (-D) Preserve device, special files sačuvati uređaja, posebne datoteke (devices) Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Datoteke koje su fizički povezane (hard-link), također će biti na odredištu. UPOZORENJE: Sve datoteke moraju biti uključene u prijenos!! (-H) Preserve hard links Sačuvaj hard link Delete files on the destination Izbriši datoteke iz odredišta Recurse into directories (-r) Recurse u direktorijima (-r) Recurse into directories Recurse u direktorijima Do not backup source files that are newer on the destination (--update) Nemoj backupovati izvorne datoteke koje su u odredištu novijeg datuma (--update) Skip newer destination files Preskoči novije odredišne datoteke Preserve the owner (super user only), group & time stamp of files (-tgo) Sačuvaj prava (samo adminnistrator), grupa & vrijeme stvaranja datoteka (-tgo) Preserve ownership, times Sačuvaj prava, vrijeme Preserve permissions of files (-p) Sačuvaj prava datoteke (-p) Preserve permissions Sačuvaj prava Copy symlinks as symlinks (-l) kopiraj symlinks kao symlinks Preserve symlinks Sačuvaj symlinks Ignore files using a similar algorithm to CVS (-C) Prskoči datoteke koristeći algoritam CVS (-C) Ignore files the CVS way Preskoči datoteke CVS vrste User defined Korisnik definiše Enter here an rsync option to add (eg "--delete-excluded", "-X") Unesi rsync opciju za dodati (npr: "--delete-excluded", "-X") Extra rsync options list Posebna rsync lista opcija Remove highlighted option from list otkloni označenog opcije iz liste Add rsync option as entered in the next field Dodajte rsync opciju u polju options list lista opcija Also Execute Također Izvrši Execute extra commands, before or after the task. Izvrši dodatnih naredbi, prije ili poslije zadatak. Before Prije Enter here a command to be executed before the task and then press the "add" button to add it to the list below Molimo unesite naredbu za izvršiti prije zadatak, a zatim kliknite "Dodaj" da bi ste je dodali na popis u nastavku Add command as entered in the field beside Dodajte naredbu u polju Command list Komandna lista Remove highlighted command from list Ukloni odabrane naredbe iz liste Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Izvrši zadatak čak i ako se pojavi s porukom upozorenja Obično se koristi kada "Izvrši Prije" naredbe možete popraviti upozorenja (npr. mount particije) PAŽNJA: Označi ovo samo ako stvarno znaš šta radiš by-pass WARNING by-pass UPOZORENJE After poslije Enter here a command to be executed after the task and then press the "add" button to add it to the list below Molimo unesite naredbu za izvršiti nakon zadatak, a zatim kliknite "Dodaj" da bi ste je dodali na popis u nastavku Select source directory file selection dialog title Odaberite izvorni direktorij Select destination directory file selection dialog title Odaberite odredišni derektoriji Select rsync password file file selection dialog title Odaberite rsync file za lozinku Select ssh keyfile file selection dialog title Odaberite ssh keyfile Select command to be executed file selection dialog title Odaberite naredbu koju treba izvršiti Select file to read include patterns file selection dialog title Odaberi datoteku za obuhvaćene uzorke Select file to read exclude patterns file selection dialog title Odaberi datoteku za izbaćene uzorke Please define the source before launching the pattern editor message box, message Molim definiraj izvor prije pokretanja mustru editora ERROR message box message GREŠKA Please specify the following before proceeding: message box, message Molimo navedite sljedeće postavke prije nastavka : ERROR message box message - line1 GREŠKA That is not allowed because '/' does not have an actual name message box message - line2 To nije dozvoljeno jer '/' nema stvarni naziv Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Naziv zadatka koji ste zatražili ne postoji Please specify a different name before proceeding message box message - line2 Molimo da navedete drugo ime prije nastavka The source you have declared is identical to the destination message box message - line1 Izvor koji ste izabrali je identičan odredištu Please modify at least one of them message box message - line2 Molimo promijenite barem jedan od njih WARNING message box message - line1 UPOZORENJE You have declared a destination that is part of the source directory structure message box message - line1 Izabrao si destinaciju koja je dio tvog izvornog derektorija <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>nemoj zaboravitit</b> difinisati direktorij 'izbačen' groupbox koji će sadržavati odredište You have checked the 'delete files on the destination' option message box message - line2 Tim si izabrao opciju 'izbriši datoteke iz cilja' without having checked 'Recurse into directories' which is required message box message - line3 bez izabrane opcije 'Recurse into directories', koja je potrebna 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Udaljeni računar' je dodat, ali nije izabrano ime za istog Please specify a remote host name message box message - line3 Navedi naziv udaljenog računara Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Za lokalno upravljanje treba se isključiti opcija 'Udaljeni računar' All declared fields of the task properties window seem to be ok message box message first line čini se kako će sve postavke dobro funkcionisati Errors have been found message box message first line Pronađena greška command to be executed full phrase: command to be executed: <COMMAND> Naredba je provedena You have already added this exclude item message box message Vi ste već dodali ovaj odstranjeni detalj You have already added this include item message box message Vi ste već dodali ovaj uvršteni detalj You have already added this option message box message Vi ste već dodali ovu opciju done done editing cancel poništi cancel editing Read exclude patterns from file Očitaj iskljućujuči uzorke od datoteke Read file: Očitaj datoteku: filename Ime datoteke browse Prikaži ... ... Include Obuhvati Add any directory, file or pattern to be included by this task Dodaj bilo koju datoteku, direjtorij ili uzorak kako bi bio obuhvaćen u ovom zadatku Include mode Željeni modus Mode: Modus: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Ne isključuje ovaj popis obrazaca. Molimo pogledajte priručnik za bolje razumijevanje pravila. Normal Include Normalno obuhvati Read include patterns from file Očitaj ukljućujuči uzorke od datoteke browse locally Prikaži lokaciju additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Izabiranjem ovoga ti koristiš FAT / NTFS particiju kao destinaciju. Podaci vlasništvo i prava neće biti sačuvani. (-t --modify-window=1) Destination is FAT/NTFS Destinacija je FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Postavi totalni broj backup snapshot-ova kako bi zadržao Snapshots to keep: Snapshot da bi zadržao: patternEditor directory : direktorij : Select file Odaberite datoteku Please choose a file within the source Molimo odaberite datoteku u izvor Select directory Izaberi direktorij Please choose a directory within the source Molimo odaberite direktorij u izvor file : Datoteka: pattern editor šablonsli editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Provjeri ovdje kako bi koristili gore navedene direktorij kao glavnu putanju ako nije aktivirano, odgovarat će bilo kojem šablonu datoteka / direktorij koji zadovoljava "ime" critiria Define here, what would you like the pattern to refer to Definišite ovdje, ono što biste htjeli da bude kao šablon The pattern refers to a: Šablon se odnosi na: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Koristite ovaj šablon, ako se odnosi na određenu datoteku, npr. "/ media/music/album/song.mp3" Specific file Odredi datoteku Use this if the pattern refers to a specific directory eg "/media/music/Album/" Koristite ovaj šablon, ako se odnosi na određenu direktorij, npr. "/media/music/Album/" Specific directory Odredi direktorij Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Koristite ovaj šablon, ako se odnosi na skup datoteka koje imaju nešto zajedničko npr. sve datoteke s nastavkom. "Txt" ekstenziju Set of files Skup datoteka Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Koristite ovaj šablon, ako se odnosi na skup direktorija koji imaju nešto zajedničko npr. sve direktorije koji su navedeni kao "temp" Set of directories Set direktorije name ime starts with : startaj sa : Enter here the starting characters of the name of the files/directories that the pattern refers to Ovdje unesite znakove počevši od imena datoteke / direktorija koji se odnosi na šablon ends with : Završi sa : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Ovdje unesite znakove kraj imena datoteke / direktorija koji se odnosi na šablon, npr. da se odnosi na sve. "Txt" datoteke, unesite. TXT Enter here the name of the files/directories that the pattern refers to Ovdje unesite ime datoteke / direktorija koji se odnosi na šablon is exactly : je tačan: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Ovdje unesite znakove koji se nalazi u bilo kojem položaju ime datoteke / direktorija koji se odnosi na šablon contains : sadrži: browse localy for a file prikaži lokaciju datoteke browse localy for a directory path prikaži lokaciju za direktorij use absolute path Koristi glavnu putanju Go deeper in path by : Idi dublje u smjeru: Go deeper in path by any level Idi dublje u smjeru bilo kojeg nivoa any bilo koji Define here the name criteria for the files/directories to be matched Definišite ovdje naziv critiria za datoteke / direktorije treba uskladiti final pattern završni šablon The actual pattern is displayed here Aktuelni šablon je prikazan ovdje Reset the pattern editor fields to the default values Povrati sve postavke šablonskog editora u prvobitno stanje reset resetuj Okay Ok Cancel Poništi Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Koristi ovo kako bi odredio dubljnu pod-direktorija npr. Direktorija "/media/glazba" uključuje 3 pod-direktorije: 1.Rock 2.Jazz 3.Soundtracks i želiš li da se to odnosi na sve sadržaje tih 3, definirajte sljedeće: * Set direktorije * Adresar sadržaja * Path:/media/glazba/ * Idi dublje u smjeru od "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Koristite ovo ako se uzorak odnosi na sadržaj direktorija (ili skup direktorije), a ne na samog direktorija npr. sadržaj direktorija "/media/music/album/" Directory contents Adresar sadržaj scheduleDialog Starting from scratch Startaj No schedules are declared !! Termini nisu zadani !! Unable to create schedule file Nemoguće je kreirati termin datoteku You have reached the maximum limit of supported scheduled profiles Dostigli ste maksimalan broj mogućih profila You have to remove an item if you wish to add another Trebate da otklonite objekat kako bi mogli dodati drugi Add profile schedule Dodaj termin Modify profile schedule Izmijeni termin Profile schedule details Detalji Invalid profile Pogrešan profil Execute profile Pokreni Profil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at u every svaki day dana Sunday Nedjelja Monday Ponedjeljak Tuesday Utorak Wednesday Srijeda Thursday četvrtak Friday Petak Saturday Subota & on the & te st as in 1st day -og nd as in 2nd day -og rd as in 3rd day -eg th as in 4th, 5th, 6th or 7th day -og th as in 8th day -og th as in 9th day -og th as in 10th day -og th as in 11th day -og th as in 12th....19th day -og th as in 20th day -og st as in 21st day -og nd as in 22nd day -og rd as in 23rd day -eg th as in 24th...30th day -og st as in 31st day -og of any month svakog mjeseca of mjeseca January full phrase: 'of January' Januar February full phrase: 'of February' Februar March full phrase: 'of March' Mart April full phrase: 'of April' April May full phrase: 'of May' Maj June full phrase: 'of June' Juni July full phrase: 'of July' Juli August full phrase: 'of August' August September full phrase: 'of September' Septembar October full phrase: 'of October' Oktobar November full phrase: 'of November' Novembar December full phrase: 'of December' Decembar Unable to create cron file Nije moguće kreirati corn datoteku luckyBackup - schedule luckyBackup - termin <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Planifier l'exécution du profil</span></p></body></html> Add a new profile schedule Dodaj novi termin add dodaj Modify selected profile schedule Izmjeni termin modify izmijeni Remove selected profile schedule Otkloni termin remove Otkloni Profile : Profil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Preskoči zadatake koji su definisani kao 'KRITIČNO' nakon provjere direktorij skip critical Preskoči kritično time (hour:min) : vrijeme (sat:minuti) : set this value to -1 for the schedule to occur every hour : : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : dan u sedmici : Any Svaki month : mjesec : January Januar February Februar March Mart April April May Maj June Juni July Juli August August September Septembar October Oktobar November Novembar December Decembar day of month : dan u mjesecu : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Markirati samo ako vaša mašina ne podržava grafičko okruženje Console Mode Konsolni način rada okay Ok Cancel Prekini schedule the execution of profiles as declared in the list above Plan izvršenja profila kao što je navedeno u gornjem popisu cronIT !! Raspored !! The existent schedule file is not a valid luckyBackup v. v is for version Termin koji postoji nije validan luckyBackup-u. file BEWARE of the whitespace before file Datoteka You have made changes without clicking the cronIT button Napravili ste izmjene a niste klikli na cronIT tastu Are you sure you want to close the schedule dialog ? Jesi li siguran da zeliš zatvoriti prozor termina ? Your crontab is updated successfully Tvoj crontab je uspješno aktueliziran no crontab entries exist Ne postoji crontab unosa crontab content crontab kontent once, at system startup full phrase: Execute profile xxxxx, once at system startup jednom kada sistem starta Run once, at startup Pokreni jednom u startu @ reboot @ restartaj close this dialog Zatvori ovaj prozor close zatvori Display the current crontab Prikazi trenutačne crontab view current crontab Prikazi crontab textDialog Enter the name of the new profile : Unesite naziv novog profila : Enter the new name of the profile : Unesite novi naziv profila : Profile description : Opis profila : A profile with the same name already exists Profil sa istim imenom već postoji Please enter a different name Molimo unesite drugi naziv Enter password : Unesite lozinku : Enter passphrase : Unesite phrase lozinku : Do not show this again for this task Ne prikazuj ovo više u ovom zadatku You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Odabrao si 'Backup sadržaj izvornog direktorij' zajedno sa opcijom 'izbrisati datoteke sa odredišta ' BEWARE, if your intention is NOT to clone source to destination !! UPOZORAVAM, ako tvoja namjera NIJE klon izvora prema odredišta !! Are you sure you wish to proceed ?? Jesi li siguran da zeliš da nastaviš?? luckyBackup luckyBackup Okay Ok Cancel Poništi Copy command to clipboard Kopiraj komandu u clipboard-u eMail information No Ne Yes Da winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Prikaži lokaciju Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Ok Cancel Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_fr.ts0000666000175000017500000072675013165410113021512 0ustar luckybluckyb CalcDiffThread Scanning destination Parcours de la destination Please wait Veuillez patienter Scanning snapshot Exclure tous les repertoires .gvfs des utilisateurs (**/.gvfs/) Scanning source Parcours de la source Calculating differences Calcul des différences Sync dir A & B differences Différences entre les répertoires de synchronisation A & B Snapshot and source differences Différences entre l'instantané (snapshot) et la source Sync dir B data that also exists at sync dir A and is different Synchronisation des données du répertoire B qui existent aussi dans le répertoire A mais sont différentes Snapshot data that also exists at the source and is different Les données de l'instantané (snapshot) qui existent aussi dans la source et sont différentes The snapshot data will replace the source data during RESTORE Les données de l'instantané (snapshot) remplaceront les données de la source durant la RESTAURATION Data amount is huge. Displaying only first entries La quantité de données est très importante. Affichage des premières entrées seulement Sync dir B data that do NOT exist at sync dir A Données du répertoire de synchronisation B qui N'existent PAS dans le répertoire de synchronisation A Snapshot data that do NOT exist at the source Données de l'instantané (snapshot) qui N'existent PAS dans la source These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Elles seront transférées vers la source durant la RESTAURATION Sync dir A data that do NOT exist at sync dir B Données du répertoire de synchronisation A qui N'existent PAS dans le répertoire de synchronisation B Source data that do NOT exist at the snapshot Données de la source qui N'existent PAS dans l'instantané (snapshot) These will be deleted during RESTORE only if you enable the option: Elles seront effacées durant la RESTAURATION seulement si vous sélectionnez l'option : delete existing source data that do not exist at the backup effacer les données de la source qui n'existent pas dans la destination QObject The task list is empty La liste de tâches est vide nothing to start rien à démarrer You have included both of the following connected tasks: Vous avez inclus les tâches connectées suivantes en même temps : this is not allowed for obvious reasons ceci n'est pas autorisé pour des raisons évidentes Please <b>uncheck appropriate include boxes</b> before proceeding Veuillez <b>décocher les cases appropriées</b> avant de procéder You have not included any tasks Vous n'avez inclus aucune tâche The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Les tâches inclues suivantes <b>partagent le même répertoire de destination</b> (toutes ensembles ou par groupes) et au moins l'une d'entre elles va sauvegarder le contenu d'un répertoire this will lead to one task canceling the other cela provoquera l'annulation d'une tâche par une autre Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Veuillez décocher les cases appropriées ou changer tous les types de tâches pour autre chose que '<b>Sauvegader le contenu des répertoires</b>' ou utiliser 'Sauvegader le contenu des répertoires' avec l'option '<b>Inclure seulement</b>' activée, avant de procéder pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting pré-tâche avant l'éxécution de la commande starting Full phrase: pre-task execution of command: <COMMAND> starting a démarré Command re-run due to failure This means that a specific command is run for once more because it failed the first time Commande ré-executée à cause d'un échec post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting post-tâche après l'éxécution de la commande starting Full phrase: post-task execution of command: <COMMAND> starting a démarré execution of task Full phrase: execution of task: <TASKNAME> starting L'exécution de la tâche starting Full phrase: execution of task: <TASKNAME> starting a démarré Source Full phrase: source: <SOURCE_NAME Source Destination Full phrase: Destination: <DEST_NAME Destination execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Exécution de la 1ère partie de la tâche starting Full phrase: execution of 1st part of task: <TASKNAME> starting a démarré Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Synchronisation de to Full phrase: Syncing <DIR-A> to <DIR-B> vers execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Exécution de la 2ème partie de la tâche starting Full phrase: execution of 2nd part of task: <TASKNAME> starting a démarré Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Synchronisation de to Full phrase: Syncing <DIR-B> to <DIR-A> vers pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished éxécution de la commande de pré-tâche finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished terminée post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished éxécution de la commande de post-tâche finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished terminée execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Exécution de la 1ère partie de la tâche finished Full phrase: execution of 1st part of task: <TASKNAME> finished terminée execution of task Full phrase: execution of task: <TASKNAME> finished éxécution de la tâche finished Full phrase: execution of task: <TASKNAME> finished terminée execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error éxécution de la tâche finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error terminée en raison d'erreurs d'exécution des tâches de pré / post commande The process reported an error Le processus à signalé une erreur Backing-up profile, logfiles and snapshot data Sauvegarde du profile, des fichiers de log et des données de l'instantanné Could not open the logfile Impossible d'ouvrir le fichier journal The logfile does not exist Le fichier journal n'existe pas The specified command is probably not installed La commande spécifiée n'est certainement pas installée The logfile could not be created Le fichier journal ne peut pas être créé command: commande: exit code: code de sortie: output: sortie: Last execution time Date et heure de la dernière exécution not available non disponible no errors pas d'erreurs errors found Des erreurs ont été trouvées status état OK OK Sync directory Répertoire à synchroniser Source directory Répertoire source Using remote, check is skipped Repertoire distant, vérification ignorée Destination directory Répertoire de destination free as in free disk space libre WARNING AVERTISSEMENT I do not have the permission to read/enter sync directory A Je n'ai pas la permission de lire / d'entrer dans le répertoire à synchroniser A I do not have the permission to read/enter the source directory Je n'ai pas la permission de lire / d'entrer dans le répertoire source I do not have the permission to read/enter sync directory B Je n'ai pas la permission de lire / d'entrer dans le répertoire à synchroniser B I do not have the permission to read/enter the destination directory Je n'ai pas la permission de lire / d'entrer dans le répertoire de destination Directory Répertoire and/or et/ou does not exist n'existe pas is not mounted n'est pas monté is empty or does not exist est vide ou n'existe pas I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Je <font color=red><b>N'IGNORERAI PAS</b></font> cette tâche parce que vous avez activé l'option "outrepasser l'avertissement (WARNING)" This task will be <font color=red><b>skipped</b></font> Cette tâche va être <font color=red><b>ingnorée</b></font> CRITICAL CRITIQUE is empty est vide I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Je <font color=orange><b>ne vais pas ignorer</b></font> cette tâche. La synchronisation sera effectuée de toute manière This task will <font color=orange><b>not be skipped Cette tâche <font color=orange><b>ne sera pas ignorée The Destination Directory will be created if it doesn't exist and filled with new backup data Le répertoire de destination sera créé s'il n'existe pas et rempli avec les nouvelles données de la sauvegarde Task description Description de la tâche ReadLogFile Could not locate the logfile Could not open the logfile Impossible d'ouvrir le fichier journal aboutDialog using Qt4 utilisant Qt4 Backup & Sync Application Application de sauvegarde et de synchronisation Loukas Avgeriou Loukas Avgeriou It 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. Il est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de VALEUR MARCHANDE ou D'ADÉQUATION À UN BESOIN PARTICULIER. See the 'License Agreement' tab for more details. Voir l'onglet 'Accord de licence' pour plus de détails. Athens, Greece Athènes, Grèce Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Mainteneur officiel package/pkgbuild pour Arch Linux (AUR) Valuable advisor Conseiller précieux Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor packageur rpm, précieux testeur et conseiller en connections à distance Patrick Matthaei Patrick Matthaei Debian package maintainer Mainteneur du paquet debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Traducteur en grec et testeur précieux The indifex team L'équipe indefix for developing the wonderful transifex localization platform and providing it for free Pour développer la superbe plateforme de localisation transifex et de la mettre à disposition gratuitement Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Maintance du package OpenSUSE (KDE4 Community repo) et précieux conseils de packaging Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Maintenance du package Mepis (Community repo) et traduction en espagnol Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Mainteneur du package Ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows Portage vers MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Contributeur de code pour la prise à distance et le support vss liés aux portage windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X portage vers Mac OS X Elbert Pol Elbert Pol port to OS/2 Portage vers OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Mainteneur de l'ebuild gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Chiot de compagnie & mainteneur sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mainteneur du paquet mandriva (dépôt officiel contrib) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Mainteneur de paquet Free BSD Dimitris Jemos Dimitris Jemos Slackel package maintainer Mainteneur du paquet Slackel ex Fedora package maintainer Ancien Mainteneur du paquet Fedora Pavel Fric Pavel Fric Czech gui translator Traduction en tchèque Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Traduction en grec du manuel German gui translator Traduction en allemand Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Traduction en portugais Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Traduction en français et conseils précieux sur le packaging (et plus que cela) Raffaele Raffaele Italian gui translator Traducteur de l'interface graphique en italien using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Traducteur en russe et testeur précieux Kenny Verstraete Kenny Verstraete Dutch gui translator Traduction en néerlandais Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Traduction de l'interface en bosniaque & mainteneur du paquet mandriva Majed Sahli Majed Sahli Arabic gui translator Traduction de l'interface graphique en arabe Adrian Murariu Adrian Murariu Romanian gui translator Traduction en roumain de l'interface graphique Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Design de la version 0.3 de l'interface fri13 fri13 v.0.3 gui designer designer de l'interface v. 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Si ce n'était pas lui et ses tutoriels je n'aurais jamais commencé ce projet Thomas Glatt Thomas Glatt French gui translator Traducteur de l'interface en Français Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Traducteur de l'interface en espagnol Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Traduction de l'interface en suédois Catalan gui translator Traducteur de l'interface en Catalan Slovak gui translator Traducteur en Slovaque Rivo Zangov Rivo Zangov Estonian gui translator Traducteur de l'interface en Estonien Nicolay Boychev Nicolay Boychev Bulgarian gui translator traducteur de la gui Bulgare Manuel Meixide Manuel Meixide Galician gui translator Traducteur de la gui en Galicien Roger Foss Roger Foss Norwegian gui translator Traducteur de la gui en Norvégien Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Traducteur de la gui en Chinois (Taiwan) Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Special guest tueur de bugs ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist testeur précieux & spécialiste de remue-méninges Yuri Vidal Yuri Vidal backupwhenidle python script developer Développeur de script backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester précieux testeurs sur OS/2 et windows ...to all users of the ...à tous les utilisateurs des forums for their support. forums pour leur soutien. Especially Tout spécialement that contributed to this project one way or another qui ont contribué à ce projet d'une manière ou d'une autre Last but no least Last but not least Could not locate the license file Impossible de trouver le fichier de licence no money Soutien non financier If you like this app and would like to donate something to me personally, all you have to do is: Si vous appréciez cette application et que vous voulez me donner quelque chose personnellement, tout ce que vous avez à faire est : Give a thumbs up at: Recommander ce projet en cliquant sur le pouce levé sur : Vote good & become a fan at: Voter "good" et devenir un fan sur : This is my reward :) C'est ma récompense :) money Soutien financier I personally never had and never will accept money for this project. Je n'ai jamais accepté et n'accepterai jamais d'argent pour ce projet. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Néanmoins, j'ai décidé d'utiliser luckyBackup pour soutenir des gens qui ont réellement besoin d'aide financière. So, please consider it seriously to donate money that will eventually be used for a good cause. Vous pouvez donc éventuellement donner de l'argent qui sera utilisé pour une bonne cause. donation link lien pour les donations luckyBackup - about luckyBackup - à propos close fermer &About &À propos <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Support A&uthor A&uteur &Thanks to &Remerciements à &License Agreement Accord de &licence luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup est distribué selon les termes de la <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Ce programme est un <b>logiciel libre<b> : vous pouvez le redistribuer et / ou le modifier suivant les termes de la GNU General Public License telle qu'elle est publiée par la Free Software Foundation, version 3 de cette licence. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Mainteneur du paquet fedora (dépôt officiel) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Traducteur de l'interface en slovène E. Hakan Duran E. Hakan Duran Turkish gui translator Traducteur de l'interface en turc Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Mainteneur du paquet slackware (dépôt SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...mon autre moitié, <b>Dimitra</b> qui me soutient malgré tout le temps que je consacre au développement de ce projet emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Mail après éxécution du profil command: commande: Use default This means "use the default value for this field" Utiliser par défaut Arguments Arguments %f from: %f de: Enter the sender of the message Entrer le nom de l'emetteur du message %l logfile %l fichier log %c logfile.tar.gz %c logfile.tar.gz %d date %d date %i time %i heure %p profile name %p nom du profil %e No of errors %e Nbr d'erreurs If unchecked "TLS auto" is used. Only available for sendemail Si non selectionné "TLS auto" sera utilisé. Uniquement disponible pour sendemail Disable TLS Désactiver TLS %t to: %t à: Enter the recipient of the message Entrer le nom du destinataire du message %s subject: %s sujet: Enter the subject of the message Entrer le sujet du message %v smtp server: %v serveur smtp: Enter the smtp server used to send the message Entrer le serveur smtp utilisé pour envoyer le message %b body: %b corps: Enter the body of the message Entrer le contenu du message Send an email right now to test the provided arguments Envoyez un email maintenant pour tester les arguments fournis Test Test Accept changes and close dialog Accepter les changements et fermer la fenêtre Okay OK Close dialog Fermer la fenêtre Cancel Annuler Specify the conditions to send an email Spécifiez les conditions pour envoyer un mail Enter the command to run eg sendemail Entrer la commande à exécuter càd sendemail arguments: arguments : Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Entrer les arguments de la commande d'email càd -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Conditions Only send when error(s) occurred during a run N'envoyer qu'en cas d'erreur durant l'éxécution Error(s) occurred Erreur(s) rencontrée(s) Only send when profile is scheduled to run Envoyer uniquement lorsque le profil est en cours d'éxécution Profile is scheduled Le profil est planifié Never send an email Ne jamais envoyer de mail Never Jamais The command field is empty Le champ de la commande est vide helpBrowser luckyBackup - help luckyBackup - aide manual/ manuel/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - progression de l'exécution des tâches <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error erreur précédente next error erreur suivante close fermer loading logfile... chargement du fichier log... wait attendre luckyBackupWindow commands output output window label Sortie des commandes rsync and pre/post task commands output is displayed here tooltip la sortie de rsync et des commandes avant et après la tâche est affichée ici Task list task list label Liste des tâches List of all the available tasks task list tooltip - line1 Liste de toutes les tâches disponibles Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Cochez les cases 'inclure' pour inclure ou non les tâches sélectionnées Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Exécution du profil finished full phrase: 'Execution of profile <PROFILENAME> finished' terminée simulation mode Mode simulation Could not update last execution time of tasks Impossible de mettre à jour la date et l'heure de la dernière exécution des tâches Last execution time of tasks updated Date et heure de la dernière exécution des tâches mises à jour &Abort &Annuler &Minimize to tray tray menu action &Minimiser dans la barre des tâches &Restore tray menu action &Restaurer execution of profile: tray message - execution of profile: <PROFILENAME> in progress... exécution du profil : in progress... tray message - execution of profile: <PROFILENAME> in progress... en cours... Removed all older snapshots data Toutes les données d'instantanés (snapshots) plus anciens ont été effacées failed to remove all older snapshots data Échec de la suppression de toutes les données d'instantanés (snapshots) plus anciens Unknown error Erreur inconnue Elapsed time Temps écoulé pre-task execution of command exécution de commande avant tâche post-task execution of command exécution de commande après tâche Now performing task Exécution de la tâche Directory Répertoire calculating calcul en cours deleting files effacement de fichiers Total files transferred trying to send an email essayer d'envoyer un mail The system will shutdown in 1 minute Le système va s'éteindre dans 1 minute Source Source Destination Destination All tasks completed Toutes les tâches sont terminées No errors found Aucune erreur n'a été trouvée errors found Des erreurs ont été trouvées logfile(s) have been created under directory: Un ou des fichiers journaux (log) ont été créés dans le répertoire : Done Terminé execution of profile: Exécution du profil : finished terminé Execution of tasks were terminated violently by user L'exécution des tâches a été interrompue brutalement par l'utilisateur &Profile This is a top menu item &Profil &Settings This is a top menu item Paramètre&s &Language This is a top menu item &Langue &Help This is a top menu item Aide &Handbook full phrase: 'luckyBackup Handbook' : le manuel &About full phrase: 'about luckyBackup' À propos de current profile profil actuel include label of 'include' checkboxes inclure Move the highlighted task up, by one position button tooltip Monter la tâche sélectionnée d'un cran Move the highlighted task down, by one position button tooltip Baisser la tâche sélectionnée d'un cran jump to next error button tooltip Sauter à l'erreur suivante jump to previous error button tooltip Sauter à l'erreur précédente Task task groupbox (add, remove, modify buttons) label Tâche add add task button label Ajouter add task add task button tooltip Ajouter une tâche remove remove task button label Retirer remove highlighted task remove task button tooltip Retirer la tâche sélectionnée modify modify task button label Modifier modify highlighted task modify task button tooltip Modifier la tâche sélectionnée Begin the execution of all included tasks start button tooltip Démarrer l'exécution de toutes les tâches inclues NOTE simulation checkbox tooltip - line2 NOTE Progressbar update will not be realistic simulation checkbox tooltip - line2 La mise à jour de la barre de progression ne sera pas réaliste Information window information window title Fenêtre d'information Exit exit button tooltip. full phrase is: 'exit luckybackup' Fermer EXIT EXIT button label FERMER minimize to tray minimiser dans la boîte à miniatures minimizes the window to the tray area minimise la fenêtre dans la boîte à miniatures F1 F1 English Français &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Vous avez demandé la création d'une tâche de RESTAURATION Please have a good look at the following task properties dialog 'create restore' message line 2/4 Veuillez regarder attentivement le dialogue de propriétés de tâche suivant and change anything you wish before proceeding 'create restore' message line 3/4 et changer tout ce que vous souhaitez avant de procéder Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Vérifiez spécialement les cases à cocher 'Nom de tâche', 'source', 'destination' et 'ignorer les fichiers de destination plus récents' (avancé) ERROR ERREUR loading default profile ... information window message Chargement du profil par défaut ... loading profile ... information window message chargement du profil ... loading failed information window message le chargement a échoué Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Impossible d'ouvrir le profil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y n'est pas valide pour version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version : profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' Le profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' a été chargé avec succès scheduled this refers to a profile planifié YES OUI NO NON Description Description saving default profile ... Information window message enregistrement du profil par défaut ... saving profile ... Information window message enregistrement du profil ... WARNING AVERTISSEMENT default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Le profil par défaut profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' Le profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' Le profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' a été enregistré creating default profile ... Information window message création du profil par défaut ... creating profile ... Information window message création du profil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Le profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' a été créé Would you like to save it before proceeding ? Voulez-vous l'enregistrer avant de procéder ? Would you like to proceed anyway? Voulez-vous procéder malgré tout ? super user super user is the root user superutilisateur (root) super user mode mode superutilisateur (root) Welcome to full phrase: 'Welcome to luckyBackup' Bienvenue dans English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Français Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Impossible de créer le nouveau profil The name you have entered contains only invalid characters Le nom que vous avez entré ne contient que des caractères invalides Profile full phrase: 'Profile <PROFILENAME> already exists' Le profil already exists full phrase: 'Profile <PROFILENAME> already exists' existe déjà Would you like to replace it ? Voulez-vous le remplacer ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Impossible de remplacer le profil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Impossible de renommer le profil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Le profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' a été renommé avec succès en default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Le profil par défaut renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' a été renommé avec succès en All relevant files (logs etc) have also been updated Tous les fichiers pertinents (logs, etc...) ont été mis à jour Failed to update all relevant files (logs etc) Echec de mise à jour des fichiers pertinents (logs, etc...) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Êtes-vous certain de vouloir effacer le profil par défaut a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' un nouveau profil vierge, portant le même nom, sera créé Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Êtes-vous certain de vouloir effacer le profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Impossible d'effacer le profil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Le profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' a été effacé All relevant files (logs etc) have also been deleted Tous les fichiers pertinents on été supprimés Failed to delete all relevant files (logs etc) Echec de suppression des fichiers pertinents (logs, etc...) Profile full phrase: 'Profile <PROFILENAME> set as default' Le profil set as default full phrase: 'Profile <PROFILENAME> set as default' a été défini comme profil par défaut All relevant files (logs etc) have also been duplicated Tous les fichiers pertinents ont été dupliqués Failed to duplicate all relevant files (logs etc) Echec de duplication des fichiers pertinents (logs, etc...) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' La description du profil set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' est Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importer un profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Impossible d'importer le profil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Le profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' a été importé avec succès as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' en tant que and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' et ajouté à la liste des profils Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Impossible de trouver le fichier You have reached the maximum limit of supported tasks Vous avez atteint le nombre maximal de tâches possible You have to remove a task if you wish to add another !! Vous devez retirer une tâche si vous voulez en ajouter une autre !! Select export directory this is a dialog title for selecting a directory to export a profile to Selectionner un repertoire de destination pour l'export Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Echec de l'export du profile to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' vers Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profile exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Export réussit dans The directory you have selected does not contain valid profile data repertoire selectionné ne contient pas de donnée de profile valide Errors occurred during snapshots and logfiles transfer Erreurs pendant le transfert des fichiers de logs et des instantannés Errors occurred during snapshots transfer Erreurs au cours du tranfert des instantanés Errors occurred during logfiles transfer Erreurs au cours de transfert des fichiers de log Errors occurred during the profile file transfer Erreur au cours du transfert du fichier de profile Please select a task to modify first Veuillez sélectionner une tâche à modifier en premier Please select a task to remove first Veuillez sélectionner une tâche à retirer en premier Are you sure you want to remove the following task ?? Êtes-vous certain de vouloir retirer la tâche suivante ?? Would you like to also remove: Voulez-vous aussi retirer : Please select a task to manage first Veuillez sélectionner une tâche à gérer en premier nothing to do rien à faire current crontab <font color=green>updated successfully crontab actuelle<font color=green>mise à jour avec succès Email preferences have been <font color=green>updated successfully Les préférences mail ont été <font color=green>mise à jour status état NOT INCLUDED NON INCLUS Checks are disabled. This task will be <b>skipped</b> Les vérifications sont désactivées. Cette tâche sera <b>ignorée</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Liste de tâches du profil and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' et liste déroulante 'profil' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' rafraîchies luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Fenêtre d'information CheckBox Case à cocher <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">⏎ <html><head><meta name="qrichtext" content="1" /><style type="text/css">⏎ p, li { white-space: pre-wrap; }⏎ </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;">⏎ <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">⏎ <html><head><meta name="qrichtext" content="1" /><style type="text/css">⏎ p, li { white-space: pre-wrap; }⏎ </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;">⏎ <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Abandon : veuillez attendre la fin de tous les processus Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Effacement des anciens instantanés (snapshots) et fichiers journaux (logfiles) de la tâche Removing Effacement failed to remove impossible d'effacer Failed to start this refers to a process Impossible de démarrer Crashed this refers to a process Crash Timed out this refers to a process Délais de la demande dépassé Write error this refers to a process Erreur d'écriture Read error this refers to a process Erreur de lecture Unknown error this refers to a process Erreur inconnue calculating info message displayed during ...calculations calcul en cours transferring files info message displayed during ...file transfers transfert des fichiers deleting files info message displayed during ...file deletions effacement de fichiers transferring files transfert des fichiers Total files transfered Total des fichiers transférés ABORTED ABANDON &Refresh This is a top 'Profile' menu action &Rafraîchir De&fault This is a top 'Profile' menu action Dé&faut Set as Default This is a top 'Profile' menu action tooltip Définir en tant que défaut &View/Edit Description This is a top 'Profile' menu action &Voir/Éditer la description View/Edit the profile description This is a top 'Profile' menu action tooltip Voir/Éditer la description du profil R&ename This is a top 'Profile' menu action R&enommer &Delete This is a top 'Profile' menu action &Effacer &New This is a top 'Profile' menu action &Nouveau &Save This is a top 'Profile' menu action Enregi&strer E&xport This is a top 'Profile' menu action E&xporter &Import This is a top 'Profile' menu action &Importer S&chedule This is a top 'Profile' menu action P&lanification E&mail This is a top 'Profile' menu action E&mail Email report after profile execution This is a top 'Profile' menu action tooltip Mail de rapport après éxécution du profil &Quit This is a top 'Profile' menu action &Quitter D&uplicate This is a top 'Profile' menu action D&upliquer &Task This is a top menu action &Tâche &Add This is a top 'Task' menu action &Ajouter &Remove This is a top 'Task' menu action Efface&r &Modify This is a top 'Task' menu action &Modifier Create D&uplicate task This is a top 'Task' menu action Créer tâche d&upliquée Create R&estore task This is a top 'Task' menu action Créer tâche de &restauration Manage &Backup This is a top 'Task' menu action Gestion de la sauvegarde display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip afficher - restaurer - effacer les sauvegardes existantes des tâches sélectionnées Actions This is a top menu action Actions Current Profile This is a top menu action Profil courant Lock This is a top menu action. Refers to toolbars Verrouiller Show text under icons This is a top menu action Montrer le texte sous les icônes &Toolbars This is a top menu item Barres d'ou&tils Set paths This is a top menu action Selectionner les chemins Set paths for rsync and ssh commands This is a top menu action tooltip Selectionner le chemin des commandes rsync et ssh quiet mode mode silencieux Only show errors and important messages during window update Ne montrer que les erreurs et messages importants pendant la mise à jour window Run start button label Lancer Abort Abort button label Abandon Stop the execution of running tasks NOW Abort button tooltip Arrêter l'exécution des tâches en cours MAINTENANT Execution of tasks finished Done button tooltip Exécution des tâches terminée Dry simulation checkbox label. Translate this as 'simulation' Simulation This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Ceci lancera une <b>simulation</b> qui ne fera aucun changement (et produira à peu près la même sortie qu'un lancement réel) shutdown shutdown button label Arrêt Press down to shutdown the system when done shutdown button tooltip Appuyez sur Arrêt pour arrêter le système quand c'est terminé Hide information window show/hide information window button tooltip Cacher la fenêtre d'information Show information window show/hide information window button tooltip Montrer la fenêtre d'information profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Le profil The task list is empty La liste des tâches est vide Use the "add" button on the right to get started Please keep the add word inside quotes Utiliser le bouton "Ajouter" sur la droite pour commencer could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' n'a pas pu être enregistré default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Le profil par défaut could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' n'a pas pu être créé Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Le profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' est modifié Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Le profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' n'a pas pu être enregistré profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Le profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Impossible de dupliquer le profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Impossible de dupliquer le profil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' en tant que Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Le profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' a été dupliqué avec succès en tant que Please select a task to duplicate first Veuillez sélectionner d'abord une tâche à dupliquer Please select a task first Veuillez d'abord sélectionner une tâche Hide information window hide/show information window button tooltip Cacher la fenêtre d'information Show information window hide/show information window button tooltip Montrer la fenêtre d'information You have only included tasks that are going to be skipped Vous n'avez inclus que des tâches qui vont être ignorées Manage Task This is a top 'Task' menu action Gestion de la tâche display information regarding highlighted task This is a top 'Task' menu action tooltip Montrer les informations concernant la tâche sélectionnée &Task &Tâche Successfully created destination directory Le répertoire de destination a été créé Failed to create destination directory Échec de la création du répertoire de destination manageDialog profile profil task tâche Delete Effacer Restore Restaurer view log voir journal (log) destination: destination : source: source : hide source cacher la source Close this window Fermer cette fenêtre Close Fermer Please select a snapshot from the list Information message Veuillez sélectionner un instantané (snapshot) dans la liste This directory does not exist Ce répertoire n'existe pas This directory does not exist Information message Ce répertoire n'existe pas I do not have sufficient permissions to read this directory Information message Je n'aie pas les permissions suffisantes pour lire ce répertoire sync dir A full phrase: sync dir a: <DIRECTORY_A> Répertoire de synchronisation A sync dir B full phrase: sync dir a: <DIRECTORY_b> Répertoire de synchronisation B View the logfile of the selected sync task 'view log' pushbutton tooltip Voir le fichier journal (logfile) de la tâche de synchronisation sélectionnée Please wait until the thread is terminated Veuillez patienter jusqu'à ce que cette tâche soit terminée STOP STOP Stop calculations NOW Arrêter les calculs IMMÉDIATEMENT Calculations terminated by user Les calculs ont été terminés par l'utilisateur not available refers to a date-time non disponible luckyBackup - manage backup luckyBackup - gestion des sauvegardes Delete the selected snapshot and its logfile Effacer l'instantané (snapshot) sélectionné et son fichier-journal (logfile) Restore the selected snapshot Restaurer l'instantané (snapshot) sélectionné View the logfile of the selected snapshot Montrer le fichier journal (logfile) de l'instantané (snapshot) sélectionné Calculate the differences between the source and the selected snapshot Calculer les différences entre la source et l'instantané (snapshot) sélectionné Calculate differences Calculer les différences manageWizard not available refers to a date-time non disponible Delete backup this is the title of a wizard Effacer la sauvegarde Date & time simple label of the wizard gui Date & heure Path ...is a directory path Chemin WARNING AVERTISSEMENT You are about to delete backup data information message - line1 Vous êtes sur le point d'effacer des données de sauvegarde If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Si l'information ci-dessus est exacte, veuillez cliquer sur <b>démarrer</b> pour commencer Restore backup this is the title of a wizard Restaurer la sauvegarde Backup path ...is the backup directory path Chemin de la sauvegarde close fermer Deleting snapshot logfile info message displayed during ...logfile deletion Effacement du fichier journal (logfile) de l'instantané (snapshot) Updating list of snapshots info message displayed during ...snaps list update Mise à jour de la liste des instantanés (snapshots) Aborted Abandon Finished Terminé simulation simulation no errors Pas d'erreurs errors found Des erreurs ont été trouvées Restoring data: main trunk info message displayed during ...data restoration Restauration des données : tronc principal Restoring data: snapshot files info message displayed during ...data restoration Restauration des données : fichiers instantanés Deleting data info message displayed during ...data deletion Effacement des données luckyBackup - manage backup luckyBackup - gestion des sauvegardes Jump to previous error Sauter à l'erreur précédente previous error erreur précédente Jump to next error Sauter à l'erreur suivante next error erreur suivante This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Ceci lancera une <b>simulation</b> qui ne fera aucun changement (mais produira à peu près la même sortie qu'un lancement réel) start Démarrer ABORT ABANDONNER cancel Annuler The restore directory will become identical to the backup snapshot Le répertoire de restauration sera identique à l'instantané de sauvegarde Existing backup files will replace the corresponding files at the restore directory information message - line1. Les fichiers de sauvegarde existants remplaceront les fichiers correspondants dans le répertoire de restauration If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Si l'information ci-dessus est exacte, veuillez cliquer sur <b>démarrer</b> pour commencer success info message displayed after ...logfile deletion Succès failed info message displayed after ...logfile deletion échec Deleting file that lists snapshot changes info message displayed during ...file deletion Effacement du fichier qui liste les changements de l'instantané (snapshot) success info message displayed after ...file deletion Succès failed info message displayed after ...file deletion Échec success info message displayed after ...snapshots list update Succès Select new restore directory directory selection dialog title Sélectionner nouveau répertoire de restauration Restore path ...is the restore directory path Chemin de restauration No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Il n'existe pas de données spécifiques à l'instantané (snapshot). On ignore cette étape... Check this, to clone the backup snapshot to the restore directory. Sélectionnez ceci pour cloner l'instantané (snapshot) de sauvegarde vers le répertoire de restauration. Delete existing data that do not exist at the backup Effacer les données existantes qui n'existent pas dans la sauvegarde Browse locally for a new restore path Parcourir localement pour un nouveau chemin de restauration change changer <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Simple advanced avancé Task name Nom de la tâche Destination Destination Source Source Task properties Propriétés de tâche Enter a name for this task (eg "Backup my home directory") Entrez un nom pour cette tâche (ex : "Sauvegarder mon répertoire personnel") Name : Nom : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Définissez le type de cette tâche : 1. Sauvegarder le contenu de Source dans Destination 2. Sauvegarder le dossier source par son nom dans Destination 3. Synchroniser Source et Destination, en gardant les fichiers les plus récents de chacun d'entre eux Type : Type : Synchronize Source and Destination Synchroniser source et destination Enter the full path of the source directory (eg /home/luckyb/) Entrez le chemin complet vers le répertoire source (ex : /home/luckyb/) Source : Source : browse localy Parcourir localement Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Entrez le chemin complet vers le répertoire de destination (ex : /media/backups/SiduxHome/) Destination : Destination : eg -C4c arcfour,blowfish-cbc eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Cette option de rsync va transférer les identifiants numériques de groupes et d'utilisateurs plutôt que d'utiliser des noms de groupes et d'utilisateurs et de les mapper des deux cotés. (--numeric-ids) Use numeric group and user IDs Utiliser des identifiants numériques de groupe et d'utilisateurs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Ceci demande au récepteur de tenter une action de super-user même si le rsync récepteur ne tourne pas en super-utilisateur. Cette action consite en : préserver les utilisateurs via l'option --owner préserver tous les groupes (pas seulement le groupe de l'utilisateur actuel) via l'option --groups et copier les appreils via l'option --devices (--super) Attempt super-user activities Tentative d'action "super-utilisateur" Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Essayer de sauvegarder les fichiers ouverts sous windows en utilisant vss (ne fonctionne que sous windows 2000 ou supérieur) (--vss) Backup open files Sauvegarder les fichiers ouverts Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Restaurer les permissions sauvegardées localisée dans nt-streams (--restore-nt-streams) Repeat any command that fails, x times Répéter n'importe quelle commande échouée, x fois Repeat on fail: Répéter en cas d'échec Check this to clone source to destination Leave unchecked to create an extra directory inside destination Cochez cela pour cloner la source à la destination Do NOT create extra directory Ne pas créer de répertoire supplémentaire Advanced Avancé Shows the rsync command as it will be executed Montre la commande rsync telle qu'elle va être exécutée validate Valider Okay OK Cancel Annuler Exclude Exclure Add any directory, file or pattern to be excluded from this task Ajouter des répertoires, fichier ou motifs à exclure de cette tâche Templates Modèles Exclude all temp folders (**/*tmp*/) Exclure tous les répertoires temporaires (**/*tmp*/) Temporary folders Répertoire temporaires Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Exclure les répertoires de montage du système /mnt et /media (/mnt/*/**, /media/*/**) System mount folders Répertoires de montage du système Exclude all backup files & folders (**~) Exclure tous les fichiers et dossiers de 'backup' (**~) Backup files Sauvegarder les fichiers System folders Répertoires système Exclude all cache folders (**/*cache*/ & **/*Cache*/) Exclure tous les dossiers cache (**/*cache*/ & **/*Cache*/) Cache folders Dossiers cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Exclure tous les répertoires de la corbeille utilisateur (**/*Trash*/, **/*trash*/) Trash Corbeille Exclude all "lost+found" folders (**/lost+found*/) Exclure tous les dossiers "lost+found" (**/lost+found*/) lost+found lost+found User Defined Défini par l'utilisateur Add exclusion as entered in the next field Ajouter à la liste d'exclusion l'élément entré dans le champ ci-contre add Ajouter Exclude list Liste d'exclusion Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Entrez ici des noms de fichiers, de dossiers ou des motifs puis cliquez sur le bouton "ajouter" pour les ajouter à la liste d'exclusion * - équivaut à tout élément non vide (en s'arrêtant aux slashes) ** - équivaut à n'importe quel caractère, y-compris les slashes ? - équivaut à n'importe quel caractère excepté les slashes nom_de_répertoire/*** - équivaut au répertoire en question et à tout ce qu'il contient un motif débutant par / est ancré à un point précis de la hiérarchie du transfert (normalement la "source") un motif terminé par / - équivaut seulement au répertoire ; les fichiers réguliers, liens symboliques et les périphériques ne sont pas pris en compte Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Définissez le type de cette tâche 1. Sauvegarder le répertoire source à l'intérieur de la destination (voir aussi la case "Ne pas créer de répertoire" 2. Syncroniser la Source et la Destination, en gardant les fichiers les plus récents Backup Source inside Destination Source de Sauvegarde à l'intérieur de la Destination Description Description Task description Description de la tâche Type a description of the task Veuillez entrer une description de la tâche Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclure les répertoires système /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Exclure tous les repertoires .gvsf des utilisateurs (**/.gvfs/) launch the pattern editor Lancer l'éditeur de motif Remove highlighted exclusion from list Retirer l'élément sélectionné de la liste d'exclusion remove Retirer Edit highlighted inclusion Modifier l'inclusion mise en évidence edit Editer Move highlighted inclusion up Monter l'inclusion mise en évidence en haut move up déplacer au dessus Move highlighted inclusion down Descendre l'inclusion mise en évidence move down déplacer en dessous Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. N'inclure QUE cette liste de motif. Rien de plus. Se référer au manuel pour une meilleure compréhension des règles d'inclusion. Ceci désactivera la fonctionnalité d'exclusion. Only Include Inclure seulement Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Entrez ici des noms de fichiers, de dossiers ou des motifs puis cliquez sur le bouton "ajouter" pour les ajouter à la liste d'inclusion * - équivaut à tout élément non vide (en s'arrêtant aux slashes) ** - équivaut à n'importe quel caractère, y-compris les slashes ? - équivaut à n'importe quel caractère excepté les slashes nom_de_répertoire/*** - équivaut au répertoire en question et à tout ce qu'il contient un motif débutant par / est ancré à un point précis de la hiérarchie du transfert (normalement la "source") motif terminé par / - équivaut seulement au répertoire, pas aux fichiers réguliers, aux liens symboliques ni aux périphériques (devices) Add inclusion as entered in the next field Ajouter à la liste d'inclusion l'élément entré dans le champ ci-contre Include list Liste d'inclusion Remove highlighted inclusion from list Retirer l'élément sélectionné de la liste d'inclusion Remote À distance Use a remote host either for source or destination Utiliser un hôte distant comme source ou comme destination Use remote host Utiliser un hôte distant Use a remote host for destination data. Utiliser un hôte distant pour les données de destination. destination destination Use a remote host for source data. Utiliser un hôte distant pour les données source. source source User: Utilisateur : Enter your username for the remote host (leave blank if not applicable). Entrez votre nom d'utilisateur pour l'hôte distant (ne rien entrer si ce n'est pas applicable). @Host: @Host: Enter the name of the remote host. Entrez le nom de l'hôte distant. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Entrez le chemin complet du fichier qui contient le mot de passe d'authentification pour rsync (pas pour ssh) - laissez blanc si non applicable rsync password file: Fichier de mot de passe rsync: Check this to connect to an rsync Remote module Sélectionnez ceci pour vous connecter à un module rsync distant Remote module Module distant Use ssh as transport shell Utiliser ssh comme shell de transport ssh ssh password: mot de passe : Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Entrez le chemin complet vers le fichier qui contient la clé d'authentification privée ssh (laisser vide si non applicable) Notez que vous devez effectuer toutes les actions nécessaires à une connection ssh distante sans mot de passe utilisant une paire de clés OpenSSH private key file : fichier de clé privée : Enter the port you would like to use for the ssh connection (leave blank for default port) Entrez le port que vous voulez utiliser pour la connection ssh (ne rien entrer pour utiliser le port par défaut) port : port : Command Options Options de commande Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Ajoutez ou retirez n'importe quelle option de rsync. Si vous ne savez pas ce qu'elles signifient, laissez-les telles quelles !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Supprimer les fichiers au repertoire de Destination si ils n'éxistent pas au répertoire source . "Récursion dans le repertoire" a été sélectionné (--delete-after & --delete-excluded si "Exclusions" est utilisé) Copy device (super user only) & special files as they are (-D) Copier tels quels les 'device' (superutilisateur seulement) et les fichiers spéciaux (-D) Preserve device, special files Préserver les fichiers spéciaux et périphériques (devices) Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Les fichiers qui sont liés matériellement (hard-linked) dans la source le seront également dans la destination. AVERTISSEMENT : Tous les fichiers doivent être inclus dans le transfert !! (-H) Preserve hard links Préserver les liens matériels Delete files on the destination Effacer les fichiers dans la destination Recurse into directories (-r) Parcourir récursivement les répertoires (-r) Recurse into directories Parcourir récursivement les répertoires Do not backup source files that are newer on the destination (--update) Ne pas sauvegarder les fichiers source qui sont plus récents sur la destination (--update) Skip newer destination files Ignorer les fichiers plus récents sur la destination Preserve the owner (super user only), group & time stamp of files (-tgo) Préserver l'utilisateur (superutilisateur seulement), le groupe et la date des fichiers (-tgo) Preserve ownership, times Préserver le propriétaire et les dates Preserve permissions of files (-p) Préserver les permissions des fichiers (-p) Preserve permissions Préserver les permissions Copy symlinks as symlinks (-l) Copier les liens symboliques comme liens symboliques Preserve symlinks Préserver les liens symboliques Ignore files using a similar algorithm to CVS (-C) Ignore des fichiers avec un algorithme similaire à celui de CVS (-C) Ignore files the CVS way Ignorer des fichiers comme le ferait CVS User defined Défini par l'utilisateur Enter here an rsync option to add (eg "--delete-excluded", "-X") Entrez ici une option à ajouter à rsync (ex: "--delete-excluded", "-X") Extra rsync options list Liste d'options rsync supplémentaires Remove highlighted option from list Retirer l'option sélectionnée de la liste Add rsync option as entered in the next field Ajouter l'option rsync entrée dans le champ ci-contre options list Liste d'options Also Execute Exécuter également Execute extra commands, before or after the task. Exécuter des commandes supplémentaires, avant ou après la tâche. Before Avant Enter here a command to be executed before the task and then press the "add" button to add it to the list below Entrez ici une commande à exécuter avant la tâche puis cliquez sur "ajouter" pour l'ajouter à la liste ci-dessous Add command as entered in the field beside Ajouter la commande entrée dans le champ ci-contre Command list Liste de commandes Remove highlighted command from list Retirer la commande sélectionnée de la liste Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Exécuter la tâche même si elle apparaît avec un message d'avertissement (WARNING) Normalement utilisé lorsque les commandes "Exécuter avant" peuvent annuler un avertissement (par ex. monter des partitions) ATTENTION : sélectionnez ceci uniquement si vous savez ce que vous faites by-pass WARNING outrepasser l'avertissement (WARNING) After Après Enter here a command to be executed after the task and then press the "add" button to add it to the list below Entrez ici une commande à exécuter après la tâche puis cliquez sur "ajouter" pour l'ajouter à la liste ci-dessous Select source directory file selection dialog title Sélectionner le répertoire source Select destination directory file selection dialog title Sélectionner le répertoire de destination Select rsync password file file selection dialog title Sélectionner le fichier mot de passe rsync Select ssh keyfile file selection dialog title Sélectionner le fichier clé ssh Select command to be executed file selection dialog title Sélectionner la commande à exécuter Select file to read include patterns file selection dialog title Sélectionner un fichier de motifs d'inclusion Select file to read exclude patterns file selection dialog title Sélectionner un fichier de motifs d'exclusion Please define the source before launching the pattern editor message box, message Veuillez définir la source avant de lancer l'éditeur de motif ERROR message box message ERREUR Please specify the following before proceeding: message box, message Veuillez spécifier ce qui suit avant de procéder : ERROR message box message - line1 ERREUR That is not allowed because '/' does not have an actual name message box message - line2 Ce n'est pas autorisé car '/' n'a pas vraiment de nom Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Laissez la case cochée à <b>STOP</b> si la commande éxécutée se termine avec des erreurs use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Utilisez la case <b>STOP</b> en cas d'erreur d'éxécution de tâche You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Vous avez déclaré le répertoire '/' (root) comme source et vous n'avez pas cocher la case 'Ne pas créer de repertoire supplémentaire' Please check the relevant box before proceeding message box message - line3 S'il vous plaît cochez la case correspondante avant de procéder You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Vous avez déclaré le reprtoire racine d'une partition entière comme source et vous n'avez pas coché la case 'Ne pas créer de répertoire supplémentaire' That is not allowed because the root partition does not have an actual name message box message - line2 Ceci n'est pas autorisé car la partition racine n'a pas actuellement un nom The name of the task you requested already exists message box message - line1 Le nom de la tâche que vous avez demandée existe déjà Please specify a different name before proceeding message box message - line2 Veuillez spécifier un nom différent avant de poursuivre The source you have declared is identical to the destination message box message - line1 La source que vous avez déclarée est identique à la destination Please modify at least one of them message box message - line2 Veuillez modifier au moins l'un de ces éléments WARNING message box message - line1 AVERTISSEMENT You have declared a destination that is part of the source directory structure message box message - line1 Vous avez déclaré une destination qui fait partie de la structure du répertoire source <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>N'oubliez pas</b> de définir un répertoire qui contienne la destination dans la boîte de dialogue 'exclure' You have checked the 'delete files on the destination' option message box message - line2 Vous avez sélectionné l'option 'effacer les fichiers sur la destination' without having checked 'Recurse into directories' which is required message box message - line3 sans avoir sélectionné l'option 'Parcourir récursivement les répertoires' qui est pourtant requise 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Hôte distant' est sélectionné, mais aucun hôte distant n'est déclaré Please specify a remote host name message box message - line3 Veuillez spécifier un nom d'hôte distant Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Sinon décochez l'option 'Hôte distant' pour opérer localement All declared fields of the task properties window seem to be ok message box message first line Tous les champs déclarés de la fenêtre de propriétés de tâche semblent OK Errors have been found message box message first line Des erreurs ont été trouvées command to be executed full phrase: command to be executed: <COMMAND> Commande à exécuter You have already added this exclude item message box message Vous avez déjà ajouté cet élément à exclure You have already added this include item message box message Vous avez déjà ajouté cet élément à inclure You have already added this option message box message Vous avez déjà ajouté cette option done Fait done editing édition faite cancel annuler cancel editing édition annulée Read exclude patterns from file Lire les motifs d'exclusion depuis le fichier Read file: Lire le fichier : filename nom du fichier browse Parcourir ... ... Include Inclure Add any directory, file or pattern to be included by this task Ajouter n'importe quel répertoire, fichier ou motif à inclure dans cette tâche Include mode Mode inclusion Mode: Mode : Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Ne pas exclure cette liste de motifs. Veuillez vous référer au manuel pour une meilleure compréhension des règles d'inclusion. Normal Include Inclusion normale Read include patterns from file Lire les motifs d'inclusion depuis le fichier browse locally Parcourir localement additional options: options complémentaires : Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Sélectionnez ceci si vous utilisez une partition FAT/NTFS comme destination. La propriété et les permissions des données NE seront PAS préservées. (-t --modify-window=1) Destination is FAT/NTFS La destination est FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Essayer de sauvegarder les fichiers ouverts sous windows en utilisant vss (ne fonctionne que sous windows 2000 ou supérieur) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Restaurer les permissions Set the total number of backup snapshots to keep Indiquez le nombre total d'instantanés (snapshots) de sauvegarde à conserver Snapshots to keep: Instantanés à conserver : patternEditor directory : répertoire : Select file Sélectionner un fichier Please choose a file within the source Veuillez choisir un fichier à l'intérieur de la source Select directory Sélectionner un répertoire Please choose a directory within the source Veuillez choisir un répertoire à l'intérieur de la source file : fichier : pattern editor éditeur de motif Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Cochez ici pour utiliser le répertoire ci-dessus comme un chemin absolu si non coché, le motif se référera à tout fichier / répertoire qui correspondra au critère "nom" Define here, what would you like the pattern to refer to Définissez ici ce à quoi vous voulez que le motif se réfère The pattern refers to a: Le motif se réfère à : Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Utilisez ceci si le motif se réfère à un fichier spécifique ex : "/media/music/album/song.mp3" Specific file Fichier spécifique Use this if the pattern refers to a specific directory eg "/media/music/Album/" Utilisez ceci si le motif se réfère à un répertoire spécifique ex : "/media/music/album/" Specific directory Répertoire spécifique Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Utilisez ceci sir le motif se réfère à un ensemble de fichiers qui ont quelque chose en commun ex : tous les fichiers avec l'extension ".txt" Set of files Ensemble de fichiers Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Utilisez ceci si le motif se réfère à un ensemble de répertoires qui ont quelque chose en commun ex : tous les répertoires nommés "temp" Set of directories Ensemble de répertoires name nom starts with : commence par : Enter here the starting characters of the name of the files/directories that the pattern refers to Entrez ici les premiers caractères du nom des fichiers / répertoires auxquels se réfère le motif ends with : se termine par : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Entrez ici les derniers caractères du nom des fichiers / répertoires auxquels le motif se réfère ex : pour se référer à tous les fichiers ".txt", entrez .txt Enter here the name of the files/directories that the pattern refers to Entrez ici le nom des fichiers / répertoires auxquels le motif se réfère is exactly : est exactement : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Entrez ici les caractères présents à n'importe quelle position dans le nom des fichiers / répertoires auxquels le motif se réfère contains : contient : browse localy for a file Parcourir localement pour chercher un fichier browse localy for a directory path Parcourir localement pour chercher un chemin vers un répertoire use absolute path utiliser un chemin absolu Go deeper in path by : Descendre du nombre suivant de niveaux hiérarchiques : Go deeper in path by any level Descendre dans tous les niveaux inférieurs any tous Define here the name criteria for the files/directories to be matched Définir ici les noms correspondant aux fichiers / répertoires final pattern motif final The actual pattern is displayed here Le motif courant est affiché ici Reset the pattern editor fields to the default values Remettre les champs de l'éditeur de motif aux valeurs par défaut reset valeurs par défaut Okay OK Cancel Annuler Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Utilisez ceci pour désigner des sous-répertoires de niveau hiérarchique inférieur. Exemple : Le répertoire "/media/music" contient 3 sous-répertoires : 1. Rock 2. Jazz 3. Soundtracks Si vous voulez désigner le contenu de ces 3 répertoires, choisissez ce qui suit : * Ensemble de répertoires * Contenus des répertoires * Chemin : /media/music/ * Descendre du nombre suivant de niveaux hiérarchiques : "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Utilisez ceci si le motif se réfère seulement au contenu d'un répertoire (ou d'un ensemble de répertoires), et non au répertoire lui-même ex : le contenu du répertoire "/media/music/Album/" Directory contents Contenu du répertoire scheduleDialog Starting from scratch Démarrage à zéro No schedules are declared !! Aucune planification n'est déclarée !! Unable to create schedule file Impossible de créer un fichier de planification You have reached the maximum limit of supported scheduled profiles Vous avez atteint le nombre maximal de profils de planification You have to remove an item if you wish to add another Vous devez retirer un élément si vous voulez en ajouter un autre Add profile schedule Planifier le profil Modify profile schedule Modifier la planification du profil Profile schedule details Détails de la planification du profil Invalid profile Profil invalide Execute profile Exécuter le profil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> toutes les heures à la minute at à every chaque day jour Sunday Dimanche Monday Lundi Tuesday Mardi Wednesday Mercredi Thursday Jeudi Friday Vendredi Saturday Samedi & on the et le st as in 1st day er nd as in 2nd day ème rd as in 3rd day ème th as in 4th, 5th, 6th or 7th day ème th as in 8th day ème th as in 9th day ème th as in 10th day ème th as in 11th day ème th as in 12th....19th day ème th as in 20th day ème st as in 21st day ème nd as in 22nd day ème rd as in 23rd day ème th as in 24th...30th day ème st as in 31st day ème of any month de tous les mois of de January full phrase: 'of January' janvier February full phrase: 'of February' février March full phrase: 'of March' mars April full phrase: 'of April' avril May full phrase: 'of May' mai June full phrase: 'of June' juin July full phrase: 'of July' juillet August full phrase: 'of August' août September full phrase: 'of September' septembre October full phrase: 'of October' octobre November full phrase: 'of November' novembre December full phrase: 'of December' décembre Unable to create cron file Impossible de créer un fichier cron luckyBackup - schedule luckyBackup - planification <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Planifier l'exécution du profil</span></p></body></html> Add a new profile schedule Ajouter un nouveau profil de planification add ajouter Modify selected profile schedule Modifier le profil de planification sélectionné modify modifier Remove selected profile schedule Retirer le profil de planification sélectionné remove Retirer Profile : Profil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Ignorer les tâches qui apparaissent avec un message d'avertissement 'CRITIQUE' après la vérification des répertoires skip critical ignorer en cas d'avertissement critique time (hour:min) : heure (heure:minute) : set this value to -1 for the schedule to occur every hour positionner la valeur à -1 pour une planification toutes les heures : : :delay :délai Delay luckybackup execution at startup Délai d'éxécution de luckybackup au démarrage min means: minutes (time) min day of week : jour de la semaine : Any Tous month : mois : January Janvier February Février March Mars April Avril May Mai June Juin July Juillet August Août September Septembre October Octobre November Novembre December Décembre day of month : jour du mois : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Cochez ceci si votre machine ne supporte pas d'environnement graphique (ex : serveur) Console Mode Mode console okay OK Cancel Annuler schedule the execution of profiles as declared in the list above planifier l'exécution des profils comme déclaré dans la liste ci-dessus cronIT !! Planifier !! The existent schedule file is not a valid luckyBackup v. v is for version Le fichier de planification existant n'est pas valide pour luckyBackup v. file BEWARE of the whitespace before file fichier You have made changes without clicking the cronIT button Vous avez fait des changements sans cliquer sur le bouton cronIT Are you sure you want to close the schedule dialog ? Êtes-vous certain de vouloir fermer le dialogue de planification ? Your crontab is updated successfully Votre crontab a été mise à jour avec succès no crontab entries exist Aucune entrée de crontab n'existe crontab content Contenu de crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup une fois, au démarrage du système Run once, at startup Lancer une fois, au démarrage @ reboot au redémarrage close this dialog Fermer ce dialogue close fermer Display the current crontab Afficher la crontab courante view current crontab Montrer la crontab courante textDialog Enter the name of the new profile : Entrez le nom du nouveau profil : Enter the new name of the profile : Entrez le nouveau nom du profil : Profile description : Description du profil : A profile with the same name already exists Un profil du même nom existe déjà Please enter a different name Veuillez entrer un nom différent Enter password : Entrez le mot de passe : Enter passphrase : Entrez la phrase de passe : Do not show this again for this task Ne plus afficher ce message pour cette tâche You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Vous avez choisi de "Sauvegarder le contenu du répertoire source"<br>en même temps que l'option "effacer les fichiers dans la destination" BEWARE, if your intention is NOT to clone source to destination !! PRENEZ GARDE, si votre intention N'est PAS de cloner la source dans la destination !! Are you sure you wish to proceed ?? Êtes-vous certain de vouloir poursuivre ?? luckyBackup luckyBackup Okay OK Cancel Annuler Copy command to clipboard Copier la commande dans le presse-papiers eMail information Imformations eMail No Non Yes Oui winDialog luckyBackup luckyBackup declaration of paths déclaration des chemins rsync: rsync: Enter the full path of the rsync command entrer le chemin complet de la commande rsync browse locally Parcourir localement Use default value Utiliser la valeur par défaut ssh: ssh : Enter the full path of the ssh command Entrer le chemin complet de la commande ssh cygpath: cygpath : Enter the full path of the cygpath command Entrer le chemin complet du répertoire cygpath dosdev: dosdev : Enter the full path of the dosdev command Entrer le chemin absolu de la commande dosdev main dir: répertoire principal : Enter the full path of the luckybackup directory Entrer le chemin complet du répertoire de luckybackup vshadow dir: répertoire vshadow : Enter the full path of the vshadow directory Entrer le chemin absolu du répertoire vshadow temp dir: répertoire temporaire : Enter the full path of the temporary directory Entrer le chemin absolu du répertoire temporaire Okay Ok Cancel Annuler Select rsync command file selection dialog title Sélectionner la commande rsync Executable Files (*.exe) Exclure les fichiers (*.exe) Select ssh command file selection dialog title Selectionner la commande ssh Select cygpath command file selection dialog title sélectionner les commandes cygpath Select dosdev command file selection dialog title Slectionner les commandes dosdev luckybackup-0.5.0/translations/luckybackup_cs.qm0000666000175000017500000044324113157502317021477 0ustar luckybluckyb8d9:@A#BLCuDEFGHBIkPQR S5T^UVWXY+`za@l/њ;NO D OV#l15G1@(>IHYKSYYs]"_ggg ohYdj s zƑf fTfYvSE9E^4 5]N~FaaMaaҶaa!h4C@uE@ص)n$H5a#%YQwfT "f"&%k({Y)*`3*0t++z+,B/]^>":>$ĉZG˱SE8ى>:K4otXzE=A#tGrۼ :~\ dЪgO9!b?(e'+&y.+6F7I<$GzI|OW%Q19QR͒[_/m.fC/hhwpNɑpNq>+tcx!b.O-f@R YEy65ֈѐSliAuԳŵ J ,'S _hb]K s#uD&o!)+/r2j8I0BZyC cP1IJPoECYB@=ZH \c+cf:Z%uL|BJO2Rc|TZIRFIg9*"x<+.1~C~N ukH`Pϗ,=÷IYJԥ{*Vr[%&E,SD"O/|GҐ yO9,oG9^ tl Av`-&\1aԾ4)?4)7h*߬,b8Myy:M(T$_rU eh !iJiUtM}^.e  a]TBWcVF#:%yHt#Md +M$Ň9ʵpI(0[ܯ":j)>Fb[~nϗ]u>  ‰[>ey rn4. PsQ &%ADȪL~W;OROjzAeJ iYzi^lw$rt1q}75;:uօKQ?I!IKIȫIIIj,@Qi^AIф $:.1[HeKFip EiQdu&io  DEG8\(a=\xIl@)m6>;n#"n#up^ 7txv]yut~iFL9rȕȕȕXJg:5tŸî">pXRߘ?W(v  Z"@" Z[. P;KKCKOٕU; Vf_Ave`_hDb#yf0g2hnhniݐikՒ@kՒ[E YE N3zUtYvv`xea#Svu\ v:{ _gIg3ڄ?DFFFϕ+i<ΕU <U"u*]rdj%)gG%B`ȕ`/l7aKXT$FU8UYDZ no~E ǧ5~%e(̐jIIL%׃QvߖjĘkC>Y 3Q32! UY;tt"')@,!-#/eǀ1ie9GMF\/IX9J3JεSL3NPO2`Ry {V)g h IPmzGW@x5W0!N>a(ʴ5<ʶ'[,67BdinIi) N+  cj $ q.  ' #rx *{ +)/ 6Pu 8 CcK%_ Mg MgY N# Uy Wұ ]0 aY: d j^u lی lRc mE pHh q R* ][ @ ed {, ʃ ͆ 0 aE -B< Z% '. Ԡ;Wt d ׊$ =.y . 'H Ѿ ߪ Tv  { c2~ Y  J -04r -n~ /l$u 7E 8 ? @  ` f_ gD j l" pN% zj C e - 9 Hy J iYE ~ c^ XBf O 24 bG ,  į  GCpF ñ nS = Xh* h t$2( ԑB @ ݓ ډ T5 i 7 ps " 1 v E Vd d j 8 Ss #1 (N3~ +v - 0b 7'y{ 93Bk :UC"u ;' E Ge'; HZƒ L9$ PA T, TJ Zs _yv _ z f g.w! g.w" g.w9 g.wc i i$r k m}X { {: { | f F Ҟ "_ ,  Z YV YG 3 >ӊ| @e A.q Acse Eh, Fn F.M LM= N0 P}= Sz; X) ^s bUl o* o9/7 r'^ v E h r j5$ c . r \% GA " UNM z>  ~#C R  TM *Bf s ִ Ŵ % v 2q~ a{ Rbb 6 ?BV  ;z   sn @Z T| # &, &' ) *}EƐ + ,D" ,D; 6; P M \.~4M cA i^ m]K {k e 1   { ~ =( i2A ms c l! Xw ) fu zq lz%  I  jE lh Y i5 [N "ڙ ,[ ݗ # 䕜 P c2} " ա X 8 3 8 8$ 4 6M=.DsW=Ca ԵJ'~ ( Q(q*#;~/#Y xE7GܝJ Tba-\Ps].acRye~vSmRp{>Tyi*{Cv}9krZT">YI<_+>{RC~,C$rNuX7֭/ 3M̖ k{d14U"&$eY Cc#s#!3&)No(դ+(դ K-X`4?<EE^G E:I-N\RN>L[=N^i\ct!f/HlnOms"squ@u@~(N"Yj Fk4fC t1)/*Z y{IU6v#ɟ)ʱNu+\u*_p֙SEGߖl=]l #0.YLP^Xŕ3i&,&Po taj se rozdlyCalculating differencesCalcDiffThreadrMno~stv dat je ohromn. Zobrazuj se pouze prvn zznamy2Data amount is huge. Displaying only first entriesCalcDiffThread Po kejte, prosm Please waitCalcDiffThread"Prohledv se clScanning destinationCalcDiffThread(Prohledv se snmekScanning snapshotCalcDiffThread&Prohledv se zdrojScanning sourceCalcDiffThread.Rozdly snmku a zdrojeSnapshot and source differencesCalcDiffThreadxData snmku, kter existuj rovn~ ve zdroji a jsou rozdln=Snapshot data that also exists at the source and is differentCalcDiffThreadNData snmku, kter NEEXISTUJ ve zdroji-Snapshot data that do NOT exist at the sourceCalcDiffThreadNData zdroje, kter NEEXISTUJ ve snmku-Source data that do NOT exist at the snapshotCalcDiffThreadFRozdly seYizovacch adresYo A & BSync dir A & B differencesCalcDiffThreadData seYizovacho adresYe A, kter NEEXISTUJ v seYizovacm adresYi B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadData seYizovacho adresYe B, kter jsou rovn~ v seYizovacm adresYi A a jsou rozdln?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadData seYizovacho adresYe B, kter NEEXISTUJ v seYizovacm adresYi A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadXData snmku nahrad bhem OBNOVY data zdroje=The snapshot data will replace the source data during RESTORECalcDiffThreadTato budou bhem OBNOVY smazna pouze tehdy, kdy~ povolite volbu:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadVTato budou bhem OBNOVY ve zdroji pYenesena:These will be transfered over at the source during RESTORECalcDiffThreadjSmazat stvajc zdrojov data, kter nejsou v zloze;delete existing source data that do not exist at the backupCalcDiffThreadfZlohuje se profil, soubory se zpisy a data snmku.Backing-up profile, logfiles and snapshot dataQObjectKRITICKCRITICALQObjectOptovn spuatn pYkazu z dovodu pYedchozho selhn pYi vykonnCommand re-run due to failureQObject>Soubor se zpisem nebyl otevYenCould not open the logfileQObjectCl DestinationQObjectClov adresYDestination directoryQObjectAdresY DirectoryQObjecttNemm oprvnn pro  ten/vstup do seYizovacho adresYe A;I do not have the permission to read/enter sync directory AQObjecttNemm oprvnn pro  ten/vstup do seYizovacho adresYe B;I do not have the permission to read/enter sync directory BQObjecthNemm oprvnn pro  ten/vstup do clovho adresYeDI do not have the permission to read/enter the destination directoryQObjectlNemm oprvnn pro  ten/vstup do zdrojovho adresYe?I do not have the permission to read/enter the source directoryQObject<font color=orange><b>NepYesko m</b></font> tento kol. SeYzen bude tak jako tak provedenoiI will not skip this task. Synchronizing is going to be performed anywayQObject<font color=orange><b>NEPXESKO M</b></font> tento kol, proto~e jste povolil volbu "Obejt VAROVN"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject. as poslednho vykonnLast execution timeQObjectOKOKQObjectProsm <b>zruate ozna en fajfkou pYsluanho zaYazovacho pol ka</b> pYedtm, ne~ budete pokra ovatAPlease uncheck appropriate include boxes before proceedingQObjectZruate, prosm, ozna en fajfkou pYsluanho zaYazovacho pol ka, nebo zmHte vaechny typy kolo na jin ne~ '<b>Zlohovat obsah adresYe</b>', nebo pou~ijte 'Zlohovat obsah adresYe' spole n s volbou '<b>Pouze zaYadit</b>', pYedtm, ne~ budete pokra ovatPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject ZdrojSourceQObject Zdrojov adresYSource directoryQObjectSeYdit adresYSync directoryQObjectSeYizuje seSyncingQObjectSeYizuje se'Full phrase: Syncing to SyncingQObjectPopis koluTask descriptionQObjectClov adresY bude vytvoYen, pokud neexistuje, a bude naplnn novmi zlo~nmi daty]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject4Nsledujc zaYazen koly <b>sdlej tent~ clov adresY</b> (vaechny dohromady nebo ve skupinch) a alespoH jeden z nich bude zlohovat obsah adresYeThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject@Soubor se zpisem nebyl vytvoYen The logfile could not be createdQObject8Soubor se zpisem neexistujeThe logfile does not existQObject*Proces nahlsil chybuThe process reported an errorQObjectZZadan pYkaz pravdpodobn nen nainstalovn/The specified command is probably not installedQObject.Seznam kolo je przdnThe task list is emptyQObject`Tento kol<font color=orange><b>nebude pYesko en3This task will not be skippedQObjectXTento kol <font color=red><b>bude pYesko en7This task will be skippedQObject|Pou~v se vzdlen hostitelsk po ta , ovYen je pYesko enoUsing remote, check is skippedQObjectVAROVNWARNINGQObjectVZaYadil jste oba nsledujc spojen koly:8You have included both of the following connected tasks:QObject4NezaYadil jste ~dn kolyYou have not included any tasksQObject a/neboand/orQObjectPYkaz:  command: QObjectneexistujedoes not existQObject&Byly nalezeny chyby errors foundQObject4Vykonn prvn  sti koluexecution of 1st part of taskQObject4Vykonn prvn  sti kolu?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject4Vykonn druh  sti koluexecution of 2nd part of taskQObjectVykonn koluexecution of taskQObjectVykonn kolu3Full phrase: execution of task: finishedexecution of taskQObjectVykonn koludFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectKd ukon en:  exit code: QObjectdokon enfinishedQObjectdokon en?Full phrase: execution of 1st part of task: finishedfinishedQObjectdokon en3Full phrase: execution of task: finishedfinishedQObjectdokon enCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectukon eno z dovodu chyby ve vykonn pYkazu pYed kolem/po kolu9finished because of pre/post task command execution errorQObject volnfreeQObjectje przdnis emptyQObject4je przdn nebo neexistujeis empty or does not existQObjectNen pYipojenis not mountedQObject}dn chyby no errorsQObjectNedostupn not availableQObject,nen do  eho se pustitnothing to startQObjectVstup:  output: QObject2Vykonn pYkazu po kolupost-task execution of commandQObject2Vykonn pYkazu po koluCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject8Vykonn pYkazu pYed kolempre-task execution of commandQObject8Vykonn pYkazu pYed kolemBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectse spouatstartingQObjectse spouat?Full phrase: execution of 1st part of task: startingstartingQObjectse spouat?Full phrase: execution of 2nd part of task: startingstartingQObjectse spouat3Full phrase: execution of task: startingstartingQObjectse spouat?Full phrase: post-task execution of command: startingstartingQObjectStavstatusQObjectJtoto nen ze zYejmch dovodo povoleno'this is not allowed for obvious reasonsQObjectbtoto povede k tomu, ~e jeden kol bude ruait jin.this will lead to one task canceling the otherQObjectvo itoQObjectvo i'Full phrase: Syncing to toQObject&O programu&About aboutDialog&Povolen&License Agreement aboutDialog&Podpora&Support aboutDialog&Podkovn &Thanks to aboutDialog...moj druh polovi ce, <b>DimitYe</b>, kter je se mnou po celou dobu, co je tento projekt vyvjenj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog$...vaem u~ivatelom...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialogtPYekladatel grafickho u~ivatelskho rozhran do arabatinyArabic gui translator aboutDialognOficiln sprvce (AUR) bal ku/pkgbuild pro Arch linux5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAthny, XeckoAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogFProgram pro zlohovn & seYizovnBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogPYekladatel grafickho u~ivatelskho rozhran do bosenatiny a sprvce bal ku pro Mandrivu4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialogxPYekladatel grafickho u~ivatelskho rozhran do bulharatinyBulgarian gui translator aboutDialogzPYekladatel grafickho u~ivatelskho rozhran do katalnatinyCatalan gui translator aboutDialogPYekladatel grafickho u~ivatelskho rozhran do  natiny (Tchaj-wan)Chinese (Taiwan) gui translator aboutDialogPYispvatel kdem pro vzdlenou podporu a podporu vss tkajc se pYenesen na WindowsDCode contributor for remote & vss support regarding the windows port aboutDialog8Soubor s licenc nelze najt!Could not locate the license file aboutDialogpPYekladatel grafickho u~ivatelskho rozhran do  eatinyCzech gui translator aboutDialog4Sprvce bal ku pro DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogzPYekladatel grafickho u~ivatelskho rozhran do nizozematinyDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogObzvlat Especially aboutDialogvPYekladatel grafickho u~ivatelskho rozhran do estonatinyEstonian gui translator aboutDialogTSprvce bal ku pro Fedoru (veYejn sklad))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog8Sprvce bal ku pro Free BSDFree BSD package maintainer aboutDialog|PYekladatel grafickho u~ivatelskho rozhran do francouzatinyFrench gui translator aboutDialogPYekladatel grafickho u~ivatelskho rozhran do francouatiny a cenn rdce pro balen (a nejen to)AFrench gui translator and valuable packing advisor (and not only) aboutDialogzPYekladatel grafickho u~ivatelskho rozhran do galicijatinyGalician gui translator aboutDialog8Sprvce sestaven pro GentooGentoo ebuild maintainer aboutDialogpPYekladatel grafickho u~ivatelskho rozhran do nm inyGerman gui translator aboutDialog(Dt palce nahoru na:Give a thumbs up at: aboutDialoglPYekladatel Yeckho grafickho rozhran a cenn testr(Greek gui translator and valuable tester aboutDialogpPYekladatel grafickho u~ivatelskho rozhran do Ye tinyGreek manual translator aboutDialogOsobn jsem za tento projekt nikdy neml njak penze a nikdy je za nj nepYijmu.DI personally never had and never will accept money for this project. aboutDialogKdyby nebylo jeho a jeho nvodo, nikdy bych neza al s tmto projektemJIf it wasn't him and his tutorials I would never have started this project aboutDialogPokud se vm tento program lb a chtl byste mi osobn nco darovat, vae, co muste udlat, je:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogVJe to <b>svobodn program</b>: mo~ete jej aYit a/nebo upravovat za podmnek GNU General Public License tak, jak jsou zveYejnny Free Software Foundation, verze 3 Licence.It 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, version 3 of the License. aboutDialog$Je aYen v nadji, ~e bude u~ite n, ale BEZ JAKKOLI ZRUKY; rovn~ bez ml ky pYedpokldan zruky PRODEJNOSTI nebo VHODNOSTI PRO KONKRTN  EL.It 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. aboutDialogtPYekladatel grafickho u~ivatelskho rozhran do italatinyItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog"V neposledn YadLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogxSprvce bal ku pro Mandrivu (veYejn sklad bal ko Contrib)3Mandriva package maintainer (official contrib repo) aboutDialogManuel MeixideManuel Meixide aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogSprvce bal ku pro Mepis (repozitY spole enstv) & pYekladatel grafickho u~ivatelskho rozhran do apanlatinyBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogPYesto vaak jsem se rozhodl, ~e pou~iju luckyBackup na podporu lid, kteY finan n pomoc opravdu potYebuj.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialogrPYekladatel grafickho u~ivatelskho rozhran do noratinyNorwegian gui translator aboutDialogSprvce bal ku pro OpenSUSE (KDE4 repozitY spole enstv) a cenn rdce pro balenNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog|PYekladatel grafickho u~ivatelskho rozhran do portugalatinyPortuguese gui translator aboutDialog<}ivitel atHtka a sprvce sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialogvPYekladatel grafickho u~ivatelskho rozhran do rumunatinyRomanian gui translator aboutDialogPYekladatel grafickho u~ivatelskho rozhran do ruatiny a cenn testr*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogtKvoli dalam podrobnostem si prohldnte kartu 'Povolen'.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog6Sprvce bal ku pro SlackelSlackel package maintainer aboutDialogxPYekladatel grafickho u~ivatelskho rozhran do slovenatinySlovak gui translator aboutDialogxPYekladatel grafickho u~ivatelskho rozhran do slovinatinySlovenian gui translator aboutDialogZva~te tedy, prosm, dar penz, kter by se  asem pou~ily na dobr  el._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogxPYekladatel grafickho u~ivatelskho rozhran do apanlatinySpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogtPYekladatel grafickho u~ivatelskho rozhran do avdatinySwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog Lidem z indifexuThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog*To je moje odmna :-)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogtPYekladatel grafickho u~ivatelskho rozhran do ture tinyTurkish gui translator aboutDialogCenn poradceValuable advisor aboutDialogjHlasovat "dobr" & stt se nadaenm obdivovatelem na:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogXVvojY pythonovskho skriptu backupwhenidle&backupwhenidle python script developer aboutDialog ZavYtclose aboutDialogDrcovsk odkaz donation link aboutDialog:Bval sprvce bal ku Fedoraex Fedora package maintainer aboutDialog za vvoj skvlho systmu na sprvu pYeklado a jeho poskytovn zdarmaVfor developing the wonderful transifex localization platform and providing it for free aboutDialog2From pro jejich podporu.forums for their support. aboutDialog fri13fri13 aboutDialog,O programu luckyBackupluckyBackup - about aboutDialogluckyBackup je aYen za podmnek <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog Penzemoney aboutDialog}dn penzeno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog(PYenos na MS Windowsport to MS Windows aboutDialog$PYenos na Mac OS Xport to Mac OS X aboutDialogPYenos na OS/2 port to OS/2 aboutDialogVrobce rpm bal ko, cenn testr a poradce ve vcech dlkovho pYipojen <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog ZavYtclose logDialog>Nahrv se soubor se zpisem...loading logfile... logDialogFluckyBackup - postup vykonn kolo&luckyBackup - tasks execution progress logDialogDala chyba next error logDialogPYedchoz chybaprevious error logDialog Po katwait logDialog &%1 %2&%1 %2luckyBackupWindow$&PYed asn ukon it&AbortluckyBackupWindow&O programu&AboutluckyBackupWindow&PYidat&AddluckyBackupWindow&Smazat&DeleteluckyBackupWindow&PYru ka &HandbookluckyBackupWindow&Npovda&HelpluckyBackupWindow&Zavst&ImportluckyBackupWindow &Jazyk &LanguageluckyBackupWindow$&Zmenait do panelu&Minimize to trayluckyBackupWindow&Upravit&ModifyluckyBackupWindow &Nov&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Ukon it&QuitluckyBackupWindow&Obnovit&RefreshluckyBackupWindow&Odstranit&RemoveluckyBackupWindow&Obnovit&RestoreluckyBackupWindow&Ulo~it&SaveluckyBackupWindow&Nastaven &SettingsluckyBackupWindow &kol&TaskluckyBackupWindow &kolThis is a top menu action&TaskluckyBackupWindow"&Nstrojov pruhy &ToolbarsluckyBackupWindow.&Zobrazit/Upravit popis&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowZruaenoABORTEDluckyBackupWindow ZruaitAbortluckyBackupWindow|PYeruaen: Po kejte, prosm, a~ budou vaechny procesy ukon eny4Aborting: Please wait for all processes to be killedluckyBackupWindow innostiActionsluckyBackupWindowVaechny pYmo souvisejc soubory (zpisy atd.) byly tak smazny4All relevant files (logs etc) have also been deletedluckyBackupWindowVaechny pYmo souvisejc soubory (zpisy atd.) byly tak zdvojeny7All relevant files (logs etc) have also been duplicatedluckyBackupWindowVaechny pYmo souvisejc soubory (zpisy atd.) byly obnoveny tak4All relevant files (logs etc) have also been updatedluckyBackupWindow8Vaechny koly byly dokon enyAll tasks completedluckyBackupWindowJJste si jist, ~e chcete smazat profil'Are you sure you want to delete profileluckyBackupWindowZJste si jist, ~e chcete smazat vchoz profil3Are you sure you want to delete the default profileluckyBackupWindowhJste si jist, ~e chcete odstranit nsledujc kol?5Are you sure you want to remove the following task ??luckyBackupWindowPZa t s vykonnm vaech zaYazench kolo)Begin the execution of all included tasksluckyBackupWindow$Zaakrtvac oknkoCheckBoxluckyBackupWindowpKontroly jsou zakzny. Tento kol bude <b>pYesko en</b>5Checks are disabled. This task will be skippedluckyBackupWindow$Soubor nelze najtCould not locate the fileluckyBackupWindowfNepodaYilo se obnovit  as poslednho vykonn kolo-Could not update last execution time of tasksluckyBackupWindow SpadlCrashedluckyBackupWindow,VytvoYit Z&dvojit kolCreate D&uplicate taskluckyBackupWindow,VytvoYit O&bnovit kolCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowNynja profilCurrent ProfileluckyBackupWindowZ&dvojit D&uplicateluckyBackupWindowV&chozDe&faultluckyBackupWindow Popis DescriptionluckyBackupWindowCl DestinationluckyBackupWindowAdresY DirectoryluckyBackupWindow HotovoDoneluckyBackupWindowZkouakaDryluckyBackupWindow&Elektronick &dopisE&mailluckyBackupWindowV&yvstE&xportluckyBackupWindow CHYBAERRORluckyBackupWindowUKON ITEXITluckyBackupWindowUplynul  as Elapsed timeluckyBackupWindowNastaven elektronick poaty byla <font color=green>span obnovenaBEmail preferences have been updated successfullyluckyBackupWindow^Zprva elektronickou poatou po vykonn profilu$Email report after profile executionluckyBackupWindow eatinaEnglishluckyBackupWindow eatinaDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowbBhem pYesunu souboro se zpisy se vyskytly chyby'Errors occured during logfiles transferluckyBackupWindowtBhem pYesunu snmko a souboro se zpisy se vyskytly chyby5Errors occured during snapshots and logfiles transferluckyBackupWindowLBhem pYesunu snmko se vyskytly chyby(Errors occured during snapshots transferluckyBackupWindowdBhem pYesunu souboru s profilem se vyskytly chyby/Errors occured during the profile file transferluckyBackupWindowObzvlat zkontrolujte zaakrtvac oknka "Nzev kolu", "Zdroj", "Cl" & "PYesko it novja soubory cle" (pokro il volby)jEspecially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced)luckyBackupWindow Vykonn profiluExecution of profileluckyBackupWindow0Vykonn kolo dokon enoExecution of tasks finishedluckyBackupWindow`Vykonn kolo bylo nsiln pYeruaeno u~ivatelem4Execution of tasks were terminated violently by userluckyBackupWindowUkon itExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowJClov adresY se nepodaYilo vytvoYit&Failed to create destination directoryluckyBackupWindowDNepodaYilo se vytvoYit nov profilFailed to create new profileluckyBackupWindowNepodaYilo se smazat vaechny pYmo souvisejc soubory (zpisy atd.).Failed to delete all relevant files (logs etc)luckyBackupWindow6NepodaYilo se smazat profilFailed to delete profileluckyBackupWindowNepodaYilo se zdvojit vaechny pYmo souvisejc soubory (zpisy atd.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow8NepodaYilo se zdvojit profilFailed to duplicate profileluckyBackupWindow8NepodaYilo se zdvojit profilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow6NepodaYilo se vyvst profilFailed to export profileluckyBackupWindow6NepodaYilo se zavst profilFailed to import profileluckyBackupWindow@NepodaYilo se pYejmenovat profilFailed to rename profileluckyBackupWindow:NepodaYilo se nahradit profilFailed to replace profileluckyBackupWindow*NepodaYilo se spustitFailed to startluckyBackupWindowNepodaYilo se obnovit vaechny pYmo souvisejc soubory (zpisy atd.).Failed to update all relevant files (logs etc)luckyBackupWindow0Skrt okno s informacemiHide information windowluckyBackupWindow0Skrt okno s informacemi+hide/show information window button tooltipHide information windowluckyBackupWindow Zaveden profiluImport ProfileluckyBackupWindowInformaceInformation windowluckyBackupWindowInforma n oknoinformation window titleInformation windowluckyBackupWindowJ as poslednho vykonn kolo obnoven$Last execution time of tasks updatedluckyBackupWindow:Seznam vaech dostupnch koloList of all the available tasksluckyBackupWindowZamknoutLockluckyBackupWindow"Spravovat &zlohuManage &BackupluckyBackupWindowSpravovat kol Manage TaskluckyBackupWindowZPYesunout zvraznn kol dolo o jednu pozici/Move the highlighted task down, by one positionluckyBackupWindow^PYesunout zvraznn kol nahoru o jednu pozici-Move the highlighted task up, by one positionluckyBackupWindowNENOluckyBackupWindowNEZAXAZENO NOT INCLUDEDluckyBackupWindowPOZNMKANOTEluckyBackupWindow6Nebyly nalezeny ~dn chybyNo errors foundluckyBackupWindow(Nyn se provd kolNow performing taskluckyBackupWindowvBhem aktualizace okba ukzat pouze chyby a dole~it zprvy could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindow`Aktualizace ukazatele probhu nebude realistick(Progressbar update will not be realisticluckyBackupWindowPYejm&enovatR&enameluckyBackupWindowChyba pYi  ten Read errorluckyBackupWindowJOdstranna vaechna stara data snmku Removed all older snapshots dataluckyBackupWindowOdstraHuje seRemovingluckyBackupWindowlOdstraHuj se star snmky a soubory se zpisy k kolu+Removing old snapshots and logfiles of taskluckyBackupWindowSpustitRunluckyBackupWindowR&ozvrh prac S&cheduleluckyBackupWindow6Vybrat adresY pro vyvedenSelect export directoryluckyBackupWindow*Nastavit jako vchozSet as DefaultluckyBackupWindowNastavit cesty Set pathsluckyBackupWindowLNastavit cesty pro pYkazy rsync a ssh$Set paths for rsync and ssh commandsluckyBackupWindow2Ukzat okno s informacemiShow information windowluckyBackupWindow2Ukzat okno s informacemi+hide/show information window button tooltipShow information windowluckyBackupWindow.Ukzat text pod ikonamiShow text under iconsluckyBackupWindow ZdrojSourceluckyBackupWindowNZastavit vykonvn b~cch kolo NYN'Stop the execution of running tasks NOWluckyBackupWindow>Clov adresY span vytvoYen)Successfuly created destination directoryluckyBackupWindowkolTaskluckyBackupWindowSeznam kolo Task listluckyBackupWindow(Seznam kolo profiluTask list of profileluckyBackupWindowPopis profiluThe description of profileluckyBackupWindowtAdresY, kter jste vybral, neobsahuje platn data profiluCThe directory you have selected does not contain valid profile dataluckyBackupWindowhNzev, kter jste zadal, obsahuje jen neplatn znaky:The name you have entered contains only invalid charactersluckyBackupWindow<Systm bude vypnut za 1 minutu$The system will shutdown in 1 minuteluckyBackupWindow.Seznam kolo je przdnThe task list is emptyluckyBackupWindow(Tmto se provede <b>pYedstran spuatn</b>, kter neudl ~dn zmny (a ve vtain pYpado vede k tmu~ vstupu, k jakmu vede skute n spuatn){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow as pYekro en Timed outluckyBackupWindowBCelkov po et pYenesench souboroTotal files transferedluckyBackupWindow(Profil nelze otevYtUnable to open profileluckyBackupWindowNeznm chyba Unknown errorluckyBackupWindowNeznm chybathis refers to a process Unknown errorluckyBackupWindowXPou~t tla tko "PYidat" napravo pro za tek0Use the "add" button on the right to get startedluckyBackupWindowPou~ijte "zaYadit zaakrtvac pol ka" pro zaYazen, nebo nezaYazen vybranho kolu>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindow<Zobrazit/Upravit popis profilu!View/Edit the profile descriptionluckyBackupWindowVAROVNWARNINGluckyBackupWindowVtejte v Welcome toluckyBackupWindow2Rd byste tak odstranil:Would you like to also remove:luckyBackupWindow<Chtl byste pYesto pokra ovat?!Would you like to proceed anyway?luckyBackupWindow2Chtl byste jej nahradit?Would you like to replace it ?luckyBackupWindownChtl byste jej ulo~it pYedtm, ne~ se bude pokra ovat?-Would you like to save it before proceeding ?luckyBackupWindow Chyba pYi zpisu Write errorluckyBackupWindowANOYESluckyBackupWindow`Za~dal jste o to, aby byl vytvoYen kol OBNOVIT/You have asked for a RESTORE task to be createdluckyBackupWindow`ZaYadil jste pouze koly, kter budou pYesko eny9You have only included tasks that are going to be skippedluckyBackupWindowfDoshl jste nejvyaa mo~n meze podporovanch kolo5You have reached the maximum limit of supported tasksluckyBackupWindowjMuste odstranit kol, pokud si pYejete pYidat dala!7You have to remove a task if you wish to add another !!luckyBackupWindowhbude vytvoYen nov przdn profil, se stejnm nzvem4a new blank one, with the same name, will be createdluckyBackupWindow PYidataddluckyBackupWindowPYidat koladd taskluckyBackupWindowji~ existujealready existsluckyBackupWindowja seznam profilo, kter je posunut dolo, je obnoven.and 'profile' drop-down listluckyBackupWindow6a pYidn do seznamu profiloand added at the profile listluckyBackupWindow~a zmHte, cokoli si budete pYt, pYedtm, ne~ budete pokra ovat.and change anything you wish before proceedingluckyBackupWindowjakoasluckyBackupWindowjakoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowPo t se calculatingluckyBackupWindowPo t se-info message displayed during ...calculations calculatingluckyBackupWindowVstup pYkazocommands outputluckyBackupWindow,se nepodaYilo vytvoYitcould not be createdluckyBackupWindow(se nepodaYilo ulo~itcould not be savedluckyBackupWindow(se nepodaYilo ulo~itPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow(byl span vytvoYencreated successfullyluckyBackupWindow8VytvY se vchoz profil...creating default profile ...luckyBackupWindow(VytvY se profil...creating profile ...luckyBackupWindowbNynja crontab <font color=green>span obnoven6current crontab updated successfullyluckyBackupWindowNynja profilcurrent profileluckyBackupWindowVchoz profildefault profileluckyBackupWindowVchoz profil^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowVchoz profilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow$byl span smazndeleted successfullyluckyBackupWindow Soubory se ma~oudeleting filesluckyBackupWindow Soubory se ma~ou/info message displayed during ...file deletionsdeleting filesluckyBackupWindow~Zobrazit - obnovit - smazat stvajc zlohy zvraznnho kolu?display - restore - delete existing backups of highlighted taskluckyBackupWindowbZobrazit informace tkajc se zvraznnho kolu.display information regarding highlighted taskluckyBackupWindow0byl span zdvojen jakoduplicated successfully asluckyBackupWindow&Byly nalezeny chyby errors foundluckyBackupWindow"Vykonn profilu:execution of profile:luckyBackupWindow"Vykonn profilu:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow,byl vyveden span doexported successfully toluckyBackupWindow.NepodaYilo se odstranitfailed to removeluckyBackupWindowdNepodaYilo se odstranit vaechna stara data snmku)failed to remove all older snapshots dataluckyBackupWindow HotovofinishedluckyBackupWindow Hotovo:full phrase: 'Execution of profile finished'finishedluckyBackupWindow&byl span zavedenimported successfullyluckyBackupWindowProbh...in progress...luckyBackupWindowZaYazenincludeluckyBackupWindowje upraven is modifiedluckyBackupWindow nen platnm prois not valid forluckyBackupWindow(Sko it k dala chybjump to next errorluckyBackupWindow0Sko it k pYedchoz chybjump to previous errorluckyBackupWindow$byl span nahrnloaded successfullyluckyBackupWindow8Nahrv se vchoz profil...loading default profile ...luckyBackupWindow"Nahrvn selhaloloading failedluckyBackupWindow(Nahrv se profil...loading profile ...luckyBackupWindowfSoubor(y) se zpisem(y) byly vytvoYeny v adresYi: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow"Zmenait do paneluminimize to trayluckyBackupWindow<Zmenait okno do oblasti panelu%minimizes the window to the tray arealuckyBackupWindowUpravitmodifyluckyBackupWindow.Upravit zvraznn kolmodify highlighted taskluckyBackupWindowNen co dlat nothing to doluckyBackupWindow2Vykonn pYkazu po kolupost-task execution of commandluckyBackupWindow8Vykonn pYkazu pYed kolempre-task execution of commandluckyBackupWindow ProfilprofileluckyBackupWindow ProfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow ProfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow ProfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow ProfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowProfil profile luckyBackupWindowTich re~im quiet modeluckyBackupWindowobnoveny refreshedluckyBackupWindowOdstranitremoveluckyBackupWindow2Odstranit zvraznn kolremove highlighted taskluckyBackupWindow4byl span pYejmenovn narenamed successfully toluckyBackupWindow4byl span pYejmenovn naWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowjVstup pYkazo rsync a pYed/po kolo se zobrazuje zde9rsync and pre/post task commands output is displayed hereluckyBackupWindow$byl span ulo~ensaved successfullyluckyBackupWindow6Ukld se vchoz profil...saving default profile ...luckyBackupWindow&Ukld se profil...saving profile ...luckyBackupWindow2ZaYazeno do rozvrhu prac scheduledluckyBackupWindow2byl nastaven jako vchozset as defaultluckyBackupWindownastaven naset toluckyBackupWindowVypnutshutdownluckyBackupWindow"Re~im pYedstrnsimulation modeluckyBackupWindowStavstatusluckyBackupWindowSuperu~ivatel super userluckyBackupWindow(Re~im superu~ivatelesuper user modeluckyBackupWindowdotoluckyBackupWindow$PYena se souborytransferring filesluckyBackupWindow$PYena se soubory/info message displayed during ...file transferstransferring filesluckyBackupWindowNZkoua se posln elektronickho dopisutrying to send an emailluckyBackupWindow verze:version:luckyBackupWindow Spo tat rozdlyCalculate differences manageDialog`Spo tat rozdly mezi zdrojem a vybranm snmkemFCalculate the differences between the source and the selected snapshot manageDialog@Vpo ty byly ukon eny u~ivatelemCalculations terminated by user manageDialog ZavYtClose manageDialog ZavYt toto oknoClose this window manageDialog SmazatDelete manageDialog`Smazat vybran snmek a soubor se zpisem k nmu,Delete the selected snapshot and its logfile manageDialoglNemm dostate n oprvnn pro  ten z tohoto adresYe;I do not have sufficient permissions to read this directory manageDialogDVyberte, prosm, snmek ze seznamu&Please select a snapshot from the list manageDialogRPo kejte, prosm, a~ bude vlkno ukon eno*Please wait until the thread is terminated manageDialogObnovitRestore manageDialog,Obnovit vybran snmekRestore the selected snapshot manageDialogZASTAVITSTOP manageDialog*Zastavit vpo ty NYNStop calculations NOW manageDialog0Tento adresY neexistujeThis directory does not exist manageDialog0Tento adresY neexistujeInformation messageThis directory does not exist manageDialogZZobrazit soubor se zpisem pro vybran snmek)View the logfile of the selected snapshot manageDialoglZobrazit soubor se zpisem pro vybran seYizovac kol*View the logfile of the selected sync task manageDialogCl: destination: manageDialogSkrt zdroj hide source manageDialog6luckyBackup - sprva zlohyluckyBackup - manage backup manageDialogNedostupn not available manageDialog Profilprofile manageDialog Zdroj:source: manageDialog(SeYizovac adresY A sync dir A manageDialog(SeYizovac adresY B sync dir B manageDialogkoltask manageDialogZobrazit zpisview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizard ZRU`ITABORT manageWizardZruaenoAborted manageWizardCesta k zloze Backup path manageWizardrProchzet mstn kvoli nov cest k obnovovacmu adresYi%Browse locally for a new restore path manageWizardToto zaakrtnte kvoli klonovn snmku se zlohou do obnovovacho adresYe.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum &  as Date & time manageWizardSmazat zlohu Delete backup manageWizardXSmazat stvajc data, kter nejsou v zloze4Delete existing data that do not exist at the backup manageWizardMa~ou se data Deleting data manageWizardbMa~e se soubor, kter vyjmenovv zmny ve snmku)Deleting file that lists snapshot changes manageWizardFMa~e se soubor se zpisem ke snmkuDeleting snapshot logfile manageWizardStvajc zlohovac soubory nahrad odpovdajc soubory v obnovovacm adresYiSExisting backup files will replace the corresponding files at the restore directory manageWizardDokon enoFinished manageWizardPokud je informace vae sprvn, klepnte na <b>za t</b> pro za tek@If the information above is correct, click start to begin manageWizardPokud je informace vae sprvn, klepnte na <b>za t</b> pro za tek`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard(Sko it k dala chybJump to next error manageWizard0Sko it k pYedchoz chybJump to previous error manageWizardxNeexistuj ~dn data pYzna n pro snmek. PYeskakuje se...,No snapshot specific data exist. Skipping... manageWizard CestaPath manageWizardObnovit zlohuRestore backup manageWizard:Cesta k obnovovacmu adresYi Restore path manageWizard:Obnovuj se data: hlavn kmenRestoring data: main trunk manageWizard@Obnovuj se data: soubory snmkuRestoring data: snapshot files manageWizard<Vybrat nov obnovovac adresYSelect new restore directory manageWizardtObnovovac adresY se stane toto~nm se snmkem se zlohouBThe restore directory will become identical to the backup snapshot manageWizard(Tmto se provede <b>pYedstran spuatn</b>, kter neudl ~dn zmny (a ve vtain pYpado vede k tmu~ vstupu, k jakmu vede skute n spuatn){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard2Obnovuje se seznam snmkoUpdating list of snapshots manageWizardVAROVNWARNING manageWizardDChystte se smazat data se zlohou#You are about to delete backup data manageWizard Zruaitcancel manageWizard Zmnitchange manageWizard ZavYtclose manageWizard&Byly nalezeny chyby errors found manageWizardNepodaYilo sefailed manageWizardNepodaYilo se-info message displayed after ...file deletionfailed manageWizard6luckyBackup - sprva zlohyluckyBackup - manage backup manageWizardDala chyba next error manageWizard}dn chyby no errors manageWizardNedostupn not available manageWizardPYedchoz chybaprevious error manageWizardPYedstrn simulation manageWizard Za tstart manageWizardPodaYilo sesuccess manageWizardPodaYilo se-info message displayed after ...file deletionsuccess manageWizardPodaYilo se5info message displayed after ...snapshots list updatesuccess manageWizardVolba 'Vzdlen hostitel' je ozna ena fajfkou, ale nen prohlaen nzev ~dnho vzdlenho hostitele='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>NezapomeHte</b> stanovit adresY ve 'vylu ovacm' skupinovm pol ku, kter bude obsahovat clfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@Hostitel:@Host: modifyDialogPYidat kterkoli adresY, soubor nebo vzor, kter m bt vylou en z tohoto kolu@Add any directory, file or pattern to be excluded from this task modifyDialogPYidat kterkoli adresY, soubor nebo vzor, kter m bt zaYazen do tohoto kolu>Add any directory, file or pattern to be included by this task modifyDialoghPYidat pYkaz tak, jak byl zadn, do pole hned vedle*Add command as entered in the field beside modifyDialogdPYidat vylou en, jak bylo zadno, do dalaho pole*Add exclusion as entered in the next field modifyDialogbPYidat zaYazen, jak bylo zadno, do dalaho pole*Add inclusion as entered in the next field modifyDialogPYidat nebo odstranit jakkoli volby rsync. Pokud nemte pont o tom, co to znamen, ponechte je netknuty!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialoghPYidat rsync volbu, jak byla zadna, do dalaho pole-Add rsync option as entered in the next field modifyDialogRozaYen volbyAdvanced modifyDialogPoAfter modifyDialogZd se, ~e vaechna prohlaen pole okna vlastnost kolu, jsou v poYdku?All declared fields of the task properties window seem to be ok modifyDialogTak provst Also Execute modifyDialogLPokusit se o superu~ivatelsk  innostiAttempt super-user activities modifyDialog:Zlohovat obsah Zdroje v Cli Backup Source inside Destination modifyDialog$Soubory se zlohou Backup files modifyDialog4Zlohovat otevYen souboryBackup open files modifyDialogPYedBefore modifyDialog2Slo~ky vyrovnvac pamti Cache folders modifyDialog ZruaitCancel modifyDialogTuto volbu zatrhnte, pokud jako cl pou~vte oddl FAT/NTFS. Vlastnick prva k datom a oprvnn NEBUDOU zachovna. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogToto zaakrtnout pro klonovn zdroje do cle Ponechejte nezaakrtnut pro vytvoYen adresYe navc v cliiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogOzna te toto fajfkou, abyste se pYipojili k modulu rsync pro vzdlen hostitelsk po ta /Check this to connect to an rsync Remote module modifyDialog"Volby pro pYkazyCommand Options modifyDialog Seznam s pYkazy Command list modifyDialogKoprovat zaYzen (pouze superu~ivatel) & speciln soubory tak, jako jsou (-D)?Copy device (super user only) & special files as they are (-D) modifyDialognKoprovat symbolick odkazy jako symbolick odkazy (-l)Copy symlinks as symlinks (-l) modifyDialoglStanovit druh tohoto kolu: 1. Zlohovat obsah Zdroje v Cli (podvejte se tak na oknko 'NEVYTVXET adresY' 2. SeYdit Zdroj & Cl, uchovvaje nejposlednja soubory v obou z nichDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogjStanovit druh tohoto kolu: 1. Zlohovat obsah Zdroje v Cli 2. Zlohovat Zdrojov adresY podle nzvu v Cli 3. SeYdit Zdroj & Cl, uchovvaje nejposlednja soubory v obou z nichDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog*Smazat soubory v cliDelete files on the destination modifyDialogNSmazat soubory v cli, kter neexistuj ve zdroji. Mus bt vybrn "Zchrana do adresYo" (--delete-after & --delete-excluded jestli~e "Vylou en" je ozna eno fajfkou)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialog Popis Description modifyDialogCl Destination modifyDialogCl: Destination : modifyDialogCl je FAT/NTFSDestination is FAT/NTFS modifyDialog0NEVYTVXET adresY navcDo NOT create extra directory modifyDialogNezlohovat zdrojov soubory, kter jsou v cli novja (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNevylu ovat tento seznam vzoro. Projdte si, prosm, nvod kvoli lepamu porozumn zaYazovacch pravidel.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog CHYBAERROR modifyDialog CHYBAmessage box message - line1ERROR modifyDialog6Upravit zvraznn zaYazenEdit highlighted inclusion modifyDialogZadejte nzev pro tento kol (napY. "Zlohovat moj domovsk adresY"):Enter a name for this task (eg "Backup my home directory") modifyDialogZde zadejte pYkaz, kter bude vykonn po kolu, a pak stisknte tla tko "PYidat" pro jeho pYidn do seznamu n~enEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogZde zadejte pYkaz, kter bude vykonn pYed kolem, a pak stisknte tla tko "PYidat" pro jeho pYidn do seznamu n~eoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogZde zadejte rsync volbu, kter m pYidat (napY. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog*Zde zadejte nzev souboru, slo~ky nebo vzor, a potom stisknte tla tko "pYidat", abyste jej pYidali do seznamu vylou en * - odpovd kterkoli ne-przdn slo~ce (zastav se u lomtka) ** - odpovd  emukoli, v etn lomtek ? - odpovd ktermukoli znaku krom lomtka jsouc za dir_name/ *** - odpovd jednak adresYi & a tak  emukoli v nm za n na / - vzor je ukotven k zvlatnmu mstu v hierarchii souboro (normln je to "zdroj") jsouc za / - odpovd pouze adresYi, ne Ydnm souborom, symbolickm odkazom nebo zaYzenmEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog$Zde zadejte nzev souboru, slo~ky nebo vzor, a potom stisknte tla tko "pYidat", abyste jej pYidali do seznamu zahrnut * - odpovd kterkoli ne-przdn slo~ce (zastav se u lomtka) ** - odpovd  emukoli, v etn lomtek? - odpovd ktermukoli znaku krom lomtkajsouc za dir_name/ *** - odpovd jednak adresYi & a tak  emukoli v nm za n na / - vzor je ukotven k zvlatnmu mstu v hierarchii souboro (normln je to "zdroj") jsouc za / - odpovd pouze adresYi, ne Ydnm souborom, symbolickm odkazom nebo zaYzenmEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogZadejte celou cestu k clovmu adresYi (napY. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogZadejte plnou cestu k souboru, kter obsahuje soukrom ssh autentiza n kl (opusete przdn, jestli~e toto nen pou~iteln/vhodn). Povaimnte si, ~e muste udlat vaechny akce, kter jsou potYeba pro ssh vzdlen pYipojen bez hesla za pou~it OpenSSH pru kl oEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogZadejte plnou cestu k souboru, kter obsahuje rsync (nikoli ssh) autentiza n heslo (opusete przdn, jestli~e toto nen pou~iteln/vhodn).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogZadejte celou cestu ke zdrojovmu adresYi (napY. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog`Zadejte nzev vzdlenho hostitelskho po ta e."Enter the name of the remote host. modifyDialogZadejte port (brnu), kterou byste rd pou~il pro ssh pYipojen (opusete przdn v pYpad vchozho portu (brny))ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogZadejte Vaae u~ivatelsk jmno pro vzdlen hostitelsk po ta (opusete przdn, jestli~e toto nen pou~iteln/vhodn).HEnter your username for the remote host (leave blank if not applicable). modifyDialog&Byly nalezeny chybyErrors have been found modifyDialogVylou itExclude modifyDialogzVylou it vaechny "ztracen+nalezen" slo~ky (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogdVylou it vaechny zlohovac soubory & slo~ky (**~)(Exclude all backup files & folders (**~) modifyDialogVylou it vaechny slo~ky s vyrovnvac pame (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialognVylou it vaechny slo~ky s do asnmi soubory (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogjVylou it vaechny u~ivatelsk slo~ky .gvfs (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogVylou it vaechny u~ivatelovy slo~ky na smet (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog$Seznam vylou ench Exclude list modifyDialogVylou it systmov slo~ky /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogVylou it slo~ky vztahujc se k pYipojovn zaYzen /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogTVykonat extra pYkazy, pYed nebo po kolu.1Execute extra commands, before or after the task. modifyDialogVykonat kol, i kdy~ je doprovzen VAROVNOU zprvou. Pou~v se b~n, kdy~ pYkazy "Vykonat pYed" mohou varovn opravit (napY. pYipojit oddly) POZOR: zaakrtnte tuto volbu jen v pYpad, ~e jste si opravdu vdom toho, co dlteExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog6Zvlatn seznam voleb rsyncExtra rsync options list modifyDialogtSoubory, kter jsou pevn (na tvrdo) spojeny dohromady ve zdroji, budou pevn spojeny dohromady v cli VAROVN: Vaechny soubory mus bt zaYazeny v Yad souboro ur ench k pYenosu! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogBNevamat si souboro na zposob CVSIgnore files the CVS way modifyDialogNevamat si souboro, kter pou~vaj algoritmus podobn CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogZaYazenInclude modifyDialog(Zahrnout pouze tento seznam vzoro. Nic vc. Projdte si, prosm, nvod kvoli lepamu porozumn zaYazovacch pravidel. Toto zak~e funkci vylou en.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Seznam zaYazench Include list modifyDialogRe~im zaYazen Include mode modifyDialogPonechejte toto oknko zaakrtnuto, aby byl b~c kol <b>ZASTAVEN</b>, pokud tento pYkaz skon s chybougLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Re~im:Mode: modifyDialogBPosunout zvraznn zaYazen doloMove highlighted inclusion down modifyDialogFPosunout zvraznn zaYazen nahoruMove highlighted inclusion up modifyDialog Nzev:Name : modifyDialog Obvykl zaYazenNormal Include modifyDialogOKOkay modifyDialogPouze zaYazen Only Include modifyDialogJinak zruate ozna en fajfkou u volby 'Vzdlen hostitel', abyste pracovali mstn2Otherwise uncheck 'Remote Host' to operate locally modifyDialogpPYed pokra ovnm, prosm, zaakrtnte souvisejc oknko/Please check the relevant box before proceeding modifyDialoghStanovte, prosm, pYed spuatnm editoru vzoro zdrojNapY. -C4c arcfour,blowfish-cbceg -C4c arcfour,blowfish-cbc modifyDialogNzev souborufilename modifyDialog(Spustit editor vzorolaunch the pattern editor modifyDialog"Ztracen+nalezen lost+found modifyDialogPosunout dolo move down modifyDialogPosunout nahorumove up modifyDialogSeznam voleb options list modifyDialog Heslo: password: modifyDialog Port:port : modifyDialog6Soubor se soukromm kl em:private key file : modifyDialogOdstranitremove modifyDialog,Soubor s heslem rsync:rsync password file: modifyDialog Jednoduch volbysimple modifyDialog Zdrojsource modifyDialogsshssh modifyDialogtPou~t oknka k <b>ZASTAVEN</b> provdn kolu pYi chyb0use boxes to STOP task execution on error modifyDialog"Potvrdit platnostvalidate modifyDialog|ani~ byste zaakrtl 'Zchrana do adresYo', kter je vy~adovnaCwithout having checked 'Recurse into directories' which is required modifyDialog ZruaitCancel patternEditorJToto zaakrtnte kvoli pou~it adresYe vae jako absolutn cesty Pokud nen zaakrtnuto, vzor bude odpovdat jakmukoli souboru/adresYi, kter vyhov mYtku "nzev"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditor~Zde ur ete znaky nzvo souboro/adresYo, kter se maj shodovatEDefine here the name criteria for the files/directories to be matched patternEditorbZde ur ete, na co byste chtl, aby vzor odkazoval8Define here, what would you like the pattern to refer to patternEditorObsah adresYeDirectory contents patternEditorZde zadejte znaky obsa~en v jakkoli poloze v nzvech souboro/adresYo, na kter vzor odkazujesEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorZde zadejte koncov znaky nzvo souboro/adresYo, na kter vzor odkazuje napY. pro odkaz na vaechny soubory ".txt", zadejte .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditortZde zadejte nzvy souboro/adresYo, na kter vzor odkazujeGEnter here the name of the files/directories that the pattern refers to patternEditorZde zadejte za te n znaky nzvo souboro/adresYo, na kter vzor odkazujebEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor.Jt hloubji v cest o:Go deeper in path by : patternEditorNJt hloubji v cest o jakoukoli roveHGo deeper in path by any level patternEditorOKOkay patternEditorLVyberte, prosm, adresY uvnitY zdroje+Please choose a directory within the source patternEditorJVyberte, prosm, soubor uvnitY zdroje&Please choose a file within the source patternEditor\Nastavit znovu editor vzoro na vchoz hodnoty5Reset the pattern editor fields to the default values patternEditorVybrat adresYSelect directory patternEditorVybrat soubor Select file patternEditorSada adresYoSet of directories patternEditorSada souboro Set of files patternEditor Zvlatn adresYSpecific directory patternEditorZvlatn soubor Specific file patternEditor<Skute n vzor se zobrazuje zde$The actual pattern is displayed here patternEditor"Vzor odkazuje na:The pattern refers to a: patternEditorToto pou~ijte v pYpad, ~e vzor odkazuje na sadu adresYo, kter maj nco spole nho napY. vaechny adresYe s nzvem "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorToto pou~ijte v pYpad, ~e vzor odkazuje na sadu souboro, kter maj nco spole nho napY. vaechny soubory s pYponou ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorToto pou~ijte v pYpad, ~e vzor odkazuje na zvlatn adresY napY. "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorToto pou~ijte v pYpad, ~e vzor odkazuje na zvlatn soubor napY. "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorToto pou~ijte tehdy, kdy~ vzor odkazuje na obsah adresYe (nebo vce adresYo), ne na sm adresY; napY. obsah adresYe "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditor>Toto pou~ijte kvoli odkazovn na podadresYe napYklad AdresY "/media/music" obsahuje tYi podadresYe: 1.Rock 2.Jazz 3.Soundtracks a vy chcete odkazovat na obsah u vaech tchto tY, stanovte nsledujc: * Sada adresYo * Pouze obsah * cesta:/media/music/ * Jt hloubji v cest o "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorJakkoliany patternEditorNProchzet mstn kvoli cest k adresYi"browse localy for a directory path patternEditor<Prochzet mstn kvoli souborubrowse localy for a file patternEditorObsahuje: contains : patternEditorAdresY: directory : patternEditor Kon : ends with : patternEditorSoubor:file : patternEditorKone n vzor final pattern patternEditorJe pYesn: is exactly : patternEditor Nzevname patternEditorEditor vzoropattern editor patternEditorNastavit znovureset patternEditorZa n: starts with : patternEditor,Pou~t absolutn cestuuse absolute path patternEditor soubor filescheduleDialog& na& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:zpo~dn:delayscheduleDialogP<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Sestavovn rozvrhu vykonn profilu</span></p></body></html>

Profile execution scheduling

scheduleDialog@ reboot@ rebootscheduleDialog@PYidat nov rozvrh prac profiluAdd a new profile schedulescheduleDialog6PYidat rozvrh prac profiluAdd profile schedulescheduleDialogjakkoliAnyscheduleDialog dubenAprilscheduleDialog Dubenfull phrase: 'of April'AprilscheduleDialognJste si jist, ~e chcete zavYt dialog s rozvrhem prac?4Are you sure you want to close the schedule dialog ?scheduleDialog srpenAugustscheduleDialog Srpenfull phrase: 'of August'AugustscheduleDialog ZruaitCancelscheduleDialogToto zaakrtnte v pYpad, ~e va stroj nepodporuje grafick prostYed (napY. server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialog.Re~im ovldacho panelu Console ModescheduleDialogprosinecDecemberscheduleDialogProsinecfull phrase: 'of December'DecemberscheduleDialogVPYi spuatn zpozdit proveden luckybackupu&Delay luckybackup execution at startupscheduleDialog0Zobrazit nynja crontabDisplay the current crontabscheduleDialogVykonat profilExecute profilescheduleDialognorFebruaryscheduleDialognorfull phrase: 'of February'FebruaryscheduleDialog ptekFridayscheduleDialogNeplatn profilInvalid profilescheduleDialog ledenJanuaryscheduleDialog Ledenfull phrase: 'of January'JanuaryscheduleDialog ervenecJulyscheduleDialog ervenecfull phrase: 'of July'JulyscheduleDialog  ervenJunescheduleDialog  ervenfull phrase: 'of June'JunescheduleDialog bYezenMarchscheduleDialog BYezenfull phrase: 'of March'MarchscheduleDialog kvtenMayscheduleDialog Kvtenfull phrase: 'of May'MayscheduleDialog8Upravit rozvrh prac profiluModify profile schedulescheduleDialogHUpravit vybran rozvrh prac profilu Modify selected profile schedulescheduleDialogpondlMondayscheduleDialogFNebyl prohlaen ~dn rozvrh prac!No schedules are declared !!scheduleDialoglistopadNovemberscheduleDialogListopadfull phrase: 'of November'NovemberscheduleDialog YjenOctoberscheduleDialog Xjenfull phrase: 'of October'OctoberscheduleDialogProfil: Profile :scheduleDialogBPodrobnosti profilu rozvrhu pracProfile schedule detailsscheduleDialogLOdstranit vybran rozvrh prac profilu Remove selected profile schedulescheduleDialogHSpustit jednou, pYi spuatn systmuRun once, at startupscheduleDialog sobotaSaturdayscheduleDialogzY SeptemberscheduleDialogZYfull phrase: 'of September' SeptemberscheduleDialogPYesko it koly, kter se po zkontrolovn adresYe objev s varovnm sdlenm "KRITICK"SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog.Za n pln od za tkuStarting from scratchscheduleDialog nedleSundayscheduleDialogxStvajc soubor s rozvrhem prac nen platn luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialog tvrtekThursdayscheduleDialog terTuesdayscheduleDialog4Nelze vytvoYit cron souborUnable to create cron filescheduleDialogTNeschopen vytvoYit soubor s rozvrhem pracUnable to create schedule filescheduleDialog stYeda WednesdayscheduleDialognProvedl jste zmny, ani~ byste klepl na tla tko cronIT8You have made changes without clicking the cronIT buttonscheduleDialogDoshl jste nejvyaa mo~n meze podporovanch naplnovanch profiloBYou have reached the maximum limit of supported scheduled profilesscheduleDialogMuste odstranit njakou polo~ku, jestli~e si pYejete pYidat jinou5You have to remove an item if you wish to add anotherscheduleDialog<Va crontab je span obnoven$Your crontab is updated successfullyscheduleDialog PYidataddscheduleDialog atscheduleDialog ZavYtclosescheduleDialog ZavYt toto oknoclose this dialogscheduleDialogcronIT! cronIT !!scheduleDialogObsah crontabcrontab contentscheduleDialogDendayscheduleDialogDen v msci:day of month :scheduleDialogDen v tdnu: day of week :scheduleDialog ka~deveryscheduleDialog.ka~dou hodinu na minutuhourly at minute scheduleDialogPluckyBackup - rozvrh naplnovanch pracluckyBackup - schedulescheduleDialog minutminscheduleDialogUpravitmodifyscheduleDialog Msc:month :scheduleDialoghndscheduleDialoghas in 22nd dayndscheduleDialog,Nejsou zznamy crontabno crontab entries existscheduleDialog ofscheduleDialogka~dho msce of any monthscheduleDialogOKokayscheduleDialog6jednou pYi spuatn systmuonce, at system startupscheduleDialogtrdscheduleDialogtas in 23rd dayrdscheduleDialogOdstranitremovescheduleDialogZaYadit do rozvrhu vykonn profilo, jak byl prohlaen v seznamu vae@schedule the execution of profiles as declared in the list abovescheduleDialogzNastavte tuto hodnotu na -1 aby se rozvrh dlal ka~dou hodinu9set this value to -1 for the schedule to occur every hourscheduleDialog$PYesko it kritick skip criticalscheduleDialognstscheduleDialognas in 21st daystscheduleDialognas in 31st daystscheduleDialog t(m)thscheduleDialogtas in 10th daythscheduleDialogtas in 11th daythscheduleDialogtas in 12th....19th daythscheduleDialogtas in 20th daythscheduleDialogtas in 24th...30th daythscheduleDialogm as in 8th daythscheduleDialogt as in 9th daythscheduleDialog as (hod:min):time (hour:min) :scheduleDialog:Podvat se na nynja crontabview current crontabscheduleDialogJProfil se stejnm nzvem ji~ existuje+A profile with the same name already exists textDialogFJste si jist, ~e chcete pokra ovat?#Are you sure you wish to proceed ?? textDialogDEJTE SI POZOR, pokud NEN vaam zmrem klonovat zdroj do cle!BBEWARE, if your intention is NOT to clone source to destination !! textDialog ZruaitCancel textDialog8Koprovat pYkaz do schrnkyCopy command to clipboard textDialogHToto znovu pro tento kol neukazovat$Do not show this again for this task textDialogFZadejte heslo (jsou dvojice kl o):Enter passphrase : textDialogZadejte heslo:Enter pasword : textDialog:Zadejte nzev novho profilu:#Enter the name of the new profile : textDialog6Zadejte nov nzev profilu:#Enter the new name of the profile : textDialogNeNo textDialogOKOkay textDialog6Zadejte, prosm, jin nzevPlease enter a different name textDialogPopis profilu:Profile description : textDialogAnoYes textDialogVybral jste "Zlohovat obsah zdrojovho adresYe"<br>spole n s volbou 'Smazat soubory v cli'You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog2Poslat informace e-mailemeMail information textDialogluckyBackup luckyBackup textDialog ZruaitCancel winDialogHZadejte plnou cestu pYkazu cygpath*Enter the full path of the cygpath command winDialogFZadejte plnou cestu pYkazu dosdev)Enter the full path of the dosdev command winDialogZZadejte plnou cestu k adresYi s luckybackup0Enter the full path of the luckybackup directory winDialogDZadejte plnou cestu pYkazu rsync(Enter the full path of the rsync command winDialog@Zadejte plnou cestu pYkazu ssh&Enter the full path of the ssh command winDialogfZadejte plnou cestu k adresYi s do asnmi soubory.Enter the full path of the temporary directory winDialogRZadejte plnou cestu k adresYi s vshadow,Enter the full path of the vshadow directory winDialog6Spustiteln soubory (*.exe)Executable Files (*.exe) winDialogOKOkay winDialog*Vybrat pYkaz cygpathSelect cygpath command winDialog(Vybrat pYkaz dosdevSelect dosdev command winDialog&Vybrat pYkaz rsyncSelect rsync command winDialog"Vybrat pYkaz sshSelect ssh command winDialog,Pou~t vchoz hodnotuUse default value winDialog Prochzet mstnbrowse locally winDialogcygpath:cygpath: winDialog Prohlaen cestydeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialogHlavn adresY: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog8AdresY s do asnmi soubory: temp dir: winDialog AdresY vshadow: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_nl.ts0000666000175000017500000071152113165410113021502 0ustar luckybluckyb CalcDiffThread Scanning destination Bestemmingsmap inlezen Please wait Even geduld Scanning snapshot Snapshot inlezen Scanning source Bronmap inlezen Calculating differences Verschillen berekenen Sync dir A & B differences Verschillen tussen map A en B synchroniseren Snapshot and source differences Verschillen tussen shapshot en bronmap Sync dir B data that also exists at sync dir A and is different Synchroniseer map B data die ook voorkomen in map A maar verschillen Snapshot data that also exists at the source and is different Snapshot van data die ook voorkomen in de bronmap maar verschillen The snapshot data will replace the source data during RESTORE De snapshotdata overschrijven de bronmapdata tijdens HERSTEL Data amount is huge. Displaying only first entries Zeer veel data. Alleen de eerste regels worden getoond Sync dir B data that do NOT exist at sync dir A Synchroniseer data in map B die NIET voorkomen in map A Snapshot data that do NOT exist at the source Snapshotdata die NIET voorkomen in de bronmap These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Dit wordt overschreven in de bronmap tijdens HERSTEL Sync dir A data that do NOT exist at sync dir B Synchroniseer data in map A die NIET voorkomen in map B Source data that do NOT exist at the snapshot Bronmapdata die NIET voorkomen in het snapshot These will be deleted during RESTORE only if you enable the option: Dit wordt verwijderd tijdens HERSTEL, maar alleen met deze optie: delete existing source data that do not exist at the backup Verwijder bestaande data die niet voorkomen in de backup QObject The task list is empty De takenlijst is leeg nothing to start niets om te starten You have included both of the following connected tasks: Je hebt beide volgende gekoppelde taken ingevoegd: this is not allowed for obvious reasons om voor de hand liggende redenen is dit niet toegestaan Please <b>uncheck appropriate include boxes</b> before proceeding <b>Verwijder vinkjes bij</b> relevante insluitings-keuzevakjes voor je verdergaat You have not included any tasks Je hebt geen taken ingevoegd The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Deze ingesloten taken <b>hebben dezelfde bestemmingsmap</b> (samen of als groep) en tenminste één ervan maakt een backup van de inhoud van een map this will lead to one task canceling the other dit laat een taak annuleren door een andere taak Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Verwijder vinkjes bij relevante insluitings-keuzevakjes OF verander alle taken in een ander soort dan '<b>Maak backup van mapinhoud</b>' OF gebruik 'Maak backup van mapinhoud' samen met de '<b>Uitsluitend insluiten</b>'-optie, voor je verdergaat pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting opdracht vooraf starting Full phrase: pre-task execution of command: <COMMAND> starting wordt uitgevoerd Command re-run due to failure This means that a specific command is run for once more because it failed the first time Opdracht opnieuw uitgevoerd vanwege een fout post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting opdracht achteraf starting Full phrase: post-task execution of command: <COMMAND> starting wordt uitgevoerd execution of task Full phrase: execution of task: <TASKNAME> starting de taak starting Full phrase: execution of task: <TASKNAME> starting wordt uitgevoerd Source Full phrase: source: <SOURCE_NAME Bronmap Destination Full phrase: Destination: <DEST_NAME Bestemmingsmap execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting eerste deel van de taak starting Full phrase: execution of 1st part of task: <TASKNAME> starting wordt uitgevoerd Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Bezig met synchroniseren van to Full phrase: Syncing <DIR-A> to <DIR-B> met execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting tweede deel van de taak starting Full phrase: execution of 2nd part of task: <TASKNAME> starting wordt uitgevoerd Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Bezig met synchroniseren van to Full phrase: Syncing <DIR-B> to <DIR-A> met pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished opdracht vooraf finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished is voltooid post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished opdracht achteraf finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished is voltooid execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished eerste deel van de taak finished Full phrase: execution of 1st part of task: <TASKNAME> finished is voltooid execution of task Full phrase: execution of task: <TASKNAME> finished de taak finished Full phrase: execution of task: <TASKNAME> finished is voltooid execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error de taak finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error is afgebroken vanwege een fout in een opdracht vooraf of achteraf The process reported an error Het proces gaf een foutmelding Backing-up profile, logfiles and snapshot data Profiel van backup, logbestanden en snapshotdata Could not open the logfile Kon het logbestand niet openen The logfile does not exist Het logbestand bestaat niet The specified command is probably not installed De gegeven opdracht is waarschijnlijk niet beschikbaar The logfile could not be created Het logbestand kon niet worden aangemaakt command: opdracht exit code: foutcode: output: uitvoer: Last execution time Voor het laatst uitgevoerd not available niet beschikbaar no errors geen fouten errors found fouten gevonden status status OK OK Sync directory Synchronisatiemap Source directory Bronmap Using remote, check is skipped Bij synchroniseren op afstand geen gegevenscontrole Destination directory Bestemmingsmap free as in free disk space vrij WARNING WAARSCHUWING I do not have the permission to read/enter sync directory A Ik heb geen permissie om map A te lezen/openen I do not have the permission to read/enter the source directory Ik heb geen permissie om de bronmap te lezen/openen I do not have the permission to read/enter sync directory B Ik heb geen permissie om map B te lezen/openen I do not have the permission to read/enter the destination directory Ik heb geen permissie om de bestemmingsmap te lezen/openen Directory Map and/or en/of does not exist bestaat niet is not mounted is niet aangekoppeld is empty or does not exist is leeg of bestaat niet I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Ik zal deze taak <font color=red><b>NIET OVERSLAAN</b></font>, omdat je de optie 'negeer WAARSCHUWING' hebt ingeschakeld This task will be <font color=red><b>skipped</b></font> Deze taak wordt <font color=red><b>overgeslagen</b></font> CRITICAL KRITIEK is empty is leeg I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Ik zal deze taak <font color=red><b>NIET OVERSLAAN</b></font>. Synchronisatie wordt in ieder geval uitgevoerd This task will <font color=orange><b>not be skipped Deze taak wordt <font color=orange><b>niet overgeslagen The Destination Directory will be created if it doesn't exist and filled with new backup data De bestemmingsmap zal worden aangemaakt als die niet bestaat en worden gevuld met nieuwe backupdata Task description Taakbeschrijving ReadLogFile Could not locate the logfile Could not open the logfile Kon het logbestand niet openen aboutDialog using Qt4 gebaseerd op Qt4 Backup & Sync Application Backup- en synchroniseertoepassing Loukas Avgeriou Loukas Avgeriou It 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. Het is verspreid in de hoop dat het bruikbaar is, maar ZONDER ENIGE GARANTIE; zelfs zonder de impliciete garantie van VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL. See the 'License Agreement' tab for more details. Zie de tab 'Licentieovereenkomst' voor meer details. Athens, Greece Athene, Griekenland Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Arch Linux package/pkgbuild official maintainer (AUR) Valuable advisor Gewaardeerd adviseur Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor RPM packager, gewaardeerd tester en remote connections-adviseur Patrick Matthaei Patrick Matthaei Debian package maintainer Debian package maintainer Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Griekse GUI-vertaler en gewaardeerd tester The indifex team Het indifex-team for developing the wonderful transifex localization platform and providing it for free voor het ontwikkelen en vrij beschikbaar maken van het schitterende transifex lokalisatieplatform. Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE package maintainer (KDE4 Community-repository) en gewaardeerd package-adviseur Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis package maintainer (Community-repository) & Spaanse GUI-vertaler Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Ubuntu package maintainer (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows port naar MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Bijdrager van code voor remote & vss support vor de Windows-port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port naar Mac OS X Elbert Pol Elbert Pol port to OS/2 port naar OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild maintainer Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy pet & SFS maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva package maintainer (officieel Contrib-repository) Michael J Gruber Michael J Gruber Jason E. Hale Jason E Hale Free BSD package maintainer Free BSD package maintainer Dimitris Jemos Dimitris Jemos Slackel package maintainer Slackel package maintainer ex Fedora package maintainer ex-Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Tsjechische GUI-vertaler Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Vertaler van de Griekse handleiding German gui translator Duitse GUI-vertaler Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portugese GUI-vertaler Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Franse GUI-vertaler en gewaardeerd package-adviseur (en niet alleen dat) Raffaele Raffaele Italian gui translator Italiaanse GUI-vertaler using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Russische GUI-vertaler en gewaardeerd tester Kenny Verstraete Marien Grashoff Dutch gui translator Nederlandse GUI-vertaler Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Bosnische GUI-vertaler en Mandriva package maintainer Majed Sahli Majed Sahli Arabic gui translator Arabische GUI-vertaler Adrian Murariu Adrian Murariu Romanian gui translator Roemeense GUI-vertaler Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v.0.3 GUI-ontwerper fri13 fri13 v.0.3 gui designer v.0.3 GUI-ontwerper Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Als het niet door hem en zijn tutorials kwam, zou ik nooit aan dit project begonnen zijn. Thomas Glatt Thomas Glatt French gui translator Franse GUI-vertaler Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Spaanse GUI-vertaler Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Zweedse GUI-vertaler Catalan gui translator Catalaanse GUI-vertaler Slovak gui translator Slowaakse GUI-vertaler Rivo Zangov Rivo Zangov Estonian gui translator Estische GUI-vertaler Nicolay Boychev Nicolay Boychev Bulgarian gui translator Bulgaarse GUI-vertaler Manuel Meixide Manuel Meixide Galician gui translator Galicische GUI-vertaler Roger Foss Roger Foss Norwegian gui translator Noorse GUI-vertaler Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Taiwanees-Chinese GUI-vertaler Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Bijzondere gast-bugkiller ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Gewaardeerde tester en brainstormspecialist Yuri Vidal Yuri Vidal backupwhenidle python script developer BackupWhenIdle Python-scriptontwikkelaar Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester Gewaardeerde OS/2- en Windows-tester ...to all users of the ...aan alle gebruikers van de forums for their support. forums voor hun ondersteuning. Especially In het bijzonder that contributed to this project one way or another die op één of andere manier bijgedragen hebben aan dit project. Last but no least Als laatste maar niet als minste Could not locate the license file Kon het licentiebestand niet vinden. no money Geen geld If you like this app and would like to donate something to me personally, all you have to do is: Als dit programma je bevalt en je mij graag persoonlijk iets zou willen geven, is alles wat je hoeft te doen dit: Give a thumbs up at: geef een 'thumbs up' op: Vote good & become a fan at: stem 'goed' en wordt een fan op: This is my reward :) Dat is mijn beloning :) money Geld I personally never had and never will accept money for this project. Ik heb persoonlijk nooit geld geaccepteerd en zal nooit geld accepteren voor dit project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Desalniettemin heb ik besloten luckyBackup te gebruiken om mensen te ondersteunen die echt financiële hulp nodig hebben. So, please consider it seriously to donate money that will eventually be used for a good cause. Overweeg daarom eens serieus om geld te doneren dat uiteindelijk zal worden gebruikt voor een goed doel. donation link Donatielink luckyBackup - about luckyBackup - Over close sluiten &About &Over <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support O&ndersteuning A&uthor A&uteur &Thanks to &Met dank aan &License Agreement &Licentieovereenkomst luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup wordt gedistribueerd onder de voorwaarden van de <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>. It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Het is <b>vrije software</b>: je kan het herdistributeren en/of wijzigen onder de voorwaarden van de GNU General Public License zoals gepubliceerd door de Free Software Foundation, versie 3 van de licentie. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora package maintainer (officieel repository) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Sloveense GUI-vertaler E. Hakan Duran E. Hakan Duran Turkish gui translator Turkse GUI-vertaler Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Slackware package maintainer (SlackBuilds-repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...mijn betere helft, <b>Dimitra</b> die het met mij heeft volgehouden al die tijd dat dit project al duurt. emailDialog luckyBackup - email luckyBackup - E-mail Email a report after profile execution E-mail een rapport na uitvoering van een profiel command: opdracht: Use default This means "use the default value for this field" Gebruik standaard Arguments Argumenten %f from: %f van: Enter the sender of the message Geef de afzender van het bericht %l logfile %l logbestand %c logfile.tar.gz %c logbestand.tar.gz %d date %d datum %i time %i tijd %p profile name %p profielnaam %e No of errors %e aantal fouten If unchecked "TLS auto" is used. Only available for sendemail Indien niet geselecteerd wordt 'TLS auto' gebruikt. Alleen voor sendemail Disable TLS TLS uitschakelen %t to: %t aan: Enter the recipient of the message Geef de ontvanger van het bericht %s subject: %c onderwerp Enter the subject of the message Geef het onderwerp van het bericht %v smtp server: %v SMTP-server Enter the smtp server used to send the message Geef de SMTP-server om het bericht mee te versturen %b body: %b inhoud: Enter the body of the message Geef de inhoud van het bericht Send an email right now to test the provided arguments Verstuur nu een bericht om de gegeven argumenten te testen Test Testen Accept changes and close dialog Wijzigingen aanvaarden en venster sluiten Okay OK Close dialog Venster sluiten Cancel Annuleren Specify the conditions to send an email Specifieer de voorwaarden om een bericht te versturen Enter the command to run eg sendemail Geef een opdracht om uit te voeren bv. sendemail arguments: argumenten: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Geef argumenten voor de email-opdracht bv. -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Voorwaarden Only send when error(s) occurred during a run Alleen versturen bij fout(en) tijdens uitvoering Error(s) occurred Fout(en) opgetreden Only send when profile is scheduled to run Alleen versturen als profiel in tijdschema staat Profile is scheduled Profiel staat in tijdschema Never send an email Nooit een bericht versturen Never Nooit The command field is empty De opdrachtregel is leeg helpBrowser luckyBackup - help luckyBackup - Hulp manual/ handleiding/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - Voortgang van de taak <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error vorige fout next error volgende fout close sluiten loading logfile... laden van logbestand... wait wachten luckyBackupWindow commands output output window label uitvoer van opdrachten rsync and pre/post task commands output is displayed here tooltip uitvoer van rsync en opdrachten vooraf/achteraf wordt hier getoond Task list task list label Takenlijst List of all the available tasks task list tooltip - line1 Lijst van alle beschikbare taken Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Gebruik de keuzevelden 'insluiten' om een taak in te sluiten of niet Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Uitvoering van profiel finished full phrase: 'Execution of profile <PROFILENAME> finished' is voltooid simulation mode simulatiemodus Could not update last execution time of tasks Kon de tijd voor het uitvoeren van taken niet bijwerken Last execution time of tasks updated Tijd voor het uitvoeren van taken bijgewerkt &Abort &Afbreken &Minimize to tray tray menu action &Minimaliseren naar systeemvak &Restore tray menu action &Herstellen execution of profile: tray message - execution of profile: <PROFILENAME> in progress... profiel in progress... tray message - execution of profile: <PROFILENAME> in progress... wordt uitgevoerd... Removed all older snapshots data Alle oude snapshotdata zijn verwijderd failed to remove all older snapshots data verwijderen van alle oude snapshotdata is mislukt Unknown error Onbekende fout Elapsed time Verstreken tijd pre-task execution of command opdracht vooraf wordt uitgevoerd post-task execution of command opdracht achteraf wordt uitgevoerd Now performing task Nu bezig met de taak Directory Map calculating wordt berekend deleting files bestanden worden verwijderd Total files transferred trying to send an email proberen bericht te versturen The system will shutdown in 1 minute Computer wordt over 1 minuut uitgeschakeld Source Bronmap Destination Bestemmingsmap All tasks completed Alle taken voltooid No errors found Geen fouten gevonden errors found fouten gevonden logfile(s) have been created under directory: logbestand(en) zijn aangemaakt in de map: Done Gereed execution of profile: uitvoering van profiel: finished voltooid Execution of tasks were terminated violently by user Uitvoering van taken werd abrupt afgebroken door gebruiker &Profile This is a top menu item &Profiel &Settings This is a top menu item &Instellingen &Language This is a top menu item &Taal &Help This is a top menu item &Hulp &Handbook full phrase: 'luckyBackup Handbook' &Handleiding &About full phrase: 'about luckyBackup' &Over current profile huidig profiel include label of 'include' checkboxes insluiten Move the highlighted task up, by one position button tooltip De geselecteerde taak één positie naar boven verplaatsen Move the highlighted task down, by one position button tooltip De geselecteerde taak één positie naar beneden verplaatsen jump to next error button tooltip ga naar volgende fout jump to previous error button tooltip ga naar vorige fout Task task groupbox (add, remove, modify buttons) label Taak add add task button label toevoegen add task add task button tooltip taak toevoegen remove remove task button label verwijderen remove highlighted task remove task button tooltip verwijder geselecteerde taak modify modify task button label aanpassen modify highlighted task modify task button tooltip geselecteerde taak wijzigen Begin the execution of all included tasks start button tooltip Begin met het uitvoeren van alle ingesloten taken NOTE simulation checkbox tooltip - line2 NOOT Progressbar update will not be realistic simulation checkbox tooltip - line2 Voortgangsbalk is slechts indicatief Information window information window title Informatievenster Exit exit button tooltip. full phrase is: 'exit luckybackup' Afsluiten van EXIT EXIT button label AFSLUITEN minimize to tray minimaliseren naar systeemvak minimizes the window to the tray area minimaliseert het venster naar het systeemvak F1 F1 English Nederlands &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Je hebt gevraagd om een HERSTEL-taak aan te maken Please have a good look at the following task properties dialog 'create restore' message line 2/4 Kijk zorgvuldig naar het volgende taakeigenschappenvenster and change anything you wish before proceeding 'create restore' message line 3/4 en wijzig alles naar keuze voordat je verdergaat Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Controleer in het bijzonder de keuzevakjes 'taaknaam', 'bronmap', 'bestemmingsmap' en 'nieuwere bestemmingsbestanden overslaan' (knop 'Geavanceeerd') ERROR FOUT loading default profile ... information window message laden standaardprofiel... loading profile ... information window message laden profiel... loading failed information window message laden mislukt Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Kan het profiel niet openen is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y is ongeldig voor version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versie: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profiel loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' is met succes geladen scheduled this refers to a profile in tijdschema YES JA NO NEE Description Beschrijving saving default profile ... Information window message standaardprofiel wordt opgeslagen... saving profile ... Information window message profiel wordt opgeslagen... WARNING WAARSCHUWING default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. standaardprofiel profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profiel profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profiel saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' is met succes opgeslagen creating default profile ... Information window message standaardprofiel wordt aangemaakt... creating profile ... Information window message profiel wordt aangemaakt... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profiel created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' is met succes aangemaakt Would you like to save it before proceeding ? Wil je dit opslaan voordat je verdergaat? Would you like to proceed anyway? Wil je toch verdergaan? super user super user is the root user root (administrator) super user mode rootmodus Welcome to full phrase: 'Welcome to luckyBackup' Welkom bij English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Nederlands Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Fout bij maken van nieuw profiel The name you have entered contains only invalid characters De naam die je hebt gegeven bevat alleen ongeldige tekens Profile full phrase: 'Profile <PROFILENAME> already exists' Profiel already exists full phrase: 'Profile <PROFILENAME> already exists' bestaat reeds Would you like to replace it ? Wil je dit vervangen? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Fout bij vervangen van profiel Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Fout bij hernoemen van profiel profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profiel renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' is met succes hernoemd naar default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. standaardprofiel renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' is met succes hernoemd naar All relevant files (logs etc) have also been updated Alle relevante bestanden (logs etc.) zijn ook met succes bijgewerkt Failed to update all relevant files (logs etc) Fout bij het bijwerken van alle relevante bestanden (logs etc.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Weet je zeker dat je wilt doorgaan met het verwijderen van het standaardprofiel a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' (een blanco profiel, met dezelfde naam, zal worden aangemaakt) Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Weet je zeker dat je wilt doorgaan met het verwijderen van het profiel Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Fout bij verwijderen van profiel Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profiel deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' met succes verwijderd All relevant files (logs etc) have also been deleted Alle relevante bestanden (logs etc.) zijn ook verwijderd Failed to delete all relevant files (logs etc) Fout bij het verwijderen van alle relevante bestanden (logs etc.) Profile full phrase: 'Profile <PROFILENAME> set as default' Profiel set as default full phrase: 'Profile <PROFILENAME> set as default' als standaard ingesteld All relevant files (logs etc) have also been duplicated Alle relevante bestanden (logs etc.) zijn ook gedupliceerd Failed to duplicate all relevant files (logs etc) Fout bij het dupliceren van alle relevante bestanden (logs etc.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' De beschrijving van het profiel set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' ingesteld als Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Profiel importeren Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Fout bij importeren van profiel Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profiel imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' is met succes geïmporteerd as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' als and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' en toegevoegd aan de profiellijst Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Fout bij het vinden van bestand You have reached the maximum limit of supported tasks Je hebt het maximum van ondersteunde taken bereikt You have to remove a task if you wish to add another !! Je moet een taak verwijderen als je een andere wilt toevoegen! Select export directory this is a dialog title for selecting a directory to export a profile to Selecteer een map voor exporteren Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Fout bij exporteren van profiel to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' naar Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profiel exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' met succes geëxporteerd naar The directory you have selected does not contain valid profile data De map die je hebt geselecteerd bevat geen geldige profieldata Errors occurred during snapshots and logfiles transfer Fouten traden op bij het verzenden van snapshots en logbestanden Errors occurred during snapshots transfer Fouten traden op bij het verzenden van snapshots Errors occurred during logfiles transfer Fouten traden op bij het verzenden van logbestanden Errors occurred during the profile file transfer Fouten traden op bij het verzenden van het profielbestand Please select a task to modify first Selecteer eerst een taak om te wijzigen Please select a task to remove first Selecteer eerst een taak om te verwijderen Are you sure you want to remove the following task ?? Weet je zeker dat je de volgende taak wilt verwijderen? Would you like to also remove: Wil je dit ook verwijderen: Please select a task to manage first Selecteer eerst een taak om te beheren nothing to do niets te doen current crontab <font color=green>updated successfully huidige crontab <font color=green>met success bijgewerkt Email preferences have been <font color=green>updated successfully e-mailvoorkeuren <font color=green>met succes bijgewerkt status status NOT INCLUDED NIET INGESLOTEN Checks are disabled. This task will be <b>skipped</b> Uitgevinkt. Deze taak zal worden <b>overgeslagen</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Takenlijst van profiel and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' en 'profiel'-keuzelijst refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' zijn vernieuwd luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informatievenster CheckBox Keuzevakje <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profiel Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Wordt afgebroken: wacht tot alle processen zijn gestopt Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Bezig met verwijderen van oude snapshots en logbestanden van de taak Removing Bezig met verwijderen failed to remove verwijderen mislukt Failed to start this refers to a process Starten mislukt Crashed this refers to a process Gecrashed Timed out this refers to a process Tijd verstreken Write error this refers to a process Schrijffout Read error this refers to a process Leesfout Unknown error this refers to a process Onbekende fout calculating info message displayed during ...calculations bezig met berekenen transferring files info message displayed during ...file transfers bezig met bestanden verplaatsen deleting files info message displayed during ...file deletions bezig met bestanden verwijderen transferring files bezig met bestanden verzenden Total files transfered Aantal verzonden bestanden ABORTED AFGEBROKEN &Refresh This is a top 'Profile' menu action &Vernieuwen De&fault This is a top 'Profile' menu action &Standaard Set as Default This is a top 'Profile' menu action tooltip Als standaard instellen &View/Edit Description This is a top 'Profile' menu action Beschrijving &zien/bewerken View/Edit the profile description This is a top 'Profile' menu action tooltip Profielbeschrijving zien/bewerken R&ename This is a top 'Profile' menu action &Hernoemen &Delete This is a top 'Profile' menu action Wi&ssen &New This is a top 'Profile' menu action &Nieuw &Save This is a top 'Profile' menu action &Opslaan E&xport This is a top 'Profile' menu action E&xporteren &Import This is a top 'Profile' menu action &Importeren S&chedule This is a top 'Profile' menu action Taak&planner E&mail This is a top 'Profile' menu action E-&mail Email report after profile execution This is a top 'Profile' menu action tooltip E-mailrapport na uitvoeren van profiel &Quit This is a top 'Profile' menu action A&fsluiten D&uplicate This is a top 'Profile' menu action D&uplicaat &Task This is a top menu action &Taak &Add This is a top 'Task' menu action T&oevoegen &Remove This is a top 'Task' menu action Ve&rwijderen &Modify This is a top 'Task' menu action &Wijzigen Create D&uplicate task This is a top 'Task' menu action Maak d&uplicaattaak aan Create R&estore task This is a top 'Task' menu action Maak h&ersteltaak aan Manage &Backup This is a top 'Task' menu action &Backup beheren display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip toon - herstel - verwijder bestaande backups van geselecteerde taken Actions This is a top menu action Acties Current Profile This is a top menu action Huidig profiel Lock This is a top menu action. Refers to toolbars Vergrendelen Show text under icons This is a top menu action Tekst tonen onder pictogrammen &Toolbars This is a top menu item Werkbal&ken Set paths This is a top menu action Paden instellen Set paths for rsync and ssh commands This is a top menu action tooltip Paden instellen voor rsync- en ssh-opdrachten quiet mode stille modus Only show errors and important messages during window update Toon alleen fouten en belangrijke berichten tijdens bijwerken venster Run start button label Uitvoeren Abort Abort button label Afbreken Stop the execution of running tasks NOW Abort button tooltip Stop het uitvoeren van actieve taken NU Execution of tasks finished Done button tooltip Uitvoeren van taken voltooid Dry simulation checkbox label. Translate this as 'simulation' Simulatie This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Dit zal een <b>simulatie</b> uitvoeren die geen wijzigingen aanbrengt (en vrijwel dezelfde uitvoer oplevert als een echte actie) shutdown shutdown button label afsluiten Press down to shutdown the system when done shutdown button tooltip Indrukken om computer af te sluiten indien gereed Hide information window show/hide information window button tooltip Informatievenster verbergen Show information window show/hide information window button tooltip Informatievenster tonen profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profiel The task list is empty De takenlijst is leeg Use the "add" button on the right to get started Please keep the add word inside quotes Gebruik de knop 'toevoegen' rechts om te beginnen could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' kon niet worden opgeslagen. default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. standaardprofiel could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' kon niet worden aangemaakt. Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profiel is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' is gewijzigd. Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profiel could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' kon niet worden opgeslagen. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profiel Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Fout bij dupliceren van profiel Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Fout bij dupliceren van profiel as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' als Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profiel duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' met succes gedupliceerd als Please select a task to duplicate first Selecteer eerst een taak om te dupliceren Please select a task first Selecteer eerst een taak Hide information window hide/show information window button tooltip Informatievenster verbergen Show information window hide/show information window button tooltip Informatievenster tonen You have only included tasks that are going to be skipped Je hebt alleen taken opgegeven die worden overgeslagen Manage Task This is a top 'Task' menu action Taak beheren display information regarding highlighted task This is a top 'Task' menu action tooltip Toon informatie over de geslecteerde taak &Task &Taak Successfully created destination directory Bestemmingsmap met succes aangemaakt Failed to create destination directory Fout bij aanmaken van bestemmingsmap manageDialog profile profiel task taak Delete Verwijderen Restore Herstellen view log logbestand zien destination: bestemmingsmap: source: bronmap: hide source bronmap verbergen Close this window Dit venster sluiten Close Sluiten Please select a snapshot from the list Information message Selecteer een snapshot van de lijst This directory does not exist Deze map bestaat niet This directory does not exist Information message Deze map bestaat niet I do not have sufficient permissions to read this directory Information message Er zijn onvoldoende permissies om deze map te lezen sync dir A full phrase: sync dir a: <DIRECTORY_A> synchroniseer map A sync dir B full phrase: sync dir a: <DIRECTORY_b> synchroniseer map B View the logfile of the selected sync task 'view log' pushbutton tooltip Bekijk het logbestand van de geselecteerde synchronisatietaak Please wait until the thread is terminated Wacht tot de reeks is afgesloten STOP STOP Stop calculations NOW Stop het berekenen NU Calculations terminated by user Berekenen afgesloten door gebruiker not available refers to a date-time niet beschikbaar luckyBackup - manage backup luckyBackup - Backup beheren Delete the selected snapshot and its logfile Verwijder het geselecteerde snapshot en de logbestanden Restore the selected snapshot Herstel het geselecteerde snapshot View the logfile of the selected snapshot Bekijk het logbestand van het geselecteerde snapshot Calculate the differences between the source and the selected snapshot Bereken de verschillen tussen de bronmap en het geselecteerde snapshot Calculate differences Bereken verschillen manageWizard not available refers to a date-time niet beschikbaar Delete backup this is the title of a wizard Backup verwijderen Date & time simple label of the wizard gui Datum en tijd Path ...is a directory path Pad WARNING WAARSCHUWING You are about to delete backup data information message - line1 Je staat op het punt backupdata te verwijderen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Als de bovenstaande informatie correct is, klik dan op <b>start</b> om te beginnen Restore backup this is the title of a wizard Backup herstellen Backup path ...is the backup directory path Backuppad close sluiten Deleting snapshot logfile info message displayed during ...logfile deletion Bezig met verwijderen van snapshotlogbestand Updating list of snapshots info message displayed during ...snaps list update Lijst van snapshots aan het bijwerken Aborted Afgebroken Finished Voltooid simulation simulatie no errors geen fouten errors found fouten gevonden Restoring data: main trunk info message displayed during ...data restoration Bezig data te herstellen: hoofddeel Restoring data: snapshot files info message displayed during ...data restoration Bezig data te herstellen: snapshotbestanden Deleting data info message displayed during ...data deletion Bezig met verwijderen van data luckyBackup - manage backup luckyBackup - Backup beheren Jump to previous error Ga naar vorige fout previous error vorige fout Jump to next error Ga naar volgende fout next error volgende fout This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Dit zal een <b>simulatie</b> uitvoeren die geen wijzigingen aanbrengt (en die vrijwel dezelfde uitvoer geeft als een echte actie) start start ABORT AFBREKEN cancel annuleren The restore directory will become identical to the backup snapshot De herstelmap zal identiek zijn aan het backupsnapshot Existing backup files will replace the corresponding files at the restore directory information message - line1. Bestaande backupbestanden zullen de corresponderende bestanden in de herstelmap vervangen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Als de bovenstaande informatie correct is, klik dan op <b>start</b> om te beginnen success info message displayed after ...logfile deletion geslaagd failed info message displayed after ...logfile deletion mislukt Deleting file that lists snapshot changes info message displayed during ...file deletion Lijst met snapshotwijzigingen wordt verwijderd success info message displayed after ...file deletion geslaagd failed info message displayed after ...file deletion mislukt success info message displayed after ...snapshots list update geslaagd Select new restore directory directory selection dialog title Selecteer nieuwe herstelmap Restore path ...is the restore directory path herstelpad No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Geen specifieke snapshotdata gevonden. Overslaan... Check this, to clone the backup snapshot to the restore directory. Vink dit aan om het backupsnapshot te klonen naar de herstelmap. Delete existing data that do not exist at the backup Verwijder bestaande data die niet voorkomen in de backup Browse locally for a new restore path Lokaal bladeren voor een nieuw herstelpad change verander <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple eenvoudig advanced geavanceerd Task name Taaknaam Destination Bestemmingsmap Source Bronmap Task properties Taakeigenschappen Enter a name for this task (eg "Backup my home directory") Geef een naam voor deze taak (bv. 'Backup mijn Homemap') Name : Naam: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definieer het type voor deze taak: 1. Maak een backup van de inhoud van de bronmap in de bestemmingsmap 2. Maak een backup van de bronmap op naam in de bestemmingsmap 3. Synchroniseer bronmap en bestemmingsmap, waarbij de meest recente bestanden in beide worden bewaard Type : Type: Synchronize Source and Destination Synchroniseer bronmap en bestemmingsmap Enter the full path of the source directory (eg /home/luckyb/) Geef het volledige pad van de bronmap op (bv. /home/luckyb/) Source : Bronmap: browse localy lokaal bladeren Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Geef het volledige pad van de bestemmingsmap op (bv. /media/backups/SiduxHome/) Destination : Bestemmingsmap: eg -C4c arcfour,blowfish-cbc bv. -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Met deze optie zal rsync numerieke groep- en gebruiker-ID's verzenden in plaats van gebruiker- en groepnamen, en die aan beide zijden mappen (--numeric-ids) Use numeric group and user IDs Gebruik numerieke groep- en gebruiker-ID's This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Dit vertelt de ontvangende zijde om root-acties te proberen, zelfs als de ontvangende rsync niet door root uitgevoerd wordt. Deze acties omvatten: gebruikers bewaren via de '--owner'-optie; alle groepen bewaren (niet alleen de huidige gebruikers groepen) via de '--groups'-optie; en apparaten kopiëren via de '--devices'-optie. (--super) Attempt super-user activities Probeer rootacties Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Probeer geopende bestanden op Windows-systemen te backuppen met vss (alleen op Windows 2000 en hoger) (-vss) Backup open files Backup geopende bestanden Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Herstel gebackupte Windows-permissies aanwezig in NT-streams (--restore-nt-streams) Repeat any command that fails, x times Herhaal elke mislukte opdracht, x maal Repeat on fail: Herhaal bij fout: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Vink dit aan om de bronmap te klonen naar de bestemmingsmap. Vink dit NIET aan om een extra map aan te maken in de bestemmingsmap Do NOT create extra directory Maak GEEN extra map aan Advanced Geavanceerd Shows the rsync command as it will be executed Toont de rsync-opdracht zoals die zal worden uitgevoerd validate valideer Okay OK Cancel Annuleren Exclude Uitsluiten Add any directory, file or pattern to be excluded from this task Voeg een map, bestand of patroon toe om uitgesloten te worden van deze taak Templates Sjablonen Exclude all temp folders (**/*tmp*/) Sluit alle temp-mappen uit (**/*tmp*/) Temporary folders Tijdelijke mappen Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Sluit aankoppelmappen /mnt en /media uit (/mnt/*/**, /media/*/**) System mount folders Aankoppelmappen Exclude all backup files & folders (**~) Sluit alle backupbestanden en -mappen uit (**~) Backup files Backupbestanden System folders Systeemmappen Exclude all cache folders (**/*cache*/ & **/*Cache*/) Sluit alle cachemappen uit (**/*cache*/ & **/*Cache*/) Cache folders Cachemappen Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Sluit alle prullenbakken van de gebruiker uit (**/*Trash*/, **/*trash*/) Trash Prullenbak Exclude all "lost+found" folders (**/lost+found*/) Sluit alle 'lost+found'-mappen uit (**/lost+found*/) lost+found lost+found User Defined Door gebruiker opgegeven Add exclusion as entered in the next field Uitsluiting toevoegen zoals aangegeven in het volgende veld add toevoegen Exclude list Uitsluitingslijst Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Voer hier een bestand, map of patroon in en klik op de knop 'toevoegen' om toe te voegen aan de uitsluitingslijst * - staat voor elke niet-lege component (stopt bij slashes) ** - staat voor alles, inclusief slashes ? - staat voor elk teken uitgezonderd een slash trailing dir_name/*** - staat voor de map met alles erin starting / - patroon is gekoppeld aan een specifieke plaats in the hiërarchie van de verzending (normaliter de bronmap) trailing / - staat voor de map alleen, zonder bestanden, symbolische links of apparaten Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Geef het type voor deze taak op: 1. Backup van bronmap binnen de bestemmingsmap (zie ook het keuzevakje 'Maak GEEN extra map aan') 2. Synchroniseer bronmap en bestemmingsmap en bewaar de meest recente bestanden in beide Backup Source inside Destination Backup van bronmap binnen bestemmingsmap Description Beschrijving Task description Taakbeschrijving Type a description of the task Geef een beschrijving van de taak Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Systeemmappen uitsluiten: /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Sluit alle '.gvfs'-mappen van de gebruiker uit (**/.gvfs/) launch the pattern editor open de patrooneditor Remove highlighted exclusion from list Verwijder geselecteerde uitsluiting van de lijst remove verwijderen Edit highlighted inclusion Bewerk geselecteerde insluiting edit bewerken Move highlighted inclusion up Verplaatst geselecteerde insluiting naar boven move up naar boven verplaatsen Move highlighted inclusion down Verplaats geselecteerde insluiting naar beneden move down naar beneden verplaatsen Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. ALLEEN deze lijst met patronen insluiten. Niets meer. Lees de handleiding voor een beter begrip van de inclusie-regels. Dit schakelt de optie 'Uitsluiten' uit. Only Include Alleen insluiten Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Voer hier een bestand, map of patroon in en klik op de knop 'toevoegen' om het toe te voegen aan de insluitingslijst * - staat voor elke niet-lege component (stopt bij slashes) ** - staat voor alles, inclusief slashes ? - staat voor elk teken uitgezonderd een slash trailing dir_name/*** - staat voor de map met alles erin starting / - patroon is gekoppeld aan een specifieke plaats in the hiërarchie van de verzending (normaliter de bronmap) trailing / - staat voor de map alleen, zonder bestanden, symbolische links of apparaten Add inclusion as entered in the next field Insluiting toevoegen zoals opgegeven in het volgende veld Include list Insluitingslijst Remove highlighted inclusion from list Verwijder geselecteerde insluiting van de lijst Remote Remote Use a remote host either for source or destination Gebruik een remote host voor bron- of bestemmingsmap Use remote host Gebruik remote host Use a remote host for destination data. Gebruik een remote host voor bestemmingsdata. destination bestemmingsmap Use a remote host for source data. Gebruik een remote host voor bronmapdata. source bronmap User: Gebruiker: Enter your username for the remote host (leave blank if not applicable). Geef je gebruikersnaam voor de remote host (leeg laten indien niet van toepassing). @Host: @Host: Enter the name of the remote host. Geef de naam van de remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Geef het volledige pad van het bestand met het rsync- (NIET het ssh-) authenticatie-wachtwoord (leeg laten indien niet van toepassing). rsync password file: rsync-wachtwoordbestand: Check this to connect to an rsync Remote module Vink dit aan om te verbinden met een rsync remote module Remote module Remote module Use ssh as transport shell Gebruik ssh als transportshell ssh ssh password: wachtwoord: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Geef het volledige pad van het bestand met de private ssh-authenticatiesleutel (leeg laten indien niet van toepassing) Vergeet niet dat alle acties voor een wachtwoordvrije ssh-verbinding een OpenSSH sleutelset vereisen private key file : Persoonlijke sleutelbestand: Enter the port you would like to use for the ssh connection (leave blank for default port) Geef de poort die je wilt gebruiken voor de ssh-verbinding (leeg laten voor standaardpoort) port : poort: Command Options Opdrachtopties Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Toevoegen of verwijderen van rsync-opties. Als je geen idee hebt wat dit betekent, blijf er dan vanaf! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Verwijder bestanden in de bestemmingsmap die niet voorkomen in de bronmap. Als 'Uitsluiten' wordt gebruikt, moet 'Recursief zoeken' aangevinkt zijn. (--delete-after & --delete-excluded) Copy device (super user only) & special files as they are (-D) Kopiëer apparaat (alleen root) en speciale bestanden zoals ze zijn (-D) Preserve device, special files Bewaar apparaat en speciale bestanden ongewijzigd Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Bestanden verbonden door harde links in de bronmap zullen ook in de bestemmingsmap met harde links verbonden zijn WAARSCHUWING: Alle bestanden moeten ingesloten zijn in de verzend-reeks! (-H) Preserve hard links Bewaar harde links ongewijzigd Delete files on the destination Verwijder bestanden in de bestemmingsmap Recurse into directories (-r) Recursief zoeken in mappen (-r) Recurse into directories Recursief zoeken in mappen Do not backup source files that are newer on the destination (--update) Maak geen backup van bronmapbestanden die nieuwer zijn in de bestemmingsmap (--update) Skip newer destination files Sla nieuwere bestemmingsmapbestanden over Preserve the owner (super user only), group & time stamp of files (-tgo) Bewaar eigenaar (alleen root), groep en tijdmerk van bestanden (-tgo) Preserve ownership, times Bewaar eigenaar en tijdmerk Preserve permissions of files (-p) Bewaar permissies van bestanden (-p) Preserve permissions Bewaar permissies Copy symlinks as symlinks (-l) Kopieer symbolische links als symbolische links (-l) Preserve symlinks Bewaar symbolische links Ignore files using a similar algorithm to CVS (-C) Negeer bestanden met een algoritme gelijksoortig aan CVS (-C) Ignore files the CVS way Negeer bestanden op de CVS-manier User defined Door gebruiker gedefinieerd Enter here an rsync option to add (eg "--delete-excluded", "-X") Geef hier een rsync-optie om toe te voegen (bv. '--delete-excluded', '-X') Extra rsync options list Lijst van extra rsync-opties Remove highlighted option from list Verwijder geselecteerde optie van de lijst Add rsync option as entered in the next field Voeg een rsync-optie toe als opgegeven in het volgende veld options list optielijst Also Execute Ook uitvoeren Execute extra commands, before or after the task. Extra opdrachten uitvoeren, voor of na de taak. Before Voor Enter here a command to be executed before the task and then press the "add" button to add it to the list below Geef hier een opdracht om uit te voeren voor de taak en klik dan op de knop 'toevoegen' om toe te voegen aan de lijst hieronder Add command as entered in the field beside Opdracht toevoegen zoals opgegeven in het veld hiernaast Command list Opdrachtenlijst Remove highlighted command from list Verwijder geselecteerde opdracht van de lijst Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing De taak uitvoeren ook al verschijnt er een WAARSCHUWING. Normaliter gebruikt wanneer 'vooraf uitvoeren'-opdrachten een waarschuwing kunnen herstellen (bv. aankoppelen van partities) LET OP: vink dit alleen aan als je echt weet wat je doet! by-pass WARNING negeer WAARSCHUWING After Na Enter here a command to be executed after the task and then press the "add" button to add it to the list below Geef hier een opdracht om uit te voeren na de taak en klik op de knop 'toevoegen' om toe te voegen aan de lijst hieronder Select source directory file selection dialog title Selecteer bronmap Select destination directory file selection dialog title Selecteer bestemmingsmap Select rsync password file file selection dialog title Selecteer rsync-wachtwoordbestand Select ssh keyfile file selection dialog title Selecteer ssh-sleutelbestand Select command to be executed file selection dialog title Selecteer opdracht om uit te voeren Select file to read include patterns file selection dialog title Selecteer bestand om insluitingspatronen te lezen Select file to read exclude patterns file selection dialog title Selecteer bestand om uitsluitingspatronen te lezen Please define the source before launching the pattern editor message box, message Definiëer de bronmap voor je de patrooneditor opent ERROR message box message FOUT Please specify the following before proceeding: message box, message Specifieer het volgende voor je verdergaat: ERROR message box message - line1 FOUT That is not allowed because '/' does not have an actual name message box message - line2 Dat is niet toegestaan omdat '/' geen echte naam heeft Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Laat dit aangevinkt om de uitvoering van een actieve taak te <b>STOPPEN</b> als deze opdracht eindigt met een fout use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated gebruik keuzevakjes om taakuitvoering te <b>STOPPEN</b> bij fout You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Je hebt de map '/' (root) tot bronmap gemaakt, maar NIET 'Maak GEEN extra map aan' aangevinkt Please check the relevant box before proceeding message box message - line3 Vink de relevante keuzevakjes aan voordat je verdergaat You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Je hebt de rootmap van een hele partitie tot bronmap gemaakt, maar NIET 'Maak GEEN extra map aan' aangevinkt That is not allowed because the root partition does not have an actual name message box message - line2 Dat is niet toegestaan omdat de rootpartitie geen echte naam heeft The name of the task you requested already exists message box message - line1 De naam van de taak die je opgaf bestaat reeds Please specify a different name before proceeding message box message - line2 Geef een andere naam voor je verdergaat The source you have declared is identical to the destination message box message - line1 De bronmap die je hebt opgegeven is identiek aan de bestemmingsmap Please modify at least one of them message box message - line2 Wijzig tenminste één van beide WARNING message box message - line1 WAARSCHUWING You have declared a destination that is part of the source directory structure message box message - line1 Je hebt een bestemming opgegeven die deel uitmaakt van de bronmapstructuur <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Vergeet niet</b> om bij 'Uitsluiten' een map te definiëren die de bestemmingsmap zal bevatten You have checked the 'delete files on the destination' option message box message - line2 Je hebt de optie 'verwijder bestanden in bestemmingsmap' aangevinkt without having checked 'Recurse into directories' which is required message box message - line3 zonder 'recursief zoeken' aangevinkt te hebben, wat vereist is 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Remote host' is aangevinkt, maar er is geen naam voor de remote host gegeven Please specify a remote host name message box message - line3 Geef een naam voor de remote host Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Of verwijder het vinkje bij 'remote host' om lokaal te werken All declared fields of the task properties window seem to be ok message box message first line Alle opgegeven velden van het taakeigenschappenvenster lijken OK Errors have been found message box message first line Er werden fouten gevonden command to be executed full phrase: command to be executed: <COMMAND> opdracht om uit te voeren You have already added this exclude item message box message Je hebt dit al toegevoegd bij 'uitsluiten' You have already added this include item message box message Je hebt dit al toegevoegd bij 'insluiten' You have already added this option message box message Je hebt deze optie al toegevoegd done gereed done editing gereed met bewerken cancel annuleren cancel editing bewerken annuleren Read exclude patterns from file Lees uitsluitingspatronen uit bestand Read file: Lees bestand: filename bestandsnaam browse bladeren ... ... Include Insluiten Add any directory, file or pattern to be included by this task Voeg een map, bestand of patroon toe om ingesloten te worden bij deze taak Include mode Insluitmodus Mode: Modus: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Sluit deze lijst van patronen niet uit. Lees de handleiding voor een beter begrip van de inclusie-regels. Normal Include Normaal insluiten Read include patterns from file Lees insluitingspatronen uit bestand browse locally lokaal bladeren additional options: extra opties: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Vink dit aan als je een FAT/NTFS-partitie als bestemmingsmap gebruikt. Eigenaar en permissies van de data worden NIET bewaard. (-t --modify-window=1) Destination is FAT/NTFS Bestemmingsmap is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Probeer geopende bestanden op Windows-systemen te backuppen met vss (alleen op Windows 2000 en hoger) (-vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Herstel permissies Set the total number of backup snapshots to keep Bepaal het aantal backupsnapshots om te bewaren Snapshots to keep: Snapshots om te bewaren: patternEditor directory : map: Select file Selecteer bestand Please choose a file within the source Kies een bestand in de bronmap Select directory Selecteer map Please choose a directory within the source Kies een map in de bronmap file : bestand: pattern editor patrooneditor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Vink dit aan om bovenstaande map te gebruiken als absoluut pad. Indien niet aangevinkt, staat het patroon voor elk bestand/map die voldoet aan de naamcriteria. Define here, what would you like the pattern to refer to Geef hier aan waar je wilt dat het patroon naar verwijst The pattern refers to a: Het patroon verwijst naar een: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Gebruik dit als het patroon verwijst naar een specifiek bestand, bv. '/media/muziek/album/song.mp3' Specific file Specifiek bestand Use this if the pattern refers to a specific directory eg "/media/music/Album/" Gebruik dit als het patroon verwijst naar een specifieke map, bv. '/media/muziek/album/' Specific directory Specifieke map Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Gebruik dit als het patroon verwijst naar een groep bestanden die iets gemeen hebben, bv. alle bestanden met de extensie '.txt' Set of files Groep bestanden Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Gebruik dit als het patroon verwijst naar een groep mappen die iets gemeen hebben, bv. alle mappen die 'temp' heten Set of directories Groep mappen name naam starts with : begint met: Enter here the starting characters of the name of the files/directories that the pattern refers to Geef hier de begintekens van de naam van de bestanden/mappen waarnaar het patroon verwijst ends with : eindigt met: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Geef hier de eindtekens van de naam van de bestanden/mappen waarnaar het patroon verwijst, bv. '.txt' om naar alle '.txt'-bestanden te verwijzen Enter here the name of the files/directories that the pattern refers to Geef hier de naam van de bestanden/mappen waarnaar het patroon verwijst is exactly : is exact: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Geef hier de tekens die voorkomen op een willekeurige positie in de naam van de bestanden/mappen waarnaar het patroon verwijst contains : bevat: browse localy for a file blader lokaal voor een bestand browse localy for a directory path blader lokaal voor een map use absolute path gebruik een absoluut pad Go deeper in path by : Ga dieper in pad met: Go deeper in path by any level Ga dieper in pad op elk niveau any elke Define here the name criteria for the files/directories to be matched Geef hier de naamcriteria voor de bestanden/mappen die vergeleken moeten worden final pattern definitief patroon The actual pattern is displayed here Het echte patroon wordt hier getoond Reset the pattern editor fields to the default values Reset de patrooneditorvelden naar de standaardwaardes reset reset Okay OK Cancel Annuleren Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Gebruik dit om te verwijzen naar dieperliggende submappen, bv.: De map '/media/muziek' bevat drie submappen: 1. Rock 2. Jazz 3. Soundtracks Om te verwijzen naar de inhoud van deze drie, definieer je dan het volgende: * Groep mappen * Mapinhoud * pad: /media/muziek/ * Ga dieper in pad met '1' Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Gebruik dit als het patroon verwijst naar de inhoud van een map (of een groep mappen), niet naar de map zelf, bv. de inhoud van de map '/media/music/Album' Directory contents Mapinhoud scheduleDialog Starting from scratch Beginnen met niets No schedules are declared !! Er zijn geen tijdschema's gemaakt! Unable to create schedule file Kan het tijdschema niet aanmaken You have reached the maximum limit of supported scheduled profiles Je hebt het maximum aantal tijdschema's voor profielen bereikt You have to remove an item if you wish to add another Je moet een onderdeel verwijderen als je een ander wilt toevoegen Add profile schedule Tijdschema toevoegen Modify profile schedule Tijdschema wijzigen Profile schedule details Details tijdschema Invalid profile Ongeldig profiel Execute profile Profiel uitvoeren hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> elk uur op minuut at op every elke day dag Sunday zondag Monday maandag Tuesday dinsdag Wednesday woensdag Thursday donderdag Friday vrijdag Saturday zaterdag & on the en op st as in 1st day ste nd as in 2nd day de rd as in 3rd day de th as in 4th, 5th, 6th or 7th day de th as in 8th day ste th as in 9th day de th as in 10th day de th as in 11th day de th as in 12th....19th day de th as in 20th day ste st as in 21st day ste nd as in 22nd day ste rd as in 23rd day ste th as in 24th...30th day ste st as in 31st day ste of any month van elke maand of van January full phrase: 'of January' januari February full phrase: 'of February' februari March full phrase: 'of March' maart April full phrase: 'of April' april May full phrase: 'of May' mei June full phrase: 'of June' juni July full phrase: 'of July' juli August full phrase: 'of August' augustus September full phrase: 'of September' september October full phrase: 'of October' oktober November full phrase: 'of November' november December full phrase: 'of December' december Unable to create cron file Kan het cron-bestand niet aanmaken luckyBackup - schedule luckyBackup - Tijdschema <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Tijdschema voor profielen</span></p></body></html> Add a new profile schedule Voeg een nieuw tijdschema toe add toevoegen Modify selected profile schedule Wijzig het geselecteerde tijdschema modify wijzigen Remove selected profile schedule Verwijder het geselecteerde tijdschema remove verwijderen Profile : Profiel: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Sla taken over die de waarschuwing 'KRITIEK' krijgen na de mapcontrole skip critical 'Kritiek' overslaan time (hour:min) : tijd (uur:min): set this value to -1 for the schedule to occur every hour zet deze waarde op -1 om de planning ieder uur te herhalen : : :delay :uitstel Delay luckybackup execution at startup Stel uitvoering luckyBackup bij systeemstart uit min means: minutes (time) min day of week : dag van de week: Any Iedere month : maand: January januari February februari March maart April april May mei June juni July juli August augustus September september October oktober November november December december day of month : dag van de maand: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Vink dit aan als je computer geen grafische werkomgeving ondersteunt (bv. een server) Console Mode Console-modus okay OK Cancel Annuleren schedule the execution of profiles as declared in the list above Stel het tijdschema in zoals gedefiniëerd in de bovenstaande lijst cronIT !! cronIT! The existent schedule file is not a valid luckyBackup v. v is for version Het bestaande tijdschema is niet geldig voor luckyBackup v. file BEWARE of the whitespace before file -bestand You have made changes without clicking the cronIT button Je hebt wijzigingen aangebracht zonder op de knop 'cronIT' te klikken Are you sure you want to close the schedule dialog ? Weet je zeker dat je het tijdschemavenster wilt sluiten? Your crontab is updated successfully Je crontab is met succes bijgewerkt no crontab entries exist er zijn geen crontab-entries crontab content inhoud crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup eenmalig, bij systeemstart Run once, at startup Eenmalig uitvoeren, bij systeemstart @ reboot @ herstarten close this dialog dit venster sluiten close sluiten Display the current crontab Toon de huidige crontab view current crontab Bekijk de huidige crontab textDialog Enter the name of the new profile : Geef de naam van het nieuwe profiel: Enter the new name of the profile : Geef de nieuwe naam van het profiel: Profile description : Profielbeschrijving: A profile with the same name already exists Er is al een profiel met dezelfde naam Please enter a different name Geef een andere naam Enter password : Geef wachtwoord: Enter passphrase : Geef sleutelzin: Do not show this again for this task Toon dit niet opnieuw voor deze taak You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Je hebt 'Maak een backup van de inhoud van de bronmap' geselecteerd, samen met de optie 'verwijder bestanden in de bestemmingsmap' BEWARE, if your intention is NOT to clone source to destination !! PAS OP, als je NIET de bedoeling hebt de bronmap te klonen naar de bestemmingsmap! Are you sure you wish to proceed ?? Weet je zeker dat je wilt verdergaan? luckyBackup luckyBackup Okay OK Cancel Annuleren Copy command to clipboard Kopiëer opdracht naar klembord eMail information E-mail informatie No Nee Yes Ja winDialog luckyBackup luckyBackup declaration of paths vaststellen van paden rsync: rsync: Enter the full path of the rsync command Geef het volledige pad naar de rsync-opdracht browse locally lokaal bladeren Use default value Gebruik standaardwaarde ssh: ssh: Enter the full path of the ssh command Geef het volledige pad naar de ssh-opdracht cygpath: cygpath: Enter the full path of the cygpath command Geef het volledige pad naar de cygpath-opdracht dosdev: dosdev: Enter the full path of the dosdev command Geef het volledige pad naar de dosdev-opdracht main dir: hoofdmap: Enter the full path of the luckybackup directory Geef het volledige pad naar de luckyBackup-map vshadow dir: vshadow-map: Enter the full path of the vshadow directory Geef het volledige pad naar de vshadow-map temp dir: temp-map: Enter the full path of the temporary directory Geef het volledige pad naar de tijdelijke map Okay OK Cancel Annuleren Select rsync command file selection dialog title Selecteer rsync-opdracht Executable Files (*.exe) Uitvoerbare bestanden (*.exe) Select ssh command file selection dialog title Selecteer ssh-opdracht Select cygpath command file selection dialog title Selecteer cygpath-opdracht Select dosdev command file selection dialog title Selecteer dosdev-opdracht luckybackup-0.5.0/translations/luckybackup_it.qm0000666000175000017500000043724013157502317021510 0ustar luckybluckybGHY:KSY]_ggglhYڇjs}z*qfffQvS!rEW9eE45XN~Eaaaaȵa"a-h*@.&Eص+CH5MaeM>wT"f"&%ަ({Y&)*`3*0+++G,B/]^@:BTEttFZ9]GG>HxhJ6%J;J;~mJwB;Pd(PdTPd&S]TZT7[B\Zu`w~j6kj6j61j6l̙mCn6qhtdpxz4KYGW}1dв2kL3`aj/Ws$GM>5!ĉV˱]S;ى>1NK4gXpW=8y#lGr :~9 dMg9!bB(e'+&q.+6F7C<$sGI|OWQ19oQRc[؅_/eufC2h|$hw pN4pN#q>!^tcp!Y4³-<6YEɞ65ѐSeitubԳŵ  ,'{9 _abYK8  #u&oR)+/r28IBZyC cFI?PoE:U\c-cf:QuI|BHOe2}R^ntGZIREWg,]3+ 4?CANk>IPĎ,÷wI rY ԥ b{*yV [%&E"wS:"Er;G ҐbO/o=N^ l- Av\h# &X.a;4)84).Y*߬ p,b 8My:MvT_rUxezh !oiJiUtM}^.e .e3lTWcxQ$\1%qIt$~d  MŇ0ʵgR 0[ܯ"=)>b![~f',ϗ]u k ‰ M>_yX j PsQ&DA!DȪ6L~NtOO.Ojz8FeJiYzwDi^lwrPt(}7;Y:օA@I{IAInI8III,M^AH!фR .3|HeFhO DiHMdH4if[ T CDU8y =I\xl@+om6>2rnnXp^!ztxJvYyk~ioٻF>9rȕȕȕXJTg: t_î"ATpCߘ?T9*f^v V"Bh" R.[;KAqC[KO VfJ_Av_w_hDXb#f0g)ghnhn_iiYkՒkՒ3JsD";v3Cy6|~gU{vb$(T4kYuuRE)I1JIn`>B1Vs?yS{2=Ȓ,C3=*':܄}@Z   |u} `@읒U>X`f'`Ǔ H X( |=5 Be^d;++e-zJ42 9YM>EFEN3.UtYv`xea#vuTv:{_gIa,3yڄ5DF(F(FfϕVi?4ΕBUSUuF "red~jg G%B|ȕ1 aMXT%U9UV7Dng~Eǧ,L~_?̐Lj?IIA%׃Rvߖck5Y  I3'3p2 ;t"))@K,#-$G/eK1`s9G F\dIX9{JJJεL6NIPO4Ry q{V)gh ?'mxazGw@xھ5S2( {ʴ5ʶQ'W,7 B^b'i )) N| n c  q.  ] #rp *{ +)} 6L 8u CcK& Mg MgQJ N#j U v WǠ ]S aY= d j^m l lRc{ mEn pF q R ]~ @ e s 2 ͆| ' a<" -B> Z'+ '0 Ԡ;S  ׊$` =0r . ) Ѿh  Tn G m c2v/ _  I  -0+# -n /l$ 7E 8̏ ?˓ @  ` f g jp l pN% zj C ' /  Hof I iU ~K cZb XB_  24+ bFy ,[  ^  GChY ñ nS 4 Xh h t$4 ԑ@ @w ݓ  T i 7 pjI "A  v  VdP d{ j ) # (N*= +mJ - 0b 7'yp 93Bd_ :UC# ; E Ge' HZ L9 PA T, T Zj _yne _Y fw g.w" g.wW g.w0 i i) k mr { { { ]  FJ Ҟܸ "H    Y YF9 ߊ >ӊ @e A. Eh" F F. LM N0 P}c Sz~ X ^ bU o \ o9% r'^ v D  jm j+ % r~ \% E "ΐ UNC rK * ~ s T6 s  Q %  2iQ a N Rb] , ?BSG  ;o - sf @ T # &, &'3 ) *}E +H ,D ,D2 6> P~ \.~6 cH i mYH {z e 1  I {ω 4' ms c lS Xw + f zi lz1  I  j Y i  [ "њ , ݗ # 䕜b  c2u  0 T 8 8R 8\ +t 6J=/{sN?CԵ'~(qڗ*#>+/#Y=E7G J[Tba#\P].}JacRqe~lmRyp{>QNyi,{BrW.TY?p<ZA {RCQteu$ MrJuTz֭ 3zMՔ̖k{dd4YU"'eU CZx#!)&)Ng(դ-L(դN-X`֧4? I<E~E^G E=JINRN>[=Ki^iXckf/lnKss%u@ u@~(NYbFk4fCft4o)*ŔysG-dvɟ)vʱN (uI+\du|_֙SDG=ߖ#l@/]d͡0.Y1PTUŕiBCalcolo delle differenze in corsoCalculating differencesCalcDiffThreadLa quantit di dati eccessiva. Vengono mostrati solo i primi termini2Data amount is huge. Displaying only first entriesCalcDiffThreadAttendere prego Please waitCalcDiffThread8Scansione della destinazioneScanning destinationCalcDiffThread0Scansione dello snapshotScanning snapshotCalcDiffThread0Scansione della sorgenteScanning sourceCalcDiffThreadJDifferenze tra sorgente e lo snapshotSnapshot and source differencesCalcDiffThreadxL'istantanea dei dati che esiste nella sorgente ed diversa=Snapshot data that also exists at the source and is differentCalcDiffThreaddDati dello snapshot che NON esitono nella sorgente-Snapshot data that do NOT exist at the sourceCalcDiffThreaddDati della sorgente che NON esitono nello snapshot-Source data that do NOT exist at the snapshotCalcDiffThread`Sincronizza le differenze tra le directory A e BSync dir A & B differencesCalcDiffThreadSincronizzo i dati della directory A che NON esistono nella directory B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadI dati della cartella di sincronizzazione B che esistono anche nella cartella di sincronizzazione A e sono diversi?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSincronizzo i dati della directory B che NON esistono nella directory A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadI dati dello snapshot rimpiazzeranno quelli della sorgente durante il RECUPERO=The snapshot data will replace the source data during RESTORECalcDiffThreadQuesti dati saranno eliminato durante il RIPRISTINO solo se attivi l'opzione:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadtcancella i dati della sorgente che non esistono nel backup;delete existing source data that do not exist at the backupCalcDiffThreadzBackup del profilo, dei file di log e dello snapshot in corso.Backing-up profile, logfiles and snapshot dataQObjectCRITICOCRITICALQObjectZRiesecuzione del comando a causa di un erroreCommand re-run due to failureQObjectBImpossibile aprire il file di logCould not open the logfileQObjectDestinazione DestinationQObject2Directory di destinazioneDestination directoryQObjectDirectory DirectoryQObjectpNon ho i permessi necessari per entrare nella cartella A;I do not have the permission to read/enter sync directory AQObjectpNon ho i permessi necessari per entrare nella cartella B;I do not have the permission to read/enter sync directory BQObjectNon ho i permessi necessari per entrare nella cartella di destinazioneDI do not have the permission to read/enter the destination directoryQObject~Non ho i permessi necessari per entrare nella cartella sorgente?I do not have the permission to read/enter the source directoryQObject<font color=orange><b>non salter</b></font> questo task. La sincronizzazione sta per essere effettutata comunqueiI will not skip this task. Synchronizing is going to be performed anywayQObject<font color=red><b>NON SALTER</b></font> questo task perch hai abilitato l'opzione "by-pass WARNING"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject:Orario dell'ultima esecuzioneLast execution timeQObjectOKOKQObjectr<b>Deseleziona i box inappropriati</b> prima di procedereAPlease uncheck appropriate include boxes before proceedingQObjectDeselezionare i task appropriati o cambiare il tipo di tutti i task in uno diverso da '<b>Backup contenuto cartella</b>' o usare "Backup contenuto cartella" con l'opzione <b>Includi solamente</b>, prima di procederePlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObjectSorgenteSourceQObject0Directory della sorgenteSource directoryQObject@Directory della sincronizzazioneSync directoryQObject2Sincronizzazione in corsoSyncingQObject2Sincronizzazione in corso'Full phrase: Syncing to SyncingQObject6Descrizione dell'operazioneTask descriptionQObjectLa cartella destinazione sar creata se non esiste e riempita con i nuovi dati di backup]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectI seguenti task <b>hanno la stessa cartella di destinazione</b> e solo uno di essi potr essere eseguito correttamenteThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectBImpossibile creare il file di log The logfile could not be createdQObject2Il file di log non esisteThe logfile does not existQObjectDIl processo ha riportato un erroreThe process reported an errorQObjectjIl comando specificato probabilmente non installato/The specified command is probably not installedQObjectBLa lista delle operazioni vuotaThe task list is emptyQObjectQuesto task &lt;font color=orange&gt;&lt;b&gt;non sar saltato&lt;/b&gt;&lt;/font&gt;3This task will not be skippedQObjectnQuesto task verr <font color=red><b>saltato</b></font>7This task will be skippedQObjectTIn modalit remota, il check viene saltatoUsing remote, check is skippedQObjectATTENZIONEWARNINGQObjectZHai incluso entrambi i seguenti task connessi8You have included both of the following connected tasks:QObject6Non hai incluso nessun taskYou have not included any tasksQObjecte/oand/orQObjectcomando: command: QObjectnon esistedoes not existQObject(trovati degli errori errors foundQObjectJesecuzione della prima parte del taskexecution of 1st part of taskQObjectJesecuzione della prima parte del task?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectNesecuzione della seconda parte del taskexecution of 2nd part of taskQObject&esecuzione del taskexecution of taskQObject6esecuzione delle operazioni3Full phrase: execution of task: finishedexecution of taskQObject6esecuzione delle operazionidFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject"codice di uscita: exit code: QObjectcompletatofinishedQObjectcompletato?Full phrase: execution of 1st part of task: finishedfinishedQObjectcompletato3Full phrase: execution of task: finishedfinishedQObjectcompletatoCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectfinito a causa dell'errore nell'esecuzione del comando pre/post-task9finished because of pre/post task command execution errorQObject liberofreeQObject vuotois emptyQObject( vuoto o non esisteis empty or does not existQObjectnon montatois not mountedQObjectnessun errore no errorsQObjectnon disponibile not availableQObject"niente da avviarenothing to startQObjectoutput: output: QObject@esecuzione del comando post-taskpost-task execution of commandQObject@esecuzione del comando post-taskCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject>esecuzione del comando pre-taskpre-task execution of commandQObject>esecuzione del comando pre-taskBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectavvio in corsostartingQObjectavvio in corso?Full phrase: execution of 1st part of task: startingstartingQObjectavvio in corso?Full phrase: execution of 2nd part of task: startingstartingQObjectavvio in corso3Full phrase: execution of task: startingstartingQObjectavvio in corso?Full phrase: post-task execution of command: startingstartingQObject statostatusQObjectNquesto non permesso per ovvie ragioni'this is not allowed for obvious reasonsQObjectrquesta azione comporter che un task ne cancelli un altro.this will lead to one task canceling the otherQObjectatoQObjecta'Full phrase: Syncing to toQObjectBImpossibile aprire il file di logCould not open the logfile ReadLogFile &Info&About aboutDialog&Licenza&License Agreement aboutDialog&Supporto&Support aboutDialog&Ringraziamenti &Thanks to aboutDialog...la mia met, <b>Dimitra</b> che sempre stata con me durante il periodo di sviluppo di questo progettoj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog0...a tutti gli utenti di...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialogA&utoreA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog4Traduttore della GUI arabaArabic gui translator aboutDialog^Maintainer ufficiale del package per Arch linux5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtene, GreciaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogRApplicazione di backup & sincronizzazioneBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogvMandriva package maintainer & traduttore della gui Bosniaca4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog:Traduttore della GUI catalanaCatalan gui translator aboutDialog8Non trovo il file di licenza!Could not locate the license file aboutDialogTraduttore cecoCzech gui translator aboutDialog2Debian package maintainerDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog&Traduttore olandeseDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogSoprattutto Especially aboutDialog6Traduttore della GUI estoneEstonian gui translator aboutDialogRFedora package maintainer (official repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog6Free BSD package maintainerFree BSD package maintainer aboutDialog:Traduttore della GUI franceseFrench gui translator aboutDialogjTraduttore francese e addetto al packing (e non solo)AFrench gui translator and valuable packing advisor (and not only) aboutDialog0Gentoo ebuild maintainerGentoo ebuild maintainer aboutDialog$Traduttore tedescoGerman gui translator aboutDialog.Dai un pollice in su a:Give a thumbs up at: aboutDialog2Traduttore greco e tester(Greek gui translator and valuable tester aboutDialog8Traduttore del manuale grecoGreek manual translator aboutDialogIo personalmente non ho mai accettato soldi per questo progetto e non lo far mai.DI personally never had and never will accept money for this project. aboutDialogSe non fosse stato per lui e i suoi tutorial non avrei mai iniziato questo progettoJIf it wasn't him and his tutorials I would never have started this project aboutDialogSe ti piace questa app e vorresti donarmi qualcosa personalmente, tutto quello che devi fare :`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogB <b>software gratuito</b>: puoi ridistribuirlo e/o modificarlo sotto i termini GNU-GPL come pubblicato dalla Free Software Foundation, versione 3 della Licenza.It 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, version 3 of the License. aboutDialog0 distribuito con la speranza che possa essere utile, ma SENZA NESSUNA GARANZIA; senza quindi la garanzia di VENDIBILIT o IDONEIT PER SCOPI SPECIFICI.It 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. aboutDialog:Traduttore della GUI italianaItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog8Ultima ma non per importanzaLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogfMandriva package maintainer (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialoglMaintainer del package per Mepis e traduttore spagnoloBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNonostante tutto, ho deciso di usare luckyBackup per supportare gente che ha davvero bisogno di un aiuto economico.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialogpMaintainer del package per OpenSUSE e addetto al packingNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialog*Traduttore portoghesePortuguese gui translator aboutDialog4Puppy pet & sfs maintainerPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialog6Traduttore della GUI rumenaRomanian gui translator aboutDialog2Traduttore russo e tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialog`Leggi la scheda 'Licenza' per maggiori dettagli.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog:Traduttore della GUI slovaccaSlovak gui translator aboutDialog8Traduttore della GUI slovenaSlovenian gui translator aboutDialogQuindi, per favore considera seriamente di donare soldi che saranno eventualmente usadi per una giusta causa._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog:Traduttore della GUI spagnolaSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog8Traduttore della GUI svedeseSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogIl team indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog4Questa la mia ricompensaThis is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog4Traduttore della GUI turcaTurkish gui translator aboutDialog*Consulente di fiduciaValuable advisor aboutDialog6Vota bene & diventa un fan:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialog^sviluppatore del script python "backupwhenidle"&backupwhenidle python script developer aboutDialog chiudiclose aboutDialog*link per la donazione donation link aboutDialog8ex Fedora package maintainerex Fedora package maintainer aboutDialogper sviluppare la meravigliosa piattaforma di localizzazione trasifex e fornirla gratuitamenteVfor developing the wonderful transifex localization platform and providing it for free aboutDialog*per il loro supporto.forums for their support. aboutDialog fri13fri13 aboutDialog$luckyBackup - infoluckyBackup - about aboutDialog"luckyBackup viene distribuito sotto i termini della <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog soldimoney aboutDialogniente soldino money aboutDialogpinguinofuriosopinguinofurioso aboutDialog,esporta per MS Windowsport to MS Windows aboutDialog(esporta per Mac OS Xport to Mac OS X aboutDialog esporta per OS/2 port to OS/2 aboutDialoglPackager rpm, tester e addetto alle connessioni remoteInserire il comando da eseguire%Enter the command to run eg sendemail emailDialogNInserisci il destinatario del messaggio"Enter the recipient of the message emailDialogFInserisci il mittente del messaggioEnter the sender of the message emailDialognInserisci il server smtp usato per inviare il messaggio.Enter the smtp server used to send the message emailDialogBInserisci l'oggetto del messaggio Enter the subject of the message emailDialog(Ci sono degli erroriError(s) occured emailDialogMaiNever emailDialog0Non inviare mai un'emailNever send an email emailDialogOKOkay emailDialogbInvia solo se ci sono errori durante l'esecuzione,Only send when error(s) occured during a run emailDialogtInvia solo se stata programmata l'esecuzione del profilo*Only send when profile is scheduled to run emailDialog0Il profilo programmatoProfile is scheduled emailDialogtInvia un'email adesso per verificare gli argomenti forniti6Send an email right now to test the provided arguments emailDialogXSpecifica le condizioni per mandare un'email'Specify the conditions to send an email emailDialogTestTest emailDialog<La casella del comando vuotaThe command field is empty emailDialog*Usa quello di default Use default emailDialogargomenti: arguments: emailDialogcomando:command: emailDialog&luckyBackup - emailluckyBackup - email emailDialogokOkay helpBrowser&luckyBackup - aiutoluckyBackup - help helpBrowsermanuale/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog chiudiclose logDialog*carico il file di logloading logfile... logDialogRluckyBackup - esecuzione delle operazioni&luckyBackup - tasks execution progress logDialogprossimo errore next error logDialog"errore precedenteprevious error logDialogaspettawait logDialog &%1 %2&%1 %2luckyBackupWindow &Stop&AbortluckyBackupWindow &Info&AboutluckyBackupWindowAggiungi&AddluckyBackupWindowCancella&DeleteluckyBackupWindow&Manuale &HandbookluckyBackupWindow &Aiuto&HelpluckyBackupWindowImporta&ImportluckyBackupWindow&Lingua &LanguageluckyBackupWindow&Minimizza&Minimize to trayluckyBackupWindowModifica&ModifyluckyBackupWindow Nuovo&NewluckyBackupWindow&Profilo&ProfileluckyBackupWindow&ProfiloThis is a top menu item&ProfileluckyBackupWindow Chiudi&QuitluckyBackupWindowRicarica&RefreshluckyBackupWindowRimuovi&RemoveluckyBackupWindow&Ripristina&RestoreluckyBackupWindow Salva&SaveluckyBackupWindow&Impostazioni &SettingsluckyBackupWindow &Task&TaskluckyBackupWindowTaskThis is a top menu action&TaskluckyBackupWindow*Barre degli strumenti &ToolbarsluckyBackupWindow2Vedi/Edita la descrizione&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowANNULLATOABORTEDluckyBackupWindowAnnullaAbortluckyBackupWindowjAnnullato: Aspetta l'interruzione di tutti i processi4Aborting: Please wait for all processes to be killedluckyBackupWindow AzioniActionsluckyBackupWindowxTutti i file di rilievo (logs, etc...) sono stati cancellati4All relevant files (logs etc) have also been deletedluckyBackupWindowvTutti i file di rilievo (logs, etc...) sono stati duplicati7All relevant files (logs etc) have also been duplicatedluckyBackupWindowxTutti i file di rilievo (logs, etc...) sono stati aggiornati4All relevant files (logs etc) have also been updatedluckyBackupWindowDTutti i task sono stati completatiAll tasks completedluckyBackupWindowRSei sicuro di voler cancellare il profilo'Are you sure you want to delete profileluckyBackupWindowhSei sicuro di voler cancellare il profilo di default3Are you sure you want to delete the default profileluckyBackupWindowbSei sicuro di voler cancellare il seguente task??5Are you sure you want to remove the following task ??luckyBackupWindowVInizia l'esecuzione di tutti i task inclusi)Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindowrIl check disabilitato. Questo task verr <b>saltato</b>5Checks are disabled. This task will be skippedluckyBackupWindow6Impossibile trovare il fileCould not locate the fileluckyBackupWindowNon possibile aggiornare la data dell'ultima esecuzione del task-Could not update last execution time of tasksluckyBackupWindow crashCrashedluckyBackupWindow,Crea un task duplicatoCreate D&uplicate taskluckyBackupWindow4Crea un task di ripristinoCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindow Profilo correnteCurrent ProfileluckyBackupWindowDuplica D&uplicateluckyBackupWindowDefaultDe&faultluckyBackupWindowDescrizione DescriptionluckyBackupWindowDestinazione DestinationluckyBackupWindowCartella DirectoryluckyBackupWindow FattoDoneluckyBackupWindowSimulazioneDryluckyBackupWindow emailE&mailluckyBackupWindowEsportaE&xportluckyBackupWindow ERROREERRORluckyBackupWindowESCIEXITluckyBackupWindowTempo trascorso Elapsed timeluckyBackupWindowLe preferenze delle email sono state <font color=green>aggiornate con successoBEmail preferences have been updated successfullyluckyBackupWindowhRapporto tramite email dopo l'esecuzione del profilo$Email report after profile executionluckyBackupWindowItalianoEnglishluckyBackupWindowItalianoDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowjC' stato un errore nel trasferimento dei file di log'Errors occured during logfiles transferluckyBackupWindowC' stato un errore nel trasferimento degli snapshot e dei file di log5Errors occured during snapshots and logfiles transferluckyBackupWindowhC' stato un errore nel trasferimento degli snapshot(Errors occured during snapshots transferluckyBackupWindowrC' stato un errore nel trasferimento del file di profilo/Errors occured during the profile file transferluckyBackupWindow,esecuzione del profiloExecution of profileluckyBackupWindowLEsecuzione delle operazioni completataExecution of tasks finishedluckyBackupWindowfL'esecuzione dei task stata annullata dall'utente4Execution of tasks were terminated violently by userluckyBackupWindowEsciExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindow^Impossibile creare la directory di destinazione&Failed to create destination directoryluckyBackupWindowFImpossibule creare un nuovo profiloFailed to create new profileluckyBackupWindowzImpossibile cancellare tutti i file di rilievo (logs, etc...).Failed to delete all relevant files (logs etc)luckyBackupWindowBImpossibile cancellare il profiloFailed to delete profileluckyBackupWindowxImpossibile duplicare tutti i file di rilievo (logs, etc...)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow@Impossibile duplicare il profiloFailed to duplicate profileluckyBackupWindow@Impossibile duplicare il profiloFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow@Impossibile esportare il profiloFailed to export profileluckyBackupWindow@Impossibile importare il profiloFailed to import profileluckyBackupWindowBImpossibile rinominare il profiloFailed to rename profileluckyBackupWindowBImpossibile sostituire il profiloFailed to replace profileluckyBackupWindowavvio fallitoFailed to startluckyBackupWindowzImpossibile aggiornare tutti i file di rilievo (logs, etc...).Failed to update all relevant files (logs etc)luckyBackupWindowNNascondi la finestra delle informazioniHide information windowluckyBackupWindowNNascondi la finestra delle informazioni+hide/show information window button tooltipHide information windowluckyBackupWindowImporta ProfiloImport ProfileluckyBackupWindowInformazioniInformation windowluckyBackupWindowInformazioniinformation window titleInformation windowluckyBackupWindow^Data dell'ultima esecuzione del task aggiornata$Last execution time of tasks updatedluckyBackupWindowPLista di tutte le operazioni disponibiliList of all the available tasksluckyBackupWindow BloccaLockluckyBackupWindow$Gestisci il BackupManage &BackupluckyBackupWindowGestisci task Manage TaskluckyBackupWindowjSposta il task selezionato in basso, di una posizione/Move the highlighted task down, by one positionluckyBackupWindowhSposta il task selezionato in alto, di una posizione-Move the highlighted task up, by one positionluckyBackupWindowNONOluckyBackupWindowNON INCLUSO NOT INCLUDEDluckyBackupWindowNOTANOTEluckyBackupWindowNessun erroreNo errors foundluckyBackupWindow&Operazione in corsoNow performing taskluckyBackupWindowMostra solo gli errori e i messaggi importanti durante l'aggiornamento della finestraSeleziona un task da modificare$Please select a task to modify firstluckyBackupWindow>Seleziona un task da cancellare$Please select a task to remove firstluckyBackupWindowfPremi per spegnere il sistema quando tutto finito+Press down to shutdown the system when doneluckyBackupWindowProfiloProfileluckyBackupWindowProfiloPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindowProfiloIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowProfilo9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowProfiloJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowProfiloGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowProfilolfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowProfilo3full phrase: 'Profile set as default'ProfileluckyBackupWindowVLa barra di avanzamento non sar realistica(Progressbar update will not be realisticluckyBackupWindowRinominaR&enameluckyBackupWindowLeggi l'errore Read errorluckyBackupWindowPRimossi tutti i dati dei vecchi snapshot Removed all older snapshots dataluckyBackupWindowRimozioneRemovingluckyBackupWindowpRimozione dei vecchi snapshot e dei file di log dei task+Removing old snapshots and logfiles of taskluckyBackupWindow AvviaRunluckyBackupWindowProgramma S&cheduleluckyBackupWindowLSeleziona la directory di esportazioneSelect export directoryluckyBackupWindow.Imposta come di DefaultSet as DefaultluckyBackupWindow"Imposta directory Set pathsluckyBackupWindowBImposta directory per rsync e ssh$Set paths for rsync and ssh commandsluckyBackupWindowJMostra la finestra delle informazioniShow information windowluckyBackupWindowJMostra la finestra delle informazioni+hide/show information window button tooltipShow information windowluckyBackupWindow<Mostra il testo sotto le iconeShow text under iconsluckyBackupWindowSorgenteSourceluckyBackupWindow,Blocca tutto ADESSO!!!'Stop the execution of running tasks NOWluckyBackupWindowZDirectory di destinazione creata con successo)Successfuly created destination directoryluckyBackupWindowTaskTaskluckyBackupWindow,Lista delle operazioni Task listluckyBackupWindow4Lista dei task del profiloTask list of profileluckyBackupWindow.Descrizione del profiloThe description of profileluckyBackupWindownLa directory selezionata non contiene un profilo validoCThe directory you have selected does not contain valid profile dataluckyBackupWindowfIl nome inserito contiene solo caratteri non validi:The name you have entered contains only invalid charactersluckyBackupWindowLIl sistema si spegner entro un minuto$The system will shutdown in 1 minuteluckyBackupWindow2La lista dei task vuotaThe task list is emptyluckyBackupWindowQuesto avvier una <b>simulazione</b> che non far nessuna modifica (e d spesso lo stesso risultato di un vero processo){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTempo scaduto Timed outluckyBackupWindow:Impossibile aprire il profiloUnable to open profileluckyBackupWindow$errore sconosciuto Unknown errorluckyBackupWindow$Errore sconosciutothis refers to a process Unknown errorluckyBackupWindowfPremi il tasto "aggiungi" sulla destra per iniziare0Use the "add" button on the right to get startedluckyBackupWindowVUsa i checkbox per includere o meno un task>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowJVedi/Edita la descrizione del profilo!View/Edit the profile descriptionluckyBackupWindowATTENZIONEWARNINGluckyBackupWindowBenvenuto in Welcome toluckyBackupWindow*Vuoi rimuovere anche:Would you like to also remove:luckyBackupWindow2Vuoi procedere lo stesso?!Would you like to proceed anyway?luckyBackupWindow"Vuoi sostituirlo?Would you like to replace it ?luckyBackupWindowBVuoi salvarlo prima di procedere?-Would you like to save it before proceeding ?luckyBackupWindowScrivi l'errore Write errorluckyBackupWindowSYESluckyBackupWindowZHai richiesto di creare un task di RIPRISTINO/You have asked for a RESTORE task to be createdluckyBackupWindow\Avete incluso solo compiti che saranno saltati9You have only included tasks that are going to be skippedluckyBackupWindowl stato raggiunto il limite massimo di task supportati5You have reached the maximum limit of supported tasksluckyBackupWindowjDevi rimuovere un task se ne vuoi aggiungere altri !!7You have to remove a task if you wish to add another !!luckyBackupWindowTuno nuovo, con lo stesso nome, sar creato4a new blank one, with the same name, will be createdluckyBackupWindowaggiungiaddluckyBackupWindowaggiungi taskadd taskluckyBackupWindowesiste gialready existsluckyBackupWindow<e lista dei profili aggiornateand 'profile' drop-down listluckyBackupWindowBe aggiunto alla lista dei profiliand added at the profile listluckyBackupWindowRe cambia il necessario prima di procedere.and change anything you wish before proceedingluckyBackupWindowinasluckyBackupWindowcomeFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow calcolo in corso calculatingluckyBackupWindow calcolo in corso-info message displayed during ...calculations calculatingluckyBackupWindow$output dei comandicommands outputluckyBackupWindow*non pu essere creatocould not be createdluckyBackupWindow,non pu essere salvatocould not be savedluckyBackupWindow,non pu essere salvatoPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow(creato correttamentecreated successfullyluckyBackupWindowZcreazione del profilo di default in corso ...creating default profile ...luckyBackupWindow0creazione del profilo...creating profile ...luckyBackupWindowtCrontab corrente <font color=green>aggiornata con successo6current crontab updated successfullyluckyBackupWindow profilo correntecurrent profileluckyBackupWindow$profilo di defaultdefault profileluckyBackupWindow$profilo di default^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow$profilo di defaultVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow0cancellato correttamentedeleted successfullyluckyBackupWindow,cancellazione dei filedeleting filesluckyBackupWindow6cancellazione file in corso/info message displayed during ...file deletionsdeleting filesluckyBackupWindowmostra - ripristina - cancella backup esistenti dei task evidenziati?display - restore - delete existing backups of highlighted taskluckyBackupWindowZmostra informazioni circa il task selezionato.display information regarding highlighted taskluckyBackupWindow6duplicato con successo comeduplicated successfully asluckyBackupWindow2Si verificato un errore errors foundluckyBackupWindow.esecuzione del profilo:execution of profile:luckyBackupWindow.esecuzione del profilo:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow2esportato con successo inexported successfully toluckyBackupWindow"rimozione fallitafailed to removeluckyBackupWindowjRimozione di tutti i dati dei vecchi snapshot fallita)failed to remove all older snapshots dataluckyBackupWindowcompletatofinishedluckyBackupWindowcompletato:full phrase: 'Execution of profile finished'finishedluckyBackupWindow.Importato correttamenteimported successfullyluckyBackupWindow&in corso d'opera...in progress...luckyBackupWindowincludiincludeluckyBackupWindow$ stato modificato is modifiedluckyBackupWindow non valido peris not valid forluckyBackupWindow0salta al prossimo errorejump to next errorluckyBackupWindow6salta all'errore precedentejump to previous errorluckyBackupWindow,caricato correttamenteloaded successfullyluckyBackupWindow^caricamento del profilo di default in corso ...loading default profile ...luckyBackupWindow&caricamento fallitoloading failedluckyBackupWindow6caricamento del profilo ...loading profile ...luckyBackupWindow\il file di log stato creato nella cartella: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow*minimizza nella barraminimize to trayluckyBackupWindowBminimizza la finestra nella barra%minimizes the window to the tray arealuckyBackupWindowmodificamodifyluckyBackupWindow8modifica il task selezionatomodify highlighted taskluckyBackupWindow$Niente da eseguire nothing to doluckyBackupWindow@esecuzione del comando post-taskpost-task execution of commandluckyBackupWindow>esecuzione del comando pre-taskpre-task execution of commandluckyBackupWindowprofiloprofileluckyBackupWindowprofiloVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowprofiloSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowprofiloUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowprofiloSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowprofiloMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowprofiloprofile luckyBackupWindow&modalit silenziosa quiet modeluckyBackupWindowaggiornati refreshedluckyBackupWindowcancellaremoveluckyBackupWindow6rimuovi il task selezionatoremove highlighted taskluckyBackupWindow6rinominato correttamente inrenamed successfully toluckyBackupWindow4rinominato con successo inWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowl'output di rsync e i comandi di pre/post task vengono mostrati qui9rsync and pre/post task commands output is displayed hereluckyBackupWindow*salvato correttamentesaved successfullyluckyBackupWindowVsalvataggio in corso del profilo di defaultsaving default profile ...luckyBackupWindow&salvataggio profilosaving profile ...luckyBackupWindowprogrammata scheduledluckyBackupWindow(imposta come defaultset as defaultluckyBackupWindowimpostaset toluckyBackupWindow spegnishutdownluckyBackupWindowSimulazionesimulation modeluckyBackupWindow statostatusluckyBackupWindowsuper user super userluckyBackupWindow*modalit super-utentesuper user modeluckyBackupWindowatoluckyBackupWindow6trasferimento file in corsotransferring filesluckyBackupWindow6trasferimento file in corso/info message displayed during ...file transferstransferring filesluckyBackupWindow2cerco di inviare un'emailtrying to send an emailluckyBackupWindowversione:version:luckyBackupWindow*Calcola le differenzeCalculate differences manageDialog~Calcola le differenze tra la sorgente e lo snapshot selezionatoFCalculate the differences between the source and the selected snapshot manageDialog6Calcoli fermati dall'utenteCalculations terminated by user manageDialog chiudiClose manageDialog,Chiudi questa finestraClose this window manageDialogCancellaDelete manageDialoglCancella lo snapshot selezionato ed il suo file di log,Delete the selected snapshot and its logfile manageDialogtNon ho i permessi sufficienti per leggere questa directory;I do not have sufficient permissions to read this directory manageDialogZPer favore seleziona uno snapshot dalla lista&Please select a snapshot from the list manageDialoghPer favore aspetta finch il processo sar terminato*Please wait until the thread is terminated manageDialogRipristinaRestore manageDialogDRipristina lo snapshot selezionatoRestore the selected snapshot manageDialogSTOPSTOP manageDialog,Ferma i calcoli ADESSOStop calculations NOW manageDialog6Questa directory non esisteThis directory does not exist manageDialog6Questa directory non esisteInformation messageThis directory does not exist manageDialog\Vedi il file di log dello snapshot selezionato)View the logfile of the selected snapshot manageDialogPVedi il file di log del task selezionato*View the logfile of the selected sync task manageDialogdestinazione: destination: manageDialog"nascondi sorgente hide source manageDialog:luckyBackup - gestisci backupluckyBackup - manage backup manageDialognon disponibile not available manageDialogprofiloprofile manageDialogsorgente:source: manageDialogsync dir A sync dir A manageDialogsync dir B sync dir B manageDialogtasktask manageDialogvedi logview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardANNULLAABORT manageWizardAnnullatoAborted manageWizard$Percorso di backup Backup path manageWizardlEsplora localmente per un nuovo percorso di riprisitno%Browse locally for a new restore path manageWizardSeleziona questa opzione per duplicare l'istantanea di backup nella cartella di ripristino.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDate & ora Date & time manageWizard$Cancella il backup Delete backup manageWizardElimina i dati esistenti che non sono presenti nella copia di backup.4Delete existing data that do not exist at the backup manageWizard>Cancellazione dei dati in corso Deleting data manageWizardpEliminare un file che mostra cambiamenti nell'istantanea)Deleting file that lists snapshot changes manageWizardjCancellazione del file di log dello snapshot in corsoDeleting snapshot logfile manageWizardI file di backup esistenti rimpiazzeranno i corrispondenti file della directory di ripristinoSExisting backup files will replace the corresponding files at the restore directory manageWizardCompletatoFinished manageWizardSe le informazioni precedenti sono esatte premere <b>start<b> per iniziare@If the information above is correct, click start to begin manageWizardSe le informazioni precedenti sono esatte premere <b>start<b> per iniziare`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard6Salta all'errore successivoJump to next error manageWizard6Salta all'errore precedenteJump to previous error manageWizarddNon esiste nessun file dello snapshot. Lo salto...,No snapshot specific data exist. Skipping... manageWizardPercorsoPath manageWizard"Riprostina backupRestore backup manageWizard,Ripristina il percorso Restore path manageWizardDRipristino dati: tratto principaleRestoring data: main trunk manageWizardHRipristino dati: file dello snapshotRestoring data: snapshot files manageWizardTSeleziona la nuova directory di ripristinoSelect new restore directory manageWizardLa directory di ripristino diventer identica allo snapshot di ripristinoBThe restore directory will become identical to the backup snapshot manageWizardQuesto avvier una <b>simulazione</b> che non far nessuna modifica (e d spesso lo stesso risultato di un vero processo){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardbAggiornamento della lista degli snapshot in corsoUpdating list of snapshots manageWizardATTENZIONEWARNING manageWizardFStai per cancellare i dati di bacup#You are about to delete backup data manageWizardcancellacancel manageWizard cambiachange manageWizard chiudiclose manageWizard*ci sono alcuni errori errors found manageWizardfallitofailed manageWizardfallito-info message displayed after ...file deletionfailed manageWizard:luckyBackup - gestisci backupluckyBackup - manage backup manageWizard"errore successivo next error manageWizardnessun errore no errors manageWizardnon disponibile not available manageWizard"errore precedenteprevious error manageWizardsimulazione simulation manageWizard startstart manageWizardtutto oksuccess manageWizardtutto ok-info message displayed after ...file deletionsuccess manageWizardtutto ok5info message displayed after ...snapshots list updatesuccess manageWizard"Host Remoto" selezionato, ma non stato impostato nessun nome='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Non dimenticare</b> di definire una cartella nel gruppo "escludi" che conterr la destinazionefDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogAggiungi cartelle, file o pattern che vuoi escludere da questo task@Add any directory, file or pattern to be excluded from this task modifyDialogAggiungi una cartella, un file o un pattern da includere in questa attivit>Add any directory, file or pattern to be included by this task modifyDialog<Aggiungi il comando alla lista*Add command as entered in the field beside modifyDialogXAggiungi la cartella da escludere alla lista*Add exclusion as entered in the next field modifyDialogXAggiungi la cartella da includere alla lista*Add inclusion as entered in the next field modifyDialogAggiungi o rimuovi opzioni di rsync. Se non sai cosa significhi, non modificare nulla!!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogFAggiungi l'opzione rsync alla lista-Add rsync option as entered in the next field modifyDialogAvanzatoAdvanced modifyDialogDopoAfter modifyDialog~Tutti i campi delle propriet del task sembrano essere corretti?All declared fields of the task properties window seem to be ok modifyDialogEsegui comandi Also Execute modifyDialog>Tenta le attivit da super-userAttempt super-user activities modifyDialogTSorgente del backup dentro la Destinazione Backup Source inside Destination modifyDialogFile di backup Backup files modifyDialogDBackup dei file attualmente apertiBackup open files modifyDialog PrimaBefore modifyDialog"Cartelle di cache Cache folders modifyDialogAnnullaCancel modifyDialogPSeleziona questa opzione per utilizzare una partizione FAT/NTFS come destinazione# Il proprietario ed i permessi dei dati NON saranno mantenuti.# (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogSeleziona questa opzione per duplicare la cartella sorgente in quella di destinazione# Lascia deselezionata questa opzione per creare una cartella aggiuntiva all'interno di quella di destinazioneiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogtSeleziona questo per connetterti ad un modulo rsync remoto/Check this to connect to an rsync Remote module modifyDialogOpzioni comandoCommand Options modifyDialogLista comandi Command list modifyDialogPreserva i dispositivi (solo super utente) e i file speciali come tali (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogJCopia i link simbolici come tali (-l)Copy symlinks as symlinks (-l) modifyDialogDefinisci il tipo di attivit:# 1. Duplica la cartella Sorgente, dentro alla Destinazione (vedi anche l'opzione "NON creare una cartella")# 2. Sincronizza Sorgente & Destinazione, mantenendo i file pi recenti all'interno di entrambeDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefinisci il tipo di task: 1. Backup del contenuto della Sorgente nella Destinazione 2. Backup del contenuto della Sorgente (incluso il nome) nella Destinazione 3. Sincronizza Sorgente e Destinazione, mantenendo i file pi recenti da entrambiDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog@Cancella file sulla destinazioneDelete files on the destination modifyDialogElimina i file nella cartella di destinazione che non esistono in quella sorgente# . "Ricorri nelle cartelle" deve essere selezionato # (--delete-after & --delete-excluded se "Escludi" utilizzato)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescrizione Description modifyDialogDestinazione Destination modifyDialogDestinazione: Destination : modifyDialog4La destinazione FAT/NTFSDestination is FAT/NTFS modifyDialog4NON creare altre directoryDo NOT create extra directory modifyDialogNon salvare file della sorgente che sono pi recenti sulla destinazione (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNon escludere questa lista di pattern.# Per favore consulta il manuale per comprendere meglio le regole di inclusione.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog<Edita l'inclusione evidenziataEdit highlighted inclusion modifyDialogInserisci un nome per questo task (es. "Backup dei miei file personali"):Enter a name for this task (eg "Backup my home directory") modifyDialogInserisci un comando da eseguire dopo il task e premi il pulsante "aggiungi" per aggiungerlo alla listanEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogInserisci un comando da eseguire prima del task e premi il pulsante "aggiungi" per aggiungerlo alla listaoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogInserisci un opzione rsync da aggiungere (es "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogInserisci file, cartelle o pattern e premi il pulsante "aggiungi" per aggiungerlo alla lista * - corrisponde a tutti i componenti non vuoti (si blocca con gli slashes) ** - corrisponde a tutto, incluso gli slashes ? - corrisponde a qualsiasi carattere eccetto lo slashes trailing nome_cartella/*** - corrisponde alla cartella e il suo contenuto starting / - corrisponde normalmente alla sorgente trailing / - corrisponde solo alla cartelle, sono esclusi file, link simbolici e dispositiviEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogInserisci file, cartelle o pattern e premi il pulsante "aggiungi" per aggiungerlo alla lista * - corrisponde a tutti i componenti non vuoti (si blocca con gli slashes) ** - corrisponde a tutto, incluso gli slashes ? - corrisponde a qualsiasi carattere eccetto lo slashes trailing nome_cartella/*** - corrisponde alla cartella e il suo contenuto starting / - corrisponde normalmente alla sorgente trailing / - corrisponde solo alla cartelle, sono esclusi file, link simbolici e dispositiviEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogInserisci il percorso completo della cartella destinazione (es. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogInserisci il percorso completo del file che contiente la chiave privata ssh (non puoi lasciarlo vuoto). Nota che devi eseguire tutte le azioni richieste per una connessione ssh senza password usanto una coppia di chiavi OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogInserisci il percorso completo del file che contiene la password per rsync (non per ssh), non puoi lasciarlo vuoto.~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogInserisci il percorso completo della cartella sorgente (es. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogFInserisci il nome dell'host remoto:"Enter the name of the remote host. modifyDialogInserisci la porta per la connessione ssh (lasciandola vuota sar usata quella di default)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogInserisci l'username per l'host remoto (non puoi lasciarlo vuoto).HEnter your username for the remote host (leave blank if not applicable). modifyDialog>Si sono verificati degli erroriErrors have been found modifyDialogEscludiExclude modifyDialogpEscludi tutte le cartelle "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog^Escludi tutti i file e cartelle di backup (**~)(Exclude all backup files & folders (**~) modifyDialogjEscludi cartelle di cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialog`Escludi tutte le cartelle temporanee (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogZEscludi tutte le cartelle ".gvfs" (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogEscludi il cestino di tutti gli utenti (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog&Lista di esclusione Exclude list modifyDialogEsclude directory sistema: /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogEscludi cartelle di sistema per il montaggio /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogVEsegui comandi extra, prima o dopo il task.1Execute extra commands, before or after the task. modifyDialog2Esegui l'attivit anche se questa appare con un messaggio di ATTENZIONE# Normalmente usato quando i comandi "Esegui Prima" possono correggere un messaggio di avviso (per esempio montare delle partizioni)# # ATTENZIONE: seleziona questo se sei sicuro di sapere che cosa stai facendoExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog:Lista opzioni extra per rsyncExtra rsync options list modifyDialog@File che sono "hard-linked" sulla sorgente lo saranno anche sulla destinazione ATTENZIONE: Tutti i file devono essere inclusi nel gruppo di trasferimento!! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogDIgnora file usando l'algoritmo CVSIgnore files the CVS way modifyDialogRIngora i file usando l'algoritmo CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogIncludiInclude modifyDialogpIncludi SOLO questa lista di pattern. Nulla di pi.# Per favore fai riferimento al manuale per comprendere meglio le regole di inclusione.# Questo disabiliter l'opzione di esclusione.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog&Lista di inclusione Include list modifyDialog,Modalit di inclusione Include mode modifyDialogLascia la casella contrassegnata, per <b>FERMARE</b> l'esecuzione dell'attivit in corso se questo comando restituisce un erroregLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialogModalit:Mode: modifyDialogFSposta gi l'inclusione evidenziataMove highlighted inclusion down modifyDialogDSposta su l'inclusione evidenziataMove highlighted inclusion up modifyDialog Nome:Name : modifyDialog$Inclusione NormaleNormal Include modifyDialogOKOkay modifyDialog Includi soltanto Only Include modifyDialogzAltrimenti deselezionare 'Host Remoto' per lavorare in locale2Otherwise uncheck 'Remote Host' to operate locally modifyDialog|Per favore seleziona la casella appropriata prima di procedere/Please check the relevant box before proceeding modifyDialogPer favore definisci la sorgente prima di avviare l'editor di patternScrivi una descrizione del taskType a description of the task modifyDialog\Usa un host remoto per sorgente o destinazione2Use a remote host either for source or destination modifyDialogHUsa un host remoto come destinazione'Use a remote host for destination data. modifyDialog@Usa un host remoto come sorgente"Use a remote host for source data. modifyDialogVUtilizza il gruppo numerico e gli ID utenteUse numeric group and user IDs modifyDialog$Usa un host remotoUse remote host modifyDialog,Usa ssh come trasportoUse ssh as transport shell modifyDialog(Definito dall'utente User Defined modifyDialog(Definito dall'utente User defined modifyDialogUtente:User: modifyDialogtCon questa opzione rsync trasferir il gruppo numerico e gli ID utente# invece di utilizzare i nomi utente e di gruppo# ed associarli ad entrambe le terminazioni finali.# (--numeric-ids)With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) modifyDialogZHai gi aggiungo questo elemento da escludere(You have already added this exclude item modifyDialogZHai gi aggiungo questo elemento da includere(You have already added this include item modifyDialog>Hai gi aggiunto questa opzione"You have already added this option modifyDialogHai selezionato l'opzione "elimina i file nella cartella di destinazione"=You have checked the 'delete files on the destination' option modifyDialogHai scelto una destinazione che si trova nella struttura della cartella sorgenteNYou have declared a destination that is part of the source directory structure modifyDialog(Hai dichiarato la caqYou have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box modifyDialog Hai dichiarato la cartella root di un'intera partizione come sorgente e NON hai selezionato la caselle "NON creare una cartella extra"You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box modifyDialogaggiungiadd modifyDialog&opzioni aggiuntive:additional options: modifyDialogAvanzatoadvanced modifyDialogesplorabrowse modifyDialog cerca localmentebrowse locally modifyDialogsfoglia browse localy modifyDialog$by-pass ATTENZIONEby-pass WARNING modifyDialogcancellacancel modifyDialog annulla modificacancel editing modifyDialog&comando da eseguirecommand to be executed modifyDialogdestinazione destination modifyDialog fattodone modifyDialog&modifica completata done editing modifyDialogeditedit modifyDialognome del filefilename modifyDialog4avvia l'editor dei patternlaunch the pattern editor modifyDialoglost+found lost+found modifyDialogmuovi gi move down modifyDialogmuovi sumove up modifyDialoglista opzioni options list modifyDialogpassword: password: modifyDialog porta:port : modifyDialog(File chiave privata:private key file : modifyDialogcancellaremove modifyDialog(File password rsync:rsync password file: modifyDialogSemplicesimple modifyDialogsorgentesource modifyDialogsshssh modifyDialogutilizza i riquadri per <b>FERMARE</b> l'esecuzione dell'attivit in caso di errore0use boxes to STOP task execution on error modifyDialogControllavalidate modifyDialogsenza avere selezionato "Ricorri nelle directory", che richiestoCwithout having checked 'Recurse into directories' which is required modifyDialogAnnullaCancel patternEditorNSeleziona questo per utilizzare la cartella sopra come un percorso assoluto# se deselezionato, il pattern assocer qualsiasi file/cartella che segue il criterio "nome"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefinisci qui il criterio per i nomi da applicare ai file/alle cartelleEDefine here the name criteria for the files/directories to be matched patternEditorjScrivi qui a che cosa il pattern si dovrebbe riferire8Define here, what would you like the pattern to refer to patternEditor2Contenuto della directoryDirectory contents patternEditorDigita qui i caratteri contenuti in una qualunque posizione del nome dei file/delle cartelle ai quali il pattern si riferiscesEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorFDigita qui i caratteri finali del nome dei file/delle cartelle ai quali il pattern si deve riferire# per esempio per riferirsi a tutti i file ".txt", digita # .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorDigita qui il nome dei file/delle cartelle ai quali il pattern si deve riferireGEnter here the name of the files/directories that the pattern refers to patternEditorDigita qui i caratteri iniziali del nome dei files/delle cartelle ai quali i pattern si riferiscebEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditorDVai in profondit nel percorso di:Go deeper in path by : patternEditorfVai in profondit nel percorso in qualunque livelloGo deeper in path by any level patternEditorokOkay patternEditorrPer favore scegli una cartella all'interno della sorgente+Please choose a directory within the source patternEditorPer favore seleziona un file all'interno della cartella sorgente&Please choose a file within the source patternEditor~Ripristina i campi dell'editor di pattern ai valori predefiniti5Reset the pattern editor fields to the default values patternEditor&Scegli la directorySelect directory patternEditorSeleziona file Select file patternEditor Set di directorySet of directories patternEditorSet di file Set of files patternEditor&Specifica directorySpecific directory patternEditorSpecifica file Specific file patternEditorBIl pattern attuale mostrato qui$The actual pattern is displayed here patternEditor4Il pattern si riferisce a:The pattern refers to a: patternEditor0Utilizza questo se il pattern si riferisce ad una serie di cartella che hanno qualcosa in comune# per esempio tutte le cartelle che sono chiamate "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUtilizza questo se il pattern si riferisce ad una lista di file che hanno qualcosa in comune# per esempio tutti i file con l'estensione ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUtilizza questo se il pattern si riferisce ad una cartella specifica# eg "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUtilizza questo se il pattern si riferisce ad un file specifico# eg "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorzUtilizza questo se il pattern si riferisce al contenuto di una cartella (o di una lista di cartelle), non alla cartella stessa# per esempio il contenuto della cartella "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorUtilizza questo per richiamare sotto-cartelle pi interne# per esempio# La cartella "/media/music" include 3 sotto-cartelle:# 1.Rock# 2.Jazz# 3.Colonne Sonore# e ti piacerebbe considerare tutto il contenuto di queste 3 cartelle, definisci ci che segue:# * Serie di cartelle# * Contenuto della cartella# * percorso:/media/music/# * Vai ancora pi all'interno della cartella "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorqualunqueany patternEditorTsfoglia localmente il percorso di cartelle"browse localy for a directory path patternEditor0cerca localmente un filebrowse localy for a file patternEditorcontiene: contains : patternEditorcartella : directory : patternEditorfinisce con: ends with : patternEditor file :file : patternEditorpattern finale final pattern patternEditor esattamente: is exactly : patternEditornomename patternEditor$editor dei patternpattern editor patternEditor resetreset patternEditorcomincia con: starts with : patternEditor*usa percorso assolutouse absolute path patternEditor file filescheduleDialog & del& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:ritardo:delayscheduleDialogd<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"># <html><head><meta name="qrichtext" content="1" /><style type="text/css"># p, li { white-space: pre-wrap; }# </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"># <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programmazione dell'esecuzione del profilo</span></p></body></html>

Profile execution scheduling

scheduleDialog@ riavvio@ rebootscheduleDialogVAggiungi un nuovo profilo di pianificazioneAdd a new profile schedulescheduleDialogDAggiungi profilo di pianificazioneAdd profile schedulescheduleDialogOgniAnyscheduleDialog AprileAprilscheduleDialog Aprilefull phrase: 'of April'AprilscheduleDialogxSei sicuro di volere chiudere la finestra di pianificazione?4Are you sure you want to close the schedule dialog ?scheduleDialog AgostoAugustscheduleDialog Agostofull phrase: 'of August'AugustscheduleDialogAnnullaCancelscheduleDialogSeleziona questo se il tuo pc non supporta un'interfaccia grafica (es. server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogConsole Mode Console ModescheduleDialogDicembreDecemberscheduleDialogDicembrefull phrase: 'of December'DecemberscheduleDialogbRitardo dell'esecuzione di luckyBackup dall'avvio&Delay luckybackup execution at startupscheduleDialog4Mostra il crontab correnteDisplay the current crontabscheduleDialogEsegui profiloExecute profilescheduleDialogFebbraioFebruaryscheduleDialogFebbraiofull phrase: 'of February'FebruaryscheduleDialogVenerdiFridayscheduleDialog$Profilo non validoInvalid profilescheduleDialogGennaioJanuaryscheduleDialogGennaiofull phrase: 'of January'JanuaryscheduleDialog LuglioJulyscheduleDialog Lugliofull phrase: 'of July'JulyscheduleDialog GiugnoJunescheduleDialog Giugnofull phrase: 'of June'JunescheduleDialog MarzoMarchscheduleDialog Marzofull phrase: 'of March'MarchscheduleDialog MaggioMayscheduleDialog Maggiofull phrase: 'of May'MayscheduleDialogDModifica profilo di pianificazioneModify profile schedulescheduleDialogbModifica il profilo di pianificazione selezionato Modify selected profile schedulescheduleDialog LunediMondayscheduleDialogBNessuna pianificazione presente!!No schedules are declared !!scheduleDialogNovembreNovemberscheduleDialogNovembrefull phrase: 'of November'NovemberscheduleDialogOttobreOctoberscheduleDialogOttobrefull phrase: 'of October'OctoberscheduleDialogProfilo: Profile :scheduleDialogLDettagli del profilo di pianificazioneProfile schedule detailsscheduleDialog`Rimuovi il profilo di pianificazione selezionato Remove selected profile schedulescheduleDialog6Esegui una volta, all'avvioRun once, at startupscheduleDialog SabatoSaturdayscheduleDialogSettembre SeptemberscheduleDialogSettembrefull phrase: 'of September' SeptemberscheduleDialogSalta i task che generano un avviso 'CRITICO' dopo il controllo delle cartelleSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog&In partenza da zeroStarting from scratchscheduleDialogDomenicaSundayscheduleDialogIl file di pianificazione esistente non un file luckyBackup v. valido8The existent schedule file is not a valid luckyBackup v.scheduleDialogGiovediThursdayscheduleDialogMartediTuesdayscheduleDialog>Impossibile creare il file cronUnable to create cron filescheduleDialogXImpossibile creare il file di pianificazioneUnable to create schedule filescheduleDialogMercoledi WednesdayscheduleDialogxHai effettuato dei cambiamenti senza premere il tasto cronIT8You have made changes without clicking the cronIT buttonscheduleDialog stato raggiunto il limite massimo di profili di schedulazione supportatiBYou have reached the maximum limit of supported scheduled profilesscheduleDialoglDevi rimuovere un elemento se ne vuoi aggiungere altri5You have to remove an item if you wish to add anotherscheduleDialog\La tua crontab stata aggiornata con successo$Your crontab is updated successfullyscheduleDialogaggiungiaddscheduleDialogaatscheduleDialog chiudiclosescheduleDialog*chiudi questo dialogoclose this dialogscheduleDialogpianifica !! cronIT !!scheduleDialog*contenuto del crontabcrontab contentscheduleDialog giornodayscheduleDialog giorno del mese:day of month :scheduleDialog.giorno della settimana: day of week :scheduleDialogognieveryscheduleDialog8luckyBackup - pianificazioneluckyBackup - schedulescheduleDialogminminscheduleDialogmodificamodifyscheduleDialog mese:month :scheduleDialogndscheduleDialogas in 22nd dayndscheduleDialogHnon esiste alcuna voce nella crontabno crontab entries existscheduleDialogdiofscheduleDialogdi ogni mese of any monthscheduleDialogokokayscheduleDialog@una volta, all'avvio del sistemaonce, at system startupscheduleDialogrdscheduleDialogas in 23rd dayrdscheduleDialogcancellaremovescheduleDialognpianifica l'esecuzione dei profili come descritto sopra@schedule the execution of profiles as declared in the list abovescheduleDialogsalta critici skip criticalscheduleDialogstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialog(orario (ore:minuti):time (hour:min) :scheduleDialog0vedi il crontab correnteview current crontabscheduleDialogJEsiste gi un profilo con questo nome+A profile with the same name already exists textDialogBSei sicuro di volere procedere ??#Are you sure you wish to proceed ?? textDialogSTAI ATTENTO, se la tua intenzione NON quella di duplicare il sorgente nella destinazione !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogAnnullaCancel textDialog<Copia il comando negli appuntiCopy command to clipboard textDialogJNon mostrare di nuovo per questo task$Do not show this again for this task textDialog@Inserisci la frase di sicurezza:Enter passphrase : textDialog,Inserisci la password:Enter pasword : textDialogHInserisci il nome del nuovo profilo:#Enter the name of the new profile : textDialogHInserisci il nuovo nome del profilo:#Enter the new name of the profile : textDialogNoNo textDialogokOkay textDialog2Inserisci un nome diversoPlease enter a different name textDialog.Descrizione del profiloProfile description : textDialogSYes textDialogHai selezionato l'opzione "Copia il contenuto della cartella sorgente"<br>insieme all'opzione "elimina i file nella cartella di destinazione"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog*email di informazionieMail information textDialogluckyBackup luckyBackup textDialogCancellaCancel winDialogbInserire il percorso completo del comando cygpath*Enter the full path of the cygpath command winDialog\Inserisci percorso completo del comando dosdev)Enter the full path of the dosdev command winDialoglInserisci percorso completo della cartella luckybackup0Enter the full path of the luckybackup directory winDialog`Inserisci il percorso completo del comando rsync(Enter the full path of the rsync command winDialog\Inserisci il percorso completo del comando ssh&Enter the full path of the ssh command winDialogjInserisci percorso completo della cartella temporanea.Enter the full path of the temporary directory winDialog.File eseguibili (*.exe)Executable Files (*.exe) winDialogOKOkay winDialog2Seleziona comando cygpathSelect cygpath command winDialog0Seleziona comando dosdevSelect dosdev command winDialog4Seleziona il comando rsyncSelect rsync command winDialog0Seleziona il comando sshSelect ssh command winDialog0Usa il valore di defaultUse default value winDialog cerca localmentebrowse locally winDialogcygpath:cygpath: winDialog4dichiarazione dei percorsideclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog(cartella principale: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog(cartella temporanea: temp dir: winDialog"cartella vshadow: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_no.qm0000666000175000017500000035004413157502317021504 0ustar luckybluckybE6KY]lggghYzJuf fvf@uvSs E<45SN~Cpapa-ajDaaa4h@ өE ص'H5o nwǀ"fP({Y)l)*`3*0+++D,B=/]^<:BTaEttKFZ9\G|G0\J6ZJ;J;dwJwBPd%WPdPdTZhT[^\ZQ`vj6jj6j6$/j6 mCmpqhtdoxz&KY7^}-2jQZL3`8a/_W's$7>'`ĉT˱ (~ES-ى>$ݯK4fXX<=E*J#kGr d9!b>(e'W+&p.+ö6F7ma<$}QRR[6_/dfC.KhzpNpNTq>tco!H7և-)DYE65ѐSdiAu^Գŵsv  ,'z3 _a)bWK ;&o )z+28IqBZytWC c6I1PoE,zYB>h\c*.c)f:@uG|BFGOR]`saRCg( &$+'0mCUNk0P,#÷]ԥ{*xVl[{%&ErS-)"6ZZGҐ O"o/y^; kg AvZ&V\a4)q4) ,b8Myy:M,Tz_rUweah !4tM.e .e0Tcw>! $]%pgt!HMXŇ#=ʵP [~ܯ"9;)>^b[~e]u >^ysimRsQ AoWL~=OM8Ojz*iiYzv|i^lwUrt)}7M;:Sօ2iIzI2ITIIlIx ,KEфN Z./HeFMgu Ai8:d{ViO2 qp A`B8x2Q=  \xl@'m6>$n hn p^"txAvW2yTK~i(Ft9/ȕ`ȕaȕ}g:tî"=bߘ'?R}&v U">" @;K2CKOeVfI_Av^w_hDPb#f0iLgrhnhn iNis;kՒkՒ%sDv3(y~gCvb (T/4x_YtuEԎR[I#IunS`h#V[y$Ȓ}(%':@Zx   |u{ `2$읒SX_#` 8 X% l|:Bd^;(W+e-zHV2 '9Y͎N3sUt†Yvwxa#VvuBv:{PI`3nڄ(.F_F^F9ϕ~i;VΕ9UU uȣ}rldg[G%Bbȕ.4aGXT"GU"jUT{nf~Enǧ-~u]^?̐jcII3%_׃xvߖb'{3y3y.2  C~;t"%)@&,-!/e99GҗF\IX9avJwL2N,PO1Ry YV)gh 1VmwzG^@x5R6. p(ʴ5|ʶh'V,7ĆB]a5) N  cp, q.}  #rp +)c 6J 8Z CcK#x Mg/ Mg@3 N# W] ] aY9 dp j^m l\ lRcz mE pD q R ]| @~ e}* r- i < a.M -B: Z# '-G Ԡ;Q ` ׊$ =, % Ѿ 2 Tm {  c2u z  o _ -0 -nd /l$ 7E~ 8 ? @ | `Y f g l 4 pN% zj C S ,3 k{ HW F iS ~ cX XB_7 vo 24 bD6 ,@  GCg ñ ne '* Xh t$0 ԑj @i ݓ( Y T i 7 O pR v  Vds dzu d #t (N, +U -jm 0bR 7'yX 93Bc :UC \ ;g E Ge' HZ PA T, Zj _ym _ fw g.wg g.wܾ g.w# iz: mZ { { { b  FC Ҟ " (  YC iA e a{" {! u)\ w x{ d| c P r M0# O $+ V  `j 7  S &Y 3\ du ^2 E@ u wF P)s > M; !* ! # /& 79 79Z 9)rhG < > >ӊZ @el A. Acs^ Eh F F.{ N0 P} Szd XY ^ bU o o9 r'^ v B t i j ]  rgX \% C " UN4 qY  W T *? s % ; 2h Rb[  ?BQ  ;X sf8 @ T &, &' ) *}E + ,D < ,D%3 6: \.~3 c iD mWv {y= e 1"  m { * &t i2?2 msߙ co Xwn ' fU zh lz}% v  j las [ " ,7 ݗz #. 䕜 b c2t  S 8 8 8 i 6H=,es>!<C~[ "ԵX'~(q*#:WE7GmJ /Tba\P].cRacRqe~UmRxp{>Oyi)#{@rU\<X={RA\zp$rIuR֭u 3yMk{d'4U"$_!eT+ CI'p#!&)Ng+(դ)(դ-X`h<E|E^G E9vRN>"[=I^iVckf/lnJsfsg u@u@~(NYbB4 fCt0)1*A5yrE !v!ʱN+\Lu _R֙SB\Gߖ l<]]dI0.Dkŕri(Beregner differanserCalculating differencesCalcDiffThread^Datamenger er store. Viser kun de frste delne.2Data amount is huge. Displaying only first entriesCalcDiffThreadVennligst vent Please waitCalcDiffThread,Gjennomsker mlomrdeScanning destinationCalcDiffThread*Gjennomsker snapshotScanning snapshotCalcDiffThread0Gjennomsker kildeomrdeScanning sourceCalcDiffThread:Snapshot og kilde differanserSnapshot and source differencesCalcDiffThreadzSnapshot data som ogs finnes i kildemappen og er forskjellig=Snapshot data that also exists at the source and is differentCalcDiffThreadLSnapshot data som IKKE finnes i kilden-Snapshot data that do NOT exist at the sourceCalcDiffThreadHKildedata som IKKE finnes i snapshot-Source data that do NOT exist at the snapshotCalcDiffThread2Synkroniser A og B mapperSync dir A & B differencesCalcDiffThreadVSynk mappe A data som IKKE finnes i mappe B/Sync dir A data that do NOT exist at sync dir BCalcDiffThread|Synk mappe B data som ogs finnes i mappe A og er forskjellig ?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadVSynk mappe B data som IKKE finnes i mappe A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadrSnapshot data vil erstatte kildedata ved TILBAKEKOPIERING=The snapshot data will replace the source data during RESTORECalcDiffThreadDisse vil bli slettet ved TILBAKEKOPIERING kun dersom du slr p valgetCThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadnslett eksisterende kildedata som ikke finnes ved backup;delete existing source data that do not exist at the backupCalcDiffThreadVKopierer profil, loggfiler og snapshot data.Backing-up profile, logfiles and snapshot dataQObjectKRITISKCRITICALQObjectVKommando kjrer p nytt pga. tidligere feilCommand re-run due to failureQObject0Klarte ikke pne loggfilCould not open the logfileQObjectMl DestinationQObjectMlmappeDestination directoryQObject Mappe DirectoryQObjectlJeg har ikke tillatelse til lese / se i synk mappe A;I do not have the permission to read/enter sync directory AQObjecthJeg har ikke tillatelse til lese/se i synk mappe B;I do not have the permission to read/enter sync directory BQObjectfJeg har ikke tillatelse til lese / se i mlmappenDI do not have the permission to read/enter the destination directoryQObjectjJeg har ikke tillatelse til lese / se i kildemappen?I do not have the permission to read/enter the source directoryQObjectJeg vil <font color=orange><b>ikke hoppe over</b></font> denne oppgaven. Synkronisering vil bli utfrt uansett.iI will not skip this task. Synchronizing is going to be performed anywayQObjectJeg vil <font color=red><b>IKKE HOPPE OVER</b></font> denne oppgaven fordi du har sltt p "overse ADVARSEL" valgetmI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject*Siste eksekveringstidLast execution timeQObjectOKOKQObjectnVennligst <b>fjern relevant kryss</b> fr du fortsetterAPlease uncheck appropriate include boxes before proceedingQObjectVennligst fjern relevante inkluderingsbokser, eller endre alle oppgavetyper til noe annet enn '<b>Kopier mappe innhold</b>' eller bruk 'Kopier mappe innhold' sammen med '<b>Inkluder kun</b>' opsjonen, fr du fortsetterPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject KildeSourceQObjectKildemappeSource directoryQObject"Synkroniser mappeSync directoryQObjectSynkronisererSyncingQObjectSynkroniserer'Full phrase: Syncing to SyncingQObject$OppgavebeskrivelseTask descriptionQObjectMlmappen vil bli opprettet om den ikke finnes, og fylt med nye backup data]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject,Flgende inkluderte oppgaver <b>deler samme mlmappe</b> (alle sammen eller i grupper) og minst en av de vil ta sikkerhetskopi av innholdet i en mappeThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject<Klarte ikke opprette loggfilen The logfile could not be createdQObject*Loggfilen finnes ikkeThe logfile does not existQObject:Prosessen rapporterte en feilThe process reported an errorQObjectbSpesifisert kommando er antakelig ikke installert/The specified command is probably not installedQObject(Oppgavelisten er tomThe task list is emptyQObject|Denne oppgaven vil <font color=orange><b>ikke bli hoppet over3This task will not be skippedQObjectDenne oppgaven vil bli <font color=red><b>hoppet over</b></font>7This task will be skippedQObject8Fjernbruk, hopper over sjekkUsing remote, check is skippedQObjectADVARSELWARNINGQObjectnDu har inkludert begge flgende sammenhengende oppgaver8You have included both of the following connected tasks:QObjectFDu har ikke inkludert noen oppgaverYou have not included any tasksQObjectog/ellerand/orQObjectkommando: command: QObjecteksisterer ikkedoes not existQObjectfeil funnet errors foundQObject@eksekvering av 1. del av oppgaveexecution of 1st part of taskQObject@eksekvering av 1. del av oppgave?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject@eksekvering av 2. del av oppgaveexecution of 2nd part of taskQObject.eksekvering av oppgaverexecution of taskQObject,eksekvering av oppgave3Full phrase: execution of task: finishedexecution of taskQObject,eksekvering av oppgavedFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectexit kode: exit code: QObject ferdigfinishedQObject ferdig?Full phrase: execution of 1st part of task: finishedfinishedQObject ferdig3Full phrase: execution of task: finishedfinishedQObject ferdigCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectvferdig pga. feil i eksekvering av kommando pre/post-oppgave9finished because of pre/post task command execution errorQObject ledigfreeQObject er tomis emptyQObject0er tom eller finnes ikkeis empty or does not existQObjecter ikke montertis not mountedQObjectingen feil no errorsQObject"ikke tilgjengelig not availableQObject$Ingenting startenothing to startQObjectutskrift: output: QObjectHpost-oppgave eksekvering av kommandopost-task execution of commandQObjectHpost-oppgave eksekvering av kommandoCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectFpre-oppgave eksekvering av kommandopre-task execution of commandQObjectFpre-oppgave eksekvering av kommandoBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectstarterstartingQObjectstarter?Full phrase: execution of 1st part of task: startingstartingQObjectstarter?Full phrase: execution of 2nd part of task: startingstartingQObjectstarter3Full phrase: execution of task: startingstartingQObjectstarter?Full phrase: post-task execution of command: startingstartingQObject statusstatusQObjectRdette er ikke tillatt av opplagte grunner'this is not allowed for obvious reasonsQObjectjdette vil fre til at en oppgave kansellerer en annen.this will lead to one task canceling the otherQObjecttiltoQObjecttil'Full phrase: Syncing to toQObject0Klarte ikke pne loggfilCould not open the logfile ReadLogFile&Om&About aboutDialog&Lisensavtale &License Agreement aboutDialog&Support&Support aboutDialog&Takk til &Thanks to aboutDialog...my other half, <b>Dimitra</b> that bears with me all these times that this project is under developmentj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog....to all users of the ...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog&ForfatterA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog*Arabic gui oversetterArabic gui translator aboutDialogjArch linux package/pkgbuild official maintainer (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAthen, HellasAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialog2Backup & Synk applikasjonBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialoghBosnian gui translator & mandriva package maintainer4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog0Bulgarian gui translatorBulgarian gui translator aboutDialog,Catalan gui translatorCatalan gui translator aboutDialog@Chinese (Taiwan) gui oversetter Chinese (Taiwan) gui translator aboutDialogBidragsyter for fjernstyring og vss sttte til Windows porteringenDCode contributor for remote & vss support regarding the windows port aboutDialog*Fant ikke lisensfilen!Could not locate the license file aboutDialog(Czech gui oversetterCzech gui translator aboutDialog2Debian package maintainerDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog(Dutch gui translatorDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogEspecially Especially aboutDialog.Estonian gui translatorEstonian gui translator aboutDialogRFedora package maintainer (official repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog6Free BSD package maintainerFree BSD package maintainer aboutDialog*French gui oversetterFrench gui translator aboutDialogFrench gui translator and valuable packing advisor (and not only)AFrench gui translator and valuable packing advisor (and not only) aboutDialog.Galician gui translatorGalician gui translator aboutDialog0Gentoo ebuild maintainerGentoo ebuild maintainer aboutDialog*German gui translatorGerman gui translator aboutDialog(Give a thumbs up at:Give a thumbs up at: aboutDialogPGreek gui translator and valuable tester(Greek gui translator and valuable tester aboutDialog.Greek manual oversetterGreek manual translator aboutDialogI personally never had and never will accept money for this project.DI personally never had and never will accept money for this project. aboutDialogIf it wasn't him and his tutorials I would never have started this projectJIf it wasn't him and his tutorials I would never have started this project aboutDialogIf you like this app and would like to donate something to me personally, all you have to do is:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog|It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.It 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, version 3 of the License. aboutDialog>Det distribueres i hp om at det vil vre til nytte, men UTEN ENHVER GARANTI; selv uten implisert garanti av handelbarhet eller egnethet for et bestemt forml.It 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. aboutDialog,Italian gui translatorItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog"Last but no leastLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogfMandriva package maintainer (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMepis package maintainer (Community repo) & Spanish gui translatorBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNevertheless, I decided to use luckyBackup to support people that really need financial help.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog0Norwegian gui translatorNorwegian gui translator aboutDialogOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisorNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog2Portuguese gui translatorPortuguese gui translator aboutDialog:Puppy pet & sfs vedlikeholderPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog.Romanian gui translatorRomanian gui translator aboutDialogRRussian gui oversteer og verdifull tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogVSe 'Lisensavtale' fanen for flere detaljer.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog6Slackel pakke vedlikeholderSlackel package maintainer aboutDialog*Slovak gui oversetterSlovak gui translator aboutDialog0Slovenian gui translatorSlovenian gui translator aboutDialogSo, please consider it seriously to donate money that will eventually be used for a good cause._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog,Spanish gui oversetterSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog,Swedish gui oversetterSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogIndices teametThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog(This is my reward :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog,Turkish gui translatorTurkish gui translator aboutDialog Valuable advisorValuable advisor aboutDialog8Vote good & become a fan at:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogLbackupwhenidle python script developer&backupwhenidle python script developer aboutDialoglukkclose aboutDialog*lenke for donasjoner  donation link aboutDialog8ex Fedora package maintainerex Fedora package maintainer aboutDialogfor utvikling av den fantastiske oversetting plattformen og gjre den fritt tilgjengeligVfor developing the wonderful transifex localization platform and providing it for free aboutDialog2forums for their support.forums for their support. aboutDialog fri13fri13 aboutDialogluckyBackup omluckyBackup - about aboutDialogluckyBackup distribueres under betingelsene i <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog moneymoney aboutDialogno moneyno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog,porting til MS Windowsport to MS Windows aboutDialog port to Mac OS Xport to Mac OS X aboutDialogport to OS/2 port to OS/2 aboutDialogxrpm packager, valuable tester and remote connections advisor <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialoglukkclose logDialog"laster loggfil...loading logfile... logDialogVluckyBackup - progresjon for oppgavekjring&luckyBackup - tasks execution progress logDialogneste feil next error logDialogforrige feilprevious error logDialogventwait logDialog&Avbryt&AbortluckyBackupWindow&Om&AboutluckyBackupWindow&Legg til&AddluckyBackupWindow Slett&DeleteluckyBackupWindow&Hndbok &HandbookluckyBackupWindow &Hjelp&HelpluckyBackupWindow&Importer&ImportluckyBackupWindow &Sprk &LanguageluckyBackupWindow2%Minimer til oppgavelinje&Minimize to trayluckyBackupWindow &Endre&ModifyluckyBackupWindow&Ny&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Avslutt&QuitluckyBackupWindow&Oppfrisk&RefreshluckyBackupWindow &Fjern&RemoveluckyBackupWindow&Gjenopprett&RestoreluckyBackupWindow &Lagre&SaveluckyBackupWindow&Innstillinger &SettingsluckyBackupWindow&Oppgave&TaskluckyBackupWindow&OppgaveThis is a top menu action&TaskluckyBackupWindow&Knapperader &ToolbarsluckyBackupWindow0&Vis / Endre beskrivelse&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowAVBRUTTABORTEDluckyBackupWindow AvbrytAbortluckyBackupWindowTAvbryter: Vent til alle prosesser er drept4Aborting: Please wait for all processes to be killedluckyBackupWindowHandlingerActionsluckyBackupWindowfAlle relevanter filer (logger osv) ble ogs slettet4All relevant files (logs etc) have also been deletedluckyBackupWindowhAlle relevante filer (logger osv) ble ogs duplisert7All relevant files (logs etc) have also been duplicatedluckyBackupWindowhAlle relevante filer (logger osv) ble ogs oppdatert4All relevant files (logs etc) have also been updatedluckyBackupWindow(Alle oppgaver utfrtAll tasks completedluckyBackupWindowXEr du sikker p at du nsker slette profilen'Are you sure you want to delete profileluckyBackupWindowhEr du sikker p at du nsker slette standardprofilen3Are you sure you want to delete the default profileluckyBackupWindowhEr du sikker p at du vil fjerne flgende oppgave ??5Are you sure you want to remove the following task ??luckyBackupWindowVBegynn utfring av alle inkluderte oppgaver)Begin the execution of all included tasksluckyBackupWindowAvkryssingsboksCheckBoxluckyBackupWindowvSjekker sltt av. Denne oppgaven vil bli <b>hoppet over</b>5Checks are disabled. This task will be skippedluckyBackupWindowFant ikke filenCould not locate the fileluckyBackupWindownKlarte ikke oppdatere siste utfrelsestid for oppgavene-Could not update last execution time of tasksluckyBackupWindowKrsjetCrashedluckyBackupWindow2Opprett &Duplikat oppgaveCreate D&uplicate taskluckyBackupWindowBOpprett &Tilbakekopiering oppgaveCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindow Gjeldende profilCurrent ProfileluckyBackupWindow&Dupliser D&uplicateluckyBackupWindowStan&dardDe&faultluckyBackupWindowBeskrivelse DescriptionluckyBackupWindowMl DestinationluckyBackupWindow Mappe DirectoryluckyBackupWindow FerdigDoneluckyBackupWindowTrrDryluckyBackupWindow E&postE&mailluckyBackupWindow&EksporterE&xportluckyBackupWindowFEILERRORluckyBackupWindowAVSLUTTEXITluckyBackupWindowPassert tid Elapsed timeluckyBackupWindowlEpost preferanser er blitt <font color=green>oppdatertBEmail preferences have been updated successfullyluckyBackupWindowTSend rapport som epost etter profilkjring$Email report after profile executionluckyBackupWindow NorskEnglishluckyBackupWindow NorskDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowTFeil oppstod under overfring av loggfiler'Errors occured during logfiles transferluckyBackupWindowlFeil oppstod under overfring av snapshot og loggfiler5Errors occured during snapshots and logfiles transferluckyBackupWindowTFeil oppstod under overfring av snapshots(Errors occured during snapshots transferluckyBackupWindowNFeil oppstod under overfring av profil/Errors occured during the profile file transferluckyBackupWindow"Kjring av profilExecution of profileluckyBackupWindow<Eksekvering av oppgaver ferdigExecution of tasks finishedluckyBackupWindow`Utfring av oppgaver ble brtt avbrutt av bruker4Execution of tasks were terminated violently by userluckyBackupWindowAvsluttExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindow:Klarte ikke opprette mlmappe&Failed to create destination directoryluckyBackupWindow<Lyktes ikke opprette ny profilFailed to create new profileluckyBackupWindowjKlarte ikke slette alle relevanter filer (logger osv).Failed to delete all relevant files (logs etc)luckyBackupWindow6Klarte ikke slette profilenFailed to delete profileluckyBackupWindownKlarte ikke duplisere alle relevante filer (logger osv)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow<Klarte ikke duplisere profilenFailed to duplicate profileluckyBackupWindow<Klarte ikke duplisere profilenFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow>Klarte ikke eksportere profilenFailed to export profileluckyBackupWindow8Klarte ikke importere profilFailed to import profileluckyBackupWindow2Klarte ikke omdpe profilFailed to rename profileluckyBackupWindow6Klarte ikke erstatte profilFailed to replace profileluckyBackupWindow$Klarte ikke starteFailed to startluckyBackupWindowtKlarte ikke oppdatere alle relevante filer (loggfiler osv).Failed to update all relevant files (logs etc)luckyBackupWindow.Skjul informasjonsvinduHide information windowluckyBackupWindow.Skjul informasjonsvindu+hide/show information window button tooltipHide information windowluckyBackupWindowImporter profilImport ProfileluckyBackupWindow"InformasjonsvinduInformation windowluckyBackupWindow"Informasjonsvinduinformation window titleInformation windowluckyBackupWindowZTid for siste utfrelse av oppgaver oppdatert$Last execution time of tasks updatedluckyBackupWindowLListe over alle tilgjengelige oppgaverList of all the available tasksluckyBackupWindowLsLockluckyBackupWindowHndter &backupManage &BackupluckyBackupWindowHndter oppgave Manage TaskluckyBackupWindowFFlytt valgt oppgave ned en posisjon/Move the highlighted task down, by one positionluckyBackupWindowFFlytt valgt oppgave opp en posisjon-Move the highlighted task up, by one positionluckyBackupWindowNEINOluckyBackupWindowIKKE INKLUDERT NOT INCLUDEDluckyBackupWindowMERKNOTEluckyBackupWindow"Ingen feil funnetNo errors foundluckyBackupWindow Utfrer oppgavenNow performing taskluckyBackupWindownVis kun feil og viktige meldinger ved vindusoppdatering could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindowZProgresjonsindikator vil ikke vre realistisk(Progressbar update will not be realisticluckyBackupWindow &OmdpR&enameluckyBackupWindowLesefeil Read errorluckyBackupWindow@Fjernet alle gamle snapshot data Removed all older snapshots dataluckyBackupWindowFjernerRemovingluckyBackupWindow`Fjerner gamle snapshot og loggfiler for oppgaven+Removing old snapshots and logfiles of taskluckyBackupWindowKjrRunluckyBackupWindow&Skeduler S&cheduleluckyBackupWindow"Velg eksportmappeSelect export directoryluckyBackupWindow"Sett som StandardSet as DefaultluckyBackupWindowSett stier Set pathsluckyBackupWindowLSett stier for rsync og ssh kommandoer$Set paths for rsync and ssh commandsluckyBackupWindow*Vis informasjonsvinduShow information windowluckyBackupWindow*Vis informasjonsvindu+hide/show information window button tooltipShow information windowluckyBackupWindow,Vis tekst under ikonerShow text under iconsluckyBackupWindow KildeSourceluckyBackupWindowRStopp eksekvering av kjrende oppgaver N'Stop the execution of running tasks NOWluckyBackupWindow$Opprettet mlmappe)Successfuly created destination directoryluckyBackupWindowOppgaveTaskluckyBackupWindowOppgaveliste Task listluckyBackupWindow,Profilens oppgavelisteTask list of profileluckyBackupWindow.Beskrivelse av profilenThe description of profileluckyBackupWindowhMappen du valgte inneholder ingen gyldige profildataCThe directory you have selected does not contain valid profile dataluckyBackupWindowZNavnet du oppga inneholder bare ugyldige tegn:The name you have entered contains only invalid charactersluckyBackupWindow<Systemet avslutter om 1 minutt$The system will shutdown in 1 minuteluckyBackupWindow(Oppgavelisten er tomThe task list is emptyluckyBackupWindowDette vil gjennomfre en <b>simuleringskjring</b> som ikke gjr endringer (men stort sett viser samme output som en ekte kjring){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowGikk over tid Timed outluckyBackupWindow.Klarte ikke pne profilUnable to open profileluckyBackupWindowUkjent feil Unknown errorluckyBackupWindowUkjent feilthis refers to a process Unknown errorluckyBackupWindow^Bruk 'Legg til' knappen til hyre for begynne0Use the "add" button on the right to get startedluckyBackupWindowBruk 'inkluder kryssbokser' for bestemme om valgte oppgaver skal inkluderes eller ikke>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindow<Vis / Endre profilbeskrivelsen!View/Edit the profile descriptionluckyBackupWindowADVARSELWARNINGluckyBackupWindowVelkommen til Welcome toluckyBackupWindow&Vil du ogs fjerne:Would you like to also remove:luckyBackupWindow2Vil du likevel fortsette?!Would you like to proceed anyway?luckyBackupWindow(Vil du erstatte den?Would you like to replace it ?luckyBackupWindow@Vil du lagre fr vi fortsetter ?-Would you like to save it before proceeding ?luckyBackupWindowSkrivefeil Write errorluckyBackupWindowJAYESluckyBackupWindow@Du har ndd maks antall oppgaver5You have reached the maximum limit of supported tasksluckyBackupWindowlDu m fjerne en oppgave hvis du nsker legge til en!7You have to remove a task if you wish to add another !!luckyBackupWindowben ny tom profil med samme navn vil bli opprettet4a new blank one, with the same name, will be createdluckyBackupWindowlegg tiladdluckyBackupWindow legg til oppgaveadd taskluckyBackupWindowfinnes alleredealready existsluckyBackupWindow4og 'profil' nedtrekkslisteand 'profile' drop-down listluckyBackupWindow0og lagt til profillistenand added at the profile listluckyBackupWindowZog endre det du mtte nske for du fortsetter.and change anything you wish before proceedingluckyBackupWindowsomasluckyBackupWindowsomFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowberegner calculatingluckyBackupWindowberegner-info message displayed during ...calculations calculatingluckyBackupWindow"kommando utskriftcommands outputluckyBackupWindow$ble ikke opprettetcould not be createdluckyBackupWindow"kunne ikke lagrescould not be savedluckyBackupWindowble ikke lagretPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindowopprettetcreated successfullyluckyBackupWindow:oppretter standard profil ...creating default profile ...luckyBackupWindow(oppretter profil ...creating profile ...luckyBackupWindowZgjeldende crontab <font color=green>oppdatert6current crontab updated successfullyluckyBackupWindow gjeldende profilcurrent profileluckyBackupWindowstandard profildefault profileluckyBackupWindow standard profile^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowstandard profilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindowslettetdeleted successfullyluckyBackupWindowsletter filerdeleting filesluckyBackupWindowsletter filer/info message displayed during ...file deletionsdeleting filesluckyBackupWindowvis - tilbakekopier - slett eksisterende backups for merket oppgave?display - restore - delete existing backups of highlighted taskluckyBackupWindowLvis informasjon angende valgt oppgave.display information regarding highlighted taskluckyBackupWindowduplisert somduplicated successfully asluckyBackupWindowfeil funnet errors foundluckyBackupWindow$kjring av profil:execution of profile:luckyBackupWindow$kjring av profil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindoweksportert tilexported successfully toluckyBackupWindow$klarte ikke fjernefailed to removeluckyBackupWindowVklarte ikke fjerne alle gamle snapshot data)failed to remove all older snapshots dataluckyBackupWindow ferdigfinishedluckyBackupWindow ferdig:full phrase: 'Execution of profile finished'finishedluckyBackupWindowimportertimported successfullyluckyBackupWindowpgr...in progress...luckyBackupWindowinkluderincludeluckyBackupWindowble endret is modifiedluckyBackupWindow$er ikke gyldig foris not valid forluckyBackupWindow"g til neste feiljump to next errorluckyBackupWindow&g til forrige feiljump to previous errorluckyBackupWindow(vellykket innlastingloaded successfullyluckyBackupWindow4laster standard profil ...loading default profile ...luckyBackupWindow"innlasting feiletloading failedluckyBackupWindow"laster profil ...loading profile ...luckyBackupWindowFloggfil(er) ble opprettet i mappen:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow0minimer til oppgavelinjeminimize to trayluckyBackupWindow@minimerer vindu til oppgavelinen%minimizes the window to the tray arealuckyBackupWindow&endre valgt oppgavemodify highlighted taskluckyBackupWindow"ingenting gjre nothing to doluckyBackupWindowHutfrelse av kommando etter oppgavenpost-task execution of commandluckyBackupWindowDutfrelse av kommando fr oppgavenpre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow profilprofile luckyBackupWindowstille modus quiet modeluckyBackupWindowoppfrisket refreshedluckyBackupWindow fjernremoveluckyBackupWindow&fjern valgt oppgaveremove highlighted taskluckyBackupWindowomdpt tilrenamed successfully toluckyBackupWindowomdpt tilWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowbutskrift fra rsync og pre/post oppgaver vises her9rsync and pre/post task commands output is displayed hereluckyBackupWindowlagret saved successfullyluckyBackupWindow4lagrer standard profil ...saving default profile ...luckyBackupWindow"lagrer profil ...saving profile ...luckyBackupWindowplanlagt scheduledluckyBackupWindow"sett som standardset as defaultluckyBackupWindowsatt tilset toluckyBackupWindowsl av maskinshutdownluckyBackupWindow simuleringsmodussimulation modeluckyBackupWindow statusstatusluckyBackupWindowsuper bruker super userluckyBackupWindow$super bruker modussuper user modeluckyBackupWindowtiltoluckyBackupWindowoverfrer filertransferring filesluckyBackupWindowoverfrer filer/info message displayed during ...file transferstransferring filesluckyBackupWindow,forsker sende eposttrying to send an emailluckyBackupWindowversjon:version:luckyBackupWindow$Beregn differanserCalculate differences manageDialogbBeregn differanser mellom kilde og valgt snapshotFCalculate the differences between the source and the selected snapshot manageDialog:Beregninger avbrutt av brukerCalculations terminated by user manageDialogLukClose manageDialog Lukk dette vinduClose this window manageDialog SlettDelete manageDialogHSlett valgt snapshot og dets loggfil,Delete the selected snapshot and its logfile manageDialog`Jeg har ikke tillatelser til se i denne mappen;I do not have sufficient permissions to read this directory manageDialog6Velg et snapshot fra listen&Please select a snapshot from the list manageDialogFVent til oppgavetrden er terminert*Please wait until the thread is terminated manageDialogTilbakekopierRestore manageDialog8Tilbakekopier valgt snapshotRestore the selected snapshot manageDialog STOPPSTOP manageDialog(Stopp beregninger NStop calculations NOW manageDialog0Denne mappen finnes ikkeThis directory does not exist manageDialog0Denne mappen finnes ikkeInformation messageThis directory does not exist manageDialog<Vis loggfil for valgt snapshot)View the logfile of the selected snapshot manageDialogXVis loggfil for valgt synkroniseringsoppgave*View the logfile of the selected sync task manageDialogml: destination: manageDialogskjul kilde hide source manageDialog8luckyBackup - hndter backupluckyBackup - manage backup manageDialog"ikke tilgjengelig not available manageDialog profilprofile manageDialog kilde:source: manageDialogSynk mappe A sync dir A manageDialogsynk mappe B sync dir B manageDialogoppgavetask manageDialogvis loggview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizard AVBRYTABORT manageWizardAvbruttAborted manageWizardBackup sti Backup path manageWizardXBla gjennom for finne ny gjenopprett-mappe%Browse locally for a new restore path manageWizard~Velg dette for klone backup snapshotet til Gjenopprett-mappenBCheck this, to clone the backup snapshot to the restore directory. manageWizardDato & tid Date & time manageWizardSlett backup Delete backup manageWizarddSlett eksisterende data som ikke finnes i backupen4Delete existing data that do not exist at the backup manageWizardSletter data Deleting data manageWizardTSletter fil som viser snapshot forskjeller)Deleting file that lists snapshot changes manageWizard,Slett snapshot loggfilDeleting snapshot logfile manageWizardEksisterende backupfiler vil erstatte tilsvarende filer i Gjenopprett-mappenSExisting backup files will replace the corresponding files at the restore directory manageWizard FerdigFinished manageWizardHvis informasjonen over er korrekt, klikk '<b>start</b>' for begynne@If the information above is correct, click start to begin manageWizardHvis informasjonen over er korrekt, klikk <b>start</b> for begynne`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard&Hopp til neste feilJump to next error manageWizard*Hopp til forrige feilJump to previous error manageWizardrIngen snapshot-spesifikke data eksisterer. Hopper over...,No snapshot specific data exist. Skipping... manageWizardStiPath manageWizard$Gjenopprett backupRestore backup manageWizardGjenopprett-sti Restore path manageWizard>Gjenoppretter data: hoved trunkRestoring data: main trunk manageWizardDGjenoppretter data: snapshot filerRestoring data: snapshot files manageWizard4Velg ny gjennopprett-mappeSelect new restore directory manageWizardrGjenopprett-mappen vil bli identisk med backup snapshotetBThe restore directory will become identical to the backup snapshot manageWizardDette vil gjre en <b>simuleringskjring</b> som ikke gjr endringer, men stort sett viser samme utskrift som en ekte kjring{This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard>Oppdaterer liste over snapshotsUpdating list of snapshots manageWizardADVARSELWARNING manageWizardJDu er i ferd med slette backup data#You are about to delete backup data manageWizard avbrytcancel manageWizard endrechange manageWizardlukkclose manageWizardfeil funnet errors found manageWizard feiletfailed manageWizard feilet-info message displayed after ...file deletionfailed manageWizard8luckyBackup - hndter backupluckyBackup - manage backup manageWizardneste feil next error manageWizardingen feil no errors manageWizard"ikke tilgjengelig not available manageWizardforrige feilprevious error manageWizardsimulering simulation manageWizard startstart manageWizardsuksesssuccess manageWizardsuksess-info message displayed after ...file deletionsuccess manageWizardsuksess5info message displayed after ...snapshots list updatesuccess manageWizard'Fjern vertsmaskin' er valgt, men ingen fjern vertsmaskinnavn er angitt='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Glem ikke</b> definerer en mappe i 'ekskluder' boksen som inneholder mletfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@vertsmaskin:@Host: modifyDialogvLegg til mappe, fil eller mnster ekskludere fra oppgaven@Add any directory, file or pattern to be excluded from this task modifyDialogLegg til en mappe, fil eller et mnster som skal inkluderes av denne oppgaven>Add any directory, file or pattern to be included by this task modifyDialogdLegg til kommando som angitt i feltet ved siden av*Add command as entered in the field beside modifyDialogHLegg ekskluderingen til i neste felt*Add exclusion as entered in the next field modifyDialogFLegg til inkluderingen i neste felt*Add inclusion as entered in the next field modifyDialogLegg til eller fjern rsync opsjoner Hvis du ikke aner hva disse betyr, s ikke rr dem!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialog\Legg til rsync opsjon som skrevet i neste felt-Add rsync option as entered in the next field modifyDialogAvansertAdvanced modifyDialog EtterAfter modifyDialogjAlle erklrte felter i oppgavens egenskaper ser OK ut?All declared fields of the task properties window seem to be ok modifyDialogEksekver ogs Also Execute modifyDialogFSikkerhetskopier kilden inn i Mlet Backup Source inside Destination modifyDialogBackup filer Backup files modifyDialogFrBefore modifyDialogCache mapper Cache folders modifyDialog AvbrytCancel modifyDialogVelg dette hvis du bruker en FAT/NTFS partisjon som ml. Data-eierskap og rettigheter vil IKKE bli beholdt. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogKryss av denne for klone kilden til mlet Fjern krysset for opprettet en ekstra mappe inni mlomrdetiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogfKryss av dette for koble til en fjern rsync modul/Check this to connect to an rsync Remote module modifyDialogKommando valgCommand Options modifyDialogKommandoliste Command list modifyDialog|Kopier enhets- (kun super user) og spesialfiler som de er (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogFKopier symlenker som symlenker (-l)Copy symlinks as symlinks (-l) modifyDialognDefiner oppgavens type: 1. Sikkerhetskopier kildemappen inn i Mlmappen (se ogs "Lag ikke en mappe" valget) 2. Synkroniser Kilde og Mlmapper, og behold de nyeste filene begge stederDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefiner oppgavetypen: 1. Sikkerhetskopier innholdet av kilden inn i Mlomrdet 2. Sikkerhetskopier kildemappen med navn inn i Mlomrdet 3. Synkroniser Kilde og Ml, og behold de nyeste filene begge stederDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog2Slett filer p mlomrdetDelete files on the destination modifyDialogHSlett filer i mlomrdet som ikke eksisterer i kildeomrdet . "Rekurser inn i mapper" m vre valgt (--delete-after & --delete-excluded hvis "Ekskluder" blir brukt)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogBeskrivelse Description modifyDialogMl Destination modifyDialog Ml : Destination : modifyDialogMl er FAT/NTFSDestination is FAT/NTFS modifyDialog0Lag IKKE en ekstra mappeDo NOT create extra directory modifyDialogIkke kopier filer som har nyere versjoner i mlomrdet enn hos kildenHDo not backup source files that are newer on the destination (--update) modifyDialogEkskluder ikke denne listen med mnstre. Vennligst referer til manualen for forst inkluderingsregler bedre.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog2Rediger valgt inkluderingEdit highlighted inclusion modifyDialogzOppgi et navn for oppgaven (feks. "Backup mitt hjemmeomrde"):Enter a name for this task (eg "Backup my home directory") modifyDialogOppgi en kommando som skal kjres etter oppgaven, og klikk deretter "Legg til" knappen for legge den til listen nedenfornEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogOppgi en kommando som skal kjres fr oppgaven, og klikk s "Legg til" knappen for legge den til listen nedenforoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogOppgi en rsync opsjon legge til (feks. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogAngi her fil, mappe eller mnster og klikk deretter "Legg til" knappen for legge det til ekskluderingslisten * - matcher enhver ikke-tom komponent (det slutter ved slash/skrstrek) ** - matcher alt, inkludert slash / skrstrek ? - matcher ethvert tegn bortsett fra en slash mappenavn/*** - matcher bde mappen og alt inni begynnende / - mnster er forankret til et bestemt sted i hierarkiet i overfringen (normalt "kilden") avsluttende / - bare mappen matches, ikke vanlige filer, symlenker eller devicesEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog|Oppgi full sti til mlmappen (feks. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogOppgi full sti til filen som inneholder den private ssh autentiseringsnkkelen (blank hvis ikke relevant). Merk at du m gjre alle handlinger ndvendig for en passordls ssh fjerntilkobling vha. et OpenSSH nkkelparEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogOppgi full sti til filen som inneholder rsync (ikke ssh) autentiseringspassordet (blank hvis ikke relevant).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogfOppgi full sti til kildemappen (feks. /home/luckyb)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogNOppgi navn p den fjerne vertsmaskinen."Enter the name of the remote host. modifyDialogOppgi porten du vil bruke for ssh-tilkoblingen (blank hvis standard port)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogOppgi brukernavnet for den fjerne vertsmaskinen (blank hvis ikke relevant).HEnter your username for the remote host (leave blank if not applicable). modifyDialogFeil ble funnetErrors have been found modifyDialogEkskluderExclude modifyDialoghEkskluder alle "lost+found" mapper (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogVEkskluder alle backup filer og mapper (**~)(Exclude all backup files & folders (**~) modifyDialognEkskluder alle cache mapper (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogVEkskluder alle temporre mapper (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialog`Ekskluder alle brukeres .gvfs mapper (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialog|Exclude alle brukeres sppel-mapper (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog$Ekskluderingsliste Exclude list modifyDialogEkskluder systemmapper for montering, /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogjEksekver ekstra kommandoer, fr eller etter oppgaven.1Execute extra commands, before or after the task. modifyDialogEksekver oppgaven selv om den vises med ADVARSEL melding. Vanligvis brukt nr "Eksekver fr" kommandoer kan fikse en advarsel (feks. montere partisjoner) OBS: kryss av dette dersom du virkelig vet hva du gjrExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog*Ekstra rsync opsjonerExtra rsync options list modifyDialogFiler som er hard-lenket i kildeomrdet vil hard-lenkes sammen i mlomrdet. ADVARSEL: Alle filer m bli inkludert i overfringssettet !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog4Ignorer filer p CVS mtenIgnore files the CVS way modifyDialogdIgnorer filer med en algoritme som ligner CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInkluderInclude modifyDialogLInkluder KUN denne listen med mnstre. Ingen fler. Vennligst referer til manualen for bedre forstelse av inkluderingsreglene. Dette vil sl av ekskluderingsopsjonen.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Inkluderingsliste Include list modifyDialog"Inkluderingsmodus Include mode modifyDialogKryss av for <b>STOPPE</b> eksekvering av kjrende oppgave hvis kommandoen avslutter med en feilgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Modus:Mode: modifyDialog6Flytt valgt inkludering nedMove highlighted inclusion down modifyDialog6Flytt valgt inkludering oppMove highlighted inclusion up modifyDialog Navn:Name : modifyDialog$Vanlig inkluderingNormal Include modifyDialogOkOkay modifyDialogInkluder kun Only Include modifyDialogvEller fjern valget 'Fjern vertsmaskin' for operere lokalt2Otherwise uncheck 'Remote Host' to operate locally modifyDialog^Vennligst sjekk relevant boks fr du frtsetter/Please check the relevant box before proceeding modifyDialogZDefiner kilde fr du starter mnster-editorenVennligst endre minst en av dem"Please modify at least one of them modifyDialog\Vennligst angi et annet navn fr du fortsetter1Please specify a different name before proceeding modifyDialogVVennligst angi navn p en fjern vertsmaskin!Please specify a remote host name modifyDialog`Vennligst spesifiser flgende fr du fortsetter:/Please specify the following before proceeding: modifyDialog<Behold enhets- og spesialfilerPreserve device, special files modifyDialog&Behold harde lenkerPreserve hard links modifyDialog,Behold eierskap, tiderPreserve ownership, times modifyDialog$Behold rettigheterPreserve permissions modifyDialogBBehold rettigheter p filene (-p)"Preserve permissions of files (-p) modifyDialog Behold symlenkerPreserve symlinks modifyDialogBehold eieren (kun superbruker), gruppe og tidsstempel for filene (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialog@Les ekskluderingsmnstre fra filRead exclude patterns from file modifyDialogLes fil: Read file: modifyDialog>Les inkluderingsmnstre fra filRead include patterns from file modifyDialog*Rekurser inn i mapperRecurse into directories modifyDialog4Rekurser inn i mapper (-r)Recurse into directories (-r) modifyDialog(Fjernt sted (remote)Remote modifyDialogFjern modul Remote module modifyDialog>Fjern valgt kommando fra listen$Remove highlighted command from list modifyDialogHFjern merket ekskludering fra listen&Remove highlighted exclusion from list modifyDialogDFjern valgt inkludering fra listen&Remove highlighted inclusion from list modifyDialog:Fjern valgt opsjon fra listen#Remove highlighted option from list modifyDialogNRepeter kommandoer som feiler, x ganger&Repeat any command that fails, x times modifyDialog"Repeter ved feil:Repeat on fail: modifyDialog:Velg kommando som skal kjresSelect command to be executed modifyDialogVelg mlmappeSelect destination directory modifyDialogBVelg fil med ekskluderingsmnstre$Select file to read exclude patterns modifyDialog@Velg fil med inkluderingsmnstre$Select file to read include patterns modifyDialog*Velg rsync passordfilSelect rsync password file modifyDialogVelg kildemappeSelect source directory modifyDialog.Velg fil med ssh nklerSelect ssh keyfile modifyDialog`Totalt antall sikkerhetskopi snapshots beholde0Set the total number of backup snapshots to keep modifyDialogPViser rsync kommandoen som vil bli kjrt.Shows the rsync command as it will be executed modifyDialogBHopp over nyere destinasjonsfilerSkip newer destination files modifyDialog(Snapshots beholde:Snapshots to keep: modifyDialog KildeSource modifyDialogKilde :Source : modifyDialog0Synkroniser Kilde og Ml"Synchronize Source and Destination modifyDialogSystemmapperSystem folders modifyDialog4Systemmapper for monteringSystem mount folders modifyDialog$OppgavebeskrivelseTask description modifyDialogOppgavenavn Task name modifyDialog$Oppgave egenskaperTask properties modifyDialog Maler Templates modifyDialog Temporre mapperTemporary folders modifyDialoglDet er ikke tillatt fordi '/' ikke har et aktuelt navnSTOPPE</b> oppgavekjring ved feil0use boxes to STOP task execution on error modifyDialogvalidervalidate modifyDialoguten ha valgt 'Rekurser inn i mapper' valget, som er ndvendigCwithout having checked 'Recurse into directories' which is required modifyDialog AvbrytCancel patternEditorVelg dette for bruke mappen over som en absolutt sti. Hvis ikke valgt, vil mnsteret matche enhver fil/mappe som matcher "navn" kriterieneCheck this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorpAngi navn-kriteriene for filene/mappene som skal matchesEDefine here the name criteria for the files/directories to be matched patternEditor\Definer hva du vil mnsteret skal referere til8Define here, what would you like the pattern to refer to patternEditorOppgi tegn som finnes i en hvilken som helst posisjon i navnet til filene/mappene som mnsteret refererer tilsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorOppgi de siste tegn som navnet til filene/mappene mnsteret referer til feks for referere til alle ".txt" filer, oppgi .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorvOppgi navnet til filene/mappene som mnsteret refererer tilGEnter here the name of the files/directories that the pattern refers to patternEditorOppgi de frste tegn i navnet til filene/mappene som mnsteret referer tilbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor,G dypere i stien med:Go deeper in path by : patternEditorVG dypere i stien etvilkrlig antall niverGo deeper in path by any level patternEditorOkOkay patternEditor8Velg en mappe i kildeomrdet+Please choose a directory within the source patternEditor4Velg en fil i kildeomrdet&Please choose a file within the source patternEditorjNullstill mnster editor feltene til standard verdier5Reset the pattern editor fields to the default values patternEditorVelg mappeSelect directory patternEditorVelg fil Select file patternEditorSett med mapperSet of directories patternEditorSett med filer Set of files patternEditorSpesifikk mappeSpecific directory patternEditorSpesifikk fil Specific file patternEditor@Det faktiske mnsteret vises her$The actual pattern is displayed here patternEditor6Mnsteret refererer til en:The pattern refers to a: patternEditorBruk dette hvis mnsteret refererer til et sett mapper som har noe felles, feks. alle mapper som er navngitt som "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorBruk dette hvis mnsteret refererer til et sett med filer som har noe felles, feks. alle filer med en ".txt" endelsewUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorBruk dette hvis mnsteret referer til en spesifikk mappe feks "/media/music/Album"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorBruk dette hvis mnsteret refererer til en spesiell fil feks. "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor enhverany patternEditor2bla lokalt etter en mappe"browse localy for a directory path patternEditor,bla lokalt etter filenbrowse localy for a file patternEditorinneholder : contains : patternEditormappe : directory : patternEditorslutter med: ends with : patternEditor fil :file : patternEditorendelig mnster final pattern patternEditorer nyaktig : is exactly : patternEditornavnname patternEditormnster editorpattern editor patternEditornullstillreset patternEditorbegynner med : starts with : patternEditor"bruk absolutt stiuse absolute path patternEditor11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog AvbrytCancelscheduleDialoglegg tiladdscheduleDialoglukkclosescheduleDialog fjernremovescheduleDialog AvbrytCancel textDialogOkOkay textDialogluckyBackup luckyBackup textDialog AvbrytCancel winDialogOkOkay winDialogbla gjennombrowse locally winDialogluckyBackup luckyBackup winDialogluckybackup-0.5.0/translations/luckybackup_ca.qm0000666000175000017500000044622213157502317021457 0ustar luckybluckybTgUVWX Y4`aR~/d;3O1DpV?t4`m1D>K:HYKXSLY߃]_ 9ggghYKjsz~hfff^GvSUE( 9Ea45N~IPaaaaqa:a'h7@ KEEص,Q+)H5a&T+)wT"fě"&%p({YT)*`3*0F+Z+P+,B/]^A:Bĉ[˱ESIdى>)K4nX~=F(f#sGr+ :~  d%gb9!bCp(e'c+&x.+6Fr7$<$GI|OW,Q19QNR[8_/lmfC35hhwpNpNq>.Atcw!feN-D!YEB65ڵѐSliA}u Գ΂ŵ  ,' _hb^K? #u;&o#)+/r ;2Q8IBZyC cTIN7PoEGYBCZH&\c.cf:^}uN&|BLOO2Rd{ZI RHg-$A+5[VC7NQkLxPO,n÷IYԥA{*LV[%&E/0SH"SkGҐ =O=ToKM^ s= Ava/&]Raث4)4);*߬,b8My:MT_rUje>h !2iJiU tM}^.eT.e4T|Wc%[?w%xet%d XM lŇ>#ʵu9!}0 W[ܯ">M)>-b[~mϗ]u̜ @ ‰ >eyBq-B PsQ&+ADȪL~[OSOjzEeJ<iYz~i^OlwrSt5}7;:օOLIIPFI˨III"&^,Rx^AKфP &.4HeFo GiUdit i GG8]=,V\xl@,}m6>@n%n%p^"txv^(yzm~iWbF79kr$ȕ&ȕ]ȕX*Jg:tȫî"BpXRߘ?Y=+jDv  \ "D," ^.{;KOCzKO9Vf_Ave_hD b#Sf0g6nhnhnRi>ilkՒ$kՒ@sD#Qv3y|~gavb%%(T_4xY|NuERb$I>Iön˜`_r?VL _y"S@?Ȓ-YAB=':H@Z S ~|ul `N읒ZBXfw`[ VK X) |?5jB^Ɯ;-+e-zN2 9Yݎ>!E !EN3MUtѐYv%`xea#bvu`v:{ _gIg3^ڄCDFFvFϕi@nΕUU%4uk,rDdj+tgG%B|ȕK3 3aMXT&U U[;DOnn~Eǧ9}~eu̐%jIIP%׃yvߖjHêkzC!Y 3 3m2$  ;tn"*)@*,$-%M/eʃ1n9GF\/IX9J Jε^L7NPO6)Ry (V)gh MpmzG@x5X3'G^n(vʴ5ʶ'] ,I7BeiaOi$) N 1 c *[ q.  E #rx *{ +)8 6Qr 8 CcK' Mgk Mg^ N#s U  Wg ] aY> dʸ j^t l< lRcO mE pJ q R ] @ e z- ͆< 4 aJ -B@ Z(M '2# Ԡ;X  ׊$ =1 . * Ѿ ߺ Tu   c2}S 6   -08* -nr /l$ 7E 8׾ ? @  ` fu g j# l%h pN%M zj C 0 ( H~ L iZ ~ c_ XBfm  24 bJ ,  Ǟ  GCoa ñ n@ B Xh- hz t$5 ԑc @ ݓ 3 T iY 7 px " < v}  Vd d j  St #. (N76 +{ - 0b 7'yc 93BkQ :UC$ ; EZ Ge' HZS L9 s PA O T, T$% Zq _yuu _ 4 fq g.w# g.w@ g.w= i i* k< m { { { u ۙ F Ҟ "6   YQ YI M >ӊ< @e A. Acsf/ Eh/r F@ F. LMh N0 P}B Sz2 X ^ bUX o-? o92 r'^ v Hz , q} j8 dD 1 r \%֥ I " UNR yI 7 ~)v  ! T *E% s x % } 2p[ a Rbb :, ?BXI  ;~p A sm @ T #5 &, &' ) *}EŤ + ,D$R ,D@k 6? P \.~80 c< idž m^l { eG 1   {ڼ f A i2D ms} c l' Xw , fQ zp lz6  I  j!3 lh YE iz [6 " ,ʫ ݗ # 䕜' D c2| ( ټ Y 8 8"z 8* 8 6O=11=s[A'C"Ե'~(qJ*#?a/#YE7GSJ Tba0\Pa].ajcRye~{`mR|p{>V"yi-{Fr\NT(MYM<`BZ{RF6"$rOeuY~֭ 3TM+̖%k{d4HU"(seZ CgXhy#!6&)Nn(դ.`(դ -X`F4?<EE^нG E>I"NaRN>[=P ^i]crf/lnPzs7su@u@~(NYi8 ] k]4!fCt5)*_تyzK:v&ɟ) ʱN uk+\uj_֙SH$GߖlAq]k7*%0.[YPbqŕi,aBS'estan calculant les difernciesCalculating differencesCalcDiffThreadtHi ha moltes dades. Noms es mostren les primeres entrades2Data amount is huge. Displaying only first entriesCalcDiffThreadEspereu Please waitCalcDiffThread4S'est escanejant el destScanning destinationCalcDiffThreadJS'est escanejant la captura d'imatgeScanning snapshotCalcDiffThread4S'est escanejant l'origenScanning sourceCalcDiffThread`Diferncies entre la captura d'imatge i l'origenSnapshot and source differencesCalcDiffThreadDades de la captura d'imatge que tamb existeixen a l'origen i que sn diferents=Snapshot data that also exists at the source and is differentCalcDiffThreadjCaptura d'imatge de dades que NO existeixen en origen-Snapshot data that do NOT exist at the sourceCalcDiffThreadlDades d'origen que NO existeixen a la captura d'imatge-Source data that do NOT exist at the snapshotCalcDiffThread`Sincronitza diferncies entre les carpetes A i BSync dir A & B differencesCalcDiffThreadSincronitza dades de la carpeta A que NO existeixen a la carpeta sincronitzada B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSincronitza dades de la carpeta B que tamb existeixen en la carpeta sincronitzada A i que sn diferents?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSincronitza dades de la carpeta B que NO existeixen en la carpeta sincronitzada A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadLes dades de la captura d'imatge reemplaaran les dades origen durant la RESTAURACI=The snapshot data will replace the source data during RESTORECalcDiffThreadAquestes s'eliminaran durant la RESTAURACI noms si activeu l'opci:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadElimina les dades d'origen que no existeixen en la cpia de seguretat;delete existing source data that do not exist at the backupCalcDiffThreadS'estan desant les cpies de seguretat dels perfils, dels registres i de les dades de la captura d'imatge.Backing-up profile, logfiles and snapshot dataQObject CRTICCRITICALQObjectRL'ordre s'executa de nou per haver fallatCommand re-run due to failureQObjectRNo s'ha pogut obrir el fitxer de registreCould not open the logfileQObject Dest DestinationQObject Carpeta de destDestination directoryQObjectCarpeta DirectoryQObjectNo disposem dels permisos per llegir/accedir al directori de sincronitzaci A;I do not have the permission to read/enter sync directory AQObjectNo disposem dels permisos per llegir/accedir al directori de sincronitzaci B;I do not have the permission to read/enter sync directory BQObjectNo disposem dels permisos per llegir/accedir al directori de destDI do not have the permission to read/enter the destination directoryQObjectNo disposem dels permisos per llegir/accedir al directori d'origen?I do not have the permission to read/enter the source directoryQObjectNo <font color=orange><b>ometrem</b></font> aquesta tasca. La sincronitzaci es dur a terme igualmentiI will not skip this task. Synchronizing is going to be performed anywayQObjectNo <font color=red><b>OMETEM</b></font> aquesta tasca perqu heu activat l'opci "ignora AVISOS"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject4Temps de l'ltima execuciLast execution timeQObjectCorrecteOKQObject<b>Desmarqueu les caixes apropiades incloses</b> abans de continuarAPlease uncheck appropriate include boxes before proceedingQObjectDesmarqueu les caixes apropiades incloses o canvieu el tipus de tasques a altres que '<b>Cpia de seguretat del contingut de la carpeta</b>' o useu 'Cpia de seguretat del contingut de la carpeta' junt amb l'opci '<b>Noms inclou</b> abans de procedirPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject OrigenSourceQObjectCarpeta origenSource directoryQObject&Sincronitza carpetaSync directoryQObject(S'est sincronitzantSyncingQObject(S'est sincronitzant'Full phrase: Syncing to SyncingQObject*Descripci de tasquesTask descriptionQObjectLa carpeta de dest es crear si no existeix i s'omplir amb les noves dades de cpia de seguretat]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectLLes tasques segents incloses <b>comparteix la mateixa carpeta de dest</b> (tot junt o per grups) i almenys una d'elles contindr la cpia de seguretat d'una carpetaThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectRNo s'ha pogut crear el fitxer de registre The logfile could not be createdQObjectBEl fitxer de registre no existeixThe logfile does not existQObject@El procs ha informat d'un errorThe process reported an errorQObjectjL'ordre especificada probablement no est installada/The specified command is probably not installedQObject:La llista de tasques s buidaThe task list is emptyQObject^Aquesta tasca <font color=orange><b>no s'ometr3This task will not be skippedQObjecthAquesta tasca <font color=red><b>s'ometr</b></font>7This task will be skippedQObjectRS'est usant remot, s'omet la comprovaciUsing remote, check is skippedQObjectAVSWARNINGQObject`Heu incls ambdues tasques segents connectades:8You have included both of the following connected tasks:QObject.No heu incls cap tascaYou have not included any tasksQObjecti/oand/orQObjectordre:  command: QObjectno existeixdoes not existQObject(S'han produt errors errors foundQObjectRl'execuci de la primera part de la tascaexecution of 1st part of taskQObjectRl'execuci de la primera part de la tasca?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectPl'execuci de la segona part de la tascaexecution of 2nd part of taskQObject,l'execuci de la tascaexecution of taskQObject,l'execuci de la tasca3Full phrase: execution of task: finishedexecution of taskQObject,l'execuci de la tascadFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject codi de sortida: exit code: QObjectha acabatfinishedQObjectha acabat?Full phrase: execution of 1st part of task: finishedfinishedQObjectha acabat3Full phrase: execution of task: finishedfinishedQObjectha acabatCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectha acabat perqu s'ha produt un error en l'execuci de la pre/post tasca9finished because of pre/post task command execution errorQObject lliurefreeQObjects buitis emptyQObject.est buit o no existeixis empty or does not existQObjectno est muntatis not mountedQObjectsense errors no errorsQObjectno disponible not availableQObjectres a comenarnothing to startQObjectsortida:  output: QObjectLl'execuci de la post-tasca de l'ordrepost-task execution of commandQObjectLl'execuci de la post-tasca de l'ordreCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectJl'execuci de la pre-tasca de l'ordrepre-task execution of commandQObjectJl'execuci de la pre-tasca de l'ordreBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectha comenatstartingQObjectha comenat?Full phrase: execution of 1st part of task: startingstartingQObjectha comenat?Full phrase: execution of 2nd part of task: startingstartingQObjectha comenat3Full phrase: execution of task: startingstartingQObjectha comenat?Full phrase: post-task execution of command: startingstartingQObject estatstatusQObjectDaix no s perms per raons bvies'this is not allowed for obvious reasonsQObjectZaix condueix a una tasca cancellant l'altra.this will lead to one task canceling the otherQObjectambtoQObjectamb'Full phrase: Syncing to toQObjectRNo s'ha pogut obrir el fitxer de registreCould not open the logfile ReadLogFile&Quant a&About aboutDialog&Acord de &llicncia&License Agreement aboutDialog&Assistncia&Support aboutDialog&Grcies a &Thanks to aboutDialog...la meva mitja taronja, <b>Dimitra</b> que em dona suport mentre aquest programa est en desenvolupamentj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog4...a tots els usuaris dels...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog8Traductor de la IGU a l'rabArabic gui translator aboutDialogdMantenidor del paquet/pkgbuild oficial linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtenes, GrciaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialog`Aplicaci de cpia de seguretat i sincronitzaciBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogxTraductor de l'IGU al bosni i mantenidor de paquets Mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog:Traductor de la IGU al BlgarBulgarian gui translator aboutDialog:Traductor de la IGU al CatalCatalan gui translator aboutDialogJTraductor de la IGU al xins (Taiwan)Chinese (Taiwan) gui translator aboutDialogContruibueix amb codi per suport remot i vss en el port per a WindowsDCode contributor for remote & vss support regarding the windows port aboutDialog^No s'ha pogut localitzar el fitxer de llicncia!Could not locate the license file aboutDialog6Traductor de la IGU al txecCzech gui translator aboutDialog>Mantenidor de paquets de DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog@Traductor de la IGU a l'holandsDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogEspecialment Especially aboutDialog>Traductor de la IGU a l'EstoniEstonian gui translator aboutDialogbMantenidor de paquets Fedora (repositori oficial))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog:Mantenidor del paquet FreeBSDFree BSD package maintainer aboutDialog<Traductor de la IGU al FrancsFrench gui translator aboutDialogTraductor de la IGU al francs i assessor de valor d'empaquetament (i ms)AFrench gui translator and valuable packing advisor (and not only) aboutDialog:Traductor de la IGU al GallecGalician gui translator aboutDialog@Mantenidor del parquet de GentooGentoo ebuild maintainer aboutDialog>Traductor de la IGU a l'alemanyGerman gui translator aboutDialog Recomaneu-nos a:Give a thumbs up at: aboutDialog^Traductor de la IGU al grec i provador de valor(Greek gui translator and valuable tester aboutDialog8Traductor del manual al grecGreek manual translator aboutDialogPersonalment mai no he cobrat ni acceptar mai diners per aquest projecte.DI personally never had and never will accept money for this project. aboutDialogSi nos fos per ell i els seus tutorials mai no hauria comenat aquest projecteJIf it wasn't him and his tutorials I would never have started this project aboutDialogSi us agrada aquesta aplicaci i voleu donar-me alguna cosa a mi personalment, tot el que heu de fer s:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog|s <b>programari lliure</b>: podeu redistribur-lo i/o modificar-lo en els termes de la Llicncia Pblica General GNU tal i com publica la Free Software Foundation, versi 3 de la llicncia.It 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, version 3 of the License. aboutDialog^Es distribueix amb l'esperana que us sigui til, per SENSE CAP GARANTIA; sense ni tan sols la garantia implcita de MERCANTIBILITAT o ENTRENAMENT PER UN PRPOSIT PARTICULAR.It 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. aboutDialog<Traductor de la IGU a l'italiItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogTAl final, per no per aix menys importantLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogjMantenidor del paquet Madriva (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMantenidor de paquets Mepis (Community repo) i traductor de la IGU a l'espanyolBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogMalgrat tot, he decidit usar luckyBackup per ajudar a gent que necessita ajuda monetria.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog:Traductor de la IGU al noruecNorwegian gui translator aboutDialogMantenidor de parquets OpenSUSE (KDE4 Community repo) i assessor de valor d'empaquetamentNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog@Traductor de la IGU al portugusPortuguese gui translator aboutDialog:Mantenidor de Puppy pet i sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calv Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog<Traductor de la IGU al romansRomanian gui translator aboutDialog\Traductor de la GUI al rus i provador de valor*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialog|Vegeu la pestanya d''Acceptaci de Llicncia' per ms detalls.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog@Mantenidor de paquets de SlackelSlackel package maintainer aboutDialog>Traductor de la IGU a l'EslovacSlovak gui translator aboutDialog<Traductor de la IGU a l'eslovSlovenian gui translator aboutDialogConsidereu seriosament donar diners, que s'usaran per una bona causa._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog@Traductor de la IGU a l'espanyolSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog6Traductor de la IGU al suecSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog$L'equip de indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog@Aquesta s la meva recompensa :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog6Traductor de la IGU al turcTurkish gui translator aboutDialog"Assessor de valorValuable advisor aboutDialogDVoteu a favor i esdevingueu fan a:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogfdesenvolupador de l'script de python backupwhenidle&backupwhenidle python script developer aboutDialog tancaclose aboutDialog$enlla a donacions donation link aboutDialog>ex mantenidor del paquet Fedoraex Fedora package maintainer aboutDialogper desenvolupar la fantstica plataforma de localitzaci i facilitar-la gratutamentVfor developing the wonderful transifex localization platform and providing it for free aboutDialog6frums pel seu sosteniment.forums for their support. aboutDialog fri13fri13 aboutDialog*luckyBackup - quant aluckyBackup - about aboutDialogluckyBackup es distribueix en els termes de la <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Llicncia Pblica General GNU</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogamb dinersmoney aboutDialogsense dinersno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog"port a MS Windowsport to MS Windows aboutDialogport a Mac OS Xport to Mac OS X aboutDialogport a OS/2 port to OS/2 aboutDialogempaquetador rpm, provador de valor i assessor de connexions remotesEscriviu l'emissor del missatgeEnter the sender of the message emailDialoglEscriviu el servidor smtp a usar en enviar el missatge.Enter the smtp server used to send the message emailDialog<Escriviu el ttol del missatge Enter the subject of the message emailDialog,S'han produt error(s)Error(s) occured emailDialogSi no est marcat s'usa "TLS auto". Noms disponible per sendmail=If unchecked "TLS auto" is used. Only available for sendemail emailDialogMaiNever emailDialogDNo envis mai un correu electrnicNever send an email emailDialogD'acordOkay emailDialognEnvia noms quan es produeixin error(s) en una execuci,Only send when error(s) occured during a run emailDialogtEnvia noms quan el perfil est planificat per executar-se*Only send when profile is scheduled to run emailDialog2El perfil est planificatProfile is scheduled emailDialogEnvia un correu electrnic ara per comprovar els arguments establerts6Send an email right now to test the provided arguments emailDialogvEspecifiqueu les condicions per enviar un correu electrnic'Specify the conditions to send an email emailDialog ProvaTest emailDialog4El camp d'ordres est buitThe command field is empty emailDialog*Usa valor per defecte Use default emailDialogarguments: arguments: emailDialog ordre:command: emailDialog>luckyBackup - correu electrnicluckyBackup - email emailDialogD'acordOkay helpBrowser&luckyBackup - ajudaluckyBackup - help helpBrowsermanual/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog tancaclose logDialogRs'est carregant el fitxer de registre...loading logfile... logDialog\luckyBackup - progrs de l'execuci de tasques&luckyBackup - tasks execution progress logDialogerror segent next error logDialogerror anteriorprevious error logDialogespereuwait logDialog &%1 %2&%1 %2luckyBackupWindow&Interromp&AbortluckyBackupWindow&Quant a&AboutluckyBackupWindow&Afegeix&AddluckyBackupWindow&Elimina&DeleteluckyBackupWindow&Manual &HandbookluckyBackupWindow &Ajuda&HelpluckyBackupWindow&Importa&ImportluckyBackupWindow&Idioma &LanguageluckyBackupWindow,&Minimitza a la safata&Minimize to trayluckyBackupWindow&Modifica&ModifyluckyBackupWindow&Nou&NewluckyBackupWindow&Perfil&ProfileluckyBackupWindow&PerfilThis is a top menu item&ProfileluckyBackupWindow &Surt&QuitluckyBackupWindow&Actualitza&RefreshluckyBackupWindow&Elimina&RemoveluckyBackupWindow&Restaura&RestoreluckyBackupWindow &Desa&SaveluckyBackupWindowA&rranjament &SettingsluckyBackupWindow &Tasca&TaskluckyBackupWindow &TascaThis is a top menu action&TaskluckyBackupWindow$&Barres de tasques &ToolbarsluckyBackupWindow6&Vista/Edici de descripci&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow S'HA INTERROMPUTABORTEDluckyBackupWindowCancellaAbortluckyBackupWindow|S'est cancellant: espereu l'eliminaci de tots els processos4Aborting: Please wait for all processes to be killedluckyBackupWindowAccionsActionsluckyBackupWindow|Els fitxers destacables (registres, etc.) tamb s'han eliminat4All relevant files (logs etc) have also been deletedluckyBackupWindow|Els fitxers destacables (registres, etc.) tamb s'han duplicat7All relevant files (logs etc) have also been duplicatedluckyBackupWindowEls fitxers destacables (registres, etc) tamb s'han actualitzat4All relevant files (logs etc) have also been updatedluckyBackupWindow6Les tasques s'han completatAll tasks completedluckyBackupWindowPEsteu segur que voleu eliminar el perfil'Are you sure you want to delete profileluckyBackupWindowhEsteu segur que voleu eliminar el perfil per defecte3Are you sure you want to delete the default profileluckyBackupWindow`Esteu segur que voleu eliminar la tasca segent?5Are you sure you want to remove the following task ??luckyBackupWindowTComena l'execuci de les tasques incloses)Begin the execution of all included tasksluckyBackupWindow"Caixa de selecciCheckBoxluckyBackupWindowS'han desactivat les comprovacions. Aquesta tasca <b>s'ometr</b>5Checks are disabled. This task will be skippedluckyBackupWindow0No s'ha trobat el fitxerCould not locate the fileluckyBackupWindowNo s'ha pogut actualitzar el temps d'execuci de tasques anteriors-Could not update last execution time of tasksluckyBackupWindowHa petatCrashedluckyBackupWindow2Crea una tasca d&uplicadaCreate D&uplicate taskluckyBackupWindow<Crea una tasca de &restauraciCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowPerfil actualCurrent ProfileluckyBackupWindowD&uplica D&uplicateluckyBackupWindowPer de&fecteDe&faultluckyBackupWindowDescripci DescriptionluckyBackupWindow Dest DestinationluckyBackupWindowCarpeta DirectoryluckyBackupWindowFetDoneluckyBackupWindowSimulaciDryluckyBackupWindow$&Correu electrnicE&mailluckyBackupWindowE&xportaE&xportluckyBackupWindow ERRORERRORluckyBackupWindowSURTEXITluckyBackupWindow&Temps transcorregut Elapsed timeluckyBackupWindowLes preferncies de correu electrnic s'han <font color=green>actualitzat correctamentBEmail preferences have been updated successfullyluckyBackupWindowfCorreu electrnic desprs de l'execuci d'un perfil$Email report after profile executionluckyBackupWindow CatalEnglishluckyBackupWindow CatalDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowS'han produt errors durant la transferncia de fitxers de registre'Errors occured during logfiles transferluckyBackupWindowS'han produt errors durant la transferncia de fitxers de captura d'imatge i de registre5Errors occured during snapshots and logfiles transferluckyBackupWindowS'han produt errors durant la transferncia de fitxers de captura d'imatge(Errors occured during snapshots transferluckyBackupWindowS'han produt errors durant la transferncia de fitxers de perfil/Errors occured during the profile file transferluckyBackupWindow*L'execuci del perfilExecution of profileluckyBackupWindow>L'execuci de tasques ha acabatExecution of tasks finishedluckyBackupWindowL'execuci de tasques s'ha acabat de manera forada per part de l'usuari4Execution of tasks were terminated violently by userluckyBackupWindowSurtExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowLHa fallat en crear la carpeta de dest&Failed to create destination directoryluckyBackupWindow@Ha fallat en crear el perfil nouFailed to create new profileluckyBackupWindowNo s'han pogut eliminar tots els fitxers destacables (registres, etc.).Failed to delete all relevant files (logs etc)luckyBackupWindow@No s'ha pogut eliminar el perfilFailed to delete profileluckyBackupWindowNo s'han pogut duplicar tots els fitxers destacables (registres, etc.)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow@No s'ha pogut duplicar el perfilFailed to duplicate profileluckyBackupWindow@No s'ha pogut duplicar el perfilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow>Ha fallat en exportar el perfilFailed to export profileluckyBackupWindow@No s'ha pogut importar el perfilFailed to import profileluckyBackupWindowFNo s'ha pogut renanomenar el perfilFailed to rename profileluckyBackupWindowDNo s'ha pogut substituir el perfilFailed to replace profileluckyBackupWindow(Ha fallat en engegarFailed to startluckyBackupWindowNo s'han pogut actualitzar fitxers destacables (registres, etc.).Failed to update all relevant files (logs etc)luckyBackupWindow<Amaga la finestra d'informaciHide information windowluckyBackupWindow<Amaga la finestra d'informaci+hide/show information window button tooltipHide information windowluckyBackupWindowImporta perfilImport ProfileluckyBackupWindow*Finestra d'informaciInformation windowluckyBackupWindow*Finestra d'informaciinformation window titleInformation windowluckyBackupWindowpEl temps d'execuci de tasques anterior s'ha actualitzat$Last execution time of tasks updatedluckyBackupWindowNLlista de totes les tasques disponiblesList of all the available tasksluckyBackupWindowBloquejaLockluckyBackupWindow>&Gestiona la cpia de seguretatManage &BackupluckyBackupWindow"Gesti de tasques Manage TaskluckyBackupWindowTMou la tasca ressaltada avall, una posici/Move the highlighted task down, by one positionluckyBackupWindowTMou la tasca ressaltada amunt, una posici-Move the highlighted task up, by one positionluckyBackupWindowNONOluckyBackupWindowNO INCLS NOT INCLUDEDluckyBackupWindowNOTANOTEluckyBackupWindow,No s'han trobat errorsNo errors foundluckyBackupWindow2S'est executant la tascaNow performing taskluckyBackupWindowMostra noms errors i missatges importants durant l'actualitzaci de la finestra could not be saved'ProfileluckyBackupWindowEl perfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Perfil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowel perfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow PerfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowEl perfillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Perfil3full phrase: 'Profile set as default'ProfileluckyBackupWindow\El progrs de la barra de tasques no ser real(Progressbar update will not be realisticluckyBackupWindow&ReanomenaR&enameluckyBackupWindow Error de lectura Read errorluckyBackupWindowlS'han eliminat les dades d'anteriors captures d'imatge Removed all older snapshots dataluckyBackupWindow S'est eliminantRemovingluckyBackupWindowS'estan eliminant captures d'imatge antigues i els fitxers de registre de la tasca+Removing old snapshots and logfiles of taskluckyBackupWindowExecutaRunluckyBackupWindow&Programa S&cheduleluckyBackupWindowFSeleccioneu la carpeta d'exportaciSelect export directoryluckyBackupWindow*Estableix per defecteSet as DefaultluckyBackupWindow Establir el cam Set pathsluckyBackupWindowVEstabliu el cam per les ordres rsync i ssh$Set paths for rsync and ssh commandsluckyBackupWindow>Mostra la finestra d'informaciShow information windowluckyBackupWindow>Mostra la finestra d'informaci+hide/show information window button tooltipShow information windowluckyBackupWindow6Mostra text sota les iconesShow text under iconsluckyBackupWindow OrigenSourceluckyBackupWindowVAtura ARA l'execuci de les tasques en curs'Stop the execution of running tasks NOWluckyBackupWindowVLa carpeta de dest s'ha creat correctament)Successfuly created destination directoryluckyBackupWindow TascaTaskluckyBackupWindow"Llista de tasques Task listluckyBackupWindow>La llista de tasques del perfilTask list of profileluckyBackupWindow0La descripci del perfilThe description of profileluckyBackupWindow~La carpeta que heu seleccionat no cont dades de perfil vlidesCThe directory you have selected does not contain valid profile dataluckyBackupWindowjEl nom que heu escrit cont noms carcters no vlids:The name you have entered contains only invalid charactersluckyBackupWindow>El sistema s'aturar en 1 minut$The system will shutdown in 1 minuteluckyBackupWindow>La llista de tasques est buidaThe task list is emptyluckyBackupWindowAix far una <b>execuci simulada</b> que no fa cap canvi (i produeix gaireb la mateixa sortida que en una execuci real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowHa caducat Timed outluckyBackupWindow:No s'ha pogut obrir el perfilUnable to open profileluckyBackupWindow Error desconegut Unknown errorluckyBackupWindow Error desconegutthis refers to a process Unknown errorluckyBackupWindow\Useu el bot a la dreta "afegeix" per comenar0Use the "add" button on the right to get startedluckyBackupWindowUsa 'inclou caixes de selecci' per incloure o no una tasca seleccionada>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowHVista/Edita la descripci del perfil!View/Edit the profile descriptionluckyBackupWindowAVSWARNINGluckyBackupWindowBenvingut a Welcome toluckyBackupWindow*Tamb voleu eliminar:Would you like to also remove:luckyBackupWindow4Voleu continuar igualment?!Would you like to proceed anyway?luckyBackupWindow(Voleu substituir-lo?Would you like to replace it ?luckyBackupWindowDVoleu desar-ho abans de continuar?-Would you like to save it before proceeding ?luckyBackupWindow$Error d'escriptura Write errorluckyBackupWindowSYESluckyBackupWindowTHeu demanat crear una tasca de RESTAURACI/You have asked for a RESTORE task to be createdluckyBackupWindowLNoms heu incls tasques que s'ometran9You have only included tasks that are going to be skippedluckyBackupWindowZHau arribat al lmit mxim de tasques admeses5You have reached the maximum limit of supported tasksluckyBackupWindowpHeu d'eliminar una tasca per poder afegir-ne una altra!!7You have to remove a task if you wish to add another !!luckyBackupWindowPse'n crear un de buit amb el mateix nom4a new blank one, with the same name, will be createdluckyBackupWindowafegeixaddluckyBackupWindowafegeix tascaadd taskluckyBackupWindowja existeixalready existsluckyBackupWindow@i la llista desplegable 'perfil'and 'profile' drop-down listluckyBackupWindowHi s'ha afegit a la llista de perfilsand added at the profile listluckyBackupWindow^i canvieu all que desitgeu abans de prosseguir.and change anything you wish before proceedingluckyBackupWindow com aasluckyBackupWindow com aFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow s'est calculant calculatingluckyBackupWindow s'est calculant-info message displayed during ...calculations calculatingluckyBackupWindow sortida d'ordrescommands outputluckyBackupWindow&no s'ha pogut crearcould not be createdluckyBackupWindow&no s'ha pogut desarcould not be savedluckyBackupWindow&no s'ha pogut desarPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow&s'ha creat amb xitcreated successfullyluckyBackupWindowNS'est creant el perfil per defecte ...creating default profile ...luckyBackupWindow6s'est creant el perfil ...creating profile ...luckyBackupWindowEl crontab actual<font color=green>l'ha actualitzat correctament6current crontab updated successfullyluckyBackupWindowperfil actualcurrent profileluckyBackupWindow$perfil per defectedefault profileluckyBackupWindow*El perfil per defecte^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow*El perfil per defecteVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow4s'ha eliminat correctamentdeleted successfullyluckyBackupWindow2s'estan eliminant fitxersdeleting filesluckyBackupWindow2s'estan eliminant fitxers/info message displayed during ...file deletionsdeleting filesluckyBackupWindowmostra - restaura - elimina les cpies de seguretat existents de les tasques ressaltades?display - restore - delete existing backups of highlighted taskluckyBackupWindowPmostra informaci de la tasca ressaltada.display information regarding highlighted taskluckyBackupWindow8s'ha duplicat amb xit com aduplicated successfully asluckyBackupWindow(s'han produt errors errors foundluckyBackupWindow(execuci del perfil:execution of profile:luckyBackupWindow&execuci de perfil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow8s'ha exportat correctament aexported successfully toluckyBackupWindow*ha fallat en eliminarfailed to removeluckyBackupWindowzha fallat en eliminar les dades d'anteriors captures d'imatge)failed to remove all older snapshots dataluckyBackupWindow acabatfinishedluckyBackupWindow acabat:full phrase: 'Execution of profile finished'finishedluckyBackupWindow4s'ha importat correctamentimported successfullyluckyBackupWindowen curs...in progress...luckyBackupWindow inclouincludeluckyBackupWindows'ha modificat is modifiedluckyBackupWindowno s vlid peris not valid forluckyBackupWindow.salta a l'error segentjump to next errorluckyBackupWindow0salta a l'error anteriorjump to previous errorluckyBackupWindow4s'ha carregat correctamentloaded successfullyluckyBackupWindowTs'est carregant el perfil per defecte ...loading default profile ...luckyBackupWindow(la crrega ha fallatloading failedluckyBackupWindow<s'est carregant el perfil ...loading profile ...luckyBackupWindow\s'han creat fitxers de registre a la carpeta: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow*minimitza a la safataminimize to trayluckyBackupWindowBminimitza la finestra a la safata%minimizes the window to the tray arealuckyBackupWindowmodificamodifyluckyBackupWindow8modifica la tasca ressaltadamodify highlighted taskluckyBackupWindowres a fer nothing to doluckyBackupWindow>execuci d'ordres de post-tascapost-task execution of commandluckyBackupWindow<execuci d'ordres de pre-tascapre-task execution of commandluckyBackupWindow perfilprofileluckyBackupWindowel perfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow perfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowEl perfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowel perfilprofile luckyBackupWindowmode silencis quiet modeluckyBackupWindow"s'han actualitzat refreshedluckyBackupWindoweliminaremoveluckyBackupWindow6elimina la tasca ressaltadaremove highlighted taskluckyBackupWindow<s'ha reanomenat correctament arenamed successfully toluckyBackupWindow<s'ha reanomenat correctament aWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowfaqu es mostren les ordres rsync i pre/post tasques9rsync and pre/post task commands output is displayed hereluckyBackupWindow.s'ha desat correctamentsaved successfullyluckyBackupWindowNs'est desant el perfil per defecte ...saving default profile ...luckyBackupWindow6s'est desant el perfil ...saving profile ...luckyBackupWindowprogramat scheduledluckyBackupWindow4s'ha establert per defecteset as defaultluckyBackupWindow"s'ha establert enset toluckyBackupWindow aturashutdownluckyBackupWindow"mode de simulacisimulation modeluckyBackupWindow estatstatusluckyBackupWindowsuper usuari super userluckyBackupWindow"mode super usuarisuper user modeluckyBackupWindowatoluckyBackupWindow6s'estan transferint fitxerstransferring filesluckyBackupWindow6s'estan transferint fitxers/info message displayed during ...file transferstransferring filesluckyBackupWindowXs'est intentant enviar un correu electrnictrying to send an emailluckyBackupWindowversi:version:luckyBackupWindow.Calcula les difernciesCalculate differences manageDialogCalcula les diferncies entre l'origen i la captura d'imatge seleccionadaFCalculate the differences between the source and the selected snapshot manageDialogFL'usuari ha interromput els clculsCalculations terminated by user manageDialog tancaClose manageDialog,tanca aquesta finestraClose this window manageDialogEliminaDelete manageDialogElimina la captura d'imatge seleccionada i el seu fitxer de registre,Delete the selected snapshot and its logfile manageDialogvNo teniu els permisos suficients per llegir aquesta carpeta;I do not have sufficient permissions to read this directory manageDialogZSeleccioneu una captura d'imatge de la llista&Please select a snapshot from the list manageDialog0Espereu que el fil acabi*Please wait until the thread is terminated manageDialogrestauraRestore manageDialogRRestaura la captura d'imatge seleccionadaRestore the selected snapshot manageDialog ATURASTOP manageDialog*Atura els clculs ARAStop calculations NOW manageDialog6Aquesta carpeta no existeixThis directory does not exist manageDialog6Aquesta carpeta no existeixInformation messageThis directory does not exist manageDialogMostra el fitxer de registre de la captura d'imatge seleccionada)View the logfile of the selected snapshot manageDialogMostra el fitxer de registre de la tasca se sincronitzaci seleccionada*View the logfile of the selected sync task manageDialog dest: destination: manageDialogamaga l'origen hide source manageDialogTluckyBackup - gestiona cpies de seguretatluckyBackup - manage backup manageDialog$no est disponible not available manageDialog perfilprofile manageDialogorigen:source: manageDialog0sincronitza la carpeta A sync dir A manageDialog0sincronitza la carpeta B sync dir B manageDialog tascatask manageDialog"vista de registreview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardINTERROMPABORT manageWizard S'ha interromputAborted manageWizard:Cam de la cpia de seguretat Backup path manageWizardVNavega localment un cam nou de restauraci%Browse locally for a new restore path manageWizardMarqueu-ho per clonar la captura d'imatge a la carpeta de restauraci.BCheck this, to clone the backup snapshot to the restore directory. manageWizardData i hora Date & time manageWizard@Eliminaci de cpia de seguretat Delete backup manageWizardElimina dades existents que no existeixen a la cpia de seguretat4Delete existing data that do not exist at the backup manageWizard.S'estan eliminant dades Deleting data manageWizardS'est eliminant el fitxer que llista els canvis en la captura d'imatge)Deleting file that lists snapshot changes manageWizardzS'est eliminant el fitxer de registre de la captura d'imatgeDeleting snapshot logfile manageWizardEls fitxers de la cpia de seguretat reemplaaran els fitxers corresponents a la carpeta de restauraciSExisting backup files will replace the corresponding files at the restore directory manageWizardS'ha acabatFinished manageWizardSi la informaci anterior s correcta, feu clic a <b>inici</b> per comenar@If the information above is correct, click start to begin manageWizardSi la informaci anterior s correcta, feu clic a <b>inici</b> per comenar`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard.Salta a l'error segentJump to next error manageWizard0Salta a l'error anteriorJump to previous error manageWizardzNo hi ha dades especfiques de la captura d'imatge. S'omet...,No snapshot specific data exist. Skipping... manageWizardCamPath manageWizardBRestauraci de cpia de seguretatRestore backup manageWizard&Cam de restauraci Restore path manageWizardTS'estan restaurant dades: dades principalsRestoring data: main trunk manageWizardpS'estan restaurant dades: fitxers de la captura d'imatgeRestoring data: snapshot files manageWizardTSeleccioneu la nova carpeta de restauraciSelect new restore directory manageWizardLa carpeta de restauraci quedar igual que en la captura d'imatge de restauraciBThe restore directory will become identical to the backup snapshot manageWizardAix far una <b>execuci simulada</b> que no fa cap canvi (i produeix gaireb la mateixa sortida que en una execuci real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizarddS'est actualitzant la llista de captures d'imatgeUpdating list of snapshots manageWizardAVSWARNING manageWizardtEsteu a punt d'eliminar les dades d'una cpia de seguretat#You are about to delete backup data manageWizardcancellacancel manageWizard canviachange manageWizard tancaclose manageWizard(s'han produt errors errors found manageWizardha fallatfailed manageWizardha fallat-info message displayed after ...file deletionfailed manageWizardVluckyBackup - gesti de cpies de seguretatluckyBackup - manage backup manageWizarderror segent next error manageWizardsense errors no errors manageWizardno disponible not available manageWizarderror anteriorprevious error manageWizardsimulaci simulation manageWizard inicistart manageWizardamb xitsuccess manageWizardamb xit-info message displayed after ...file deletionsuccess manageWizardamb xit5info message displayed after ...snapshots list updatesuccess manageWizard'Equip remot' est seleccionar, per no heu declarat el nom de cap equip remot='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>No us oblideu</b> de definir una carpeta a la caixa de grup 'exclou' contingui el destfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@Amfitri:@Host: modifyDialogAfegeix qualsevol carpeta, fitxer o patr a excloure d'aquesta tasca@Add any directory, file or pattern to be excluded from this task modifyDialogAfegeix qualsevol carpeta, fitxer o patr a incloure en aquesta tasca>Add any directory, file or pattern to be included by this task modifyDialoghAfegir l'ordre tal i com consta en el camp al costat*Add command as entered in the field beside modifyDialoglAfegeix una exclusi segons definit en el camp segent*Add exclusion as entered in the next field modifyDialoghAfegeix inclusi tal i com consta en el camp segent*Add inclusion as entered in the next field modifyDialogAfegeix o elimina qualsevol opci rsync. Si no sabeu el que significa, deixeu-ho com est !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogrAfegeix l'opci rsync tal i com consta en el camp segent-Add rsync option as entered in the next field modifyDialogAvanatAdvanced modifyDialogDesprsAfter modifyDialogTots els camps de la finestra de propietats de tasques semblen ser correctes?All declared fields of the task properties window seem to be ok modifyDialogTamb executa Also Execute modifyDialogBIntenta activitats de superusuariAttempt super-user activities modifyDialogZCpia de seguretat de l'origen dins del dest Backup Source inside Destination modifyDialog:Fitxers de cpia de seguretat Backup files modifyDialogHCpia de seguretat de fitxers obertsBackup open files modifyDialog AbansBefore modifyDialog4Carpetes de memria de cau Cache folders modifyDialogCancellaCancel modifyDialogMarqueu-ho si useu una partici FAT/NTFS com a dest. Els propietaris i permisos no es conservaran. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogMarqueu-ho per clonar l'origen al dest Deixeu-ho sense marcar per crear una carpeta extra al destiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogbMarqueu-lo per connectar amb un mdul rsync remot/Check this to connect to an rsync Remote module modifyDialog Opcions d'ordresCommand Options modifyDialogLlista d'ordres Command list modifyDialogCopia el dispositiu (noms super usuari) i fitxers especials tal com sn (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogXCopia els enllaos simblics com a tals (-l)Copy symlinks as symlinks (-l) modifyDialogDefiniu el tipus de tasca: 1. Cpia de seguretat de la carpeta origen, dins del dest (observeu la caixa "NO cres carpeta") 2. Sincronitza l'origen i el dest, desant els fitxers ms recents d'ambdsDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefiniu el tipus de tasca: 1. Cpia de seguretat de l'origen dins de del dest 2. Cpia de seguretat de la carpeta d'origen per nom dins del dest 3. Sincronitza l'origen i el dest, desant els fitxers ms recents d'ambdsDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog8Elimina els fitxers al destDelete files on the destination modifyDialogFElimina fitxers en el dest que no existeixen en l'origen . Heu de seleccionar "Recursiu dins les carpetes" (--delete-after & --delete-excluded si useu "Exclude")Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescripci Description modifyDialog Dest Destination modifyDialog Dest: Destination : modifyDialog(El dest s FAT/NTFSDestination is FAT/NTFS modifyDialog4NO creis una carpeta extraDo NOT create extra directory modifyDialogNo facis cpia de seguretat dels fitxers d'origen que sn ms nous al dest (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNo exclou aquesta llista de patrons. Adreceu-vos al manual per entendre millor les normes d'inclusi.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog@Edita les inclusions ressaltadesEdit highlighted inclusion modifyDialogEscriviu un nom per la tasca (per exemple"Cpia de seguretat de la carpeta home"):Enter a name for this task (eg "Backup my home directory") modifyDialogEscriviu aqu l'ordre a executar desprs de la tasca i premeu el bot "afegeix" per afegir-la a la llista a continuacinEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogEscriviu aqu l'ordre a executar abans de la tasca i premeu el bot "afegeix" per afegir-la a la llista a continuacioEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogEscriviu una opci rsync a afegir (per exemple "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogEscriviu aqu fitxer, carpeta o patr i premeu el bot "afegeix" per afegir-los a la llista d'exclusions * - coincideix qualsevol component no buit (s'atura a la barra inclinada) ** - coincideix qualsevol cosa inclosa la barra inclinada ? - coincideix qualsevol carcter excepte la barra inclinada trailing dir_name/*** - coincideix tant la carpeta com el seu contingut starting / - el patr s'ancora en un punt particular de la gerarquia de la transferncia (normalment s l' "origen") trailing / - noms coincideix la carpeta, no els fitxers normals, enllaos simblics ni dispositiusEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogEscriviu aqu el fitxer, carpeta o patr i premeu el bot "afegir" per afegir-lo a la llista d'inclusi * - coincideix qualsevol component no buit (s'atura en les barres inclinades) ** - coincideix qualsevol component no buit, incloent les barres inclinades ? - coincideix qualsevol carcter excepte una barra inclinada trailing carpeta/*** - coincideix tant la carpeta com el seu contingut starting / - el patr est ancorat en un punt en la gerarquia de transferncia (normalment s l'"origen") trailing / - noms coincideix la carpeta, ni fitxers regulars, ni enllaos simblics ni dispositiusEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogEscriviu el cam sencer de la carpeta dest (per exemple /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogEscriviu el cam sencer del fitxer que cont la clau d'autenticaci privada ssh (deixeu en blanc si no s aplicable). Observeu que heu de fer totes les accions necessries per una connexi remota sense contrasenya usant un parell de claus OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogEscriviu el cam sencer del fitxer que cont la contrasenya d'autenticaci (deixeu en blanc si no s aplicable) rsync (no la ssh).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogEscriviu el cam sencer de la carpeta d'origen (per exemple /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogBEscriviu el nom de l'equip remot."Enter the name of the remote host. modifyDialogEscriviu el port que voleu usar per la connexi ssh (deixeu en blanc pel port per defecte)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogEscriviu el nom d'usuari de l'equip remot (deixeu buit si no s aplicable).HEnter your username for the remote host (leave blank if not applicable). modifyDialog&S'han trobat errorsErrors have been found modifyDialog ExclouExclude modifyDialoglExclou tots els fitxers "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog|Exclou tots els fitxers de cpia de seguretat i carpetes (**~)(Exclude all backup files & folders (**~) modifyDialogExclou les carpetes de memria de cau (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogRExclou les carpetes temporals (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialoghExclou totes les carpetes .gvfs d'usuari (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogExclou les carpetes de paperera dels usuaris (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog&Llista d'exclusions Exclude list modifyDialogExclou les carpetes del sistema /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExclou carpetes de muntatge del sistema /mnt i /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogdExecuta ordres extra, abans o desprs de la tasca.1Execute extra commands, before or after the task. modifyDialogExecuta la tasca fins i tot si apareix un missatge d'AVS Normalment s'usa quan les ordres "Executa abans" poden solucionar un avs (per exemple: muntar particions) ATENCI: marqueu-ho si realment sabeu el que esteu fentExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog8Llista d'opcions rsync extraExtra rsync options list modifyDialogLEls fitxers que tenen enllaos simblics forts en l'origen els tindran tamb al dest AVS: Els fitxers han d'estar inclosos en el conjunt de la transferncia !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogDIgnora els fitxers a la manera CVSIgnore files the CVS way modifyDialogrIgnora els fitxers usant un algorisme similar a CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialog InclouInclude modifyDialogFInclou noms la llista de patrons. Res ms. Sisplau adreceu-vos al manual per entendre millor les ordres d'inclusi. Aix desactivar la caracterstica d'exclusi.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Llista d'inclusi Include list modifyDialogMode d'inclusi Include mode modifyDialogDeixeu la caixa marcada per <b>ATURA</b>R l'execuci de la tasca en procs si aquesta ordre acaba amb errorgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Mode:Mode: modifyDialogHMou les inclusions ressaltades avallMove highlighted inclusion down modifyDialogHMou les inclusions ressaltades amuntMove highlighted inclusion up modifyDialog Nom :Name : modifyDialogInclusi normalNormal Include modifyDialogD'acordOkay modifyDialogNoms inclou Only Include modifyDialogrO elimineu la selecci 'Equip remot' per operar localment2Otherwise uncheck 'Remote Host' to operate locally modifyDialogdComproveu les caixes rellevants abans de continuar/Please check the relevant box before proceeding modifyDialogjDefiniu l'origen abans d'executar l'editor de patronsModifiqueu-ne almenys un d'ells"Please modify at least one of them modifyDialog^Especifiqueu un nom diferent abans de continuar1Please specify a different name before proceeding modifyDialogHEspecifiqueu el nom d'un equip remot!Please specify a remote host name modifyDialogTEspecifiqueu el segent abans de procedir:/Please specify the following before proceeding: modifyDialogRConserva el dispositiu, fitxers especialsPreserve device, special files modifyDialog6Conserva els enllaos fortsPreserve hard links modifyDialogBConserva el propietari, les horesPreserve ownership, times modifyDialog*Conserva els permisosPreserve permissions modifyDialogNconserva els permisos dels fitxers (-p)"Preserve permissions of files (-p) modifyDialog>Conserva els enllaos simblicsPreserve symlinks modifyDialogConserva el propietari (noms super usuari), el grup i la marca horria (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialogNLlegeix els patrons exclosos del fitxerRead exclude patterns from file modifyDialog$Llegeix el fitxer: Read file: modifyDialogRLlegeix els patrons d'inclusi del fitxerRead include patterns from file modifyDialog4Recursiu dins les carpetesRecurse into directories modifyDialog>Recursiu dins les carpetes (-r)Recurse into directories (-r) modifyDialog RemotRemote modifyDialogMdul remot Remote module modifyDialogNElimina l'ordre ressaltada de la llista$Remove highlighted command from list modifyDialog^Elimina les exclusions ressaltades de la llista&Remove highlighted exclusion from list modifyDialog^Elimina les inclusions ressaltades de la llista&Remove highlighted inclusion from list modifyDialogXElimina les opcions ressaltades de la llista#Remove highlighted option from list modifyDialogZRepeteix qualsevol ordre que falli, x vegades&Repeat any command that fails, x times modifyDialog(Repetici en fallar:Repeat on fail: modifyDialog&Restableix permisosRestore permissions modifyDialog<Seleccioneu l'ordre a executarSelect command to be executed modifyDialog>Seleccioneu la carpeta de destSelect destination directory modifyDialogXSelecciona el fitxer a llegir exclou patrons$Select file to read exclude patterns modifyDialogXSelecciona el fitxer a llegir inclou patrons$Select file to read include patterns modifyDialogTSeleccioneu el fitxer contrasenya de rsyncSelect rsync password file modifyDialog>Seleccioneu la carpeta d'origenSelect source directory modifyDialog<Seleccioneu el fitxer clau sshSelect ssh keyfile modifyDialogSeleccioneu el nombre total de captures d'imatges de cpia de seguretat a conservar0Set the total number of backup snapshots to keep modifyDialogTMostra l'ordre rsync tal i com s'executar.Shows the rsync command as it will be executed modifyDialogDOmet els fitxers ms nous en destSkip newer destination files modifyDialog<Captures d'imatge a conservar:Snapshots to keep: modifyDialog OrigenSource modifyDialogOrigen:Source : modifyDialog4Sincronitza origen i dest"Synchronize Source and Destination modifyDialog(Carpetes del sistemaSystem folders modifyDialog@Carpetes de muntatge del sistemaSystem mount folders modifyDialog,Descripci de la tascaTask description modifyDialogNom de la tasca Task name modifyDialog,Propietats de la tascaTask properties modifyDialogPlantilles Templates modifyDialog$Carpetes temporalsTemporary folders modifyDialogVAix no est perms perqu '/' no t un nomATURA</b>R l'execuci de la tasca en cas d'error0use boxes to STOP task execution on error modifyDialog validavalidate modifyDialogsense haver seleccionat l'opci requerida 'Recursiu dins les carpetes'Cwithout having checked 'Recurse into directories' which is required modifyDialogCancellaCancel patternEditorRSeleccioneu-ho per usar la carpeta anterior com a cam absolut si no est seleccionat, el patr coincidir amb qualsevol fitxer/carpeta que concordi amb el criteri "nom"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorxDefineix el criteri de nom dels fitxers/carpetes a coincidirEDefine here the name criteria for the files/directories to be matched patternEditorVDefiniu aqu a quin patr voleu referir-vos8Define here, what would you like the pattern to refer to patternEditor.Contingut de la carpetaDirectory contents patternEditorEscriviu els carcters que consten en qualsevol posici del nom dels fitxers/carpetes a qu fa referncia el patrsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor:Escriviu els ltims carcters del nom dels fitxers/carpetes als que es refereix el patr per exemple per referir-vos a tots els fitxers ".txt", escriviu .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorEscriviu el nom dels fitxers/carpetes als que es refereix el patrGEnter here the name of the files/directories that the pattern refers to patternEditorEscriviu els primers carcters del nom dels fitxers/carpetes als que es refereix el patrbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditorBAccedeix profund en el cam per :Go deeper in path by : patternEditor\Accedeix profund en el cam a qualsevol nivellGo deeper in path by any level patternEditorD'acordOkay patternEditorPSeleccioneu una carpeta dins de l'origen+Please choose a directory within the source patternEditorLSeleccioneu un fitxer dins de l'origen&Please choose a file within the source patternEditor~Elimina els camps de l'editor de patrons als valors per defecte5Reset the pattern editor fields to the default values patternEditor.Seleccioneu una carpetaSelect directory patternEditor*Seleccioneu un fitxer Select file patternEditor&Conjunt de carpetesSet of directories patternEditor$Conjunt de fitxers Set of files patternEditor$Carpeta especficaSpecific directory patternEditor Fitxer especfic Specific file patternEditor<El patr actual es mostra aqu$The actual pattern is displayed here patternEditor(El patr refereix a:The pattern refers to a: patternEditorUseu-ho si el patr es refereix a un conjunt de carpetes que tenen alguna cosa en com per exemple totes les carpetes anomenades com a "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUseu-ho si el patr es refereix a un conjunt de fitxers que tenen alguna cosa en com per exemple tots els fitxers amb una extensi ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUseu-ho si el patr es refereix a una carpeta especfica per exemple "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUseu aquest patr per referir-vos a un fitxer concret per exemple "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditornUseu-ho si el contingut del patr es refereix al contingut d'una carpeta (o un conjunt de carpetes), no la carpeta mateixa per exemple el contingut de la carpeta "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditordUseu-ho per referir-vos a sub-carpetes ms profundes Per exemple La carpeta "/media/music" inclou 3 sub-carpetes: 1.Rock 2.Jazz 3.Soundtracks i voleu referir-vos al contingut de totes, definiu el segent: * Conjunt de carpetes * Contingut de la carpeta * cam:/media/music/ * Vs profund en el cam en "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorqualsevolany patternEditorNnavega localment pel cam d'una carpeta"browse localy for a directory path patternEditor<navega localment per un fitxerbrowse localy for a file patternEditorcont : contains : patternEditorcarpeta : directory : patternEditoracaben amb : ends with : patternEditorfitxer :file : patternEditorpatr final final pattern patternEditors exactament : is exactly : patternEditornomname patternEditor"editor de patronspattern editor patternEditorinicialitzareset patternEditorcomencen amb : starts with : patternEditor&usa un cam absolutuse absolute path patternEditor fitxer filescheduleDialog & a la& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:retard:delayscheduleDialog@<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html>

Profile execution scheduling

scheduleDialog@ reiniciar@ rebootscheduleDialogJAfegeix un nou perfil de planificaciAdd a new profile schedulescheduleDialog:Afegir perfil de planificaciAdd profile schedulescheduleDialogQualsevolAnyscheduleDialog abrilAprilscheduleDialog abrilfull phrase: 'of April'AprilscheduleDialogpEsteu segur que voleu tancar el dileg de planificaci ?4Are you sure you want to close the schedule dialog ?scheduleDialog agostAugustscheduleDialog agostfull phrase: 'of August'AugustscheduleDialogCancellaCancelscheduleDialogComprova si l'ordinador no permet suport d'entorn grfic (per exmple: servidor)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogMode consola Console ModescheduleDialogdesembreDecemberscheduleDialogdesembrefull phrase: 'of December'DecemberscheduleDialogZRetarda l'execuci de luckybackup en arrencar&Delay luckybackup execution at startupscheduleDialog0Mostra el crontab actualDisplay the current crontabscheduleDialog"Executa el perfilExecute profilescheduleDialog febrerFebruaryscheduleDialog febrerfull phrase: 'of February'FebruaryscheduleDialogDivendresFridayscheduleDialogPerfil no vlidInvalid profilescheduleDialog generJanuaryscheduleDialog generfull phrase: 'of January'JanuaryscheduleDialog juliolJulyscheduleDialog juliolfull phrase: 'of July'JulyscheduleDialogjunyJunescheduleDialogjunyfull phrase: 'of June'JunescheduleDialogmarMarchscheduleDialogmarfull phrase: 'of March'MarchscheduleDialogmaigMayscheduleDialogmaigfull phrase: 'of May'MayscheduleDialogDModifica el perfil de planificaciModify profile schedulescheduleDialog\Modifica el perfil de planificaci seleccionat Modify selected profile schedulescheduleDialogDillunsMondayscheduleDialogJNo hi ha planificacions declarades !!No schedules are declared !!scheduleDialognovembreNovemberscheduleDialognovembrefull phrase: 'of November'NovemberscheduleDialogoctubreOctoberscheduleDialogoctubrefull phrase: 'of October'OctoberscheduleDialogPerfil : Profile :scheduleDialog4Detalls de la planificaciProfile schedule detailsscheduleDialogZElimina el perfil de planificaci seleccionat Remove selected profile schedulescheduleDialog<Executa una vegada, en iniciarRun once, at startupscheduleDialogDissabteSaturdayscheduleDialogsetembre SeptemberscheduleDialogsetembrefull phrase: 'of September' SeptemberscheduleDialogOmet les tasques que apareixen amb un missatge d'avs 'CRTIC' desprs de la comprovaci de carpetesSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog"Comenant de zeroStarting from scratchscheduleDialogDiumengeSundayscheduleDialogEl fitxer de planificaci no s d'una versi luckyBackup vlida.8The existent schedule file is not a valid luckyBackup v.scheduleDialog DijousThursdayscheduleDialogDimartsTuesdayscheduleDialogDNo s'ha pogut crear el fitxer cronUnable to create cron filescheduleDialogZNo s'ha pogut crear el fitxer de planificaciUnable to create schedule filescheduleDialogDimecres WednesdayscheduleDialogXHeu fet canvis sense fer clic al bot cronIT8You have made changes without clicking the cronIT buttonscheduleDialogtHeu arribat al lmit mxim de perfils de programaci admsBYou have reached the maximum limit of supported scheduled profilesscheduleDialogjHeu d'eliminar un element si en voleu afegir un altre5You have to remove an item if you wish to add anotherscheduleDialogPEl crontab s'ha actualitzat correctament$Your crontab is updated successfullyscheduleDialogafegeixaddscheduleDialogaatscheduleDialog tancaclosescheduleDialog&tanca aquest dilegclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog*contingut del crontabcrontab contentscheduleDialogdiadayscheduleDialogdia del mes :day of month :scheduleDialog&dia de la setmana : day of week :scheduleDialogcadaeveryscheduleDialog$cada hora al minuthourly at minute scheduleDialog4luckyBackup - planificadorluckyBackup - schedulescheduleDialogminminscheduleDialogmodificamodifyscheduleDialog mes :month :scheduleDialognndscheduleDialogas in 22nd dayndscheduleDialog8no hi ha entrades al crontabno crontab entries existscheduleDialogdeofscheduleDialog"qualsevol del mes of any monthscheduleDialogD'acordokayscheduleDialogLnoms una vegada en iniciar el sistemaonce, at system startupscheduleDialogerrdscheduleDialogas in 23rd dayrdscheduleDialogeliminaremovescheduleDialogPlanifica l'execuci de perfils segons declarat en la llista anterior@schedule the execution of profiles as declared in the list abovescheduleDialog|establiu aquest valor a -1 per l'execuci programada cada hora9set this value to -1 for the schedule to occur every hourscheduleDialog omet els crtics skip criticalscheduleDialogrstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogrtthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialog&hora (hora:minut) :time (hour:min) :scheduleDialog0mostra el crontab actualview current crontabscheduleDialogNJa existeix un perfil amb el mateix nom+A profile with the same name already exists textDialogBEsteu segur que voleu procedir ??#Are you sure you wish to proceed ?? textDialogCOMPTE, si la vostra intenci NO s clonar l'origen a la dest !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogCancellaCancel textDialog<Copia l'ordre al porta-retallsCopy command to clipboard textDialog@No mostrar ms per aquesta tasca$Do not show this again for this task textDialogBEscriviu frase de la contrasenya:Enter passphrase : textDialog*Escriviu contrasenya:Enter pasword : textDialog@Escriviu el nom del nou perfil :#Enter the name of the new profile : textDialog@Escriviu el nou nom del perfil :#Enter the new name of the profile : textDialogNoNo textDialogD'acordOkay textDialog0Escriviu un nom diferentPlease enter a different name textDialog.Descripci del perfil :Profile description : textDialogSYes textDialogHeu seleccionat fer una "cpia de seguretat del contingut de la carpeta d'origen"<br>junt amb l'opci "elimina fitxers en dest"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogLenvia informaci per correu electrniceMail information textDialogluckyBackup luckyBackup textDialogCancellaCancel winDialogTEscriviu el cam sencer de l'ordre cygpath*Enter the full path of the cygpath command winDialogREscriviu el cam sencer de l'ordre dosdev)Enter the full path of the dosdev command winDialogbEscriviu el cam sencer de la carpeta luckybackup0Enter the full path of the luckybackup directory winDialogPEscriviu el cam sencer de l'ordre rsync(Enter the full path of the rsync command winDialogLEscriviu el cam sencer de l'ordre ssh&Enter the full path of the ssh command winDialog\Escriviu el cam sencer de la carpeta temporal.Enter the full path of the temporary directory winDialogZEscriviu el cam sencer de la carpeta vshadow,Enter the full path of the vshadow directory winDialog6Fitxers executables (*.exe)Executable Files (*.exe) winDialogD'acordOkay winDialog6Seleccioneu l'ordre cygpathSelect cygpath command winDialog4Seleccioneu l'ordre dosdevSelect dosdev command winDialog2Seleccioneu l'ordre rsyncSelect rsync command winDialog.Seleccioneu l'ordre sshSelect ssh command winDialog4Usa el valor predeterminatUse default value winDialog navega localmentbrowse locally winDialogcygpath:cygpath: winDialog*desclaraci de caminsdeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog$carpeta principal: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog"carpeta temporal: temp dir: winDialog carpeta vshadow: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_sv.ts0000666000175000017500000071304513165410113021524 0ustar luckybluckyb CalcDiffThread Scanning destination Söker igenom destinationen Please wait Vänligen vänta Scanning snapshot Söker igenom ögonblicksbild Scanning source Söker igenom källan Calculating differences Beräknar skillnader Sync dir A & B differences Skillnaderna mellan synkroniseringskatalogerna A och B Snapshot and source differences Skillnaderna mellan ögonblicksbilden och källan Sync dir B data that also exists at sync dir A and is different Data i synkroniseringskatalog B som även finns i synkroniseringskatalog A skiljer sig åt Snapshot data that also exists at the source and is different Data i ögonblicksbilden som även finns i källan skiljer sig åt The snapshot data will replace the source data during RESTORE Data i ögonblicksbilden kommer att ersätta källdata under ÅTERSTÄLL Data amount is huge. Displaying only first entries Storleken på datan är enorm. Visar endast de första posterna Sync dir B data that do NOT exist at sync dir A Data i synkroniseringskatalogen B som INTE existerar i synkroniseringskatalogen A Snapshot data that do NOT exist at the source Data i ögonblicksbilden som INTE existerar i källan These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Dessa kommer att överföras till källan under ÅTERSTÄLL Sync dir A data that do NOT exist at sync dir B Data i synkroniseringskatalogen A som INTE existerar i synkroniseringskatalogen B Source data that do NOT exist at the snapshot Data i källan som INTE existerar i ögonblicksbilden These will be deleted during RESTORE only if you enable the option: Dessa kommer att raderas under ÅTERSTÄLL endast om du aktiverar valet: delete existing source data that do not exist at the backup radera existerande källdata som inte existerar i säkerhetskopian QObject The task list is empty Aktivitetslistan är tom nothing to start ingenting att starta You have included both of the following connected tasks: Du har inkluderat båda följande anslutna aktiviteter: this is not allowed for obvious reasons detta är inte tillåtet av uppenbara skäl Please <b>uncheck appropriate include boxes</b> before proceeding Vänligen <b> avmarkera lämpliga kryssrutor</b> innan du fortsätter You have not included any tasks Du har inte inkluderat någon aktivitet The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Följande inkluderade aktiviteter <b>delar samma destinationskatalog</b> (alla tillsammans eller som grupper) och minst en av dem kommer att säkerhetskopiera innehållet av en katalog this will lead to one task canceling the other detta kommer att led till en aktivitet kommer att ta ut en annan Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Vänligen avmarkera lämplig kryssruta eller ändra alla aktiviteternas typ till annat än '<b>Säkerhetskopiera kataloginnehåll</b>' eller använd 'Säkerhetskopiera kataloginnehåll' tillsammans med alternativet '<b>Inkludera endast</b>' innan du fortsätter pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Förkörning av kommandot starting Full phrase: pre-task execution of command: <COMMAND> starting startar Command re-run due to failure This means that a specific command is run for once more because it failed the first time Kommando körs en gång till på grund av fel post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Efterkörning av kommandot starting Full phrase: post-task execution of command: <COMMAND> starting startar execution of task Full phrase: execution of task: <TASKNAME> starting Körning av aktivitet starting Full phrase: execution of task: <TASKNAME> starting startar Source Full phrase: source: <SOURCE_NAME Källa Destination Full phrase: Destination: <DEST_NAME Destination execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Körning av första delen utav aktiviteten starting Full phrase: execution of 1st part of task: <TASKNAME> starting startar Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Synkroniserar to Full phrase: Syncing <DIR-A> to <DIR-B> till execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Körning av andra delen utav aktiviteten starting Full phrase: execution of 2nd part of task: <TASKNAME> starting startar Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Synkroniserar to Full phrase: Syncing <DIR-B> to <DIR-A> till pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Förkörning av kommandot finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished avslutad post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Efterkörning av kommandot finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished avslutad execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Körning av första delen utav aktiviteten finished Full phrase: execution of 1st part of task: <TASKNAME> finished avslutad execution of task Full phrase: execution of task: <TASKNAME> finished Körning av aktivitet finished Full phrase: execution of task: <TASKNAME> finished avslutad execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error Körning av aktivitet finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error avslutad på grund av fel i för- eller efterkörningen The process reported an error Processen rapporterade ett fel Backing-up profile, logfiles and snapshot data Säkerhetskopiera profil, loggfiler och ögonblicksbilder Could not open the logfile Kan inte öppna loggfilen The logfile does not exist Loggfilen existerar inte The specified command is probably not installed Det specificerade kommandot är troligtvis inte installerat The logfile could not be created Loggfilen kunde inte skapas command: kommando: exit code: Returkod: output: utdata: Last execution time Tid vid senaste körning not available är ej tillgänglig no errors inga fel errors found fel hittade status status OK OK Sync directory Synkroniseringskatalog Source directory Källkatalog Using remote, check is skipped Kör fjärranslutning, fel kontrolleras inte Destination directory Destinationskatalog free as in free disk space ledigt WARNING VARNING I do not have the permission to read/enter sync directory A Jag har inte behörighet att läsa/gå in i synkroniseringskatalog A I do not have the permission to read/enter the source directory Jag har inte behörighet att läsa/gå in i källkatalogen I do not have the permission to read/enter sync directory B Jag har inte behörighet att läsa/gå in i synkroniseringskatalog B I do not have the permission to read/enter the destination directory Jag har inte behörighet att läsa/gå in i destinationskatalogen Directory Katalog and/or och/eller does not exist existerar inte is not mounted är inte monterad is empty or does not exist är tom eller existerar inte I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Jag kommer <font color=red><b>INTE</b></font> att hoppa över denna aktivitet eftersom du har aktiverat "ignorera VARNINGAR" valet This task will be <font color=red><b>skipped</b></font> Denna aktivitet kommer att <font color=red><b>ignoreras</b></font> CRITICAL KRITISKT is empty är tom I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Jag kommer <font color=orange><b>inte att hoppa över</b></font> denna aktivitet. Synkroniseringen kommer att utföras i alla fall This task will <font color=orange><b>not be skipped Denna aktivitet kommer <font color=orange><b>inte att ignoreras The Destination Directory will be created if it doesn't exist and filled with new backup data Destinationskatalogen kommer att skapas ifall den inte existerar och bli fylld med ny backupdata Task description Aktivitetsbeskrivning ReadLogFile Could not locate the logfile Could not open the logfile Kan inte öppna loggfilen aboutDialog using Qt4 använder Qt4 Backup & Sync Application Säkerhetskopierings- och synkroniseringsapplikation Loukas Avgeriou Loukas Avgeriou It 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. Den är distribuerad med förhoppningen att vara användbar, men UTAN NÅGON GARANTI; även utan underförstådd garanti om SÄLJBARHET eller LÄMPLIGHET FÖR ETT VISST SYFTE. See the 'License Agreement' tab for more details. Se 'Licensavtal'-fliken för ytterligare detaljer. Athens, Greece Aten, Grekland Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Officiell underhållare av Arch linux paketet/pkgbuild (AUR) Valuable advisor Värdeful rådgivare Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor rpm-paketerare, värdefull testare och fjärranslutningsrådgivare Patrick Matthaei Patrick Matthaei Debian package maintainer Underhållare av Debian-paketet Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Grekisk GUI-översättare och värdefull testare The indifex team Indifexteamet for developing the wonderful transifex localization platform and providing it for free för att ha utvecklat den underbara lokaliseringsplatformen Transifex och tillhandahållit den gratis Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Underhållare av openSUSE-paketet (KDE4 Community repo) och värdefull paketeringsrådgivare Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Underhållare av Mepis-paketet (Community repo) och spansk GUI-översättare Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Underhållare av Ubuntu-paketet (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows Portning till MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Kodbidrag för fjärr- och vss-support relaterat till Windowsportning. loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X Portning till Mac OS X Elbert Pol Elbert Pol port to OS/2 Portning till OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Underhållare av Gentoo ebuild Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Underhållare av Puppy, PET och SFS Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Underhållare av Mandriva-paketet (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Underhållare av FreeBSD-paketet Dimitris Jemos Dimitris Jemos Slackel package maintainer Underhållare av Slackel-paketet ex Fedora package maintainer Före detta underhållare av Fedora-paketet Pavel Fric Pavel Fric Czech gui translator Tjeckisk GUI-översättare Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Grekiska manualöversättare German gui translator Tysk GUI-översättare Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portugisisk GUI-översättare Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Fransk GUI-översättare och värdefull paketeringsrådgivare (och inte bara) Raffaele Raffaele Italian gui translator Italiensk GUI-översättare using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Rysk GUI-översättare och värdefull testare Kenny Verstraete Kenny Verstraete Dutch gui translator Holländsk GUI-översättare Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Bosnisk GUI-översättare och underhållare av Mandriva-paketet Majed Sahli Majed Sahli Arabic gui translator Arabisk GUI-översättare Adrian Murariu Adrian Murariu Romanian gui translator Rumänsk GUI-översättare Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v0.3 GUI designer fri13 fri13 v.0.3 gui designer v0.3 GUI designer Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Om det inte var för honom och hans handledningar så hade jag inte startat detta projektet Thomas Glatt Thomas Glatt French gui translator Fransk GUI-översättare Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Spansk GUI-översättare Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Svensk GUI-översättare Catalan gui translator Katalansk GUI-översättare Slovak gui translator Slovakisk GUI-översättare Rivo Zangov Rivo Zangov Estonian gui translator Estnisk GUI-översättare Nicolay Boychev Nicolay Boychev Bulgarian gui translator Bulgarisk GUI-översättare Manuel Meixide Manuel Meixide Galician gui translator Galicisk GUI-översättare Roger Foss Roger Foss Norwegian gui translator Norsk GUI-översättare Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Kinesisk (Taiwansk) GUI-översättare Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Specialgäst, buggfixare ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Värdefull testare & brainstormingspecialist Yuri Vidal Yuri Vidal backupwhenidle python script developer backupwhenidle pythonscriptutvecklare Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester värdefull OS/2- och Windowstestare ...to all users of the ...till alla användare av forums for their support. forumen för deras hjälp. Especially Speciellt that contributed to this project one way or another som bidragit till detta projekt på ett eller annat sätt Last but no least Sist men inte minst Could not locate the license file Kunde inte hitta licensfilen no money inga pengar If you like this app and would like to donate something to me personally, all you have to do is: Om du gillar denna applikation och vill skänka någonting till mig personligen, så det ända du behöver göra är att: Give a thumbs up at: Ge en tumme-upp på: Vote good & become a fan at: Rösta bra och bli ett fan på: This is my reward :) Detta är min belöning :) money pengar I personally never had and never will accept money for this project. Personligen har jag aldrig och kommer aldrig att ta emot pengar till detta projekt. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Emellertid så har jag beslutat att använda luckyBackup för att hjälpa människor som verkligen behöver hjälp. So, please consider it seriously to donate money that will eventually be used for a good cause. Så vänligen gör en seriös övervägning att donera pengar som så småningom kommer till god användning. donation link Donationslänk luckyBackup - about luckyBackup - om close stäng &About &Om <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Hjälp A&uthor &Författare &Thanks to &Tack till &License Agreement &Licensavtal luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup är tillgänglig under villkoren för <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Det är <b>fri mjukvara</b>: du kan distribuera och/eller modifiera den under villkoren för GNU General Public License vilken är utgiven av the Free Software Foundation, version 3 av Licensen. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Underhållare av Fedora-paketet (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Slovensk GUI-översättare E. Hakan Duran E. Hakan Duran Turkish gui translator Turkisk GUI-översättare Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Underhållare av Slackware-paketet (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...min andra hälft, <b>Dimitra</b> som står ut med mig hela tiden under projektets gång emailDialog luckyBackup - email luckyBackup - e-post Email a report after profile execution E-posta en rapport efter profilkörning command: Kommando: Use default This means "use the default value for this field" Använd standard Arguments Argument %f from: %f Från: Enter the sender of the message Ange avsändaren för meddelandet %l logfile %l Loggfil %c logfile.tar.gz %c logfile.tar.gz %d date %d Datum %i time %i Tid %p profile name %p Profilnamn %e No of errors %e Antal fel If unchecked "TLS auto" is used. Only available for sendemail "TLS auto" används om okryssad. Endast tillgänglig för sendEmail Disable TLS Avaktivera TLS %t to: %t Till: Enter the recipient of the message Ange mottagaren för meddelandet %s subject: %s Ämne: Enter the subject of the message Ange ämnet för meddelandet %v smtp server: %v SMTP server: Enter the smtp server used to send the message Ange SMTP-servern för sändning av meddelandet %b body: %b Meddelandetext: Enter the body of the message Ange texten i meddelandet Send an email right now to test the provided arguments Skicka e-post genast för att testa de angivna argumenten Test Test Accept changes and close dialog Acceptera ändringarna och stäng dialogen Okay OK Close dialog Stäng dialog Cancel Avbryt Specify the conditions to send an email Ange villkoren för att skicka e-post Enter the command to run eg sendemail Ange kommando att köra till exempel sendemail arguments: argument: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Ange argument för e-postkommando till exempel -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Villkor Only send when error(s) occurred during a run Sänd bara när fel uppkommer vid körning Error(s) occurred Fel har uppstått Only send when profile is scheduled to run Sänd bara när profilen är schemalagd för körning Profile is scheduled Profil är schemalagd Never send an email Skicka aldrig e-post Never Aldrig The command field is empty Kommandofältet är tomt helpBrowser luckyBackup - help luckyBackup - hjälp manual/ manual/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - Förlopp av aktiviteternas körning <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error Förra felet next error Nästa fel close stäng loading logfile... laddar loggfil... wait vänta luckyBackupWindow commands output output window label Kommandoutskrifter rsync and pre/post task commands output is displayed here tooltip utskrifter från rsync samt för- och efteraktivitetskommandon visas här Task list task list label Aktivitetslista List of all the available tasks task list tooltip - line1 Lista över alla tillgängliga aktiviteter Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Använd 'inkluderakryssrutorna' för att inkludera en aktivitet Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Körning av profilen finished full phrase: 'Execution of profile <PROFILENAME> finished' avslutad simulation mode simuleringsläge Could not update last execution time of tasks Kan inte uppdatera tiden för senaste körningen av aktiviteterna Last execution time of tasks updated Tiden för senaste körningen av aktiviteterna uppdaterad &Abort &Avsluta &Minimize to tray tray menu action &Minimera till aktivitetsfältet &Restore tray menu action &Återställ execution of profile: tray message - execution of profile: <PROFILENAME> in progress... körning av filen: in progress... tray message - execution of profile: <PROFILENAME> in progress... pågår... Removed all older snapshots data Tog bort all data från gamla ögonblicksbilder failed to remove all older snapshots data misslyckades att ta bort all data från gamla ögonblicksbilder Unknown error Okänt fel Elapsed time Förfluten tid pre-task execution of command Förkörning av kommandot post-task execution of command Efterkörning av kommandot Now performing task Kör aktivitet Directory Katalog calculating beräknar deleting files tar bort filer Total files transferred trying to send an email försöker skicka e-post The system will shutdown in 1 minute Systemet kommer att stängas om 1 minut Source Källa Destination Destination All tasks completed Alla aktiviteter klara No errors found Inga fel errors found fel funna logfile(s) have been created under directory: loggfil(er) har skapats i katalogen: Done Klart execution of profile: körning av profilen: finished avslutad Execution of tasks were terminated violently by user Körningen av aktiviteterna blev brutalt avbruten utav användaren &Profile This is a top menu item &Profil &Settings This is a top menu item &Inställningar &Language This is a top menu item &Språk &Help This is a top menu item &Hjälp &Handbook full phrase: 'luckyBackup Handbook' &Handbok (engelska) &About full phrase: 'about luckyBackup' &Om current profile aktuell profil include label of 'include' checkboxes inkludera Move the highlighted task up, by one position button tooltip Flytta den markerade aktiviteten upp ett steg Move the highlighted task down, by one position button tooltip Flytta den markerade aktiviteten ner ett steg jump to next error button tooltip hoppa till nästa fel jump to previous error button tooltip hoppa till förra felet Task task groupbox (add, remove, modify buttons) label Aktivitet add add task button label lägg till add task add task button tooltip lägg till aktivitet remove remove task button label radera remove highlighted task remove task button tooltip radera markerad aktivitet modify modify task button label redigera modify highlighted task modify task button tooltip redigera markerad aktivitet Begin the execution of all included tasks start button tooltip Starta körning av all markerade aktiviteter NOTE simulation checkbox tooltip - line2 OBS Progressbar update will not be realistic simulation checkbox tooltip - line2 Förloppsmätaren kommer inte att vara realistisk Information window information window title Informationsfönster Exit exit button tooltip. full phrase is: 'exit luckybackup' Avsluta EXIT EXIT button label AVSLUTA minimize to tray minimera till aktivitetsfältet minimizes the window to the tray area minimerar fönstret till aktivitetsfältet F1 F1 English Svenska &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Du har valt att en ÅTERSTÄLLNINGSAKTIVITET ska skapas Please have a good look at the following task properties dialog 'create restore' message line 2/4 Vänligen kontrollera noggrant följande egenskapsdialog and change anything you wish before proceeding 'create restore' message line 3/4 och ändra det du vill innan du fortsätter Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Kolla speciellt 'aktivitetsnamn', 'källa', 'destination', och 'hoppa över nya destinationsfiler'-kryssrutan (avancerat) ERROR FEL loading default profile ... information window message laddar standardprofil... loading profile ... information window message laddar profil... loading failed information window message fel vid inläsning Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Kan inte öppna profilen is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y är inte giltig för version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y version: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profilen loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' inläst utan fel scheduled this refers to a profile schemalagd YES JA NO NEJ Description Beskrivning saving default profile ... Information window message sparar standardprofil... saving profile ... Information window message spara profil... WARNING VARNING default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. standardprofil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profilen profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profilen saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' sparad utan fel creating default profile ... Information window message skapar standardprofil... creating profile ... Information window message skapar profil... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profilen created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' skapad utan fel Would you like to save it before proceeding ? Vill du spara spara den innan du fortsätter? Would you like to proceed anyway? Vill du fortsätta i alla fall? super user super user is the root user Administratör (root) super user mode Administratörsläge (root) Welcome to full phrase: 'Welcome to luckyBackup' Välkommen till English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Svenska Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Misslyckades att skapa profilen The name you have entered contains only invalid characters Namnet som du angav innehåller icke-giltiga tecken Profile full phrase: 'Profile <PROFILENAME> already exists' Profilen already exists full phrase: 'Profile <PROFILENAME> already exists' finns redan Would you like to replace it ? Vill du ersätta den? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Misslyckades att ersätta profilen Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Misslyckades att byta namn på profilen profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profilen renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' har utan fel ändrat namn till default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. standardprofil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' har utan fel ändrat namn till All relevant files (logs etc) have also been updated Alla relevanta filer (loggar etc.) har också uppdaterats Failed to update all relevant files (logs etc) Misslyckades att uppdatera alla relevanta filer (loggar etc.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Är du säker på att du vill radera standardprofilen a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' en ny tom, med samma namn, kommer att skapas Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Är du säker på att du vill radera profilen Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Misslyckades att radera profilen Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profilen deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' raderad utan fel All relevant files (logs etc) have also been deleted Alla relevanta filer (loggar etc.) har också raderats Failed to delete all relevant files (logs etc) Misslyckades att radera alla relevanta filer (loggar etc.) Profile full phrase: 'Profile <PROFILENAME> set as default' Profilen set as default full phrase: 'Profile <PROFILENAME> set as default' har satts som standard All relevant files (logs etc) have also been duplicated Alla relevanta filer (loggar etc.) har också duplicerats Failed to duplicate all relevant files (logs etc) Misslyckades att duplicera alla relevanta filer (loggar etc.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Beskrivningen av profilen set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' har satts till Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importera Profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Misslyckades att importera profilen Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profilen imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importerades utan fel as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' som and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' och lades till i profillistan Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Kunde inte hitta filen You have reached the maximum limit of supported tasks Du har nått den övre gränsen för antalet aktiviteter som stödjs You have to remove a task if you wish to add another !! Du måste radera en aktivitet ifall du vill lägga till ytterligare en !! Select export directory this is a dialog title for selecting a directory to export a profile to Välj exportkatalog Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Misslyckades att exportera profilen to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' till Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profilen exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exporterades utan fel The directory you have selected does not contain valid profile data Katalogen som du har valt innehåller inte giltig profildata Errors occurred during snapshots and logfiles transfer Fel uppkom under överföringen av ögonblicksbilder och loggfiler Errors occurred during snapshots transfer Fel uppkom under överföringen av ögonblicksbilder Errors occurred during logfiles transfer Fel uppkom under överföringen av loggfiler Errors occurred during the profile file transfer Fel uppkom under överföringen av profilfilen Please select a task to modify first Vänligen välj en aktivitet att redigera Please select a task to remove first Vänligen välj en aktivitet att radera Are you sure you want to remove the following task ?? Är du säker på att du vill radera följande aktivitet ?? Would you like to also remove: Vill du även radera: Please select a task to manage first Vänligen välj en aktivitet att hantera nothing to do ingenting att göra current crontab <font color=green>updated successfully aktuell crontab <font color=green>uppdaterad utan fel Email preferences have been <font color=green>updated successfully E-postalternativen har blivit <font color=green>uppdaterade utan fel status status NOT INCLUDED INTE INKLUDERAD Checks are disabled. This task will be <b>skipped</b> Kryssrutan är inte ifylld. Denna aktivitet kommer att <b>hoppas över</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Aktivitetslistan för profilen and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' och rullgardinsmenyn refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' uppdaterade luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informationsfönster CheckBox Kyssruta <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Avbruten: Vänligen vänta tills alla processer har blivit avslutade Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Tar bort gamla ögonblicksbilder och loggfiler för aktiviteten Removing Tar bort failed to remove misslyckades att radera Failed to start this refers to a process Kunde inte starta Crashed this refers to a process Krashade Timed out this refers to a process Timeout Write error this refers to a process Skrivfel Read error this refers to a process Läsfel Unknown error this refers to a process Okänt fel calculating info message displayed during ...calculations beräknar transferring files info message displayed during ...file transfers överför filer deleting files info message displayed during ...file deletions tar bort filer transferring files överför filer Total files transfered Totalt antal filer överförda ABORTED AVBRUTEN &Refresh This is a top 'Profile' menu action &Uppdatera De&fault This is a top 'Profile' menu action Stan&dard Set as Default This is a top 'Profile' menu action tooltip Sätt som Standard &View/Edit Description This is a top 'Profile' menu action &Visa/redigera Beskrivning View/Edit the profile description This is a top 'Profile' menu action tooltip Visa/redigera profilbeskrivningen R&ename This is a top 'Profile' menu action &Ändra namn &Delete This is a top 'Profile' menu action &Radera &New This is a top 'Profile' menu action &Ny &Save This is a top 'Profile' menu action &Spara E&xport This is a top 'Profile' menu action &Exportera &Import This is a top 'Profile' menu action &Importera S&chedule This is a top 'Profile' menu action S&chema E&mail This is a top 'Profile' menu action E-&post Email report after profile execution This is a top 'Profile' menu action tooltip E-posta rapport efter profilkörning &Quit This is a top 'Profile' menu action &Avsluta D&uplicate This is a top 'Profile' menu action &Duplicera &Task This is a top menu action &Aktivitet &Add This is a top 'Task' menu action &Lägg till &Remove This is a top 'Task' menu action &Radera &Modify This is a top 'Task' menu action R&edigera Create D&uplicate task This is a top 'Task' menu action Skapa &kopia av aktivitet Create R&estore task This is a top 'Task' menu action Skapa &återställningsaktivitet Manage &Backup This is a top 'Task' menu action &Hantera säkerhetskopior display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip visa - återställ - radera existerande säkerhetskopior av de markerade aktiviteterna Actions This is a top menu action Funktionsknappar Current Profile This is a top menu action Aktuell profil Lock This is a top menu action. Refers to toolbars Lås verktygsfältet Show text under icons This is a top menu action Visa text under ikonerna &Toolbars This is a top menu item &Verktygsrader Set paths This is a top menu action Ange sökvägar Set paths for rsync and ssh commands This is a top menu action tooltip Ange sökvägar för rsync- och ssh-kommandon quiet mode tyst läge Only show errors and important messages during window update Visa endast fel och viktiga meddelanden under fönsteruppdateringen Run start button label Kör Abort Abort button label Avbryt Stop the execution of running tasks NOW Abort button tooltip Stoppa körningen av aktiviteterna NU Execution of tasks finished Done button tooltip Körningen avslutad Dry simulation checkbox label. Translate this as 'simulation' Simulering This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Detta kommer att utföra en <b>simulering</b> som inte kommer att göra några ändringar (och som producerar nästan samma utskrifter som en riktig körning) shutdown shutdown button label Stäng ner Press down to shutdown the system when done shutdown button tooltip Tryck ner för stänga systemet efter körning Hide information window show/hide information window button tooltip Dölj informationsfönstret Show information window show/hide information window button tooltip Visa informationsfönstret profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profilen The task list is empty Aktivitetslistan är tom Use the "add" button on the right to get started Please keep the add word inside quotes Använd "lägg till"-knappen till höger för att starta could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' kunde inte sparas default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. standardprofil could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' kunde inte skapas Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profilen is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' har ändrats Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profilen could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' kunde inte sparas profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profilen Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Misslyckades att duplicera profilen Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Misslyckades att duplicera profilen as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' till Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profilen duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicerad utan problem till Please select a task to duplicate first Vänligen välj en aktivitet att duplicera Please select a task first Vänligen välj en aktivitet Hide information window hide/show information window button tooltip Dölj informationsfönstret Show information window hide/show information window button tooltip Visa informationsfönstret You have only included tasks that are going to be skipped Du har endast inkluderat aktiviteter som kommer att hoppas över Manage Task This is a top 'Task' menu action Hantera Aktivitet display information regarding highlighted task This is a top 'Task' menu action tooltip visa information gällande den valda aktiviteten &Task &Aktivitet Successfully created destination directory Skapade destinationskatalog utan fel Failed to create destination directory Misslyckades att skapa destinationskatalog manageDialog profile profil task aktivitet Delete Radera Restore Återställ view log visa logg destination: destination: source: källa: hide source dölj källa Close this window Stäng detta fönster Close Stäng Please select a snapshot from the list Information message Vänligen välj en ögonblicksbild från listan This directory does not exist Denna katalog existerar inte This directory does not exist Information message Denna katalog existerar inte I do not have sufficient permissions to read this directory Information message Jag har inte tillräckliga privilegier för att läsa denna katalog sync dir A full phrase: sync dir a: <DIRECTORY_A> synkroniseringskatalog A sync dir B full phrase: sync dir a: <DIRECTORY_b> synkroniseringskatalog B View the logfile of the selected sync task 'view log' pushbutton tooltip Visa loggfilen för den markerade synkroniseringsaktiviteten Please wait until the thread is terminated Vänligen vänta tills tråden har avslutats STOP STOPP Stop calculations NOW Stoppa beräkningarna NU Calculations terminated by user Beräkningarna avbrutna av användaren not available refers to a date-time inte tillgänglig luckyBackup - manage backup luckyBackup - hantera säkerhetskopiering Delete the selected snapshot and its logfile Radera den valda ögonblicksbilderna och dess loggfil Restore the selected snapshot Återställ den valda ögonblicksbilden View the logfile of the selected snapshot Visa loggfilen för den markerade ögonblicksbilden Calculate the differences between the source and the selected snapshot Beräkna skillnader mellan källan och den valda ögonblicksbilden Calculate differences Beräkna skillnaderna manageWizard not available refers to a date-time är ej tillgänglig Delete backup this is the title of a wizard Radera säkerhetskopia Date & time simple label of the wizard gui Datum och tid Path ...is a directory path Sökväg WARNING VARNING You are about to delete backup data information message - line1 Du är på väg att radera data från säkerhetskopian If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Om informationen ovan är korrekt, klicka <b>start</b> för att starta Restore backup this is the title of a wizard Återställ säkerhetskopian Backup path ...is the backup directory path Sökväg för säkerhetskopian close stäng Deleting snapshot logfile info message displayed during ...logfile deletion Radera loggfilen för ögonblicksbilden Updating list of snapshots info message displayed during ...snaps list update Uppdaterar list över ögonblicksbilder Aborted Avbruten Finished Avslutad simulation simulering no errors inga fel errors found fel hittade Restoring data: main trunk info message displayed during ...data restoration Återställer data: huvuddelen Restoring data: snapshot files info message displayed during ...data restoration Återställer data: filer från ögonblicksbild Deleting data info message displayed during ...data deletion Raderar data luckyBackup - manage backup luckyBackup - hantera säkerhetskopiering Jump to previous error Hoppa till förra felet previous error förra felet Jump to next error Hoppa till nästa fel next error nästa fel This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Detta kommer att utföra en <b>simulering</b> som inte kommer att göra några ändringar (och som producerar nästan samma utskrifter som en riktig körning) start starta ABORT AVBRYT cancel återgå The restore directory will become identical to the backup snapshot Återställningskatalogen kommer att bli identisk som ögonblicksbilden Existing backup files will replace the corresponding files at the restore directory information message - line1. Filer från den existerande säkerhetskopian kommer att ersätta motsvarande filer i återställningskatalogen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Om informationen ovan är korrekt, klicka <b>start</b> för att starta success info message displayed after ...logfile deletion lyckat failed info message displayed after ...logfile deletion misslyckat Deleting file that lists snapshot changes info message displayed during ...file deletion Tar bort filer listade som skillnader hos ögonblicksbilden success info message displayed after ...file deletion lyckat failed info message displayed after ...file deletion misslyckat success info message displayed after ...snapshots list update lyckat Select new restore directory directory selection dialog title Välj en ny återställningskatalog Restore path ...is the restore directory path Sökväg för återställning No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Ingen specifik data från ögonblicksbilden existerar. Hoppar över... Check this, to clone the backup snapshot to the restore directory. Kryssa i för att klona ögonblicksbilden till återställningskatalogen. Delete existing data that do not exist at the backup Radera existerande data som inte finns i säkerhetskopian Browse locally for a new restore path Bläddra lokalt för en ny återställningssökväg change ändra <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple enkelt advanced avancerat Task name Aktivitetsnamn Destination Destination Source Källa Task properties Aktivitetsegenskaper Enter a name for this task (eg "Backup my home directory") Ange ett namn för denna aktivitet (t. ex. "Säkerhetskopiera min hemmakatalog") Name : Namn: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definiera typen för denna aktivitet: 1. Säkerhetskopiera innehållet i Källa till Destination 2. Säkerhetskopiera Källkatalogen med avseende på namn till Destination 3. Synkronisera Källa och Destination, behåll de senaste filerna i båda Type : Typ: Synchronize Source and Destination Synkronisera källa och destination Enter the full path of the source directory (eg /home/luckyb/) Ange hela sökvägen för källkatalogen (t. ex. /home/luckyb/) Source : Källa: browse localy bläddra lokalt Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Ange hela sökvägen för destinationskatalogen (t. ex. /media/backups/SiduxHome/) Destination : Destination: eg -C4c arcfour,blowfish-cbc till exempel -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Med detta alternativ kommer rsync att överföra numeriska grupp- och användar-ID:n framför användar- och gruppnamn och mappar dem på båda sidorna (--numeric-ids) Use numeric group and user IDs Använd numeriska grupp- och användar-ID:n This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Detta säger till mottagarsidan att försöka sig på superanvändaraktiviteter även om den mottagande rsync inte körs som superanvändare. Dessa aktiviteter innehåller: bevara användare via alternativer --owner bevara all grupper (inte bara den nuvarande användarens grupper) via alternativet --groups och kopiera devices via alternativet --devices. (--super) Attempt super-user activities Försök med superanvändareaktiviteter Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Försöka att säkerhetskopiera öppna filer i Windowssystem genom att använda vss (fungerer endast för Windows 2000 och senare) (-vss) Backup open files Säkerhetskopiera öppna filer Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Återställ säkerhetskopierade Windowsrättigheter lokaliserade i nt-strömmar (--restore-nt-streams) Repeat any command that fails, x times Repetera valfritt kommando som misslyckas, x gånger Repeat on fail: Repetera vid fel: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Kryssa i denna för att klona källa till destination Lämna okryssad för att skapa en extra katalog inuti destinationen Do NOT create extra directory Skapa INTE en extra katalog Advanced Avancerat Shows the rsync command as it will be executed Visar rsync-kommandon så som de kommer att bli utförda validate validera Okay OK Cancel Avbryt Exclude Exkludera Add any directory, file or pattern to be excluded from this task Lägg till valfri katalog, fil eller mönster som ska exkluderas i denna aktivitet Templates Mallar Exclude all temp folders (**/*tmp*/) Exkludera alla temporära mappar (**/*tmp*/) Temporary folders Temporära mappar Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Exkludera systemmonterade mappar :/mnt och /media (/mnt/*/**, /media/*/**) System mount folders Systemmonterade mappar Exclude all backup files & folders (**~) Exkludera alla säkerhetskopior av filer och mappar (**~) Backup files Säkerhetskopior System folders Systemmappar Exclude all cache folders (**/*cache*/ & **/*Cache*/) Exkludera alla cache-mappar (**/*cache*/ & **/*Cache*/) Cache folders Cache-mappar Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Exkludera alla användares alla skräpfiler (**/*Trash*/, **/*trash*/) Trash Skräpfiler Exclude all "lost+found" folders (**/lost+found*/) Exkludera alla "lost+found"-mappar (**/lost+found*/) lost+found lost+found User Defined Användardefinierat Add exclusion as entered in the next field Lägg till det som anges i nästa fält som uteslutning add lägg till Exclude list Exkluderalista Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Ange här filer, mappar eller mönster och tryck sedan på "lägg till"-knappen för att lägga till den till exkluderingslistan * - matchar alla icke-tomma komponenter (det stoppar vid snedstreck) ** - matchar allting, inklusive snedstreck ? - matchar alla tecken förutom snedstreck efterföljande katalognamn/*** - matchar både katalogen och allting inuti den inledning med / - mönstret är förankrat till en specifik plats i hierarkin vid överföringen (detta är normalt "källan") efterföljande / - endast katalogen matchas, inte filer, mjuka länkar eller devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definiera aktivitetens typ: 1. Säkerhetskopiera källkatalogen, inuti destinationskatalogen (se även "Skapa INTE en extra katalog" rutan) 2. Synkronisera källa & destination, behåll de senaste filerna på både ställena Backup Source inside Destination Säkerhetskopiera källan i destinationen Description Beskrivning Task description Aktivitetsbeskrivning Type a description of the task Ange en beskrivning av aktiviteten Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exkludera systemmappar /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Exkludera alla användares gvfs-kataloger (**/.gvfs) launch the pattern editor Öppna mönsterredigeraren Remove highlighted exclusion from list Radera markerad uteslutning från listan remove radera Edit highlighted inclusion Redigera markerad inkludering edit redigera Move highlighted inclusion up Flytta upp markerad inkludering move up flytta upp Move highlighted inclusion down Flytta ner markerad inkludering move down flytta ner Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Inkludera ENDAST denna lista med mönster. Ingenting annat. Vänligen referera till manualen för bättre förståelse av reglerna för inkludering Detta kommer att avaktivera exkluderingsfunktionen. Only Include Inkludera endast Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Ange här filer, mappar eller mönster och tryck sedan på "lägg till"-knappen för att lägga till den till inkluderingslistan * - matchar alla icke-tomma komponenter (det stoppar vid snedstreck) ** - matchar allting, inklusive snedstreck ? - matchar alla tecken förutom snedstreck efterföljande katalognamn/*** - matchar både katalogen och allting inuti den inledning med / - mönstret är förankrat till en specifik plats i hierarkin vid överföringen (detta är normalt "källan") efterföljande / - endast katalogen matchas, inte filer, mjuka länkar eller devices Add inclusion as entered in the next field Lägg till det som anges i nästa fält som en inkludering Include list Inkluderingslista Remove highlighted inclusion from list Radera markerad inkludering från listan Remote Fjärranslutning Use a remote host either for source or destination Använd fjärrvärd antingen som källa eller destination Use remote host Använd fjärrvärd Use a remote host for destination data. Använd en fjärrvärd för destinationsdata. destination Destination Use a remote host for source data. Använd en fjärrvärd för källdata. source Källa User: Användare: Enter your username for the remote host (leave blank if not applicable). Ange ditt användarnamn för fjärrvärden (lämna blankt ifall användarnamn saknas). @Host: @Värd: Enter the name of the remote host. Ange namnet för fjärrvärden. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Ange hela sökvägen till filen som innehåller autentisieringslösenord för rsync (ej ssh) (lämna blankt ifall lösenord saknas). rsync password file: Lösenordsfil för rsync: Check this to connect to an rsync Remote module Kryssa i för att ansluta till en rsync Fjärrmodul Remote module Fjärrmodul Use ssh as transport shell Använd ssh som transportskal ssh ssh password: lösenord: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Ange hela sökvägen till filen som innehåller den privata autentisieringsnyckeln (lämna blankt ifall nyckel saknas). Observera att du behöver att uppfylla alla krav för en lösenordsfri fjärranslutning via ssh med ett OpenSSH-nyckelpar private key file : privat nyckelpar : Enter the port you would like to use for the ssh connection (leave blank for default port) Ange portnumret som du vill använda för ssh-anslutningen (lämna blankt för standardporten) port : port : Command Options Kommandoalternativ Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Lägg till eller radera rsync-alternativ. Om du inte förstår innebörden av dessa så låt dem vara orörda !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Radera filer vid destinationen som inte existerar i källan. "Recursivt i katalogerna" har blivit valt (--delete-after och --delete-excluded om "Exkludera" är ikryssad) Copy device (super user only) & special files as they are (-D) Kopiera device- (endast administratör) och specialfiler som de är (-D) Preserve device, special files Bevara device- och specialfiler Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Filer som är hårt länkade tillsammans i källan kommer att bli hårt länkade i destinationen VARNING: Alla filer måste inkluderas i överföringslistan !! (-H) Preserve hard links Bevara hårda länkar Delete files on the destination Radera filer vid destinationen Recurse into directories (-r) Rekursivt genom katalogerna (-r) Recurse into directories Rekursivt genom katalogerna Do not backup source files that are newer on the destination (--update) Säkerhetskopiera inte källfiler ifall det finns nyare i destinationen (--update) Skip newer destination files Hoppa över nyare destinationsfiler Preserve the owner (super user only), group & time stamp of files (-tgo) Bevara ägare (endast administratör), grupp och tidsstämpling hos filerna (-tgo) Preserve ownership, times Bevara ägare, tider Preserve permissions of files (-p) Bevara filrättigheter (-p) Preserve permissions Bevara filrättigheter Copy symlinks as symlinks (-l) Kopiera mjuka länkar som mjuka länkar (-l) Preserve symlinks Bevara mjuka länkar Ignore files using a similar algorithm to CVS (-C) Ignorera filer som använder algoritmer liknande CVS (-C) Ignore files the CVS way Ignorera CVS-filer User defined Användardefinierat Enter here an rsync option to add (eg "--delete-excluded", "-X") Ange ett rsync-alternativ här (t. ex. "--delete-excluded", "-X") Extra rsync options list Lista över extra rsync-alternativ Remove highlighted option from list Radera markerat alternativ från listan Add rsync option as entered in the next field Lägg till rsync-alternativ som angetts i textfältet bredvid options list Alternativlista Also Execute Kör också Execute extra commands, before or after the task. Kör extrakommandon, före eller efter aktiviteten. Before Före Enter here a command to be executed before the task and then press the "add" button to add it to the list below Ange ett kommando som ska köras före aktiviteten och tryck sedan på "lägg till"-knappen för att lägg till i listan nedan Add command as entered in the field beside Lägg till kommandot som angetts i textfältet bredvid Command list Kommandolista Remove highlighted command from list Radera markerat kommando från listan Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Kör aktiviteten även om den genererar ett VARNINGSMEDDELANDE Används normallt då "Kör före"-kommandon kan klara av en varning (t. ex.att montera partitioner) OBSERVERA: Använd endast om du vet vad du håller på med by-pass WARNING ignorera VARNINGAR After Efter Enter here a command to be executed after the task and then press the "add" button to add it to the list below Ange ett kommando som ska köras efter aktiviteten och tryck sedan på "lägg till"-knappen för att lägg till i listan nedan Select source directory file selection dialog title Välj källkatalog Select destination directory file selection dialog title Välj destinationskatalog Select rsync password file file selection dialog title Välj lösenordsfil för rsync Select ssh keyfile file selection dialog title Välj nyckelfil för ssh Select command to be executed file selection dialog title Välj kommandon som ska köras Select file to read include patterns file selection dialog title Välj fil att läsa inkluderingsmönster Select file to read exclude patterns file selection dialog title Välj fil att läsa uteslutningsmönster Please define the source before launching the pattern editor message box, message Vänligen definiera källan innan du startar mönsterredigeraren ERROR message box message FEL Please specify the following before proceeding: message box, message Vänligen specificera följande innan du fortsätter: ERROR message box message - line1 FEL That is not allowed because '/' does not have an actual name message box message - line2 Det är inte tillåtet eftersom '/' inte har ett riktigt namn Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Lämna rutan ikryssad, för att <b>STOPPA</b> körningen av en aktivitet om kommandot avslutas med ett fel use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated använd rutorna för att <b>STOPPA</b> körningen vid ett fel You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Du har angett '/'-(root)katalogen som källa och har INTE kryssat i 'Skapa INTE en extra katalog'-rutan Please check the relevant box before proceeding message box message - line3 Vänligen kryssa i relevant ruta innan du fortsätter You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Du har angett root-katalogen av en hel partition som källa och har INTE kryssat i 'Skapa INTE en extra katalog'-rutan That is not allowed because the root partition does not have an actual name message box message - line2 Det är inte tillåtet eftersom root-katalogen inte har ett riktigt namn The name of the task you requested already exists message box message - line1 Namnet på aktiviteten som du angett finns redan Please specify a different name before proceeding message box message - line2 Vänligen ange ett annat namn innan du fortsätter The source you have declared is identical to the destination message box message - line1 Källan som du angett är identisk med destinationen Please modify at least one of them message box message - line2 Vänligen ändra någon av dem WARNING message box message - line1 VARNING You have declared a destination that is part of the source directory structure message box message - line1 Du har angivit en destination som är en del av källkatalogens struktur <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Glöm inte</b> att definiera en katalog vid 'exkluderagruppboxen' som kommer att innehålla källan You have checked the 'delete files on the destination' option message box message - line2 Du har kryssat i 'Radera filer vid destinationen'-alternativet without having checked 'Recurse into directories' which is required message box message - line3 utan att har kryssat i 'Rekursivt genom katalogerna' vilket krävs 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Fjärrvärd' är ikryssad, men inget värdnamn är angivet Please specify a remote host name message box message - line3 Vänligen ange ett namn till fjärrvärden Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Annars avmarkera 'Fjärrvärd" för att köra lokalt All declared fields of the task properties window seem to be ok message box message first line Alla fälten i fönstret för aktivitetsalternativen verkar vara OK Errors have been found message box message first line Fel har hittats command to be executed full phrase: command to be executed: <COMMAND> kommando som kommer att utföras You have already added this exclude item message box message Du har redan lagt till denna punkt som en uteslutning You have already added this include item message box message Du har redan lagt till denna punkt som en inkludering You have already added this option message box message Du har redan lagt till detta alternativ done klart done editing Editering klar cancel avbryt cancel editing avbryt editering Read exclude patterns from file Läs uteslutningsmönster från fil Read file: Läs fil: filename filnamn browse bläddra ... ... Include Inkludera Add any directory, file or pattern to be included by this task Lägg till valfri katalog, fil eller mönster som ska inkluderas i denna aktivitet Include mode Inkluderingsläge Mode: Läge: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Exkludera inte denna mönsterlista. Vänligen läs manualen för bättre förståelse av inkluderingsreglerna. Normal Include Inkludera normalt Read include patterns from file Läs inkluderingsmönster från fil browse locally bläddra lokalt additional options: ytterliggare alternativ: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Kontrollera att du använder en FAT/NTFS-partition som destination. Ägandeskap av filerna och filrättigheterna kommer INTE att bevaras. (-t --modify-window=1) Destination is FAT/NTFS Destinationen är av FAT-NTFS-typ Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Försöka att säkerhetskopiera öppna filer i Windowssystem genom att använda vss (fungerer endast för Windows 2000 och senare) (-vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Återställ rättigheter Set the total number of backup snapshots to keep Ange det totala antalet ögonblicksbilder som ska sparas Snapshots to keep: Ögonblicksbilder att spara: patternEditor directory : katalog : Select file Välj fil Please choose a file within the source Vänligen välj en fil från källan Select directory Välj katalog Please choose a directory within the source Vänligen välj en katalog från källan file : fil : pattern editor Mönsterredigerare Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Kryssa i för att använda katalogen ovan som en absolut sökväg om den ej är ikryssad så kommer mönstret att matcha alla filer och kataloger som uppfyller kriteriet "namn" Define here, what would you like the pattern to refer to Definiera här det som du vill att mönstret ska referera till The pattern refers to a: Mönstret refererar till: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Använd detta ifall mönstret refererar till en specifik fil t. ex. "/media/music/album/song.mp3" Specific file Specifik fil Use this if the pattern refers to a specific directory eg "/media/music/Album/" Använd detta ifall mönstret refererar till en specifik katalog t. ex. "/media/music/album/" Specific directory Specifik katalog Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Använd detta ifall mönstret refererar till en mängd filer som har någonting gemensamt t. ex. alla filer har en ".txt"-filändelse Set of files Mängd filer Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Använd detta ifall mönstret refererar till en mängd kataloger som har någonting gemensamt t. ex. alla kataloger har namnet "temp" Set of directories Mängd kataloger name namn starts with : börjar med : Enter here the starting characters of the name of the files/directories that the pattern refers to Ange här de inledande tecken i namnet på filerna/katalogerna som mönstret refererar till ends with : slutar med : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Ange här de avslutande tecken i namnet på filerna/katalogerna som mönstret refererar till t. ex. för att referera till all ".txt"-filer, ange .txt Enter here the name of the files/directories that the pattern refers to Ange här namnet på filerna/katalogerna som mönstret refererar till is exactly : exakt : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Ange här de tecken som finns någonstans i namnet på filerna/katalogerna som mönstret refererar till contains : innehåller : browse localy for a file bläddra lokalt efter en fil browse localy for a directory path bläddra lokalt efter en katalog use absolute path Använd absolut sökväg Go deeper in path by : Gå djupare ner i sökvägen med : Go deeper in path by any level Gå djupare ner i sökvägen med alla nivåer any alla Define here the name criteria for the files/directories to be matched Definiera här namnkriteriet för filerna/katalogerna som ska matchas final pattern slutligt mönster The actual pattern is displayed here Det slutgiltiga mönstret visas här Reset the pattern editor fields to the default values Återställ fältet i mönsterredigeraren till standardvärdena reset Återställ Okay OK Cancel Avbryt Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Använd denna för att referera till djupare underkataloger t.ex. Katalogen "/media/music" innehåller 3 underkataloge. 1. Rock 2. Jazz 3. Ljudspår och du vill referera till innehållet av alla dessa 3, definiere följande * Mängden av kataloger * Kataloginnehåll * sökväg /media/music/ * Gå djupare ner i sökvägen med "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Använd detta ifall mönstret refererar till innehållet i en katalog (eller en mängd kataloger), inte katalogen själv t. ex. innehållet i katalogen "/media/music/Album/" Directory contents Kataloginnehåll scheduleDialog Starting from scratch Börjar om från början No schedules are declared !! Inga schemaaktiviteter är angivna !! Unable to create schedule file Kan inte skapa schemafil You have reached the maximum limit of supported scheduled profiles Du har nått den övre gränsen för antalet schemaprofiler som stödjs You have to remove an item if you wish to add another Du måste radera en profil ifall du vill lägga till ytterligare en Add profile schedule Lägg till schemaprofil Modify profile schedule Redigera schemaprofil Profile schedule details Profilschemadetaljer Invalid profile Ogiltig profil Execute profile Kör profilen hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> varje timme vid minut at vid every varje day dag Sunday Söndag Monday Måndag Tuesday Tisdag Wednesday Onsdag Thursday Torsdag Friday Fredag Saturday Lördag & on the och den st as in 1st day :e nd as in 2nd day :e rd as in 3rd day :e th as in 4th, 5th, 6th or 7th day :e th as in 8th day :e th as in 9th day :e th as in 10th day :e th as in 11th day :e th as in 12th....19th day :e th as in 20th day :e st as in 21st day :e nd as in 22nd day :e rd as in 23rd day :e th as in 24th...30th day :e st as in 31st day :e of any month varje månad of i January full phrase: 'of January' Januari February full phrase: 'of February' Februari March full phrase: 'of March' Mars April full phrase: 'of April' April May full phrase: 'of May' Maj June full phrase: 'of June' Juni July full phrase: 'of July' Juli August full phrase: 'of August' Augusti September full phrase: 'of September' September October full phrase: 'of October' Oktober November full phrase: 'of November' November December full phrase: 'of December' December Unable to create cron file Kan inte skapa cron-fil luckyBackup - schedule luckyBackup - schema <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profilkörningsschema</span></p></body></html> Add a new profile schedule Lägg till ett nytt profilschema add lägg till Modify selected profile schedule Redigera det valda profilschemat modify redigera Remove selected profile schedule Radera det valda profilschemat remove radera Profile : Profil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Hoppa över aktiviteter som visar ett KRITISKT varningsmeddelande efter kollen av katalogerna skip critical hoppa över kritisk time (hour:min) : tid (timme:minut) : set this value to -1 for the schedule to occur every hour sätt detta värde till -1 för att köra schemaläggningen varje timme : : :delay :fördröjning Delay luckybackup execution at startup Fördröj körningen av luckybackup vi uppstart min means: minutes (time) min day of week : veckodag : Any Alla month : månad : January Januari February Februari March Mars April April May Maj June Juni July Juli August Augusti September September October Oktober November November December December day of month : dag i månad : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Kryssa i ifall din maskin inte har något grafiskt gränssnitt (t. ex server) Console Mode Konsolläge okay OK Cancel Avbryt schedule the execution of profiles as declared in the list above Schemalägg körningen av profilen enligt listan ovan cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Den existerande schemafilen är inte en giltig luckyBackup v. file BEWARE of the whitespace before file -fil You have made changes without clicking the cronIT button Du har gjort ändringar utan att klicka på cronIT-knappen Are you sure you want to close the schedule dialog ? Är du säker på att du vill stänga schemadialogen ? Your crontab is updated successfully Din crontab har uppdaterats utan fel no crontab entries exist inga crontab-poster existerar crontab content crontab-innehåll once, at system startup full phrase: Execute profile xxxxx, once at system startup en gång, vid uppstart av systemet Run once, at startup Kör en gång, vid uppstart @ reboot vid omstart close this dialog stäng denna dialog close stäng Display the current crontab Visa aktuell crontab view current crontab Visa aktuell crontab textDialog Enter the name of the new profile : Ange namnet på den nya profilen : Enter the new name of the profile : Ange det nya namnet på profilen : Profile description : Profilbeskrivning : A profile with the same name already exists En profil med samma namn existerar redan Please enter a different name Vänligen ange ett annat namn Enter password : Ange lösenord : Enter passphrase : Ange lösenordsfras : Do not show this again for this task Visa inte detta igen för denna aktivitet You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Du har valt att "Säkerhetskopiera innehållet i källkatalogen"<br>tillsammans med alternativet "Radera filer vid destinationen" BEWARE, if your intention is NOT to clone source to destination !! AKTA DIG, ifall din avsikt INTE är att klona källan till destinationen !! Are you sure you wish to proceed ?? Är du säker på att du vill fortsätta ?? luckyBackup luckyBackup Okay OK Cancel Avbryt Copy command to clipboard Kopiera kommandot till klippbordet eMail information E-postinformation No Nej Yes Ja winDialog luckyBackup luckyBackup declaration of paths Angivelse av sökvägar rsync: rsync: Enter the full path of the rsync command Ange den fullständiga sökvägen för rsync-kommandot browse locally bläddra lokalt Use default value Använd standardvärde ssh: ssh: Enter the full path of the ssh command Ange den fullständiga sökvägen för ssh-kommandot cygpath: cygpath: Enter the full path of the cygpath command Ange den fullständiga sökvägen för cygpath-kommandot dosdev: dosdev: Enter the full path of the dosdev command Ange den fullständiga sökvägen för dosdev-kommandot main dir: huvudkatalog: Enter the full path of the luckybackup directory Ange den fullständiga sökvägen till katalogen för luckybackup vshadow dir: vshadow-katalog: Enter the full path of the vshadow directory Ange den fullständiga sökvägen för vshadow-katalogen temp dir: temporär katalog: Enter the full path of the temporary directory Ange den fullständiga sökvägen för den temporära katalogen Okay OK Cancel Avbryt Select rsync command file selection dialog title Välj rsync-kommando Executable Files (*.exe) Körbara filer (*.exe) Select ssh command file selection dialog title Välj ssh-kommando Select cygpath command file selection dialog title Välj cygpath-kommando Select dosdev command file selection dialog title Välj dosdev-kommando luckybackup-0.5.0/translations/luckybackup_ro.qm0000666000175000017500000044752713157502317021525 0ustar luckybluckybKTHYKpSY/]_#-ggÿghYSjWszˎfff^vS.UUE6Ō9E45!N~I&aaaaa".a*h8G@!oESص+ -H5a '6.^D1wT"fƋ" &%l({Y`)*`3*0+++,B /]^@:Brĉ\˱ESI(ى>K4q%X=En#vqGr# :~  d֑gp9!bB(e'+&{c.+6F<74<$G}I|OW.Q19QhR[_/nfC1hhwpNpNq>.tcz!g`-+Dn5YEو65ܻѐSniAu ԳДŵ  ,' _jeb_K  #u]&o$)+p/r2y8IBZyC cSIN PoEGYBBZH)q\c-cf:^uN|BLeOV2xRe~WZIRHg͏,V%A6+3CYEN!kL*P],n÷IBYԥ{*@V.[%&E0SH"S!GҐ O=NoK^o u Avb0&^Va4)4);*߬B,bi8My:MT_rUbe^h !XiJiUCtMD}^7.e .e3{KTWDc$?C%{t$d MJ Ň> ʵv8= 0 C[ܯ"<)>b~[~oϗ]uΰ F ‰ E>glysƴ P<sQ&.A DȪL~[OTOjzEeJdiYzi^Olw;r t5G}7;:aօO+LIIOI͢III%b0h,St*^A#Kфӊ '.32HeFq GGiUd iu*  FG8M7=N\x l@+;m6>?n&xn&p^!txv_,y{~ioFO9wr'ȕ4ȕ ȕsX4J g:tî"AfpXR:ߘ?ZW*(dv d ] "Cr" _ .;KO`C8KOVf_Avg+_hDb#1f0g6hnhniikՒkՒ@sD"cv3y|~gb`vb$7(Ts4jY$uEjRcPI>IŨnĄ`(>VJ#Sy|S?Ȓ,@=':Z@Z  &|uV `N읒[\Xh)` V7 X(\ |=5BH^ȼ;++e-zO,2 9YX>$E E+N3uUtӜYv`xea#xvu`v:{ 6_gIi3xڄC<DFFʘF ϕi?FΕUU&uS-rdAj..g9G%*Blȕ]1waN/XT%UU\UDnp~Eǧ9~f̐/jIIO%׃+vߖlJk lBYZ ;33o2% n;tB")F)@,#(-$e/ȅ1n9G?F\IX9JJεnL6iNjPO4Ry V)g Vh M0mzG@x5Z2B*."j(Qʴ5ʶ!'^,7BfkYi) N  c - q.  9 #rz *{ +)N 6Rl 8 CcK& Mgo Mg^E N# U ] W ] aY=~ d j^w l lRcE mEM pJ q` R| ] @ e | ͆6 4J aI -B> Z' '0 Ԡ;Y m ׊$ =00 . ( Ѿo f Tx / O c2= 6  E # -08t -n /l$ 7E 8٘ ?+ @  ` fG g j&8 l&D pN%ʉ zj C / > H L i[ ~ c` XBg  24" bI ,f r  V GCq ñ n& B> Xh.] h t$4 ԑ @ ݓ T iW 7! pyL "{ 0 v-  Vd d j8  Sdž #L (N7r +| -< 0b 7'yg 93Bm :UC# ; E Ge' HZ L9 M PAg T,p T& Zt _yx= _ fm g.w" g.w g.w= i i-o k > m { { { ѫ ݣ F Ҟ "< E   Yo YI >ӊ @e< A. Acsg Eh0H F F. LM N0_ P}. SzL X ^K bU o. o92 r'^ v H.  tA j9 e 2] r \% Ip "ۗ UNQ | w ~,6 !} T1 *D s[ n : %  2s a Rbc :, ?BY=  ;t  spb @ Ta # &,ѹ &' )T *}E +A ,D%L ,D@' 6>n P \.~6 cB i m_p { eu 1 `  {܌ A| i2D ms c l* Xw +o f zsi lz  Iw  j"] lj Y i [ " ,̽ ݗ # 䕜A $ c2 +|  Z 8 8%" 8- 8 6O=/Ks\3?C`#Ե'~(q*#>/#YE7VGJQTba1K\P u].a 0cR{e~|mRrp{>W0yi,{Er]JT+YM<aA{RFN@F$rP-uZ֭ 3NM̖(k{d 44U"'e\ ChR#!7&)Nqi(դ-(դ-X`4?I<EzE^G E=(I%N_RN>[=P^i^cuf/lnQ~sWsu@u@@~(NYkՔ!Pkk4"fCt41)*_qڌy}K:v'iɟ) ʱNu"Y+\uP_l֙SGGߖ l@G]n??,0._YPbŕi/2Se calculeaz difereneleCalculating differencesCalcDiffThreadxVolumul de date este uria. Se afieaz doar primele intrri2Data amount is huge. Displaying only first entriesCalcDiffThreadAteptai Please waitCalcDiffThread,Se scaneaz destinaiaScanning destinationCalcDiffThread@Se scaneaz versiunea de rezervScanning snapshotCalcDiffThread"Se scaneaz sursaScanning sourceCalcDiffThreadVVersiunea de rezerv i sursa sunt diferiteSnapshot and source differencesCalcDiffThreadDatele versiunii de rezerv care deja exist la surs i sunt diferite=Snapshot data that also exists at the source and is differentCalcDiffThreadfDatele versiunii de rezerv care NU exist la surs-Snapshot data that do NOT exist at the sourceCalcDiffThreadhDatele sursei care NU exist la versiunea de rezerv-Source data that do NOT exist at the snapshotCalcDiffThread\Sincronizeaz diferenele directoarelor A i BSync dir A & B differencesCalcDiffThreadSincronizeaz datele din directorul A care NU exist la sincronizarea directorului B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSincronizeaz datele din directorul B care exist la sincronizarea directorului A i sunt diferite?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSincronizeaz datele directorului B care NU exist la sincronizarea directorului A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadDatele versiunii de rezerv vor nlocui datele sursei n timpul RESTAURRII=The snapshot data will replace the source data during RESTORECalcDiffThreadAcestea vor fi terse n timpul operaiei de RESTAURARE doar dac bifai opiunea:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadlterge datele surs existente care nu exist n backup;delete existing source data that do not exist at the backupCalcDiffThreadxSe arhiveaz profilul, fiierele jurnal i rezumatul datelor.Backing-up profile, logfiles and snapshot dataQObject CRITICCRITICALQObject^Rulai din nou comanda datorit unor defeciuniCommand re-run due to failureQObjectHNu se poate deschide fiierul jurnalCould not open the logfileQObjectDestinaie DestinationQObject&Director destinaieDestination directoryQObjectDirector DirectoryQObjectNu exist permisiunea de a citi/intra sincronizarea directorului A;I do not have the permission to read/enter sync directory AQObjectNu exist permisiunea de a citi/intra sincronizarea directorului B;I do not have the permission to read/enter sync directory BQObject|Nu exist permisiunea de a citi/intra n directorul destinaieDI do not have the permission to read/enter the destination directoryQObjectrNu exist permisiunea de a citi/intra n directorul surs?I do not have the permission to read/enter the source directoryQObjectNu <font color=orange><b>voi omite</b></font> aceast sarcin. Sincronizarea va fi efectuat oricumiI will not skip this task. Synchronizing is going to be performed anywayQObjectVoi <font culoare=rou><b>NU OMITE</b></font> aceast sarcin fiindc avei activat opiunea "by-pass WARNING"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject.Timpul ultimei execuiiLast execution timeQObjectOKOKQObjectV rugm <b>debifai csuele incluse corespunztoare</b> nainte de a ncepeAPlease uncheck appropriate include boxes before proceedingQObjectDebifai csuele adecvate incluse sau schimbai toate tipurile sarcinii la altele dect '<b>Copie rezerv coninut director</b>' sau utilizai 'Copie rezerv coninut director' mpreun cu opiunea '<b>Include numai</b>' , nainte s ncepeiPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject SursSourceQObjectDirector sursSource directoryQObject0Sincronizeaz directorulSync directoryQObject Se sincronizeazSyncingQObject Se sincronizeaz'Full phrase: Syncing to SyncingQObject&Descrierea sarciniiTask descriptionQObjectDirectorul destinaie va fi creat dac nu exist i va fi umplut cu noile date a copiei de siguran]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject~Urmtoarele sarcini incluse <b>partajeaz acelai director destinaie</b> (toate mpreun sau la grupuri) i cel puin una dintre ele va face o copie de siguran a coninutului unui directorThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectBFiierul jurnal nu poate fi creat The logfile could not be createdQObject2Fiierul jurnal nu existThe logfile does not existQObject8Procesul a raportat o eroareThe process reported an errorQObject\Comanda specificat probabil nu este instalat/The specified command is probably not installedQObject6Lista de sarcini este goalThe task list is emptyQObjecthAceast sarcin nu <font color=orange><b>va fi omis3This task will not be skippedQObjectrAceast sarcin va fi <font color=red><b>omis</b></font>7This task will be skippedQObjectZUtiliznd la distan, verificarea este omisUsing remote, check is skippedQObjectATENIEWARNINGQObjectHAi inclus ambele sarcini conectate:8You have included both of the following connected tasks:QObject8Nu ai inclus nici o sarcinYou have not included any tasksQObject i/sauand/orQObjectcomand:  command: QObjectnu existdoes not existQObject(au fost gsite erori errors foundQObject<executarea prii 1 a sarciniiexecution of 1st part of taskQObject<executarea prii 1 a sarcinii?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject<executarea prii 2 a sarciniiexecution of 2nd part of taskQObject&executarea sarciniiexecution of taskQObject&executarea sarcinii3Full phrase: execution of task: finishedexecution of taskQObject&executarea sarciniidFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectcod ieire:  exit code: QObjectfinalizatfinishedQObjectfinalizat?Full phrase: execution of 1st part of task: finishedfinishedQObjectfinalizat3Full phrase: execution of task: finishedfinishedQObjectfinalizatCFull phrase: post-task execution of COMMAND: finishedfinishedQObjects-a terminat datorit unei erori de execuie a comenzii pre/post sarcin9finished because of pre/post task command execution errorQObjectgratuitfreeQObjecteste golis emptyQObject,este gol sau nu existis empty or does not existQObjectnu este montatis not mountedQObjectnici o eroare no errorsQObjectindisponibil not availableQObjectnimic de pornitnothing to startQObjectieire:  output: QObjectDpost-sarcina executrii de comenzipost-task execution of commandQObject@post-sarcina executrii comenziiCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectBpre-sarcina executrii de comenzipre-task execution of commandQObject>pre-sarcina executrii comenziiBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectpornirestartingQObjectpornire?Full phrase: execution of 1st part of task: startingstartingQObjectpornire?Full phrase: execution of 2nd part of task: startingstartingQObjectpornire3Full phrase: execution of task: startingstartingQObjectpornire?Full phrase: post-task execution of command: startingstartingQObject starestatusQObject\acest lucru nu este permis din motive evidente'this is not allowed for obvious reasonsQObjectacest lucru va conduce la anularea unei sarcini de ctre celalalt.this will lead to one task canceling the otherQObjectlatoQObjectla'Full phrase: Syncing to toQObjectHNu se poate deschide fiierul jurnalCould not open the logfile ReadLogFile&Despre&About aboutDialog(Acord de &Liceniere&License Agreement aboutDialog&Suport&Support aboutDialog"&Mulumiri pentru &Thanks to aboutDialog... jumtii mele, <b>Dimitra</b> care m-a susinut n tot acest timp ct proiectul a fost n dezvoltarej...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog6...tuturor utilizatorilor a...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialogA&jutorA&uthor aboutDialog(Angelesci ConstantinAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog\Traductor n limba arab a interfeei graficeArabic gui translator aboutDialogdDezvoltator oficial al pachetului linux Arch (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtena, GreciaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogLAplicaie pentru backup & sincronizareBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogTraductor n limba bosniac a interfeei grafice i ntreintor al pachetului pentru distribuia Mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog`Traductor n limba bulgar a interfeei graficeBulgarian gui translator aboutDialoghTraductor n dialectul catalan a interfeei graficeCatalan gui translator aboutDialogpTraductor n limba chinez(taiwan) a interfeei graficeChinese (Taiwan) gui translator aboutDialogContributor cod surs pentru suport distant & vss privind portarea pe windowsDCode contributor for remote & vss support regarding the windows port aboutDialogPNu se poate localiza fiierul de licen!Could not locate the license file aboutDialogZTraductor n limba ceh a interfeei graficeCzech gui translator aboutDialog2Dezvoltator pachet debianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogbTraductor n limba olandez a interfeei graficeDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogn special Especially aboutDialog^Traductor n limba eston a interfeei graficeEstonian gui translator aboutDialogDezvoltator al pachetului pentru distribuia Fedora (depozit oficial))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog6dezvoltator pachet Free BSDFree BSD package maintainer aboutDialogbTraductor n limba francez a interfeei graficeFrench gui translator aboutDialogTraductor n limba francez a interfeei grafice i consultant apreciat pentru mpachetare (i nu numai)AFrench gui translator and valuable packing advisor (and not only) aboutDialogjTraductor n dialectul galician a interfeei graficeGalician gui translator aboutDialog$Dezvoltator GentooGentoo ebuild maintainer aboutDialog`Traductor n limba german a interfeei graficeGerman gui translator aboutDialog8Dai un vot de apreciere la:Give a thumbs up at: aboutDialogTraductor n limba greac a interfeei grafice i tester apreciat(Greek gui translator and valuable tester aboutDialogNTraductor n limba greac a manualuluiGreek manual translator aboutDialogNiciodat nu am acceptat i nu voi accepta bani pentru acest proiect.DI personally never had and never will accept money for this project. aboutDialogDac nu ar fi fost el i ghidurile lui nu a fi nceput niciodat acest proiectJIf it wasn't him and his tutorials I would never have started this project aboutDialogDac v place aceast aplicaie i ai vrea s-mi donai ceva personal, tot ceea ce trebuie s facei este s:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogEste <b>aplicaie liber</b>: se poate redistribui i/sau modifica respectnd termenii GNU General Public License cum a fost publicat de ctre Free Software Foundation, versiunea 3 a Licenei.It 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, version 3 of the License. aboutDialogDEste distribuit cu sperana c va fi folositoare, dar FR NICI O GARANIE; chiar fr garania implicit a COMERCIALIZRII sau POTRIVIRII CU UN SCOP PARTICULAR.It 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. aboutDialogbTraductor n limba italian a interfeei graficeItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog6Ultimul dar nu cel din urmLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogrdezvoltator pachet Mandriva (depozit oficial contributor)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogAdministrator pachet Mepis (depozit comunitate) & traductor gui n spaniolBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogTotui, am decis s utilizez luckyBackup pentru a susine oameni care ntr-adevr au nevoie de ajutor financiar.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialogfTraductor n limba norvegian a interfeei graficeNorwegian gui translator aboutDialogAdministrator pachet OpenSUSE (depozit comunitatea KDE4) i consilier valoros mpachetriNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialogfTraductor n limba portughez a interfeei graficePortuguese gui translator aboutDialog:Puppy pet & administrator sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog^Traductor n limba romn a interfeei graficeRomanian gui translator aboutDialogTraductor n limba rus a interfeei grafice i tester apreciat*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogVedei fereastra 'Acord de liceniere' pentru mai multe detalii.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog4dezvoltator pachet SlackelSlackel package maintainer aboutDialog`Traductor n limba slovak a interfeei graficeSlovak gui translator aboutDialog`Traductor n limba sloven a interfeei graficeSlovenian gui translator aboutDialogAadar v rog s considerai cu seriozitate donarea de bani care vor fi eventual utilizai pentru o cauz bun._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogbTraductor n limba spaniol a interfeei graficeSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog`Traductor n limba suedez a interfeei graficeSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogEchipa indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog<Aceasta este recompensa mea :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog\Traductor n limba turc a interfeei graficeTurkish gui translator aboutDialog"Consilier valorosValuable advisor aboutDialogLVotai favorabil & devenii un fan la:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialog\dezvoltator al scrptului python backupwhenidle&backupwhenidle python script developer aboutDialoginchideclose aboutDialog&link pentru donaie donation link aboutDialog8dezvoltator pachet ex Fedoraex Fedora package maintainer aboutDialogpentru dezvoltarea minunatei platforme de localizare transifex i distribuirea gratuitVfor developing the wonderful transifex localization platform and providing it for free aboutDialog@forumurilor pentru suportul lor.forums for their support. aboutDialog fri13fri13 aboutDialog(luckyBackup - despreluckyBackup - about aboutDialog luckyBackup se distribuie sub termenii a <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogbanimoney aboutDialogfr banino money aboutDialogpinguinofuriosopinguinofurioso aboutDialog*portare pe MS Windowsport to MS Windows aboutDialog&portare la Mac OS Xport to Mac OS X aboutDialogportare la OS/2 port to OS/2 aboutDialogmpachetare rpm, tester de valoare i consilier conexiuni distanteIntroducei subiectul mesajului Enter the subject of the message emailDialog&Au aprut eroare(i)Error(s) occured emailDialogDac debifai, va fi utilizat "TLS auto". Disponibil doar pentru sendemail=If unchecked "TLS auto" is used. Only available for sendemail emailDialogNiciodatNever emailDialog:Nu trimite niciodat un emailNever send an email emailDialogOkOkay emailDialogdTrimite doar cnd apar eroare(i) n timpul rulrii,Only send when error(s) occured during a run emailDialogdTrimte doar cnd profilul este programat s ruleze*Only send when profile is scheduled to run emailDialog.Profilul este programatProfile is scheduled emailDialogtTrimitei un email acum pentru a testa argumentele oferite6Send an email right now to test the provided arguments emailDialogXSpecificai condiiile de a trimite un email'Specify the conditions to send an email emailDialogTestTest emailDialog0Cmpul comenzii este golThe command field is empty emailDialog:Utilizeaz valoarea implicit Use default emailDialogargumente: arguments: emailDialogcomand:command: emailDialog&luckyBackup - emailluckyBackup - email emailDialogOkOkay helpBrowser(luckyBackup - ajutorluckyBackup - help helpBrowsermanual/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialognchideclose logDialog:se ncarc fiierul jurnal...loading logfile... logDialogXluckyBackup - progresul execuiei sarcinilor&luckyBackup - tasks execution progress logDialog eroare urmtoare next error logDialog"eroare anterioarprevious error logDialogateptaiwait logDialog &%1 %2&%1 %2luckyBackupWindow&Abandoneaz&AbortluckyBackupWindow&Despre&AboutluckyBackupWindow&Adaug&AddluckyBackupWindow&terge&DeleteluckyBackupWindow$&Ghid de utilizare &HandbookluckyBackupWindow&Ajutor&HelpluckyBackupWindowI&mport&ImportluckyBackupWindow &Limb &LanguageluckyBackupWindow:&Micoreaz n bara de sistem&Minimize to trayluckyBackupWindow&Modific&ModifyluckyBackupWindow&Nou&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Termin&QuitluckyBackupWindow&mprospteaz&RefreshluckyBackupWindow&Elimin&RemoveluckyBackupWindow&Restaureaz&RestoreluckyBackupWindow&Salveaz&SaveluckyBackupWindow&Configurri &SettingsluckyBackupWindow&Sarcin&TaskluckyBackupWindow&SarcinThis is a top menu action&TaskluckyBackupWindow&Bri de unelte &ToolbarsluckyBackupWindowB&Vizualizeaz/Editeaz Descrierea&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowABANDONATABORTEDluckyBackupWindowAbandoneazAbortluckyBackupWindowvSe abandoneaz: Ateptai ca toate procesele s fie omorte4Aborting: Please wait for all processes to be killedluckyBackupWindowAciuniActionsluckyBackupWindowToate fiierele relevante ( jurnale, etc. ) au fost deasemeni terse4All relevant files (logs etc) have also been deletedluckyBackupWindowToate fiierele relevante ( jurnale etc. ) au fost deasemeni duplicate7All relevant files (logs etc) have also been duplicatedluckyBackupWindowToate fiierele relevante ( jurnale, etc. ) au fost deasemeni actualizate4All relevant files (logs etc) have also been updatedluckyBackupWindow<Toate sarcinile sunt terminateAll tasks completedluckyBackupWindowVSuntei sigur c vrei s tergei profilul'Are you sure you want to delete profileluckyBackupWindowjSuntei sigur c dorii s tergei profilul implicit3Are you sure you want to delete the default profileluckyBackupWindowtSuntei sigur c vrei s eliminai sarcinile urmtoare ??5Are you sure you want to remove the following task ??luckyBackupWindowTncepe execuia tuturor sarcinilor incluse)Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindowzBifrile sunt dezactivate. Aceast sarcin va fi <b>omis</b>5Checks are disabled. This task will be skippedluckyBackupWindow:Nu se poate localiza fiierulCould not locate the fileluckyBackupWindowtNu se poate actualiza ultimul timp al execuiei sarcinilor-Could not update last execution time of tasksluckyBackupWindowAvariatCrashedluckyBackupWindow6Creeaz o sarcin d&uplicatCreate D&uplicate taskluckyBackupWindow@Creeaz o sarcin de r&estaurareCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowProfil curentCurrent ProfileluckyBackupWindowD&uplic D&uplicateluckyBackupWindow&ImplicitDe&faultluckyBackupWindowDescriere DescriptionluckyBackupWindowDestinaie DestinationluckyBackupWindowDirector DirectoryluckyBackupWindowEfectuatDoneluckyBackupWindowSimulareDryluckyBackupWindow E&mailE&mailluckyBackupWindowE&xportE&xportluckyBackupWindow EROAREERRORluckyBackupWindow IEIREEXITluckyBackupWindowTimp scurs Elapsed timeluckyBackupWindowPreferinele pentru email au fost <font color=green>actualizate cu succesBEmail preferences have been updated successfullyluckyBackupWindowJRaport email dup execuia profilului$Email report after profile executionluckyBackupWindowRomanianEnglishluckyBackupWindowRomanianDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowxAu intervenit erori n timpul transferului fiierului jurnal'Errors occured during logfiles transferluckyBackupWindowAu intervenit erori n timpul transferului fiierelor jurnal i versiunilor de rezerv5Errors occured during snapshots and logfiles transferluckyBackupWindow~Au intervenit erori n timpul transferului versiunii de rezerv(Errors occured during snapshots transferluckyBackupWindowxAu intervenit erori n timpul transferului fiierului profil/Errors occured during the profile file transferluckyBackupWindow&Execuia profiluluiExecution of profileluckyBackupWindow@S-a terminat execuia sarcinilorExecution of tasks finishedluckyBackupWindowpExecuia sarcinilor a fost terminat brusc de utilizator4Execution of tasks were terminated violently by userluckyBackupWindow IeireExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowNA euat crearea directorului destinaie&Failed to create destination directoryluckyBackupWindowDS-a euat la crearea noului profilFailed to create new profileluckyBackupWindowxA euat tergerea tuturor fiierelor relevante (jurnale etc).Failed to delete all relevant files (logs etc)luckyBackupWindow8A euat tergerea profiluluiFailed to delete profileluckyBackupWindowzA euat duplicarea tuturor fiierelor relevante (jurnale etc)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow:A euat duplicarea profiluluiFailed to duplicate profileluckyBackupWindow:A euat duplicarea profiluluiFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow:Nu s-a putut exporta profilulFailed to export profileluckyBackupWindow6A euat importul profiluluiFailed to import profileluckyBackupWindow<Nu s-a putut redenumi profilulFailed to rename profileluckyBackupWindow:Nu s-a putut nlocui profilulFailed to replace profileluckyBackupWindow A euat pornireaFailed to startluckyBackupWindow~A euat actualizarea tuturor fiierelor relevante (jurnale etc).Failed to update all relevant files (logs etc)luckyBackupWindow>Ascunde fereastra de informaiiHide information windowluckyBackupWindow>Ascunde fereastra informaiilor+hide/show information window button tooltipHide information windowluckyBackupWindowImport profilImport ProfileluckyBackupWindow(Fereastr informaiiInformation windowluckyBackupWindow.Fereastr de informaiiinformation window titleInformation windowluckyBackupWindowlUltimul timp al execuiei sarcinilor a fost actualizat$Last execution time of tasks updatedluckyBackupWindowHLista tuturor sarcinilor disponibileList of all the available tasksluckyBackupWindowBlocheazLockluckyBackupWindow(Administrare &BackupManage &BackupluckyBackupWindow.Administreaz sarcinile Manage TaskluckyBackupWindowXMut n jos sarcina subliniat, cu o poziie/Move the highlighted task down, by one positionluckyBackupWindowXMut n sus sarcina subliniat, cu o poziie-Move the highlighted task up, by one positionluckyBackupWindowNUNOluckyBackupWindowNU ESTE INCLUS NOT INCLUDEDluckyBackupWindowNOTNOTEluckyBackupWindow.Nu au fost gsite eroriNo errors foundluckyBackupWindow.Acum se execut sarcinaNow performing taskluckyBackupWindowArat doar erorile i mesajele importante n timpul actualizrii ferestrei could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindow^Actualizarea barei de progres nu va fi realist(Progressbar update will not be realisticluckyBackupWindowR&edenumeteR&enameluckyBackupWindowEroare citire Read errorluckyBackupWindowpS-a eliminat toate datele vechi ale versiunii de rezerv Removed all older snapshots dataluckyBackupWindowSe eliminRemovingluckyBackupWindowSe elimin versiunile de rezerv vechi i fiierele jurnal ale sarcinii+Removing old snapshots and logfiles of taskluckyBackupWindowRuleazRunluckyBackupWindow&Programator S&cheduleluckyBackupWindow<Selectati directorul de exportSelect export directoryluckyBackupWindow0Configureaz ca ImplicitSet as DefaultluckyBackupWindow$Configureaz cile Set pathsluckyBackupWindow^Configurai cile pentru comenzile rsync i ssh$Set paths for rsync and ssh commandsluckyBackupWindow:Arat fereastra de informaiiShow information windowluckyBackupWindow:Arata fereastra informaiilor+hide/show information window button tooltipShow information windowluckyBackupWindow0Arat text sub miniaturiShow text under iconsluckyBackupWindow SursaSourceluckyBackupWindow<Oprete execuia sarcinii ACUM'Stop the execution of running tasks NOWluckyBackupWindowXDirectorul destinaie a fost creat cu succes)Successfuly created destination directoryluckyBackupWindowSarcinTaskluckyBackupWindow List de sarcini Task listluckyBackupWindow:Lista de sarcini a profiluluiTask list of profileluckyBackupWindow*Descrierea profiluluiThe description of profileluckyBackupWindow~Directorul pe care l-ai selectat nu conine date profil valideCThe directory you have selected does not contain valid profile dataluckyBackupWindow|Numele pe care l-ai introdus conine numai caractere nevalide:The name you have entered contains only invalid charactersluckyBackupWindow<Sistemul se va opri n 1 minut$The system will shutdown in 1 minuteluckyBackupWindow6Lista sarcinilor este goalThe task list is emptyluckyBackupWindowAceast aciune va realiza o <b>rulare simulat</b> care nu va face nici o modificare (si produce de obicei aceiai ieire ca o rulare real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowExpirat Timed outluckyBackupWindow:Nu se poate deschide profilulUnable to open profileluckyBackupWindow$Eroare necunoscut Unknown errorluckyBackupWindow$Eroare necunoscutthis refers to a process Unknown errorluckyBackupWindowfUtilizai butonul "add" din dreapta pentru a incepe0Use the "add" button on the right to get startedluckyBackupWindowUtilizai 'include bifate' pentru a include sau nu o sarcin selectat>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowVVizualizeaz/Editeaz descrierea profilului!View/Edit the profile descriptionluckyBackupWindowATENIEWARNINGluckyBackupWindow"Bine ai venit la Welcome toluckyBackupWindow<Dorii deasemeni s eliminai:Would you like to also remove:luckyBackupWindow6Dorii s continai oricum?!Would you like to proceed anyway?luckyBackupWindow0Dorii s l nlocuii ?Would you like to replace it ?luckyBackupWindowXDorii s fie salvat nainte de a continua ?-Would you like to save it before proceeding ?luckyBackupWindowErorare scriere Write errorluckyBackupWindowDAYESluckyBackupWindowfAi solicitat s fie creat o sarcin de RESTAURARE/You have asked for a RESTORE task to be createdluckyBackupWindowZAvei incluse numai sarcini care vor fi omise9You have only included tasks that are going to be skippedluckyBackupWindowXAi atins limita maxim de sarcini suportate5You have reached the maximum limit of supported tasksluckyBackupWindow|Trebuie s eliminai o sarcin dac dorii s adugai alta !!7You have to remove a task if you wish to add another !!luckyBackupWindowJva fi creat unul gol, cu acelai nume4a new blank one, with the same name, will be createdluckyBackupWindow adaugaddluckyBackupWindowadaug sarcinadd taskluckyBackupWindowdeja existalready existsluckyBackupWindowBi lista desfurat a profiluluiand 'profile' drop-down listluckyBackupWindowHi s-a adugat la lista profilurilorand added at the profile listluckyBackupWindow^i schimbai orice dorii nainte de a continua.and change anything you wish before proceedingluckyBackupWindowcaasluckyBackupWindow ca iFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowse calculeaz calculatingluckyBackupWindowse calculeaz-info message displayed during ...calculations calculatingluckyBackupWindowieire comenzicommands outputluckyBackupWindow"nu se poate creeacould not be createdluckyBackupWindow"nu se poate salvacould not be savedluckyBackupWindow"nu se poate salvaPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow,a fost creat cu succescreated successfullyluckyBackupWindow@se creeaz profilul implicit ...creating default profile ...luckyBackupWindow.se creeaz profilul ...creating profile ...luckyBackupWindowfiierul crontab actual <font culoare=verde> s-a actualizat cu succes6current crontab updated successfullyluckyBackupWindowprofil curentcurrent profileluckyBackupWindowprofil implicitdefault profileluckyBackupWindow"profilul implicit^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowprofil implicitVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindowters cu succesdeleted successfullyluckyBackupWindow se terg fiieredeleting filesluckyBackupWindow se terg fiiere/info message displayed during ...file deletionsdeleting filesluckyBackupWindowafiseaz - restaureaz - terge backup-urile existente ale sarcinei selectate?display - restore - delete existing backups of highlighted taskluckyBackupWindow`afieaz informaii privind sarcinile subliniate.display information regarding highlighted taskluckyBackupWindow8a fost duplicat cu succes caduplicated successfully asluckyBackupWindow(au fost gsite erori errors foundluckyBackupWindow,executarea profilului:execution of profile:luckyBackupWindow(execuia profilului:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow*exportat cu succes laexported successfully toluckyBackupWindow$a euat eliminareafailed to removeluckyBackupWindowa euat eliminarea tuturor datelor vechi ale versiunii de rezerv)failed to remove all older snapshots dataluckyBackupWindowfinalizatfinishedluckyBackupWindowfinalizat:full phrase: 'Execution of profile finished'finishedluckyBackupWindow$importat cu succesimported successfullyluckyBackupWindow"n desfurare...in progress...luckyBackupWindowincludeincludeluckyBackupWindoweste modificat is modifiedluckyBackupWindow(nu este valid pentruis not valid forluckyBackupWindow2sari la urmtoarea eroarejump to next errorluckyBackupWindow4sari la eroarea anterioarjump to previous errorluckyBackupWindow$ncrcat cu succesloaded successfullyluckyBackupWindow>se ncarc profilul implicit...loading default profile ...luckyBackupWindow$ncrcarea a euatloading failedluckyBackupWindow,se ncarc profilul...loading profile ...luckyBackupWindowdfiierul(ele) jurnal au fost create n directorul:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow8micoreaz n bara de sistemminimize to trayluckyBackupWindowXmicoreaz fereastra n zona barei de sistem%minimizes the window to the tray arealuckyBackupWindowmodificmodifyluckyBackupWindow6modific sarcina subliniatmodify highlighted taskluckyBackupWindownimic de fcut nothing to doluckyBackupWindowFpost-sarcina execuiei unei comenzipost-task execution of commandluckyBackupWindowDpre-sarcina execuiei unei comenzipre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow profilprofile luckyBackupWindowmod silenios quiet modeluckyBackupWindowremprosptat refreshedluckyBackupWindoweliminremoveluckyBackupWindow4elimin sarcina subliniatremove highlighted taskluckyBackupWindow,redenumit cu succes nrenamed successfully toluckyBackupWindow,redenumit cu succes nWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowxrsync i comenzile ieire pre/dup sarcin sunt afiate aici9rsync and pre/post task commands output is displayed hereluckyBackupWindow salvat cu successaved successfullyluckyBackupWindow@se salveaz profilul implicit...saving default profile ...luckyBackupWindow.se salveaz profilul...saving profile ...luckyBackupWindowprogramat scheduledluckyBackupWindow0configureaz ca implicitset as defaultluckyBackupWindowconfigurat laset toluckyBackupWindow oprireshutdownluckyBackupWindowmod simularesimulation modeluckyBackupWindow starestatusluckyBackupWindowadministrator super userluckyBackupWindow"mod administratorsuper user modeluckyBackupWindowlatoluckyBackupWindow(se transfer fiieretransferring filesluckyBackupWindow(se transfer fiiere/info message displayed during ...file transferstransferring filesluckyBackupWindowBse ncearc trimiterea unui emailtrying to send an emailluckyBackupWindowversiune:version:luckyBackupWindow2Se calculeaz difereneleCalculate differences manageDialog|Se calculeaz diferenele dintre surs i snapshot-ul selectatFCalculate the differences between the source and the selected snapshot manageDialog>Calcule terminate de utilizatorCalculations terminated by user manageDialognchideClose manageDialog2nchide aceast fereastrClose this window manageDialog tergeDelete manageDialogxterge snapshot-ul selectat i fisierele jurnal ale acestuia,Delete the selected snapshot and its logfile manageDialogpNu exist suficiente permisiuni de a citi acest director;I do not have sufficient permissions to read this directory manageDialogRSelectai o versiune de rezerv din list&Please select a snapshot from the list manageDialogRAteptai pn ce execuia este terminat*Please wait until the thread is terminated manageDialogRestaureazRestore manageDialog@Restaureaz snapshot-ul selectatRestore the selected snapshot manageDialogSTOPSTOP manageDialog,Oprete calculele ACUMStop calculations NOW manageDialog0Acest director nu existThis directory does not exist manageDialog0Acest director nu existInformation messageThis directory does not exist manageDialogdAfieaz fiierul jurnal al snapshot-ului selectat)View the logfile of the selected snapshot manageDialog~Vizualizeaz fiierul jurnal al sarcinii sincronizate selectate*View the logfile of the selected sync task manageDialogdestinaie: destination: manageDialogascunde sursa hide source manageDialogBluckyBackup - administrare backupluckyBackup - manage backup manageDialogindisponibil not available manageDialog profilprofile manageDialog surs:source: manageDialog4Sincronizeaz directorul A sync dir A manageDialog4Sincronizeaz directorul B sync dir B manageDialogsarcintask manageDialog*vizualizeaz jurnalulview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABANDONABORT manageWizardAbandonatAborted manageWizardCale backup Backup path manageWizard\Navigai local pentru o nou cale de restaurat%Browse locally for a new restore path manageWizardBifai aceasta, pentru a clona versiunea de siguran cu directorul de restaurare.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDat & timp Date & time manageWizard terge backup-ul Delete backup manageWizard`terge datele existente care nu exist la backup4Delete existing data that do not exist at the backup manageWizardSe terg date Deleting data manageWizardterge fiierele care listeaz modificrile versiunii de rezerv)Deleting file that lists snapshot changes manageWizardTSe terge fiierul jurnal al snapshot-uluiDeleting snapshot logfile manageWizardFiierele de backup existente vor nlocui fiierle corespondente n directorul restauratSExisting backup files will replace the corresponding files at the restore directory manageWizardFinalizatFinished manageWizardDac informaia de deasupra este corect, apsai <b>start</b> pentru a ncepe@If the information above is correct, click start to begin manageWizardDac informaia de mai sus este corect, apsai <b>start</b> pentru a ncepe`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard2Sri la eroarea urmatoareJump to next error manageWizard4Sri la eroarea precedentJump to previous error manageWizardNu exist datele specificate ale versiunii de siguran. Se omite...,No snapshot specific data exist. Skipping... manageWizardCalePath manageWizard"Restaurare backupRestore backup manageWizard&Calea de restaurare Restore path manageWizardPSe restaureaz date: segmentul principalRestoring data: main trunk manageWizardJSe restaureaz date: fiiere snapshotRestoring data: snapshot files manageWizardNSelectai un nou director de restaurareSelect new restore directory manageWizardDirectorul de restaurare va deveni identic cu versiunea de siguranBThe restore directory will become identical to the backup snapshot manageWizardAceasta va realiza o <b>rulare simulat</b> care nu va face nici o modificare (i produce de obicei aceiai ieire ca i o rulare real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardJSe actualizeaz lista de snapshot-uriUpdating list of snapshots manageWizardATENIEWARNING manageWizardXSuntei pe cale s tergei datele de backup#You are about to delete backup data manageWizardanularecancel manageWizardschimbchange manageWizardnchideclose manageWizard(au fost gsite erori errors found manageWizard euatfailed manageWizard euat-info message displayed after ...file deletionfailed manageWizardBluckyBackup - administrare backupluckyBackup - manage backup manageWizard"eroarea urmtoare next error manageWizardnici o eroare no errors manageWizardindisponibil not available manageWizard$eroarea precedentprevious error manageWizardsimulare simulation manageWizardpornirestart manageWizard successuccess manageWizard succes-info message displayed after ...file deletionsuccess manageWizard succes5info message displayed after ...snapshots list updatesuccess manageWizard'Gazd distant' este bifat, dar nu este declarat nici un nume pentru gazda distant='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Nu uitai</b> s definii un director n zona 'excludere' care va conine destinaiafDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@Gazd:@Host: modifyDialogAdugai orice director, fiier sau model pentru a fi exclus din aceast sarcin@Add any directory, file or pattern to be excluded from this task modifyDialogAdugai orice director, fiier sau model pentru a fi inclus n aceast sarcin>Add any directory, file or pattern to be included by this task modifyDialog`Adaug comanda ca introdus n cmpul de alturi*Add command as entered in the field beside modifyDialog\Adaug excluderea ca intrare n urmtorul cmp*Add exclusion as entered in the next field modifyDialog^Adaug includerea ca nscris n cmpul urmtor*Add inclusion as entered in the next field modifyDialogAdugai sau tergei orice opiuni rsync. Dac nu tii ce nseamn asta, lsai-le neatinse !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialoghAdaug opiunea rsync ca introdus n cmpul urmtor-Add rsync option as entered in the next field modifyDialogAvansatAdvanced modifyDialogDupAfter modifyDialogToate cmpurile declarate n fereastra de proprieti a sarcinii par a fi n regul?All declared fields of the task properties window seem to be ok modifyDialog"Execut deasemeni Also Execute modifyDialogPncercai activiti de super-utilizatorAttempt super-user activities modifyDialog4Backup sursa n destinaie Backup Source inside Destination modifyDialogFiiere backup Backup files modifyDialog.Backup fiiere deschiseBackup open files modifyDialognainteBefore modifyDialogDosare de cache Cache folders modifyDialogAnuleazCancel modifyDialogBifai aici dac utilizai o partiie FAT/NTFS ca destinaie. Datele propietarului i permisiunile NU vor fi pstrate. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogBifai aici pentru a clona sursa n destinaie Lsai nebifat pentru a crea un director suplimentar n cadrul destinaieiiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialoglBifai aici pentru conectare la un modul rsync distant/Check this to connect to an rsync Remote module modifyDialogOpiuni comandCommand Options modifyDialog Lista de comenzi Command list modifyDialogCopiaz dispozitivele (numai ca administrator) & fiierele speciale aa cum sunt ele (-D)?Copy device (super user only) & special files as they are (-D) modifyDialognCopiaz legturile simbolice ca legturi simbolice (-l)Copy symlinks as symlinks (-l) modifyDialogDefinii tipul acestei sarcini: 1. Backup directorul surs, n interiorul destinaiei (vdei si "NU crea directorul") 2. Sincronizeaz sursa & destinaia, pstrnd cele mai recente fiiere la ambeleDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog Definii tipul acestei sarcini: 1. Creaz copie de siguran a sursei n interiorul destinaiei 2. Creeaz copie de siguran a directorului surs cu nume n interiorul destinaiei 3. Sincronizeaz sursa & destinaia, pstrnd cele mai recente fiiere la ambeleDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog<terge fiierele la destinaieDelete files on the destination modifyDialogHterge fiierele din destinaie care nu exist n surs. "Recursiv n directoare" trebuie selectat (--delete-after & --delete-excluded dac "Exclude" este utilizat)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescriere Description modifyDialogDestinaie Destination modifyDialogDestinaie : Destination : modifyDialog0Destinaia este FAT/NTFSDestination is FAT/NTFS modifyDialog>NU crea un director suplimentarDo NOT create extra directory modifyDialogNu crea fiiere de rezerv a sursei care sunt mai noi la destinaie (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNu excludei aceast list de modele. Consultai manualul pentru o mai bun nelegere a regulilor de includere.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog:Editeaz includerea selectatEdit highlighted inclusion modifyDialogIntroducei un nume pentru aceast sarcin (de exemplu "Arhiveaz directorul meu Acas"):Enter a name for this task (eg "Backup my home directory") modifyDialogIntroducei aici o comand pentru a fi executat dup sarcin i apsai butonul "Adaug" pentru a o aduga la lista de mai josnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogIntroducei aici o comand pentru a fi executat nainte de sarcin i apoi apsai butonul "Adaug" pentru a o aduga la lista de mai josoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogIntroducei aici o opiune rsync de adugat (de exemplu "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogrIntroducei aici fiierul, dosarul sau modelul i apoi apsai butonul "adaug" de a le aduga la lista de excluderi * - potrivete orice component care nu este goal (se oprete la linii oblice) ** - potrivete orice incluznd liniile oblice ? - potrivete orice caracter cu excepia unor linii oblice urmrete nume_director/*** - potrivete ambele directoare & orice n ele pornete / -modelul este ancorat la un anumit punct n ierarhia transferului (normal este "sursa") urmrete / - nnumai directoarele potrivite, nu fiierele obinuite, Symlink sau dizpozitiveEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogrIntroducei aici fiierul, dosarul sau modelul i apoi apsai butonul "adaug" de a le aduga la lista de excluderi * - potrivete orice component care nu este goal (se oprete la linii oblice) ** - potrivete orice incluznd liniile oblice ? - potrivete orice caracter cu excepia unor linii oblice urmrete nume_director/*** - potrivete ambele directoare & orice n ele pornete / -modelul este ancorat la un anumit punct n ierarhia transferului (normal este "sursa") urmrete / - nnumai directoarele potrivite, nu fiierele obinuite, Symlink sau dizpozitiveEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogIntroducei calea complet a directorului destinaie (de exemplu /home/luckyb/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogIntroducei calea complet a fiierului care conine cheia privat de autentificare pentru ssh (lsai necompletat dac nu este cazul). Notai c avei de efectuat toate aciunile necesare unei conexiuni distante ssh fr parol utiliznd o pereche de chei OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialog(Introducei calea complet a fiierului care conine parola de autentificare pentru rsync (nu pentru ssh) - (lsai necompletat dac nu este cazul).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogIntroducei calea complet a directorului surs (de exemplu /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogFIntroducei numele gazdei distante."Enter the name of the remote host. modifyDialogIntroducei portul pe care dorii s-l utilizai pentru conexiunea ssh (lsai necompletat pentru portul implicit)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogIntroducei numele de utilizator pentru gazda distant (lsai necompletat dac nu este cazul).HEnter your username for the remote host (leave blank if not applicable). modifyDialog(Au fost gsite eroriErrors have been found modifyDialogExcludeExclude modifyDialogjExclude toate dosarele "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialognExclude toate directoarele i fiierele de backup (**~)(Exclude all backup files & folders (**~) modifyDialogvExclude toate dosarele de cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogXExclude toate dosarele temporare (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogvExclude toate dosarele .gvfs ale utilizatorului (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogExclude toate dosarele de gunoi ale utilizatorului (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog$List de excludere Exclude list modifyDialogExclude dosarele de system /var, /proc, /dev, & /sys (/var/run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExclude dosarele montate de sistem /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogrExecut comenzile suplimentare, nainte sau dup sarcin.1Execute extra commands, before or after the task. modifyDialogExecut sarcina chiar dac apare cu un mesaj de ATENIE Utilizat n mod normal atunci cand comenzile "Execut nainte" pot remedia o atenionare (de exemplu montarea partiiilor) ATENIE: validai opiunea doar dac stii sigur ceea ce faceiExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialogFList de opiuni rsync suplimentareExtra rsync options list modifyDialog>Fiierele care sunt legate mpreun n surs vor fi legate n acelai mod la destinaie ATENIE: Toate fiierele trebuiesc incluse n setul de transfer !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog:Ignor fiierele n modul CVSIgnore files the CVS way modifyDialogtIgnor fiierele utiliznd un algoritm similar cu CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogIncludeInclude modifyDialogLInclude DOAR aceasta list de modele. Nimic mai mult. Consultai manualul pentru a inelege mai bine regulile de includere. Aceasta va dezactiva funcia de excludere.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog$Lista de includere Include list modifyDialogMod includere Include mode modifyDialogLsai boxa selectat, pentru a <b>OPRI</b> execuia sarcinii care ruleaz dac aceast comanda se termin cu o eroaregLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialogMod:Mode: modifyDialog@Mut n jos includerea selectatMove highlighted inclusion down modifyDialog@Mut n sus includerea selectatMove highlighted inclusion up modifyDialog Nume :Name : modifyDialog"Includere normalaNormal Include modifyDialogOkOkay modifyDialogInclude doar Only Include modifyDialogjAltfel debifai 'Gazd distant' pentru a opera local2Otherwise uncheck 'Remote Host' to operate locally modifyDialogZBifai csua relevant nainte de a continua/Please check the relevant box before proceeding modifyDialogfDefinii sursa nainte de a lansa editorul de modelSelectai directorul destinaieSelect destination directory modifyDialogbSelectai fiierul pentru a citi modelele excluse$Select file to read exclude patterns modifyDialogbSelectai fiierul pentru a citi modelele incluse$Select file to read include patterns modifyDialog>Selectai fiierul parol rsyncSelect rsync password file modifyDialog4Selectai directorul sursSelect source directory modifyDialog8Selectai fiierul cheie SSHSelect ssh keyfile modifyDialogvConfigurai numrul total de versiuni de rezerv de pstrat0Set the total number of backup snapshots to keep modifyDialog\Afieaz comanda rsync aa cum va fi executat.Shows the rsync command as it will be executed modifyDialogFOmite fiierele destinaiei mai noiSkip newer destination files modifyDialog>Versiuni de rezerv de pstrat:Snapshots to keep: modifyDialog SursSource modifyDialogSurs :Source : modifyDialogBSincronizeaz sursa i destinaia"Synchronize Source and Destination modifyDialogDosare systemSystem folders modifyDialog8Directoare montate de systemSystem mount folders modifyDialog&Descrierea sarciniiTask description modifyDialogNume sarcin Task name modifyDialog,Proprietile sarciniiTask properties modifyDialogabloane Templates modifyDialog Dosare temporareTemporary folders modifyDialogzAcest lucru nu este permis deoarece '/' nu are un nume curentOPRI</b> execuia sarcinii la eroare0use boxes to STOP task execution on error modifyDialogvalideazvalidate modifyDialogtfr a selecta 'Recursiv n directoare' care este necesarCwithout having checked 'Recurse into directories' which is required modifyDialogAnulareCancel patternEditorTBifai aceasta pentru a utiliza directorul de mai sus ca o cale absolut dac este nebifat, modelul va potrivi orice fiier/director care ndeplinete criteriul de "nume"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefinii aici numele criteriului pentru fiiere/directoare pentru a fi potriviteEDefine here the name criteria for the files/directories to be matched patternEditorlDefinii aici, la ce var place ca modelul s se refere8Define here, what would you like the pattern to refer to patternEditor.Coninutul directoruluiDirectory contents patternEditorIntroducei aici caracterele coninute n orice poziie a numelui fiierelor/directoarelor la care se refer modelulsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor\Introducei aici caracterele de sfrit a numelui fiierelor/directoarelor la care se refer modelul de exemplu pentru a se referi la toate fiierele ".txt", introducei .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorIntroducei aici numele fiierelor/directoarelor la care se refer modelulGEnter here the name of the files/directories that the pattern refers to patternEditorIntroducei aici caracterele de nceput a numelui fiierelor/directoarelor la care se refer modelulbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor8Mergi mai adnc n cale cu :Go deeper in path by : patternEditorLMergi mai adnc n cale cu orice nivelGo deeper in path by any level patternEditorOkOkay patternEditor8Alegei un director n surs+Please choose a directory within the source patternEditor4Alegei un fiier n surs&Please choose a file within the source patternEditorzReseteaz cmpurile editorului de model la valorile implicite5Reset the pattern editor fields to the default values patternEditor$Selectare directorSelect directory patternEditor Selectare fiier Select file patternEditor"Set de directoareSet of directories patternEditorSet de fiiere Set of files patternEditor"Director specificSpecific directory patternEditorFiier specific Specific file patternEditor>Modelul actual este afiat aici$The actual pattern is displayed here patternEditor*Modelul se refer la:The pattern refers to a: patternEditorUtilizai aceasta dac modelul se refer la un set de directoare care au ceva n comun de exemplu toate directoarele denumite ca "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUtilizai aceasta dac modelul se refer la un set de fiiere care au ceva n comun de exemplu toate fiierele cu o extensie ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUtilizai aceasta dac modelul se refer la un anume director de exemplu "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUtilizati aceasta dac modelul face se refer la un anumit fiier de exemplu "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorFUtilizai asta dac modelul se refer la coninutul unui director (sau un set de directoare), nu directorul nsui ex coninutul directorului "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorUtilizai asta pentru a v referii la sub-directoare n profunzime ex Directorul "/media/music" include 3 sub-directoare: 1.Rock 2.Jazz 3.Soundtracks i ai dori s v referii la tot coninutul acestor trei, definii urmtoarele: * Set de directoare * Doar coninutul * calea:/media/music/ * Mergi mai adnc n cale cu "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditor oriceany patternEditorRnavigai local pentru calea unui director"browse localy for a directory path patternEditor>navigai local pentru un fiierbrowse localy for a file patternEditorconine : contains : patternEditordirector : directory : patternEditorse termin cu : ends with : patternEditorfiier :file : patternEditormodel final final pattern patternEditoreste exact : is exactly : patternEditornumename patternEditoreditor modelpattern editor patternEditor resetreset patternEditorncepe cu : starts with : patternEditor0utilizai calea absolutuse absolute path patternEditor fiier filescheduleDialog& pe& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:ntrziere:delayscheduleDialogJ<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programarea executrii profilului</span></p></body></html>

Profile execution scheduling

scheduleDialog@ repornire@ rebootscheduleDialog>Adaug o nou programare profilAdd a new profile schedulescheduleDialog0Adaug programare profilAdd profile schedulescheduleDialogOricareAnyscheduleDialogAprilieAprilscheduleDialogApriliefull phrase: 'of April'AprilscheduleDialogxSuntei sigur c vrei s nchidei dialogul de programare ?4Are you sure you want to close the schedule dialog ?scheduleDialog AugustAugustscheduleDialog Augustfull phrase: 'of August'AugustscheduleDialogAnulareCancelscheduleDialogBifai asta dac maina dumneavoastr nu suport un mediu grafic (ex server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogMod terminal Console ModescheduleDialogDecembrieDecemberscheduleDialogDecembriefull phrase: 'of December'DecemberscheduleDialogPntrzie execuia luckybackup la pornire&Delay luckybackup execution at startupscheduleDialog\Afieaz fiierul curent de comenzi programateDisplay the current crontabscheduleDialog Execut profilulExecute profilescheduleDialogFebruarieFebruaryscheduleDialogFebruariefull phrase: 'of February'FebruaryscheduleDialog VineriFridayscheduleDialogProfil nevalidInvalid profilescheduleDialogIanuarieJanuaryscheduleDialogIanuariefull phrase: 'of January'JanuaryscheduleDialog IulieJulyscheduleDialog Iuliefull phrase: 'of July'JulyscheduleDialog IunieJunescheduleDialog Iuniefull phrase: 'of June'JunescheduleDialog MartieMarchscheduleDialog Martiefull phrase: 'of March'MarchscheduleDialogMaiMayscheduleDialogMaifull phrase: 'of May'MayscheduleDialog4Modific programare profilModify profile schedulescheduleDialogRModific programarea profilului selectat Modify selected profile schedulescheduleDialogLuniMondayscheduleDialog>Nu sunt declarate programri !!No schedules are declared !!scheduleDialogNoiembrieNovemberscheduleDialogNoiembriefull phrase: 'of November'NovemberscheduleDialogOctombrieOctoberscheduleDialogOctombriefull phrase: 'of October'OctoberscheduleDialogProfil : Profile :scheduleDialog2Detalii programare profilProfile schedule detailsscheduleDialogPElimin programarea profilului selectat Remove selected profile schedulescheduleDialog2Ruleaz odat, la pornireRun once, at startupscheduleDialogSmbtSaturdayscheduleDialogSeptembrie SeptemberscheduleDialogSeptembriefull phrase: 'of September' SeptemberscheduleDialogOmite sarcinile care apar cu un mesaj de atenionare 'CRITIC' dup verificarea directoarelorSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog,Se pornete de la zeroStarting from scratchscheduleDialogDuminicSundayscheduleDialogzFiierul de programare curent nu este autentic luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogJoiThursdayscheduleDialog MariTuesdayscheduleDialog>Nu se poate creea fiierul cronUnable to create cron filescheduleDialogNNu se poate crea fiierul de programareUnable to create schedule filescheduleDialogMiercuri WednesdayscheduleDialogdAi fcut schimbri fr s apsai butonul cronIT8You have made changes without clicking the cronIT buttonscheduleDialognAi atins limita maxim suportat de profile programateBYou have reached the maximum limit of supported scheduled profilesscheduleDialogxTrebuie s tergei un element dac dorii s adugai altul5You have to remove an item if you wish to add anotherscheduleDialogrFiierul cu comenzi programate a fost modificat cu succes$Your crontab is updated successfullyscheduleDialog adaugaddscheduleDialoglaatscheduleDialognchideclosescheduleDialog(nchide acest dialogclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialogVconinutul fiierului cu comenzi programatecrontab contentscheduleDialogzidayscheduleDialogziua lunii :day of month :scheduleDialog"ziua sptmnii : day of week :scheduleDialogfiecareeveryscheduleDialogorar la minuthourly at minute scheduleDialog$luckyBackup - orarluckyBackup - schedulescheduleDialogminminscheduleDialogmodificmodifyscheduleDialog luna :month :scheduleDialog ndscheduleDialog as in 22nd dayndscheduleDialogfnu exist intrri n fiierul cu comenzi programateno crontab entries existscheduleDialogdeofscheduleDialoga oricrei luni of any monthscheduleDialoggataokayscheduleDialog:odat, la pornirea sistemuluionce, at system startupscheduleDialog rdscheduleDialog as in 23rd dayrdscheduleDialogeliminremovescheduleDialogprogrameaz execuia profilelor aa cum sunt declarate n lista de mai sus@schedule the execution of profiles as declared in the list abovescheduleDialogconfigureaz aceast valoare la -1 pentru programator pentru a avea loc n fiecare or9set this value to -1 for the schedule to occur every hourscheduleDialogomite critic skip criticalscheduleDialog stscheduleDialog as in 21st daystscheduleDialog as in 31st daystscheduleDialog thscheduleDialog as in 10th daythscheduleDialog as in 11th daythscheduleDialog as in 12th....19th daythscheduleDialog as in 20th daythscheduleDialog as in 24th...30th daythscheduleDialog  as in 8th daythscheduleDialog  as in 9th daythscheduleDialog$timp (or:minut) :time (hour:min) :scheduleDialogdvizualizeaz fiierul curent de comenzi programateview current crontabscheduleDialogJDeja exist un profil cu acelai nume+A profile with the same name already exists textDialogNSuntei sigur c vrei s continuai ??#Are you sure you wish to proceed ?? textDialogFII ATENT, dac intenia dumneavoastr NU este s clonai sursa la destinaie !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogAnuleazCancel textDialogHCopiaz comanda n memoria temporarCopy command to clipboard textDialogVNu arta asta din nou pentru acest sarcin$Do not show this again for this task textDialogFIntroducei fraza de identificare :Enter passphrase : textDialog(Introducei parola :Enter pasword : textDialogDIntroducei numele noului profil :#Enter the name of the new profile : textDialogJIntroducei noul nume al profilului :#Enter the new name of the profile : textDialogNuNo textDialogGataOkay textDialog6Introducei un nume diferitPlease enter a different name textDialog.Descrierea profilului :Profile description : textDialogDaYes textDialogAi selectat "Arhiveaz coninutul directorului surs"<br>mpreun cu opiunea "terge fiierele la destinaie"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog informaie eMaileMail information textDialogluckyBackup luckyBackup textDialogAnuleazCancel winDialogZIntroducei calea complet a comenzii cygpath*Enter the full path of the cygpath command winDialogXIntroducei calea complet a comenzii dosdev)Enter the full path of the dosdev command winDialogjIntroducei calea complet a directorului luckybackup0Enter the full path of the luckybackup directory winDialogVIntroducei calea complet a comenzii rsync(Enter the full path of the rsync command winDialogRIntroducei calea complet a comenzii ssh&Enter the full path of the ssh command winDialogdIntroducei calea complet a directorului temporar.Enter the full path of the temporary directory winDialogbIntroducei calea complet a directorului vshadow,Enter the full path of the vshadow directory winDialog6Fiiere executabile (*.exe)Executable Files (*.exe) winDialogGataOkay winDialog2Selectai comanda cygpathSelect cygpath command winDialog0Selectai comanda dosdevSelect dosdev command winDialog.Selectai comanda rsyncSelect rsync command winDialog*Selectai comanda sshSelect ssh command winDialog8Utilizai valoarea implicitUse default value winDialognavigai localbrowse locally winDialogcygpath:cygpath: winDialog"declararea cilordeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog&director principal: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog$director temporar: temp dir: winDialog"director vshadow: vshadow dir: winDialog $luckybackup-0.5.0/translations/luckybackup_sl.ts0000666000175000017500000070730413165410113021513 0ustar luckybluckyb CalcDiffThread Scanning destination Preiskovanje ciljnega mesta Please wait Počakajte ... Scanning snapshot Preiskovanje posnetka Scanning source Preiskovanje vira Calculating differences Preračunavanje razlik Sync dir A & B differences Usklajevanje razlik med mapama A in B Snapshot and source differences Razlike posnetka in vira Sync dir B data that also exists at sync dir A and is different Uskladi podatke mape B, ki obstajajo tudi v mapi A, vendar so drugačni Snapshot data that also exists at the source and is different Podatki posnetka, ki obstajajo tudi na vir, vendar so drugačni The snapshot data will replace the source data during RESTORE Podatki posnetka bodo med OBNOVO prepisali podatke vira Data amount is huge. Displaying only first entries Količina podatkov je ogromna. Prikazani so le prvi vnosi. Sync dir B data that do NOT exist at sync dir A Usklajevanje podatkov mape B, ki ne obstajajo v usklajeni mapi A Snapshot data that do NOT exist at the source Podatki posnetka, ki NE obstaja v viru These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Ti bodo med OBNOVO kopirani na vir Sync dir A data that do NOT exist at sync dir B Usklajevanje podatkov mape A, ki NE obstajajo v usklajeni mapi B Source data that do NOT exist at the snapshot Izvirni podatki, ki NE obstajajo na posnetku These will be deleted during RESTORE only if you enable the option: Ti bodo med OBNOVO izbrisani le, če omogočite možnost: delete existing source data that do not exist at the backup izbriši obstoječe izvorne podatke, ki ne obstajajo v varnostni kopiji QObject The task list is empty Seznam opravil je prazen nothing to start ni opravil za izvajanje You have included both of the following connected tasks: Vključeni sta dve povezani opravili: this is not allowed for obvious reasons opravilo ni dovoljeno iz očitnih razlogov Please <b>uncheck appropriate include boxes</b> before proceeding Pred nadaljevanjem <b>odstranite oznake ustreznih možnosti za vključitev</b> You have not included any tasks Ni izbranega nobenega opravila The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Navedena opravila za vključevanje imajo določeno <b>enako ciljno mapo</b> (skupno ali v skupini) in vsaj ena bo ustvarila varnostno kopijo vsebine mape. this will lead to one task canceling the other s tem bo eno opravilo preklicalo izvajanje drugega Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Izvajanje ukaza pred izvedbo opravila starting Full phrase: pre-task execution of command: <COMMAND> starting začenjanje ... Command re-run due to failure This means that a specific command is run for once more because it failed the first time Ponoven zagon ukaza zaradi spodletelega izvajanja post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Izvajanje ukaza po izvedbi opravila starting Full phrase: post-task execution of command: <COMMAND> starting začenjanje execution of task Full phrase: execution of task: <TASKNAME> starting Izvajanje opravila starting Full phrase: execution of task: <TASKNAME> starting začenjanje ... Source Full phrase: source: <SOURCE_NAME Vir Destination Full phrase: Destination: <DEST_NAME Cilj execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting izvajanja prvega dela naloge starting Full phrase: execution of 1st part of task: <TASKNAME> starting začenjanje Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Usklajevanje to Full phrase: Syncing <DIR-A> to <DIR-B> za execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting izvajanje drugega dela opravila starting Full phrase: execution of 2nd part of task: <TASKNAME> starting začenjanje Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Usklajevanje to Full phrase: Syncing <DIR-B> to <DIR-A> za pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished izvajanje ukaza pred izvedbo naloge finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished končano post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished izvajanje ukaza po izvedbi naloge finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished končano execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished izvajanje prvega dela opravila finished Full phrase: execution of 1st part of task: <TASKNAME> finished končano execution of task Full phrase: execution of task: <TASKNAME> finished izvajanje opravila finished Full phrase: execution of task: <TASKNAME> finished končano execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error izvajanje opravila finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error končano zaradi napake izvajanja ukaza pred ali po izvajanju naloge The process reported an error Med izvajanjem je prišlo do napake Backing-up profile, logfiles and snapshot data Ustvarjene bodo varnostne kopije profilov, dnevniških datotek in podatkov posnetkov Could not open the logfile Ni mogoče odpreti dnevniške datoteke The logfile does not exist Dnevniška datoteka ne obstaja The specified command is probably not installed Programski paket z navedenim ukazom najverjetneje ni nameščen The logfile could not be created Dnevniške datoteke ni mogoče ustvariti command: ukaz: exit code: Koda izhoda: output: Odvod: Last execution time Čas zadnjega izvajanja not available ni na voljo no errors brez napak errors found zaznane so napake status stanje OK V redu Sync directory Mapa usklajevanja Source directory Mapa vira Using remote, check is skipped Uporaba oddaljenega izvajanja; preverjanje je onemogočeno Destination directory Mapa cilja free as in free disk space prosto WARNING OPOZORILO I do not have the permission to read/enter sync directory A Ni ustreznih dovoljenj za dostop oziroma branje usklajevane mape A I do not have the permission to read/enter the source directory Ni ustreznih dovoljenj za dostop oziroma branje izvorne mape I do not have the permission to read/enter sync directory B Ni ustreznih dovoljenj za dostop oziroma branje usklajevane mape B I do not have the permission to read/enter the destination directory Ni ustreznih dovoljenj za dostop oziroma branje ciljne mape Directory Mapa and/or in/ali does not exist ne obstaja is not mounted ni priklopljena is empty or does not exist je prazna, ali pa ne obstaja I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Datoteke ne bodo <font color=red><b>PRESKOČENE</b></font>, ker je izbrana tudi možnost "Prezri OPOZORILA". This task will be <font color=red><b>skipped</b></font> To opravilo <font color=red><b>ne bo izvedeno</b></font>. CRITICAL KRITIČNO is empty je prazen I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped To opravilo <font color=orange><b>ne bo preskočeno. The Destination Directory will be created if it doesn't exist and filled with new backup data Ustvarjena bo nova ciljna mapa, če ta še ne obstaja, v njej pa bo ustvarjena varnostna kopija Task description Opis opravila ReadLogFile Could not locate the logfile Could not open the logfile Ni mogoče odpreti dnevniške datoteke aboutDialog using Qt4 s podporo Qt4 Backup & Sync Application Program za usklajevanje in varnostne kopije Loukas Avgeriou Loukas Avgeriou It 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. Program se razširja v upanju, da bo uporaben, toda BREZ KAKRŠNIHKOLI ZAGOTOVIL; tudi brez impliciranih zagotovila za PRODAJO ali PRIMERNOST ZA DOLOČEN NAMEN. See the 'License Agreement' tab for more details. Za več podrobnosti si oglejte 'Dovoljenje za uporabo'. Athens, Greece Atene, Grčija Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Uradni vzdrževalec paketa/izgradnje za Arch linux (AUR) Valuable advisor Pomemben svetovalec Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor pakiranje rpm, pomemben preizkuševalec in svetovalec glede oddaljenih povezav Patrick Matthaei Patrick Matthaei Debian package maintainer vzdrževalec paketov za Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester prevajalec vmesnika v grščino in preizkuševalec The indifex team Skupina indifex for developing the wonderful transifex localization platform and providing it for free za razvoj in brezplačno ponudbo okolja Transifex Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor vzdrževalec paketa za OpenSUSE (skladišče skupnosti KDE4) in pomemben svetovalec pri pripravljanju paketov Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator vzdrževalec paketa za Mepis (skladišče skupnosti) in prevajalec vmesnika v španščino Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) vzdrževalec paketa za Ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows predelava kode za okolje MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port razvijalec kode za podporo oddaljenemu usklajevanju in sistemom vsa na sistemih Windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X predelava kode za okolje Mac OS X Elbert Pol Elbert Pol port to OS/2 predelava kode za okolje OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer vzdrževalec paketov za Gentoo ebuild Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer vzdrževalec Puppy pet & sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) vzdrževalec paketa za Mandrivo (uradno skladišče prispevkov) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer vzdrževalec paketa za Free BSD Dimitris Jemos Dimitris Jemos Slackel package maintainer upravljalec paketov Slackel ex Fedora package maintainer bivši vzdrževalec paketa za Fedora Pavel Fric Pavel Fric Czech gui translator prevajalec uporabniškega vmesnika v češčino Stergios Prosiniklis Stergios Prosiniklis Greek manual translator prevajalec Grškega priročnika German gui translator prevajalec uporabniškega vmesnika v nemščino Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator prevajalec uporabniškega vmesnika v portugalščino Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) prevajalec uporabniškega vmesnika v francoščino in pomemben svetovalec pri pripravi paketov (in ne le to) Raffaele Raffaele Italian gui translator prevajalec uporabniškega vmesnika v italjanščino using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester prevajalec uporabniškega vmesnika v ruščino in pomemben preizkuševalec Kenny Verstraete Kenny Verstraete Dutch gui translator prevajalec uporabniškega vmesnika v nizozemščino Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer prevajalec uporabniškega vmesnika v bosanščino in vzdrževalec paketa mandriva Majed Sahli Majed Sahli Arabic gui translator prevajalec uporabniškega vmesnika v arabščino Adrian Murariu Adrian Murariu Romanian gui translator prevajalec uporabniškega vmesnika v romunščino Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer oblikovalec uporabniškega vmesnika različice 0.3 fri13 fri13 v.0.3 gui designer oblikovalec uporabniškega vmesnika različice 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Brez njegovih vodnikov, ta projekt ne bi nikoli zaživel Thomas Glatt Thomas Glatt French gui translator prevajalec uporabniškega vmesnika v francoščino Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator prevajalec uporabniškega vmesnika v španščino Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator prevajalec uporabniškega vmesnika v švedščino Catalan gui translator prevajalec uporabniškega vmesnika v katalonščino Slovak gui translator prevajalec uporabniškega vmesnika v slovaščino Rivo Zangov Rivo Zangov Estonian gui translator Prevajalec vmesnika v estonščino Nicolay Boychev Nicolay Boychev Bulgarian gui translator prevajalec uporabniškega vmesnika v bolgarščino Manuel Meixide Manuel Meixide Galician gui translator prevajalec uporabniškega vmesnika v galščino Roger Foss Roger Foss Norwegian gui translator prevajalec uporabniškega vmesnika v norveščino Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator prevajalec uporabniškega vmesnika v kitajščino Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) posebni gost - razhroščevalec ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist pomemben preizkuševalec in strokovnjak za prepih možgan Yuri Vidal Yuri Vidal backupwhenidle python script developer razvijalec skriptov backupwhenidle python Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester preizkuševalec sistemov OS/2 in Windows ...to all users of the Uporabnikom forumov forums for their support. za njihovo podporo Especially in uporabnikom that contributed to this project one way or another ki so prispevali k temu projektu na tak ali drugačen način. Last but no least Nazadnje, a ne najmanj pomembno pa Could not locate the license file Datoteke dovoljenja ni mogoče najti no money Ne sprejemam denarja If you like this app and would like to donate something to me personally, all you have to do is: Če vam je program všeč, in bi radi spodbudili razvoj, morate le: Give a thumbs up at: spodbuditi me k delu preko: Vote good & become a fan at: glasovati in postati oboževalec na: This is my reward :) To je prava nagrada zame! :) money Če pa bi vseeno radi podarili denar I personally never had and never will accept money for this project. Sam nikoli nisem in nikoli ne bom sprejemal denarja za razvoj tega projekta. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Kljub vsemu pa lahko s programom luckyBackup podprem ljudi, ki finančno pomoč zares potrebujejo. So, please consider it seriously to donate money that will eventually be used for a good cause. Če želite lahko denar podarite v dobrodelne namene. donation link Več podrobnosti za dobrodelnost je na spletni strani. luckyBackup - about luckyBackup - o programu close zapri &About &O programu <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Podpora A&uthor A&vtor &Thanks to &Zahvale &License Agreement &Dovoljenje luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! Program luckyBackup se razširja pod pogoji <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Splošnega Javnega dovoljenja GNU</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Ta program je <b>prosta programska oprema</b>; lahko ga razširjate in/ali spreminjate pod pogoji Splošnega Javnega dovoljenja GNU kot je objavljena s strani Free Software Foundation; različice 3. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) vzdrževalec paketa za Fedoro (uradno skladišče) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Žnidaršič Slovenian gui translator prevajalec uporabniškega vmesnika v slovenščino E. Hakan Duran E. Hakan Duran Turkish gui translator prevajalec uporabniškega vmesnika v turščino Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) vzdrževalec paketov Slackware (skladišče SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development se zahvaljujem moji drugi polovici <b>Dimitri</b>, ki me pri delu ves čas podpira. emailDialog luckyBackup - email luckyBackup - elektronska pošta Email a report after profile execution Pošlji poročilo command: Ukaz: Use default This means "use the default value for this field" Uporabi privzeto Arguments Argumenti %f from: Od (%f): Enter the sender of the message Podatki pošiljatelja sporočila %l logfile Dnevniška datoteka (%l) %c logfile.tar.gz Datoteka logfile.tar.gz (%c) %d date Datum (%d) %i time Čas (%i) %p profile name Ime profila (%p) %e No of errors Število napak (%e) If unchecked "TLS auto" is used. Only available for sendemail Če izbira ni izbrana, je uporabljen možnost "Samodejni TLS". Na voljo je le za ukaz sendmail. Disable TLS Onemogoči TLS %t to: Za (%t): Enter the recipient of the message Podatki prejemnika sporočila %s subject: Zadeva (%s): Enter the subject of the message Zadeva sporočila %v smtp server: Strežnik SMTP (%v): Enter the smtp server used to send the message Podatki strežnika SMTP za pošiljanje sporočila %b body: Besedilo (%b): Enter the body of the message Besedilo sporočila Send an email right now to test the provided arguments Pošlji sporočilo takoj za preverjanje navedenih argumentov Test Pošlji preizkusno Accept changes and close dialog Sprejmi spremembe in zapri pogovorno okno Okay V redu Close dialog Zapri pogovorno okno Cancel Prekliči Specify the conditions to send an email Določitev pogojev za pošiljanje elektronske pošte Enter the command to run eg sendemail Ukaz, ki naj se izvede za pošiljanje sporočila; na primer: sendemail arguments: argumenti: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Argumenti, ukaza za pošiljanje elektronskih sporočil; na primer: -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Pogoji Only send when error(s) occured during a run Pošlji le, ko so napake zaznane med zagonom Error(s) occured Pojavile so se napake Only send when profile is scheduled to run Pošlji le, ko je profil časovno določen za izvajanje Profile is scheduled Izvajanje profila je načrtovano Never send an email Ne pošiljaj poročil po elektronski pošti Never Ne pošiljaj poročil The command field is empty Ukazno polje je prazno. helpBrowser luckyBackup - help luckyBackup - pomoč manual/ priročnik/ Okay V redu logDialog luckyBackup - tasks execution progress luckyBackup - napredek izvajanja opravil <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error predhodna napaka next error naslednja napaka close zapri loading logfile... nalaganje dnevniške datoteke ... wait počakajte luckyBackupWindow commands output output window label Okno izpisa izvajanja ukazov rsync and pre/post task commands output is displayed here tooltip Odvod ukazov rsync in ukazov izvedenih pred ali po opravilih je izpisan tukaj Task list task list label Seznam opravil List of all the available tasks task list tooltip - line1 Seznam vseh razpoložljivih opravil Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Uporabite 'potrditvena polja za vključevanje' za preklop omogočanja izbranega opravila Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Izvajanje profila finished full phrase: 'Execution of profile <PROFILENAME> finished' je končano simulation mode navidezni način Could not update last execution time of tasks Časa zadnjega izvajanja opravila ni mogoče posodobiti Last execution time of tasks updated Datum in čas zadnjega izvajanja opravila sta posodobljena &Abort &Prekini &Minimize to tray tray menu action &Skrči v sistemsko vrstico &Restore tray menu action &Obnovi execution of profile: tray message - execution of profile: <PROFILENAME> in progress... izvajanje profila: in progress... tray message - execution of profile: <PROFILENAME> in progress... v izvajanju ... Removed all older snapshots data Odstranjeni so vsi podatki starejših posnetkov failed to remove all older snapshots data odstranjevanje podatkov starejših posnetkov je spodletelo Unknown error Neznana napaka Elapsed time Čas izvajanja pre-task execution of command izvajanje ukaza pred opravilom post-task execution of command izvajanje ukaza po opravilu Now performing task Trenutno izvajanje opravila Directory Mapa calculating poteka izračunavanje deleting files brisanje datotek Total files transferred trying to send an email Izvajanje poskusa pošiljanja elektronskega sporočila The system will shutdown in 1 minute Sistem bo zaustavljen v 1 minuti Source Vir Destination Cilj All tasks completed Vsa opravila so končana No errors found Ni najdenih napak errors found zaznane so napake logfile(s) have been created under directory: Dnevniške datoteke so ustvarjene v mapi: Done Končano execution of profile: izvajanje profila: finished končano Execution of tasks were terminated violently by user Izvajanje opravil je prekinjeno s strani uporabnika &Profile This is a top menu item &Profil &Settings This is a top menu item &Nastavitve &Language This is a top menu item &Jezik &Help This is a top menu item Pomo&č &Handbook full phrase: 'luckyBackup Handbook' &Priročnik &About full phrase: 'about luckyBackup' &O programu current profile trenutni profil include label of 'include' checkboxes Vključi Move the highlighted task up, by one position button tooltip Premakni označeno opravilo za eno mesto višje Move the highlighted task down, by one position button tooltip Premakni označeno opravilo za eno mesto nižje jump to next error button tooltip skoči na naslednjo napako jump to previous error button tooltip skoči na predhodno napako Task task groupbox (add, remove, modify buttons) label Opravilo add add task button label Dodaj add task add task button tooltip Dodaj opravila na seznam remove remove task button label Odstrani remove highlighted task remove task button tooltip Odstrani izbrana opravila modify modify task button label Spremeni modify highlighted task modify task button tooltip Spremeni nastavitve izbranega opravila Begin the execution of all included tasks start button tooltip Začni z izvajanjem vseh izbranih opravil NOTE simulation checkbox tooltip - line2 OPOMBA Progressbar update will not be realistic simulation checkbox tooltip - line2 Posodabljanje vrstice napredka ne bo povsem natančno Information window information window title Okno podrobnosti Exit exit button tooltip. full phrase is: 'exit luckybackup' Končaj EXIT EXIT button label KONČAJ minimize to tray Skrči v sistemsko vrstico minimizes the window to the tray area Skrči okno v sistemsko vrstico F1 F1 English Slovenščina &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Zahtevali ste zagon opravila za OBNOVO Please have a good look at the following task properties dialog 'create restore' message line 2/4 Natančno si poglejte lastnosti opravil v pogovornem oknu and change anything you wish before proceeding 'create restore' message line 3/4 in pred nadaljevanjem spremenite opravila Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Še posebej natančno preverite 'Ime opravila', 'vir', 'cilj', in izbirno polje 'preskoči novejše ciljne datoteke' (napredno) ERROR NAPAKA loading default profile ... information window message Poteka nalaganje privzetega profila ... loading profile ... information window message nalaganje profila ... loading failed information window message nalaganje je spodletelo Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Ni mogoče odpreti profila is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y ni veljaven za version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y različice: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' Profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' je uspešno naložen scheduled this refers to a profile načrtovan YES DA NO NE Description Opis saving default profile ... Information window message shranjevanje privzetega profila ... saving profile ... Information window message shranjevanje profila ... WARNING OPOZORILO default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Privzetega profila z imenom profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' Profila profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' Profil z imenom saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' je uspešno shranjen. creating default profile ... Information window message Poteka ustvarjanje privzetega profila ... creating profile ... Information window message Poteka ustvarjanje profila ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' je uspešno ustvarjen. Would you like to save it before proceeding ? Ali želite profil shraniti pred nadaljevanjem? Would you like to proceed anyway? Ali želite vseeno nadaljevati? super user super user is the root user Skrbniški dostop super user mode Skrbniški način Welcome to full phrase: 'Welcome to luckyBackup' Dobrodošli v English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Slovenščina Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Ustvarjanje novega profila je spodletelo The name you have entered contains only invalid characters Ime, ki ste ga vnesli, vsebuje le neveljavne znake Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' že obstaja Would you like to replace it ? Ali ga želite zamenjati? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Zamenjava profila je spodletela Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Preimenovanje profila je spodletelo profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' je uspešno preimenovan v default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Privzeti profil z imenom renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' je uspešno preimenovan v All relevant files (logs etc) have also been updated Vse pomembne datoteke (dnevniki in podobno) so prav tako posodobljene Failed to update all relevant files (logs etc) Posodabljanje vseh pomembnih datotek (dnevnikov in podobno) je spodletelo Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Ali ste prepričani, da želite izbrisati privzeti profil? a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' ustvarjen bo nov, prazen, z enakim imenom Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Ali ste prepričani, da želite izbrisati profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Brisanje profila je spodletelo Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' je uspešno izbrisan All relevant files (logs etc) have also been deleted Vse pomembne datoteke (dnevniki in podobno) so bile izbrisane Failed to delete all relevant files (logs etc) Brisanje vseh pomembnih datotek (dnevnikov in podobno) je spodletelo Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' je nastavljen kot privzeti All relevant files (logs etc) have also been duplicated Podvojene so tudi vse pomembne datoteke (dnevniki in podobno) Failed to duplicate all relevant files (logs etc) Podvajanje pomembnih datotek (dnevnikov in podobno) je spodletelo The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Opis profila set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' je nastavljen na Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Uvoz profila Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Uvoz profila je spodletel Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' je uspešno uvožen as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' kot and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' in dodan na seznam profilov Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Ni mogoče določiti mesta datoteke You have reached the maximum limit of supported tasks Doseženo je največje dovoljeno število opravil za izvajanje You have to remove a task if you wish to add another !! Pred dodajanjem novega opravila je treba odstraniti eno staro! Select export directory this is a dialog title for selecting a directory to export a profile to Izbor mape za izvoz Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Napaka izvažanja profila to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' v Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' je uspešno izvožen v The directory you have selected does not contain valid profile data V izbrani mapi ni datoteke z ustreznimi podatki profila Errors occured during snapshots and logfiles transfer Prišlo je do napak med prenosom posnetkov podatkov in dnevniških datotek Errors occured during snapshots transfer Prišlo je do napak med prenosom posnetkov podatkov Errors occured during logfiles transfer Prišlo je do napak med prenosom dnevniških datotek Errors occured during the profile file transfer Prišlo je do napak med prenosom datoteke profila Please select a task to modify first Najprej je treba izbrati opravilo za spreminjanje Please select a task to remove first Najprej je treba izbrati opravilo za odstranitev Are you sure you want to remove the following task ?? Ali ste prepričani, da želite odstraniti navedeno opravilo? Would you like to also remove: Ali želite odstraniti tudi: Please select a task to manage first Najprej je treba izbrati opravilo za upravljanje nothing to do ni mogoče napraviti ničesar current crontab <font color=green>updated successfully Trenutna seja ukaza crontab <font color=green>je uspešno posodobljena Email preferences have been <font color=green>updated successfully Nastavitve elektronske pošte so <font color=green>uspešno posodobljene status stanje NOT INCLUDED NI VKLJUČENO Checks are disabled. This task will be <b>skipped</b> Preverjanja so onemogočena. Ta opravila <b>ne bodo izvedena</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Seznam opravil profila and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' in spustni meni 'profila' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' sta osvežena luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Okno podrobnosti CheckBox Izbirno polje <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Poteka preklic izvajanja: počakati je treba na uničenje vseh dejavnih opravil Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Poteka odstranjevanje starih posnetkov in dnevniških datotek opravila Removing Odstranjevanje failed to remove Odstranjevanje je spodletelo Failed to start this refers to a process Začenjanje je spodletelo Crashed this refers to a process Opravilo je spodletelo Timed out this refers to a process Časovno poteklo Write error this refers to a process Napaka pisanja Read error this refers to a process Napaka branja Unknown error this refers to a process Neznana napaka calculating info message displayed during ...calculations Poteka izračunavanje transferring files info message displayed during ...file transfers Poteka usklajevanje datotek deleting files info message displayed during ...file deletions Poteka brisanje datotek transferring files Poteka prenašanje datotek Total files transfered Skupno število usklajenih datotek ABORTED PREKLICANO &Refresh This is a top 'Profile' menu action &Osveži De&fault This is a top 'Profile' menu action Pri&vzeto Set as Default This is a top 'Profile' menu action tooltip Nastavitev kot privzeto &View/Edit Description This is a top 'Profile' menu action &Poglej/Uredi opis View/Edit the profile description This is a top 'Profile' menu action tooltip Pogled oziroma urejanje opisa profila R&ename This is a top 'Profile' menu action Pr&eimenuj &Delete This is a top 'Profile' menu action &Izbriši &New This is a top 'Profile' menu action &Novo &Save This is a top 'Profile' menu action &Shrani E&xport This is a top 'Profile' menu action I&zvozi &Import This is a top 'Profile' menu action &Uvozi S&chedule This is a top 'Profile' menu action R&azporedi E&mail This is a top 'Profile' menu action &Pošlji poročilo Email report after profile execution This is a top 'Profile' menu action tooltip Pošlje poročilo po elektronski pošti po izvajanju opravil &Quit This is a top 'Profile' menu action &Končaj D&uplicate This is a top 'Profile' menu action Po&dvoji &Task This is a top menu action &Opravilo &Add This is a top 'Task' menu action &Dodaj &Remove This is a top 'Task' menu action &Odstrani &Modify This is a top 'Task' menu action &Spremeni Create D&uplicate task This is a top 'Task' menu action Ustvari &dvojnik opravila Create R&estore task This is a top 'Task' menu action Ustvari opravilo &obnove Manage &Backup This is a top 'Task' menu action Upravljanje &varnostne kopije display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip prikaži - obnovi - izbriši obstoječe varnostne kopije izbranih opravil Actions This is a top menu action Opravila Current Profile This is a top menu action Trenutni profil Lock This is a top menu action. Refers to toolbars Zakleni Show text under icons This is a top menu action Pokaži besedilo pod ikonami &Toolbars This is a top menu item &Orodne vrstice Set paths This is a top menu action Nastavi poti Set paths for rsync and ssh commands This is a top menu action tooltip Nastavitev poti do ukazov rsync in ssh quiet mode Tihi način Only show errors and important messages during window update Pokaži le napake in pomembna obvestila med posodabljanjem okna Run start button label Zaženi Abort Abort button label Prekini Stop the execution of running tasks NOW Abort button tooltip TAKOJ zaustavi izvajanje opravil Execution of tasks finished Done button tooltip Izvajanje opravil je končano Dry simulation checkbox label. Translate this as 'simulation' Navidezno This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Izbrana možnost omogoči izvajanje opravil v <b>navideznem načinu</b>. Med preizkusnim izvajanjem se usklajevanje ne izvede (pripravljen pa je odvod, ki je večinoma enak odvodu pravega zagona). shutdown shutdown button label Izklopi Press down to shutdown the system when done shutdown button tooltip Izklopi sistem po koncu izvajanja opravil Hide information window show/hide information window button tooltip Skrij okno podrobnosti Show information window show/hide information window button tooltip Pokaži okno podrobnosti profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Profil The task list is empty Seznam opravil je prazen Use the "add" button on the right to get started Please keep the add word inside quotes Uporabite gumb "dodaj" za začetek priprave could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' ni mogoče shraniti. default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Privzetega profila could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' ni mogoče ustvariti. Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' je spremenjen. Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profila could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' ni mogoče shraniti. profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Profila Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Spodletelo je podvajanje profila Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Spodletelo je podvajanje profila as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' kot Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' je bil uspešno podvojen kot Please select a task to duplicate first Najprej izberite opravilo za podvajanje Please select a task first Najprej je treba izbrati opravilo Hide information window hide/show information window button tooltip Skrije okna podrobnosti Show information window hide/show information window button tooltip Prikaži okno podrobnosti You have only included tasks that are going to be skipped Vključene so le naloge, ki bodo preskočene Manage Task This is a top 'Task' menu action Upravljanje opravila display information regarding highlighted task This is a top 'Task' menu action tooltip Prikaže podrobnosti o izbranem opravilu &Task &Opravilo Successfully created destination directory Ciljna mapa je uspešno ustvarjena Failed to create destination directory Ustvarjanje ciljne mape je spodletelo manageDialog profile profil task opravilo Delete Izbriši Restore Obnovi view log Ogled dnevnika destination: cilj: source: vir: hide source skrij vir Close this window Zapri to okno Close Zapri Please select a snapshot from the list Information message Izberite posnetek s seznama This directory does not exist Ta mapa ne obstaja This directory does not exist Information message Ta mapa ne obstaja I do not have sufficient permissions to read this directory Information message Ni ustreznih dovoljenj za branje določene mape sync dir A full phrase: sync dir a: <DIRECTORY_A> uskladi mapo A sync dir B full phrase: sync dir a: <DIRECTORY_b> uskladi mapo B View the logfile of the selected sync task 'view log' pushbutton tooltip Ogled datoteke dnevnika usklajevanja izbranega opravila Please wait until the thread is terminated Počakajte, dokler se nit ne konča STOP USTAVI Stop calculations NOW TAKOJ ustvari izračunavanje Calculations terminated by user Uporabnik je preklical izračunavanje not available refers to a date-time ni na voljo luckyBackup - manage backup luckyBackup - upravljanje varnostne kopije Delete the selected snapshot and its logfile Izbriši izbrani posnetek in pripadajočo dnevniško datoteko Restore the selected snapshot Obnovi izbrani posnetek View the logfile of the selected snapshot Oglej si dnevniško datoteko izbranega posnetka Calculate the differences between the source and the selected snapshot Izračunaj razliko med virom in izbranim posnetkom Calculate differences Izračunaj razlike manageWizard not available refers to a date-time ni na voljo Delete backup this is the title of a wizard Izbriši varnostno kopijo Date & time simple label of the wizard gui Datum in čas Path ...is a directory path Pot WARNING OPOZORILO You are about to delete backup data information message - line1 Izbrisali boste podatke varnostne kopije If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Če so podatki zgoraj pravilni, kliknite na gumb za <b>začetek</b> Restore backup this is the title of a wizard Obnovi iz varnostne kopije Backup path ...is the backup directory path Pot do varnostne kopije close zapri Deleting snapshot logfile info message displayed during ...logfile deletion Brisanje dnevniške datoteke posnetka Updating list of snapshots info message displayed during ...snaps list update Posodabljanje seznama posnetkov Aborted Prekinjeno Finished Končano simulation navidezno no errors brez napak errors found najdene so napake Restoring data: main trunk info message displayed during ...data restoration Obnavljanje podatkov: glavno deblo Restoring data: snapshot files info message displayed during ...data restoration Obnavljanje podatkov: datoteke posnetkov Deleting data info message displayed during ...data deletion Brisanje podatkov luckyBackup - manage backup luckyBackup - upravljanje varnostnih kopij Jump to previous error Skoči na predhodno napako previous error predhodna napaka Jump to next error Skoči na naslednjo napako next error naslednja napaka This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Izbrana možnost omogoči izvajanje opravil v <b>navideznem načinu</b>. Med preizkusnim izvajanjem se usklajevanje ne izvede (pripravljen pa je odvod, ki je večinoma enak odvodu pravega zagona). start začni ABORT PREKINI cancel prekliči The restore directory will become identical to the backup snapshot Mapa za obnovo bo po usklajevanju enaka posnetku varnostne kopije Existing backup files will replace the corresponding files at the restore directory information message - line1. Obstoječe datoteke varnostne kopije bodo zamenjale ustrezne datoteke v mapi obnove If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' V primeru da so podatki zgoraj pravilni, kliknite <b>začni</b> za začetek usklajevanja. success info message displayed after ...logfile deletion uspešno končano failed info message displayed after ...logfile deletion spodletelo Deleting file that lists snapshot changes info message displayed during ...file deletion Brisanje datoteke s shranjenimi podatki o spremembah posnetka success info message displayed after ...file deletion uspešno končano failed info message displayed after ...file deletion spodletelo success info message displayed after ...snapshots list update uspešno končano Select new restore directory directory selection dialog title Izbor nove mape za obnovo Restore path ...is the restore directory path Pot do posnetka za obnovo No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Ni podatkov za določen posnetek. Opravilo bo preskočeno ... Check this, to clone the backup snapshot to the restore directory. Izbrana možnost klonira posnetek varnostne kopije v mapo za obnovo. Delete existing data that do not exist at the backup Izbriši obstoječe podatke, ki ne obstajajo v varnostni kopiji Browse locally for a new restore path Izberi novo mapo za obnovo change Spremeni <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple enostavno advanced napredno Task name Ime opravila Destination Cilj Source Vir Task properties Lastnosti opravila Enter a name for this task (eg "Backup my home directory") Vnesite ime za opravilo (na primer: "Varnostna kopija osebne mape") Name : Ime: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Določite vrsto opravila: 1. Varnostna kopija vsebine vira - znotraj cilja 2. Varnostna kopija mape vira po imenu - znotraj cilja 3. Usklajevanje vira in cilja z ohranjanjem najnovejših datotek obeh mest Type : Vrsta: Synchronize Source and Destination Uskladi vir in cilja Enter the full path of the source directory (eg /home/luckyb/) Polna pot do mape vira (na primer /home/luckyb/) Source : Vir za usklajevanje: browse localy krajevno brskanje Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Polna pot do mape cilja (na primer /media/varnostne_kopije/januar09/) Destination : Ciljno mesto: eg -C4c arcfour,blowfish-cbc na primer -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Možnost omogoča prenos števlčnih vrednosti skupin in določil ID preko rsync in ne z uporabo imen uporabnikov in skupin, ki jih ukaz na obeh mestih preslika. (--numeric-ids) Use numeric group and user IDs Uporabi številčne vrednosti skupin in določil ID This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Poskusi izvajanje s skrbniškimi dovoljenji Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Poskusi ustvariti varnostne kopije odprtih datotek z uporabo vss (Deluje le na sistemih različice Windows 2000 ali novejše) (--vss) Backup open files Ustvari varnostno kopijo odprtih datotek Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Obnovi varnostne kopije dovoljen Windows na sistemih NT (--restore-nt-streams) Repeat any command that fails, x times Poskusi izvesti ukaze, ki spodletijo, x krat. Repeat on fail: Poskusi izvesti: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Ne ustvari dodatnih map Advanced Napredno Shows the rsync command as it will be executed Pokaže ukaz rsync, kot je izveden validate Potrdi Okay V redu Cancel Prekliči Exclude Izloči Add any directory, file or pattern to be excluded from this task Dodajanje katerekoli mape, datoteke ali vzorca, ki ne bo upoštevana pri izvajanju opravila Templates Predloge Exclude all temp folders (**/*tmp*/) Izloči vse začasne mape (**/*tmp*/) Temporary folders Začasne mape Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Izloči sistemske priklopne mape /mnt in /media (/mnt/*/**, /media/*/**) System mount folders Mape sistemskega prikopa Exclude all backup files & folders (**~) Izloči vse datoteke in mape varnostnih kopij (**~) Backup files Datoteke varnostnih kopij System folders Sistemske mape Exclude all cache folders (**/*cache*/ & **/*Cache*/) Izloči mapo predpomnilnika (**/*cache*/ & **/*Cache*/) Cache folders Mape predpomnilnika Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Izloči mapo uporabniških map (**/*Trash*/, **/*trash*/) Trash Smeti Exclude all "lost+found" folders (**/lost+found*/) Izloči mapo "izgubljeno in najdeno" (**/lost+found*/) lost+found Mapa izgubljeno+najdeno User Defined Uporabniško določeno Add exclusion as entered in the next field Dodaj vpisan ukaz za izločitev add Dodaj Exclude list Izločitveni seznam Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Na to mesto vnesite datoteko, mapo ali vzorec in pritisnite gumb "dodaj" za dodajanje na izločitveni seznam. * - se sklada s katerokoli neprazno enoto (konča se s poševnico) ** - se sklada z vsem, vključno s poševnicami ? - se sklada s katerimkoli znakom, razen poševnice sledeči vzorec imena_mape /*** - sklada se z mapo in celotno njeno vsebino začetni vzorec / -vzorec je zasidran na določeno mesto v hierarhiji prenosa (običajno je to "vir") sledeči vzorec / - sklada se le mapa, ne navadne datoteke, simbolne povezave ali naprave Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Ustvari varnostno kopijo znotraj ciljnega mesta Description Opis Task description Opis opravila Type a description of the task Vpis opisa opravila Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Izloči sistemske mape /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Izloči vse uporabniške mape .gvfs (**/.gvfs/) launch the pattern editor zagon urejevalnika vzorcev Remove highlighted exclusion from list Odstrani izbrana določila za izključitev s seznama remove Odstrani Edit highlighted inclusion Uredi izbran vnos za vključevanje edit Uredi Move highlighted inclusion up Premakni izbran vnos navzgor move up Premakni višje Move highlighted inclusion down Premakni izbran vnos navzdol move down Premakni nižje Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Vključi le navedeno Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Na to mesto vnesite datoteko, mapo ali vzorec in pritisnite gumb "dodaj" za dodajanje na seznam za vključitev * - nadomešča katerikoli prazen znak (konča se s poševnico) ** - nadomešča katerikoli prazen znak, vključno s poševnicami ? - nadomešča katerikoli prazen znak, razen poševnice začetno ime_mape /*** - se sklada z mapo in celotno njeno vsebino začetni znak / - je vzorec, zasidran na določeno mesto v hierarhiji prenosa (običajno je to "izvir") začetni znak / - se sklada le z mapo, ne pa tudi z datotekami, simbolnimi povezavami ali napravami Add inclusion as entered in the next field Dodaj vključitev, kot je navedena v polju Include list Seznam vključitev Remove highlighted inclusion from list Odstrani izbrane vnose s seznama Remote Oddaljeno Use a remote host either for source or destination Uporabi oddaljeno mesto kot vir ali cilj podatkov. Use remote host Uporabi oddaljeno mesto Use a remote host for destination data. Uporabi oddaljeno mesto kot cilj podatkov. destination Uporabi kot cilj Use a remote host for source data. Uporabi oddaljeno mesto kot vir podatkov source Uporabi kot vir User: Uporabnik: Enter your username for the remote host (leave blank if not applicable). Vnesite uporabniško ime za oddaljenega gostitelja (pustite prazno, če ni smiselno) @Host: @Gostitelj: Enter the name of the remote host. Vnesite ime oddaljenega gostitelja. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Vnesite polno pot datoteke, ki vsebuje overitveno geslo za rsync (in ne ssh) (pustite prazno, če ni smiselno). rsync password file: Datoteka gesla rsync: Check this to connect to an rsync Remote module Omogoči povezavo z oddaljenim mestom preko modula rsync Remote module Modul za oddaljeno povezavo Use ssh as transport shell Omogoči uporabo ukaza ssh kot lupine prenosa ssh SSH password: Geslo: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Vnesite polno pot datoteke, ki vsebuje zasebni overitveni ključ za ssh (pustite prazno, če ni smiselno). Vsa opravila preko povezave ssh je treba izvesti z uporabo para ključev OpenSSH. private key file : Datoteka zasebnega ključa: Enter the port you would like to use for the ssh connection (leave blank for default port) Vrata za povezavo ssh (pustite prazno za privzeta vrata) port : Vrata: Command Options Možnosti ukaza Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Dodajanje ali odstranitev možnosti rsync. Če niste prepričani, kaj to pomeni, pustite možnosti nespremenjene! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Kopiranje naprav (le skrbnik) in posebnih datotek, takšnih kot so (-D) Preserve device, special files Ohrani napravo in posebne datoteke Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Datoteke, ki so na izvornem mestu povezane s trdimi povezavami, bodo enako povezane tudi na cilju OPOZORILO: Vse te datoteke morajo biti vključene v prenosnem nizu! (-H) Preserve hard links Ohrani trde povezave Delete files on the destination Izbriši datoteke na ciljnem mestu Recurse into directories (-r) Izvedi rekurzivno (-r) Recurse into directories Rekurzivno upoštevaj podrejene mape Do not backup source files that are newer on the destination (--update) Ne ustvari varnostnih kopij datotek, ki so v ciljni mapi novejše (--update) Skip newer destination files Preskoči novejše ciljne datoteke Preserve the owner (super user only), group & time stamp of files (-tgo) Ohrani podatke o lastništvu (zahteva skrbniška dovoljenja), skupini in časovnem žigu datotek (-tgo) Preserve ownership, times Ohrani lastništvo in čas Preserve permissions of files (-p) Ohrani dovoljenja datotek (-p) Preserve permissions Ohrani dovoljenja Copy symlinks as symlinks (-l) Kopiraj simbolnih povezav kot simbolne povezave (-l) Preserve symlinks Ohrani simbolne povezave Ignore files using a similar algorithm to CVS (-C) Prezri datoteke z uporabo algoritma, podobnega CVS (-C) Ignore files the CVS way Prezri datoteke na način CVS User defined Uporabniška določila Enter here an rsync option to add (eg "--delete-excluded", "-X") Dodatne možnosti ukaza rsync (na primer "--delete-excluded", "-X") Extra rsync options list Seznam dodatnih možnosti rsync Remove highlighted option from list Odstrani izbrane možnosti s seznama Add rsync option as entered in the next field Dodaj možnost rsync, kot je vpisana v ukaznem polju options list seznam možnosti Also Execute Izvedi tudi ... Execute extra commands, before or after the task. Izvajanje dodatnih ukazov, pred ali po izvajanju opravila. Before Pred izvajanjem opravila Enter here a command to be executed before the task and then press the "add" button to add it to the list below Vpišite ukaz, ki naj bo izveden pred izvajanjem opravila, in pritisnite gumb za "dodajanje" na seznam Add command as entered in the field beside Dodaj ukaz kot je vpisan v vnosno polje Command list Seznam ukazov Remove highlighted command from list Odstrani izbran ukaz s seznama Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Izvede ukaz kljub zaznanem OPOZORILU. Možnost se običajno uporablja, ko se z ukazi, ki so "izvedeni pred" opravilom, odpravijo napake (na primer: priklopi se razdelek). OPOZORILO: neustrazna raba možnosti, lahko vodi v neželene posledice! by-pass WARNING Prezri OPOZORILA After Po izvajanju opravila Enter here a command to be executed after the task and then press the "add" button to add it to the list below Vpišite ukaz, ki naj bo izveden po izvajanju opravila, in pritisnite gumb za "dodajanje" na seznam Select source directory file selection dialog title Izbor mape vira Select destination directory file selection dialog title Izbor mape cilja Select rsync password file file selection dialog title Izbor datoteke gesla rsync Select ssh keyfile file selection dialog title Izbor datoteke ključa ssh Select command to be executed file selection dialog title Izbor ukaza za izvedbo Select file to read include patterns file selection dialog title Izbor datoteke z vzorci za vključevanje Select file to read exclude patterns file selection dialog title Izbor datoteke z vzorci za izločanje Please define the source before launching the pattern editor message box, message Pred zaganjanjem urejevalnika vzorcev je treba določiti vir. ERROR message box message NAPAKA Please specify the following before proceeding: message box, message Pred nadaljevanjem je treba določiti: ERROR message box message - line1 NAPAKA That is not allowed because '/' does not have an actual name message box message - line2 Vpis ni dovoljen, saj '/' nima dejanskega imena Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Uporabite polja za <b>USTAVITEV</b> izvajanja opravila ob napaki You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 Izberite ustrezna izbirna polja pred nadaljevanjem You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 Dejanje ni dovoljeno, saj korenska mapa nima pravega imena The name of the task you requested already exists message box message - line1 Ime zahtevanega opravila že obstaja Please specify a different name before proceeding message box message - line2 Pred nadaljevanjem je treba določiti drugo ime The source you have declared is identical to the destination message box message - line1 Napovedan vir je enak cilju Please modify at least one of them message box message - line2 Spremenite vsaj eno od možnosti WARNING message box message - line1 OPOZORILO You have declared a destination that is part of the source directory structure message box message - line1 Napovedan je cilj, ki je del izvorne mape <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Ne pozabite</b> določiti mape v polju skupine 'izloči', ki bo vsebovala cilj You have checked the 'delete files on the destination' option message box message - line2 Izbrana je možnost 'izbriši datoteke na cilju' without having checked 'Recurse into directories' which is required message box message - line3 brez izbire zahtevanega 'Rekurzivno v mape' 'Remote Host' is checked, but no remote host name is declared message box message - line2 Možnost 'oddaljeni gostitelj' je izbrana, ni pa določenega gostitelja Please specify a remote host name message box message - line3 Določite ime oddaljenega gostitelja Otherwise uncheck 'Remote Host' to operate locally message box message - line4 V nasprotnem primeru odznačite 'Oddaljeni gostitelj' za krajevno delovanje All declared fields of the task properties window seem to be ok message box message first line Vsa napovedana polja okna lastnosti opravila so videti v redu Errors have been found message box message first line Med izvajanjem so bile zaznane napake command to be executed full phrase: command to be executed: <COMMAND> Ukaz za izvedbo You have already added this exclude item message box message Ta izločitveni predmet je že dodan You have already added this include item message box message Ta predmet je že dodan za vključitev You have already added this option message box message Ta možnost je že dodana done končano done editing urejanje je končano cancel prekliči cancel editing prekliči urejanje Read exclude patterns from file Naloži vzorce izločevanja iz datoteke Read file: Naloži iz datoteke: filename ime datoteke browse Odpri mesto ... ... Include Vključi Add any directory, file or pattern to be included by this task Dodajte katerokoli mapo, datoteko ali vzorec, ki naj bo vključen v to opravilo Include mode Način vključevanja datotek in map Mode: Način: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Ne izloči tega seznama vzorcev. Za boljše razumevanje pravil vključevanja si oglejte priročnik. Normal Include Običajno vključevanje Read include patterns from file Naloži vzorce vključevanja iz datoteke browse locally brskaj krajevno additional options: dodatne možnosti: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Možnost izberite, kadar je ciljno mesto na razdelku FAT ali NTFS. V tem primeru podatki o lastništvu in dovoljenja NE BODO ohranjena. (-t --modify-window=1) Destination is FAT/NTFS Cilj je v zapisu FAT ali NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Poskusi ustvariti varnostne kopije odprtih datotek z uporabo vss (Deluje le na sistemih različice Windows 2000 ali novejše) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Obnovi dovoljenja Set the total number of backup snapshots to keep Nastavite skupno število shranjenih posnetkov varnostnih kopij Snapshots to keep: Število ohranjenih posnetkov: patternEditor directory : Mapa: Select file Izbor datoteke Please choose a file within the source Izberite datoteko znotraj vira Select directory Izbor mape Please choose a directory within the source Izberite mapo znotraj vira file : datoteka: pattern editor urejevalnik vzorcev Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Možnost izberite za uporabo mape, navedene zgoraj, kot absolutne poti Če možnost ni izbrana, bo vzorec skladen s katerokoli datoteko ali mapo, ki ustreza kriteriju "imena". Define here, what would you like the pattern to refer to Tukaj je mogoče določiti, na kaj naj se nanaša vzorec The pattern refers to a: Vzorec se nanaša na: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Možnost uporabite, če se vzorec nanaša na določeno datoteko; na primer: "/media/glasba/album/skladba.ogg" Specific file Določena datoteka Use this if the pattern refers to a specific directory eg "/media/music/Album/" Možnost uporabite, če se vzorec nanaša na določeno mapo; na primer: "/media/glasba/album/" Specific directory Določena mapa Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Možnost uporabite, če se vzorec nanaša na niz datotek, ki imajo nekaj skupnega; na primer: vse datoteke s pripono ".txt" Set of files Niz datotek Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Možnost uporabite, če se vzorec nanaša na niz map, ki imajo nekaj skupnega; na primer; vse mape imenovane "temp" Set of directories Niz map name ime starts with : se začne z nizom: Enter here the starting characters of the name of the files/directories that the pattern refers to Vnesite začetne znake imena datotek ali map, na katere se nanaša vzorec ends with : se konča z nizom: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Vnesite končne znake imena datotek ali map, na katere se nanaša vzorec; na primer: za vse datoteke ".txt" vnesite .txt Enter here the name of the files/directories that the pattern refers to Vnesite imena datotek ali map, ki ga določa vzorec is exactly : je natanko: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Znaki, ki so del imena datoteke ali mape, na katere se nanaša vzorec contains : vsebuje: browse localy for a file krajevno brskanje za datoteko browse localy for a directory path prebrskaj krajevno za pot mape use absolute path Uporabi absolutno pot Go deeper in path by : Pojdi globlje v poti za: Go deeper in path by any level Upošteva nižjo raven poti any katerikoli Define here the name criteria for the files/directories to be matched Določevanje kriterijev poimenovanja datotek in map final pattern končni vzorec The actual pattern is displayed here Dejansko uporabljeni vzorec je prikazan tukaj Reset the pattern editor fields to the default values Ponastavi polja urejevalnika vzorcev na privzete vrednosti reset Ponastavi Okay V redu Cancel Prekliči Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" To uporabite za nanašanje globljih pod-map na primer Mapa "/media/glasba" vključuje 3 pod-mape: 1.Rock 2.Jazz 3Pop in želite XXX vse vsebine teh 3, določite sledeče: * Niz map * Samo vsebino * path:/media/glasba/ * pojdi globlje v poti za "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Uporabite to, če se vzorec sklicuje na vsebino mape (ali niza map) in ne na mapo samo na primer vsebina mape "/media/glasba/album/" Directory contents Vsebina mape scheduleDialog Starting from scratch Začni od začetka No schedules are declared !! Ni določenih razporedov izvajanja! Unable to create schedule file Ni mogoče ustvariti datoteke razporeda You have reached the maximum limit of supported scheduled profiles Dosežena je največje dovoljeno število profilov v razporedu You have to remove an item if you wish to add another V primeru da želite dodatni nov predmet, morate enega odstraniti Add profile schedule Dodaj razpored profila Modify profile schedule Spremeni razpored profila Profile schedule details Podrobnosti razporeda profila Invalid profile Neveljaven profil Execute profile Izvedi profil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> Vsako uro na določeno minuto ure at ob every vsak day dan Sunday nedelja Monday ponedeljek Tuesday torek Wednesday sreda Thursday četrtek Friday petek Saturday sobota & on the & na st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month kateregakoli meseca of od January full phrase: 'of January' januarja February full phrase: 'of February' februarja March full phrase: 'of March' marca April full phrase: 'of April' aprila May full phrase: 'of May' maja June full phrase: 'of June' junija July full phrase: 'of July' julija August full phrase: 'of August' avgusta September full phrase: 'of September' septembra October full phrase: 'of October' oktobra November full phrase: 'of November' novembra December full phrase: 'of December' decembra Unable to create cron file Ni mogoče ustvariti datoteke cron luckyBackup - schedule luckyBackup - razpored <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Razpored izvajanja profila</span></p></body></html> Add a new profile schedule Dodaj nov razpored profila add Dodaj Modify selected profile schedule Spremeni izbran razpored profila modify Spremeni Remove selected profile schedule Odstrani izbran razpored profila remove odstrani Profile : Profil: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Preskoči opravila, ki se po preverjanju map izkažejo kot 'KRITIČNA' opravila skip critical preskoči kritična time (hour:min) : Čas (ura:min): set this value to -1 for the schedule to occur every hour Vpisana vrednost -1 omogoči usklajevanje vsako uro : : :delay Zamik: Delay luckybackup execution at startup Zamakne izvajanje programa luckyBackup ob zagonu min means: minutes (time) min day of week : Dan v tednu: Any katerikoli month : Mesec: January januar February februar March marec April april May maj June junij July julij August avgust September september October oktober November november December december day of month : Dan v mesecu: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Možnost izberite, če računalnik ne podpira grafičnega okolja (na primer strežnik) Console Mode Terminalski način okay V redu Cancel Prekliči schedule the execution of profiles as declared in the list above Razporedi izvajanje profilov, kot je določeno na zgornjem seznamu cronIT !! Izvedi s cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Obstoječa datoteka razporeda ni veljavna. file BEWARE of the whitespace before file datoteka You have made changes without clicking the cronIT button Naredili ste spremembe ne da bi kliknili na gumb CronIT Are you sure you want to close the schedule dialog ? Ali ste prepričani, da želite zapreti pogovorno okno razporeda? Your crontab is updated successfully Crontab je uspešno posodobljen no crontab entries exist Vnosi za crontab ne obstajajo crontab content Podatki crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup enkrat; ob zagonu sistema Run once, at startup Zaženi le enkrat, ob naslednjem zagonu sistema @ reboot Ob naslednjem zagonu close this dialog Zapri pogovorno okno close Zapri Display the current crontab Prikaži trenutni izpis programa crontab view current crontab Dnevnik trenutne seje crontab textDialog Enter the name of the new profile : Vnesite ime novega profila: Enter the new name of the profile : Vnesite novo ime profila: Profile description : Opis profila: A profile with the same name already exists Profil z enakim imenom že obstaja Please enter a different name Vnesite drugo ime Enter password : Vnesite geslo: Enter passphrase : Vnesite šifrirno frazo: Do not show this again for this task Ne pokaži več tega okna za to opravilo You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Izbrali ste "Varnostno kopijo vsebine izvirne mape"<br>skupaj z možnostjo "izbriši datoteke na cilju" BEWARE, if your intention is NOT to clone source to destination !! PREPRIČAJTE SE, da vaš namen NI kopiranje datotek vira na ciljno mesto! Are you sure you wish to proceed ?? Ali ste prepričani, da želite nadaljevati? luckyBackup luckyBackup Okay V redu Cancel Prekliči Copy command to clipboard Kopiraj ukaz v odložišče eMail information Podrobnosti elektronske pošte No Ne Yes Da winDialog luckyBackup luckyBackup declaration of paths določilo poti rsync: rsync: Enter the full path of the rsync command Navedena mora biti polna pot do ukaza rsync browse locally brskaj krajevno Use default value Uporabi privzeto vrednost ssh: Ukaz ssh: Enter the full path of the ssh command Navedena mora biti polna pot do ukaza ssh cygpath: Ukaz cygpath: Enter the full path of the cygpath command Polna pot do ukaza cygpath dosdev: Ukaz dosdev: Enter the full path of the dosdev command Polna pot do ukaza dosdev main dir: Mapa programa: Enter the full path of the luckybackup directory Polna pot do mape programa luckybackup vshadow dir: Mapa vshadow: Enter the full path of the vshadow directory Polna pot do mape vshadow temp dir: Mapa začasnih datotek: Enter the full path of the temporary directory Polna pot do začasne mape Okay V redu Cancel Prekliči Select rsync command file selection dialog title Izbor ukaza rsync Executable Files (*.exe) Izvedljive datoteke (*.exe) Select ssh command file selection dialog title Izbor ukaza ssh Select cygpath command file selection dialog title Izbor ukaza cygpath Select dosdev command file selection dialog title Izbor ukaza dosdev luckybackup-0.5.0/translations/luckybackup_zh_TW.ts0000666000175000017500000067251113165410113022131 0ustar luckybluckyb CalcDiffThread Scanning destination 正在掃描目標 Please wait 請稍待 Scanning snapshot 正在掃描快照 Scanning source 正在掃描來源 Calculating differences 正在計算差異 Sync dir A & B differences 同步目錄 A 與 B 之間的差異 Snapshot and source differences 快照和來源的差異 Sync dir B data that also exists at sync dir A and is different 與同步目錄 A 內已存資料不同的同步目錄 B 資料 Snapshot data that also exists at the source and is different 與來源內已存資料不同的快照資料 The snapshot data will replace the source data during RESTORE 快照資料將在「還原」時替換來源資料 Data amount is huge. Displaying only first entries 資料量龐大。只顯示第一項資料 Sync dir B data that do NOT exist at sync dir A 不在同步目錄 A 內的同步目錄 B 資料 Snapshot data that do NOT exist at the source 不在來源內的快照資料 These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE 這些資料將在「還原」時傳送至來源 Sync dir A data that do NOT exist at sync dir B 不在同步目錄 B 內的同步目錄 A 資料 Source data that do NOT exist at the snapshot 不在快照內的來源資料 These will be deleted during RESTORE only if you enable the option: 只有在啟用該選項時,這些資料才會在「還原」時刪除: delete existing source data that do not exist at the backup 刪除來源內的非備份資料 QObject The task list is empty 任務清單為空 nothing to start 無事可做 You have included both of the following connected tasks: 您已選取下列兩個互連接任務: this is not allowed for obvious reasons 因為明顯原因而不被允許 Please <b>uncheck appropriate include boxes</b> before proceeding 繼續之前請<b>取消勾選適當的包含項</b> You have not included any tasks 您尚未選取任何任務 The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory 下列選取的任務中有 (全部或部分) 任務<b>共用相同的目標資料夾</b> ,其中至少有一項任務將備份目錄 this will lead to one task canceling the other 這將導致某一項任務會被其他任務取消 Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding 請取消勾選適當的包含項,或更改任務類型為「<b>備份目錄內容</b>」以外的類型,否則在繼續之前,將所有任務類型為「<b>備份目錄內容</b>」的任務選擇「<b>僅包含</b>」選項 pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting 任務前執行指令 starting Full phrase: pre-task execution of command: <COMMAND> starting 開始 Command re-run due to failure This means that a specific command is run for once more because it failed the first time 指令因失敗而重新執行 post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting 任務後執行指令 starting Full phrase: post-task execution of command: <COMMAND> starting 開始 execution of task Full phrase: execution of task: <TASKNAME> starting 執行任務 starting Full phrase: execution of task: <TASKNAME> starting 開始 Source Full phrase: source: <SOURCE_NAME 來源 Destination Full phrase: Destination: <DEST_NAME 目標 execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting 執行第1部分任務 starting Full phrase: execution of 1st part of task: <TASKNAME> starting 開始 Syncing Full phrase: Syncing <DIR-A> to <DIR-B> 正在同步 to Full phrase: Syncing <DIR-A> to <DIR-B> execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting 執行第2部分任務 starting Full phrase: execution of 2nd part of task: <TASKNAME> starting 開始 Syncing Full phrase: Syncing <DIR-B> to <DIR-A> 正在同步 to Full phrase: Syncing <DIR-B> to <DIR-A> pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished 任務前處理指令 finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished 完畢 post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished 任務後處理指令 finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished 完畢 execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished 執行第1部分任務 finished Full phrase: execution of 1st part of task: <TASKNAME> finished 完畢 execution of task Full phrase: execution of task: <TASKNAME> finished 執行任務 finished Full phrase: execution of task: <TASKNAME> finished 完畢 execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error 執行任務 finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error 完畢。任務前/後處理指令執行錯誤 The process reported an error 程序回報了一件錯誤 Backing-up profile, logfiles and snapshot data 正在備份專案、日誌檔與快照資料 Could not open the logfile 無法開啟日誌檔 The logfile does not exist 日誌檔不存在 The specified command is probably not installed 指定的指令可能未被安裝 The logfile could not be created 日誌檔無法建立 command: 指令: exit code: 結束代碼: output: 輸出: Last execution time 上次執行時間 not available 不可用 no errors 沒有錯誤 errors found 發現錯誤 status 狀態 OK Sync directory 同步目錄 Source directory 來源目錄 Using remote, check is skipped 使用遠端,跳過檢查 Destination directory 目的地目錄 free as in free disk space WARNING 警告 I do not have the permission to read/enter sync directory A 我沒有讀取/進入同步資料夾 A 的權限 I do not have the permission to read/enter the source directory 我沒有讀取/進入來源資料夾的權限 I do not have the permission to read/enter sync directory B 我沒有讀取/進入同步資料夾 B 的權限 I do not have the permission to read/enter the destination directory 我沒有讀取/進入目標資料夾的權限 Directory 目錄 and/or 和/或 does not exist 不存在 is not mounted 尚未掛載 is empty or does not exist 為空或不存在 I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option 我將<font color=red><b>不跳過</b></font>本任務,因為您已經啟用「跳過警告」選項 This task will be <font color=red><b>skipped</b></font> 本任務將被<font color=red><b>跳過</b></font> CRITICAL 嚴重 is empty 為空 I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway 我將<font color=orange><b>不跳過</b></font>本任務。同步工作無論如何將開始執行 This task will <font color=orange><b>not be skipped 本任務將<font color=orange><b>不被跳過 The Destination Directory will be created if it doesn't exist and filled with new backup data 若目標資料夾不存在,將建立一個新資料夾並填入新備份的資料 Task description 任務描述 ReadLogFile Could not locate the logfile Could not open the logfile 無法開啟日誌檔 aboutDialog using Qt4 使用 Qt4 Backup & Sync Application 備份與同步程式 Loukas Avgeriou Loukas Avgeriou It 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 'License Agreement' tab for more details. 更多細節請參閱「授權條款」。 Athens, Greece 希臘,雅典 Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Arch linux 套件/pkgbuild 官方維護 (AUR) Valuable advisor 珍貴的建議 Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor rpm 套件包裝、貢獻良多的測試、給予遠端連線的建議 Patrick Matthaei Patrick Matthaei Debian package maintainer Debian 套件維護 Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester 希臘文 gui 翻譯、貢獻良多的測試 The indifex team The indifex 團隊 for developing the wonderful transifex localization platform and providing it for free 開發出這麼好的 transifex 翻譯平台並免費提供 Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE 套件維護 (KDE4 社群 repo) 與珍貴的套件包裝建議 Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis 套件維護 (Community repo)、西班牙文 gui 翻譯 Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) ubuntu 套件維護 (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows 移植至 MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X 移植至 Mac OS X Elbert Pol Elbert Pol port to OS/2 移植至 OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild 維護 Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy pet & sfs 維護 Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva 套件維護 (官方 contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Free BSD 套件維護 Dimitris Jemos Slackel package maintainer ex Fedora package maintainer ex Fedora 套件維護 Pavel Fric Pavel Fric Czech gui translator 捷克文 gui 翻譯 Stergios Prosiniklis Stergios Prosiniklis Greek manual translator 希臘文手冊翻譯 German gui translator 德文 gui 翻譯 Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator 葡萄牙文 gui 翻譯 Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) 法文 gui 翻譯、珍貴的套件包裝建議 (不僅僅於此) Raffaele Raffaele Italian gui translator 義大利文 gui 翻譯 using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester 俄文 gui 翻譯、貢獻良多的測試 Kenny Verstraete Kenny Verstraete Dutch gui translator 荷蘭文 gui 翻譯 Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer 波士尼亞 gui 翻譯、mandriva 套件維護 Majed Sahli Majed Sahli Arabic gui translator 阿拉伯文 gui 翻譯 Adrian Murariu Adrian Murariu Romanian gui translator 羅馬尼亞文 gui 翻譯 Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v0.3 gui 設計 fri13 fri13 v.0.3 gui designer v.0.3 gui 設計 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project 要不是他和他的教學,我不會開始這項專案 Thomas Glatt French gui translator 法文 gui 翻譯 Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator 西班牙文 gui 翻譯 Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator 瑞典文 gui 翻譯 Catalan gui translator 加泰隆尼亞文 gui 翻譯 Slovak gui translator 斯洛伐克文 gui 翻譯 Rivo Zangov Rivo Zangov Estonian gui translator 愛沙尼亞文 gui 翻譯 Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) 特別來賓兼殺蟲高手 ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist 珍貴建議 & 腦力激盪專家 Yuri Vidal Yuri Vidal backupwhenidle python script developer backupwhenidle python 腳本開發 Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...致以下論壇的所有使用者 forums for their support. 提供的支援。 Especially 特別感謝 that contributed to this project one way or another 用各種方式貢獻給此專案 Last but no least 最後 Could not locate the license file 找不到授權檔案 no money 免費贊助 If you like this app and would like to donate something to me personally, all you have to do is: 若您對本程式感到滿意,想給予個人贊助,可以這麼做: Give a thumbs up at: 給一個讚: Vote good & become a fan at: 給個好評並成為粉絲: This is my reward :) 這是對我的獎勵 :) money 金錢贊助 I personally never had and never will accept money for this project. 我不曾,且不將以個人名義接受對本專案的金錢贊助。 Nevertheless, I decided to use luckyBackup to support people that really need financial help. 不過,我決定用 luckyBackup 支援那些真正需要經濟協助的人們。 So, please consider it seriously to donate money that will eventually be used for a good cause. 所以,請您認真考慮是否為本專案提供金錢贊助,這些錢都將會被妥善利用。 donation link 捐款連結 luckyBackup - about luckyBackup - 關於 close 關閉 &About 關於 &A <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support 支援 &S A&uthor 作者 &U &Thanks to 感謝 &T &License Agreement 授權條款 &L luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup 採用 <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU 通用公共許可證條款</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! 本程式為<b>自由軟體</b>:根據自由軟體基金會 (Free Software Foundation) 出版的 GNU 通用公共許可證條款 (GNU General Public License) 第三版,您可以重新發布並修改本程式。 Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora 套件維護人 (官方套件庫) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator 斯洛維尼亞文 gui 翻譯 E. Hakan Duran E. Hakan Duran Turkish gui translator 土耳其文 gui 翻譯 Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) slackware 套件維護人 (SlackBuilds 套件源) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...我的另一半 <b>Dimitra</b>,在專案如火如荼進行時對我的體諒包含 emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution 執行專案後發送一份 Email 報告 command: 指令: Use default This means "use the default value for this field" 使用預設值 Arguments 參數 %f from: %f 從: Enter the sender of the message 輸入訊息的發送者 %l logfile %l 日誌檔 %c logfile.tar.gz %c 日誌檔.tar.gz %d date %d 日期 %i time %i 時間 %p profile name %p 專案名稱 %e No of errors %e 錯誤代碼 If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t 至: Enter the recipient of the message 輸入訊息的接收人 %s subject: %s 主旨: Enter the subject of the message 輸入訊息主旨 %v smtp server: %v smtp 伺服器: Enter the smtp server used to send the message 輸入發送訊息使用的 smtp 伺服器 %b body: %b 內文: Enter the body of the message 輸入訊息內文 Send an email right now to test the provided arguments 立即發送 email 來測試提供的參數 Test 測試 Accept changes and close dialog 接受更動並關閉對話視窗 Okay Close dialog 關閉對話視窗 Cancel 取消 Specify the conditions to send an email 指定發送 email 的先行條件 Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions 條件 Only send when error(s) occurred during a run 只在執行錯誤時發送 Error(s) occurred 錯誤發生 Only send when profile is scheduled to run 只在排程專案執行時發送 Profile is scheduled 排程專案 Never send an email 永不發送 email Never 永不 The command field is empty 指令欄位為空 helpBrowser luckyBackup - help luckyBackup - 幫助 manual/ manual/ Okay 知道了 logDialog luckyBackup - tasks execution progress luckyBackup - 任務執行程序 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error 上個錯誤 next error 下個錯誤 close 關閉 loading logfile... 正在載入日誌檔... wait 等待 luckyBackupWindow commands output output window label 指令輸出 rsync and pre/post task commands output is displayed here tooltip 這裡顯示了 rsync、任務前/後執行指令的輸出 Task list task list label 任務清單 List of all the available tasks task list tooltip - line1 所有可行任務的清單 Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 使用「涵蓋勾選框」來選擇要涵蓋的任務 Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' 任務執行 finished full phrase: 'Execution of profile <PROFILENAME> finished' 已完成 simulation mode 模擬模式 Could not update last execution time of tasks 無法更新任務前一次的執行時間 Last execution time of tasks updated 任務的上次執行時間已更新 &Abort 中止(&A) &Minimize to tray tray menu action 縮小至系統列(&M) &Restore tray menu action 還原(&R) execution of profile: tray message - execution of profile: <PROFILENAME> in progress... 專案執行: in progress... tray message - execution of profile: <PROFILENAME> in progress... 進行中... Removed all older snapshots data 已移除所有舊快照資料 failed to remove all older snapshots data 所有舊快照資料的移除失敗 Unknown error 未知的錯誤 Elapsed time 經過時間 pre-task execution of command 任務前執行指令 post-task execution of command 任務後執行指令 Now performing task 正在執行任務 Directory 目錄 calculating 計算中 deleting files 刪除檔案中 Total files transferred trying to send an email 正在嘗試傳送 email The system will shutdown in 1 minute 系統將於 1 分鐘後關機 Source 來源 Destination 目標 All tasks completed 所有任務皆已完成 No errors found 未發現任何錯誤 errors found 發現錯誤 logfile(s) have been created under directory: 日誌檔已建立於下列資料夾: Done 完成 execution of profile: 專案執行: finished 結束 Execution of tasks were terminated violently by user 任務程序已被使用者強制中止 &Profile This is a top menu item 專案(&P) &Settings This is a top menu item 設定(&S) &Language This is a top menu item 語言(&L) &Help This is a top menu item 幫助(&H) &Handbook full phrase: 'luckyBackup Handbook' 手冊(&H) &About full phrase: 'about luckyBackup' 關於(&A) current profile 目前專案 include label of 'include' checkboxes 涵蓋 Move the highlighted task up, by one position button tooltip 將標記的任務往上移動一格 Move the highlighted task down, by one position button tooltip 將標記的任務往下移動一格 jump to next error button tooltip 跳至下一個錯誤 jump to previous error button tooltip 跳至上一個錯誤 Task task groupbox (add, remove, modify buttons) label 任務 add add task button label 新增 add task add task button tooltip 新增任務 remove remove task button label 移除 remove highlighted task remove task button tooltip 移除標記的任務 modify modify task button label 修改 modify highlighted task modify task button tooltip 修改標記的任務 Begin the execution of all included tasks start button tooltip 啟動所有涵蓋任務的執行程序 NOTE simulation checkbox tooltip - line2 注意 Progressbar update will not be realistic simulation checkbox tooltip - line2 進度更新未必和真實情況符合 Information window information window title 資訊視窗 Exit exit button tooltip. full phrase is: 'exit luckybackup' 離開 EXIT EXIT button label 離開 minimize to tray 縮小至系統列 minimizes the window to the tray area 縮小視窗至系統列區域 F1 F1 English 中文(繁體) &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 您已要求建立一個「還原」任務 Please have a good look at the following task properties dialog 'create restore' message line 2/4 請確實檢視以下的任務屬性視窗 and change anything you wish before proceeding 'create restore' message line 3/4 並在繼續之前依您的需求更改 Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 特別要檢查「任務名稱」、「來源」、「目標」和「跳過較新的目標檔案」(進階) ERROR 錯誤 loading default profile ... information window message 正在載入預設專案... loading profile ... information window message 正在載入專案... loading failed information window message 載入失敗 Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' 無法開啟專案 is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y 為無效的 version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y 版本: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' 專案 loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' 已成功載入 scheduled this refers to a profile 排程 YES NO Description 描述 saving default profile ... Information window message 正在儲存預設專案... saving profile ... Information window message 正在儲存專案... WARNING 警告 default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. 預設專案 profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' 專案 profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' 專案 saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' 已成功儲存 creating default profile ... Information window message 正在建立預設專案... creating profile ... Information window message 正在建立專案... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' 專案 created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' 已成功建立 Would you like to save it before proceeding ? 在繼續之前您要先儲存嗎? Would you like to proceed anyway? 無論如何您都要繼續嗎? super user super user is the root user 超級使用者 super user mode 超級使用者模式 Welcome to full phrase: 'Welcome to luckyBackup' 歡迎使用 English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. 中文(繁體) Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' 無法建立新專案 The name you have entered contains only invalid characters 您輸入的名稱只包含無效的字元 Profile full phrase: 'Profile <PROFILENAME> already exists' 專案 already exists full phrase: 'Profile <PROFILENAME> already exists' 已經存在 Would you like to replace it ? 您要取代它嗎? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' 無法取代專案 Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' 無法重新命名專案 profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' 專案 renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' 成功重新命名為 default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. 預設專案 renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' 成功重新命名為 All relevant files (logs etc) have also been updated 所有關聯檔案 (日誌檔等) 皆已更新完畢 Failed to update all relevant files (logs etc) 所有關聯檔案 (日誌檔等) 更新失敗 Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' 您確定要刪除預設專案 a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' 將建立一個相同名稱的新空白專案 Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' 您確定要刪除專案 Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' 無法刪除專案 Profile full phrase: 'Profile <PROFILENAME> deleted successfully' 專案 deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' 已成功移除 All relevant files (logs etc) have also been deleted 所有關聯檔案 (日誌檔等) 皆已清除完畢 Failed to delete all relevant files (logs etc) 所有關聯檔案 (日誌檔等) 清除失敗 Profile full phrase: 'Profile <PROFILENAME> set as default' 專案 set as default full phrase: 'Profile <PROFILENAME> set as default' 設為預設專案 All relevant files (logs etc) have also been duplicated 所有相關檔案 (如日誌檔) 也已複製完畢 Failed to duplicate all relevant files (logs etc) 無法複製所有相關檔案 (如日誌檔) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' 專案描述 set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' 設為 Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title 匯入專案 Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' 無法匯入專案 Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' 專案 imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' 已成功匯入 as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' 並加進專案清單內 Could not locate the file full phrase: 'Could not locate the file <FILENAME>' 無法找到檔案 You have reached the maximum limit of supported tasks 您的任務數量已達支援上限 You have to remove a task if you wish to add another !! 若要新增另外的專案,您必須先刪除其中一項! Select export directory this is a dialog title for selecting a directory to export a profile to 選擇匯出資料夾 Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' 無法匯出專案 to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' 專案 exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' 已成功匯出至 The directory you have selected does not contain valid profile data 您選擇的目錄並未包含有效的專案資料 Errors occurred during snapshots and logfiles transfer 在傳輸快照與日誌檔時發生錯誤 Errors occurred during snapshots transfer 在傳輸快照時發生錯誤 Errors occurred during logfiles transfer 在傳輸日誌檔時發生錯誤 Errors occurred during the profile file transfer 在傳輸專案檔時發生錯誤 Please select a task to modify first 請先選擇一個要修改的任務 Please select a task to remove first 請先選擇一個要移除的任務 Are you sure you want to remove the following task ?? 您確定要移除以下的任務嗎? Would you like to also remove: 您要順便移除: Please select a task to manage first 請先選擇一個要管理的任務 nothing to do 無事可做 current crontab <font color=green>updated successfully 目前的 crontab <font color=green>已成功更新 Email preferences have been <font color=green>updated successfully Email 設定已經<font color=green>成功更新 status 狀態 NOT INCLUDED 不包含 Checks are disabled. This task will be <b>skipped</b> 已取消勾選。這項任務將被<b>跳過</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' 任務清單的所屬專案 and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' 與「專案」下拉清單 refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' 已重整 luckyBackup luckyBackup Ctrl+S Ctrl+S Information window 資訊視窗 CheckBox 勾選框 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile 專案(&P) Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed 中止:請等候至所有程序退出為止 Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> 正在移除該任務的舊快照與日誌檔 Removing 移除中 failed to remove 移除失敗 Failed to start this refers to a process 啟動失敗 Crashed this refers to a process 崩潰 Timed out this refers to a process 逾時 Write error this refers to a process 寫入錯誤 Read error this refers to a process 讀取錯誤 Unknown error this refers to a process 未知的錯誤 calculating info message displayed during ...calculations 計算中 transferring files info message displayed during ...file transfers 傳送檔案中 deleting files info message displayed during ...file deletions 刪除檔案中 transferring files 傳送檔案中 ABORTED 已中止 &Refresh This is a top 'Profile' menu action 重新整理(&R) De&fault This is a top 'Profile' menu action 預設(&F) Set as Default This is a top 'Profile' menu action tooltip 設成預設值 &View/Edit Description This is a top 'Profile' menu action 檢視/編輯描述(&V) View/Edit the profile description This is a top 'Profile' menu action tooltip 檢視/編輯專案描述 R&ename This is a top 'Profile' menu action 重新命名(&E) &Delete This is a top 'Profile' menu action 刪除(&D) &New This is a top 'Profile' menu action 新增(&N) &Save This is a top 'Profile' menu action 儲存(&S) E&xport This is a top 'Profile' menu action 匯出(&X) &Import This is a top 'Profile' menu action 匯入(&I) S&chedule This is a top 'Profile' menu action 排程(&C) E&mail This is a top 'Profile' menu action E&mail Email report after profile execution This is a top 'Profile' menu action tooltip 專案執行結束後發送 Email 報告 &Quit This is a top 'Profile' menu action 退出(&Q) D&uplicate This is a top 'Profile' menu action 副本(&U) &Task This is a top menu action 任務(&T) &Add This is a top 'Task' menu action 新增(&A) &Remove This is a top 'Task' menu action 移除(&R) &Modify This is a top 'Task' menu action 修改(&M) Create D&uplicate task This is a top 'Task' menu action 建立任務副本(&U) Create R&estore task This is a top 'Task' menu action 建立還原任務(&E) Manage &Backup This is a top 'Task' menu action 管理備份(&B) display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip 顯示 - 恢復 - 刪除所標記任務的現存備份 Actions This is a top menu action 動作 Current Profile This is a top menu action 目前專案 Lock This is a top menu action. Refers to toolbars 鎖定 Show text under icons This is a top menu action 在圖示下顯示文字 &Toolbars This is a top menu item 工具列(&T) Set paths This is a top menu action 設定路徑 Set paths for rsync and ssh commands This is a top menu action tooltip 設定 rsync 和 ssh 指令路徑 quiet mode 安靜模式 Only show errors and important messages during window update 更新視窗時只顯示錯誤和重要的訊息 Run start button label 執行 Abort Abort button label 中止 Stop the execution of running tasks NOW Abort button tooltip 立刻停止任務執行程序 Execution of tasks finished Done button tooltip 任務執行結束 Dry simulation checkbox label. Translate this as 'simulation' 測試 This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' 進行<b>模擬測試</b>,不做任何更動 (並盡可能產生相同的輸出) shutdown shutdown button label 關機 Press down to shutdown the system when done shutdown button tooltip 當結束時將系統關機 Hide information window show/hide information window button tooltip 隱藏資訊視窗 Show information window show/hide information window button tooltip 顯示資訊視窗 profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end 專案 The task list is empty 任務清單為空 Use the "add" button on the right to get started Please keep the add word inside quotes 請按右側的「新增」按鈕開始使用 could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' 無法儲存 default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. 預設專案 could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' 無法建立 Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' 專案 is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' 已被修改 Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' 專案 could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' 無法儲存 profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. 專案 Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' 無法複製專案 Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' 無法複製專案 as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' 專案 duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' 成功複製為 Please select a task to duplicate first 請先選擇要複製的任務 Please select a task first 請先選擇一項任務 Hide information window hide/show information window button tooltip 隱藏資訊視窗 Show information window hide/show information window button tooltip 顯示資訊視窗 You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action 管理任務 display information regarding highlighted task This is a top 'Task' menu action tooltip 顯示標記的任務資訊 &Task 任務(&T) Successfully created destination directory 目標資料夾已成功建立 Failed to create destination directory 目標資料夾建立失敗 manageDialog profile 專案 task 任務 Delete 刪除 Restore 還原 view log 檢視日誌 destination: 目標: source: 來源: hide source 隱藏來源 Close this window 關閉此視窗 Close 關閉 Please select a snapshot from the list Information message 請從清單內選擇一份快照 This directory does not exist 此目錄並不存在 This directory does not exist Information message 此目錄並不存在 I do not have sufficient permissions to read this directory Information message 我沒有充份的權限來讀取此目錄 sync dir A full phrase: sync dir a: <DIRECTORY_A> 同步資料夾 A sync dir B full phrase: sync dir a: <DIRECTORY_b> 同步資料夾 A View the logfile of the selected sync task 'view log' pushbutton tooltip 檢視所選同步任務的日誌檔 Please wait until the thread is terminated 請等候執行緒結束 STOP 停止 Stop calculations NOW 立刻終止計算 Calculations terminated by user 計算被使用者終止 not available refers to a date-time 無效 luckyBackup - manage backup luckyBackup - 管理備份 Delete the selected snapshot and its logfile 將所選的快照連日誌檔一同刪除 Restore the selected snapshot 使用所選的快照還原 View the logfile of the selected snapshot 檢視所選快照的日誌檔 Calculate the differences between the source and the selected snapshot 計算來源資料夾與所選快照的差異 Calculate differences 計算差異 manageWizard not available refers to a date-time 無效 Delete backup this is the title of a wizard 刪除備份 Date & time simple label of the wizard gui 日期 & 時間 Path ...is a directory path 路徑 WARNING 警告 You are about to delete backup data information message - line1 您即將要刪除備份資料 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated 若上述的資訊正確,點擊<b>開始</b>執行 Restore backup this is the title of a wizard 還原備份 Backup path ...is the backup directory path 備份路徑 close 關閉 Deleting snapshot logfile info message displayed during ...logfile deletion 正在刪除快照日誌檔 Updating list of snapshots info message displayed during ...snaps list update 正在更新快照清單 Aborted 中止 Finished 結束 simulation 模擬 no errors 沒有錯誤 errors found 發現錯誤 Restoring data: main trunk info message displayed during ...data restoration 正在還原資料:主資料夾 Restoring data: snapshot files info message displayed during ...data restoration 正在還原資料:快照檔 Deleting data info message displayed during ...data deletion 正在刪除資料 luckyBackup - manage backup luckyBackup - 管理備份 Jump to previous error 跳至上一個錯誤 previous error 上個錯誤 Jump to next error 跳至下一個錯誤 next error 下個錯誤 This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) 進行<b>模擬測試</b>,不做任何更動 (並盡可能產生相同的輸出) start 開始 ABORT 中止 cancel 取消 The restore directory will become identical to the backup snapshot 還原資料夾將跟備份快照一致 Existing backup files will replace the corresponding files at the restore directory information message - line1. 現存的備份檔將取代還原資料夾內相對應的檔案 If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' 若上述的資訊正確,點擊<b>開始</b>執行 success info message displayed after ...logfile deletion 成功 failed info message displayed after ...logfile deletion 失敗 Deleting file that lists snapshot changes info message displayed during ...file deletion 正在刪除列舉快照更動的檔案 success info message displayed after ...file deletion 成功 failed info message displayed after ...file deletion 失敗 success info message displayed after ...snapshots list update 成功 Select new restore directory directory selection dialog title 選擇新的還原資料夾 Restore path ...is the restore directory path 還原路徑 No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion 快照指定的資料不存在。跳過... Check this, to clone the backup snapshot to the restore directory. 勾選此項,將備份快照複製到還原資料夾內。 Delete existing data that do not exist at the backup 刪除未在備份內的現存資料 Browse locally for a new restore path 於本機瀏覽新的還原路徑 change 更改 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple 簡易 advanced 進階 Task name 任務名稱 Destination 目的地 Source 來源 Task properties 任務屬性 Enter a name for this task (eg "Backup my home directory") 為本項任務輸入一個名稱 (如「備份我的家目錄」) Name : 名稱: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them 定義本任務的類型: 1. 將來源的內容備份至目標內 2. 由目標內的名稱備份來源目錄 3. 同步來源與目標,只保留最新的檔案 Type : 類型: Synchronize Source and Destination 同步來源和目標 Enter the full path of the source directory (eg /home/luckyb/) 輸入來源資料夾的完整路徑 (如 /home/luckyb/) Source : 來源: browse localy 本地瀏覽 Enter the full path of the destination directory (eg /media/backups/SiduxHome/) 輸入目標資料夾的完整路徑 (如 /media/backups/SiduxHome/) Destination : 目標: eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) 若勾選此項,rsync 將傳送群組與使用者的數字 ID 而非名稱 並在兩端將它們對應起來。 (--numeric-ids) Use numeric group and user IDs 使用群組、使用者的數字 ID This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) 告訴接受方執行超級使用者操作 (無論是否以超級使用者身分執行 rsync 接受方)。 這些操作包括: 保留使用者 (--owner 選項)、 保留所有群組,不只目前使用者所屬群組 (--groups 選項)、 保留裝置 (--devices 選項)。 (--super) Attempt super-user activities 嘗試超級使用者操作 Backup open files Repeat any command that fails, x times 重複任何失敗的指令 x 次 Repeat on fail: 失敗重複次數: Check this to clone source to destination Leave unchecked to create an extra directory inside destination 要將目標資料夾作為來源的副本,就勾選此項 若不勾選,將在目標內建立一份新目錄放置備份 Do NOT create extra directory 不要建立額外目錄 Advanced 進階 Shows the rsync command as it will be executed 顯示待會要執行的 rsync 指令 validate 驗證 Okay Cancel 取消 Exclude 排除 Add any directory, file or pattern to be excluded from this task 為任務新增欲排除的目錄、檔案或條件 Templates 樣板 Exclude all temp folders (**/*tmp*/) 排除所有暫存資料夾 (**/*tmp*/) Temporary folders 暫存資料夾 Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) 排除系統掛載資料夾 /mnt & /media (/mnt/*/**, /media/*/**) System mount folders 系統掛載資料夾 Exclude all backup files & folders (**~) 排除所有備份檔案與資料夾 (**~) Backup files 備份檔 System folders 系統資料夾 Exclude all cache folders (**/*cache*/ & **/*Cache*/) 排除所有快取資料夾 (**/*cache*/ & **/*Cache*/) Cache folders 快取資料夾 Exclude all user's trash folders (**/*Trash*/, **/*trash*/) 排除所有使用者的回收筒資料夾 (**/*Trash*/, **/*trash*/) Trash 回收筒 Exclude all "lost+found" folders (**/lost+found*/) 排除所有 "lost+found" 資料夾 (**/lost+found*/) lost+found lost+found User Defined 使用者定義 Add exclusion as entered in the next field 將輸入於隔壁欄的排除項目加入 add 加入 Exclude list 排除清單 Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices 在此輸入檔案、資料夾或搜索樣式,點選「加入」按鈕新增至排除清單 * - 符合任何非空白項目 (至斜線停止) ** - 符合所有項目,包含斜線 ? - 符合除斜線外任一字元 接續 dir_name/*** - 符合資料夾與內部所有項目 開頭 / - 樣式固定於傳輸結構中之特定位置 (一般即為「來源」) 接續 / - 只符合資料夾,正常檔案、軟連結或裝置不包含在內 Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them 定義本次任務的類型: 1. 備份來源目錄,存在目標內 (請同時注意「不要建立額外的資料夾」選項) 2. 同步來源 & 目標,於兩者間保留最近期的檔案 Backup Source inside Destination 將來源的備份存於目標內 Description 描述 Task description 任務描述 Type a description of the task 為任務輸入一份描述 Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) 排除所有使用者的 .gvfs 資料夾 (**/.gvfs/) launch the pattern editor 啟動樣式編輯器 Remove highlighted exclusion from list 從清單移除標記的排除項目 remove 移除 Edit highlighted inclusion 編輯標記的涵蓋項目 edit 編輯 Move highlighted inclusion up 將標記的涵蓋項目向上移動 move up 上移 Move highlighted inclusion down 將標記的涵蓋項目向下移動 move down 下移 Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. 唯有符合此清單所列樣式的資料將被包含,不另含其他檔案。 參閱手冊以更加了解包含規則。 此選項將取消排除功能。 Only Include 僅包含 Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices 在此輸入檔案、資料夾或搜索樣式,點選「加入」按鈕新增至包含清單 * - 符合任何非空白項目 (至斜線停止) ** - 符合所有項目,包含斜線 ? - 符合除斜線外任一字元 接續 dir_name/*** - 符合資料夾與內部所有項目 開頭 / - 樣式固定於傳輸結構中之特定位置 (一般即為「來源」) 接續 / - 只符合資料夾,正常檔案、軟連結或裝置不包含在內 Add inclusion as entered in the next field 將輸入於隔壁欄的包含項目加入 Include list 包含清單 Remove highlighted inclusion from list 從清單移除標記的涵蓋項目 Remote 遠端 Use a remote host either for source or destination 使用遠端主機作為來源/目標 Use remote host 使用遠端主機 Use a remote host for destination data. 目標資料使用遠端主機。 destination 目標 Use a remote host for source data. 來源資料使用遠端主機。 source 來源 User: 使用者: Enter your username for the remote host (leave blank if not applicable). 輸入您在遠端主機上的使用者名稱 (若不需使用則留空)。 @Host: @主機: Enter the name of the remote host. 輸入遠端主機的名稱。 Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). 輸入 rsync (非 ssh) 認證密碼檔案的完整路徑 (若不可用則留空)。 rsync password file: rsync 密碼檔: Check this to connect to an rsync Remote module 勾選此項以連接 rsync 遠端模組 Remote module 遠端模組 Use ssh as transport shell 使用 ssh 為傳輸 shell ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair 輸入 ssh 認證私鑰檔案的完整路徑 (若不可用則留空)。 注意,您需要使用一對 OpenSSH 鑰匙配對,才能執行無密碼 ssh 遠端連線的所有必須操作 private key file : 私鑰檔案: Enter the port you would like to use for the ssh connection (leave blank for default port) 輸入 ssh 連線要使用的連接埠 (留空使用預設埠) port : 埠: Command Options 指令選項 Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! 新增或移除 rsync 選項。 如果對這些選項毫無概念,請保持不變! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) 刪除目標上不存在於來源的檔案 必須選擇「包含子目錄」 (--delete-after,若使用「排除」則為 --delete-excluded) Copy device (super user only) & special files as they are (-D) 保留裝置 (超級使用者限定) 與特殊檔案 (-D) Preserve device, special files 保留裝置與特殊檔案 Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) 在目標上保持來源的硬連結 警告:硬連結的所有檔案都必須包含在備份內! (-H) Preserve hard links 保留硬連結 Delete files on the destination 刪除目標內的檔案 Recurse into directories (-r) 包含子目錄 (-r) Recurse into directories 包含子目錄 Do not backup source files that are newer on the destination (--update) 不備份目標比來源還新的檔案 (--update) Skip newer destination files 跳過較新的目標檔案 Preserve the owner (super user only), group & time stamp of files (-tgo) 保留檔案的擁有人 (限超級使用者)、群組和時間戳記 (-tgo) Preserve ownership, times 保留擁有人與時間 Preserve permissions of files (-p) 保留檔案的權限設定 (-p) Preserve permissions 保留權限設定 Copy symlinks as symlinks (-l) 保留軟連結 (-l) Preserve symlinks 保留軟連結 Ignore files using a similar algorithm to CVS (-C) 忽略使用與 CVS 相近演算法的檔案 (-C) Ignore files the CVS way 忽略 CVS 檔案 User defined 使用者定義 Enter here an rsync option to add (eg "--delete-excluded", "-X") 在此輸入要加入的 rsync 選項 (如 "--delete-excluded", "-X") Extra rsync options list rsync 的額外選項清單 Remove highlighted option from list 從清單移除標記的選項 Add rsync option as entered in the next field 加入旁邊欄位內輸入的 rsync 選項 options list 選項清單 Also Execute 另外執行 Execute extra commands, before or after the task. 任務執行前後要執行的額外指令。 Before 前處理 Enter here a command to be executed before the task and then press the "add" button to add it to the list below 輸入任務執行之前要執行的指令,並點選「加入」按鈕新增至下列清單 Add command as entered in the field beside 加入旁邊欄位內輸入的指令 Command list 指令清單 Remove highlighted command from list 從清單內移除標記的指令 Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing 無論是否出現「警告」訊息,都繼續執行任務 通常在「前處理」指令可修復警告時使用 (如掛載分割區) 注意:只有在您了解所作行為的情況下才勾選此項 by-pass WARNING 跳過警告 After 後處理 Enter here a command to be executed after the task and then press the "add" button to add it to the list below 輸入任務執行之後要執行的指令,並點選「加入」按鈕新增至下列清單 Select source directory file selection dialog title 選擇來源資料夾 Select destination directory file selection dialog title 選擇目標資料夾 Select rsync password file file selection dialog title 選擇 rsync 密碼檔 Select ssh keyfile file selection dialog title 選擇 ssh 金鑰檔 Select command to be executed file selection dialog title 選擇要執行的指令 Select file to read include patterns file selection dialog title 選擇要讀取涵蓋樣式的檔案 Select file to read exclude patterns file selection dialog title 選擇要讀取排除樣式的檔案 Please define the source before launching the pattern editor message box, message 在開啟樣式編輯器之前,請先定義來源 ERROR message box message 錯誤 Please specify the following before proceeding: message box, message 在繼續之前請指定以下選項: ERROR message box message - line1 錯誤 That is not allowed because '/' does not have an actual name message box message - line2 '/' 沒有確實名稱,不允許此設定 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error 保留此勾選項,當指令發生錯誤退出時可以<b>中止</b>執行中任務 use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated 使用此勾選項,若任務執行中發生錯誤可<b>中止</b>任務執行 You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 您已將來源指定為 '/' (根)目錄,但沒有勾選「不要建立額外目錄」項 Please check the relevant box before proceeding message box message - line3 在繼續之前請勾選相關選項 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 您已將來源指定為分割區的根目錄,但沒有勾選「不要建立額外目錄」項 That is not allowed because the root partition does not have an actual name message box message - line2 根分割區沒有確實名稱,不允許此設定 The name of the task you requested already exists message box message - line1 您要求的任務名稱已存在 Please specify a different name before proceeding message box message - line2 繼續之前請指定一個不同的名稱 The source you have declared is identical to the destination message box message - line1 您指定的來源與目標一致 Please modify at least one of them message box message - line2 請至少修改一項 WARNING message box message - line1 警告 You have declared a destination that is part of the source directory structure message box message - line1 您所指定的目標落在來源目錄的架構內 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>不要忘記</b>在「排除」群組中加入包含目標的目錄 You have checked the 'delete files on the destination' option message box message - line2 您已選擇「刪除目標內的檔案」選項 without having checked 'Recurse into directories' which is required message box message - line3 但未勾選必須的「包含子目錄」 'Remote Host' is checked, but no remote host name is declared message box message - line2 已勾選「遠端主機」,但尚未宣告任何遠端主機名稱 Please specify a remote host name message box message - line3 請指定一個遠端主機名稱 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 否則將「遠端主機」取消勾選,以便在本機操作 All declared fields of the task properties window seem to be ok message box message first line 任務屬性視窗內的所有宣告欄位看來都沒問題 Errors have been found message box message first line 已發現錯誤 command to be executed full phrase: command to be executed: <COMMAND> 要執行的指令 You have already added this exclude item message box message 您已經加入了這項排除項目 You have already added this include item message box message 您已經加入了這項涵蓋項目 You have already added this option message box message 您已經加入了這個選項 done 完成 done editing 完成編輯 cancel 取消 cancel editing 取消編輯 Read exclude patterns from file 從檔案讀取排除樣式 Read file: 讀取檔案: filename 檔名 browse 瀏覽 ... ... Include 包含 Add any directory, file or pattern to be included by this task 加入本任務欲包含的目錄、檔案或樣式 Include mode 包含模式 Mode: 模式: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. 不要排除此份樣式清單。 請參照手冊深入了解包含規則。 Normal Include 正常包含 Read include patterns from file 從檔案讀取包含的樣式 browse locally 本機瀏覽 additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) 若您的目標資料夾位於 FAT/NTFS 磁區,請勾選此項。 資料擁有人和權限資訊將「不被保留」。 (-t --modify-window=1) Destination is FAT/NTFS 目標為 FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep 設定要保存的備份快照總數 Snapshots to keep: 保存快照數: patternEditor directory : 目錄: Select file 選擇檔案 Please choose a file within the source 請選擇來源內的檔案 Select directory 選擇目錄 Please choose a directory within the source 請選擇來源內的目錄 file : 檔案: pattern editor 樣式編輯器 Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria 如果選擇此項,上述指定的目錄將使用絕對路徑 若否,將尋找所有與「名稱」關鍵詞符合的檔案/目錄 Define here, what would you like the pattern to refer to 在此定義樣式 The pattern refers to a: 比對樣式: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" 若選擇此項,該樣式將指向特定檔案, 如:"/media/music/album/song.mp3" Specific file 指定檔案 Use this if the pattern refers to a specific directory eg "/media/music/Album/" 若選擇此項,該樣式將指向特定目錄, 如:"/media/music/Album/" Specific directory 指定目錄 Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension 若選擇此項,該樣式將指向擁有相同屬性的檔案, 如:所有副檔名為 ".txt" 的檔案 Set of files 檔案集 Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" 若選擇此項,該樣式將指向擁有相同屬性的目錄, 如:所有命名為 "temp" 的目錄 Set of directories 目錄集 name 名稱 starts with : 開頭為: Enter here the starting characters of the name of the files/directories that the pattern refers to 在這裡輸入檔案/目錄名稱開頭的字元 ends with : 結尾為: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt 在這裡輸入檔案/目錄名稱結尾的字元, 例如,若要指定所有 ".txt" 檔案,輸入: .txt Enter here the name of the files/directories that the pattern refers to 在這裡輸入檔案/目錄的名稱 is exactly : 完全符合: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to 在這裡輸入檔案/目錄名稱內所包含的任何字元 contains : 包含: browse localy for a file 於本機瀏覽檔案 browse localy for a directory path 於本機瀏覽目錄路徑 use absolute path 使用完整路徑 Go deeper in path by : 路徑深入層數: Go deeper in path by any level 深入路徑下的子目錄 (無論層級) any 任意 Define here the name criteria for the files/directories to be matched 在此定義與檔案/目錄名稱配對的關鍵詞 final pattern 最終樣式 The actual pattern is displayed here 這裡會顯示實際的樣式 Reset the pattern editor fields to the default values 將樣式編機器內的欄位回復成預設值 reset 重設 Okay Cancel 取消 Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" 選擇此項以指向更深層的子目錄。 範例如下: 目錄 "/media/music" 包含 3 個子目錄: 1.Rock 2.Jazz 3.Soundtracks 若要指向這三個子目錄下的內容,使用以下定義: * 目錄集 * 目錄內容 * 路徑:/media/music/ * 路徑深入層數:"1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" 若選擇此項,樣式將指向目錄 (或目錄集) 底下的內容,而非目錄本身, 如:目錄 "/media/music/Album/" 下的內容 Directory contents 目錄內容 scheduleDialog Starting from scratch 從頭開始 No schedules are declared !! 尚未指明任何專案! Unable to create schedule file 無法建立專案檔 You have reached the maximum limit of supported scheduled profiles 您的排程專案已達支援上限 You have to remove an item if you wish to add another 必須先刪除一項才能加入另一項排程 Add profile schedule 加入專案排程 Modify profile schedule 修改專案排程 Profile schedule details 專案排程詳情 Invalid profile 無效的專案 Execute profile 執行專案 hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday 星期日 Monday 星期一 Tuesday 星期二 Wednesday 星期三 Thursday 星期四 Friday 星期五 Saturday 星期六 & on the & 於 st as in 1st day st nd as in 2nd day nd rd as in 3rd day rd th as in 4th, 5th, 6th or 7th day th th as in 8th day th th as in 9th day th th as in 10th day th th as in 11th day th th as in 12th....19th day th th as in 20th day th st as in 21st day st nd as in 22nd day nd rd as in 23rd day rd th as in 24th...30th day th st as in 31st day st of any month 、任一月份 of January full phrase: 'of January' 一月 February full phrase: 'of February' 二月 March full phrase: 'of March' 三月 April full phrase: 'of April' 四月 May full phrase: 'of May' 五月 June full phrase: 'of June' 六月 July full phrase: 'of July' 七月 August full phrase: 'of August' 八月 September full phrase: 'of September' 九月 October full phrase: 'of October' 十月 November full phrase: 'of November' 十一月 December full phrase: 'of December' 十二月 Unable to create cron file 無法建立 cron 檔案 luckyBackup - schedule luckyBackup - 排程 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">專案執行排程</span></p></body></html> Add a new profile schedule 加入新的專案排程 add 新增 Modify selected profile schedule 修改選擇的專案排程 modify 修改 Remove selected profile schedule 移除選擇的專案排程 remove 移除 Profile : 專案: Skip tasks that apear with a 'CRITICAL' warning message after the directories check 檢查目錄後跳過出現 'CRITICAL' (嚴重) 警告訊息的任務 skip critical 跳過嚴重警告 time (hour:min) : 時間 (時:分): set this value to -1 for the schedule to occur every hour : : :delay :延遲 Delay luckybackup execution at startup 啟動時延遲 luckybackup 的執行 min means: minutes (time) day of week : 一週中的: Any 任何 month : 月: January 一月 February 二月 March 三月 April 四月 May 五月 June 六月 July 七月 August 八月 September 九月 October 十月 November 十一月 December 十二月 day of month : 日: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) 若您的機器 (伺服器) 不支援圖形環境,請勾選此項 Console Mode 文字模式 okay Cancel 取消 schedule the execution of profiles as declared in the list above 將上述指定的專案列入排程 cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version 這份排程檔不是有效的 luckyBakcup v. file BEWARE of the whitespace before file 檔案 You have made changes without clicking the cronIT button 您已做了變更,但尚未點擊 cronIT 按鈕 Are you sure you want to close the schedule dialog ? 您確定要關閉排程視窗嗎? Your crontab is updated successfully 您的 crontab 已成功更新 no crontab entries exist crontab 進入點不存在 crontab content crontab 內容 once, at system startup full phrase: Execute profile xxxxx, once at system startup 啟動系統時一次執行 Run once, at startup 於啟動時一次執行 @ reboot 重開機執行 close this dialog 關閉此視窗 close 關閉 Display the current crontab 顯示目前的 crontab view current crontab 檢視目前的 crontab textDialog Enter the name of the new profile : 輸入新專案的名稱: Enter the new name of the profile : 輸入專案的新名稱: Profile description : 專案描述: A profile with the same name already exists 已存在相同名稱的專案 Please enter a different name 請輸入一個不同的名稱 Enter password : 輸入密碼: Enter passphrase : 輸入密語: Do not show this again for this task 別再顯示此項訊息 You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option 您已同時選擇「備份來源目錄的內容」<br> 與「刪除目標內的檔案」選項 BEWARE, if your intention is NOT to clone source to destination !! 若您未打算將目標資料夾作為來源的副本,請特別小心! Are you sure you wish to proceed ?? 您確定要繼續嗎? luckyBackup luckyBackup Okay Cancel 取消 Copy command to clipboard 複製指令到剪貼簿 eMail information eMail 資訊 No Yes winDialog luckyBackup luckyBackup declaration of paths 指定路徑 rsync: rsync: Enter the full path of the rsync command 輸入 rsync 指令的完整路徑 browse locally 瀏覽本機 Use default value 使用預設值 ssh: Enter the full path of the ssh command 輸入 ssh 指令的完整路徑 cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Cancel 取消 Select rsync command file selection dialog title 選擇 rsync 指令 Executable Files (*.exe) 執行檔 (*.exe) Select ssh command file selection dialog title 選擇 ssh 指令 Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_el.ts0000666000175000017500000101226313165410113021467 0ustar luckybluckyb CalcDiffThread Scanning destination Γίνεται ανάγνωση προορισμού Please wait Παρακαλώ περιμένετε Scanning snapshot Γίνεται ανάγνωση του στιγμιότυπου Scanning source Γίνεται ανάγνωση της πηγής Calculating differences Υπολογισμός διαφορών Sync dir A & B differences Διαφορές καταλόγων συγχρονισμού Α & Β Snapshot and source differences Διαφορές στιγμιότυπου και πηγής Sync dir B data that also exists at sync dir A and is different Δεδομένα του καταλόγου συγχρονισμού Β που υπάρχουν και στον Α και είναι διαφορετικά Snapshot data that also exists at the source and is different Δεδομένα του στιγμιότυπου που υπάρχουν και ατην πηγή και είναι διαφορετικά The snapshot data will replace the source data during RESTORE Τα δεδομένα του στιγμιότυπου θα αντικαταστήσουν τα πηγαία δεδομένα κατά την ΑΝΑΚΤΗΣΗ Data amount is huge. Displaying only first entries Το μέγεθος των δεδομένων είναι τεράστιο. Προβολή μόνο των πρώτων γραμμών Sync dir B data that do NOT exist at sync dir A Δεδομένα του καταλόγου συγχρονισμού Β που ΔΕΝ υπάρχουν στον κατάλογο συγχρονισμού Α Snapshot data that do NOT exist at the source Δεδομένα του στιγμιότυπου που ΔΕΝ υπάρχουν στην πηγή These will be transfered over at the source during RESTORE Αυτά θα μεταφερθούν στην πηγή κατά τη διαδικασία ΑΝΑΚΤΗΣΗΣ These will be transfered over at the source during RESTORE Αυτά θα μεταφερθούν στην πηγή κατά τη διαδικασία ΑΝΑΚΤΗΣΗΣ Sync dir A data that do NOT exist at sync dir B Δεδομένα του καταλόγου συγχρονισμού α που ΔΕΝ υπάρχουν στον κατάλογο συγχρονισμού Β Source data that do NOT exist at the snapshot Δεδομένα της πηγήςπου ΔΕΝ υπάρχουν στο στιγμιότυπο These will be deleted during RESTORE only if you enable the option: Αυτά θα διαγραφούν κατά τη διαδικασία ΑΝΑΚΤΗΣΗΣ μόνο αν επιλέξετε: delete existing source data that do not exist at the backup διαγραφή υπάρχοντων πηγαίων δεδομένων που δεν υπάρχουν στο αντίγραφο ασφαλείας QObject The task list is empty Η λίστα με τις διαδικασίες είναι άδεια nothing to start τίποτα για εκκίνηση You have included both of the following connected tasks: Έχετε συμπεριλάβει και τις δυο από τις παρακάτω συνδεδεμένες διαδικασίες: this is not allowed for obvious reasons αυτό δεν επιτρέπεται για προφανείς λόγους Please <b>uncheck appropriate include boxes</b> before proceeding Παρακαλώ <b>φύγετε το x από τα κατάλληλα κουτάκια</b> πριν συνεχίσετε You have not included any tasks Δεν έχετε συμπεριλάβει καμία διαδικασία The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Οι παρακάτω διαδικασίες <b>μοιράζονται τον ίδιο κατάλογο προορισμού</b> (όλες μαζί ή κατά ομάδες) και τουλάχιστον μια από αυτές θα κάνει backup τα περιεχόμενα ενός καταλόγου this will lead to one task canceling the other αυτό θα οδηγήσει στη μια διαδικασία να ακυρώσει την άλλη Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Παρακαλώ φύγετε το x από τα κατάλληλα κουτάκια ή αλλάξτε όλους τους τύπους των διαδικασιών σε κάτι διαφορετικό από '<b>Backup περιεχ. καταλόγου</b>' ή χρησιμοποιήστε 'Backup περιεχ. καταλόγου' μαζί με την επιλογή '<b>Συμπ. μόνο</b>', πριν προχωρήσετε pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Η εκτέλεση της προ-εργασίας εντολής starting Full phrase: pre-task execution of command: <COMMAND> starting ξεκινάει Command re-run due to failure This means that a specific command is run for once more because it failed the first time Επανεκτέλεση εντολής εξαιτίας σφάλματος post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Η εκτέλεση της μετά-εργασίας εντολής starting Full phrase: post-task execution of command: <COMMAND> starting ξεκινάει execution of task Full phrase: execution of task: <TASKNAME> starting Η εκτέλεση της εργασίας starting Full phrase: execution of task: <TASKNAME> starting ξεκινάει Source Full phrase: source: <SOURCE_NAME Πηγή Destination Full phrase: Destination: <DEST_NAME Προορισμός execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Εκτέλεση 1ου μέρους της εργασίας starting Full phrase: execution of 1st part of task: <TASKNAME> starting ξεκινάει Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Γίνεται συγχρονισμός του to Full phrase: Syncing <DIR-A> to <DIR-B> σε execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Εκτέλεση 2ου μέρους της εργασίας starting Full phrase: execution of 2nd part of task: <TASKNAME> starting ξεκινάει Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Γίνεται συγχρονισμός του to Full phrase: Syncing <DIR-B> to <DIR-A> σε pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Η εκτέλεση της προ-εργασίας εντολής finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished τελείωσε post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Η εκτέλεση της μετά-εργασίας εντολής finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished τελείωσε execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Η εκτέλεση 1ου μέρους της εργασίας finished Full phrase: execution of 1st part of task: <TASKNAME> finished τελείωσε execution of task Full phrase: execution of task: <TASKNAME> finished Η εκτέλεση της εργασίας finished Full phrase: execution of task: <TASKNAME> finished τελείωσε execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error Η εκτέλεση της εργασίας finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error τερματίστηκε, εξαιτίας σφάλματος στην εκτέλεση εντολών προ/μετά-εργασίας The process reported an error Η διεργασία ανέφερε σφάλμα Backing-up profile, logfiles and snapshot data Γίνεται backup του προφίλ, των αρχείων log και των δεδομένων στιγμιότυπου Could not open the logfile Δεν μπόρεσα να ανοίξω το αρχείο log The logfile does not exist Το αρχείο log δεν υπάρχει The specified command is probably not installed Η συγκεκριμένη εντολή δεν έχει εγκατασταθεί The logfile could not be created Το αρχείο log δεν ήταν δυνατό να δημιουργηθεί command: εντολή: exit code: κωδικός εξόδου: output: έξοδος: Last execution time Τελευταία ώρα εκτέλεσης not available μη διαθέσιμη no errors Δεν βρέθηκαν σφάλματα errors found βρέθηκαν Σφάλματα status κατάσταση OK OK Sync directory Κατάλογος συγχρονισμού Source directory Κατάλογος πηγής Using remote, check is skipped Χρήση απομακρυσμένου, δεν γίνεται έλεγχος Destination directory Κατάλογος προορισμού free as in free disk space ελεύθερα WARNING ΠΡΟΕΙΔΟΠΟΙΗΣΗ I do not have the permission to read/enter sync directory A Δεν έχω τα απαραίτητα δικαιώματα εγγραφής/εισαγωγής για τον υποκατάλογο συγχρονισμού Α I do not have the permission to read/enter the source directory Δεν έχω τα απαραίτητα δικαιώματα εγγραφής/εισαγωγής για τον υποκατάλογο πηγή I do not have the permission to read/enter sync directory B Δεν έχω τα απαραίτητα δικαιώματα εγγραφής/εισαγωγής για τον υποκατάλογο συγχρονισμού Β I do not have the permission to read/enter the destination directory Δεν έχω τα απαραίτητα δικαιώματα εγγραφής/εισαγωγής για τον υποκατάλογο προορισμού Directory Κατάλογος and/or και/ή does not exist δεν υπάρχει is not mounted δεν είναι προσαρτημένος is empty or does not exist είναι άδειος ή δεν υπάρχει I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option <font color=red>Δεν θα αγνοήσω</font> αυτήν την διαδικασία επειδή έχετε ενεργοποιήσει την επιλογή "παράκαμψη ΠΡΟΕΙΔΟΠΟΙΗΣΕΩΝ" This task will be <font color=red><b>skipped</b></font> Αυτή η εργασία θα <font color=red><b>παρακαμφτεί</b></font> CRITICAL ΚΡΙΣΙΜΟ is empty είναι άδειος I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Δεν θα <font color=red>αγνοήσω</font> αυτήν την διαδικασία. Ο συγχρονισμός θα εκτελεστεί κανονικά This task will <font color=orange><b>not be skipped Η διαδικασία αυτή <font color=red><b>δεν θα αγνοηθεί The Destination Directory will be created if it doesn't exist and filled with new backup data Ο κατάλογος προορισμού θα δημιουργηθεί εάν δεν υπάρχει και θα γεμίσει με νέα δεδομένα του αντιγράφου ασφαλείας Task description Περιγραφή εργασίας ReadLogFile Could not locate the logfile Δεν μπόρεσα να βρω το αρχείο log Could not open the logfile Δεν μπόρεσα να ανοίξω το αρχείο log aboutDialog using Qt4 με χρήση Qt4 Backup & Sync Application Εφαρμογή για δημιουργία αντιγράφων ασφαλείας & συγχρονισμού Loukas Avgeriou Λουκάς Αυγερίου It 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 'License Agreement' tab for more details. Για περισσότερες λεπτομέρειες δείτε την άδεια GNU General Public License. Athens, Greece Αθήνα, Ελλάδα Tom Tryfonidis Θάνος Τρυφωνίδης Arch linux package/pkgbuild official maintainer (AUR) Επίσημος συντηρητής των πακέτων για Arch Linux (AUR) Valuable advisor πολύτιμος σύμβουλος Yiorgos Kapellakis Γιώργος Καπελλάκης rpm packager, valuable tester and remote connections advisor Δημιουργός πακέτων rpm, πολύτιμος δοκιμαστής και σύμβουλος απομακρυσμένων συνδέσεων Patrick Matthaei Patrick Matthaei Debian package maintainer Επίσημος συντηρητής των πακέτων για Debian Nikolas Poniros Νικόλας Πονηρός Greek gui translator and valuable tester Μεταφραστής του γραφικού περιβάλλοντος στα Ελληνικά και πολύτιμος δοκιμαστής The indifex team Την ομάδα indifex for developing the wonderful transifex localization platform and providing it for free για την ανάπτυξη της υπέροχης πλατφόρμας μεταφράσεων transifex και για το ότι την παρέχουν δωρεάν Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Επίσημος συντηρητής των πακέτων για openSUSE (KDE4 Community repo) και πολύτιμος σύμβουλος πακεταρίσματος Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Επίσημος συντηρητής των πακέτων για Mepis (Community repo) & μεταφραστής του γραφικού περιβάλλοντος στα Ισπανικά Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Επίσημος συντηρητής των πακέτων για ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows port σε MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Συνεισφορά με κώδικα αναφορικά με την υποστήριξη για απομακρυσμένες συνδέσεις και vss για την έκδοση windows loh.tar loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Συνεισφορά με κώδικα αναφορικά με διόρθωση σφαλμάτων, βελτιώσεις στη δομή και μετάβαση σε Qt5 Jack Fink Jack Fink port to Mac OS X port σε MAC OS X Elbert Pol Elbert Pol port to OS/2 port σε OS/2 Theo Chatzimichos Θοδωρής Χατζημίχος Gentoo ebuild maintainer Συντηρητής ebuild για Gentoo Dimitris Stasinopoulos Δημήτρης Στασινόπουλος Puppy pet & sfs maintainer Επίσημος συντηρητής των πακέτων pet & sfs για Puppy Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Επίσημος συντηρητής των πακέτων για Mandriva (επίσημο αποθετήριο contrib) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Επίσημος συντηρητής των πακέτων για Free BSD Dimitris Jemos Δημήτρης Τζέμος Slackel package maintainer Επίσημος συντηρητής των πακέτων για Slackel ex Fedora package maintainer πρώην Επίσημος συντηρητής των πακέτων για Fedora (επίσημο αποθετήριο) Pavel Fric Pavel Fric Czech gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Τσέχικα Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Μεταφραστής του εγχειριδίου στα Ελληνικά German gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Γερμανικά Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Πορτογαλικά Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Μεταφραστής του γραφικού περιβάλλοντος στα Γαλλικά και πολύτιμος σύμβουλος πακεταρίσματος Raffaele Raffaele Italian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Ιταλικά using Qt με χρήση Qt António Correia António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Μεταφραστής του γραφικού περιβάλλοντος στα Ρώσικα και πολύτιμος δοκιμαστής Kenny Verstraete Kenny Verstraete Dutch gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Ολλανδικά Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Συντηρητής των πακέτων για Mandriva & μεταφραστής του γραφικού περιβάλλοντος στα Βοσνιακά Majed Sahli Majed Sahli Arabic gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Αραβικά Adrian Murariu Adrian Murariu Romanian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Ρουμανικά Angelescu Constantin Angelescu Constantin Romanian gui reviewer & translator Μεταφραστής του γραφικού περιβάλλοντος στα Ρουμανικά Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Marcos Lans Javi Romero Javi Romero v0.3 gui designer Σχεδιαστής του γραφικού περιβάλλοντος της έκδοσης 0.3 fri13 fri13 v.0.3 gui designer Σχεδιαστής του γραφικού περιβάλλοντος της έκδοσης 0.3 Dimitris Kalamaras Δημήτρης Καλαμάρας If it wasn't him and his tutorials I would never have started this project Αν δεν ήταν ο Δημήτρης και οι οδηγοί του, δεν θα είχα ξεκινήσει ποτέ αυτό το project Thomas Glatt Thomas Glatt French gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Γαλλικά Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Ισπανικά Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Σουηδικά Catalan gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Καταλανικά Slovak gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Σλοβάκικα Rivo Zangov Rivo Zangov Estonian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Εσθονικά Nicolay Boychev Nicolay Boychev Bulgarian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Βουλγαρικά Manuel Meixide Manuel Meixide Galician gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Γαλικιανά Roger Foss Roger Foss Norwegian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Νορβηγικά Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Κινέζικα (Ταϊβάν) Axel Rousseau Axel Rousseau Esperanto gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Εσπεράντο Omar Anwar Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) special guest bug killer ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Πολύτιμος δοκιμαστής και ειδικός στο brainstorming Yuri Vidal Yuri Vidal backupwhenidle python script developer Ανάπτυξη του προγράμματος backupwhenidle σε python Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester Πολύτιμος δοκιμαστής για OS/2 και windows ...to all users of the ...σε όλους τους χρήστες των forums for their support. φόρουμ για την υποστήριξη. Especially Ιδιαίτερα τους that contributed to this project one way or another οι οποίοι συνείσφεραν σε αυτό το πρόγραμμα με τον έναν ή τον άλλο τρόπο Last but no least Τέλος Could not locate the license file Δεν μπόρεσα να βρώ το αρχείο της άδειας no money χωρίς χρήματα If you like this app and would like to donate something to me personally, all you have to do is: Αν σας αρέσει αυτή η εφαρμογή και θέλετε να δωρίσετε κάτι σ'εμένα προσωπικά, δεν έχετε παρά να: Give a thumbs up at: Ψηφίσετε θετικά στο: Vote good & become a fan at: Ψηφίσετε "good" & γίνετε "fan" στο: This is my reward :) Αυτή είναι η ανταμοιβή μου :) money Χρήματα I personally never had and never will accept money for this project. Προσωπικά, ποτέ δεν έλαβα και ούτε θα λάβω χρηματική αμοιβή γι'αυτή την εφαρμογή. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Ωστόσο, αποφάσισα να χρησιμοποιήσω το luckyBackup για να στηρίξω ανθρώπους που έχουν πραγματική ανάγκη για οικονομική βοήθεια. So, please consider it seriously to donate money that will eventually be used for a good cause. Γι'αυτό παρακαλώ να σκεφτείτε σοβαρά να δωρίσετε χρήματα που τελικά θα χρησιμοποιηθούν για κλό σκοπό. donation link σύνδεσμος δωρεάς luckyBackup - about luckyBackup - σχετικά close κλείσιμο &About &Σχετικά <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Υποστήριξη A&uthor Σ&υγγραφέας &Thanks to &Ευχαριστώ τους &License Agreement &Άδεια luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! Το luckyBackup διανέμεται υπό τους όρους της <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Είναι <b>ελεύθερο λογισμικό</b>: Μπορείτε να το αναδιανέμετε και/ή τροποποιήσετε υπό τους όρους της GNU General Public License όπως δημοσιεύτηκαν από το Free Software Foundation, έκδοση 3 της άδειας. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Επίσημος συντηρητής των πακέτων για Fedora (επίσημο αποθετήριο) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Σλοβένικα E. Hakan Duran E. Hakan Duran Turkish gui translator Μεταφραστής του γραφικού περιβάλλοντος στα Τούρκικα Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Επίσημος συντηρητής των πακέτων για Slackware (αποθετήριο slackbuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...στο άλλο μου μισό, τη <b>Δήμητρα</b>, που με ανέχεται κάθε φορά που κάθομαι με τις ώρες (-μέρες, -βδομάδες) στο PC για λόγους ανάπτυξης της εφαρμογής emailDialog luckyBackup - email luckyBackup - ηλεκτρονική αλληλογραφία Email a report after profile execution Αποστολή αναφοράς με ηλεκτρονική αλληλογραφία command: Εντολή: Use default This means "use the default value for this field" Χρήση προεπιλεγμένου Arguments Παράμετροι %f from: %f Από: Enter the sender of the message Εισάγετε τον αποστολέα του μηνύματος %l logfile %l αρχείο log %c logfile.tar.gz %c logfile.tar.gz %d date %d ημερομηνία %i time %i ώρα %p profile name %p όνομα προφίλ %e No of errors %e Πλήθος σφαλμάτων If unchecked "TLS auto" is used. Only available for sendemail Όταν δεν είναι επιλεγμένο χρησιμοποιείται "TLS auto". Διαθέσιμο μόνο για την εντολή sendemail Disable TLS Απενεργοποίηση TLS %t to: %t Προς: Enter the recipient of the message Εισάγετε τον παραλήπτη του μηνύματος %s subject: %s θέμα: Enter the subject of the message Εισάγετε το θέμα του μηνύματος %v smtp server: %v διακομιστής smtp: Enter the smtp server used to send the message Εισάγετε τον διακομιστή smtp για αποστολή του μηνύματος %b body: %b σώμα: Enter the body of the message Εισάγετε το κείμενο του μηνύματος Send an email right now to test the provided arguments Αποστολή μηνύματος άμεσα για έλεγχο των παραμέτρων Test Έλεγχος Accept changes and close dialog Αποδοχή αλλαγών και κλείσιμο διαλόγου Okay Εντάξει Close dialog Κλείσιμο διαλόγου Cancel Άκυρο Specify the conditions to send an email Καθορισμός των συνθηκών αποστολής μηνύματος Enter the command to run eg sendemail Εισάγετε την εντολή που θα τρέξει πχ sendemail arguments: παράμετροι: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Εισάγετε τις παραμέτρους της εντολής email πχ -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Συνθήκες Only send when error(s) occured during a run Αποστολή μόνο όταν υπήρχαν σφάλματα κατά την εκτέλεση Error(s) occured Ύπαρξη σφαλμάτων Only send when profile is scheduled to run Αποστολή μόνο όταν ένα προφίλ είναι προγραμματισμένο Profile is scheduled Προγραμματισμένο προφίλ Never send an email Ποτέ μη στείλεις μήνυμα Never Ποτέ The command field is empty Το πεδίο εντολής είναι κενό helpBrowser luckyBackup - help luckyBackup - Βοήθεια manual/ manual/ Okay Εντάξει logDialog luckyBackup - tasks execution progress luckyBackup - Εξέλιξη εκτέλεσης διαδικασιών <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error προηγούμενο σφάλμα next error επόμενο σφάλμα close κλείσιμο loading logfile... φόρτωση αρχείου log... wait περιμένετε luckyBackupWindow commands output output window label έξοδος εντολών rsync and pre/post task commands output is displayed here tooltip Η έξοδος της rsync και των προ/μετά εγρασίας εντολών εμφανίζεται εδώ Task list task list label Λίστα εργασιών List of all the available tasks task list tooltip - line1 Λίστα όλων των διαθέσιμων εργασιών Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Χρησιμοποιείστε τα πεδία 'διαθέσιμο' για να συμπεριλάβετε ή όχι την επιλεγμένη εργασία Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Η εκτέλεση του προφίλ finished full phrase: 'Execution of profile <PROFILENAME> finished' τελείωσε simulation mode Κατάσταση εξομείωσης Could not update last execution time of tasks Δεν μπόρεσα να ενημερώσω την τελευταία ώρα εκτέλεσης των διαδικασιών Last execution time of tasks updated Η τελευταία ώρα εκτέλεσης των διαδικασιών ενημερώθηκε &Abort &Ακύρωση &Minimize to tray tray menu action &Ελαχιστοποίηση στο tray &Restore tray menu action &Επαναφορά execution of profile: tray message - execution of profile: <PROFILENAME> in progress... εκτέλεση του προφίλ: in progress... tray message - execution of profile: <PROFILENAME> in progress... σε εξέλιξη... Removed all older snapshots data Έγινε διαγραφή παλαιών στιγμιότυπων κα αρχείων log της εργασίας failed to remove all older snapshots data Αποτυχία διαγραφής όλων των παλαιών στιγμιότυπων και αρχείων log της εργασίας Unknown error Άγνωστο σφάλμα Elapsed time Χρόνος που πέρασε pre-task execution of command εκτέλεση της προ-διαδικασίας εντολής post-task execution of command Εκτέλεση της μετά-διαδικασίας εντολής Now performing task Τώρα εκτελείται η διαδικασία Directory Κατάλογος calculating υπολογισμός deleting files διαγραφή αρχείων Total files transferred Σύνολο αρχείων που μεταφέρθηκαν trying to send an email Προσπάθεια για αποστολή μηνύματος email The system will shutdown in 1 minute Το σύστημα θα κλείσει σε 1 λεπτό Source Πηγή Destination Προορισμός All tasks completed Όλες οι διαδικασίες τελείωσαν No errors found Δεν βρέθηκαν σφάλματα errors found βρέθηκαν σφάλματα logfile(s) have been created under directory: Έχουν δημιουργηθεί αρχεία log στον φάκελο: Done Τέλος execution of profile: εκτέλεση του προφίλ: finished τελείωσε Execution of tasks were terminated violently by user Η εκτέλεση των διαδικασιών τερματίστηκε βίαια από τον χρήστη &Profile This is a top menu item &Προφίλ &Settings This is a top menu item &Ρυθμίσεις &Language This is a top menu item &Γλώσσα &Help This is a top menu item &Βοήθεια &Handbook full phrase: 'luckyBackup Handbook' &Εγχειρίδιο &About full phrase: 'about luckyBackup' &Περί current profile τρέχον προφίλ include label of 'include' checkboxes Διαθέσιμο Move the highlighted task up, by one position button tooltip Μετακίνηση της επιλεγμένης εργασίας επάνω, κατά μια θέση Move the highlighted task down, by one position button tooltip Μετακίνηση τηε επιλεγμένης εργασίας κάτω, κατά μια θέση jump to next error button tooltip πήγαινε στο επόμενο σφάλμα jump to previous error button tooltip πήγαινε στο προηγούμενο σφάλμα Task task groupbox (add, remove, modify buttons) label Εργασία add add task button label Προσθήκη add task add task button tooltip Προσθήκη εργασίας remove remove task button label Αφαίρεση remove highlighted task remove task button tooltip Αφαίρεση επιλεγμένης εργασίας modify modify task button label Τροποποίηση modify highlighted task modify task button tooltip Τροποποίηση επιλεγμένης εργασίας Begin the execution of all included tasks start button tooltip Ξεκίνα την εκτέλεση όλων των επιλεγμένων διαδικασιών NOTE simulation checkbox tooltip - line2 ΣΗΜΕΙΩΣΗ Progressbar update will not be realistic simulation checkbox tooltip - line2 Η ανανέωση της μπάρας προόδου δεν θα είναι ρεαλιστική Information window information window title Παράθυρο πληροφοριών Exit exit button tooltip. full phrase is: 'exit luckybackup' Έξοδος από το EXIT EXIT button label ΕΞΟΔΟΣ minimize to tray ελαχιστοποίηση στο tray minimizes the window to the tray area ελαχιστοποιεί το παράθυρο στην περιοχή ειδοποιήσεων του tray F1 F1 English Ελληνικά &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Ζητήσατε να δημιουργηθεί μια διαδικασία ΑΠΟΚΑΤΑΣΤΑΣΗΣ Please have a good look at the following task properties dialog 'create restore' message line 2/4 Παρακαλώ ρίξτε μια ματιά στο διάλογο με τις επιλογές της διαδικασίας and change anything you wish before proceeding 'create restore' message line 3/4 και αλλάξτε ότι επιθυμείτε πριν προχωρήσετε Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Κοιτάξτε ιδιαίτερα τα 'Όνομα διαδικασίας', 'πηγή', 'προορισμός' & 'παράβλεψε αρχεία που είναι νεότερα στον προορισμό' κουτάκι (προχωρημένα) ERROR ΣΦΑΛΜΑ loading default profile ... information window message φόρτωση προεπιλεγμένου προφίλ ... loading profile ... information window message φόρτωση προφίλ ... loading failed information window message η φόρτωση απέτυχε Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Ήταν αδύνατο να ανοιχθεί το προφίλ is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y δεν είναι έγκυρο για το version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y έκδοση: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' το προφίλ loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' φόρτωσε επιτυχώς scheduled this refers to a profile προγραμματισμένο YES ΝΑΙ NO ΟΧΙ Description Περιγραφή saving default profile ... Information window message αποθήκευση προεπιλεγμένου προφίλ ... saving profile ... Information window message αποθήκευση προφίλ ... WARNING ΠΡΟΕΙΔΟΠΟΙΗΣΗ default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Το προεπιλεγμένο προφίλ profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' προφίλ profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' προφίλ saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' αποθηκεύτηκε με επιτυχία creating default profile ... Information window message δημιουργία προεπιλεγμένου προφίλ ... creating profile ... Information window message δημιουργία προφίλ ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' το προφίλ created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' δημιουργήθηκε επιτυχώς Would you like to save it before proceeding ? Θέλετε να το αποθηκεύσετε πριν προχωρήσετε ? Would you like to proceed anyway? Θέλετε να προχωρήσετε ούτως ή άλλως ? super user super user is the root user υπερ-χρήστης super user mode κατάσταση υπερ-χρήστη Welcome to full phrase: 'Welcome to luckyBackup' Καλώς ήλθατε στο English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Ελληνικά Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Αποτυχία δημιουργίας νέου προφίλ The name you have entered contains only invalid characters Το όνομα που εισάγατε περιέχει μόνο μη αποδεκτούς χαρακτήρες Profile full phrase: 'Profile <PROFILENAME> already exists' Το προφίλ already exists full phrase: 'Profile <PROFILENAME> already exists' ήδη υπάρχει Would you like to replace it ? Θέλετε να το αντικαταστήσετε ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Αποτυχία αντικατάστασης του προφίλ Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Αποτυχία μετονομασίας του προφίλ profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Το προφίλ renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' μετονομάστηκε επιτυχώς σε default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Το προεπιλεγμένο προφίλ renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' μετονομάστηκε επιτυχώς σε All relevant files (logs etc) have also been updated Όλα τα αντίστοιχα αρχεία (log κλπ) ανανεώθηκαν επίσης Failed to update all relevant files (logs etc) Αποτυχία ανανέωσης των αντίστοιχων αρχείων (log κλπ) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Είστε σίγουρος/η ότι θέλετε να διαγράψετε το προεπιλεγμένο προφίλ a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' ένα νέο άδειο, με το ίδιο όνομα, θα δημιουργηθεί Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Είστε σίγουρος/η ότι θέλετε να διαγράψετε το προφίλ Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Αποτυχία διαγραφής προφίλ Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Το προφίλ deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' διαγράφηκε επιτυχώς All relevant files (logs etc) have also been deleted Όλα τα αντίστοιχα αρχεία (log κλπ) διαγράφηκαν επίσης Failed to delete all relevant files (logs etc) Αποτυχία διαγραφής των αντίστοιχων αρχείων (log κλπ) Profile full phrase: 'Profile <PROFILENAME> set as default' Το προφίλ set as default full phrase: 'Profile <PROFILENAME> set as default' τέθηκε ως προεπιλεγμένο All relevant files (logs etc) have also been duplicated Όλα τα αντίστοιχα αρχεία (log κλπ) διπλασιάστηκαν επίσης Failed to duplicate all relevant files (logs etc) Αποτυχία διπλασιασμού των αντίστοιχων αρχείων (log κλπ) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Η περιγραφή του προφίλ set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' τέθηκε σε Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Κοιτάξτε ιδιαίτερα τα 'Όνομα διαδικασίας', 'πηγή', 'προορισμός' και κυρίως τα κουτάκια 'Διαγραφή αρχείων στον προορισμό' & 'παράβλεψε αρχεία που είναι νεότερα στον προορισμό' (προχωρημένα) Import Profile this is a dialog title Εισαγωγή προφίλ Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Αποτυχία εισαγωγής του προφίλ Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Το προφίλ imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' εισήχθη επιτυχώς ως as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' ως and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' και προστέθηκε στη λίστα με τα προφίλ Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Δεν μπόρεσα να βρω το αρχείο You have reached the maximum limit of supported tasks Είστε στο μέγιστο όριο υποστηριζόμενων διαδικασιών You have to remove a task if you wish to add another !! Πρέπει να αφαιρέσετε μια διαδικασία αν θέλετε να προσθέσετε μια άλλη !! Select export directory this is a dialog title for selecting a directory to export a profile to Επιλογή καταλόγου εξαγωγής Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Αποτυχία εξαγωγής προφίλ to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' στο Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Το προφίλ exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' εξήχθη επιτυχώς στο The directory you have selected does not contain valid profile data Ο κατάλογος που επιλέξατε δεν περιέχει έγκυρα δεδομένα προφίλ Errors occured during snapshots and logfiles transfer Παρουσιάστηκαν σφάλματα κατά τη διάρκεια μεταφοράς στιγμιότυπων και αρχείων log Errors occured during snapshots transfer Παρουσιάστηκαν σφάλματα κατά τη διάρκεια μεταφοράς στιγμιότυπων Errors occured during logfiles transfer Παρουσιάστηκαν σφάλματα κατά τη διάρκεια μεταφοράς αρχείων log Errors occured during the profile file transfer Παρουσιάστηκαν σφάλματα κατά τη διάρκεια μεταφοράς αρχείων προφίλ Please select a task to modify first Παρακαλώ επιλέξτε πρώτα μια εργασία για τροποποίηση Please select a task to remove first Παρακαλώ επιλέξτε πρώτα μια εργασία για διαγραφή Are you sure you want to remove the following task ?? Είστε σίγουροι ότι θέλετε να αφαιρέσετε την παρακάτω διαδικασία ?? Would you like to also remove: Θέλετε να αφαιρέσετε και την: Please select a task to manage first Παρακαλώ επιλέξτε μια διαδικασία για να διαχειριστείτε πρώτα nothing to do Τίποτα να κάνω current crontab <font color=green>updated successfully το τρέχον crontab <font color=green>ενημερώθηκε επιτυχώς Email preferences have been <font color=green>updated successfully Οι ρυθμίσεις της αλληλογραφίας <font color=green>ανανεώθηκαν επιτυχώς status κατάσταση NOT INCLUDED ΜΗ ΣΥΜΠΕΡΙΛΑΜΒΑΝΟΜΕΝΟ Checks are disabled. This task will be <b>skipped</b> Οι έλεγχοι είναι απενεργοποιημένοι. Αυτή η διαδικασία θα <b>αγνοηθεί</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Η λίστα διαδικασιών του προφίλ and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' και η λίστα με τα προφίλ refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' ανανεώθηκαν luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Παράθυρο πληροφοριών CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Προφίλ Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Γίνεται ακύρωση: Παρακαλώ περμένετε να τερματιστούν όλες οι διαδικασίες Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Γίνεται διαγραφή παλaιών στιγμιότυπων κα αρχείων log της εργασίας Removing Γίνεται αφαίρεση failed to remove Αποτυχία αφάιρεσης Failed to start this refers to a process Αποτυχία εκκίνησης Crashed this refers to a process Crashed Timed out this refers to a process Timed out Write error this refers to a process Σφάλμα εγγραφής Read error this refers to a process Σφάλμα ανάγνωσης Unknown error this refers to a process Άγνωστο σφάλμα calculating info message displayed during ...calculations Γίνεται υπολογισμός transferring files info message displayed during ...file transfers Γίνεται μεταφορά αρχείων deleting files info message displayed during ...file deletions Γίνεται διαγραφή αρχείων transferring files Γίνεται μεταφορά αρχείων Total files transfered Σύνολο αρχείων που μεταφέρθηκαν ABORTED ΑΚΥΡΩΘΗΚΕ &Refresh This is a top 'Profile' menu action &Ανανέωση De&fault This is a top 'Profile' menu action &Προεπιλεγμένο Set as Default This is a top 'Profile' menu action tooltip Θέσε ως προεπιλεγμένο &View/Edit Description This is a top 'Profile' menu action &Προβολή/Επεξεργασία Περιγραφής View/Edit the profile description This is a top 'Profile' menu action tooltip Προβολή/Επεξεργασία της περιγραφής προφίλ R&ename This is a top 'Profile' menu action &Μετονομασία &Delete This is a top 'Profile' menu action &Διαγραφή &New This is a top 'Profile' menu action &Νέο &Save This is a top 'Profile' menu action &Φύλαξε E&xport This is a top 'Profile' menu action Ε&ξαγωγή &Import This is a top 'Profile' menu action &Εισαγωγή S&chedule This is a top 'Profile' menu action Προ&γραμματισμός E&mail This is a top 'Profile' menu action Α&λληλογραφία Email report after profile execution This is a top 'Profile' menu action tooltip Αποστολή μηνύματος αλληλογραφίας μετά την εκτέλεση του προφίλ &Quit This is a top 'Profile' menu action &Έξοδος D&uplicate This is a top 'Profile' menu action &Διπλασιασμός &Task This is a top menu action &Εργασία &Add This is a top 'Task' menu action &Προσθήκη &Remove This is a top 'Task' menu action &Αφαίρεση &Modify This is a top 'Task' menu action &Τροποποίηση Create D&uplicate task This is a top 'Task' menu action &Δημιουργία αντιγράφου εργασίας Create R&estore task This is a top 'Task' menu action Δημιουργία εργασίας ε&παναφοράς Manage &Backup This is a top 'Task' menu action Διαχείριση αντιγράφου ασ&φαλείας display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Εμφάνιση - ανάκτηση - διαγραφή υπάρχοντος αντιγράφου ασφαλείας της επιλεγμένης διαδικασίας Actions This is a top menu action Ενέργειες Current Profile This is a top menu action Τρέχον προφίλ Lock This is a top menu action. Refers to toolbars Κλείδωμα Show text under icons This is a top menu action Εμφάνιση κειμένου κάτω από τα εικονίδια &Toolbars This is a top menu item &Μπάρες εργαλείων Set paths This is a top menu action Εισαγωγή τοποθεσιών Set paths for rsync and ssh commands This is a top menu action tooltip Εισαγωγή τοποθεσιών για τις εντολές rsync και ssh quiet mode κατάσταση σιγής Only show errors and important messages during window update Εμφάνιση μόνο σφαλμάτων και σημαντικών μηνυμάτων κατά τη διάρκεια ανανέωσης του παραθύρου Run start button label Εκτέλεση Abort Abort button label Ακύρωση Stop the execution of running tasks NOW Abort button tooltip Σταμάτα την εκτέλεση τρέχοντων εργασιών ΤΩΡΑ Execution of tasks finished Done button tooltip Η εκτέλεση των εργασιών τελείωσε Dry simulation checkbox label. Translate this as 'simulation' Εξομείωση This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Με αυτή η επιλογή θα γίνει<b>δοκιμαστική εκτέλεση</b> χωρίς να πραγματοποιηθούν αλλαγές (και θα παραχθεί η ίδια έξοδος με μια πραγματική εκτέλεση) shutdown shutdown button label Σβήσιμο Press down to shutdown the system when done shutdown button tooltip Πατήστε κάτω για σβήσιμο του συστήματος με το πέρας της εκτέλεσης Hide information window show/hide information window button tooltip Απόκρυψη παραθύρου πληροφοριών Show information window show/hide information window button tooltip Εμφάνιση παραθύρου πληροφοριών profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Το προφίλ The task list is empty Ο κατάλογος εργασιών είναι άδειος Use the "add" button on the right to get started Please keep the add word inside quotes Χρησιμοποιήστε το κουμπί "προσθήκη" στα δεξιά για να ξεκινήσετε could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' δεν ήταν δυνατό να αποθηκευτεί default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Το προεπιλεγμένο προφίλ could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' δεν ήταν δυνατό να δημιουργηθεί Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Το προφίλ is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' τροποποιήθηκε Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Το προφίλ could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' δεν ήταν δυνατό να αποθηκευτεί profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. προφίλ Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Αποτυχία δημιουργίας αντιγράφου του προφίλ Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Αποτυχία δημιουργίας αντιγράφου του προφίλ as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' ως Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Το προφίλ duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' αντιγράφηκε επιτυχώς ως Please select a task to duplicate first Παρακαλώ επιλέξτε μια εργασία για αντιγραφή Please select a task first Παρακαλώ επιλέξτε μια εργασία Hide information window hide/show information window button tooltip Απόκρυψη παραθύρου πληροφοριών Show information window hide/show information window button tooltip Εμφάνιση παραθύρου πληροφοριών You have only included tasks that are going to be skipped Έχετε συμπεριλάβει μόνο εργασίες που θα παραλειφθούν Manage Task This is a top 'Task' menu action Διαχείριση Εργασίας display information regarding highlighted task This is a top 'Task' menu action tooltip Προβολή πληροφοριών που αφορούν την επιλεγμένη εργασία &Task &Εργασία Successfully created destination directory Ο κατάλογος προορισμού δημιουργήθηκε επιτυχώς Failed to create destination directory Αποτυχία δημιουργίας καταλόγου προορισμού manageDialog profile προφίλ task εργασία Delete Διαγραφή Restore Επαναφορά view log ανάγνωση αρχείου log destination: Προορισμός: source: Πηγή: hide source απόκρυψη πηγής Close this window Κλείσε αυτό το παράθυρο Close Κλείσιμο Please select a snapshot from the list Information message Παρακαλώ επιλέξτε ένα στιγμιότυπο από τη λίστα This directory does not exist Αυτός ο κατάλογος δεν υπάρχει This directory does not exist Information message Αυτός ο κατάλογος δεν υπάρχει I do not have sufficient permissions to read this directory Information message Δεν έχω τα απαραίτητα δικαιώματα ανάγνωσης αυτού του καταλόγου sync dir A full phrase: sync dir a: <DIRECTORY_A> Κατάλογος συγχρονισμού Α sync dir B full phrase: sync dir a: <DIRECTORY_b> Κατάλογος συγχρονισμού Β View the logfile of the selected sync task 'view log' pushbutton tooltip Προβολή του αρχείου log της επιλεγμένης εργασίας συγχρονισμού Please wait until the thread is terminated Παρακαλώ περιμένετε μέχρι να τερματιστεί η εργασία STOP ΠΑΥΣΗ Stop calculations NOW Παύση των υπολογισμών ΤΩΡΑ Calculations terminated by user Οι υπολογισμοί τερματίστηκαν από το χρήστη not available refers to a date-time δεν είναι διαθέσιμη luckyBackup - manage backup luckyBackup - διαχείρηση backup Delete the selected snapshot and its logfile Διαγραφή του επιλεγμένου στιγμιότυπου και του αρχείου log Restore the selected snapshot Επαναφορά του επιλεγμένου στιγμιότυπου View the logfile of the selected snapshot Προβολή του αρχείου log του επιλεγμένου στιγμιότυπου Calculate the differences between the source and the selected snapshot Υπολογισμός των διαφορών μεταξύ της πηγής και του επιλεγμένου στιγμιότυπου Calculate differences Υπολογισμός διαφορών manageWizard not available refers to a date-time δεν είναι διαθέσιμη Delete backup this is the title of a wizard Διαγραφή αντιγράφου ασφαλείας Date & time simple label of the wizard gui Ημερομηνία & ώρα Path ...is a directory path Τοποθεσία WARNING ΠΡΟΕΙΔΟΠΟΙΗΣΗ You are about to delete backup data information message - line1 Είστε έτοιμος/η να διαγράψετε δεδομένα αντιγράφου ασφαλείας If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Εάν οι ανωτέρω πληροφορίες είναι σωστές, κάνετε κλικ στο κουμπί <b>έναρξη</b> για εκκίνηση Restore backup this is the title of a wizard Επαναφορά αντιγράφου ασφαλείας Backup path ...is the backup directory path Τοποθεσία αντιγράφου ασφαλείας close κλείσιμο Deleting snapshot logfile info message displayed during ...logfile deletion Γίνεται διαγραφή του αρχείου log του στιγμιότυπου Updating list of snapshots info message displayed during ...snaps list update Γίνεται ανανέωση της λίστας στιγμιότυπων Aborted Ακυρώθηκε Finished Τελείωσε simulation εξομείωση no errors Δεν βρέθηκαν σφάλματα errors found βρέθηκαν σφάλματα Restoring data: main trunk info message displayed during ...data restoration Γίνεται επαναφορά δεδομένων: κυρίως κορμός Restoring data: snapshot files info message displayed during ...data restoration Γίνεται επαναφορά δεδομένων: αρχεία του στιγμιότυπου Deleting data info message displayed during ...data deletion Γίνεται διαγραφή δεδομένων luckyBackup - manage backup luckyBackup - διαχείρηση backup Jump to previous error Πήγαινε στο προηγούμενο σφάλμα previous error προηγούμενο σφάλμα Jump to next error Πήγαινε στο επόμενο σφάλμα next error επόμενο σφάλμα This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Με αυτή η επιλογή θα γίνει<b>δοκιμαστική εκτέλεση</b> χωρίς να πραγματοποιηθούν αλλαγές (και θα παραχθεί η ίδια έξοδος με μια πραγματική εκτέλεση) start έναρξη ABORT ΑΚΥΡΩΣΗ cancel άκυρο The restore directory will become identical to the backup snapshot Ο κατάλογος επαναφοράς θα γίνει πανομοιότυπος με το στιγμιότυπο του αντιγράφου ασφαλείας Existing backup files will replace the corresponding files at the restore directory information message - line1. Τα υπάρχοντα αρχεία του αντιγράφου ασφαλείας θα αντικαταστήσουν τα αντίστοιχα στον κατάλογο επαναφοράς If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Εάν οι ανωτέρω πληροφορίες είναι σωστές, κάνετε κλικ στο κουμπί<b>έναρξη</b> για εκκίνηση success info message displayed after ...logfile deletion επιτυχία failed info message displayed after ...logfile deletion αποτυχία Deleting file that lists snapshot changes info message displayed during ...file deletion Διαγραφή του αρχείου που περιλαμβάνει τις αλλαγές του στιγμιότυπου success info message displayed after ...file deletion επιτυχία failed info message displayed after ...file deletion αποτυχία success info message displayed after ...snapshots list update επιτυχία Select new restore directory directory selection dialog title Επιλέξτε νέο κατάλογο επαναφοράς Restore path ...is the restore directory path Τοποθεσία επαναφοράς No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Δεν υπάρχουν συγκεκριμένα δεδομένα στιγμιότυπου. Γίνεται παράκαμψη... Check this, to clone the backup snapshot to the restore directory. Επιλέξτε αυτό το πεδίο, για να κλωνοποιήσετε το στιγμιότυπο του αντιγράφου ασφαλείας, στον κατάλογο επαναφοράς. Delete existing data that do not exist at the backup διαγραφή υπάρχοντων δεδομένων που δεν υπάρχουν στο αντίγραφο ασφαλείας Browse locally for a new restore path τοπική περιήγηση για νέα τοποθεσία επαναφοράς change αλλαγή <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple απλό advanced προχωρημένο Task name Όνομα Διαδικασίας Destination Προορισμός Source Πηγή Task properties Ιδιότητες διαδικασίας Enter a name for this task (eg "Backup my home directory") Γράψτε ένα όνομα για αυτήν την διαδικασία (πχ "Backup τον κατάλογο home") Name : Όνομα : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Ορίστε τον τύπο της διαδικασίας: 1. Backup τα περιεχόμενα του υποκαταλόγου πηγή, στον προορισμό 2. Backup ολόκληρο τον υποκατάλογο πηγή, στον προορισμό 3. Συγχρονισμός της πηγής & του προορισμού, κρατώντας τα πιο πρόσφατα αρχεία και στους δυο Type : Τύπος : Synchronize Source and Destination Συγχρονισμός πηγής και προορισμού Enter the full path of the source directory (eg /home/luckyb/) Δώστε το μονοπάτι προς τον κατάλογο πηγή (πχ /home/luckyb/) Source : Πηγή : browse localy τοπική περιήγηση Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Δώστε το μονοπάτι προς τον κατάλογο προορισμού (πχ /media/backups/siduxHome/) Destination : Προορισμός : eg -C4c arcfour,blowfish-cbc πχ -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Με αυτή την επιλογή, το rsync θα μεταφέρει τις αριθμητικές ταυτότητες χρήστη και γκρουπ αντί να χρησιμοποιήσει τα ονόματα τους. (--numeric-ids) Use numeric group and user IDs Χρήση αριθμητικών ταυτοτήτων χρήστη και γκρουπ This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Αυτό θα πει στην πλευρά λήψης να προσπαθήσει ενέργειες υπερ-χρήστη ακόμα κι αν αυτή δεν την τρέχει ο υπερ-χρήστης. Αυτές οι ενέργειες συμπεριλαμβάνουν: Συντήρηση των χρηστών μέσω της επιλογής --owner Συντήρηση όλων των γκρουπ (όχι μόνο των γκρουπ του χρήστη) μέσω της επιλογής --group και αντιγραφή των συσκευών μέσω της επιλογής --devices (--super) Attempt super-user activities Προσπάθεια για ενέργειες υπερ-χρήστη Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Προσπάθησε να πάρεις αντίγραφο ασφαλείας από ανοικτά αρχεία με τη χρήση vss (για έκδοση windows 2000 και μεταγενέστερη) (--vss) Backup open files Backup ανοικτών αρχείων Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Επαναφορά αντίγραφων ασφαλείας δικαιωμάτων αρχείων σε windows - nt-streams (--restore-nt-streams) Repeat any command that fails, x times Επανάληψη οποιασδήποτε εντολής που αποτυγχάνει, x φορές Repeat on fail: Επανάληψη όταν αποτυγχάνει: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Επιλέξτε αυτό για να κλωνοποιήσετε την πηγή στον προορισμό Μην το επιλέξετε για να δημιουργηθεί ένας επί πλέον κατάλογος στον προορισμό Do NOT create extra directory ΜΗ δημιουργήσεις επί πλέον κατάλογο Advanced Προχωρημένα Shows the rsync command as it will be executed Δείχνει την rsync εντολή που θα εκτελεστεί validate επικύρωσε Okay Εντάξει Cancel Άκυρο Exclude Απόκλεισε Add any directory, file or pattern to be excluded from this task Πρόσθεσε οποιοδήποτε κατάλογο, αρχείο ή σχέδιο για να αποκλειστεί από την διαδικασία Templates Προκαθορισμένα Exclude all temp folders (**/*tmp*/) Απόκλεισε όλους τους προσωρινούς φάκελους (**/*tmp*/) Temporary folders Προσωρινοί φάκελοι Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Απόκλεισε φακέλους προσάρτησης /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Φάκελοι προσάρτησης συστήματος Exclude all backup files & folders (**~) Απόκλεισε όλα τα αρχεία & φάκελους backup (**~) Backup files Αρχεία backup System folders Φάκελοι συστήματος Exclude all cache folders (**/*cache*/ & **/*Cache*/) Απόκλεισε όλους τους φάκελους cache (**/*cache*/ & **/*Cache*/) Cache folders Φάκελοι cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Απόκλεισε όλους τους φακέλους σκουπιδιών του χρήστη (**/*Trash*/, **/*trash*/) Trash Σκουπίδια Exclude all "lost+found" folders (**/lost+found*/) Απόκλεισε όλους τους "lost+found" φακέλους (**/lost+found*/) lost+found lost+found User Defined Ορισμένα από τον χρήστη Add exclusion as entered in the next field Πρόσθεσε ένα αντικείμενο για αποκλεισμό, όπως αυτό εισάγεται στο επόμενο πεδίο add Προσθήκη Exclude list Λίστα αποκλεισμένων Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Εισάγετε εδώ ένα αρχείο, κατάλογο ή pattern, και πατήστε το κουμπί "προσθήκη" για να το προσθέσετε στην λίστα αποκλεισμού * - Συσχετίζει κάθε μη-κενό στοιχείο (σταματάει στις καθέτους) ** - Συσχετίζει οτιδήποτε, συμπεριλαμβανομένου τις καθέτους ? - Συσχετίζει κάθε χαρακτήρα εκτός από κάθετο Τελικό dir_name/*** - Συσχετίζει έναν υποκατάλογο & οτιδήποτε αυτός περιέχει Αρχικό / - Το pattern δένεται σε συγκεκριμένο σημείο στην ιεραρχία της μεταφοράς (κανονικά αυτό είναι η "πηγή") Τελικό / - Μόνο κατάλογος συσχετίζεται, όχι κανονικά αρχεία, symlinks ή συσκευές Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Δηλώστε τον τύπο αυτής της εργασίας: 1. Backup τον κατάλογο πηγής μέσα στον προορισμό (δείτε επίσης το "ΜΗ δημιουργήσεις επί πλέον κατάλογο") 2. Συγχρονισμός της πηγής και του προορισμού, κρατώντας τα πιο πρόσφατα αρχεία απ'το καθένα Backup Source inside Destination Backup της πηγής στον προορισμό Description Περιγραφή Task description Περιγραφή εργασίας Type a description of the task Εισάγετε την περιγραφή της εργασίας Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Απόκλεισε φακέλους συστήματος /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Απόκλεισε όλους τους καταλόγους χρήστη .gvfs (**/.gvfs/) launch the pattern editor έναρξη του επεξεργαστή σχεδίων Remove highlighted exclusion from list Αφαίρεσε επιλεγμένους αποκλεισμούς από την λίστα remove Αφαίρεση Edit highlighted inclusion Επεξεργασία της επιλογής edit επεξεργασία Move highlighted inclusion up μετακίνηση της επιλογής επάνω move up μετακίνηση επάνω Move highlighted inclusion down μετακίνηση της επιλογής κάτω move down μετακίνηση κάτω Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Συμπεριέλαβε μόνο αυτή τη λίστα με patterns. Τίποτα άλλο. Παρακαλώ ανατρέξτε στο εγχειρίδιο χρήσης για καλύτερη κατανόηση των κανόνων. Αυτό θα απενεργοποιήσει την επιλογή αποκλεισμού. Only Include Συμπεριέλαβε μόνο Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Εισάγετε εδώ ένα αρχείο, κατάλογο ή pattern, και πατήστε το κουμπί "προσθήκη" για να το προσθέσετε στην λίστα συμπεριλαμβανομένων * - Συσχετίζει κάθε μη-κενό στοιχείο (σταματάει στις καθέτους) ** - Συσχετίζει οτιδήποτε, συμπεριλαμβανομένου τις καθέτους ? - Συσχετίζει κάθε χαρακτήρα εκτός από κάθετο Τελικό dir_name/*** - Συσχετίζει έναν υποκατάλογο & οτιδήποτε αυτός περιέχει Αρχικό / - Το pattern δένεται σε συγκεκριμένο σημείο στην ιεραρχία της μεταφοράς (κανονικά αυτό είναι η "πηγή") Τελικό / - Μόνο κατάλογος συσχετίζεται, όχι κανονικά αρχεία, symlinks ή συσκευές Add inclusion as entered in the next field Πρόσθεσε ένα αντικείμενο για να συμπεριληφθεί, όπως αυτό εισάγεται στο επόμενο πεδίο Include list Λίστα συμπεριλαμβανομένων Remove highlighted inclusion from list Αφαίρεσε μαυρισμένη επιλογή από την λίστα Remote Απομακρυσμένο Use a remote host either for source or destination Χρησιμοποίησε έναν απομακρυσμένο υπολογιστή είτε ως πηγή, είτε ως προορισμό δεδομένων Use remote host Χρήση απομακρυσμένου υπολογιστή Use a remote host for destination data. Χρησιμοποίησε ένα απομακρυσμένο υπολογιστή σαν προορισμό δεδομένων. destination προορισμός Use a remote host for source data. Χρησιμοποίησε ένα απομακρυσμένο υπολογιστή σαν πηγή δεδομένων. source πηγή User: Χρήστης: Enter your username for the remote host (leave blank if not applicable). Δώστε το όνομα χρήστη για τον απομακρυσμένο υπολογιστή (αφήστε το κενό αν δεν σας αφορά). @Host: @Host: Enter the name of the remote host. Δώστε το όνομα του απομακρυσμένου υπολογιστή. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Δώστε το μονοπάτι προς το αρχείο που περιέχει το password για το rsync (όχι το ssh) (αφήστε το κενό αν δεν σας αφορά). rsync password file: Αρχείο κωδικού rsync: Check this to connect to an rsync Remote module Επιλέξτε για σύνδεση με απομακρυσμένη rsync ενότητα Remote module Απομακρυσμένη ενότητα Use ssh as transport shell Χρησιμοποιήστε ssh σαν κέλυφος μεταφοράς ssh ssh password: κωδικός: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Δώστε το μονοπάτι για το αρχείο που περιέχει το ιδιωτικό ssh κλειδί (αφήστε το κενό αν δεν σας αφορά). Σημειώστε ότι πρέπει να κάνετε όλα τα απαραίτητα βήματα για μια ssh σύνδεση χωρίς password και την χρήση ζεύγους κλειδιών OpenSSH private key file : Αρχείο προσωπικού κλειδιού : Enter the port you would like to use for the ssh connection (leave blank for default port) Βάλτε το port που θέλετε να χρησιμοποιήσετε για την σύνδεση ssh (αφήστε το κενό για port προεπιλογής) port : Θύρα : Command Options Επιλογές εντολής Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Προσθήκη ή αφαίρεση οποιασδήποτε επιλογής rsync. Εάν δεν έχετε ιδέα τι σημαίνουν αυτά, αφήστε τα απείραχτα !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Σβήσε αρχεία που υπάρχουν στον προορισμό αλλά δεν υπάρχουν στην πηγή . "Μπες στους καταλόγους αναδρομικά" πρέπει να είναι επιλεγμένο (--delete-after & --delete-excluded εάν το "Απόκλεισε" είναι επιλεγμένο) Copy device (super user only) & special files as they are (-D) Αντέγραψε αρχεία συσκευών (υπέρ-χρήστης μόνο) & ειδικά αρχεία (-D) Preserve device, special files Διατήρησε ειδικά αρχεία και αρχεία συσκευών Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Αρχεία τα οποία στην πηγή είναι συνδεδεμένα με hard link, θα είναι συνδεδεμένα με hard link στον προορισμό ΠΡΟΣΟΧΗ: Όλα τα αρχεία πρέπει να περιλαμβάνονται στα αρχεία που μεταφέρονται !! (-H) Preserve hard links Διατήρησε hard links Delete files on the destination Σβήσε αρχεία στον προορισμό Recurse into directories (-r) Μπες στους καταλόγους αναδρομικά (-r) Recurse into directories Μπες στους καταλόγους αναδρομικά Do not backup source files that are newer on the destination (--update) Μην κάνεις backup αρχεία πηγής τα οποία είναι πιο καινούργια στον προορισμό (--update) Skip newer destination files Αγνόησε νεότερα αρχεία προορισμού Preserve the owner (super user only), group & time stamp of files (-tgo) Διατήρησε τον ιδιoκτήτη (υπέρ-χρήστης μόνο), ομάδα & ώρα των αρχείων (-tgo) Preserve ownership, times Διατήρησε ιδιoκτήτη, ώρες Preserve permissions of files (-p) Διατήρησε τα δικαιώματα των αρχείων (-p) Preserve permissions Διατήρησε δικαιώματα Copy symlinks as symlinks (-l) Αντέγραψε symlinks σαν symlinks (-l) Preserve symlinks Διατήρησε symlinks Ignore files using a similar algorithm to CVS (-C) Αγνόησε αρχεία με χρήση αλγόριθμου παρόμοιου του CVS (-C) Ignore files the CVS way Αγνόησε αρχεία με τον τρόπο του CVS User defined Ορισμένα από τον χρήστη Enter here an rsync option to add (eg "--delete-excluded", "-X") Γράψτε εδώ μια επιλογή rsync για να προσθέσετε (πχ "--delete-excluded", "-X") Extra rsync options list Λίστα με έξτρα επιλογές rsync Remove highlighted option from list Αφαίρεσε μαυρισμένη επιλογή από την λίστα Add rsync option as entered in the next field Πρόσθεσε επιλογή rsync όπως είναι γραμμένη εδώ options list Λίστα επιλογών Also Execute Επί πρόσθετη εκτέλεση Execute extra commands, before or after the task. Εκτέλεση επί πρόσθετων εντολών, πριν ή μετά από τη διαδικασία. Before Πριν Enter here a command to be executed before the task and then press the "add" button to add it to the list below Εισάγετε εδώ μια εντολή για να εκτελεστεί πριν από τη διαδικασία και πατήστε το πλήκτρο "προσθήκη" για να το προσθέσετε στην κατωτέρω λίστα Add command as entered in the field beside Προσθήκη εντολής, όπως αυτή εισάγεται στο διπλανό επόμενο Command list Λίστα εντολών Remove highlighted command from list Αφαίρεσε μαυρισμένη επιλογή από την λίστα Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Εκτέλεση της διαδικασίας ακόμα κι αν εμφανίζεται με μήνυμα ΠΡΟΕΙΔΟΠΟΙΗΣΗΣ Συνήθως χρησιμοποιείται όταν εντολές εκτέλεσης πριν τη διαδικασία μπορούν να φτιάξουν μια προειδοποίηση (πχ προσάρτηση κατατμήσεων) ΠΡΟΣΟΧΗ: Επιλέξτε αυτό αν πραγματικά γνωρίζετε τι κάνετε by-pass WARNING παράκαμψη ΠΡΟΕΙΔΟΠΟΙΗΣΗΣ After Μετά Enter here a command to be executed after the task and then press the "add" button to add it to the list below Εισάγετε εδώ μια εντολή για να εκτελεστεί μετά από τη διαδικασία και πατήστε το πλήκτρο "προσθήκη" για να το προσθέσετε στην κατωτέρω λίστα Select source directory file selection dialog title Επέλεξε καταλόγο πηγή Select destination directory file selection dialog title Επέλεξε κατάλογο προορισμού Select rsync password file file selection dialog title Επέλεξε αρχείο password για rsync Select ssh keyfile file selection dialog title Επέλεξε αρχείο κλειδιού ssh Select command to be executed file selection dialog title Επιλέξτε την εντολή που θα εκτελεστεί Select file to read include patterns file selection dialog title Επιλέξτε το αρχείο από το οποίο θα γίνει ανάγνωση των σχεδίων Select file to read exclude patterns file selection dialog title Επιλέξτε το αρχείο από το οποίο θα γίνει ανάγνωση των σχεδίων αποκλεισμού Please define the source before launching the pattern editor message box, message Παρακαλώ προσδιορίστε την πηγή πριν ανοίξετε τον επεξεργαστή σχεδίου ERROR message box message ΣΦΑΛΜΑ Please specify the following before proceeding: message box, message Παρακαλώ διευκρινίστε τα κατωτέρω πριν προχωρήσετε: ERROR message box message - line1 ΣΦΑΛΜΑ That is not allowed because '/' does not have an actual name message box message - line2 Αυτό δεν επιτρέπεται γιατί το '/' δεν έχει πραγματικό όνομα Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Αφήστε το πεδίο τσεκαρισμένο για να <b>ΣΤΑΜΑΤΗΣΕΤΕ</b> την εκτέλεση της τρέχουσας εργασίας αν η εντολή τελειώσει με σφάλμα use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Χρησιμοποιείστε τα πεδία για να <b>ΣΤΑΜΑΤΗΣΕΤΕ</b> την εκτέλεση της εργασίας αν υπάρξει σφάλμα You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Έχετε δηλώσει τον ριζικό κατάλογο"/" ως πηγή χωρίς να επιλέξετε το πεδίο "ΜΗ δημιουργήσεις επί πλέον κατάλογο" Please check the relevant box before proceeding message box message - line3 Παρακαλώ επιλέξτε το αντίστοιχο πεδίο You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Έχετε δηλώσει τον ριζικό κατάλογο μιας ολόκληρης κατάτμησης ως πηγή χωρίς να έχετε επιλέξει το 'ΜΗ δημιουργήσεις επί πλέον κατάλογο' That is not allowed because the root partition does not have an actual name message box message - line2 Αυτό δεν επιτρέπεται επειδή η ριζική κατάτμηση δεν έχει πραγματικό όνομα The name of the task you requested already exists message box message - line1 Το όνομα εργασίας που ζητήσατε υπάρχει ήδη Please specify a different name before proceeding message box message - line2 Παρακαλώ δώστε άλλο όνομα πριν προχωρήσετε The source you have declared is identical to the destination message box message - line1 Η πηγή που δηλώσατε είναι ίδια με τον προορισμό Please modify at least one of them message box message - line2 Παρακαλώ τροποποιήστε τουλάχιστον ένα από τα δυο WARNING message box message - line1 ΠΡΟΕΙΔΟΠΟΙΗΣΗ You have declared a destination that is part of the source directory structure message box message - line1 Έχετε δηλώσει ένα προορισμό ο οποίος βρίσκεται μέσα στην πηγή <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Μην ξεχάσετε</b> να δηλώσετε έναν κατάλογο στην λίστα 'αποκλεισμού' ο οποίος θα περιέχει τον προορισμό You have checked the 'delete files on the destination' option message box message - line2 Έχετε επιλέξει το 'διαγραφή αρχείων στον προορισμό' without having checked 'Recurse into directories' which is required message box message - line3 χωρίς να έχετε επιλέξει το 'Μπες στους καταλόγους αναδρομικά', το οποίο απαιτείται 'Remote Host' is checked, but no remote host name is declared message box message - line2 Το 'Απομακρυσμένος Υπολογιστής' είναι επιλεγμένο αλλά δεν έχει δηλωθεί όνομα απομακρυσμένου υπολογιστή Please specify a remote host name message box message - line3 Παρακαλώ προσδιορίστε όνομα απομακρυσμένου υπολογιστή Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Αλλιώς φύγετε το x από το 'Απομακρυσμένος Υπολογιστής' για να εργαστείτε τοπικά All declared fields of the task properties window seem to be ok message box message first line Όλα τα δηλωμένα πεδία του παράθυρου ιδιοτήτων της εργασίας φαίνονται να είναι εντάξει Errors have been found message box message first line Βρέθηκαν λάθη command to be executed full phrase: command to be executed: <COMMAND> εντολή που θα εκτελεστεί You have already added this exclude item message box message Έχετε ήδη προσθέσει αυτό το αντικείμενο για εξαίρεση You have already added this include item message box message Έχετε ήδη προσθέσει αυτό το αντικείμενο για να συμπεριληφθεί You have already added this option message box message Έχετε ήδη προσθέσει αυτήν την επιλογή done τέλος done editing Πέρας επεξεργασίας cancel άκυρο cancel editing ακύρωση επεξεργασίας Read exclude patterns from file Ανάγνωση σχεδίων αποκλεισμού από αρχείο Read file: Ανάγνωση αρχείου: filename όνομα αρχείου browse περιήγηση ... ... Include Συμπεριέλαβε Add any directory, file or pattern to be included by this task Πρόσθεσε οποιοδήποτε κατάλογο, αρχείο ή σχέδιο για να συμπεριληφθεί από την διαδικασία Include mode Τρόπος συμπεριλαμβανομένων Mode: Τρόπος: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Μην αποκλείσεις αυτή τη λίστα με patterns. Παρακαλώ αναφερθείτε στο εγχειρίδιο για καλύτερη κατανόηση των κανόνων. Normal Include Συμπεριέλαβε κανονικά Read include patterns from file Ανάγνωση σχεδίων από αρχείο browse locally τοπική περιήγηση additional options: πρόσθετες επιλογές: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Επιλέξτε αυτό το πεδίο εάν χρησιμοποιείτε κατάτμηση FAT/NTFS ως προορισμό Οι ιδιότητες ιδιοκτησίας και δικαιωμάτων των δεδομένων ΔΕΝ θα διατηρηθούν (-t --modify-window=1) Destination is FAT/NTFS Ο προορισμός είναι FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Προσπάθησε να πάρεις αντίγραφο ασφαλείας από ανοικτά αρχεία με τη χρήση vss (για έκδοση windows 2000 και μεταγενέστερη) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Επαναφορά δικαιωμάτων αντίγραφων ασφαλείας αρχείων σε windows - NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Επαναφορά δικαιωμάτων Set the total number of backup snapshots to keep Θέσε το πλήθος των στιγμιότυπων αντιγράφων ασφαλείας προς διατήρηση Snapshots to keep: Στιγμιότυπα προς διατήρηση: patternEditor directory : κατάλογος : Select file Επέλεξε αρχείο Please choose a file within the source Παρακαλώ επιλέξτε αρχείο μέσα από την πηγή Select directory Επιλέξτε κατάλογο Please choose a directory within the source Παρακαλώ επιλέξτε έναν κατάλογο μέσα από την πηγή file : αρχείο : pattern editor επεξεργαστής σχεδίων Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Επιλέξτε αυτό για χρήση του ανωτέρω καταλόγου ως απόλυτης διαύθυνσης Εαν δεν είναι επιλεγμένο, το σχέδιο θα συσχετίσει κάθε αρχείο/κατάλογο που πληρεί τα κριτήρια "ονόματος" Define here, what would you like the pattern to refer to Ορίστε εδώ, σε τι θέλετε να αναφέρεται το σχέδιο The pattern refers to a: Το σχέδιο αναφέρεται σε: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Χρησιμοποιήστε αυτό, εαν το σχέδιο αναφέρεται σε συγκεκριμένο αρχείο πχ "/media/music/album/song.mp3" Specific file Συγκεκριμένο αρχείο Use this if the pattern refers to a specific directory eg "/media/music/Album/" Χρησιμοποιήστε αυτό, εαν το σχέδιο αναφέρεται σε συγκεκριμένο κατάλογο πχ "/media/music/Album/" Specific directory Συγκεκριμένο κατάλογο Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Χρησιμοποιήστε αυτό, εαν το σχέδιο αναφέρεται σε ένα πλήθος αρχείων που έχουν κάτι κοινό πχ όλα τα αρχεία με κατάληξη ".txt" Set of files Πλήθος αρχείων Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Χρησιμοποιήστε αυτό, εαν το σχέδιο αναφέρεται σε ένα πλήθος καταλόγων που έχουν κάτι κοινό πχ όλοι οι κατάλογοι με όνομα "temp" Set of directories Πλήθος καταλόγων name όνομα starts with : ξεκινάει με : Enter here the starting characters of the name of the files/directories that the pattern refers to Εισάγετε εδώ τους χαρακτήρες με τους οποίους ξεκινάει το όνομα των αρχείων/υποκαταλόγων στα οποία αναφέρεται το σχέδιο ends with : τελειώνει με : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Εισάγετε εδώ τους χαρακτήρες με τους οποίους τελειώνει το όνομα των αρχείων/υποκαταλόγων στα οποία αναφέρεται το σχέδιο πχ για να αναφερθείτε σε όλα τα αρχεία με κατάληξη ".txt", εισάγετε .txt Enter here the name of the files/directories that the pattern refers to Εισάγετε εδώ το όνομα των αρχείων/υποκαταλόγων στα οποία αναφέρεται το σχέδιο is exactly : είναι ακριβώς : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Εισάγετε εδώ τους χαρακτήρες οι οποίοι περιέχονται σε οποιοδήποτε μέρος του ονόματος των αρχείων/υποκαταλόγων στα οποία αναφέρεται το σχέδιο contains : περιέχει : browse localy for a file τοπική περιήγηση για αρχείο browse localy for a directory path τοπική περιήγηση για κατάλογο use absolute path χρήση απόλυτης διεύθυνσης Go deeper in path by : Πήγαινε βαθύτερα στο μονοπάτι κατά : Go deeper in path by any level Πήγαινε βαθύτερα στο μονοπάτι κατά οποιοδήποτε επίπεδο any οτιδήποτε Define here the name criteria for the files/directories to be matched Ορίστε εδώ τα κριτήρια ονόματος των αρχείων/καταλόγων για συσχετισμό final pattern τελικό σχέδιο The actual pattern is displayed here Το πραγματικό σχέδιο φαίνεται εδώ Reset the pattern editor fields to the default values Αρχικοποίησε τα πεδία του επεξεργαστή σχεδίου στις προκαθορισμένες τιμές reset αρχικοποίηση Okay Εντάξει Cancel Άκυρο Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Χρησιμοποιήστε αυτό για να αναφερθείτε σε βαθύτερους υπο-καταλόγους πχ Ο κατάλογος "/media/music" περιέχει 3 υπο-καταλόγους: 1.Rock 2.Jazz 3.Soundtracks και θέλετε να αναφερθείτε στα περιεχόμενα αυτών των 3, ορίστε τα κατωτέρω: * Πλήθος καταλόγων * Μόνο τα περιεχόμενα * διελυθυνση:/media/music/ * Πήγαινε βαθύτερα στο μονοπάτι κατά "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Χρησιμοποιήστε αυτό εαν το σχέδιο αναφέρεται στα περιεχόμενα του καταλόγου (ή του πλήθους καταλόγων), όχι στον ίδιο υποκατάλογο πχ τα περιεχόμενα του καταλόγου "/media/music/Album/" Directory contents Περιεχόμενα καταλόγου scheduleDialog Starting from scratch Ξεκίνημα από το μηδέν No schedules are declared !! Δεν έχει δηλωθεί κανένα πρόγραμμα !! Unable to create schedule file Ήταν αδύνατη η δημιουργία αρχείου προγραμματισμού You have reached the maximum limit of supported scheduled profiles Είστε στο μέγιστο όριο υποστηριζόμενων προγραμματισμένων προφίλ You have to remove an item if you wish to add another Πρέπει να αφαιρέσετε ένα αντικείμενο αν θέλετε να προσθέσετε ένα άλλο Add profile schedule Προσθήκη προγράμματος προφίλ Modify profile schedule Τροποποίηση προγράμματος προφίλ Profile schedule details Λεπτομέρειες προγράμματος προφίλ Invalid profile Μη έγκυρο προφίλ Execute profile Εκτέλεσε το προφίλ hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> ωριαία κάθε at στις every κάθε day ημέρα Sunday Κυριακή Monday Δευτέρα Tuesday Τρίτη Wednesday Τετάρτη Thursday Πέμπτη Friday Παρασκευή Saturday Σάββατο & on the & την st as in 1st day η nd as in 2nd day η rd as in 3rd day η th as in 4th, 5th, 6th or 7th day η th as in 8th day η th as in 9th day η th as in 10th day η th as in 11th day η th as in 12th....19th day η th as in 20th day η st as in 21st day η nd as in 22nd day η rd as in 23rd day η th as in 24th...30th day η st as in 31st day η of any month οποιουδήποτε μήνα of του January full phrase: 'of January' Ιανουαρίου February full phrase: 'of February' Φεβρουαρίου March full phrase: 'of March' Μαρτίου April full phrase: 'of April' Απριλίου May full phrase: 'of May' Μαϊου June full phrase: 'of June' Ιουνίου July full phrase: 'of July' Ιουλίου August full phrase: 'of August' Αυγούστου September full phrase: 'of September' Σεπτεμβρίου October full phrase: 'of October' Οκτωβρίου November full phrase: 'of November' Νοεμβρίου December full phrase: 'of December' Δεκεμβρίου Unable to create cron file Ήταν αδύνατη η δημιουργία αρχείου cron luckyBackup - schedule luckyBackup - πρόγραμμα <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Προγραμματισμός εκτέλεσης προφίλ</span></p></body></html> Add a new profile schedule Προσθήκη νέου προγράμματος προφίλ add Προσθήκη Modify selected profile schedule Τροποποίηση επιλεγμένου προγράμματος προφίλ modify Τροποποίηση Remove selected profile schedule Αφαίρεση επιλεγμένου προγράμματος προφίλ remove Αφαίρεση Profile : Προφίλ : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Παράβλεψε διαδικασίες οι οποίες έχουν το μήνυμα προειδοποίησης 'ΚΡΙΣΙΜΟ' μετά τον έλεγχο καταλόγων skip critical παράβλεψε κρίσιμα time (hour:min) : χρόνος (ώρα:λεπτά) : set this value to -1 for the schedule to occur every hour Θέστε αυτή την τιμή σε -1 για προγραμματισμό κάθε μια ώρα : : :delay :καθυστέρηση Delay luckybackup execution at startup Καθυστέρηση της εκτέλεσης του luckybackup κατά την εκκίνηση του ΗΥ min means: minutes (time) λεπτά day of week : μέρα της βδομάδας : Any οτιδήποτε month : μήνας : January Ιανουάριος February Φεβρουάριος March Μάρτιος April Απρίλιος May Μάιος June Ιούνιος July Ιούλιος August Αύγουστος September Σεπτέμβριος October Οκτώβριος November Νοέμβριος December Δεκέμβριος day of month : μέρα του μήνα : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Επιλέξτε αυτό εαν το μηχάνημα σας δεν υποστηρίζει γραφικό περιβάλλον (πχ server) Console Mode κατάσταση κοσνόλας okay Εντάξει Cancel Άκυρο schedule the execution of profiles as declared in the list above Προγραμμάτισε την εκτέλεση των προφίλ όπως είναι δηλωμένα στην ανωτέρω λίστα cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version Το υπάρχον αρχείο προγραμματισμού δεν είναι ένα έγκυρο αρχείο του luckyBackup έκδοση. file BEWARE of the whitespace before file αρχείο You have made changes without clicking the cronIT button Έχετε κάνει αλλαγές χωρίς να κάνετε κλικ στο κουμπί cronIT Are you sure you want to close the schedule dialog ? Είστε σίγουρος/η ότι θέλετε να κλείσετε το παράθυρο προγραμματισμού εργασιών ? Your crontab is updated successfully Το crontab ενημερώθηκε επιτυχώς no crontab entries exist Δεν υπάρχουν δεδομένα crontab crontab content περιεχόμενο crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup μια φορά, κατά την εκκίνηση του συστήματος Run once, at startup Τρέξε μια φορά, κατά την εκκίνηση @ reboot @ εκκίνηση close this dialog Κλείσιμο αυτού του διαλόγου close κλείσιμο Display the current crontab Προβολή του τρέχοντος crontab view current crontab προβολή του τρέχοντος crontab textDialog Enter the name of the new profile : Δώστε το όνομα του νέου προφίλ : Enter the new name of the profile : Δώστε το νέο όνομα του προφίλ : Profile description : Περιγραφή προφίλ : A profile with the same name already exists Ένα προφίλ με το ίδιο όνομα υπάρχει ήδη Please enter a different name Παρακαλώ δώστε ένα διαφορετικό όνομα Enter pasword : Εισάγετε κωδικό : Enter passphrase : Εισάγετε κωδικό : Do not show this again for this task Απόκρυψη αυτού του μηνύματος μελλοντικά γι'αυτή τη διαδικασία You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Έχετε επιλέξει να πάρετε 'αντίγραφο ασφαλείας των περιεχομένων του πηγαίου καταλόγου'<br>μαζί με την επιλογή 'διέγραψε αρχεία στον προορισμό' BEWARE, if your intention is NOT to clone source to destination !! ΠΡΟΣΟΧΗ, αν η πρόθεση σας είναι να ΜΗΝ κλωνοποιήσετε την πηγή στον προορισμό !! Are you sure you wish to proceed ?? Είστε σίγουρος/η ότι θέλετε να προχωρήσετε ?? luckyBackup luckyBackup Okay Εντάξει Cancel Άκυρο Copy command to clipboard Αντιγραφή της εντολής στο πρόχειρο eMail information Πληροφορίες αλληλογραφίας No ´Οχι Yes Ναι winDialog luckyBackup luckyBackup declaration of paths Ορισμός τοποθεσιών rsync: rsync: Enter the full path of the rsync command Εισάγετε την πλήρη τοποθεσία της εντολής rsync browse locally τοπική περιήγηση Use default value Χρήση προκαθορισμένης τιμής ssh: ssh: Enter the full path of the ssh command Εισάγετε την πλήρη τοποθεσία της εντολής ssh cygpath: cygpath: Enter the full path of the cygpath command Εισάγετε την πλήρη τοποθεσία της εντολής cygpath dosdev: dosdev: Enter the full path of the dosdev command Εισάγετε την πλήρη τοποθεσία της εντολής dosdev main dir: κυρίως κατάλογος: Enter the full path of the luckybackup directory Δώστε το πλήρες μονοπάτι προς τον κατάλογο του luckybackup vshadow dir: vshadow dir: Enter the full path of the vshadow directory Δώστε το πλήρες μονοπάτι προς τον κατάλογο του vshadow temp dir: προσωρινός κατάλογος: Enter the full path of the temporary directory Δώστε το πλήρες μονοπάτι προς τον προσωρινό κατάλογο Okay Εντάξει Cancel Ακύρωση Select rsync command file selection dialog title Επιλογή εντολής rsync Executable Files (*.exe) Εκτελέσιμα αρχεία (*.exe) Select ssh command file selection dialog title Επιλογή εντολής ssh Select cygpath command file selection dialog title Επιλογή εντολής cygpath Select dosdev command file selection dialog title Επιλογή εντολής dosdev luckybackup-0.5.0/translations/luckybackup_eo.qm0000666000175000017500000005264513157502317021501 0ustar luckybluckybSH]9Tg9g>qgJsKfOf5f=~E59G/EG47Ua3 a3a=a? aLaM"736صvaL.&%?8({Y*`3|*04:FZ9%HxDJPd Pd:SHT2j6/[j64)j6<j6JmC/q.3td0]F}L3(a/gĉ!K4-FgI!b(+&1"_/+tc0ѐS+K ,'2 _)>u|B'IFR&R;<&4V Av$&"iJJb}^HQWG` 9<8%0t  <7[~,mϗG>'.weJKDI2]I= I>IEOILIL.-  9:R+G3%l@v#ȕȕ7ȕ=XI? !_"rC3d_Av'xhnhn>sD vb YY1R%]<=I 읒 X(8k X ;H-z_gEF:F>FL]Bd:aJ$'@" - POT55I'"s))  CcK D Mg4 Mg=@ aY -B Z ' Ԡ; =< 1 7E  i c c$ b GC- hH D~ K 93B*{ T,3 Z/ _y0 g.w * g.w9 g.w; YF 8e Acs' N05 g . &s S ;P ?B  K s, )8 6| PKt m# i2  l) =D*##JcR1xyir!<$pRuUkFQU" e &)N-[G ERN>5[=^i#"c/fu,֙Sl]+iML*Kalkulanta diferenconCalculating differencesCalcDiffThread`Datumoj estas grandegaj. Vidigi nur unuajn erojn2Data amount is huge. Displaying only first entriesCalcDiffThread Bonvolu pacienci Please waitCalcDiffThread(Skananta celdosieronScanning destinationCalcDiffThread2Skananta tujpretan kopionScanning snapshotCalcDiffThreadSkananta fontonScanning sourceCalcDiffThreadFTujpreta kopio kaj fonta diferencojSnapshot and source differencesCalcDiffThread|Tujpretaj datumoj kiuj ankam ekzistas en la fonto kaj malsamas=Snapshot data that also exists at the source and is differentCalcDiffThreadNSinkronigi dosierujan A & B diferencojnSync dir A & B differencesCalcDiffThreadSinkronigi dosierujon B kiu ankam ekzistas en sinkronigo de la dosiero A kaj estas malsama?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadnLa tujpretaj datumoj anstatamigos la fonton dum RESTORE=The snapshot data will replace the source data during RESTORECalcDiffThreadCeldosiero DestinationQObjectCeldosierujoDestination directoryQObjectDosierujo DirectoryQObject"Lasta plenumtempoLast execution timeQObjectBONEOKQObject FontoSourceQObjectFont-dosierujoSource directoryQObject,Sinkronigita dosierujoSync directoryQObjectSinkronigantaSyncingQObjectSinkroniganta'Full phrase: Syncing to SyncingQObject$Priskribo de taskoTask descriptionQObject8La taskolisto estas malplenaThe task list is emptyQObjectJUzanta foran, preterpasas kontroladonUsing remote, check is skippedQObject AVERTOWARNINGQObject kaj/amand/orQObjectkomando: command: QObjectne ekzistasdoes not existQObjecteraroj trovitaj errors foundQObject plenumo de taskoexecution of taskQObject plenumo de tasko3Full phrase: execution of task: finishedexecution of taskQObject plenumo de taskodFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectelira kodo : exit code: QObject finitafinishedQObject finita?Full phrase: execution of 1st part of task: finishedfinishedQObject finita3Full phrase: execution of task: finishedfinishedQObject finitaCFull phrase: post-task execution of COMMAND: finishedfinishedQObject liberafreeQObjectmalplenasis emptyQObject:estas malplena am ne ekzistasis empty or does not existQObject ne estas muntitais not mountedQObjectneniu eraro no errorsQObjectne disponebla not availableQObject"Nenio por komencinothing to startQObject eligo: output: QObjectstartantastartingQObjectstartanta?Full phrase: execution of 1st part of task: startingstartingQObjectstartanta?Full phrase: execution of 2nd part of task: startingstartingQObjectstartanta3Full phrase: execution of task: startingstartingQObjectstartanta?Full phrase: post-task execution of command: startingstartingQObject statostatusQObjectaltoQObjectal'Full phrase: Syncing to toQObject&Pri&About aboutDialog&Dankon al &Thanks to aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialogLAraba tradukisto por la grafika fasadoArabic gui translator aboutDialogAteno, GrekujoAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogBruce MarrinerBruce Marriner aboutDialogRKataluna tradukisto por la grafika fasadoCatalan gui translator aboutDialog^ina (tajvana) tradukisto por la grafika fasadoChinese (Taiwan) gui translator aboutDialogJeka tradukisto por la grafika fasadoCzech gui translator aboutDialog2Fleganto de Debian-paka5oDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogVNederlanda tradukisto por la grafika fasadoDutch gui translator aboutDialogElbert Pol Elbert Pol aboutDialogNEstona tradukisto por la grafika fasadoEstonian gui translator aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog6Fleganto de Free BSD-paka5oFree BSD package maintainer aboutDialogNFranca tradukisto por la grafika fasadoFrench gui translator aboutDialog2Fleganto de Gentoo-ebuildGentoo ebuild maintainer aboutDialogPGermana tradukisto por la grafika fasadoGerman gui translator aboutDialog@Greka tradukisto por la manlibroGreek manual translator aboutDialogLItala tradukisto por la grafika fasadoItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogFleganto de Mandriva-paka5o (oficiala deponejo de kontribuantoj)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialogPNorvega tradukisto por la grafika fasadoNorwegian gui translator aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialogPPortuga tradukisto por la grafika fasadoPortuguese gui translator aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialogrRusa tradukisto por la grafika fasado kaj valora testanto*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogSergio GameiroSergio Gameiro aboutDialog4Fleganto de Slackel-paka5oSlackel package maintainer aboutDialogPSlovaka tradukisto por la grafika fasadoSlovak gui translator aboutDialogPHispana tradukisto por la grafika fasadoSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogLSveda tradukisto por la grafika fasadoSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialog fermiclose aboutDialog"ligilo por donaci donation link aboutDialog fri13fri13 aboutDialog"luckyBackup - priluckyBackup - about aboutDialogmonomoney aboutDialogneniu monono money aboutDialog*portado al MS Windowsport to MS Windows aboutDialog&portado al Mac OS Xport to Mac OS X aboutDialogportado al OS/2 port to OS/2 aboutDialogRFleganto de Ubuntu-paka5o (launchpad PPA))ubuntu package maintainer (launchpad PPA) aboutDialogRezigniCancel emailDialogFermi dialogon Close dialog emailDialog NeniamNever emailDialogBoneOkay emailDialog TestoTest emailDialogkomando:command: emailDialog.luckyBackup - retmesaoluckyBackup - email emailDialogBoneOkay helpBrowser fermiclose logDialog&Pri&AboutluckyBackupWindow &Helpo&HelpluckyBackupWindowPriskribo DescriptionluckyBackupWindowCeldosiero DestinationluckyBackupWindowDosierujo DirectoryluckyBackupWindow FariteDoneluckyBackupWindow AnglaEnglishluckyBackupWindow AnglaDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowNENOluckyBackupWindowNOTENOTEluckyBackupWindow FontoSourceluckyBackupWindow TaskoTaskluckyBackupWindow8La taskolisto estas malplenaThe task list is emptyluckyBackupWindowNekonata eraro Unknown errorluckyBackupWindowNekonata erarothis refers to a process Unknown errorluckyBackupWindow AVERTOWARNINGluckyBackupWindowJESYESluckyBackupWindow aldoniaddluckyBackupWindoweraroj trovitaj errors foundluckyBackupWindow finitafinishedluckyBackupWindow finita:full phrase: 'Execution of profile finished'finishedluckyBackupWindow forigiremoveluckyBackupWindow statostatusluckyBackupWindowaltoluckyBackupWindowversio:version:luckyBackupWindowne disponebla not available manageDialog AVERTOWARNING manageWizard fermiclose manageWizarderaroj trovitaj errors found manageWizardneniu eraro no errors manageWizardne disponebla not available manageWizardRezigniCancel modifyDialogPriskribo Description modifyDialogCeldosiero Destination modifyDialogBoneOkay modifyDialog FontoSource modifyDialog$Priskribo de taskoTask description modifyDialog aldoniadd modifyDialog forigiremove modifyDialogRezigniCancel patternEditorBoneOkay patternEditordosiero filescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog ApriloAprilscheduleDialog Aprilofull phrase: 'of April'AprilscheduleDialogAmugstoAugustscheduleDialogAmugstofull phrase: 'of August'AugustscheduleDialogRezigniCancelscheduleDialogDecembroDecemberscheduleDialogDecembrofull phrase: 'of December'DecemberscheduleDialogFebruaroFebruaryscheduleDialogFebruarofull phrase: 'of February'FebruaryscheduleDialogJanuaroJanuaryscheduleDialogJanuarofull phrase: 'of January'JanuaryscheduleDialog JulioJulyscheduleDialog Juliofull phrase: 'of July'JulyscheduleDialog JunioJunescheduleDialog Juniofull phrase: 'of June'JunescheduleDialog MartoMarchscheduleDialog Martofull phrase: 'of March'MarchscheduleDialogMajoMayscheduleDialogMajofull phrase: 'of May'MayscheduleDialogNovembroNovemberscheduleDialogNovembrofull phrase: 'of November'NovemberscheduleDialogOktobroOctoberscheduleDialogOktobrofull phrase: 'of October'OctoberscheduleDialogSeptembro SeptemberscheduleDialogSeptembrofull phrase: 'of September' SeptemberscheduleDialog aldoniaddscheduleDialog fermiclosescheduleDialog$tago de la monato:day of month :scheduleDialog&tago de la semajno: day of week :scheduleDialogminminscheduleDialogmonato:month :scheduleDialogboneokayscheduleDialog forigiremovescheduleDialogRezigniCancel textDialogBoneOkay textDialogRezigniCancel winDialogBoneOkay winDialogluckybackup-0.5.0/translations/luckybackup_pt_BR.qm0000666000175000017500000044601013157502317022075 0ustar luckybluckybJNHY>KSYޟ]_gggbhYjszȜf ff[vS4aEj9E45N~HJaaa-aՓaa'%h5@~/E]ص+1*H5as%+Vw\T"fá"O&%({Y)2*`3*0+$++,B/]^@:?ĉZ˱qSFى>wK4nX|28=CFZ#sGra :~ q dSg95!bB8(e'c+&x.+Ѽ6F7<$GI|OW+Q19mQLR[:_/lwfC1hhwpNpN.q>,tcw!d6-AYEh65ѐSli:A~u ԳZŵ- ̰ ,'9 _h]vb]Ke #u&o")+l/r 28IiBZy(C cQIKPoEETYBBZH&\c-cf:\uMb|BKqOc2Rd6{ZI RGgk,|#>+4 CeN kIP,÷IpYԥ1{*V[i%&E-SE"PGҐ 5O:oH^ s3 Ava.b&\a4)4)9$*߬f,b8My:MT_rUeph !iJmiUtM}^.e .e3aT:Wc$<%xat$d M|Ň;ʵs9 0 [ܯ"<)>%b[~m1Jϗ,]u˄  ‰O '>eyq1 PsQ&+DADȪL~Y OSFOjzC eJiYz@i^lw9rt3 }7;:օLIIMlIʴI4II"4l,Q^AJфh %.3<He[F ok FiS6dmir  F F8-=\xl@+[m6>=In$Nn$p^!txv]hyx{~i[XF9Or$5ȕTȕqȕXJbg:ntî"ATpAXRߘ!?X*Rnv [3"B" \Q.Q;KM&CNKO؛VfI_Aveo_hDb#+f0-g4bhnhniܚikՒkՒ>+sD"av3y|}~g_vb$C(TG4Y|tuERaI<+I¸n`L=ȒR,E>n=(':@Z Q ߜ|u `L>읒YXfG`ԍ S X(v |=5,B^Ű;++e)-zM2 =9Y>!xE ]EN3UtxYvo`xea#؄vu^,v:{ _gIg3ڄ@D F)FǜF|ϕxi?ΕU jU#u+rndj*gG%4Bdȕi1a1LXT%UUZDnn-~E^ǧ79~4e7̐kjsIIM%׃B_vߖjLk@GY 93`32" ?;tL")l)@v,# -$m/eɡ1k9GF\cIX9JJεL6iNbPO4Ry ~:V)gh JmYzG@x5XR2x&i)(Yʴ5ʶ_'\K,q7ҶBdimi8) N  c ) q. g C #rx *{ +)f 6P 8H CcK& Mg Mg[ N#1 U  WU ]^ aY=n d j^t lڒ lRc mEY pI q R ]% @W eB zU ͆ 2 aGY -B> Z'= '0 Ԡ;X  ׊$ =0h . ( Ѿ Tu q Q c2}   9  -06 -n /l$ 7E 8 ?3 @  `- f g j" l$ pN%ǁ zj C / t H|3 K iY ~ c_( XBf/ V 24 bI ,r    GCoa ñ nB ? Xh,- h t$4 ԑ @ ݓ2 ُ T iܗ 7 pv "  v# ( Vd' d j  SĎ #J (N52 +y -V 0b 7'y} 93BkU :UC# ; E Ge' HZ L9 - PAa T, T# Zq _yu _ : f g.w" g.wr g.w;_ i i*) k m { { { Η  F Ҟ ".   Y YH e >ӊ @e A. Acse Eh. Fݎ F. LM& N0 P}< Szh X ^ bU o+ o90 r'^ v Gn  q j6 c 0 r \%ս H " UNOq ys  ~(  T *C sS զ \ %  2pe a> Rbb* 7 ?BW  ;|  sm @ T # &, &' ) *}E +e ,D# ,D= 6>^ P\ \.~6 cD i m] {1 ea 12  y {  > i2Cn ms= cK l'O Xw2 + f zp lz  I  j lh Y i [ ": ,ɣ ݗK # 䕜[ ( c2}! ($  Y0 8 8! 8*\ 6_ 6N]=/sY?C!ԵG'~v(q0*#>/#YOE7GۣJ?Tba/!\P].acRy+e~ydmRp{>Uyi,{Dr[tT'YK+<_xA { RE@>v$rNuX֭ 3MC̖%ck{d 4dU"'eZG CenZ#a!4&)Nn(դ-B(դ _-X`d4?)<EE^ϕG E=$I"FNRN>[=Ou^i\crf/lnOsusu@u@~(NYiUd k4 yfC t4;)*\y{&J8Mv%1ɟ) ʱNu+\+uZ_֙SGGLߖ0l@;]km)0.!YGPp` ŕni+*Calculando diferenasCalculating differencesCalcDiffThreadA quantidade de dados enorme. Exibindo apenas as primeiras entradas2Data amount is huge. Displaying only first entriesCalcDiffThread$Por favor, aguarde Please waitCalcDiffThread Varrendo destinoScanning destinationCalcDiffThread:Varrendo registro instantneoScanning snapshotCalcDiffThreadVarrendo origemScanning sourceCalcDiffThreaddDiferenas entre a origem e o registro instantneoSnapshot and source differencesCalcDiffThreadOs dados do registro instantneo que tambm existem na origem e so diferentes=Snapshot data that also exists at the source and is differentCalcDiffThreadtOs dados do registro instantneo que NO existem na origem-Snapshot data that do NOT exist at the sourceCalcDiffThreadtOs dados da origem que NO existem no registro instantneo-Source data that do NOT exist at the snapshotCalcDiffThread`Sincronizar diferenas entre os diretrios A & BSync dir A & B differencesCalcDiffThreadSincronizar os dados do diretrio A que NO existem no diretrio B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSincronizar os dados do diretrio B que tambm esto no diretrio A e so diferentes?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSincronizar os dados do diretrio B que NO existem no diretrio A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadOs dados do registro instantneo iro substituir os dados da origem durante a RESTAURAO=The snapshot data will replace the source data during RESTORECalcDiffThreadEstes sero excludos durante a RESTAURAO apenas se voc habilitar a opo:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadxExcluir dados existentes da origem que no existem no backup;delete existing source data that do not exist at the backupCalcDiffThreadlPerfil de backup, arquivos de log e dados instantneos.Backing-up profile, logfiles and snapshot dataQObjectCRTICOCRITICALQObjectXComando executa novamente devido a uma falhaCommand re-run due to failureQObjectLNo foi possvel abrir o aquivo de logCould not open the logfileQObjectDestino DestinationQObject(Diretrio de destinoDestination directoryQObjectDiretrio DirectoryQObjectEu no tenho permisso de ler/entrar no diretrio A sincronizado;I do not have the permission to read/enter sync directory AQObjectEu no tenho permisso para ler/entrar no diretrio B sincronizado;I do not have the permission to read/enter sync directory BQObjectzEu no tenho persmisso de ler/entra rno diretrio de destinoDI do not have the permission to read/enter the destination directoryQObjectxEu no tenho persmisso de ler/entrar no diretrio de origem?I do not have the permission to read/enter the source directoryQObjectEu <font color=organge><b>no pularei</b></font> esta tarefa. A Sincronizao ser realizada de qualquer maneiraiI will not skip this task. Synchronizing is going to be performed anywayQObjectEu <font color=red><b>NO PULAREI</b></font> esta tarefa por que voc habilitou a opo "AVISO por senha"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject0ltimo tempo de execuoLast execution timeQObjectOkOKQObjectPor favor, <b>desmarque as caixas de incluso apropriadas</b> antes de prosseguirAPlease uncheck appropriate include boxes before proceedingQObjectPor favor, desmarque as caixas de incluso apropriadas ou altere todos os tipos de tarefas para outros do '<b>Backup do contedo do diretrio</b>' ou use 'Backup do contedo do diretrio' juntamente com a opo' <b>Apenas incluir</b>', antes de prosseguirPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject OrigemSourceQObject&Diretrio de origemSource directoryQObject*Sincronizar diretrioSync directoryQObjectSincronizandoSyncingQObjectSincronizando'Full phrase: Syncing to SyncingQObject&Descrio da tarefaTask descriptionQObjectO Diretrio De Destino ser criado se no existir e preenchido com novos dados de backup]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectlAs seguintes tarefas includas <b>compartilham o mesmo diretrio de destino</b> (todos em conjunto ou em grupos) e, pelo menos um deles realizar o backup do contedo de um diretrioThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectHO arquivo de log no pode ser criado The logfile could not be createdQObject6O arquivo de log no existeThe logfile does not existQObject6O processo reportou um erroThe process reported an errorQObjectlO comando especificado provalvemente no est intalado/The specified command is probably not installedQObject:A lista de tarefas est vaziaThe task list is emptyQObject^Esta tarefa <font color=orange><b>ser ignorada3This task will not be skippedQObjectnEsta tarefa ser <font color=red><b>ignorada</b></font>7This task will be skippedQObjectBUsando remoto, seleo ignoradaUsing remote, check is skippedQObject AVISOWARNINGQObjecthVoc incluiu ambas das seguintes tarefas conectadas:8You have included both of the following connected tasks:QObjectBVoc no incluiu qualquer tarefasYou have not included any tasksQObjecte/ouand/orQObjectcomando: command: QObjectno existedoes not existQObject"erros encontrados errors foundQObjectHexecuo da primeira parte da tarefaexecution of 1st part of taskQObjectHexecuo da primeira parte da tarefa?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectFexecuo da segunda parte da tarefaexecution of 2nd part of taskQObject$execuo de tarefaexecution of taskQObject$execuo de tarefa3Full phrase: execution of task: finishedexecution of taskQObject$execuo de tarefadFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject cdigo de sada: exit code: QObjectfinalizadofinishedQObjectfinalizada?Full phrase: execution of 1st part of task: finishedfinishedQObjectfinalizada3Full phrase: execution of task: finishedfinishedQObjectfinalizadoCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectterminou por causa de erros na pr/ps execuo de tarefas de comando9finished because of pre/post task command execution errorQObject livrefreeQObjectest vazioais emptyQObject0est vazio ou no existeis empty or does not existQObject no est montadois not mountedQObjectsem erros no errorsQObjectno disponvel not availableQObject"nada para iniciarnothing to startQObject sada: output: QObjectDps-execuo de tarefas de comandopost-task execution of commandQObjectDps-execuo de tarefas de comandoCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectDpr-execuo de tarefas de comandopre-task execution of commandQObjectDpr-execuo de tarefas de comandoBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectiniciandostartingQObjectiniciando?Full phrase: execution of 1st part of task: startingstartingQObjectiniciando?Full phrase: execution of 2nd part of task: startingstartingQObjectiniciando3Full phrase: execution of task: startingstartingQObjectiniciando?Full phrase: post-task execution of command: startingstartingQObject statusstatusQObjectLisso no permitido por razes bvias'this is not allowed for obvious reasonsQObjectZisto levar a uma tarefa cancelando as outras.this will lead to one task canceling the otherQObjectatoQObjecta'Full phrase: Syncing to toQObjectLNo foi possvel abrir o aquivo de logCould not open the logfile ReadLogFile &Sobre&About aboutDialog$Acordo de &Licena&License Agreement aboutDialog &Apoio&Support aboutDialog&Agradecimentos &Thanks to aboutDialog...minha outra metade, <b>Dimitra</b> que me aturou e atura enquanto este projeto est em desenvolvimentoj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog4...a todos os usurios dos...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialog@Tradutor da interface para rabeArabic gui translator aboutDialogMantenedor oficial do pacote/construo do pacote para Arch Linux5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtenas, GrciaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogFAplicao de Sincronizao & BackupBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogTradutor da interface para Bsnio & mantenedor do pacote para o Mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog:Tradutor blgaro da interfaceBulgarian gui translator aboutDialogDTradutor da interface para CataloCatalan gui translator aboutDialogJTradutor Chins (Taiwan) da interfaceChinese (Taiwan) gui translator aboutDialogContribuidor de cdigo para suporte remoto & vss relativos ao porte do windowsDCode contributor for remote & vss support regarding the windows port aboutDialog^No foi possvel localizar o arquivo de licena!Could not locate the license file aboutDialog@Tradutor da interface para ChecoCzech gui translator aboutDialogDMantenedor do pacote para o DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogFTradutor da interface para HolandsDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogEspecialmente Especially aboutDialogHTraduo da interface para EstonianoEstonian gui translator aboutDialogpMantenedor do pacote para o Fedora (repositrio oficial))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialogHMantenedor do pacote para o Free BSDFree BSD package maintainer aboutDialogDTradutor da interface para FrancsFrench gui translator aboutDialogTradutor da interface para Francs e valioso acessor de empacotamento (e no apenas)AFrench gui translator and valuable packing advisor (and not only) aboutDialog8Tradutor galego da interfaceGalician gui translator aboutDialogLMantenedor de construo para o GentooGentoo ebuild maintainer aboutDialogBTradutor da interface para AlemoGerman gui translator aboutDialog6D um polegar para cima em:Give a thumbs up at: aboutDialogfTradutor da interface para Grego e testador valioso(Greek gui translator and valuable tester aboutDialog:Tradutor do manual para GregoGreek manual translator aboutDialogEu pessoalmente nunca tive e nunca irei aceitar dinheiro para este projeto.DI personally never had and never will accept money for this project. aboutDialogSe no fosse por ele e seus tutoriais, eu nunca teria comeado este projetoJIf it wasn't him and his tutorials I would never have started this project aboutDialogSe voc gostou deste aplicativo e gostaria de doar alguma coisa para mim pessoalmente, tudo que voc tem a fazer :`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog\ <b>software livre</b>: voc pode redistribuir e/ou modificar sob os termos da Licena Pblica Geral GNU como publicado pela Fundao do Software Livre, verso 3 da Licena.It 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, version 3 of the License. aboutDialogR distribudo na esperana de que seja til, mas SEM QUALQUER GARANTIA, sem mesmo a garantia implcita de COMERCIALIZAO ou DE QUE SERVIR PARA UM PROPSITO PARTICULAR.It 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. aboutDialogFTradutor da interface para ItalianoItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogE para terminarLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogMantenedor do pacote para o Mandriva (repositrio contrib oficial)3Mandriva package maintainer (official contrib repo) aboutDialogMrcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMantenedor do pacote para o Mepis linux (Repositrio comunitrio) & tradutor da interface para EspanholBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNo entanto, eu decidi usar luckyBackup para apoiar as pessoas que realmente precisam de ajuda financeira.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog>Tradutor noruegus da interfaceNorwegian gui translator aboutDialogMantenedor do pacote para o OpenSUSE (Repositrio comunitrio KDE4) e valioso acessor de empacotamentoNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog\Tradutor da interface para Portugus do BrasilPortuguese gui translator aboutDialog2Mantenedor do Puppy & sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialogBTradutor da interface para RomenoRomanian gui translator aboutDialogfTradutor da interface para Russo e testador valioso*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogjVeja a aba 'Acordo de Licena' para mais informaes.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog6Mantendor do pacote SlackelSlackel package maintainer aboutDialog<Tradutor da interface EslovacoSlovak gui translator aboutDialogFTradutor da interface para EslovenoSlovenian gui translator aboutDialogEnto, por favor, considere seriamente em doar dinheiro que ser eventualmente usado para uma boa causa._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogFTradutor da interface para EspanholSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog@Tradutor da interface para SuecoSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog"A equipe indifex The indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog.Esta minha recompensaThis is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialog@Tradutor da interface para TurcoTurkish gui translator aboutDialog&Conselheiro valiosoValuable advisor aboutDialog:Vote bom & torne-se um f de:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogZdesenvolvedor do script python backupwhenidle&backupwhenidle python script developer aboutDialog Fecharclose aboutDialog Link para doao donation link aboutDialogJEx-mantenedor do pacote para o Fedoraex Fedora package maintainer aboutDialogpara o desenvolvimento maravilhoso da plataforma de localizao Transifex e fornecendo-a livrementeVfor developing the wonderful transifex localization platform and providing it for free aboutDialog,fruns pelo seu apoio.forums for their support. aboutDialog fri13fri13 aboutDialog&luckyBackup - SobreluckyBackup - about aboutDialogluckyBackup distribudo sob os termos da <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Licena Pblica Geral GNU</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogdinheiromoney aboutDialogsem dinheirono money aboutDialogpinguinofuriosopinguinofurioso aboutDialog6adaptao para o MS Windowsport to MS Windows aboutDialog2Adaptao para o Mac OS Xport to Mac OS X aboutDialogPort para OS/2 port to OS/2 aboutDialogEmpacotador rpm, testador valioso e conselheiro de conexes remotas <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog Fecharclose logDialogBCarregando arquivo de registro...loading logfile... logDialog^luckyBackup - progresso da execuo das tarefas&luckyBackup - tasks execution progress logDialogPrximo erro next error logDialogErro anteriorprevious error logDialogAguardewait logDialog &%1 %2&%1 %2luckyBackupWindowCancel&ar&AbortluckyBackupWindow &Sobre&AboutluckyBackupWindow&Adicionar&AddluckyBackupWindowEx&cluir&DeleteluckyBackupWindow&Manual &HandbookluckyBackupWindow &Ajuda&HelpluckyBackupWindow&Importar&ImportluckyBackupWindow&Idioma &LanguageluckyBackupWindowJ&Minimizar para a rea de notificao&Minimize to trayluckyBackupWindow&Modificar&ModifyluckyBackupWindow &Novo&NewluckyBackupWindow&Perfil&ProfileluckyBackupWindow&PerfilThis is a top menu item&ProfileluckyBackupWindow &Sair&QuitluckyBackupWindow&Atualizar&RefreshluckyBackupWindow&Remover&RemoveluckyBackupWindow&Restaurar&RestoreluckyBackupWindow&Salvar&SaveluckyBackupWindow&Configuraes &SettingsluckyBackupWindow&Tarefas&TaskluckyBackupWindow&TarefaThis is a top menu action&TaskluckyBackupWindow*&Barra de ferramentas &ToolbarsluckyBackupWindow8&Visualizar/Editar Descrio&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowCANCELADOABORTEDluckyBackupWindowCancelarAbortluckyBackupWindowCancelando: Por favor, aguarde por todos os processos serem finalizados4Aborting: Please wait for all processes to be killedluckyBackupWindow AesActionsluckyBackupWindowTodos os arquivos (logs etc) relevantes tambm tm sido excludos4All relevant files (logs etc) have also been deletedluckyBackupWindowTodos os arquivos (logs etc) relevantes tambm tm sido duplicados7All relevant files (logs etc) have also been duplicatedluckyBackupWindowTodos os arquivos (logs etc) relevantes tambm tm sido atualizados4All relevant files (logs etc) have also been updatedluckyBackupWindow8Todas as tarefas completadasAll tasks completedluckyBackupWindowXVoc tem certeza que deseja excluir o perfil'Are you sure you want to delete profileluckyBackupWindowlVoc tem certeza de que deseja excluir o perfil padro3Are you sure you want to delete the default profileluckyBackupWindowpVoc tem certeza que deseja remover a seguinte tarefa ??5Are you sure you want to remove the following task ??luckyBackupWindow`Iniciar a execuo de todas as tarefas includas)Begin the execution of all included tasksluckyBackupWindow(Caixa de VerificaoCheckBoxluckyBackupWindow~Verificao est desativada. Essa tarefa ser <b>descartada</b>5Checks are disabled. This task will be skippedluckyBackupWindowHNo foi possvel localizar o arquivoCould not locate the fileluckyBackupWindowNo foi possvel atualizar a ltima execuo decorrida das tarefas-Could not update last execution time of tasksluckyBackupWindow(Fechou abrupitamenteCrashedluckyBackupWindow.Criar tarefa D&uplicadaCreate D&uplicate taskluckyBackupWindow8Criar tarefa de R&estauraoCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow CTRL+XCtrl+XluckyBackupWindowPerfil AtualCurrent ProfileluckyBackupWindowD&uplicar D&uplicateluckyBackupWindowPa&droDe&faultluckyBackupWindowDescrio DescriptionluckyBackupWindowDestino DestinationluckyBackupWindowDiretrio DirectoryluckyBackupWindowTerminadoDoneluckyBackupWindowSimulaoDryluckyBackupWindowE-&mailE&mailluckyBackupWindowE&xportarE&xportluckyBackupWindowERROERRORluckyBackupWindowSAIREXITluckyBackupWindowTempo decorrido Elapsed timeluckyBackupWindowAs preferncias do e-mail foram <font color=green>atualizadas com sucessoBEmail preferences have been updated successfullyluckyBackupWindowRReportar e-mail aps a execuo do perfil$Email report after profile executionluckyBackupWindow$Portugus (Brasil)EnglishluckyBackupWindow&Portugus do BrasilDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowtOcorreram erros durante a transferncia de arquivos de log'Errors occured during logfiles transferluckyBackupWindowOcorreram erros durante a transferncia de dados e arquivos de log5Errors occured during snapshots and logfiles transferluckyBackupWindow`Ocorreram erros durante a transferncia de dados(Errors occured during snapshots transferluckyBackupWindowxOcorreram erros durante a transferncia do arquivo de perfil/Errors occured during the profile file transferluckyBackupWindow$Execuo de perfilExecution of profileluckyBackupWindow>Execuo das tarefas concludasExecution of tasks finishedluckyBackupWindowA execuo das tarefas foram violentamente terminadas pelo usurio4Execution of tasks were terminated violently by userluckyBackupWindowSairExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowJFalha ao criar o diretrio de destino&Failed to create destination directoryluckyBackupWindow8Falha ao criar o novo perfilFailed to create new profileluckyBackupWindowpFalha ao excluir todos os arquivos (logs etc) relevantes.Failed to delete all relevant files (logs etc)luckyBackupWindow2Falha ao excluir o perfilFailed to delete profileluckyBackupWindowrFalha ao duplicar todos os arquivos (logs etc) relevantes1Failed to duplicate all relevant files (logs etc)luckyBackupWindow0Falha ao duplicar perfilFailed to duplicate profileluckyBackupWindow0Falha ao duplicar perfilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow0Falha ao exportar perfilFailed to export profileluckyBackupWindow4Falha ao importar o perfilFailed to import profileluckyBackupWindow6Falha ao renomear o perfil Failed to rename profileluckyBackupWindow8Falha ao substituir o perfilFailed to replace profileluckyBackupWindow"Falhou ai iniciarFailed to startluckyBackupWindowtFalha ao atualizar todos os arqvivos (logs etc) relevantes.Failed to update all relevant files (logs etc)luckyBackupWindow:Ocultar informaes da janelaHide information windowluckyBackupWindow:Ocultar informaes da janela+hide/show information window button tooltipHide information windowluckyBackupWindowImportar PerfilImport ProfileluckyBackupWindow(Informao da janelaInformation windowluckyBackupWindow*Janela de informaesinformation window titleInformation windowluckyBackupWindow`ltima execuo decorrida das tarefas atualizada$Last execution time of tasks updatedluckyBackupWindowJLista de todas as tarefas disponveisList of all the available tasksluckyBackupWindow TravarLockluckyBackupWindow,Gerenciador De &BackupManage &BackupluckyBackupWindow,Gerenciador de Tarefas Manage TaskluckyBackupWindowdMover a tarefa selecionada para baixo, uma posio/Move the highlighted task down, by one positionluckyBackupWindowbMover a tarefa selecionada para cima, uma posio-Move the highlighted task up, by one positionluckyBackupWindowNONOluckyBackupWindowNO INCLUDO NOT INCLUDEDluckyBackupWindowNOTANOTEluckyBackupWindow,Nenhum erro encontradoNo errors foundluckyBackupWindow.Agora otimizando tarefaNow performing taskluckyBackupWindowApenas mostrar erros e mensagens importantes durante a atualizao da janela could not be saved'ProfileluckyBackupWindow PerfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Perfil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow PerfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow PerfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Perfillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Perfil3full phrase: 'Profile set as default'ProfileluckyBackupWindowjA atualizao da barra de progresso no ser realista(Progressbar update will not be realisticluckyBackupWindowR&enomearR&enameluckyBackupWindowLer erro Read errorluckyBackupWindownRemovido todos os dados antigos do registro instantneo Removed all older snapshots dataluckyBackupWindowRemovendoRemovingluckyBackupWindowRemovendo registro instantneo antigo e arquivo de log de tarefa+Removing old snapshots and logfiles of taskluckyBackupWindowExecutarRunluckyBackupWindowA&gendar S&cheduleluckyBackupWindowHSelecionar o diretrio de exportaoSelect export directoryluckyBackupWindow$Definir com padroSet as DefaultluckyBackupWindow Definir caminhos Set pathsluckyBackupWindow`Definir os caminhos para os comandos ssh e rsync$Set paths for rsync and ssh commandsluckyBackupWindow:Mostrar informaes da janelaShow information windowluckyBackupWindow:Mostrar informaes da janela+hide/show information window button tooltipShow information windowluckyBackupWindow0Mostrar texto sob conesShow text under iconsluckyBackupWindow OrigemSourceluckyBackupWindowDParar AGORA as tarefas em execuo'Stop the execution of running tasks NOWluckyBackupWindowJDiretrio de destino criado com xito)Successfuly created destination directoryluckyBackupWindow TarefaTaskluckyBackupWindow Lista de tarefas Task listluckyBackupWindow4Lista de tarefas do perfilTask list of profileluckyBackupWindow*A descrio do perfilThe description of profileluckyBackupWindowO diretrio que voc selecionou no contm dados vlidos do perfilCThe directory you have selected does not contain valid profile dataluckyBackupWindowtO nome que voc digitou contm apenas caracteres invlidos:The name you have entered contains only invalid charactersluckyBackupWindowHO sistema ser desligado em 1 minuto$The system will shutdown in 1 minuteluckyBackupWindow8A lista de tarefa est vaziaThe task list is emptyluckyBackupWindowIsto ir executar um <b>simulao</b> que no far qualquer alterao (e produz principalmente a mesma sada como uma execuo real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindowTempo esgotado Timed outluckyBackupWindow>No foi possvel abrir o perfilUnable to open profileluckyBackupWindow"Erro desconhecido Unknown errorluckyBackupWindow"Erro desconhecidothis refers to a process Unknown errorluckyBackupWindowhUtilizar o boto "adicionar" diretira para iniciar0Use the "add" button on the right to get startedluckyBackupWindowUtilizar o 'incluir checkboxes' para incluir ou no uma tarefa selecionada>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowNVisualizar/Editar a descrio do perfil!View/Edit the profile descriptionluckyBackupWindow AVISOWARNINGluckyBackupWindowBem-vindo ao Welcome toluckyBackupWindowBVoc gostaria tambm de remover :Would you like to also remove:luckyBackupWindowPVoc gostaria de prosseguir mesmo assim?!Would you like to proceed anyway?luckyBackupWindow<Voc gostaria de substitui-lo?Would you like to replace it ?luckyBackupWindow\Voc gostaria de salv-lo antes de prosseguir?-Would you like to save it before proceeding ?luckyBackupWindowEscrever erro Write errorluckyBackupWindowSIMYESluckyBackupWindowjVoc pediu por uma tarefa de RESTAURAO a ser criada/You have asked for a RESTORE task to be createdluckyBackupWindowhVoc incluiu apenas as tarefas que vo ser ignorados9You have only included tasks that are going to be skippedluckyBackupWindowdVoc atingiu o limite mximo de tarefas suportadas5You have reached the maximum limit of supported tasksluckyBackupWindowVoc tem que remover uma tarefa se voc quiser adicionar outra !!7You have to remove a task if you wish to add another !!luckyBackupWindow`um novo em branco, com o mesmo nome, ser criado4a new blank one, with the same name, will be createdluckyBackupWindowAdicionaraddluckyBackupWindow(Adicionar uma tarefaadd taskluckyBackupWindowj existealready existsluckyBackupWindow:e lista suspensa do 'perfil' and 'profile' drop-down listluckyBackupWindow>e adicionado na lista de perfiland added at the profile listluckyBackupWindowve altere qualquer coisa que voc queira antes de prosseguir.and change anything you wish before proceedingluckyBackupWindowcomoasluckyBackupWindowcomoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowCalculando calculatingluckyBackupWindowcalculando-info message displayed during ...calculations calculatingluckyBackupWindow"Sada de comandoscommands outputluckyBackupWindow&no pde ser criadocould not be createdluckyBackupWindow$no pde ser salvocould not be savedluckyBackupWindow$no pde ser salvoPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow$criado com sucessocreated successfullyluckyBackupWindow2Criando perfil padro ...creating default profile ...luckyBackupWindow$Criando perfil ...creating profile ...luckyBackupWindowlcontrab atual <font color=green>atualizado com sucesso6current crontab updated successfullyluckyBackupWindowPerfil atualcurrent profileluckyBackupWindowperfil padrodefault profileluckyBackupWindowperfil padro^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowPerfil padroVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow(excludo com sucessodeleted successfullyluckyBackupWindow$Excluindo arquivosdeleting filesluckyBackupWindow$excluindo arquivos/info message displayed during ...file deletionsdeleting filesluckyBackupWindowexibr - restaurar - excluir backups existentes das tarefas destacadas?display - restore - delete existing backups of highlighted taskluckyBackupWindowVexibir informaes sobre tarefas destacadas.display information regarding highlighted taskluckyBackupWindow4duplicado com sucesso comoduplicated successfully asluckyBackupWindow"Erros encontrados errors foundluckyBackupWindow&Execuo de perfil:execution of profile:luckyBackupWindow&Execuo de perfil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow4exportado com sucesso paraexported successfully toluckyBackupWindow"falhou ao removerfailed to removeluckyBackupWindowFalha ao remover todos os dados antigos do resgistro instantneo)failed to remove all older snapshots dataluckyBackupWindowConcludofinishedluckyBackupWindowConcludo:full phrase: 'Execution of profile finished'finishedluckyBackupWindow,importado com sucesso imported successfullyluckyBackupWindowem progresso...in progress...luckyBackupWindowIncluirincludeluckyBackupWindowfoi modificado is modifiedluckyBackupWindow"no vlido parais not valid forluckyBackupWindow2Pular para o prximo errojump to next errorluckyBackupWindow4Pular para o erro anteriorjump to previous errorluckyBackupWindow*carregado com sucessoloaded successfullyluckyBackupWindow8Carregando perfil padro ...loading default profile ...luckyBackupWindow"Falha ao carregarloading failedluckyBackupWindow*Carregando perfil ...loading profile ...luckyBackupWindowjArquivos de registros, foram criados sob o diretrio:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindowHMinimizar para a rea de notificaominimize to trayluckyBackupWindowZMinimizar a janela para a rea de notificao%minimizes the window to the tray arealuckyBackupWindowModificarmodifyluckyBackupWindow<Modificar a tarefa selecionadamodify highlighted taskluckyBackupWindowNada a fezer nothing to doluckyBackupWindowBPs-execuo de comando da tarefapost-task execution of commandluckyBackupWindowBPr-execuo de comando da tarefapre-task execution of commandluckyBackupWindow perfilprofileluckyBackupWindow PerfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow perfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow perfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow perfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow perfilprofile luckyBackupWindowmodo silencioso quiet modeluckyBackupWindowatualizada refreshedluckyBackupWindowRemoverremoveluckyBackupWindow8Remover a tarefa selecionadaremove highlighted taskluckyBackupWindow4renomeado com sucesso pararenamed successfully toluckyBackupWindow4renomeado com sucesso paraWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowvRsync e pr/ps sada de comandos de tarefas exibida aqui9rsync and pre/post task commands output is displayed hereluckyBackupWindow"salvo com sucessosaved successfullyluckyBackupWindow4Salvando perfil padro ...saving default profile ...luckyBackupWindow&Salvando perfil ...saving profile ...luckyBackupWindowAgendado scheduledluckyBackupWindow(definido como padroset as defaultluckyBackupWindowdefinida paraset toluckyBackupWindowdesligarshutdownluckyBackupWindow"Modo de simulaosimulation modeluckyBackupWindow StatusstatusluckyBackupWindowSuper usurio super userluckyBackupWindow$Modo super usuriosuper user modeluckyBackupWindowparatoluckyBackupWindow*transferindo arquivostransferring filesluckyBackupWindow*transferindo arquivos/info message displayed during ...file transferstransferring filesluckyBackupWindow2tentando enviar um e-mailtrying to send an emailluckyBackupWindowverso:version:luckyBackupWindow&Calcular diferenasCalculate differences manageDialogCalcular as diferenas entre a origem e o registro instantneo selecionadoFCalculate the differences between the source and the selected snapshot manageDialog>Clculos encerrado pelo usurioCalculations terminated by user manageDialog FecharClose manageDialog$Fechar esta janelaClose this window manageDialogExcluirDelete manageDialogfExcluir o registro instantneo e seu arquivo de log,Delete the selected snapshot and its logfile manageDialogvEu no tenho permisses suficientes para ler este diretrio;I do not have sufficient permissions to read this directory manageDialogjPor favor, selecione um registro instantneo da lista&Please select a snapshot from the list manageDialoghPor favor, aguarde at que a tarefa esteja terminada*Please wait until the thread is terminated manageDialogRestaurarRestore manageDialogZRestaurar o resgistro instantneo selecionadoRestore the selected snapshot manageDialog PARARSTOP manageDialog&Para clculos AGORAStop calculations NOW manageDialog2Este diretrio no existeThis directory does not exist manageDialog2Este diretrio no existeInformation messageThis directory does not exist manageDialog~Visualizar o arquivo de log do registro instantneo selecionado)View the logfile of the selected snapshot manageDialogVisualizar o arquivo de log da tarefa de sincronizao selecionada*View the logfile of the selected sync task manageDialogDestino: destination: manageDialogOcultar origem hide source manageDialogFluckyBackup - gerenciador de backupluckyBackup - manage backup manageDialogNo disponvel not available manageDialog Perfilprofile manageDialogOrigem:source: manageDialog.sincronizar diretrio A sync dir A manageDialog.sincronizar diretrio B sync dir B manageDialog Tarefatask manageDialog&Visualizar registroview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABORTARABORT manageWizardCanceladoAborted manageWizard"Caminho do backup Backup path manageWizardlNavegar localmente para um novo caminho de restaurao%Browse locally for a new restore path manageWizardMarque isto, para clonar o backup recente para o diretrio de restaurao.BCheck this, to clone the backup snapshot to the restore directory. manageWizardData & hora Date & time manageWizardExcluir backup Delete backup manageWizardjExcluir os dados existentes que no existem no backup4Delete existing data that do not exist at the backup manageWizardExcluindo dados Deleting data manageWizardVExcluindo o arquivo que lista as alteraes)Deleting file that lists snapshot changes manageWizardPExcluindo o arquivo de resgistro recenteDeleting snapshot logfile manageWizardOs arquivos de backup existentes iro substituir os arquivos correspondentes ao restaurar o diretrioSExisting backup files will replace the corresponding files at the restore directory manageWizardTerminadoFinished manageWizardSe a informao anterior est correta, clique em <b>Iniciar</b> para comear@If the information above is correct, click start to begin manageWizardSe a informao anterior est correta, clique em <b>Iniciar</b> para comear`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard2Pular para o prximo erroJump to next error manageWizard4Pular para o erro anteriorJump to previous error manageWizard^No h dados especficos recentes. Ignorando...,No snapshot specific data exist. Skipping... manageWizardCaminhoPath manageWizard Restaurar backupRestore backup manageWizard,Caminho de restaurao Restore path manageWizardFRestaurando dados: tronco principalRestoring data: main trunk manageWizardHRestaurando dados: arquivos da listaRestoring data: snapshot files manageWizardPSelecionar novo diretrio de restauraoSelect new restore directory manageWizardtO diretrio de restaurao ser idntico ao backup recenteBThe restore directory will become identical to the backup snapshot manageWizardIsto ir executar uma <b>simulao</b> que no faz quaisquer alteraes (e produz principalmente o mesmo resultado como uma execuo real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardPAtualizando a lista de arquivos recentesUpdating list of snapshots manageWizard AVISOWARNING manageWizardVVoc est prestes a excluir dados de backup#You are about to delete backup data manageWizardCancelarcancel manageWizardAlterarchange manageWizard Fecharclose manageWizard erros encontrado errors found manageWizard falhoufailed manageWizard falhou-info message displayed after ...file deletionfailed manageWizardFluckyBackup - gerenciador de backupluckyBackup - manage backup manageWizardPrximo erro next error manageWizardSem erros no errors manageWizardNo disponvel not available manageWizardErro anteriorprevious error manageWizardSimulao simulation manageWizardIniciarstart manageWizardsucessosuccess manageWizardsucesso-info message displayed after ...file deletionsuccess manageWizardsucesso5info message displayed after ...snapshots list updatesuccess manageWizard'Mquina remota' est marcada, mas o nome da mquina remota no foi declarado='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>No se esquea</b> de definir um diretrio na caixa 'Excluir' que ir conter o destinofDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@Mquina:@Host: modifyDialogAdicionar qualquer diretrio, arquivo ou pado para ser executado a partir dessa lista@Add any directory, file or pattern to be excluded from this task modifyDialogAdicionar qualquer diretrio, arquivo ou padro para ser includo por esta tarefa>Add any directory, file or pattern to be included by this task modifyDialog`Adicionar comando como digitado no campo ao lado*Add command as entered in the field beside modifyDialogbAdicionar excluso como digitado no prximo campo*Add exclusion as entered in the next field modifyDialogbAdicionar incluso como digitado no prximo campo*Add inclusion as entered in the next field modifyDialogAdicionar ou remover quaisquer opes do rsysnc. Se voc no tem ideia do que significa isso, deix-los intocados !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogpAdicionar opo do rsysnc como digitado no prximo campo-Add rsync option as entered in the next field modifyDialogAvanadoAdvanced modifyDialog DepoisAfter modifyDialogTodos os campos declarados na janela Propriedades da tarefa parecem estar ok?All declared fields of the task properties window seem to be ok modifyDialogExecutar Tambm Also Execute modifyDialogPTentativa de atividades do super-usurioAttempt super-user activities modifyDialogDBackup da Origem dentro do Destino Backup Source inside Destination modifyDialog$Arquivos de backup Backup files modifyDialog4Backup de arquivos abertosBackup open files modifyDialog AntesBefore modifyDialogPastas cache Cache folders modifyDialogCancelarCancel modifyDialog&Marque isto se voc utilizar uma partio FAT/NTFS como destino. Permisses e proprietrios dos dados NO sero preservados. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogMarque esta para clonar a origem para o destino Desmarque para criar um diretrio extra dentro do destinoiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogvVerifique isso para se conectar a um mdulo remoto do rsync/Check this to connect to an rsync Remote module modifyDialog"Opes do ComandoCommand Options modifyDialog"Lista de comandos Command list modifyDialogCopiar dispositivo (super usurio apenas) & arquivos especiais como eles so (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogdCopiar links simblicos como links simblicos (-l)Copy symlinks as symlinks (-l) modifyDialogDefinir o tipo desta tarefa: 1. Backup do Diretrio de Origem, dentro do Destino (veja tambm a caixa "NO criar diretrio") 2. Sincronizar Origem & Destino, mantendo os arquivos mais recentes em ambosDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefine o tipo dessa tarefa: 1. Backup do contedo da Origem dentro do Destino 2. Backup do diretrio Origem pelo nome dentro do Destino 3. Sincronizar Origem & Destino, mantendo os arquivo mais recentes em ambos os ladosDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog<Excluir os arquivos no destinoDelete files on the destination modifyDialogHExcluir arquivos no destino que no existem na origem "Recursivo nos diretrios" tem que ser selecionado (--delete-after & --delete-excluded se "Exclude" usado)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescrio Description modifyDialogDestino Destination modifyDialogDestino : Destination : modifyDialog$Destino FAT/NTFSDestination is FAT/NTFS modifyDialog2NO criar diretrio extraDo NOT create extra directory modifyDialogNo fazer backup dos arquivos de origem que so mais recentes no destino (--upadte)HDo not backup source files that are newer on the destination (--update) modifyDialogNo excluir isto da lista de padres. Por favor, consulte o manual para melhor entendimento das regras de excluso.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog2Editar incluso destacadaEdit highlighted inclusion modifyDialogDigite um nome para essa tarefa (ex.: "Backup do meu diretrio pessoal"):Enter a name for this task (eg "Backup my home directory") modifyDialogDigite aqui um comando para ser executado depois da tarefa e ento pressine o boto "Adicionar" para adicion-lo na lista abaixonEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogDigite aqui um comando para ser executado antes da tarefa e ento pressine o boto "Adicionar" para adicion-lo na lista abaixooEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogDigite aqui uma opo do rsync para adicionar (ex.: "--delete-excluded", "-X"@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogDigite aqui o arquivo, pasta ou padro e em seguida, pressione o boto "Adicionar" para adicion-lo incluindo na lista * - corresponde a qualquer componente no vazio (ele para em barras) ** - corresponde a qualquer coisa, incluindo barras ? - corresponde a qualquer caractere exceto uma barra caminho dir_name/*** - corresponde tanto o diretrio & tudo dentro dele iniciando em / - padro ancorado a um determinado local na hierarquia da transferncia (normalmente essa a "origem") caminho / - corresponde apenas diretrios, sem arquivos regulares, links simblicos ou dispositivosEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogDigite aqui arquivo, pasta ou padro e, em seguida, pressione o boto "Adicionar" para adicion-lo incluindo na lista * - corresponde a qualquer componente no vazio (ele para em barras) ** - corresponde a qualquer coisa, incluindo barras ? - corresponde a qualquer caractere exceto uma barra caminho dir_name/*** - corresponde tanto o diretrio & tudo dentro dele iniciando em / - padro ancorado a um determinado local na hierarquia da transferncia (normalmente essa a "origem") caminho / - corresponde apenas diretrios, sem arquivos regulares, links simblicos ou dispositivosEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogDigite o caminho completo do diretrio de destino (ex.: /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogDigite o caminho completo do arquivo que contm a chave de autenticao privada do ssh(deixe em branco se no for aplicvel). Note que voc tem que fazer todas as aes necessrias para uma conexo remota ssh sem senha usando um par de chaves OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogDigite o caminho completo do arquivo que contm a senha de autenticao do rsync (no o ssh) (deixe em branco se no for aplicvel).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogDigite o caminho completo do diretrio de origem (ex.: /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog@Digite o nome da mquina remota."Enter the name of the remote host. modifyDialogDigite a porta que gostaria de usar para a conexo ssh (deixe em branco para a porta padro)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogDigite seu nome de usurio para a mquina remota (deixe em branco se no for aplicvel).HEnter your username for the remote host (leave blank if not applicable). modifyDialog.Erros foram encontradosErrors have been found modifyDialogExcluirExclude modifyDialoglExcluir todas as pastas "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogdExcluir todos os arquivos & pastas de backup (**~)(Exclude all backup files & folders (**~) modifyDialogrExcluir todas as pastas cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialog^Excluir todas as pastas temporrias (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialoglExcluir todas as pastas .gvfs dos usurios (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogExcluir todas as pastas trash do usurio (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog"Lista de excluso Exclude list modifyDialogPastas do sistema excludas /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExcluir as pastas do sistema de montagem /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialoghExecutar comandos extras, antes ou depois da tarefa.1Execute extra commands, before or after the task. modifyDialogExecutar a tarefa, mesmo se ela aparecer com uma mensagem de AVISO Normalmente usado quando "Executar Antes de " comandos podem corrigir um aviso (por exemplo montar parties) ATENO: verificar isto, se voc realmente sabe o que est fazendoExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog<Lista extra de opes do rsyncExtra rsync options list modifyDialogDArquivos que esto ligados com hard link na origem iro ligados com hard link no destino AVISO: Todos os arquivos sero includos na hora da transferncia !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogDIgnorar os arquivos similar ao CVSIgnore files the CVS way modifyDialogxIgnorar arquivos usando um algoritmo semelhante ao CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogIncluirInclude modifyDialogNIncluir APENAS esta lista de padres. Nada mais. Por favor, consulte o manual para melhor entendimento de regras de incluso. Isso ir desativar o recurso de excluso.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Lista de incluso Include list modifyDialogModo de incluir Include mode modifyDialogDeixar a caixa marcada, para <b>PARAR</b> a execuo da tarefa em execuo se este comando finalizar com um errogLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Modo:Mode: modifyDialogFMover incluso destacada para baixoMove highlighted inclusion down modifyDialogDMover incluso destacada para cimaMove highlighted inclusion up modifyDialog Nome :Name : modifyDialogIncluir normalNormal Include modifyDialogOkOkay modifyDialogIncluir apenas Only Include modifyDialogCaso contrrio, desmarque 'Mquina Remota' para operar localmente2Otherwise uncheck 'Remote Host' to operate locally modifyDialognPor favor, marque a caixa relevante antes de prosseguir/Please check the relevant box before proceeding modifyDialogrPor favor, defina a fonte antes de lanar o editor padroPARAR<b> a execuo da tarefa em caso de erro0use boxes to STOP task execution on error modifyDialogValidarvalidate modifyDialogxsem ter marcado 'Recursivo nos diretrios", que necessrioCwithout having checked 'Recurse into directories' which is required modifyDialogCancelarCancel patternEditorDVerifique isto para usar o diretrio acima como um caminho absoluto Se no fr verificado, o padro ir corresponder a qualquer arquivo/diretrio que rene o nomeCheck this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefina aqui o nome para os arquivos/diretrios a serem combinadosEDefine here the name criteria for the files/directories to be matched patternEditorrDefina aqui, o que voc gostaria que o padro referi-se a8Define here, what would you like the pattern to refer to patternEditor*Contedo do diretrioDirectory contents patternEditorDigite aqui os caracteres contidos em qualquer posio do nome dos arquivos/diretrios que o padro refere-se asEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorNDigite aqui os caracteres que terminam com o nome dos arquivos/diretrios que o padro refere-se a por exemplo, para se referir a todos os arquivos ".txt", digite .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorDigite aqui o nome dos arquivos/diretrios que o padro refere-se aGEnter here the name of the files/directories that the pattern refers to patternEditorDigite aqui os caracteres iniciais do nome dos arquivos/diretrios que o padro refere-se abEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor:Ir mais fundo no caminho por:Go deeper in path by : patternEditorTIr mais fundo no caminho de qualquer nvelGo deeper in path by any level patternEditorOkOkay patternEditor^Por favor, escola um diretrio dentro da origem+Please choose a directory within the source patternEditor\Por favor, escolha um arquivo dentro da origem&Please choose a file within the source patternEditorvRedefinir os campos do editor padro para os valores padro5Reset the pattern editor fields to the default values patternEditor(Selecionar diretrioSelect directory patternEditor$Selecionar arquivo Select file patternEditor,Conjunto de diretriosSet of directories patternEditor(Conjunto de arquivos Set of files patternEditor*Especificar diretrioSpecific directory patternEditor&Especificar arquivo Specific file patternEditor:O padro atual exibido aqui$The actual pattern is displayed here patternEditor*O padro se refere a:The pattern refers to a: patternEditor Use isto se o padro se refere a um conjunto de diretrios que tm algo em comum por exemplo, todos os diretrios que esto nomeados como "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditor Use isto se o padro se refere a um conjunto de arquivos que tm algo em comum por exemplo, todos os arquivos com uma extenso ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUse isto se o padro se refere a um diretrio especfico por exemplo, "/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUse isto se o padro se refere a um arquivo especfico por exemplo, "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor^Use isso se o padro se refere ao contedo de um diretrio (ou um conjunto de diretrios) e no ao prprio diretrio por exemplo, o contedo do diretrio "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorUse isso para se referir a mais sub-diretrios por exemplo O diretrio "/media/music" inclui trs sub-diretrios: 1.Rock 2.Jazz 3.Soundtracks e voc gostaria de se referir a todo o contedo desses 3, defina o seguinte: * Conjunto de diretrios * Contedo do diretrio * Caminho: /media/music/ * Ir mais fundo no caminho por "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorQualquerany patternEditor^Navegar localmente para um caminho de diretrio"browse localy for a directory path patternEditorDNavegar localmente para um arquivobrowse localy for a file patternEditorContm : contains : patternEditorDiretrio: directory : patternEditorTermina com: ends with : patternEditorArquivo:file : patternEditorPadro final final pattern patternEditor exatamente : is exactly : patternEditorNomename patternEditorEditor padropattern editor patternEditorRedefinirreset patternEditorComea com : starts with : patternEditor6Utilizar o caminho absolutouse absolute path patternEditor arquivo filescheduleDialog& no& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:Atraso:delayscheduleDialog@<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Agendando execuo do perfil</span></p></body></html>

Profile execution scheduling

scheduleDialog@ Reiniciar@ rebootscheduleDialogLAdicionar um nova agenda para o perfilAdd a new profile schedulescheduleDialog4Adicionar agenda do perfilAdd profile schedulescheduleDialogQualquerAnyscheduleDialog AbrilAprilscheduleDialog Abrilfull phrase: 'of April'AprilscheduleDialoglTem certeza que deseja fechar a janela de agendamento?4Are you sure you want to close the schedule dialog ?scheduleDialog AgostoAugustscheduleDialog Agostofull phrase: 'of August'AugustscheduleDialogCancelarCancelscheduleDialogMarque esta opo se a sua mquina no suporta um ambiente grfico (por exemplo, um servidor)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogModo console Console ModescheduleDialogDezembroDecemberscheduleDialogDezembrofull phrase: 'of December'DecemberscheduleDialogdAtrasar a execuo do luckybackup na inicializao&Delay luckybackup execution at startupscheduleDialog,Exibir o crontab atualDisplay the current crontabscheduleDialogExecutar perfilExecute profilescheduleDialogFevereiroFebruaryscheduleDialogFevereirofull phrase: 'of February'FebruaryscheduleDialogSexta-feiraFridayscheduleDialogPerfil invlidoInvalid profilescheduleDialogJaneiroJanuaryscheduleDialogJaneirofull phrase: 'of January'JanuaryscheduleDialog JulhoJulyscheduleDialog Julhofull phrase: 'of July'JulyscheduleDialog JunhoJunescheduleDialog Junhofull phrase: 'of June'JunescheduleDialog MaroMarchscheduleDialog Marofull phrase: 'of March'MarchscheduleDialogMaioMayscheduleDialogMaiofull phrase: 'of May'MayscheduleDialog4Modificar agenda do perfilModify profile schedulescheduleDialogPModificar a agenda do perfil selecioando Modify selected profile schedulescheduleDialogSegunda-feiraMondayscheduleDialogFNenhum agendamento foi declarado !!No schedules are declared !!scheduleDialogNovembroNovemberscheduleDialogNovembrofull phrase: 'of November'NovemberscheduleDialogOutubroOctoberscheduleDialogOutubrofull phrase: 'of October'OctoberscheduleDialogPerfil : Profile :scheduleDialog8Detalhes da agenda do perfilProfile schedule detailsscheduleDialogLRemover a agenda do perfil selecionado Remove selected profile schedulescheduleDialogDExecutar uma vez, na inicializaoRun once, at startupscheduleDialog SbadoSaturdayscheduleDialogSetembro SeptemberscheduleDialogSetembrofull phrase: 'of September' SeptemberscheduleDialogDescartar as tarefas que surgirem com uma mensagem de aviso 'CRTICO' depois de verificar os diretriosSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog"Comeando do zeroStarting from scratchscheduleDialogDomingoSundayscheduleDialogO arquivo de agendamento existente no uma verso vlida para luckyBackup.8The existent schedule file is not a valid luckyBackup v.scheduleDialogQuinta-feiraThursdayscheduleDialogTera-feiraTuesdayscheduleDialogFNo foi possvel criar arquivo cronUnable to create cron filescheduleDialogZNo foi possvel criar arquivo de agendamentoUnable to create schedule filescheduleDialogQuarta-feira WednesdayscheduleDialog\Voc fez alteraes sem clicar no boto cronIT8You have made changes without clicking the cronIT buttonscheduleDialogtVoc atingiu o limite mximo suportado de perfis agendadosBYou have reached the maximum limit of supported scheduled profilesscheduleDialogvVoc tem que remover um item se voc deseja adicionar outro5You have to remove an item if you wish to add anotherscheduleDialogLSeu crontab foi atualizado com sucesso$Your crontab is updated successfullyscheduleDialogAdicionaraddscheduleDialogematscheduleDialog FecharclosescheduleDialog&Fechar este dilogoclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog&Contedo do crontabcrontab contentscheduleDialogdiadayscheduleDialogDia do ms :day of month :scheduleDialogDia da semana : day of week :scheduleDialogtodoeveryscheduleDialogde hora em horahourly at minute scheduleDialog(luckyBackup - AgendaluckyBackup - schedulescheduleDialogminminscheduleDialogModificarmodifyscheduleDialog Ms :month :scheduleDialogndscheduleDialogas in 22nd dayndscheduleDialog>No existem entradas no crontabno crontab entries existscheduleDialogdoofscheduleDialogde qualquer ms of any monthscheduleDialogOkokayscheduleDialogHUma vez, na inicializao do sistemaonce, at system startupscheduleDialogrdscheduleDialogas in 23rd dayrdscheduleDialogRemoverremovescheduleDialogtAgendar a execuo de perfis como declarado na lista acima@schedule the execution of profiles as declared in the list abovescheduleDialogdefina este valor para -1 para o agendamento ocorrer a cada hora9set this value to -1 for the schedule to occur every hourscheduleDialog"Descartar crtico skip criticalscheduleDialogstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialogHora:Minuto :time (hour:min) :scheduleDialog"Ver crontab atualview current crontabscheduleDialogHUm perfil com o mesmo nome j existe+A profile with the same name already exists textDialogJTem certeza de que deseja prosseguir?#Are you sure you wish to proceed ?? textDialog|CUIDADO, se sua inteno NO clone da origem para o destino!BBEWARE, if your intention is NOT to clone source to destination !! textDialogCancelarCancel textDialogVCopiar comando para a rea de transfernciaCopy command to clipboard textDialogVNo mostrar isto novamente para esta tarefa$Do not show this again for this task textDialog0Digite a frase secreta :Enter passphrase : textDialog Digite a senha :Enter pasword : textDialog<Digite o nome do novo perfil :#Enter the name of the new profile : textDialog<Digite o novo nome do perfil :#Enter the new name of the profile : textDialogNoNo textDialogOkOkay textDialogFPor favor, digite um nome diferentePlease enter a different name textDialog*Descrio do perfil :Profile description : textDialogSimYes textDialogVoc selecionou o 'Backup do contedo do diretrio de origem'<br>juntamente com a opo 'excluir arquivos no destino'You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog*Informaes do e-maileMail information textDialogluckyBackup luckyBackup textDialogCancelarCancel winDialogXDigite o caminho completo do comando cygpath*Enter the full path of the cygpath command winDialogVDigite o caminho completo do comando dosdev)Enter the full path of the dosdev command winDialogdDigite o caminho completo do diretrio luckybackup0Enter the full path of the luckybackup directory winDialogTDigite o caminho completo do comando rsync(Enter the full path of the rsync command winDialogPDigite o caminho completo do comando ssh&Enter the full path of the ssh command winDialogbDigite o caminho completo do diretrio temporrio.Enter the full path of the temporary directory winDialog\Digite o caminho completo do diretrio vshadow,Enter the full path of the vshadow directory winDialog8Arquivos Executveis (*.exe)Executable Files (*.exe) winDialogOkayOkay winDialog8Selecionar o comando cygpathSelect cygpath command winDialog6Selecionar o comando dosdevSelect dosdev command winDialog4Selecionar o comando rsyncSelect rsync command winDialog,Selecionar comando sshSelect ssh command winDialog.Utilizar o valor padroUse default value winDialog$navegar localmentebrowse locally winDialogcygpath:cygpath: winDialog.declarao dos caminhosdeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog(diretrio principal: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialogdiretrio temp: temp dir: winDialog$diretrio vshadow: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_fr.qm0000666000175000017500000046157613157502317021514 0ustar luckybluckybNHY KS<Y]P_6ggg$hYj%s'{zTff fhvSEƖ9EQ445҃N~La.aaaaa5a>Eh@@(E-סص.AH5a)o. BzwT%A"f"4&%8({YV)*`30*0+++>,BG/]^D:"KFĉ_˱pSR ى>~MK4rX,#f=N#wGr :~  d!gP9!bF(e'W+&}M.+86F76<$"'GCI|OWBQ19QͬRP[_/pfC5h@hw01pN1pNq>5tc|N!qв-M"$YE65;ѐSpOiAdu Գŵ_ , ,'m _lFbbK #u)&o+i)+/r"28ISBZyC c];IW]PoEPYBFZH=3\c1c{f:huQ|BOOP2RhZI#yRL6g0B,J+J8/C_GNkUP,4÷I-Y.{ԥ{*Vn[W%&E7.SQI"\mrGcҐ_OEoTs^ wy Ave7&aNa4)4)D,*߬,,b8MyM:MAT_rUeh !iJiU*tM̢}^.e.e7TWcZf(pIG%|t(.d /dgM`VŇFʵ#S0[=ܯ"AE)>gb[~qm Aϗ]u  ‰ >jyE.:uy P)sQ&BA<DȪL~eQOWOjzNeJ'iYzi^?lwهrt==}7;:օXI9IYPIbII2^I9(`,#V Z^AO2ф@ ..7\HeF)sU Ji^d!ii  J~K48Z =*Ŗ\xl@/!m6>Hn-8n-p^$txQvb$y~i F9r;Mȕ(ȕȕXJg:t/î"EpXR+ߘ ?]g.2v `"Gh" i.$;KYCKO!Vf_Avi_hD#b#f0g>hnhniRikՒLkՒIusD%v3Xy |~glvb'(Te4Yu/ExRf@IG_I nԬ` GV6yɢSǼH`ȒL0I=':@Z  |u`X읒^lXks`e _ X,D |B 5' Bv^;/+eY-zR2 9Y>8EE'N3UtYv3`xepa#vuk8v:f{_gmIk3ڄLD eFFF*zϕiCΕ)UU,uS4r fd‘jBJgG%۠Bfȕ5XaQ%XT)WUUU_eD2nrg~EǧA~i̐jIIY%׃"vWߖnT$kKY. 3P32+ 2;t"-0)@,&|-'/e1y\9G;F\IX9J?JεbL:NPO8Ry V) g h VmzGt@x5] 6= 6Mgr( ʴ5tʶ'6'a,!7:Bi msi/, ) Nu  c] A! q.  e #r| *{4{ +) 6U 8% CcK* Mg MghO N#!- U / W ] aYA d: j^yC l, lRc mEo pM q R ]U @a e ~ + ͆ <( aR -BB Z* '4 Ԡ;\ 7 ׊$ =4\ ./ , Ѿ] Tz< W  c2 ~   -0@ -n /l$ 7E 8ۈ ?w @  ` - f g j9 l- pN%˻ zj" C  3  H P& i^ ~ cc XBj  24 bMp ,    GCs ñޘ n K Xh5A hh t$8 ԑ# @Z ݓb ! T; i 7(5 p "'  v  Vd d j  S #، (N? + - 0b 7'y 93Bo :UC'P ;3 E Ge' HZ L9 PA" T, T: Zv _yy _ f% g.w&? g.w@ g.wFe i iA k@ m { { { K ' F7 Ҟ. "   Y3 YM$ = >ӊ @e A. AcsjE Eh7r F~ F. LM) N0 P}֎ Sz X ^# bU o4 o9: r'^ v7 K  u jAp h` 9 r \% L "ݩ UN[ }  ~@, 4 $5 T *Hu s " ^ % 2t a/ Rbf B ?B\S  ; % sr @ ~ T{ #1S &,' &'Z ) *}E( +5 ,D+ ,DH 6B P& \.~;( cd i mbh {e ḙ 1 Z  {ު JL i2G ms c l>k Xw /U f zt lz  I.  j( lm Y-+ i-d [Ű " , ݗk #$ 䕜 ~ c2w ?V 4 ] 8; 88 8A A 6Ro=3seDQC *Ե'~$(q*#B[/#Y(AE7>GIJ?Tba8\P&u].OacR}e~mRp{>Z8yi0{Ir`HT>YV<cE{NRJ xJ$rSu]֭e 3M̖<kl{d74U"+e_ Cr Ւ8#!?&)Ns (դ1(դ-X`4?0<EE^!G EAzI9PN =RN>[=S^iacwf/:lnTssVu@ɽu@`~(NYm3('pk4)fC:t8g)*iܒyNC7v.9ɟ)ʱNu5+\u_ ֙SK~Gߖ2lD]p@0._Y*APmEŕxiCM,Calcul des diffrencesCalculating differencesCalcDiffThreadLa quantit de donnes est trs importante. Affichage des premires entres seulement2Data amount is huge. Displaying only first entriesCalcDiffThread$Veuillez patienter Please waitCalcDiffThread4Parcours de la destinationScanning destinationCalcDiffThread~Exclure tous les repertoires .gvfs des utilisateurs (**/.gvfs/)Scanning snapshotCalcDiffThread*Parcours de la sourceScanning sourceCalcDiffThreadlDiffrences entre l'instantan (snapshot) et la sourceSnapshot and source differencesCalcDiffThreadLes donnes de l'instantan (snapshot) qui existent aussi dans la source et sont diffrentes=Snapshot data that also exists at the source and is differentCalcDiffThreadDonnes de l'instantan (snapshot) qui N'existent PAS dans la source-Snapshot data that do NOT exist at the sourceCalcDiffThreadDonnes de la source qui N'existent PAS dans l'instantan (snapshot)-Source data that do NOT exist at the snapshotCalcDiffThreadtDiffrences entre les rpertoires de synchronisation A & BSync dir A & B differencesCalcDiffThreadDonnes du rpertoire de synchronisation A qui N'existent PAS dans le rpertoire de synchronisation B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSynchronisation des donnes du rpertoire B qui existent aussi dans le rpertoire A mais sont diffrentes?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadDonnes du rpertoire de synchronisation B qui N'existent PAS dans le rpertoire de synchronisation A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadLes donnes de l'instantan (snapshot) remplaceront les donnes de la source durant la RESTAURATION=The snapshot data will replace the source data during RESTORECalcDiffThreadElles seront effaces durant la RESTAURATION seulement si vous slectionnez l'option :CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadeffacer les donnes de la source qui n'existent pas dans la destination;delete existing source data that do not exist at the backupCalcDiffThreadSauvegarde du profile, des fichiers de log et des donnes de l'instantann.Backing-up profile, logfiles and snapshot dataQObjectCRITIQUECRITICALQObjectNCommande r-execute cause d'un checCommand re-run due to failureQObjectLImpossible d'ouvrir le fichier journalCould not open the logfileQObjectDestination DestinationQObject2Rpertoire de destinationDestination directoryQObjectRpertoire DirectoryQObjectJe n'ai pas la permission de lire / d'entrer dans le rpertoire synchroniser A;I do not have the permission to read/enter sync directory AQObjectJe n'ai pas la permission de lire / d'entrer dans le rpertoire synchroniser B;I do not have the permission to read/enter sync directory BQObjectJe n'ai pas la permission de lire / d'entrer dans le rpertoire de destinationDI do not have the permission to read/enter the destination directoryQObjectJe n'ai pas la permission de lire / d'entrer dans le rpertoire source?I do not have the permission to read/enter the source directoryQObjectJe <font color=orange><b>ne vais pas ignorer</b></font> cette tche. La synchronisation sera effectue de toute manireiI will not skip this task. Synchronizing is going to be performed anywayQObjectJe <font color=red><b>N'IGNORERAI PAS</b></font> cette tche parce que vous avez activ l'option "outrepasser l'avertissement (WARNING)"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObjectLDate et heure de la dernire excutionLast execution timeQObjectOKOKQObjectVeuillez <b>dcocher les cases appropries</b> avant de procderAPlease uncheck appropriate include boxes before proceedingQObjectVeuillez dcocher les cases appropries ou changer tous les types de tches pour autre chose que '<b>Sauvegader le contenu des rpertoires</b>' ou utiliser 'Sauvegader le contenu des rpertoires' avec l'option '<b>Inclure seulement</b>' active, avant de procderPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject SourceSourceQObject"Rpertoire sourceSource directoryQObject2Rpertoire synchroniserSync directoryQObject$Synchronisation deSyncingQObject$Synchronisation de'Full phrase: Syncing to SyncingQObject.Description de la tcheTask descriptionQObjectLe rpertoire de destination sera cr s'il n'existe pas et rempli avec les nouvelles donnes de la sauvegarde]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObjectvLes tches inclues suivantes <b>partagent le mme rpertoire de destination</b> (toutes ensembles ou par groupes) et au moins l'une d'entre elles va sauvegarder le contenu d'un rpertoireThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectPLe fichier journal ne peut pas tre cr The logfile could not be createdQObject>Le fichier journal n'existe pasThe logfile does not existQObjectBLe processus signal une erreurThe process reported an errorQObjectlLa commande spcifie n'est certainement pas installe/The specified command is probably not installedQObject6La liste de tches est videThe task list is emptyQObjectjCette tche <font color=orange><b>ne sera pas ignore3This task will not be skippedQObjecttCette tche va tre <font color=red><b>ingnore</b></font>7This task will be skippedQObjectPRepertoire distant, vrification ignoreUsing remote, check is skippedQObjectAVERTISSEMENTWARNINGQObjectVous avez inclus les tches connectes suivantes en mme temps :8You have included both of the following connected tasks:QObject>Vous n'avez inclus aucune tcheYou have not included any tasksQObject et/ouand/orQObjectcommande: command: QObjectn'existe pasdoes not existQObject8Des erreurs ont t trouves errors foundQObjectNExcution de la 1re partie de la tcheexecution of 1st part of taskQObjectNExcution de la 1re partie de la tche?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectNExcution de la 2me partie de la tcheexecution of 2nd part of taskQObject.L'excution de la tcheexecution of taskQObject*xcution de la tche3Full phrase: execution of task: finishedexecution of taskQObject*xcution de la tchedFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectcode de sortie: exit code: QObjectterminefinishedQObjecttermine?Full phrase: execution of 1st part of task: finishedfinishedQObjecttermine3Full phrase: execution of task: finishedfinishedQObjecttermineCFull phrase: post-task execution of COMMAND: finishedfinishedQObjecttermine en raison d'erreurs d'excution des tches de pr / post commande9finished because of pre/post task command execution errorQObject librefreeQObjectest videis emptyQObject0est vide ou n'existe pasis empty or does not existQObjectn'est pas montis not mountedQObjectpas d'erreurs no errorsQObjectnon disponible not availableQObjectrien dmarrernothing to startQObjectsortie: output: QObjectVpost-tche aprs l'xcution de la commandepost-task execution of commandQObjectLxcution de la commande de post-tcheCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectTpr-tche avant l'xcution de la commandepre-task execution of commandQObjectJxcution de la commande de pr-tcheBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjecta dmarrstartingQObjecta dmarr?Full phrase: execution of 1st part of task: startingstartingQObjecta dmarr?Full phrase: execution of 2nd part of task: startingstartingQObjecta dmarr3Full phrase: execution of task: startingstartingQObjecta dmarr?Full phrase: post-task execution of command: startingstartingQObjecttatstatusQObjectdceci n'est pas autoris pour des raisons videntes'this is not allowed for obvious reasonsQObjectlcela provoquera l'annulation d'une tche par une autre.this will lead to one task canceling the otherQObjectverstoQObjectvers'Full phrase: Syncing to toQObjectLImpossible d'ouvrir le fichier journalCould not open the logfile ReadLogFile& propos&About aboutDialog$Accord de &licence&License Agreement aboutDialog&Support&Support aboutDialog &Remerciements  &Thanks to aboutDialog...mon autre moiti, <b>Dimitra</b> qui me soutient malgr tout le temps que je consacre au dveloppement de ce projetj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog<... tous les utilisateurs des...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialogA&uteurA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialogXTraduction de l'interface graphique en arabeArabic gui translator aboutDialogtMainteneur officiel package/pkgbuild pour Arch Linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAthnes, GrceAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialog^Application de sauvegarde et de synchronisationBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogTraduction de l'interface en bosniaque & mainteneur du paquet mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog:traducteur de la gui Bulgare Bulgarian gui translator aboutDialogHTraducteur de l'interface en CatalanCatalan gui translator aboutDialogPTraducteur de la gui en Chinois (Taiwan)Chinese (Taiwan) gui translator aboutDialogContributeur de code pour la prise distance et le support vss lis aux portage windowsDCode contributor for remote & vss support regarding the windows port aboutDialogVImpossible de trouver le fichier de licence!Could not locate the license file aboutDialog*Traduction en tchqueCzech gui translator aboutDialog6Mainteneur du paquet debianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog2Traduction en nerlandaisDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialog"Tout spcialement Especially aboutDialogJTraducteur de l'interface en EstonienEstonian gui translator aboutDialogXMainteneur du paquet fedora (dpt officiel))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog:Mainteneur de paquet Free BSDFree BSD package maintainer aboutDialogJTraducteur de l'interface en FranaisFrench gui translator aboutDialogTraduction en franais et conseils prcieux sur le packaging (et plus que cela)AFrench gui translator and valuable packing advisor (and not only) aboutDialog@Traducteur de la gui en GalicienGalician gui translator aboutDialog:Mainteneur de l'ebuild gentooGentoo ebuild maintainer aboutDialog,Traduction en allemandGerman gui translator aboutDialogrRecommander ce projet en cliquant sur le pouce lev sur :Give a thumbs up at: aboutDialogLTraducteur en grec et testeur prcieux(Greek gui translator and valuable tester aboutDialog8Traduction en grec du manuelGreek manual translator aboutDialogJe n'ai jamais accept et n'accepterai jamais d'argent pour ce projet.DI personally never had and never will accept money for this project. aboutDialogSi ce n'tait pas lui et ses tutoriels je n'aurais jamais commenc ce projetJIf it wasn't him and his tutorials I would never have started this project aboutDialogSi vous apprciez cette application et que vous voulez me donner quelque chose personnellement, tout ce que vous avez faire est :`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogCe programme est un <b>logiciel libre<b> : vous pouvez le redistribuer et / ou le modifier suivant les termes de la GNU General Public License telle qu'elle est publie par la Free Software Foundation, version 3 de cette licence.It 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, version 3 of the License. aboutDialogRIl est distribu dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans mme la garantie implicite de VALEUR MARCHANDE ou D'ADQUATION UN BESOIN PARTICULIER.It 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. aboutDialog\Traducteur de l'interface graphique en italienItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog$Last but not leastLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialoglMainteneur du paquet mandriva (dpt officiel contrib)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMaintenance du package Mepis (Community repo) et traduction en espagnolBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogNanmoins, j'ai dcid d'utiliser luckyBackup pour soutenir des gens qui ont rellement besoin d'aide financire.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialogBTraducteur de la gui en NorvgienNorwegian gui translator aboutDialogMaintance du package OpenSUSE (KDE4 Community repo) et prcieux conseils de packagingNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog.Traduction en portugaisPortuguese gui translator aboutDialogFChiot de compagnie & mainteneur sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog\Traduction en roumain de l'interface graphiqueRomanian gui translator aboutDialogNTraducteur en russe et testeur prcieux*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialognVoir l'onglet 'Accord de licence' pour plus de dtails.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog8Mainteneur du paquet SlackelSlackel package maintainer aboutDialog,Traducteur en SlovaqueSlovak gui translator aboutDialogHTraducteur de l'interface en slovneSlovenian gui translator aboutDialogVous pouvez donc ventuellement donner de l'argent qui sera utilis pour une bonne cause._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogJTraducteur de l'interface en espagnolSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogHTraduction de l'interface en sudoisSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog L'quipe indefixThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog,C'est ma rcompense :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogBTraducteur de l'interface en turcTurkish gui translator aboutDialog&Conseiller prcieuxValuable advisor aboutDialogHVoter "good" et devenir un fan sur :Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogJDveloppeur de script backupwhenidle &backupwhenidle python script developer aboutDialog fermerclose aboutDialog.lien pour les donations donation link aboutDialogDAncien Mainteneur du paquet Fedoraex Fedora package maintainer aboutDialogPour dvelopper la superbe plateforme de localisation transifex et de la mettre disposition gratuitementVfor developing the wonderful transifex localization platform and providing it for free aboutDialog2forums pour leur soutien.forums for their support. aboutDialog fri13fri13 aboutDialog,luckyBackup - proposluckyBackup - about aboutDialogluckyBackup est distribu selon les termes de la <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialog"Soutien financiermoney aboutDialog*Soutien non financierno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog.Portage vers MS Windowsport to MS Windows aboutDialog*portage vers Mac OS Xport to Mac OS X aboutDialog"Portage vers OS/2 port to OS/2 aboutDialogpackageur rpm, prcieux testeur et conseiller en connections distance <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog fermerclose logDialog8chargement du fichier log...loading logfile... logDialogfluckyBackup - progression de l'excution des tches&luckyBackup - tasks execution progress logDialogerreur suivante next error logDialog"erreur prcdenteprevious error logDialogattendrewait logDialog &%1 %2&%1 %2luckyBackupWindow&Annuler&AbortluckyBackupWindow propos de&AboutluckyBackupWindow&Ajouter&AddluckyBackupWindow&Effacer&DeleteluckyBackupWindow: le manuel &HandbookluckyBackupWindowAide&HelpluckyBackupWindow&Importer&ImportluckyBackupWindow&Langue &LanguageluckyBackupWindowF&Minimiser dans la barre des tches&Minimize to trayluckyBackupWindow&Modifier&ModifyluckyBackupWindow&Nouveau&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Quitter&QuitluckyBackupWindow&Rafrachir&RefreshluckyBackupWindowEfface&r&RemoveluckyBackupWindow&Restaurer&RestoreluckyBackupWindowEnregi&strer&SaveluckyBackupWindowParamtre&s &SettingsluckyBackupWindow &Tche&TaskluckyBackupWindow &TcheThis is a top menu action&TaskluckyBackupWindow Barres d'ou&tils &ToolbarsluckyBackupWindow6&Voir/diter la description&View/Edit DescriptionluckyBackupWindow<<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"># <html><head><meta name="qrichtext" content="1" /><style type="text/css"># p, li { white-space: pre-wrap; }# </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"># <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"># <html><head><meta name="qrichtext" content="1" /><style type="text/css"># p, li { white-space: pre-wrap; }# </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"># <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowABANDONABORTEDluckyBackupWindowAbandonAbortluckyBackupWindowpAbandon : veuillez attendre la fin de tous les processus4Aborting: Please wait for all processes to be killedluckyBackupWindowActionsActionsluckyBackupWindowZTous les fichiers pertinents on t supprims4All relevant files (logs etc) have also been deletedluckyBackupWindow\Tous les fichiers pertinents ont t dupliqus7All relevant files (logs etc) have also been duplicatedluckyBackupWindow|Tous les fichiers pertinents (logs, etc...) ont t mis jour4All relevant files (logs etc) have also been updatedluckyBackupWindow@Toutes les tches sont terminesAll tasks completedluckyBackupWindow\tes-vous certain de vouloir effacer le profil'Are you sure you want to delete profileluckyBackupWindowrtes-vous certain de vouloir effacer le profil par dfaut3Are you sure you want to delete the default profileluckyBackupWindowrtes-vous certain de vouloir retirer la tche suivante ??5Are you sure you want to remove the following task ??luckyBackupWindowbDmarrer l'excution de toutes les tches inclues)Begin the execution of all included tasksluckyBackupWindowCase cocherCheckBoxluckyBackupWindowLes vrifications sont dsactives. Cette tche sera <b>ignore</b>5Checks are disabled. This task will be skippedluckyBackupWindow@Impossible de trouver le fichierCould not locate the fileluckyBackupWindowImpossible de mettre jour la date et l'heure de la dernire excution des tches-Could not update last execution time of tasksluckyBackupWindow CrashCrashedluckyBackupWindow,Crer tche d&upliqueCreate D&uplicate taskluckyBackupWindow8Crer tche de &restaurationCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowProfil courantCurrent ProfileluckyBackupWindowD&upliquer D&uplicateluckyBackupWindowD&fautDe&faultluckyBackupWindowDescription DescriptionluckyBackupWindowDestination DestinationluckyBackupWindowRpertoire DirectoryluckyBackupWindowTerminDoneluckyBackupWindowSimulationDryluckyBackupWindow E&mailE&mailluckyBackupWindowE&xporterE&xportluckyBackupWindow ERREURERRORluckyBackupWindow FERMEREXITluckyBackupWindowTemps coul Elapsed timeluckyBackupWindowtLes prfrences mail ont t <font color=green>mise jourBEmail preferences have been updated successfullyluckyBackupWindowRMail de rapport aprs xcution du profil$Email report after profile executionluckyBackupWindowFranaisEnglishluckyBackupWindowFranaisDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowbErreurs au cours de transfert des fichiers de log'Errors occured during logfiles transferluckyBackupWindowErreurs pendant le transfert des fichiers de logs et des instantanns5Errors occured during snapshots and logfiles transferluckyBackupWindowXErreurs au cours du tranfert des instantans(Errors occured during snapshots transferluckyBackupWindowdErreur au cours du transfert du fichier de profile/Errors occured during the profile file transferluckyBackupWindow&Excution du profilExecution of profileluckyBackupWindow:Excution des tches termineExecution of tasks finishedluckyBackupWindowL'excution des tches a t interrompue brutalement par l'utilisateur4Execution of tasks were terminated violently by userluckyBackupWindow FermerExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowbchec de la cration du rpertoire de destination&Failed to create destination directoryluckyBackupWindowJImpossible de crer le nouveau profilFailed to create new profileluckyBackupWindowvEchec de suppression des fichiers pertinents (logs, etc...).Failed to delete all relevant files (logs etc)luckyBackupWindow<Impossible d'effacer le profilFailed to delete profileluckyBackupWindowvEchec de duplication des fichiers pertinents (logs, etc...)1Failed to duplicate all relevant files (logs etc)luckyBackupWindowBImpossible de dupliquer le profilFailed to duplicate profileluckyBackupWindowBImpossible de dupliquer le profilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow8Echec de l'export du profileFailed to export profileluckyBackupWindow>Impossible d'importer le profilFailed to import profileluckyBackupWindow@Impossible de renommer le profilFailed to rename profileluckyBackupWindowBImpossible de remplacer le profilFailed to replace profileluckyBackupWindow,Impossible de dmarrerFailed to startluckyBackupWindowvEchec de mise jour des fichiers pertinents (logs, etc...).Failed to update all relevant files (logs etc)luckyBackupWindow>Cacher la fentre d'informationHide information windowluckyBackupWindow>Cacher la fentre d'information+hide/show information window button tooltipHide information windowluckyBackupWindow$Importer un profilImport ProfileluckyBackupWindow*Fentre d'informationInformation windowluckyBackupWindow*Fentre d'informationinformation window titleInformation windowluckyBackupWindow|Date et heure de la dernire excution des tches mises jour$Last execution time of tasks updatedluckyBackupWindowLListe de toutes les tches disponiblesList of all the available tasksluckyBackupWindowVerrouillerLockluckyBackupWindow0Gestion de la sauvegardeManage &BackupluckyBackupWindow&Gestion de la tche Manage TaskluckyBackupWindowNBaisser la tche slectionne d'un cran/Move the highlighted task down, by one positionluckyBackupWindowLMonter la tche slectionne d'un cran-Move the highlighted task up, by one positionluckyBackupWindowNONNOluckyBackupWindowNON INCLUS NOT INCLUDEDluckyBackupWindowNOTENOTEluckyBackupWindow:Aucune erreur n'a t trouveNo errors foundluckyBackupWindow*Excution de la tcheNow performing taskluckyBackupWindowNe montrer que les erreurs et messages importants pendant la mise jour window  could not be saved'ProfileluckyBackupWindowLe profilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowLe profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowLe profilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowProfileGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowLe profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowLe profil3full phrase: 'Profile set as default'ProfileluckyBackupWindow|La mise jour de la barre de progression ne sera pas raliste(Progressbar update will not be realisticluckyBackupWindowR&enommerR&enameluckyBackupWindow"Erreur de lecture Read errorluckyBackupWindowToutes les donnes d'instantans (snapshots) plus anciens ont t effaces Removed all older snapshots dataluckyBackupWindowEffacementRemovingluckyBackupWindowEffacement des anciens instantans (snapshots) et fichiers journaux (logfiles) de la tche+Removing old snapshots and logfiles of taskluckyBackupWindow LancerRunluckyBackupWindowP&lanification S&cheduleluckyBackupWindownSelectionner un repertoire de destination pour l'exportSelect export directoryluckyBackupWindow4Dfinir en tant que dfautSet as DefaultluckyBackupWindow0Selectionner les chemins Set pathsluckyBackupWindowbSelectionner le chemin des commandes rsync et ssh$Set paths for rsync and ssh commandsluckyBackupWindow@Montrer la fentre d'informationShow information windowluckyBackupWindow@Montrer la fentre d'information+hide/show information window button tooltipShow information windowluckyBackupWindow@Montrer le texte sous les icnesShow text under iconsluckyBackupWindow SourceSourceluckyBackupWindowdArrter l'excution des tches en cours MAINTENANT'Stop the execution of running tasks NOWluckyBackupWindowNLe rpertoire de destination a t cr)Successfuly created destination directoryluckyBackupWindow TcheTaskluckyBackupWindow Liste des tches Task listluckyBackupWindow2Liste de tches du profilTask list of profileluckyBackupWindow0La description du profilThe description of profileluckyBackupWindow repertoire selectionn ne contient pas de donne de profile valideCThe directory you have selected does not contain valid profile dataluckyBackupWindowLe nom que vous avez entr ne contient que des caractres invalides:The name you have entered contains only invalid charactersluckyBackupWindowLLe systme va s'teindre dans 1 minute$The system will shutdown in 1 minuteluckyBackupWindow8La liste des tches est videThe task list is emptyluckyBackupWindowCeci lancera une <b>simulation</b> qui ne fera aucun changement (et produira peu prs la mme sortie qu'un lancement rel){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow8Dlais de la demande dpass Timed outluckyBackupWindow:Impossible d'ouvrir le profilUnable to open profileluckyBackupWindowErreur inconnue Unknown errorluckyBackupWindowErreur inconnuethis refers to a process Unknown errorluckyBackupWindowrUtiliser le bouton "Ajouter" sur la droite pour commencer0Use the "add" button on the right to get startedluckyBackupWindowCochez les cases 'inclure' pour inclure ou non les tches slectionnes>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowHVoir/diter la description du profil!View/Edit the profile descriptionluckyBackupWindowAVERTISSEMENTWARNINGluckyBackupWindowBienvenue dans Welcome toluckyBackupWindow6Voulez-vous aussi retirer :Would you like to also remove:luckyBackupWindowDVoulez-vous procder malgr tout ?!Would you like to proceed anyway?luckyBackupWindow4Voulez-vous le remplacer ?Would you like to replace it ?luckyBackupWindowZVoulez-vous l'enregistrer avant de procder ?-Would you like to save it before proceeding ?luckyBackupWindow"Erreur d'criture Write errorluckyBackupWindowOUIYESluckyBackupWindowrVous avez demand la cration d'une tche de RESTAURATION/You have asked for a RESTORE task to be createdluckyBackupWindowpVous n'avez inclus que des tches qui vont tre ignores9You have only included tasks that are going to be skippedluckyBackupWindowlVous avez atteint le nombre maximal de tches possible5You have reached the maximum limit of supported tasksluckyBackupWindowVous devez retirer une tche si vous voulez en ajouter une autre !!7You have to remove a task if you wish to add another !!luckyBackupWindowpun nouveau profil vierge, portant le mme nom, sera cr4a new blank one, with the same name, will be createdluckyBackupWindowAjouteraddluckyBackupWindow"Ajouter une tcheadd taskluckyBackupWindowexiste djalready existsluckyBackupWindow8et liste droulante 'profil'and 'profile' drop-down listluckyBackupWindow@et ajout la liste des profilsand added at the profile listluckyBackupWindownet changer tout ce que vous souhaitez avant de procder.and change anything you wish before proceedingluckyBackupWindowen tant queasluckyBackupWindowen tant queFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowcalcul en cours calculatingluckyBackupWindowcalcul en cours-info message displayed during ...calculations calculatingluckyBackupWindow(Sortie des commandescommands outputluckyBackupWindow(n'a pas pu tre crcould not be createdluckyBackupWindow4n'a pas pu tre enregistrcould not be savedluckyBackupWindow4n'a pas pu tre enregistrPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindowa t crcreated successfullyluckyBackupWindowBcration du profil par dfaut ...creating default profile ...luckyBackupWindow,cration du profil ...creating profile ...luckyBackupWindowrcrontab actuelle<font color=green>mise jour avec succs6current crontab updated successfullyluckyBackupWindowprofil actuelcurrent profileluckyBackupWindow(Le profil par dfautdefault profileluckyBackupWindow(Le profil par dfaut^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow(Le profil par dfautVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindowa t effacdeleted successfullyluckyBackupWindow,effacement de fichiersdeleting filesluckyBackupWindow,effacement de fichiers/info message displayed during ...file deletionsdeleting filesluckyBackupWindowafficher - restaurer - effacer les sauvegardes existantes des tches slectionnes?display - restore - delete existing backups of highlighted taskluckyBackupWindowrMontrer les informations concernant la tche slectionne.display information regarding highlighted taskluckyBackupWindowLa t dupliqu avec succs en tant queduplicated successfully asluckyBackupWindow8Des erreurs ont t trouves errors foundluckyBackupWindow*Excution du profil :execution of profile:luckyBackupWindow*excution du profil :Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow(Export russit dans exported successfully toluckyBackupWindow(impossible d'effacerfailed to removeluckyBackupWindowchec de la suppression de toutes les donnes d'instantans (snapshots) plus anciens)failed to remove all older snapshots dataluckyBackupWindowterminfinishedluckyBackupWindowtermine:full phrase: 'Execution of profile finished'finishedluckyBackupWindow2a t import avec succsimported successfullyluckyBackupWindowen cours...in progress...luckyBackupWindowinclureincludeluckyBackupWindowest modifi is modifiedluckyBackupWindow*n'est pas valide pouris not valid forluckyBackupWindow4Sauter l'erreur suivantejump to next errorluckyBackupWindow8Sauter l'erreur prcdentejump to previous errorluckyBackupWindow0a t charg avec succsloaded successfullyluckyBackupWindowFChargement du profil par dfaut ...loading default profile ...luckyBackupWindow,le chargement a chouloading failedluckyBackupWindow0chargement du profil ...loading profile ...luckyBackupWindowUn ou des fichiers journaux (log) ont t crs dans le rpertoire :.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindowHminimiser dans la bote miniaturesminimize to trayluckyBackupWindow\minimise la fentre dans la bote miniatures%minimizes the window to the tray arealuckyBackupWindowModifiermodifyluckyBackupWindow<Modifier la tche slectionnemodify highlighted taskluckyBackupWindowrien faire nothing to doluckyBackupWindowBexcution de commande aprs tchepost-task execution of commandluckyBackupWindowBexcution de commande avant tchepre-task execution of commandluckyBackupWindowLe profilprofileluckyBackupWindowLe profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowLe profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowLe profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowLe profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowLe profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowLe profil profile luckyBackupWindowmode silencieux quiet modeluckyBackupWindowrafrachies refreshedluckyBackupWindowRetirerremoveluckyBackupWindow:Retirer la tche slectionneremove highlighted taskluckyBackupWindow8a t renomm avec succs enrenamed successfully toluckyBackupWindow8a t renomm avec succs enWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowla sortie de rsync et des commandes avant et aprs la tche est affiche ici9rsync and pre/post task commands output is displayed hereluckyBackupWindow a t enregistrsaved successfullyluckyBackupWindowNenregistrement du profil par dfaut ...saving default profile ...luckyBackupWindow8enregistrement du profil ...saving profile ...luckyBackupWindowplanifi scheduledluckyBackupWindowHa t dfini comme profil par dfautset as defaultluckyBackupWindowest set toluckyBackupWindow ArrtshutdownluckyBackupWindowMode simulationsimulation modeluckyBackupWindowtatstatusluckyBackupWindow.superutilisateur (root) super userluckyBackupWindow8mode superutilisateur (root)super user modeluckyBackupWindowverstoluckyBackupWindow,transfert des fichierstransferring filesluckyBackupWindow,transfert des fichiers/info message displayed during ...file transferstransferring filesluckyBackupWindow2essayer d'envoyer un mailtrying to send an emailluckyBackupWindowversion :version:luckyBackupWindow0Calculer les diffrencesCalculate differences manageDialogCalculer les diffrences entre la source et l'instantan (snapshot) slectionnFCalculate the differences between the source and the selected snapshot manageDialog\Les calculs ont t termins par l'utilisateurCalculations terminated by user manageDialog FermerClose manageDialog(Fermer cette fentreClose this window manageDialogEffacerDelete manageDialogEffacer l'instantan (snapshot) slectionn et son fichier-journal (logfile),Delete the selected snapshot and its logfile manageDialogJe n'aie pas les permissions suffisantes pour lire ce rpertoire;I do not have sufficient permissions to read this directory manageDialogxVeuillez slectionner un instantan (snapshot) dans la liste&Please select a snapshot from the list manageDialogvVeuillez patienter jusqu' ce que cette tche soit termine*Please wait until the thread is terminated manageDialogRestaurerRestore manageDialogZRestaurer l'instantan (snapshot) slectionnRestore the selected snapshot manageDialogSTOPSTOP manageDialogBArrter les calculs IMMDIATEMENTStop calculations NOW manageDialog4Ce rpertoire n'existe pasThis directory does not exist manageDialog4Ce rpertoire n'existe pasInformation messageThis directory does not exist manageDialogMontrer le fichier journal (logfile) de l'instantan (snapshot) slectionn)View the logfile of the selected snapshot manageDialogVoir le fichier journal (logfile) de la tche de synchronisation slectionne*View the logfile of the selected sync task manageDialogdestination : destination: manageDialog cacher la source hide source manageDialogJluckyBackup - gestion des sauvegardesluckyBackup - manage backup manageDialognon disponible not available manageDialog profilprofile manageDialogsource :source: manageDialog>Rpertoire de synchronisation A sync dir A manageDialog>Rpertoire de synchronisation B sync dir B manageDialog tchetask manageDialog$voir journal (log)view log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABANDONNERABORT manageWizardAbandonAborted manageWizard.Chemin de la sauvegarde Backup path manageWizardvParcourir localement pour un nouveau chemin de restauration%Browse locally for a new restore path manageWizardSlectionnez ceci pour cloner l'instantan (snapshot) de sauvegarde vers le rpertoire de restauration.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDate & heure Date & time manageWizard*Effacer la sauvegarde Delete backup manageWizardEffacer les donnes existantes qui n'existent pas dans la sauvegarde4Delete existing data that do not exist at the backup manageWizard,Effacement des donnes Deleting data manageWizardEffacement du fichier qui liste les changements de l'instantan (snapshot))Deleting file that lists snapshot changes manageWizardEffacement du fichier journal (logfile) de l'instantan (snapshot)Deleting snapshot logfile manageWizardLes fichiers de sauvegarde existants remplaceront les fichiers correspondants dans le rpertoire de restaurationSExisting backup files will replace the corresponding files at the restore directory manageWizardTerminFinished manageWizardSi l'information ci-dessus est exacte, veuillez cliquer sur <b>dmarrer</b> pour commencer@If the information above is correct, click start to begin manageWizardSi l'information ci-dessus est exacte, veuillez cliquer sur <b>dmarrer</b> pour commencer`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard4Sauter l'erreur suivanteJump to next error manageWizard8Sauter l'erreur prcdenteJump to previous error manageWizardIl n'existe pas de donnes spcifiques l'instantan (snapshot). On ignore cette tape...,No snapshot specific data exist. Skipping... manageWizard CheminPath manageWizard.Restaurer la sauvegardeRestore backup manageWizard,Chemin de restauration Restore path manageWizardTRestauration des donnes : tronc principalRestoring data: main trunk manageWizard^Restauration des donnes : fichiers instantansRestoring data: snapshot files manageWizard^Slectionner nouveau rpertoire de restaurationSelect new restore directory manageWizardLe rpertoire de restauration sera identique l'instantan de sauvegardeBThe restore directory will become identical to the backup snapshot manageWizardCeci lancera une <b>simulation</b> qui ne fera aucun changement (mais produira peu prs la mme sortie qu'un lancement rel){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardfMise jour de la liste des instantans (snapshots)Updating list of snapshots manageWizardAVERTISSEMENTWARNING manageWizardtVous tes sur le point d'effacer des donnes de sauvegarde#You are about to delete backup data manageWizardAnnulercancel manageWizardchangerchange manageWizard fermerclose manageWizard8Des erreurs ont t trouves errors found manageWizard checfailed manageWizard chec-info message displayed after ...file deletionfailed manageWizardJluckyBackup - gestion des sauvegardesluckyBackup - manage backup manageWizarderreur suivante next error manageWizardPas d'erreurs no errors manageWizardnon disponible not available manageWizard"erreur prcdenteprevious error manageWizardsimulation simulation manageWizardDmarrerstart manageWizard Succssuccess manageWizard Succs-info message displayed after ...file deletionsuccess manageWizard Succs5info message displayed after ...snapshots list updatesuccess manageWizard'Hte distant' est slectionn, mais aucun hte distant n'est dclar='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>N'oubliez pas</b> de dfinir un rpertoire qui contienne la destination dans la bote de dialogue 'exclure'fDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogAjouter des rpertoires, fichier ou motifs exclure de cette tche@Add any directory, file or pattern to be excluded from this task modifyDialogAjouter n'importe quel rpertoire, fichier ou motif inclure dans cette tche>Add any directory, file or pattern to be included by this task modifyDialogdAjouter la commande entre dans le champ ci-contre*Add command as entered in the field beside modifyDialogAjouter la liste d'exclusion l'lment entr dans le champ ci-contre*Add exclusion as entered in the next field modifyDialogAjouter la liste d'inclusion l'lment entr dans le champ ci-contre*Add inclusion as entered in the next field modifyDialogAjoutez ou retirez n'importe quelle option de rsync. Si vous ne savez pas ce qu'elles signifient, laissez-les telles quelles !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogjAjouter l'option rsync entre dans le champ ci-contre-Add rsync option as entered in the next field modifyDialog AvancAdvanced modifyDialog AprsAfter modifyDialogTous les champs dclars de la fentre de proprits de tche semblent OK?All declared fields of the task properties window seem to be ok modifyDialog$Excuter galement Also Execute modifyDialogLTentative d'action "super-utilisateur"Attempt super-user activities modifyDialoghSource de Sauvegarde l'intrieur de la Destination Backup Source inside Destination modifyDialog0Sauvegarder les fichiers Backup files modifyDialog@Sauvegarder les fichiers ouvertsBackup open files modifyDialog AvantBefore modifyDialogDossiers cache Cache folders modifyDialogAnnulerCancel modifyDialogRSlectionnez ceci si vous utilisez une partition FAT/NTFS comme destination. La proprit et les permissions des donnes NE seront PAS prserves. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogdCochez cela pour cloner la source la destinationiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialog~Slectionnez ceci pour vous connecter un module rsync distant/Check this to connect to an rsync Remote module modifyDialog&Options de commandeCommand Options modifyDialog$Liste de commandes Command list modifyDialogCopier tels quels les 'device' (superutilisateur seulement) et les fichiers spciaux (-D)?Copy device (super user only) & special files as they are (-D) modifyDialoghCopier les liens symboliques comme liens symboliquesCopy symlinks as symlinks (-l) modifyDialogDfinissez le type de cette tche 1. Sauvegarder le rpertoire source l'intrieur de la destination (voir aussi la case "Ne pas crer de rpertoire" 2. Syncroniser la Source et la Destination, en gardant les fichiers les plus rcentsDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDfinissez le type de cette tche : 1. Sauvegarder le contenu de Source dans Destination 2. Sauvegarder le dossier source par son nom dans Destination 3. Synchroniser Source et Destination, en gardant les fichiers les plus rcents de chacun d'entre euxDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogPEffacer les fichiers dans la destinationDelete files on the destination modifyDialogSupprimer les fichiers au repertoire de Destination si ils n'xistent pas au rpertoire source . "Rcursion dans le repertoire" a t slectionn (--delete-after & --delete-excluded si "Exclusions" est utilis)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescription Description modifyDialogDestination Destination modifyDialogDestination : Destination : modifyDialog6La destination est FAT/NTFSDestination is FAT/NTFS modifyDialogRNe pas crer de rpertoire supplmentaireDo NOT create extra directory modifyDialogNe pas sauvegarder les fichiers source qui sont plus rcents sur la destination (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNe pas exclure cette liste de motifs. Veuillez vous rfrer au manuel pour une meilleure comprhension des rgles d'inclusion.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogJModifier l'inclusion mise en videnceEdit highlighted inclusion modifyDialogEntrez un nom pour cette tche (ex : "Sauvegarder mon rpertoire personnel"):Enter a name for this task (eg "Backup my home directory") modifyDialogEntrez ici une commande excuter aprs la tche puis cliquez sur "ajouter" pour l'ajouter la liste ci-dessousnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogEntrez ici une commande excuter avant la tche puis cliquez sur "ajouter" pour l'ajouter la liste ci-dessousoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogEntrez ici une option ajouter rsync (ex: "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog:Entrez ici des noms de fichiers, de dossiers ou des motifs puis cliquez sur le bouton "ajouter" pour les ajouter la liste d'exclusion * - quivaut tout lment non vide (en s'arrtant aux slashes) ** - quivaut n'importe quel caractre, y-compris les slashes ? - quivaut n'importe quel caractre except les slashes nom_de_rpertoire/*** - quivaut au rpertoire en question et tout ce qu'il contient un motif dbutant par / est ancr un point prcis de la hirarchie du transfert (normalement la "source") un motif termin par / - quivaut seulement au rpertoire ; les fichiers rguliers, liens symboliques et les priphriques ne sont pas pris en compteEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog Entrez ici des noms de fichiers, de dossiers ou des motifs puis cliquez sur le bouton "ajouter" pour les ajouter la liste d'inclusion * - quivaut tout lment non vide (en s'arrtant aux slashes) ** - quivaut n'importe quel caractre, y-compris les slashes ? - quivaut n'importe quel caractre except les slashes nom_de_rpertoire/*** - quivaut au rpertoire en question et tout ce qu'il contient un motif dbutant par / est ancr un point prcis de la hirarchie du transfert (normalement la "source") motif termin par / - quivaut seulement au rpertoire, pas aux fichiers rguliers, aux liens symboliques ni aux priphriques (devices)Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogEntrez le chemin complet vers le rpertoire de destination (ex : /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogEntrez le chemin complet vers le fichier qui contient la cl d'authentification prive ssh (laisser vide si non applicable) Notez que vous devez effectuer toutes les actions ncessaires une connection ssh distante sans mot de passe utilisant une paire de cls OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogEntrez le chemin complet du fichier qui contient le mot de passe d'authentification pour rsync (pas pour ssh) - laissez blanc si non applicable~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogEntrez le chemin complet vers le rpertoire source (ex : /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog@Entrez le nom de l'hte distant."Enter the name of the remote host. modifyDialogEntrez le port que vous voulez utiliser pour la connection ssh (ne rien entrer pour utiliser le port par dfaut)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogEntrez votre nom d'utilisateur pour l'hte distant (ne rien entrer si ce n'est pas applicable).HEnter your username for the remote host (leave blank if not applicable). modifyDialog8Des erreurs ont t trouvesErrors have been found modifyDialogExclureExclude modifyDialogpExclure tous les dossiers "lost+found" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialognExclure tous les fichiers et dossiers de 'backup' (**~)(Exclude all backup files & folders (**~) modifyDialogvExclure tous les dossiers cache (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialoghExclure tous les rpertoires temporaires (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialog~Exclure tous les repertoires .gvsf des utilisateurs (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogExclure tous les rpertoires de la corbeille utilisateur (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog"Liste d'exclusion Exclude list modifyDialogExclure les rpertoires systme /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExclure les rpertoires de montage du systme /mnt et /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogExcuter des commandes supplmentaires, avant ou aprs la tche.1Execute extra commands, before or after the task. modifyDialog.Excuter la tche mme si elle apparat avec un message d'avertissement (WARNING) Normalement utilis lorsque les commandes "Excuter avant" peuvent annuler un avertissement (par ex. monter des partitions) ATTENTION : slectionnez ceci uniquement si vous savez ce que vous faitesExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialogJListe d'options rsync supplmentairesExtra rsync options list modifyDialog~Les fichiers qui sont lis matriellement (hard-linked) dans la source le seront galement dans la destination. AVERTISSEMENT : Tous les fichiers doivent tre inclus dans le transfert !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialogPIgnorer des fichiers comme le ferait CVSIgnore files the CVS way modifyDialogIgnore des fichiers avec un algorithme similaire celui de CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInclureInclude modifyDialog^N'inclure QUE cette liste de motif. Rien de plus. Se rfrer au manuel pour une meilleure comprhension des rgles d'inclusion. Ceci dsactivera la fonctionnalit d'exclusion.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Liste d'inclusion Include list modifyDialogMode inclusion Include mode modifyDialogLaissez la case coche <b>STOP</b> si la commande xcute se termine avec des erreursgLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Mode :Mode: modifyDialogLDescendre l'inclusion mise en videnceMove highlighted inclusion down modifyDialogVMonter l'inclusion mise en vidence en hautMove highlighted inclusion up modifyDialog Nom :Name : modifyDialog"Inclusion normaleNormal Include modifyDialogOKOkay modifyDialog"Inclure seulement Only Include modifyDialogzSinon dcochez l'option 'Hte distant' pour oprer localement2Otherwise uncheck 'Remote Host' to operate locally modifyDialog~S'il vous plat cochez la case correspondante avant de procder/Please check the relevant box before proceeding modifyDialogzVeuillez dfinir la source avant de lancer l'diteur de motifPrserver les liens symboliquesPreserve symlinks modifyDialogPrserver l'utilisateur (superutilisateur seulement), le groupe et la date des fichiers (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialogZLire les motifs d'exclusion depuis le fichierRead exclude patterns from file modifyDialog"Lire le fichier : Read file: modifyDialogZLire les motifs d'inclusion depuis le fichierRead include patterns from file modifyDialogNParcourir rcursivement les rpertoiresRecurse into directories modifyDialogZParcourir rcursivement les rpertoires (-r)Recurse into directories (-r) modifyDialog distanceRemote modifyDialogModule distant Remote module modifyDialogXRetirer la commande slectionne de la liste$Remove highlighted command from list modifyDialogjRetirer l'lment slectionn de la liste d'exclusion&Remove highlighted exclusion from list modifyDialogjRetirer l'lment slectionn de la liste d'inclusion&Remove highlighted inclusion from list modifyDialogRRetirer l'option slectionne de la liste#Remove highlighted option from list modifyDialogbRpter n'importe quelle commande choue, x fois&Repeat any command that fails, x times modifyDialog,Rpter en cas d'checRepeat on fail: modifyDialog2Restaurer les permissionsRestore permissions modifyDialogFSlectionner la commande excuterSelect command to be executed modifyDialogRSlectionner le rpertoire de destinationSelect destination directory modifyDialogZSlectionner un fichier de motifs d'exclusion$Select file to read exclude patterns modifyDialogZSlectionner un fichier de motifs d'inclusion$Select file to read include patterns modifyDialogTSlectionner le fichier mot de passe rsyncSelect rsync password file modifyDialogBSlectionner le rpertoire sourceSelect source directory modifyDialog>Slectionner le fichier cl sshSelect ssh keyfile modifyDialogIndiquez le nombre total d'instantans (snapshots) de sauvegarde conserver0Set the total number of backup snapshots to keep modifyDialognMontre la commande rsync telle qu'elle va tre excute.Shows the rsync command as it will be executed modifyDialoghIgnorer les fichiers plus rcents sur la destinationSkip newer destination files modifyDialog2Instantans conserver :Snapshots to keep: modifyDialog SourceSource modifyDialogSource :Source : modifyDialogDSynchroniser source et destination"Synchronize Source and Destination modifyDialog&Rpertoires systmeSystem folders modifyDialogBRpertoires de montage du systmeSystem mount folders modifyDialog.Description de la tcheTask description modifyDialogNom de la tche Task name modifyDialog&Proprits de tcheTask properties modifyDialogModles Templates modifyDialog,Rpertoire temporairesTemporary folders modifyDialogjCe n'est pas autoris car '/' n'a pas vraiment de nomSTOP</b> en cas d'erreur d'xcution de tche0use boxes to STOP task execution on error modifyDialogValidervalidate modifyDialogsans avoir slectionn l'option 'Parcourir rcursivement les rpertoires' qui est pourtant requiseCwithout having checked 'Recurse into directories' which is required modifyDialogAnnulerCancel patternEditorPCochez ici pour utiliser le rpertoire ci-dessus comme un chemin absolu si non coch, le motif se rfrera tout fichier / rpertoire qui correspondra au critre "nom"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorzDfinir ici les noms correspondant aux fichiers / rpertoiresEDefine here the name criteria for the files/directories to be matched patternEditorvDfinissez ici ce quoi vous voulez que le motif se rfre8Define here, what would you like the pattern to refer to patternEditor*Contenu du rpertoireDirectory contents patternEditorEntrez ici les caractres prsents n'importe quelle position dans le nom des fichiers / rpertoires auxquels le motif se rfresEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor:Entrez ici les derniers caractres du nom des fichiers / rpertoires auxquels le motif se rfre ex : pour se rfrer tous les fichiers ".txt", entrez .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorEntrez ici le nom des fichiers / rpertoires auxquels le motif se rfreGEnter here the name of the files/directories that the pattern refers to patternEditorEntrez ici les premiers caractres du nom des fichiers / rpertoires auxquels se rfre le motifbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditorlDescendre du nombre suivant de niveaux hirarchiques :Go deeper in path by : patternEditorTDescendre dans tous les niveaux infrieursGo deeper in path by any level patternEditorOKOkay patternEditorrVeuillez choisir un rpertoire l'intrieur de la source+Please choose a directory within the source patternEditorlVeuillez choisir un fichier l'intrieur de la source&Please choose a file within the source patternEditorRemettre les champs de l'diteur de motif aux valeurs par dfaut5Reset the pattern editor fields to the default values patternEditor4Slectionner un rpertoireSelect directory patternEditor.Slectionner un fichier Select file patternEditor.Ensemble de rpertoiresSet of directories patternEditor(Ensemble de fichiers Set of files patternEditor*Rpertoire spcifiqueSpecific directory patternEditor$Fichier spcifique Specific file patternEditor@Le motif courant est affich ici$The actual pattern is displayed here patternEditor,Le motif se rfre :The pattern refers to a: patternEditorUtilisez ceci si le motif se rfre un ensemble de rpertoires qui ont quelque chose en commun ex : tous les rpertoires nomms "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUtilisez ceci sir le motif se rfre un ensemble de fichiers qui ont quelque chose en commun ex : tous les fichiers avec l'extension ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUtilisez ceci si le motif se rfre un rpertoire spcifique ex : "/media/music/album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUtilisez ceci si le motif se rfre un fichier spcifique ex : "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorzUtilisez ceci si le motif se rfre seulement au contenu d'un rpertoire (ou d'un ensemble de rpertoires), et non au rpertoire lui-mme ex : le contenu du rpertoire "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditor&Utilisez ceci pour dsigner des sous-rpertoires de niveau hirarchique infrieur. Exemple : Le rpertoire "/media/music" contient 3 sous-rpertoires : 1. Rock 2. Jazz 3. Soundtracks Si vous voulez dsigner le contenu de ces 3 rpertoires, choisissez ce qui suit : * Ensemble de rpertoires * Contenus des rpertoires * Chemin : /media/music/ * Descendre du nombre suivant de niveaux hirarchiques : "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditortousany patternEditor~Parcourir localement pour chercher un chemin vers un rpertoire"browse localy for a directory path patternEditorZParcourir localement pour chercher un fichierbrowse localy for a file patternEditorcontient : contains : patternEditorrpertoire : directory : patternEditor se termine par : ends with : patternEditorfichier :file : patternEditormotif final final pattern patternEditor est exactement : is exactly : patternEditornomname patternEditor diteur de motifpattern editor patternEditor$valeurs par dfautreset patternEditorcommence par : starts with : patternEditor2utiliser un chemin absoluuse absolute path patternEditor fichier filescheduleDialog et le& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog :dlai:delayscheduleDialogF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Planifier l'excution du profil</span></p></body></html>

Profile execution scheduling

scheduleDialogau redmarrage@ rebootscheduleDialogTAjouter un nouveau profil de planificationAdd a new profile schedulescheduleDialog&Planifier le profilAdd profile schedulescheduleDialogTousAnyscheduleDialog AvrilAprilscheduleDialog avrilfull phrase: 'of April'AprilscheduleDialogtes-vous certain de vouloir fermer le dialogue de planification ?4Are you sure you want to close the schedule dialog ?scheduleDialogAotAugustscheduleDialogaotfull phrase: 'of August'AugustscheduleDialogAnnulerCancelscheduleDialogCochez ceci si votre machine ne supporte pas d'environnement graphique (ex : serveur)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogMode console Console ModescheduleDialogDcembreDecemberscheduleDialogdcembrefull phrase: 'of December'DecemberscheduleDialog\Dlai d'xcution de luckybackup au dmarrage&Delay luckybackup execution at startupscheduleDialog8Afficher la crontab couranteDisplay the current crontabscheduleDialog$Excuter le profilExecute profilescheduleDialogFvrierFebruaryscheduleDialogfvrierfull phrase: 'of February'FebruaryscheduleDialogVendrediFridayscheduleDialogProfil invalideInvalid profilescheduleDialogJanvierJanuaryscheduleDialogjanvierfull phrase: 'of January'JanuaryscheduleDialogJuilletJulyscheduleDialogjuilletfull phrase: 'of July'JulyscheduleDialogJuinJunescheduleDialogjuinfull phrase: 'of June'JunescheduleDialogMarsMarchscheduleDialogmarsfull phrase: 'of March'MarchscheduleDialogMaiMayscheduleDialogmaifull phrase: 'of May'MayscheduleDialogFModifier la planification du profilModify profile schedulescheduleDialog^Modifier le profil de planification slectionn Modify selected profile schedulescheduleDialog LundiMondayscheduleDialogLAucune planification n'est dclare !!No schedules are declared !!scheduleDialogNovembreNovemberscheduleDialognovembrefull phrase: 'of November'NovemberscheduleDialogOctobreOctoberscheduleDialogoctobrefull phrase: 'of October'OctoberscheduleDialogProfil : Profile :scheduleDialogJDtails de la planification du profilProfile schedule detailsscheduleDialog\Retirer le profil de planification slectionn Remove selected profile schedulescheduleDialog:Lancer une fois, au dmarrageRun once, at startupscheduleDialog SamediSaturdayscheduleDialogSeptembre SeptemberscheduleDialogseptembrefull phrase: 'of September' SeptemberscheduleDialogIgnorer les tches qui apparaissent avec un message d'avertissement 'CRITIQUE' aprs la vrification des rpertoiresSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog Dmarrage zroStarting from scratchscheduleDialogDimancheSundayscheduleDialogLe fichier de planification existant n'est pas valide pour luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialog JeudiThursdayscheduleDialog MardiTuesdayscheduleDialogFImpossible de crer un fichier cronUnable to create cron filescheduleDialog^Impossible de crer un fichier de planificationUnable to create schedule filescheduleDialogMercredi WednesdayscheduleDialogVous avez fait des changements sans cliquer sur le bouton cronIT8You have made changes without clicking the cronIT buttonscheduleDialog~Vous avez atteint le nombre maximal de profils de planificationBYou have reached the maximum limit of supported scheduled profilesscheduleDialogVous devez retirer un lment si vous voulez en ajouter un autre5You have to remove an item if you wish to add anotherscheduleDialogVVotre crontab a t mise jour avec succs$Your crontab is updated successfullyscheduleDialogajouteraddscheduleDialogatscheduleDialog fermerclosescheduleDialog$Fermer ce dialogueclose this dialogscheduleDialogPlanifier !! cronIT !!scheduleDialog$Contenu de crontabcrontab contentscheduleDialogjourdayscheduleDialogjour du mois :day of month :scheduleDialog(jour de la semaine : day of week :scheduleDialog chaqueeveryscheduleDialog:toutes les heures la minutehourly at minute scheduleDialog6luckyBackup - planificationluckyBackup - schedulescheduleDialogminminscheduleDialogmodifiermodifyscheduleDialog mois :month :scheduleDialogmendscheduleDialogmeas in 22nd dayndscheduleDialogBAucune entre de crontab n'existeno crontab entries existscheduleDialogdeofscheduleDialog de tous les mois of any monthscheduleDialogOKokayscheduleDialogBune fois, au dmarrage du systmeonce, at system startupscheduleDialogmerdscheduleDialogmeas in 23rd dayrdscheduleDialogRetirerremovescheduleDialogplanifier l'excution des profils comme dclar dans la liste ci-dessus@schedule the execution of profiles as declared in the list abovescheduleDialogpositionner la valeur -1 pour une planification toutes les heures9set this value to -1 for the schedule to occur every hourscheduleDialogNignorer en cas d'avertissement critique skip criticalscheduleDialogerstscheduleDialogmeas in 21st daystscheduleDialogmeas in 31st daystscheduleDialogmethscheduleDialogmeas in 10th daythscheduleDialogmeas in 11th daythscheduleDialogmeas in 12th....19th daythscheduleDialogmeas in 20th daythscheduleDialogmeas in 24th...30th daythscheduleDialogme as in 8th daythscheduleDialogme as in 9th daythscheduleDialog,heure (heure:minute) :time (hour:min) :scheduleDialog6Montrer la crontab couranteview current crontabscheduleDialogBUn profil du mme nom existe dj+A profile with the same name already exists textDialogTtes-vous certain de vouloir poursuivre ??#Are you sure you wish to proceed ?? textDialogPRENEZ GARDE, si votre intention N'est PAS de cloner la source dans la destination !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogAnnulerCancel textDialogRCopier la commande dans le presse-papiersCopy command to clipboard textDialogXNe plus afficher ce message pour cette tche$Do not show this again for this task textDialog6Entrez la phrase de passe :Enter passphrase : textDialog0Entrez le mot de passe :Enter pasword : textDialogBEntrez le nom du nouveau profil :#Enter the name of the new profile : textDialogBEntrez le nouveau nom du profil :#Enter the new name of the profile : textDialogNonNo textDialogOKOkay textDialog@Veuillez entrer un nom diffrentPlease enter a different name textDialog.Description du profil :Profile description : textDialogOuiYes textDialogVous avez choisi de "Sauvegarder le contenu du rpertoire source"<br>en mme temps que l'option "effacer les fichiers dans la destination"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog$Imformations eMaileMail information textDialogluckyBackup luckyBackup textDialogAnnulerCancel winDialog\Entrer le chemin complet du rpertoire cygpath*Enter the full path of the cygpath command winDialogZEntrer le chemin absolu de la commande dosdev)Enter the full path of the dosdev command winDialogjEntrer le chemin complet du rpertoire de luckybackup0Enter the full path of the luckybackup directory winDialogZentrer le chemin complet de la commande rsync(Enter the full path of the rsync command winDialogVEntrer le chemin complet de la commande ssh&Enter the full path of the ssh command winDialog`Entrer le chemin absolu du rpertoire temporaire.Enter the full path of the temporary directory winDialogZEntrer le chemin absolu du rpertoire vshadow,Enter the full path of the vshadow directory winDialog8Exclure les fichiers (*.exe)Executable Files (*.exe) winDialogOkOkay winDialogDslectionner les commandes cygpathSelect cygpath command winDialog@Slectionner les commandes dosdevSelect dosdev command winDialog<Slectionner la commande rsyncSelect rsync command winDialog8Selectionner la commande sshSelect ssh command winDialog:Utiliser la valeur par dfautUse default value winDialog(Parcourir localementbrowse locally winDialogcygpath :cygpath: winDialog.dclaration des cheminsdeclaration of paths winDialogdosdev :dosdev: winDialogluckyBackup luckyBackup winDialog.rpertoire principal :  main dir: winDialog rsync:rsync: winDialog ssh :ssh: winDialog.rpertoire temporaire : temp dir: winDialog(rpertoire vshadow : vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_sl.qm0000666000175000017500000042576313157502317021521 0ustar luckybluckybDHYFKeSY]_gng#ghYj]s%z,Gf ffQvS^E-Q9E45N~Baaaaa*ah0@DE3ص%@ H5˕a @wT "f"&%({Y)*`3*0=+U+E+,Bk/]^::;#ĉU'<SAى>K4ifXo.R=*>_#nGr‘ :~ dg9!b<[(e'+&s.+6F 7;<$GI|}OW Q19܏Q]R[a_/g.fC,(hhw3pNpNuq>'`tcr!XK-L='aYEX65[ѐSfiAyuԳwŵ Ȼ ,'~ _c2ebXK 8#u&ov)+w/r{28IBZyC cKIFPoE@YB<ZH\c'c%f:QCuH9|BEO 7m2R^wZISRBKgƨ&{9+ .XECpNkDP8,!÷uIYԥ{*}mVG[4%h&E(ISA2"JqZG.ҐO5oC^ nn Av[}(&W-a4)4)3*߬,b8My:MT[_rU|eynh !iJiUCtM}^.e .e-TWc{9 7%std r-M Ň6ʵgHZ0[ܯ"6)>b[~hrAϗP]uǧ g ‰k=>`Cyڌ\l,u PBsQn& tA DȪQL~PYOMOjz>LeJiYzzi^Jlwrt-}7;1:^օH"I~IHIIVIDI> Ay,KL ^AEmфR  +.-HeFi AiM#d~Ҡ@ifN * @AI8|38=OT/NZܒV[`>\xhl@%lm6>8\n#njp^txvXyk9~i/wF96rȕȕݢȕXJDg:tOî";mpKXR(ߘ?S$gvY U"=;" Q.;KHyC{KOVf _Av`_hDb#Vf0~g.hn(hn!iiEkՒ kՒ9TsDv3Qy|~gTvb(T*4/YwuER\I74I n`~P7kVr+y]S8!Ȓ&X9=2':ݣ@Z  |uo `GA읒TXaU}` X" |75BU^;&+e-zH2 J9YM>EEQN3"UṫYv`xe6a#6vuSjv:~{_g/Ibu3qڄ<DF FF ϕɘi99ΕUUu@&Prdjj gXG%Bdȕ+3,aGGXTUbUUDynh~Eǧ1~_̐DjIII%4׃vߖek;Y  332 A;ti"#)@,-/e'1_9GF\ IX9yJJεL0|NPO/Ry pV)g3h Em|zGv@x5R,-1 v(ʴ5 ʶ'V,7ΫB_Zcbi>)? N  c   q. + #rs9 *{ +)|f 6K 8 CcK! Mg MgP N#& U | W^ ] aY7s d\ j^o l lRc mE6 pD& q R ] @ e u ͆- , aBV -B8 Z!p '+ Ԡ;R l ׊$, =* .{ # Ѿh I Tp  k c2y    -00 -n /l$ 7E_ 8ҝ ? @  ` f g j l pN%~ zj C ) 1 Hny Fw iTi ~ cY XB`  24 bC , 7 H a GCj8 ñN : Xh& h@ t$. ԑJ @m ݓH T i 7 pi "ŧ ڲ vt  VdX dN j  S # (N/ +l - 0bZ 7'yo 93Be :UC% ; ES Ge' HZ L9 PA T, Tg Zl _ypP _ f{ g.wT g.w g.w6f i i Q k mq { { {~  ] F Ҟ <  Y YCg # %p /:p 79 79 { 9%߹ 9)rj ;w < < > >ӊ= @ek A.| Acs` Eh( F F. LM N0 P} X ^ bU  o& o9+P r'^ vs A | l| j1o ^{ * \% C) "Ԇ t  ~   . T *>l s~ G  % 2kT a Rb\ 2} ?BR $ ;n  sh @? T6 #U &,ʦ &'f ) *}E + ,D ,D8 68c P \.~0 c i· mXG {} e\ 1P  E ̡ {{ Q :! i2= ms c l Xw % fN zk lz ^ I' 5 j@ lc| Ya i [ "l , ݗ # 䕜X = c2xp x x S 8` 8 8 1 6IF=*"9CqԵ'~A(q5*#8 /#YE7 AG J 1Tba)\Pv].{a cRtpe~kmR}p{>Oyi&{?~rVT!YF<Y;#{R@sVA$rIuS[֭ 3~M̖ۘ3k>{d4_U"!YeT CYT#!/V&)Ni(դ'_(դ-X`ܙ4?<EE^ˮG E7)IrNRN>[=JV^iWcmf/lnJs}`s}u@|u@'~(NYd}7k4fCt.)*QyyvE2vɟ)(ʱNuY+\u>_]֙SAG ߖl:D]f 0..YPބU1ŕi *Prera unavanje razlikCalculating differencesCalcDiffThreadrKoli ina podatkov je ogromna. Prikazani so le prvi vnosi.2Data amount is huge. Displaying only first entriesCalcDiffThreadPo akajte ... Please waitCalcDiffThread6Preiskovanje ciljnega mestaScanning destinationCalcDiffThread*Preiskovanje posnetkaScanning snapshotCalcDiffThread"Preiskovanje viraScanning sourceCalcDiffThread0Razlike posnetka in viraSnapshot and source differencesCalcDiffThread|Podatki posnetka, ki obstajajo tudi na vir, vendar so druga ni=Snapshot data that also exists at the source and is differentCalcDiffThreadLPodatki posnetka, ki NE obstaja v viru-Snapshot data that do NOT exist at the sourceCalcDiffThreadXIzvirni podatki, ki NE obstajajo na posnetku-Source data that do NOT exist at the snapshotCalcDiffThreadJUsklajevanje razlik med mapama A in BSync dir A & B differencesCalcDiffThreadUsklajevanje podatkov mape A, ki NE obstajajo v usklajeni mapi B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadUskladi podatke mape B, ki obstajajo tudi v mapi A, vendar so druga ni?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadUsklajevanje podatkov mape B, ki ne obstajajo v usklajeni mapi A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadnPodatki posnetka bodo med OBNOVO prepisali podatke vira=The snapshot data will replace the source data during RESTORECalcDiffThreadlTi bodo med OBNOVO izbrisani le,  e omogo ite mo~nost:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadizbriai obstoje e izvorne podatke, ki ne obstajajo v varnostni kopiji;delete existing source data that do not exist at the backupCalcDiffThreadUstvarjene bodo varnostne kopije profilov, dnevniakih datotek in podatkov posnetkov.Backing-up profile, logfiles and snapshot dataQObjectKRITI NOCRITICALQObjectbPonoven zagon ukaza zaradi spodletelega izvajanjaCommand re-run due to failureQObjectHNi mogo e odpreti dnevniake datotekeCould not open the logfileQObjectCilj DestinationQObjectMapa ciljaDestination directoryQObjectMapa DirectoryQObjectNi ustreznih dovoljenj za dostop oziroma branje usklajevane mape A;I do not have the permission to read/enter sync directory AQObjectNi ustreznih dovoljenj za dostop oziroma branje usklajevane mape B;I do not have the permission to read/enter sync directory BQObjectvNi ustreznih dovoljenj za dostop oziroma branje ciljne mapeDI do not have the permission to read/enter the destination directoryQObjectxNi ustreznih dovoljenj za dostop oziroma branje izvorne mape?I do not have the permission to read/enter the source directoryQObjectDatoteke ne bodo <font color=red><b>PRESKO ENE</b></font>, ker je izbrana tudi mo~nost "Prezri OPOZORILA".mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject, as zadnjega izvajanjaLast execution timeQObject V reduOKQObjectPred nadaljevanjem <b>odstranite oznake ustreznih mo~nosti za vklju itev</b>APlease uncheck appropriate include boxes before proceedingQObjectVirSourceQObjectMapa viraSource directoryQObject"Mapa usklajevanjaSync directoryQObjectUsklajevanjeSyncingQObjectUsklajevanje'Full phrase: Syncing to SyncingQObjectOpis opravilaTask descriptionQObjectUstvarjena bo nova ciljna mapa,  e ta ae ne obstaja, v njej pa bo ustvarjena varnostna kopija]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject0Navedena opravila za vklju evanje imajo dolo eno <b>enako ciljno mapo</b> (skupno ali v skupini) in vsaj ena bo ustvarila varnostno kopijo vsebine mape.The following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectLDnevniake datoteke ni mogo e ustvariti The logfile could not be createdQObject:Dnevniaka datoteka ne obstajaThe logfile does not existQObjectDMed izvajanjem je prialo do napakeThe process reported an errorQObjectzProgramski paket z navedenim ukazom najverjetneje ni namea en/The specified command is probably not installedQObject0Seznam opravil je prazenThe task list is emptyQObjectfTo opravilo <font color=orange><b>ne bo presko eno.3This task will not be skippedQObjectrTo opravilo <font color=red><b>ne bo izvedeno</b></font>.7This task will be skippedQObjectrUporaba oddaljenega izvajanja; preverjanje je onemogo enoUsing remote, check is skippedQObjectOPOZORILOWARNINGQObjectHVklju eni sta dve povezani opravili:8You have included both of the following connected tasks:QObject<Ni izbranega nobenega opravilaYou have not included any tasksQObject in/aliand/orQObject ukaz: command: QObjectne obstajadoes not existQObject"zaznane so napake errors foundQObject8izvajanja prvega dela nalogeexecution of 1st part of taskQObject<izvajanje prvega dela opravila?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject>izvajanje drugega dela opravilaexecution of 2nd part of taskQObject$Izvajanje opravilaexecution of taskQObject$izvajanje opravila3Full phrase: execution of task: finishedexecution of taskQObject$izvajanje opraviladFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectKoda izhoda:  exit code: QObjectkon anofinishedQObjectkon ano?Full phrase: execution of 1st part of task: finishedfinishedQObjectkon ano3Full phrase: execution of task: finishedfinishedQObjectkon anoCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectkon ano zaradi napake izvajanja ukaza pred ali po izvajanju naloge9finished because of pre/post task command execution errorQObject prostofreeQObjectje prazenis emptyQObject8je prazna, ali pa ne obstajais empty or does not existQObjectni priklopljenais not mountedQObjectbrez napak no errorsQObjectni na voljo not availableQObject.ni opravil za izvajanjenothing to startQObjectOdvod:  output: QObjectFIzvajanje ukaza po izvedbi opravilapost-task execution of commandQObjectBizvajanje ukaza po izvedbi nalogeCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectJIzvajanje ukaza pred izvedbo opravilapre-task execution of commandQObjectFizvajanje ukaza pred izvedbo nalogeBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectza enjanje ...startingQObjectza enjanje?Full phrase: execution of 1st part of task: startingstartingQObjectza enjanje?Full phrase: execution of 2nd part of task: startingstartingQObjectza enjanje ...3Full phrase: execution of task: startingstartingQObjectza enjanje?Full phrase: post-task execution of command: startingstartingQObject stanjestatusQObjectRopravilo ni dovoljeno iz o itnih razlogov'this is not allowed for obvious reasonsQObjectds tem bo eno opravilo preklicalo izvajanje drugega.this will lead to one task canceling the otherQObjectzatoQObjectza'Full phrase: Syncing to toQObjectHNi mogo e odpreti dnevniake datotekeCould not open the logfile ReadLogFile&O programu&About aboutDialog&Dovoljenje&License Agreement aboutDialog&Podpora&Support aboutDialog&Zahvale &Thanks to aboutDialogse zahvaljujem moji drugi polovici <b>Dimitri</b>, ki me pri delu ves  as podpira.j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog&Uporabnikom forumov...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&vtorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej }nidarai Andrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialogZprevajalec uporabniakega vmesnika v araba inoArabic gui translator aboutDialognUradni vzdr~evalec paketa/izgradnje za Arch linux (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtene, Gr ijaAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogVProgram za usklajevanje in varnostne kopijeBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogprevajalec uporabniakega vmesnika v bosana ino in vzdr~evalec paketa mandriva4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog^prevajalec uporabniakega vmesnika v bolgara inoBulgarian gui translator aboutDialog`prevajalec uporabniakega vmesnika v katalona inoCatalan gui translator aboutDialog\prevajalec uporabniakega vmesnika v kitaja inoChinese (Taiwan) gui translator aboutDialograzvijalec kode za podporo oddaljenemu usklajevanju in sistemom vsa na sistemih WindowsDCode contributor for remote & vss support regarding the windows port aboutDialogFDatoteke dovoljenja ni mogo e najti!Could not locate the license file aboutDialogVprevajalec uporabniakega vmesnika v  ea inoCzech gui translator aboutDialog:vzdr~evalec paketov za DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog`prevajalec uporabniakega vmesnika v nizozema inoDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogin uporabnikom Especially aboutDialogBPrevajalec vmesnika v estona ino Estonian gui translator aboutDialog^vzdr~evalec paketa za Fedoro (uradno skladia e))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog<vzdr~evalec paketa za Free BSDFree BSD package maintainer aboutDialog^prevajalec uporabniakega vmesnika v francoa inoFrench gui translator aboutDialogprevajalec uporabniakega vmesnika v francoa ino in pomemben svetovalec pri pripravi paketov (in ne le to)AFrench gui translator and valuable packing advisor (and not only) aboutDialogXprevajalec uporabniakega vmesnika v gala inoGalician gui translator aboutDialogHvzdr~evalec paketov za Gentoo ebuildGentoo ebuild maintainer aboutDialogXprevajalec uporabniakega vmesnika v nema inoGerman gui translator aboutDialog6spodbuditi me k delu preko:Give a thumbs up at: aboutDialog^prevajalec vmesnika v gra ino in preizkuaevalec(Greek gui translator and valuable tester aboutDialog:prevajalec Grakega priro nikaGreek manual translator aboutDialogSam nikoli nisem in nikoli ne bom sprejemal denarja za razvoj tega projekta.DI personally never had and never will accept money for this project. aboutDialognBrez njegovih vodnikov, ta projekt ne bi nikoli za~ivelJIf it wasn't him and his tutorials I would never have started this project aboutDialog e vam je program vae , in bi radi spodbudili razvoj, morate le:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogTa program je <b>prosta programska oprema</b>; lahko ga razairjate in/ali spreminjate pod pogoji Sploanega Javnega dovoljenja GNU kot je objavljena s strani Free Software Foundation; razli ice 3.It 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, version 3 of the License. aboutDialog:Program se razairja v upanju, da bo uporaben, toda BREZ KAKR`NIHKOLI ZAGOTOVIL; tudi brez impliciranih zagotovila za PRODAJO ali PRIMERNOST ZA DOLO EN NAMEN.It 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. aboutDialog`prevajalec uporabniakega vmesnika v italjana inoItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogDNazadnje, a ne najmanj pomembno paLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogxvzdr~evalec paketa za Mandrivo (uradno skladia e prispevkov)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogvzdr~evalec paketa za Mepis (skladia e skupnosti) in prevajalec vmesnika v apana inoBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogKljub vsemu pa lahko s programom luckyBackup podprem ljudi, ki finan no pomo zares potrebujejo.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialogNikolas PonirosNikolas Poniros aboutDialog\prevajalec uporabniakega vmesnika v norvea inoNorwegian gui translator aboutDialogvzdr~evalec paketa za OpenSUSE (skladia e skupnosti KDE4) in pomemben svetovalec pri pripravljanju paketovNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialogbprevajalec uporabniakega vmesnika v portugala inoPortuguese gui translator aboutDialog6vzdr~evalec Puppy pet & sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialog\prevajalec uporabniakega vmesnika v romuna inoRomanian gui translator aboutDialogprevajalec uporabniakega vmesnika v rua ino in pomemben preizkuaevalec*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialoglZa ve podrobnosti si oglejte 'Dovoljenje za uporabo'.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog6upravljalec paketov SlackelSlackel package maintainer aboutDialog\prevajalec uporabniakega vmesnika v slovaa inoSlovak gui translator aboutDialog^prevajalec uporabniakega vmesnika v slovena inoSlovenian gui translator aboutDialogf e ~elite lahko denar podarite v dobrodelne namene._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogZprevajalec uporabniakega vmesnika v apana inoSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogZprevajalec uporabniakega vmesnika v aveda inoSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialogSkupina indifexThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog8To je prava nagrada zame! :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogXprevajalec uporabniakega vmesnika v tura inoTurkish gui translator aboutDialog&Pomemben svetovalecValuable advisor aboutDialogFglasovati in postati obo~evalec na:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogRrazvijalec skriptov backupwhenidle python&backupwhenidle python script developer aboutDialog zapriclose aboutDialogjVe podrobnosti za dobrodelnost je na spletni strani. donation link aboutDialogDbivai vzdr~evalec paketa za Fedoraex Fedora package maintainer aboutDialog`za razvoj in brezpla no ponudbo okolja TransifexVfor developing the wonderful transifex localization platform and providing it for free aboutDialog$za njihovo podporoforums for their support. aboutDialog fri13fri13 aboutDialog0luckyBackup - o programuluckyBackup - about aboutDialogProgram luckyBackup se razairja pod pogoji <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Sploanega Javnega dovoljenja GNU</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogF e pa bi vseeno radi podarili denarmoney aboutDialog(Ne sprejemam denarjano money aboutDialogpinguinofuriosopinguinofurioso aboutDialogFpredelava kode za okolje MS Windowsport to MS Windows aboutDialogBpredelava kode za okolje Mac OS Xport to Mac OS X aboutDialog:predelava kode za okolje OS/2 port to OS/2 aboutDialogpakiranje rpm, pomemben preizkuaevalec in svetovalec glede oddaljenih povezavIzvajanje profila je na rtovanoProfile is scheduled emailDialogtPoalji sporo ilo takoj za preverjanje navedenih argumentov6Send an email right now to test the provided arguments emailDialogbDolo itev pogojev za poailjanje elektronske poate'Specify the conditions to send an email emailDialog"Poalji preizkusnoTest emailDialog.Ukazno polje je prazno.The command field is empty emailDialog Uporabi privzeto Use default emailDialogargumenti: arguments: emailDialog Ukaz:command: emailDialog>luckyBackup - elektronska poataluckyBackup - email emailDialog V reduOkay helpBrowser&luckyBackup - pomo luckyBackup - help helpBrowserpriro nik/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog zapriclose logDialog@nalaganje dnevniake datoteke ...loading logfile... logDialogPluckyBackup - napredek izvajanja opravil&luckyBackup - tasks execution progress logDialog naslednja napaka next error logDialog predhodna napakaprevious error logDialogpo akajtewait logDialog &%1 %2&%1 %2luckyBackupWindow&Prekini&AbortluckyBackupWindow&O programu&AboutluckyBackupWindow &Dodaj&AddluckyBackupWindow&Izbriai&DeleteluckyBackupWindow&Priro nik &HandbookluckyBackupWindow Pomo& &HelpluckyBackupWindow &Uvozi&ImportluckyBackupWindow &Jezik &LanguageluckyBackupWindow4&Skr i v sistemsko vrstico&Minimize to trayluckyBackupWindow&Spremeni&ModifyluckyBackupWindow &Novo&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Kon aj&QuitluckyBackupWindow&Osve~i&RefreshluckyBackupWindow&Odstrani&RemoveluckyBackupWindow&Obnovi&RestoreluckyBackupWindow&Shrani&SaveluckyBackupWindow&Nastavitve &SettingsluckyBackupWindow&Opravilo&TaskluckyBackupWindow&OpraviloThis is a top menu action&TaskluckyBackupWindow&Orodne vrstice &ToolbarsluckyBackupWindow$&Poglej/Uredi opis&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowPREKLICANOABORTEDluckyBackupWindowPrekiniAbortluckyBackupWindowPoteka preklic izvajanja: po akati je treba na uni enje vseh dejavnih opravil4Aborting: Please wait for all processes to be killedluckyBackupWindowOpravilaActionsluckyBackupWindowzVse pomembne datoteke (dnevniki in podobno) so bile izbrisane4All relevant files (logs etc) have also been deletedluckyBackupWindowzPodvojene so tudi vse pomembne datoteke (dnevniki in podobno)7All relevant files (logs etc) have also been duplicatedluckyBackupWindowVse pomembne datoteke (dnevniki in podobno) so prav tako posodobljene4All relevant files (logs etc) have also been updatedluckyBackupWindow.Vsa opravila so kon anaAll tasks completedluckyBackupWindow\Ali ste prepri ani, da ~elite izbrisati profil'Are you sure you want to delete profileluckyBackupWindowpAli ste prepri ani, da ~elite izbrisati privzeti profil?3Are you sure you want to delete the default profileluckyBackupWindowvAli ste prepri ani, da ~elite odstraniti navedeno opravilo?5Are you sure you want to remove the following task ??luckyBackupWindowPZa ni z izvajanjem vseh izbranih opravil)Begin the execution of all included tasksluckyBackupWindowIzbirno poljeCheckBoxluckyBackupWindow~Preverjanja so onemogo ena. Ta opravila <b>ne bodo izvedena</b>5Checks are disabled. This task will be skippedluckyBackupWindowBNi mogo e dolo iti mesta datotekeCould not locate the fileluckyBackupWindowj asa zadnjega izvajanja opravila ni mogo e posodobiti-Could not update last execution time of tasksluckyBackupWindow,Opravilo je spodleteloCrashedluckyBackupWindow2Ustvari &dvojnik opravilaCreate D&uplicate taskluckyBackupWindow0Ustvari opravilo &obnoveCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowTrenutni profilCurrent ProfileluckyBackupWindowPo&dvoji D&uplicateluckyBackupWindowPri&vzetoDe&faultluckyBackupWindowOpis DescriptionluckyBackupWindowCilj DestinationluckyBackupWindowMapa DirectoryluckyBackupWindowKon anoDoneluckyBackupWindowNavideznoDryluckyBackupWindow &Poalji poro iloE&mailluckyBackupWindowI&zvoziE&xportluckyBackupWindow NAPAKAERRORluckyBackupWindow KON AJEXITluckyBackupWindow as izvajanja Elapsed timeluckyBackupWindowNastavitve elektronske poate so <font color=green>uspeano posodobljeneBEmail preferences have been updated successfullyluckyBackupWindowrPoalje poro ilo po elektronski poati po izvajanju opravil$Email report after profile executionluckyBackupWindowSlovena inaEnglishluckyBackupWindowSlovena inaDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowdPrialo je do napak med prenosom dnevniakih datotek'Errors occured during logfiles transferluckyBackupWindowPrialo je do napak med prenosom posnetkov podatkov in dnevniakih datotek5Errors occured during snapshots and logfiles transferluckyBackupWindowdPrialo je do napak med prenosom posnetkov podatkov(Errors occured during snapshots transferluckyBackupWindow`Prialo je do napak med prenosom datoteke profila/Errors occured during the profile file transferluckyBackupWindow"Izvajanje profilaExecution of profileluckyBackupWindow8Izvajanje opravil je kon anoExecution of tasks finishedluckyBackupWindowfIzvajanje opravil je prekinjeno s strani uporabnika4Execution of tasks were terminated violently by userluckyBackupWindow Kon ajExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowJUstvarjanje ciljne mape je spodletelo&Failed to create destination directoryluckyBackupWindowPUstvarjanje novega profila je spodleteloFailed to create new profileluckyBackupWindowBrisanje vseh pomembnih datotek (dnevnikov in podobno) je spodletelo.Failed to delete all relevant files (logs etc)luckyBackupWindow<Brisanje profila je spodleteloFailed to delete profileluckyBackupWindowPodvajanje pomembnih datotek (dnevnikov in podobno) je spodletelo1Failed to duplicate all relevant files (logs etc)luckyBackupWindow@Spodletelo je podvajanje profilaFailed to duplicate profileluckyBackupWindow@Spodletelo je podvajanje profilaFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow0Napaka izva~anja profilaFailed to export profileluckyBackupWindow2Uvoz profila je spodletelFailed to import profileluckyBackupWindowFPreimenovanje profila je spodleteloFailed to rename profileluckyBackupWindow>Zamenjava profila je spodletelaFailed to replace profileluckyBackupWindow0Za enjanje je spodleteloFailed to startluckyBackupWindowPosodabljanje vseh pomembnih datotek (dnevnikov in podobno) je spodletelo.Failed to update all relevant files (logs etc)luckyBackupWindow,Skrij okno podrobnostiHide information windowluckyBackupWindow.Skrije okna podrobnosti+hide/show information window button tooltipHide information windowluckyBackupWindowUvoz profilaImport ProfileluckyBackupWindow Okno podrobnostiInformation windowluckyBackupWindow Okno podrobnostiinformation window titleInformation windowluckyBackupWindowrDatum in  as zadnjega izvajanja opravila sta posodobljena$Last execution time of tasks updatedluckyBackupWindowDSeznam vseh razpolo~ljivih opravilList of all the available tasksluckyBackupWindowZakleniLockluckyBackupWindow:Upravljanje &varnostne kopijeManage &BackupluckyBackupWindow(Upravljanje opravila Manage TaskluckyBackupWindowZPremakni ozna eno opravilo za eno mesto ni~je/Move the highlighted task down, by one positionluckyBackupWindowZPremakni ozna eno opravilo za eno mesto viaje-Move the highlighted task up, by one positionluckyBackupWindowNENOluckyBackupWindowNI VKLJU ENO NOT INCLUDEDluckyBackupWindow OPOMBANOTEluckyBackupWindow"Ni najdenih napakNo errors foundluckyBackupWindow6Trenutno izvajanje opravilaNow performing taskluckyBackupWindow|Poka~i le napake in pomembna obvestila med posodabljanjem okna could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindowhPosodabljanje vrstice napredka ne bo povsem natan no(Progressbar update will not be realisticluckyBackupWindowPr&eimenujR&enameluckyBackupWindowNapaka branja Read errorluckyBackupWindow\Odstranjeni so vsi podatki starejaih posnetkov Removed all older snapshots dataluckyBackupWindowOdstranjevanjeRemovingluckyBackupWindowPoteka odstranjevanje starih posnetkov in dnevniakih datotek opravila+Removing old snapshots and logfiles of taskluckyBackupWindow Za~eniRunluckyBackupWindowR&azporedi S&cheduleluckyBackupWindow&Izbor mape za izvozSelect export directoryluckyBackupWindow.Nastavitev kot privzetoSet as DefaultluckyBackupWindowNastavi poti Set pathsluckyBackupWindowLNastavitev poti do ukazov rsync in ssh$Set paths for rsync and ssh commandsluckyBackupWindow.Poka~i okno podrobnostiShow information windowluckyBackupWindow0Prika~i okno podrobnosti+hide/show information window button tooltipShow information windowluckyBackupWindow6Poka~i besedilo pod ikonamiShow text under iconsluckyBackupWindowVirSourceluckyBackupWindow@TAKOJ zaustavi izvajanje opravil'Stop the execution of running tasks NOWluckyBackupWindowBCiljna mapa je uspeano ustvarjena)Successfuly created destination directoryluckyBackupWindowOpraviloTaskluckyBackupWindowSeznam opravil Task listluckyBackupWindow,Seznam opravil profilaTask list of profileluckyBackupWindowOpis profilaThe description of profileluckyBackupWindownV izbrani mapi ni datoteke z ustreznimi podatki profilaCThe directory you have selected does not contain valid profile dataluckyBackupWindowdIme, ki ste ga vnesli, vsebuje le neveljavne znake:The name you have entered contains only invalid charactersluckyBackupWindow@Sistem bo zaustavljen v 1 minuti$The system will shutdown in 1 minuteluckyBackupWindow0Seznam opravil je prazenThe task list is emptyluckyBackupWindowIzbrana mo~nost omogo i izvajanje opravil v <b>navideznem na inu</b>. Med preizkusnim izvajanjem se usklajevanje ne izvede (pripravljen pa je odvod, ki je ve inoma enak odvodu pravega zagona).{This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow asovno poteklo Timed outluckyBackupWindow2Ni mogo e odpreti profilaUnable to open profileluckyBackupWindowNeznana napaka Unknown errorluckyBackupWindowNeznana napakathis refers to a process Unknown errorluckyBackupWindowTUporabite gumb "dodaj" za za etek priprave0Use the "add" button on the right to get startedluckyBackupWindowUporabite 'potrditvena polja za vklju evanje' za preklop omogo anja izbranega opravila>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowJPogled oziroma urejanje opisa profila!View/Edit the profile descriptionluckyBackupWindowOPOZORILOWARNINGluckyBackupWindowDobrodoali v Welcome toluckyBackupWindow6Ali ~elite odstraniti tudi:Would you like to also remove:luckyBackupWindow<Ali ~elite vseeno nadaljevati?!Would you like to proceed anyway?luckyBackupWindow0Ali ga ~elite zamenjati?Would you like to replace it ?luckyBackupWindow\Ali ~elite profil shraniti pred nadaljevanjem?-Would you like to save it before proceeding ?luckyBackupWindowNapaka pisanja Write errorluckyBackupWindowDAYESluckyBackupWindowLZahtevali ste zagon opravila za OBNOVO/You have asked for a RESTORE task to be createdluckyBackupWindowTVklju ene so le naloge, ki bodo presko ene9You have only included tasks that are going to be skippedluckyBackupWindowvDose~eno je najve je dovoljeno atevilo opravil za izvajanje5You have reached the maximum limit of supported tasksluckyBackupWindow|Pred dodajanjem novega opravila je treba odstraniti eno staro!7You have to remove a task if you wish to add another !!luckyBackupWindowRustvarjen bo nov, prazen, z enakim imenom4a new blank one, with the same name, will be createdluckyBackupWindow DodajaddluckyBackupWindow0Dodaj opravila na seznamadd taskluckyBackupWindow~e obstajaalready existsluckyBackupWindow2in spustni meni 'profila'and 'profile' drop-down listluckyBackupWindow6in dodan na seznam profilovand added at the profile listluckyBackupWindowRin pred nadaljevanjem spremenite opravila.and change anything you wish before proceedingluckyBackupWindowkotasluckyBackupWindowkotFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow(poteka izra unavanje calculatingluckyBackupWindow(Poteka izra unavanje-info message displayed during ...calculations calculatingluckyBackupWindow8Okno izpisa izvajanja ukazovcommands outputluckyBackupWindow(ni mogo e ustvariti.could not be createdluckyBackupWindow&ni mogo e shraniti.could not be savedluckyBackupWindow&ni mogo e shraniti.PQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow*je uspeano ustvarjen.created successfullyluckyBackupWindowRPoteka ustvarjanje privzetega profila ...creating default profile ...luckyBackupWindow<Poteka ustvarjanje profila ...creating profile ...luckyBackupWindowTrenutna seja ukaza crontab <font color=green>je uspeano posodobljena6current crontab updated successfullyluckyBackupWindowtrenutni profilcurrent profileluckyBackupWindow8Privzetega profila z imenom default profileluckyBackupWindow$Privzetega profila^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow0Privzeti profil z imenomVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow&je uspeano izbrisandeleted successfullyluckyBackupWindow brisanje datotekdeleting filesluckyBackupWindow.Poteka brisanje datotek/info message displayed during ...file deletionsdeleting filesluckyBackupWindowprika~i - obnovi - izbriai obstoje e varnostne kopije izbranih opravil?display - restore - delete existing backups of highlighted taskluckyBackupWindowNPrika~e podrobnosti o izbranem opravilu.display information regarding highlighted taskluckyBackupWindow6je bil uspeano podvojen kotduplicated successfully asluckyBackupWindow"zaznane so napake errors foundluckyBackupWindow$izvajanje profila:execution of profile:luckyBackupWindow$izvajanje profila:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow(je uspeano izvo~en vexported successfully toluckyBackupWindow8Odstranjevanje je spodletelofailed to removeluckyBackupWindowrodstranjevanje podatkov starejaih posnetkov je spodletelo)failed to remove all older snapshots dataluckyBackupWindowkon anofinishedluckyBackupWindowje kon ano:full phrase: 'Execution of profile finished'finishedluckyBackupWindow"je uspeano uvo~enimported successfullyluckyBackupWindowv izvajanju ...in progress...luckyBackupWindowVklju iincludeluckyBackupWindowje spremenjen. is modifiedluckyBackupWindowni veljaven zais not valid forluckyBackupWindow2sko i na naslednjo napakojump to next errorluckyBackupWindow2sko i na predhodno napakojump to previous errorluckyBackupWindow$je uspeano nalo~enloaded successfullyluckyBackupWindowNPoteka nalaganje privzetega profila ...loading default profile ...luckyBackupWindow.nalaganje je spodleteloloading failedluckyBackupWindow*nalaganje profila ...loading profile ...luckyBackupWindowPDnevniake datoteke so ustvarjene v mapi:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow2Skr i v sistemsko vrsticominimize to trayluckyBackupWindow<Skr i okno v sistemsko vrstico%minimizes the window to the tray arealuckyBackupWindowSpremenimodifyluckyBackupWindowLSpremeni nastavitve izbranega opravilamodify highlighted taskluckyBackupWindow6ni mogo e napraviti ni esar nothing to doluckyBackupWindow6izvajanje ukaza po opravilupost-task execution of commandluckyBackupWindow<izvajanje ukaza pred opravilompre-task execution of commandluckyBackupWindow ProfilprofileluckyBackupWindowProfilaVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowProfilaSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow ProfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowProfil z imenomSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow ProfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow Profilprofile luckyBackupWindowTihi na in quiet modeluckyBackupWindowsta osve~ena refreshedluckyBackupWindowOdstraniremoveluckyBackupWindow2Odstrani izbrana opravilaremove highlighted taskluckyBackupWindow0je uspeano preimenovan vrenamed successfully toluckyBackupWindow0je uspeano preimenovan vWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowOdvod ukazov rsync in ukazov izvedenih pred ali po opravilih je izpisan tukaj9rsync and pre/post task commands output is displayed hereluckyBackupWindow(je uspeano shranjen.saved successfullyluckyBackupWindowFshranjevanje privzetega profila ...saving default profile ...luckyBackupWindow0shranjevanje profila ...saving profile ...luckyBackupWindowna rtovan scheduledluckyBackupWindow4je nastavljen kot privzetiset as defaultluckyBackupWindow je nastavljen naset toluckyBackupWindowIzklopishutdownluckyBackupWindownavidezni na insimulation modeluckyBackupWindow stanjestatusluckyBackupWindow Skrbniaki dostop super userluckyBackupWindowSkrbniaki na insuper user modeluckyBackupWindowvtoluckyBackupWindow2Poteka prenaaanje datotektransferring filesluckyBackupWindow6Poteka usklajevanje datotek/info message displayed during ...file transferstransferring filesluckyBackupWindowhIzvajanje poskusa poailjanja elektronskega sporo ilatrying to send an emailluckyBackupWindowrazli ice:version:luckyBackupWindow"Izra unaj razlikeCalculate differences manageDialogbIzra unaj razliko med virom in izbranim posnetkomFCalculate the differences between the source and the selected snapshot manageDialogHUporabnik je preklical izra unavanjeCalculations terminated by user manageDialog ZapriClose manageDialogZapri to oknoClose this window manageDialogIzbriaiDelete manageDialogtIzbriai izbrani posnetek in pripadajo o dnevniako datoteko,Delete the selected snapshot and its logfile manageDialog\Ni ustreznih dovoljenj za branje dolo ene mape;I do not have sufficient permissions to read this directory manageDialog6Izberite posnetek s seznama&Please select a snapshot from the list manageDialogBPo akajte, dokler se nit ne kon a*Please wait until the thread is terminated manageDialog ObnoviRestore manageDialog.Obnovi izbrani posnetekRestore the selected snapshot manageDialog USTAVISTOP manageDialog6TAKOJ ustvari izra unavanjeStop calculations NOW manageDialog$Ta mapa ne obstajaThis directory does not exist manageDialog$Ta mapa ne obstajaInformation messageThis directory does not exist manageDialog\Oglej si dnevniako datoteko izbranega posnetka)View the logfile of the selected snapshot manageDialognOgled datoteke dnevnika usklajevanja izbranega opravila*View the logfile of the selected sync task manageDialog cilj: destination: manageDialogskrij vir hide source manageDialogTluckyBackup - upravljanje varnostne kopijeluckyBackup - manage backup manageDialogni na voljo not available manageDialog profilprofile manageDialogvir:source: manageDialoguskladi mapo A sync dir A manageDialoguskladi mapo B sync dir B manageDialogopravilotask manageDialogOgled dnevnikaview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardPREKINIABORT manageWizardPrekinjenoAborted manageWizard.Pot do varnostne kopije Backup path manageWizard4Izberi novo mapo za obnovo%Browse locally for a new restore path manageWizardIzbrana mo~nost klonira posnetek varnostne kopije v mapo za obnovo.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum in  as Date & time manageWizard0Izbriai varnostno kopijo Delete backup manageWizardzIzbriai obstoje e podatke, ki ne obstajajo v varnostni kopiji4Delete existing data that do not exist at the backup manageWizard"Brisanje podatkov Deleting data manageWizardzBrisanje datoteke s shranjenimi podatki o spremembah posnetka)Deleting file that lists snapshot changes manageWizardHBrisanje dnevniake datoteke posnetkaDeleting snapshot logfile manageWizardObstoje e datoteke varnostne kopije bodo zamenjale ustrezne datoteke v mapi obnoveSExisting backup files will replace the corresponding files at the restore directory manageWizardKon anoFinished manageWizard e so podatki zgoraj pravilni, kliknite na gumb za <b>za etek</b>@If the information above is correct, click start to begin manageWizardV primeru da so podatki zgoraj pravilni, kliknite <b>za ni</b> za za etek usklajevanja.`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard2Sko i na naslednjo napakoJump to next error manageWizard2Sko i na predhodno napakoJump to previous error manageWizardvNi podatkov za dolo en posnetek. Opravilo bo presko eno ...,No snapshot specific data exist. Skipping... manageWizardPotPath manageWizard4Obnovi iz varnostne kopijeRestore backup manageWizard2Pot do posnetka za obnovo Restore path manageWizardDObnavljanje podatkov: glavno debloRestoring data: main trunk manageWizardPObnavljanje podatkov: datoteke posnetkovRestoring data: snapshot files manageWizard2Izbor nove mape za obnovoSelect new restore directory manageWizardMapa za obnovo bo po usklajevanju enaka posnetku varnostne kopijeBThe restore directory will become identical to the backup snapshot manageWizardIzbrana mo~nost omogo i izvajanje opravil v <b>navideznem na inu</b>. Med preizkusnim izvajanjem se usklajevanje ne izvede (pripravljen pa je odvod, ki je ve inoma enak odvodu pravega zagona).{This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard>Posodabljanje seznama posnetkovUpdating list of snapshots manageWizardOPOZORILOWARNING manageWizardPIzbrisali boste podatke varnostne kopije#You are about to delete backup data manageWizardprekli icancel manageWizardSpremenichange manageWizard zapriclose manageWizard"najdene so napake errors found manageWizardspodletelofailed manageWizardspodletelo-info message displayed after ...file deletionfailed manageWizardTluckyBackup - upravljanje varnostnih kopijluckyBackup - manage backup manageWizard naslednja napaka next error manageWizardbrez napak no errors manageWizardni na voljo not available manageWizard predhodna napakaprevious error manageWizardnavidezno simulation manageWizard za nistart manageWizarduspeano kon anosuccess manageWizarduspeano kon ano-info message displayed after ...file deletionsuccess manageWizarduspeano kon ano5info message displayed after ...snapshots list updatesuccess manageWizardMo~nost 'oddaljeni gostitelj' je izbrana, ni pa dolo enega gostitelja='Remote Host' is checked, but no remote host name is declared modifyDialog ... ... modifyDialog<b>Ne pozabite</b> dolo iti mape v polju skupine 'izlo i', ki bo vsebovala ciljfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog@Gostitelj:@Host: modifyDialogDodajanje katerekoli mape, datoteke ali vzorca, ki ne bo upoatevana pri izvajanju opravila@Add any directory, file or pattern to be excluded from this task modifyDialogDodajte katerokoli mapo, datoteko ali vzorec, ki naj bo vklju en v to opravilo>Add any directory, file or pattern to be included by this task modifyDialogNDodaj ukaz kot je vpisan v vnosno polje*Add command as entered in the field beside modifyDialog<Dodaj vpisan ukaz za izlo itev*Add exclusion as entered in the next field modifyDialogRDodaj vklju itev, kot je navedena v polju*Add inclusion as entered in the next field modifyDialogDodajanje ali odstranitev mo~nosti rsync.  e niste prepri ani, kaj to pomeni, pustite mo~nosti nespremenjene!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogfDodaj mo~nost rsync, kot je vpisana v ukaznem polju-Add rsync option as entered in the next field modifyDialogNaprednoAdvanced modifyDialog*Po izvajanju opravilaAfter modifyDialogzVsa napovedana polja okna lastnosti opravila so videti v redu?All declared fields of the task properties window seem to be ok modifyDialogIzvedi tudi ... Also Execute modifyDialogTPoskusi izvajanje s skrbniakimi dovoljenjiAttempt super-user activities modifyDialog^Ustvari varnostno kopijo znotraj ciljnega mesta Backup Source inside Destination modifyDialog2Datoteke varnostnih kopij Backup files modifyDialogPUstvari varnostno kopijo odprtih datotekBackup open files modifyDialog0Pred izvajanjem opravilaBefore modifyDialog&Mape predpomnilnika Cache folders modifyDialogPrekli iCancel modifyDialog8Mo~nost izberite, kadar je ciljno mesto na razdelku FAT ali NTFS. V tem primeru podatki o lastniatvu in dovoljenja NE BODO ohranjena. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialognOmogo i povezavo z oddaljenim mestom preko modula rsync/Check this to connect to an rsync Remote module modifyDialogMo~nosti ukazaCommand Options modifyDialogSeznam ukazov Command list modifyDialogKopiranje naprav (le skrbnik) in posebnih datotek, takanih kot so (-D)?Copy device (super user only) & special files as they are (-D) modifyDialoghKopiraj simbolnih povezav kot simbolne povezave (-l)Copy symlinks as symlinks (-l) modifyDialogDolo ite vrsto opravila: 1. Varnostna kopija vsebine vira - znotraj cilja 2. Varnostna kopija mape vira po imenu - znotraj cilja 3. Usklajevanje vira in cilja z ohranjanjem najnovejaih datotek obeh mestDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogBIzbriai datoteke na ciljnem mestuDelete files on the destination modifyDialogOpis Description modifyDialogCilj Destination modifyDialogCiljno mesto: Destination : modifyDialog:Cilj je v zapisu FAT ali NTFSDestination is FAT/NTFS modifyDialog.Ne ustvari dodatnih mapDo NOT create extra directory modifyDialogNe ustvari varnostnih kopij datotek, ki so v ciljni mapi novejae (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNe izlo i tega seznama vzorcev. Za boljae razumevanje pravil vklju evanja si oglejte priro nik.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogBUredi izbran vnos za vklju evanjeEdit highlighted inclusion modifyDialogVnesite ime za opravilo (na primer: "Varnostna kopija osebne mape"):Enter a name for this task (eg "Backup my home directory") modifyDialogVpiaite ukaz, ki naj bo izveden po izvajanju opravila, in pritisnite gumb za "dodajanje" na seznamnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogVpiaite ukaz, ki naj bo izveden pred izvajanjem opravila, in pritisnite gumb za "dodajanje" na seznamoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogDodatne mo~nosti ukaza rsync (na primer "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog,Na to mesto vnesite datoteko, mapo ali vzorec in pritisnite gumb "dodaj" za dodajanje na izlo itveni seznam. * - se sklada s katerokoli neprazno enoto (kon a se s poaevnico) ** - se sklada z vsem, vklju no s poaevnicami ? - se sklada s katerimkoli znakom, razen poaevnice slede i vzorec imena_mape /*** - sklada se z mapo in celotno njeno vsebino za etni vzorec / -vzorec je zasidran na dolo eno mesto v hierarhiji prenosa (obi ajno je to "vir") slede i vzorec / - sklada se le mapa, ne navadne datoteke, simbolne povezave ali napraveEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogNNa to mesto vnesite datoteko, mapo ali vzorec in pritisnite gumb "dodaj" za dodajanje na seznam za vklju itev * - nadomea a katerikoli prazen znak (kon a se s poaevnico) ** - nadomea a katerikoli prazen znak, vklju no s poaevnicami ? - nadomea a katerikoli prazen znak, razen poaevnice za etno ime_mape /*** - se sklada z mapo in celotno njeno vsebino za etni znak / - je vzorec, zasidran na dolo eno mesto v hierarhiji prenosa (obi ajno je to "izvir") za etni znak / - se sklada le z mapo, ne pa tudi z datotekami, simbolnimi povezavami ali napravamiEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogPolna pot do mape cilja (na primer /media/varnostne_kopije/januar09/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogtVnesite polno pot datoteke, ki vsebuje zasebni overitveni klju za ssh (pustite prazno,  e ni smiselno). Vsa opravila preko povezave ssh je treba izvesti z uporabo para klju ev OpenSSH.Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogVnesite polno pot datoteke, ki vsebuje overitveno geslo za rsync (in ne ssh) (pustite prazno,  e ni smiselno).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialog`Polna pot do mape vira (na primer /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogFVnesite ime oddaljenega gostitelja."Enter the name of the remote host. modifyDialogpVrata za povezavo ssh (pustite prazno za privzeta vrata)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogVnesite uporabniako ime za oddaljenega gostitelja (pustite prazno,  e ni smiselno)HEnter your username for the remote host (leave blank if not applicable). modifyDialogJMed izvajanjem so bile zaznane napakeErrors have been found modifyDialog Izlo iExclude modifyDialogjIzlo i mapo "izgubljeno in najdeno" (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogdIzlo i vse datoteke in mape varnostnih kopij (**~)(Exclude all backup files & folders (**~) modifyDialoglIzlo i mapo predpomnilnika (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogFIzlo i vse za asne mape (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogZIzlo i vse uporabniake mape .gvfs (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialognIzlo i mapo uporabniakih map (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog$Izlo itveni seznam Exclude list modifyDialogIzlo i sistemske mape /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogIzlo i sistemske priklopne mape /mnt in /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogtIzvajanje dodatnih ukazov, pred ali po izvajanju opravila.1Execute extra commands, before or after the task. modifyDialogIzvede ukaz kljub zaznanem OPOZORILU. Mo~nost se obi ajno uporablja, ko se z ukazi, ki so "izvedeni pred" opravilom, odpravijo napake (na primer: priklopi se razdelek). OPOZORILO: neustrazna raba mo~nosti, lahko vodi v ne~elene posledice!Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog<Seznam dodatnih mo~nosti rsyncExtra rsync options list modifyDialogRDatoteke, ki so na izvornem mestu povezane s trdimi povezavami, bodo enako povezane tudi na cilju OPOZORILO: Vse te datoteke morajo biti vklju ene v prenosnem nizu! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog8Prezri datoteke na na in CVSIgnore files the CVS way modifyDialogpPrezri datoteke z uporabo algoritma, podobnega CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogVklju iInclude modifyDialog"Seznam vklju itev Include list modifyDialogBNa in vklju evanja datotek in map Include mode modifyDialog Na in:Mode: modifyDialog8Premakni izbran vnos navzdolMove highlighted inclusion down modifyDialog8Premakni izbran vnos navzgorMove highlighted inclusion up modifyDialogIme:Name : modifyDialog*Obi ajno vklju evanjeNormal Include modifyDialog V reduOkay modifyDialog&Vklju i le navedeno Only Include modifyDialogV nasprotnem primeru odzna ite 'Oddaljeni gostitelj' za krajevno delovanje2Otherwise uncheck 'Remote Host' to operate locally modifyDialogdIzberite ustrezna izbirna polja pred nadaljevanjem/Please check the relevant box before proceeding modifyDialogxPred zaganjanjem urejevalnika vzorcev je treba dolo iti vir.Spremenite vsaj eno od mo~nosti"Please modify at least one of them modifyDialog\Pred nadaljevanjem je treba dolo iti drugo ime1Please specify a different name before proceeding modifyDialogFDolo ite ime oddaljenega gostitelja!Please specify a remote host name modifyDialogJPred nadaljevanjem je treba dolo iti:/Please specify the following before proceeding: modifyDialogDOhrani napravo in posebne datotekePreserve device, special files modifyDialog(Ohrani trde povezavePreserve hard links modifyDialog0Ohrani lastniatvo in  asPreserve ownership, times modifyDialog"Ohrani dovoljenjaPreserve permissions modifyDialog<Ohrani dovoljenja datotek (-p)"Preserve permissions of files (-p) modifyDialog0Ohrani simbolne povezavePreserve symlinks modifyDialogOhrani podatke o lastniatvu (zahteva skrbniaka dovoljenja), skupini in  asovnem ~igu datotek (-tgo)HPreserve the owner (super user only), group & time stamp of files (-tgo) modifyDialogJNalo~i vzorce izlo evanja iz datotekeRead exclude patterns from file modifyDialog&Nalo~i iz datoteke: Read file: modifyDialogLNalo~i vzorce vklju evanja iz datotekeRead include patterns from file modifyDialogFRekurzivno upoatevaj podrejene mapeRecurse into directories modifyDialog.Izvedi rekurzivno (-r)Recurse into directories (-r) modifyDialogOddaljenoRemote modifyDialog6Modul za oddaljeno povezavo Remote module modifyDialog<Odstrani izbran ukaz s seznama$Remove highlighted command from list modifyDialogdOdstrani izbrana dolo ila za izklju itev s seznama&Remove highlighted exclusion from list modifyDialog@Odstrani izbrane vnose s seznama&Remove highlighted inclusion from list modifyDialogFOdstrani izbrane mo~nosti s seznama#Remove highlighted option from list modifyDialogZPoskusi izvesti ukaze, ki spodletijo, x krat.&Repeat any command that fails, x times modifyDialog Poskusi izvesti:Repeat on fail: modifyDialog"Obnovi dovoljenjaRestore permissions modifyDialog,Izbor ukaza za izvedboSelect command to be executed modifyDialog Izbor mape ciljaSelect destination directory modifyDialogHIzbor datoteke z vzorci za izlo anje$Select file to read exclude patterns modifyDialogNIzbor datoteke z vzorci za vklju evanje$Select file to read include patterns modifyDialog4Izbor datoteke gesla rsyncSelect rsync password file modifyDialogIzbor mape viraSelect source directory modifyDialog2Izbor datoteke klju a sshSelect ssh keyfile modifyDialog|Nastavite skupno atevilo shranjenih posnetkov varnostnih kopij0Set the total number of backup snapshots to keep modifyDialogBPoka~e ukaz rsync, kot je izveden.Shows the rsync command as it will be executed modifyDialog@Presko i novejae ciljne datotekeSkip newer destination files modifyDialog:`tevilo ohranjenih posnetkov:Snapshots to keep: modifyDialogVirSource modifyDialog(Vir za usklajevanje:Source : modifyDialog(Uskladi vir in cilja"Synchronize Source and Destination modifyDialogSistemske mapeSystem folders modifyDialog0Mape sistemskega prikopaSystem mount folders modifyDialogOpis opravilaTask description modifyDialogIme opravila Task name modifyDialog$Lastnosti opravilaTask properties modifyDialogPredloge Templates modifyDialogZa asne mapeTemporary folders modifyDialog^Vpis ni dovoljen, saj '/' nima dejanskega imenaUSTAVITEV</b> izvajanja opravila ob napaki0use boxes to STOP task execution on error modifyDialog Potrdivalidate modifyDialogVbrez izbire zahtevanega 'Rekurzivno v mape'Cwithout having checked 'Recurse into directories' which is required modifyDialogPrekli iCancel patternEditorZMo~nost izberite za uporabo mape, navedene zgoraj, kot absolutne poti  e mo~nost ni izbrana, bo vzorec skladen s katerokoli datoteko ali mapo, ki ustreza kriteriju "imena".Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditordDolo evanje kriterijev poimenovanja datotek in mapEDefine here the name criteria for the files/directories to be matched patternEditorjTukaj je mogo e dolo iti, na kaj naj se nanaaa vzorec8Define here, what would you like the pattern to refer to patternEditorVsebina mapeDirectory contents patternEditorZnaki, ki so del imena datoteke ali mape, na katere se nanaaa vzorecsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorVnesite kon ne znake imena datotek ali map, na katere se nanaaa vzorec; na primer: za vse datoteke ".txt" vnesite .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditordVnesite imena datotek ali map, ki ga dolo a vzorecGEnter here the name of the files/directories that the pattern refers to patternEditorVnesite za etne znake imena datotek ali map, na katere se nanaaa vzorecbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor0Pojdi globlje v poti za:Go deeper in path by : patternEditor2Upoateva ni~jo raven potiGo deeper in path by any level patternEditor V reduOkay patternEditor4Izberite mapo znotraj vira+Please choose a directory within the source patternEditor<Izberite datoteko znotraj vira&Please choose a file within the source patternEditortPonastavi polja urejevalnika vzorcev na privzete vrednosti5Reset the pattern editor fields to the default values patternEditorIzbor mapeSelect directory patternEditorIzbor datoteke Select file patternEditorNiz mapSet of directories patternEditorNiz datotek Set of files patternEditorDolo ena mapaSpecific directory patternEditor"Dolo ena datoteka Specific file patternEditorZDejansko uporabljeni vzorec je prikazan tukaj$The actual pattern is displayed here patternEditor(Vzorec se nanaaa na:The pattern refers to a: patternEditorMo~nost uporabite,  e se vzorec nanaaa na niz map, ki imajo nekaj skupnega; na primer; vse mape imenovane "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorMo~nost uporabite,  e se vzorec nanaaa na niz datotek, ki imajo nekaj skupnega; na primer: vse datoteke s pripono ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorMo~nost uporabite,  e se vzorec nanaaa na dolo eno mapo; na primer: "/media/glasba/album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorMo~nost uporabite,  e se vzorec nanaaa na dolo eno datoteko; na primer: "/media/glasba/album/skladba.ogg"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorUporabite to,  e se vzorec sklicuje na vsebino mape (ali niza map) in ne na mapo samo na primer vsebina mape "/media/glasba/album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorTo uporabite za nanaaanje globljih pod-map na primer Mapa "/media/glasba" vklju uje 3 pod-mape: 1.Rock 2.Jazz 3Pop in ~elite XXX vse vsebine teh 3, dolo ite slede e: * Niz map * Samo vsebino * path:/media/glasba/ * pojdi globlje v poti za "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorkaterikoliany patternEditor<prebrskaj krajevno za pot mape"browse localy for a directory path patternEditor:krajevno brskanje za datotekobrowse localy for a file patternEditorvsebuje: contains : patternEditor Mapa: directory : patternEditor"se kon a z nizom: ends with : patternEditordatoteka:file : patternEditorkon ni vzorec final pattern patternEditorje natanko: is exactly : patternEditorimename patternEditor&urejevalnik vzorcevpattern editor patternEditorPonastavireset patternEditor"se za ne z nizom: starts with : patternEditor*Uporabi absolutno potuse absolute path patternEditordatoteka filescheduleDialog& na& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog Zamik::delayscheduleDialog<<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Razpored izvajanja profila</span></p></body></html>

Profile execution scheduling

scheduleDialog(Ob naslednjem zagonu@ rebootscheduleDialog4Dodaj nov razpored profilaAdd a new profile schedulescheduleDialog,Dodaj razpored profilaAdd profile schedulescheduleDialogkaterikoliAnyscheduleDialog aprilAprilscheduleDialog aprilafull phrase: 'of April'AprilscheduleDialog~Ali ste prepri ani, da ~elite zapreti pogovorno okno razporeda?4Are you sure you want to close the schedule dialog ?scheduleDialog avgustAugustscheduleDialogavgustafull phrase: 'of August'AugustscheduleDialogPrekli iCancelscheduleDialogMo~nost izberite,  e ra unalnik ne podpira grafi nega okolja (na primer stre~nik)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialog"Terminalski na in Console ModescheduleDialogdecemberDecemberscheduleDialogdecembrafull phrase: 'of December'DecemberscheduleDialog`Zamakne izvajanje programa luckyBackup ob zagonu&Delay luckybackup execution at startupscheduleDialogNPrika~i trenutni izpis programa crontabDisplay the current crontabscheduleDialogIzvedi profilExecute profilescheduleDialogfebruarFebruaryscheduleDialogfebruarjafull phrase: 'of February'FebruaryscheduleDialog petekFridayscheduleDialog"Neveljaven profilInvalid profilescheduleDialog januarJanuaryscheduleDialogjanuarjafull phrase: 'of January'JanuaryscheduleDialog julijJulyscheduleDialog julijafull phrase: 'of July'JulyscheduleDialog junijJunescheduleDialog junijafull phrase: 'of June'JunescheduleDialog marecMarchscheduleDialog marcafull phrase: 'of March'MarchscheduleDialogmajMayscheduleDialogmajafull phrase: 'of May'MayscheduleDialog2Spremeni razpored profilaModify profile schedulescheduleDialog@Spremeni izbran razpored profila Modify selected profile schedulescheduleDialogponedeljekMondayscheduleDialogDNi dolo enih razporedov izvajanja!No schedules are declared !!scheduleDialognovemberNovemberscheduleDialognovembrafull phrase: 'of November'NovemberscheduleDialogoktoberOctoberscheduleDialogoktobrafull phrase: 'of October'OctoberscheduleDialogProfil: Profile :scheduleDialog:Podrobnosti razporeda profilaProfile schedule detailsscheduleDialog@Odstrani izbran razpored profila Remove selected profile schedulescheduleDialog\Za~eni le enkrat, ob naslednjem zagonu sistemaRun once, at startupscheduleDialog sobotaSaturdayscheduleDialogseptember SeptemberscheduleDialogseptembrafull phrase: 'of September' SeptemberscheduleDialogPresko i opravila, ki se po preverjanju map izka~ejo kot 'KRITI NA' opravilaSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog Za ni od za etkaStarting from scratchscheduleDialognedeljaSundayscheduleDialogRObstoje a datoteka razporeda ni veljavna.8The existent schedule file is not a valid luckyBackup v.scheduleDialog etrtekThursdayscheduleDialog torekTuesdayscheduleDialogBNi mogo e ustvariti datoteke cronUnable to create cron filescheduleDialogLNi mogo e ustvariti datoteke razporedaUnable to create schedule filescheduleDialog sreda WednesdayscheduleDialognNaredili ste spremembe ne da bi kliknili na gumb CronIT8You have made changes without clicking the cronIT buttonscheduleDialogvDose~ena je najve je dovoljeno atevilo profilov v razporeduBYou have reached the maximum limit of supported scheduled profilesscheduleDialogV primeru da ~elite dodatni nov predmet, morate enega odstraniti5You have to remove an item if you wish to add anotherscheduleDialog<Crontab je uspeano posodobljen$Your crontab is updated successfullyscheduleDialog DodajaddscheduleDialogobatscheduleDialog ZapriclosescheduleDialog(Zapri pogovorno oknoclose this dialogscheduleDialog$Izvedi s cronIT !! cronIT !!scheduleDialogPodatki crontabcrontab contentscheduleDialogdandayscheduleDialogDan v mesecu:day of month :scheduleDialogDan v tednu: day of week :scheduleDialogvsakeveryscheduleDialog@Vsako uro na dolo eno minuto urehourly at minute scheduleDialog,luckyBackup - razporedluckyBackup - schedulescheduleDialogminminscheduleDialogSpremenimodifyscheduleDialog Mesec:month :scheduleDialog ndscheduleDialog as in 22nd dayndscheduleDialog:Vnosi za crontab ne obstajajono crontab entries existscheduleDialogodofscheduleDialog&kateregakoli meseca of any monthscheduleDialog V reduokayscheduleDialog2enkrat; ob zagonu sistemaonce, at system startupscheduleDialog rdscheduleDialog as in 23rd dayrdscheduleDialogodstraniremovescheduleDialogRazporedi izvajanje profilov, kot je dolo eno na zgornjem seznamu@schedule the execution of profiles as declared in the list abovescheduleDialogdVpisana vrednost -1 omogo i usklajevanje vsako uro9set this value to -1 for the schedule to occur every hourscheduleDialog"presko i kriti na skip criticalscheduleDialog stscheduleDialog as in 21st daystscheduleDialog as in 31st daystscheduleDialog thscheduleDialog as in 10th daythscheduleDialog as in 11th daythscheduleDialog as in 12th....19th daythscheduleDialog as in 20th daythscheduleDialog as in 24th...30th daythscheduleDialog  as in 8th daythscheduleDialog  as in 9th daythscheduleDialog as (ura:min):time (hour:min) :scheduleDialog:Dnevnik trenutne seje crontabview current crontabscheduleDialogBProfil z enakim imenom ~e obstaja+A profile with the same name already exists textDialogTAli ste prepri ani, da ~elite nadaljevati?#Are you sure you wish to proceed ?? textDialogPREPRI AJTE SE, da vaa namen NI kopiranje datotek vira na ciljno mesto!BBEWARE, if your intention is NOT to clone source to destination !! textDialogPrekli iCancel textDialog0Kopiraj ukaz v odlo~ia eCopy command to clipboard textDialogLNe poka~i ve tega okna za to opravilo$Do not show this again for this task textDialog.Vnesite aifrirno frazo:Enter passphrase : textDialogVnesite geslo:Enter pasword : textDialog6Vnesite ime novega profila:#Enter the name of the new profile : textDialog2Vnesite novo ime profila:#Enter the new name of the profile : textDialogNeNo textDialog V reduOkay textDialog"Vnesite drugo imePlease enter a different name textDialogOpis profila:Profile description : textDialogDaYes textDialogIzbrali ste "Varnostno kopijo vsebine izvirne mape"<br>skupaj z mo~nostjo "izbriai datoteke na cilju"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog:Podrobnosti elektronske poateeMail information textDialogluckyBackup luckyBackup textDialogPrekli iCancel winDialog4Polna pot do ukaza cygpath*Enter the full path of the cygpath command winDialog2Polna pot do ukaza dosdev)Enter the full path of the dosdev command winDialogLPolna pot do mape programa luckybackup0Enter the full path of the luckybackup directory winDialogVNavedena mora biti polna pot do ukaza rsync(Enter the full path of the rsync command winDialogRNavedena mora biti polna pot do ukaza ssh&Enter the full path of the ssh command winDialog2Polna pot do za asne mape.Enter the full path of the temporary directory winDialog2Polna pot do mape vshadow,Enter the full path of the vshadow directory winDialog6Izvedljive datoteke (*.exe)Executable Files (*.exe) winDialog V reduOkay winDialog&Izbor ukaza cygpathSelect cygpath command winDialog$Izbor ukaza dosdevSelect dosdev command winDialog"Izbor ukaza rsyncSelect rsync command winDialogIzbor ukaza sshSelect ssh command winDialog2Uporabi privzeto vrednostUse default value winDialogbrskaj krajevnobrowse locally winDialogUkaz cygpath:cygpath: winDialogdolo ilo potideclaration of paths winDialogUkaz dosdev:dosdev: winDialogluckyBackup luckyBackup winDialogMapa programa: main dir: winDialog rsync:rsync: winDialogUkaz ssh:ssh: winDialog,Mapa za asnih datotek: temp dir: winDialogMapa vshadow: vshadow dir: winDialog !!$luckybackup-0.5.0/translations/luckybackup_ca.ts0000666000175000017500000072072113165410113021456 0ustar luckybluckyb CalcDiffThread Scanning destination S'està escanejant el destí Please wait Espereu Scanning snapshot S'està escanejant la captura d'imatge Scanning source S'està escanejant l'origen Calculating differences S'estan calculant les diferències Sync dir A & B differences Sincronitza diferències entre les carpetes A i B Snapshot and source differences Diferències entre la captura d'imatge i l'origen Sync dir B data that also exists at sync dir A and is different Sincronitza dades de la carpeta B que també existeixen en la carpeta sincronitzada A i que són diferents Snapshot data that also exists at the source and is different Dades de la captura d'imatge que també existeixen a l'origen i que són diferents The snapshot data will replace the source data during RESTORE Les dades de la captura d'imatge reemplaçaran les dades origen durant la RESTAURACIÓ Data amount is huge. Displaying only first entries Hi ha moltes dades. Només es mostren les primeres entrades Sync dir B data that do NOT exist at sync dir A Sincronitza dades de la carpeta B que NO existeixen en la carpeta sincronitzada A Snapshot data that do NOT exist at the source Captura d'imatge de dades que NO existeixen en origen These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Aquestes es transferiran a l'origen durant la RESTAURACIÓ Sync dir A data that do NOT exist at sync dir B Sincronitza dades de la carpeta A que NO existeixen a la carpeta sincronitzada B Source data that do NOT exist at the snapshot Dades d'origen que NO existeixen a la captura d'imatge These will be deleted during RESTORE only if you enable the option: Aquestes s'eliminaran durant la RESTAURACIÓ només si activeu l'opció: delete existing source data that do not exist at the backup Elimina les dades d'origen que no existeixen en la còpia de seguretat QObject The task list is empty La llista de tasques és buida nothing to start res a començar You have included both of the following connected tasks: Heu inclós ambdues tasques següents connectades: this is not allowed for obvious reasons això no és permès per raons òbvies Please <b>uncheck appropriate include boxes</b> before proceeding <b>Desmarqueu les caixes apropiades incloses</b> abans de continuar You have not included any tasks No heu inclós cap tasca The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Les tasques següents incloses <b>comparteix la mateixa carpeta de destí</b> (tot junt o per grups) i almenys una d'elles contindrà la còpia de seguretat d'una carpeta this will lead to one task canceling the other això condueix a una tasca cancel·lant l'altra Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Desmarqueu les caixes apropiades incloses o canvieu el tipus de tasques a altres que '<b>Còpia de seguretat del contingut de la carpeta</b>' o useu 'Còpia de seguretat del contingut de la carpeta' junt amb l'opció '<b>Només inclou</b> abans de procedir pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting l'execució de la pre-tasca de l'ordre starting Full phrase: pre-task execution of command: <COMMAND> starting ha començat Command re-run due to failure This means that a specific command is run for once more because it failed the first time L'ordre s'executa de nou per haver fallat post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting l'execució de la post-tasca de l'ordre starting Full phrase: post-task execution of command: <COMMAND> starting ha començat execution of task Full phrase: execution of task: <TASKNAME> starting l'execució de la tasca starting Full phrase: execution of task: <TASKNAME> starting ha començat Source Full phrase: source: <SOURCE_NAME Origen Destination Full phrase: Destination: <DEST_NAME Destí execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting l'execució de la primera part de la tasca starting Full phrase: execution of 1st part of task: <TASKNAME> starting ha començat Syncing Full phrase: Syncing <DIR-A> to <DIR-B> S'està sincronitzant to Full phrase: Syncing <DIR-A> to <DIR-B> amb execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting l'execució de la segona part de la tasca starting Full phrase: execution of 2nd part of task: <TASKNAME> starting ha començat Syncing Full phrase: Syncing <DIR-B> to <DIR-A> S'està sincronitzant to Full phrase: Syncing <DIR-B> to <DIR-A> amb pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished l'execució de la pre-tasca de l'ordre finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished ha acabat post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished l'execució de la post-tasca de l'ordre finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished ha acabat execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished l'execució de la primera part de la tasca finished Full phrase: execution of 1st part of task: <TASKNAME> finished ha acabat execution of task Full phrase: execution of task: <TASKNAME> finished l'execució de la tasca finished Full phrase: execution of task: <TASKNAME> finished ha acabat execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error l'execució de la tasca finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error ha acabat perquè s'ha produït un error en l'execució de la pre/post tasca The process reported an error El procés ha informat d'un error Backing-up profile, logfiles and snapshot data S'estan desant les còpies de seguretat dels perfils, dels registres i de les dades de la captura d'imatge Could not open the logfile No s'ha pogut obrir el fitxer de registre The logfile does not exist El fitxer de registre no existeix The specified command is probably not installed L'ordre especificada probablement no està instal·lada The logfile could not be created No s'ha pogut crear el fitxer de registre command: ordre: exit code: codi de sortida: output: sortida: Last execution time Temps de l'última execució not available no disponible no errors sense errors errors found S'han produït errors status estat OK Correcte Sync directory Sincronitza carpeta Source directory Carpeta origen Using remote, check is skipped S'està usant remot, s'omet la comprovació Destination directory Carpeta de destí free as in free disk space lliure WARNING AVÍS I do not have the permission to read/enter sync directory A No disposem dels permisos per llegir/accedir al directori de sincronització A I do not have the permission to read/enter the source directory No disposem dels permisos per llegir/accedir al directori d'origen I do not have the permission to read/enter sync directory B No disposem dels permisos per llegir/accedir al directori de sincronització B I do not have the permission to read/enter the destination directory No disposem dels permisos per llegir/accedir al directori de destí Directory Carpeta and/or i/o does not exist no existeix is not mounted no està muntat is empty or does not exist està buit o no existeix I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option No <font color=red><b>OMETEM</b></font> aquesta tasca perquè heu activat l'opció "ignora AVISOS" This task will be <font color=red><b>skipped</b></font> Aquesta tasca <font color=red><b>s'ometrà</b></font> CRITICAL CRÍTIC is empty és buit I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway No <font color=orange><b>ometrem</b></font> aquesta tasca. La sincronització es durà a terme igualment This task will <font color=orange><b>not be skipped Aquesta tasca <font color=orange><b>no s'ometrà The Destination Directory will be created if it doesn't exist and filled with new backup data La carpeta de destí es crearà si no existeix i s'omplirà amb les noves dades de còpia de seguretat Task description Descripció de tasques ReadLogFile Could not locate the logfile Could not open the logfile No s'ha pogut obrir el fitxer de registre aboutDialog using Qt4 usant Qt4 Backup & Sync Application Aplicació de còpia de seguretat i sincronització Loukas Avgeriou Loukas Avgeriou It 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. Es distribueix amb l'esperança que us sigui útil, però SENSE CAP GARANTIA; sense ni tan sols la garantia implícita de MERCANTIBILITAT o ENTRENAMENT PER UN PRÒPOSIT PARTICULAR. See the 'License Agreement' tab for more details. Vegeu la pestanya d''Acceptació de Llicència' per més detalls. Athens, Greece Atenes, Grècia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Mantenidor del paquet/pkgbuild oficial linux (AUR) Valuable advisor Assessor de valor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor empaquetador rpm, provador de valor i assessor de connexions remotes Patrick Matthaei Patrick Matthaei Debian package maintainer Mantenidor de paquets de Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Traductor de la IGU al grec i provador de valor The indifex team L'equip de indifex for developing the wonderful transifex localization platform and providing it for free per desenvolupar la fantàstica plataforma de localització i facilitar-la gratuïtament Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Mantenidor de parquets OpenSUSE (KDE4 Community repo) i assessor de valor d'empaquetament Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mantenidor de paquets Mepis (Community repo) i traductor de la IGU a l'espanyol Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) mantenidor de paquets ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows port a MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Contruibueix amb codi per suport remot i vss en el port per a Windows loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port a Mac OS X Elbert Pol Elbert Pol port to OS/2 port a OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Mantenidor del parquet de Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Mantenidor de Puppy pet i sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mantenidor del paquet Madriva (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Mantenidor del paquet FreeBSD Dimitris Jemos Dimitris Jemos Slackel package maintainer Mantenidor de paquets de Slackel ex Fedora package maintainer ex mantenidor del paquet Fedora Pavel Fric Pavel Fric Czech gui translator Traductor de la IGU al txec Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Traductor del manual al grec German gui translator Traductor de la IGU a l'alemany Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Traductor de la IGU al portuguès Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Traductor de la IGU al francès i assessor de valor d'empaquetament (i més) Raffaele Raffaele Italian gui translator Traductor de la IGU a l'italià using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Traductor de la GUI al rus i provador de valor Kenny Verstraete Kenny Verstraete Dutch gui translator Traductor de la IGU a l'holandès Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Traductor de l'IGU al bosni i mantenidor de paquets Mandriva Majed Sahli Majed Sahli Arabic gui translator Traductor de la IGU a l'àrab Adrian Murariu Adrian Murariu Romanian gui translator Traductor de la IGU al romanès Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvó Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Disenyador de la IGU v0.3 fri13 fri13 v.0.3 gui designer Disenyador de la IGU v0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Si nos fos per ell i els seus tutorials mai no hauria començat aquest projecte Thomas Glatt Thomas Glatt French gui translator Traductor de la IGU al Francès Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Traductor de la IGU a l'espanyol Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Traductor de la IGU al suec Catalan gui translator Traductor de la IGU al Català Slovak gui translator Traductor de la IGU a l'Eslovac Rivo Zangov Rivo Zangov Estonian gui translator Traductor de la IGU a l'Estonià Nicolay Boychev Nicolay Boychev Bulgarian gui translator Traductor de la IGU al Búlgar Manuel Meixide Manuel Meixide Galician gui translator Traductor de la IGU al Gallec Roger Foss Roger Foss Norwegian gui translator Traductor de la IGU al noruec Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Traductor de la IGU al xinès (Taiwan) Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) convidat especial eliminador d'errors ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Provador de valor i especialista en brainstorming Yuri Vidal Yuri Vidal backupwhenidle python script developer desenvolupador de l'script de python backupwhenidle Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester provador de valor de OS/2 i Windows ...to all users of the ...a tots els usuaris dels forums for their support. fòrums pel seu sosteniment. Especially Especialment that contributed to this project one way or another que ha contribuït en aquest projecte una vegada i una altra Last but no least Al final, però no per això menys important Could not locate the license file No s'ha pogut localitzar el fitxer de llicència no money sense diners If you like this app and would like to donate something to me personally, all you have to do is: Si us agrada aquesta aplicació i voleu donar-me alguna cosa a mi personalment, tot el que heu de fer és: Give a thumbs up at: Recomaneu-nos a: Vote good & become a fan at: Voteu a favor i esdevingueu fan a: This is my reward :) Aquesta és la meva recompensa :) money amb diners I personally never had and never will accept money for this project. Personalment mai no he cobrat ni acceptaré mai diners per aquest projecte. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Malgrat tot, he decidit usar luckyBackup per ajudar a gent que necessita ajuda monetària. So, please consider it seriously to donate money that will eventually be used for a good cause. Considereu seriosament donar diners, que s'usaran per una bona causa. donation link enllaç a donacions luckyBackup - about luckyBackup - quant a close tanca &About &Quant a <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Assistència A&uthor A&utor &Thanks to &Gràcies a &License Agreement Acord de &llicència luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup es distribueix en els termes de la <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">Llicència Pública General GNU</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! És <b>programari lliure</b>: podeu redistribuïr-lo i/o modificar-lo en els termes de la Llicència Pública General GNU tal i com publica la Free Software Foundation, versió 3 de la llicència. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Mantenidor de paquets Fedora (repositori oficial) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Traductor de la IGU a l'eslovè E. Hakan Duran E. Hakan Duran Turkish gui translator Traductor de la IGU al turc Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) mantenidor del paquet per Slackware (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...la meva mitja taronja, <b>Dimitra</b> que em dona suport mentre aquest programa està en desenvolupament emailDialog luckyBackup - email luckyBackup - correu electrònic Email a report after profile execution Envia un informe després de l'execució del perfil command: ordre: Use default This means "use the default value for this field" Usa valor per defecte Arguments Arguments %f from: %f des de: Enter the sender of the message Escriviu l'emissor del missatge %l logfile %l fitxer de registre %c logfile.tar.gz %c logfile.tar.gz %d date %d data %i time %i hora %p profile name %p nom del perfil %e No of errors %e Número d'errors If unchecked "TLS auto" is used. Only available for sendemail Si no està marcat s'usa "TLS auto". Només disponible per sendmail Disable TLS Desactiva TLS %t to: %t a: Enter the recipient of the message Escriviu el receptor del missatge %s subject: %s títol: Enter the subject of the message Escriviu el títol del missatge %v smtp server: %v servidor smtp: Enter the smtp server used to send the message Escriviu el servidor smtp a usar en enviar el missatge %b body: %b cos: Enter the body of the message Escriviu el cos del missatge Send an email right now to test the provided arguments Envia un correu electrònic ara per comprovar els arguments establerts Test Prova Accept changes and close dialog Accepta els canvis i tanca el diàleg Okay D'acord Close dialog Tanca el diàleg Cancel Cancel·la Specify the conditions to send an email Especifiqueu les condicions per enviar un correu electrònic Enter the command to run eg sendemail Introduïu l'ordre a executar per exemple sendemail arguments: arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Introduïu els arguments de l'ordre de correu per exemple -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Condicions Only send when error(s) occurred during a run Envia només quan es produeixin error(s) en una execució Error(s) occurred S'han produït error(s) Only send when profile is scheduled to run Envia només quan el perfil està planificat per executar-se Profile is scheduled El perfil està planificat Never send an email No enviïs mai un correu electrònic Never Mai The command field is empty El camp d'ordres està buit helpBrowser luckyBackup - help luckyBackup - ajuda manual/ manual/ Okay D'acord logDialog luckyBackup - tasks execution progress luckyBackup - progrés de l'execució de tasques <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error error anterior next error error següent close tanca loading logfile... s'està carregant el fitxer de registre... wait espereu luckyBackupWindow commands output output window label sortida d'ordres rsync and pre/post task commands output is displayed here tooltip aquí es mostren les ordres rsync i pre/post tasques Task list task list label Llista de tasques List of all the available tasks task list tooltip - line1 Llista de totes les tasques disponibles Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Usa 'inclou caixes de selecció' per incloure o no una tasca seleccionada Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' L'execució del perfil finished full phrase: 'Execution of profile <PROFILENAME> finished' acabat simulation mode mode de simulació Could not update last execution time of tasks No s'ha pogut actualitzar el temps d'execució de tasques anteriors Last execution time of tasks updated El temps d'execució de tasques anterior s'ha actualitzat &Abort &Interromp &Minimize to tray tray menu action &Minimitza a la safata &Restore tray menu action &Restaura execution of profile: tray message - execution of profile: <PROFILENAME> in progress... execució de perfil: in progress... tray message - execution of profile: <PROFILENAME> in progress... en curs... Removed all older snapshots data S'han eliminat les dades d'anteriors captures d'imatge failed to remove all older snapshots data ha fallat en eliminar les dades d'anteriors captures d'imatge Unknown error Error desconegut Elapsed time Temps transcorregut pre-task execution of command execució d'ordres de pre-tasca post-task execution of command execució d'ordres de post-tasca Now performing task S'està executant la tasca Directory Carpeta calculating s'està calculant deleting files s'estan eliminant fitxers Total files transferred trying to send an email s'està intentant enviar un correu electrònic The system will shutdown in 1 minute El sistema s'aturarà en 1 minut Source Origen Destination Destí All tasks completed Les tasques s'han completat No errors found No s'han trobat errors errors found s'han produït errors logfile(s) have been created under directory: s'han creat fitxers de registre a la carpeta: Done Fet execution of profile: execució del perfil: finished acabat Execution of tasks were terminated violently by user L'execució de tasques s'ha acabat de manera forçada per part de l'usuari &Profile This is a top menu item &Perfil &Settings This is a top menu item A&rranjament &Language This is a top menu item &Idioma &Help This is a top menu item &Ajuda &Handbook full phrase: 'luckyBackup Handbook' &Manual &About full phrase: 'about luckyBackup' &Quant a current profile perfil actual include label of 'include' checkboxes inclou Move the highlighted task up, by one position button tooltip Mou la tasca ressaltada amunt, una posició Move the highlighted task down, by one position button tooltip Mou la tasca ressaltada avall, una posició jump to next error button tooltip salta a l'error següent jump to previous error button tooltip salta a l'error anterior Task task groupbox (add, remove, modify buttons) label Tasca add add task button label afegeix add task add task button tooltip afegeix tasca remove remove task button label elimina remove highlighted task remove task button tooltip elimina la tasca ressaltada modify modify task button label modifica modify highlighted task modify task button tooltip modifica la tasca ressaltada Begin the execution of all included tasks start button tooltip Comença l'execució de les tasques incloses NOTE simulation checkbox tooltip - line2 NOTA Progressbar update will not be realistic simulation checkbox tooltip - line2 El progrés de la barra de tasques no serà real Information window information window title Finestra d'informació Exit exit button tooltip. full phrase is: 'exit luckybackup' Surt EXIT EXIT button label SURT minimize to tray minimitza a la safata minimizes the window to the tray area minimitza la finestra a la safata F1 F1 English Català &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Heu demanat crear una tasca de RESTAURACIÓ Please have a good look at the following task properties dialog 'create restore' message line 2/4 Feu una bona ullada al diàleg de propietats de tasques a continuació and change anything you wish before proceeding 'create restore' message line 3/4 i canvieu allò que desitgeu abans de prosseguir Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Especialment comproveu el 'Nom de l a tasca', l' 'origen', el 'destí' i la caixa de comprovació 'omet els fitxers nous del destí' (avançat) ERROR ERROR loading default profile ... information window message s'està carregant el perfil per defecte ... loading profile ... information window message s'està carregant el perfil ... loading failed information window message la càrrega ha fallat Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' No s'ha pogut obrir el perfil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y no és vàlid per version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versió: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' perfil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' s'ha carregat correctament scheduled this refers to a profile programat YES NO NO Description Descripció saving default profile ... Information window message s'està desant el perfil per defecte ... saving profile ... Information window message s'està desant el perfil ... WARNING AVÍS default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. perfil per defecte profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' perfil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' perfil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' s'ha desat correctament creating default profile ... Information window message S'està creant el perfil per defecte ... creating profile ... Information window message s'està creant el perfil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' perfil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' s'ha creat amb èxit Would you like to save it before proceeding ? Voleu desar-ho abans de continuar? Would you like to proceed anyway? Voleu continuar igualment? super user super user is the root user super usuari super user mode mode super usuari Welcome to full phrase: 'Welcome to luckyBackup' Benvingut a English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Català Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Ha fallat en crear el perfil nou The name you have entered contains only invalid characters El nom que heu escrit conté només caràcters no vàlids Profile full phrase: 'Profile <PROFILENAME> already exists' El perfil already exists full phrase: 'Profile <PROFILENAME> already exists' ja existeix Would you like to replace it ? Voleu substituir-lo? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' No s'ha pogut substituir el perfil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' No s'ha pogut renanomenar el perfil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' El perfil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' s'ha reanomenat correctament a default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. El perfil per defecte renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' s'ha reanomenat correctament a All relevant files (logs etc) have also been updated Els fitxers destacables (registres, etc) també s'han actualitzat Failed to update all relevant files (logs etc) No s'han pogut actualitzar fitxers destacables (registres, etc.) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Esteu segur que voleu eliminar el perfil per defecte a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' se'n crearà un de buit amb el mateix nom Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Esteu segur que voleu eliminar el perfil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' No s'ha pogut eliminar el perfil Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Perfil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' s'ha eliminat correctament All relevant files (logs etc) have also been deleted Els fitxers destacables (registres, etc.) també s'han eliminat Failed to delete all relevant files (logs etc) No s'han pogut eliminar tots els fitxers destacables (registres, etc.) Profile full phrase: 'Profile <PROFILENAME> set as default' Perfil set as default full phrase: 'Profile <PROFILENAME> set as default' s'ha establert per defecte All relevant files (logs etc) have also been duplicated Els fitxers destacables (registres, etc.) també s'han duplicat Failed to duplicate all relevant files (logs etc) No s'han pogut duplicar tots els fitxers destacables (registres, etc.) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' La descripció del perfil set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' s'ha establert en Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importa perfil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' No s'ha pogut importar el perfil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' El perfil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' s'ha importat correctament as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' com a and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' i s'ha afegit a la llista de perfils Could not locate the file full phrase: 'Could not locate the file <FILENAME>' No s'ha trobat el fitxer You have reached the maximum limit of supported tasks Hau arribat al límit màxim de tasques admeses You have to remove a task if you wish to add another !! Heu d'eliminar una tasca per poder afegir-ne una altra!! Select export directory this is a dialog title for selecting a directory to export a profile to Seleccioneu la carpeta d'exportació Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Ha fallat en exportar el perfil to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' a Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Perfil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' s'ha exportat correctament a The directory you have selected does not contain valid profile data La carpeta que heu seleccionat no conté dades de perfil vàlides Errors occurred during snapshots and logfiles transfer S'han produït errors durant la transferència de fitxers de captura d'imatge i de registre Errors occurred during snapshots transfer S'han produït errors durant la transferència de fitxers de captura d'imatge Errors occurred during logfiles transfer S'han produït errors durant la transferència de fitxers de registre Errors occurred during the profile file transfer S'han produït errors durant la transferència de fitxers de perfil Please select a task to modify first Seleccioneu una tasca per modificar-la primer Please select a task to remove first Seleccioneu una tasca per eliminar-la primer Are you sure you want to remove the following task ?? Esteu segur que voleu eliminar la tasca següent? Would you like to also remove: També voleu eliminar: Please select a task to manage first Seleccioneu una tasca per gestionar-la primer nothing to do res a fer current crontab <font color=green>updated successfully El crontab actual<font color=green>l'ha actualitzat correctament Email preferences have been <font color=green>updated successfully Les preferències de correu electrònic s'han <font color=green>actualitzat correctament status estat NOT INCLUDED NO INCLÓS Checks are disabled. This task will be <b>skipped</b> S'han desactivat les comprovacions. Aquesta tasca <b>s'ometrà</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' La llista de tasques del perfil and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' i la llista desplegable 'perfil' refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' s'han actualitzat luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Finestra d'informació CheckBox Caixa de selecció <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Perfil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed S'està cancel·lant: espereu l'eliminació de tots els processos Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> S'estan eliminant captures d'imatge antigues i els fitxers de registre de la tasca Removing S'està eliminant failed to remove ha fallat en eliminar Failed to start this refers to a process Ha fallat en engegar Crashed this refers to a process Ha petat Timed out this refers to a process Ha caducat Write error this refers to a process Error d'escriptura Read error this refers to a process Error de lectura Unknown error this refers to a process Error desconegut calculating info message displayed during ...calculations s'està calculant transferring files info message displayed during ...file transfers s'estan transferint fitxers deleting files info message displayed during ...file deletions s'estan eliminant fitxers transferring files s'estan transferint fitxers Total files transfered Total de fitxers transmesos ABORTED S'HA INTERROMPUT &Refresh This is a top 'Profile' menu action &Actualitza De&fault This is a top 'Profile' menu action Per de&fecte Set as Default This is a top 'Profile' menu action tooltip Estableix per defecte &View/Edit Description This is a top 'Profile' menu action &Vista/Edició de descripció View/Edit the profile description This is a top 'Profile' menu action tooltip Vista/Edita la descripció del perfil R&ename This is a top 'Profile' menu action &Reanomena &Delete This is a top 'Profile' menu action &Elimina &New This is a top 'Profile' menu action &Nou &Save This is a top 'Profile' menu action &Desa E&xport This is a top 'Profile' menu action E&xporta &Import This is a top 'Profile' menu action &Importa S&chedule This is a top 'Profile' menu action &Programa E&mail This is a top 'Profile' menu action &Correu electrònic Email report after profile execution This is a top 'Profile' menu action tooltip Correu electrònic després de l'execució d'un perfil &Quit This is a top 'Profile' menu action &Surt D&uplicate This is a top 'Profile' menu action D&uplica &Task This is a top menu action &Tasca &Add This is a top 'Task' menu action &Afegeix &Remove This is a top 'Task' menu action &Elimina &Modify This is a top 'Task' menu action &Modifica Create D&uplicate task This is a top 'Task' menu action Crea una tasca d&uplicada Create R&estore task This is a top 'Task' menu action Crea una tasca de &restauració Manage &Backup This is a top 'Task' menu action &Gestiona la còpia de seguretat display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip mostra - restaura - elimina les còpies de seguretat existents de les tasques ressaltades Actions This is a top menu action Accions Current Profile This is a top menu action Perfil actual Lock This is a top menu action. Refers to toolbars Bloqueja Show text under icons This is a top menu action Mostra text sota les icones &Toolbars This is a top menu item &Barres de tasques Set paths This is a top menu action Establir el camí Set paths for rsync and ssh commands This is a top menu action tooltip Establiu el camí per les ordres rsync i ssh quiet mode mode silenciós Only show errors and important messages during window update Mostra només errors i missatges importants durant l'actualització de la finestra Run start button label Executa Abort Abort button label Cancel·la Stop the execution of running tasks NOW Abort button tooltip Atura ARA l'execució de les tasques en curs Execution of tasks finished Done button tooltip L'execució de tasques ha acabat Dry simulation checkbox label. Translate this as 'simulation' Simulació This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Això farà una <b>execució simulada</b> que no fa cap canvi (i produeix gairebé la mateixa sortida que en una execució real) shutdown shutdown button label atura Press down to shutdown the system when done shutdown button tooltip Premeu avall per aturar el sistema quan acabeu Hide information window show/hide information window button tooltip Amaga la finestra d'informació Show information window show/hide information window button tooltip Mostra la finestra d'informació profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end el perfil The task list is empty La llista de tasques està buida Use the "add" button on the right to get started Please keep the add word inside quotes Useu el botó a la dreta "afegeix" per començar could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' no s'ha pogut desar default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. El perfil per defecte could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' no s'ha pogut crear Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' El perfil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' s'ha modificat Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' El perfil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' no s'ha pogut desar profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. el perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' No s'ha pogut duplicar el perfil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' No s'ha pogut duplicar el perfil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' com a Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' el perfil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' s'ha duplicat amb èxit com a Please select a task to duplicate first Primer seleccioneu una tasca a duplicar Please select a task first Seleccioneu una tasca primer Hide information window hide/show information window button tooltip Amaga la finestra d'informació Show information window hide/show information window button tooltip Mostra la finestra d'informació You have only included tasks that are going to be skipped Només heu inclós tasques que s'ometran Manage Task This is a top 'Task' menu action Gestió de tasques display information regarding highlighted task This is a top 'Task' menu action tooltip mostra informació de la tasca ressaltada &Task &Tasca Successfully created destination directory La carpeta de destí s'ha creat correctament Failed to create destination directory Ha fallat en crear la carpeta de destí manageDialog profile perfil task tasca Delete Elimina Restore restaura view log vista de registre destination: destí: source: origen: hide source amaga l'origen Close this window tanca aquesta finestra Close tanca Please select a snapshot from the list Information message Seleccioneu una captura d'imatge de la llista This directory does not exist Aquesta carpeta no existeix This directory does not exist Information message Aquesta carpeta no existeix I do not have sufficient permissions to read this directory Information message No teniu els permisos suficients per llegir aquesta carpeta sync dir A full phrase: sync dir a: <DIRECTORY_A> sincronitza la carpeta A sync dir B full phrase: sync dir a: <DIRECTORY_b> sincronitza la carpeta B View the logfile of the selected sync task 'view log' pushbutton tooltip Mostra el fitxer de registre de la tasca se sincronització seleccionada Please wait until the thread is terminated Espereu que el fil acabi STOP ATURA Stop calculations NOW Atura els càlculs ARA Calculations terminated by user L'usuari ha interromput els càlculs not available refers to a date-time no està disponible luckyBackup - manage backup luckyBackup - gestiona còpies de seguretat Delete the selected snapshot and its logfile Elimina la captura d'imatge seleccionada i el seu fitxer de registre Restore the selected snapshot Restaura la captura d'imatge seleccionada View the logfile of the selected snapshot Mostra el fitxer de registre de la captura d'imatge seleccionada Calculate the differences between the source and the selected snapshot Calcula les diferències entre l'origen i la captura d'imatge seleccionada Calculate differences Calcula les diferències manageWizard not available refers to a date-time no disponible Delete backup this is the title of a wizard Eliminació de còpia de seguretat Date & time simple label of the wizard gui Data i hora Path ...is a directory path Camí WARNING AVÍS You are about to delete backup data information message - line1 Esteu a punt d'eliminar les dades d'una còpia de seguretat If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Si la informació anterior és correcta, feu clic a <b>inici</b> per començar Restore backup this is the title of a wizard Restauració de còpia de seguretat Backup path ...is the backup directory path Camí de la còpia de seguretat close tanca Deleting snapshot logfile info message displayed during ...logfile deletion S'està eliminant el fitxer de registre de la captura d'imatge Updating list of snapshots info message displayed during ...snaps list update S'està actualitzant la llista de captures d'imatge Aborted S'ha interromput Finished S'ha acabat simulation simulació no errors sense errors errors found s'han produït errors Restoring data: main trunk info message displayed during ...data restoration S'estan restaurant dades: dades principals Restoring data: snapshot files info message displayed during ...data restoration S'estan restaurant dades: fitxers de la captura d'imatge Deleting data info message displayed during ...data deletion S'estan eliminant dades luckyBackup - manage backup luckyBackup - gestió de còpies de seguretat Jump to previous error Salta a l'error anterior previous error error anterior Jump to next error Salta a l'error següent next error error següent This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Això farà una <b>execució simulada</b> que no fa cap canvi (i produeix gairebé la mateixa sortida que en una execució real) start inici ABORT INTERROMP cancel cancel·la The restore directory will become identical to the backup snapshot La carpeta de restauració quedarà igual que en la captura d'imatge de restauració Existing backup files will replace the corresponding files at the restore directory information message - line1. Els fitxers de la còpia de seguretat reemplaçaran els fitxers corresponents a la carpeta de restauració If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Si la informació anterior és correcta, feu clic a <b>inici</b> per començar success info message displayed after ...logfile deletion amb èxit failed info message displayed after ...logfile deletion ha fallat Deleting file that lists snapshot changes info message displayed during ...file deletion S'està eliminant el fitxer que llista els canvis en la captura d'imatge success info message displayed after ...file deletion amb èxit failed info message displayed after ...file deletion ha fallat success info message displayed after ...snapshots list update amb èxit Select new restore directory directory selection dialog title Seleccioneu la nova carpeta de restauració Restore path ...is the restore directory path Camí de restauració No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion No hi ha dades específiques de la captura d'imatge. S'omet... Check this, to clone the backup snapshot to the restore directory. Marqueu-ho per clonar la captura d'imatge a la carpeta de restauració. Delete existing data that do not exist at the backup Elimina dades existents que no existeixen a la còpia de seguretat Browse locally for a new restore path Navega localment un camí nou de restauració change canvia <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple simple advanced avançat Task name Nom de la tasca Destination Destí Source Origen Task properties Propietats de la tasca Enter a name for this task (eg "Backup my home directory") Escriviu un nom per la tasca (per exemple"Còpia de seguretat de la carpeta home") Name : Nom : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definiu el tipus de tasca: 1. Còpia de seguretat de l'origen dins de del destí 2. Còpia de seguretat de la carpeta d'origen per nom dins del destí 3. Sincronitza l'origen i el destí, desant els fitxers més recents d'ambdós Type : Tipus : Synchronize Source and Destination Sincronitza origen i destí Enter the full path of the source directory (eg /home/luckyb/) Escriviu el camí sencer de la carpeta d'origen (per exemple /home/luckyb/) Source : Origen: browse localy navega localment Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Escriviu el camí sencer de la carpeta destí (per exemple /media/backups/SiduxHome/) Destination : Destí: eg -C4c arcfour,blowfish-cbc eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Amb aquesta opció, rsync transferirà el grup numèric i les ID d'usuari enlloc d'usar els seu nom d'usurai i de grup i es mapegen en ambdós finals. (--numeric-ids) Use numeric group and user IDs Usa ID d'usuari i de grup numèrics This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Això indica al receptor que intenti activitats de superusuari malgrat que el rsync receptor no s'usi com a superusuari. Aquestes activitats inclouen: preservar els usuaris amb l'opció --owner preservar els grups (no només els grups actuals d'usuari) amb l'opció --groups i còpia a dispositius amb l'opció --devices. (--super) Attempt super-user activities Intenta activitats de superusuari Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Prova de fer còpies de seguretat de fitxers oberts en sistemes Windows usant vss (Només funciona en Windows 2000 i superior) (-vss) Backup open files Còpia de seguretat de fitxers oberts Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Restableix els permisos Windows de la còpia de seguretat localitzats en nt-streams (--restore-nt-streams) Repeat any command that fails, x times Repeteix qualsevol ordre que falli, x vegades Repeat on fail: Repetició en fallar: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Marqueu-ho per clonar l'origen al destí Deixeu-ho sense marcar per crear una carpeta extra al destí Do NOT create extra directory NO creis una carpeta extra Advanced Avançat Shows the rsync command as it will be executed Mostra l'ordre rsync tal i com s'executarà validate valida Okay D'acord Cancel Cancel·la Exclude Exclou Add any directory, file or pattern to be excluded from this task Afegeix qualsevol carpeta, fitxer o patró a excloure d'aquesta tasca Templates Plantilles Exclude all temp folders (**/*tmp*/) Exclou les carpetes temporals (**/*tmp*/) Temporary folders Carpetes temporals Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Exclou carpetes de muntatge del sistema /mnt i /media (/mnt/*/**, /media/*/**) System mount folders Carpetes de muntatge del sistema Exclude all backup files & folders (**~) Exclou tots els fitxers de còpia de seguretat i carpetes (**~) Backup files Fitxers de còpia de seguretat System folders Carpetes del sistema Exclude all cache folders (**/*cache*/ & **/*Cache*/) Exclou les carpetes de memòria de cau (**/*cache*/ & **/*Cache*/) Cache folders Carpetes de memòria de cau Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Exclou les carpetes de paperera dels usuaris (**/*Trash*/, **/*trash*/) Trash Paperera Exclude all "lost+found" folders (**/lost+found*/) Exclou tots els fitxers "lost+found" (**/lost+found*/) lost+found lost+found User Defined Definits per l'usuari Add exclusion as entered in the next field Afegeix una exclusió segons definit en el camp següent add afegeix Exclude list Llista d'exclusions Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Escriviu aquí fitxer, carpeta o patró i premeu el botó "afegeix" per afegir-los a la llista d'exclusions * - coincideix qualsevol component no buit (s'atura a la barra inclinada) ** - coincideix qualsevol cosa inclosa la barra inclinada ? - coincideix qualsevol caràcter excepte la barra inclinada trailing dir_name/*** - coincideix tant la carpeta com el seu contingut starting / - el patró s'ancora en un punt particular de la gerarquia de la transferència (normalment és l' "origen") trailing / - només coincideix la carpeta, no els fitxers normals, enllaços simbòlics ni dispositius Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definiu el tipus de tasca: 1. Còpia de seguretat de la carpeta origen, dins del destí (observeu la caixa "NO creïs carpeta") 2. Sincronitza l'origen i el destí, desant els fitxers més recents d'ambdós Backup Source inside Destination Còpia de seguretat de l'origen dins del destí Description Descripció Task description Descripció de la tasca Type a description of the task Escriviu una descripció per la tasca Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclou les carpetes del sistema /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Exclou totes les carpetes .gvfs d'usuari (**/.gvfs/) launch the pattern editor Inicia l'editor de patrons Remove highlighted exclusion from list Elimina les exclusions ressaltades de la llista remove elimina Edit highlighted inclusion Edita les inclusions ressaltades edit edita Move highlighted inclusion up Mou les inclusions ressaltades amunt move up mou amunt Move highlighted inclusion down Mou les inclusions ressaltades avall move down mou avall Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Inclou només la llista de patrons. Res més. Sisplau adreceu-vos al manual per entendre millor les ordres d'inclusió. Això desactivarà la característica d'exclusió. Only Include Només inclou Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Escriviu aquí el fitxer, carpeta o patró i premeu el botó "afegir" per afegir-lo a la llista d'inclusió * - coincideix qualsevol component no buit (s'atura en les barres inclinades) ** - coincideix qualsevol component no buit, incloent les barres inclinades ? - coincideix qualsevol caràcter excepte una barra inclinada trailing carpeta/*** - coincideix tant la carpeta com el seu contingut starting / - el patró està ancorat en un punt en la gerarquia de transferència (normalment és l'"origen") trailing / - només coincideix la carpeta, ni fitxers regulars, ni enllaços simbòlics ni dispositius Add inclusion as entered in the next field Afegeix inclusió tal i com consta en el camp següent Include list Llista d'inclusió Remove highlighted inclusion from list Elimina les inclusions ressaltades de la llista Remote Remot Use a remote host either for source or destination Usa un equip remot com a origen o com a destí Use remote host Usa un equip remot Use a remote host for destination data. Usa un equip remot com a destí de les dades. destination destí Use a remote host for source data. Usa un equip remot com a origen de les dades. source origen User: Usuari: Enter your username for the remote host (leave blank if not applicable). Escriviu el nom d'usuari de l'equip remot (deixeu buit si no és aplicable). @Host: @Amfitrió: Enter the name of the remote host. Escriviu el nom de l'equip remot. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Escriviu el camí sencer del fitxer que conté la contrasenya d'autenticació (deixeu en blanc si no és aplicable) rsync (no la ssh). rsync password file: fitxer de contrasenya rsync: Check this to connect to an rsync Remote module Marqueu-lo per connectar amb un mòdul rsync remot Remote module Mòdul remot Use ssh as transport shell Usa ssh com a intèrpret d'ordres de transport ssh ssh password: contrasenya: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Escriviu el camí sencer del fitxer que conté la clau d'autenticació privada ssh (deixeu en blanc si no és aplicable). Observeu que heu de fer totes les accions necessàries per una connexió remota sense contrasenya usant un parell de claus OpenSSH private key file : fitxer de clau privada : Enter the port you would like to use for the ssh connection (leave blank for default port) Escriviu el port que voleu usar per la connexió ssh (deixeu en blanc pel port per defecte) port : port : Command Options Opcions d'ordres Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Afegeix o elimina qualsevol opció rsync. Si no sabeu el que significa, deixeu-ho com està !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Elimina fitxers en el destí que no existeixen en l'origen . Heu de seleccionar "Recursiu dins les carpetes" (--delete-after & --delete-excluded si useu "Exclude") Copy device (super user only) & special files as they are (-D) Copia el dispositiu (només super usuari) i fitxers especials tal com són (-D) Preserve device, special files Conserva el dispositiu, fitxers especials Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Els fitxers que tenen enllaços simbòlics forts en l'origen els tindran també al destí AVÍS: Els fitxers han d'estar inclosos en el conjunt de la transferència !! (-H) Preserve hard links Conserva els enllaços forts Delete files on the destination Elimina els fitxers al destí Recurse into directories (-r) Recursiu dins les carpetes (-r) Recurse into directories Recursiu dins les carpetes Do not backup source files that are newer on the destination (--update) No facis còpia de seguretat dels fitxers d'origen que són més nous al destí (--update) Skip newer destination files Omet els fitxers més nous en destí Preserve the owner (super user only), group & time stamp of files (-tgo) Conserva el propietari (només super usuari), el grup i la marca horària (-tgo) Preserve ownership, times Conserva el propietari, les hores Preserve permissions of files (-p) conserva els permisos dels fitxers (-p) Preserve permissions Conserva els permisos Copy symlinks as symlinks (-l) Copia els enllaços simbòlics com a tals (-l) Preserve symlinks Conserva els enllaços simbòlics Ignore files using a similar algorithm to CVS (-C) Ignora els fitxers usant un algorisme similar a CVS (-C) Ignore files the CVS way Ignora els fitxers a la manera CVS User defined Definit per l'usuari Enter here an rsync option to add (eg "--delete-excluded", "-X") Escriviu una opció rsync a afegir (per exemple "--delete-excluded", "-X") Extra rsync options list Llista d'opcions rsync extra Remove highlighted option from list Elimina les opcions ressaltades de la llista Add rsync option as entered in the next field Afegeix l'opció rsync tal i com consta en el camp següent options list llista d'opcions Also Execute També executa Execute extra commands, before or after the task. Executa ordres extra, abans o després de la tasca. Before Abans Enter here a command to be executed before the task and then press the "add" button to add it to the list below Escriviu aquí l'ordre a executar abans de la tasca i premeu el botó "afegeix" per afegir-la a la llista a continuació Add command as entered in the field beside Afegir l'ordre tal i com consta en el camp al costat Command list Llista d'ordres Remove highlighted command from list Elimina l'ordre ressaltada de la llista Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Executa la tasca fins i tot si apareix un missatge d'AVÍS Normalment s'usa quan les ordres "Executa abans" poden solucionar un avís (per exemple: muntar particions) ATENCIÓ: marqueu-ho si realment sabeu el que esteu fent by-pass WARNING AVÍS de by-pass After Després Enter here a command to be executed after the task and then press the "add" button to add it to the list below Escriviu aquí l'ordre a executar després de la tasca i premeu el botó "afegeix" per afegir-la a la llista a continuació Select source directory file selection dialog title Seleccioneu la carpeta d'origen Select destination directory file selection dialog title Seleccioneu la carpeta de destí Select rsync password file file selection dialog title Seleccioneu el fitxer contrasenya de rsync Select ssh keyfile file selection dialog title Seleccioneu el fitxer clau ssh Select command to be executed file selection dialog title Seleccioneu l'ordre a executar Select file to read include patterns file selection dialog title Selecciona el fitxer a llegir inclou patrons Select file to read exclude patterns file selection dialog title Selecciona el fitxer a llegir exclou patrons Please define the source before launching the pattern editor message box, message Definiu l'origen abans d'executar l'editor de patrons ERROR message box message ERROR Please specify the following before proceeding: message box, message Especifiqueu el següent abans de procedir: ERROR message box message - line1 ERROR That is not allowed because '/' does not have an actual name message box message - line2 Això no està permès perquè '/' no té un nom Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Deixeu la caixa marcada per <b>ATURA</b>R l'execució de la tasca en procés si aquesta ordre acaba amb error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated useu la caixa per <b>ATURA</b>R l'execució de la tasca en cas d'error You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Heu declarat la carpeta '/' com a origen i NO heu fet clic a la caixa 'NO creis carpetes extra' Please check the relevant box before proceeding message box message - line3 Comproveu les caixes rellevants abans de continuar You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Heu declarat la carpeta arrel d'una partició sencera com a origen i no heu fet clic a la caixa 'No creis carpetes extra' That is not allowed because the root partition does not have an actual name message box message - line2 Això no és permès perquè la partició arrel no té nom The name of the task you requested already exists message box message - line1 El nom de la tasca que heu demanat ja existeix Please specify a different name before proceeding message box message - line2 Especifiqueu un nom diferent abans de continuar The source you have declared is identical to the destination message box message - line1 L'origen que heu declarat és idèntic al destí Please modify at least one of them message box message - line2 Modifiqueu-ne almenys un d'ells WARNING message box message - line1 AVÍS You have declared a destination that is part of the source directory structure message box message - line1 Heu declarat un destí que és part de l'estructura de carpetes de l'origen <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>No us oblideu</b> de definir una carpeta a la caixa de grup 'exclou' contingui el destí You have checked the 'delete files on the destination' option message box message - line2 Heu seleccionat l'opció 'elimina fitxers en destí' without having checked 'Recurse into directories' which is required message box message - line3 sense haver seleccionat l'opció requerida 'Recursiu dins les carpetes' 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Equip remot' està seleccionar, però no heu declarat el nom de cap equip remot Please specify a remote host name message box message - line3 Especifiqueu el nom d'un equip remot Otherwise uncheck 'Remote Host' to operate locally message box message - line4 O elimineu la selecció 'Equip remot' per operar localment All declared fields of the task properties window seem to be ok message box message first line Tots els camps de la finestra de propietats de tasques semblen ser correctes Errors have been found message box message first line S'han trobat errors command to be executed full phrase: command to be executed: <COMMAND> ordres a executar You have already added this exclude item message box message Ja heu afegit aquest element d'exclusió You have already added this include item message box message Ja heu afegit aquest element d'inclusió You have already added this option message box message Ja heu afegit aquesta opció done fet done editing acaba l'edició cancel cancel·la cancel editing cancel·la l'edició Read exclude patterns from file Llegeix els patrons exclosos del fitxer Read file: Llegeix el fitxer: filename nom del fitxer browse navega ... ... Include Inclou Add any directory, file or pattern to be included by this task Afegeix qualsevol carpeta, fitxer o patró a incloure en aquesta tasca Include mode Mode d'inclusió Mode: Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. No exclou aquesta llista de patrons. Adreceu-vos al manual per entendre millor les normes d'inclusió. Normal Include Inclusió normal Read include patterns from file Llegeix els patrons d'inclusió del fitxer browse locally navega localment additional options: opcions addicionals: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Marqueu-ho si useu una partició FAT/NTFS com a destí. Els propietaris i permisos no es conservaran. (-t --modify-window=1) Destination is FAT/NTFS El destí és FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Prova de fer còpies de seguretat de fitxers oberts en sistemes Windows usant vss (Només funciona en Windows 2000 i superior) (-vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Restableix permisos Set the total number of backup snapshots to keep Seleccioneu el nombre total de captures d'imatges de còpia de seguretat a conservar Snapshots to keep: Captures d'imatge a conservar: patternEditor directory : carpeta : Select file Seleccioneu un fitxer Please choose a file within the source Seleccioneu un fitxer dins de l'origen Select directory Seleccioneu una carpeta Please choose a directory within the source Seleccioneu una carpeta dins de l'origen file : fitxer : pattern editor editor de patrons Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Seleccioneu-ho per usar la carpeta anterior com a camí absolut si no està seleccionat, el patró coincidirà amb qualsevol fitxer/carpeta que concordi amb el criteri "nom" Define here, what would you like the pattern to refer to Definiu aquí a quin patró voleu referir-vos The pattern refers to a: El patró refereix a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Useu aquest patró per referir-vos a un fitxer concret per exemple "/media/music/album/song.mp3" Specific file Fitxer específic Use this if the pattern refers to a specific directory eg "/media/music/Album/" Useu-ho si el patró es refereix a una carpeta específica per exemple "/media/music/Album/" Specific directory Carpeta específica Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Useu-ho si el patró es refereix a un conjunt de fitxers que tenen alguna cosa en comú per exemple tots els fitxers amb una extensió ".txt" Set of files Conjunt de fitxers Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Useu-ho si el patró es refereix a un conjunt de carpetes que tenen alguna cosa en comú per exemple totes les carpetes anomenades com a "temp" Set of directories Conjunt de carpetes name nom starts with : comencen amb : Enter here the starting characters of the name of the files/directories that the pattern refers to Escriviu els primers caràcters del nom dels fitxers/carpetes als que es refereix el patró ends with : acaben amb : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Escriviu els últims caràcters del nom dels fitxers/carpetes als que es refereix el patró per exemple per referir-vos a tots els fitxers ".txt", escriviu .txt Enter here the name of the files/directories that the pattern refers to Escriviu el nom dels fitxers/carpetes als que es refereix el patró is exactly : és exactament : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Escriviu els caràcters que consten en qualsevol posició del nom dels fitxers/carpetes a què fa referència el patró contains : conté : browse localy for a file navega localment per un fitxer browse localy for a directory path navega localment pel camí d'una carpeta use absolute path usa un camí absolut Go deeper in path by : Accedeix profund en el camí per : Go deeper in path by any level Accedeix profund en el camí a qualsevol nivell any qualsevol Define here the name criteria for the files/directories to be matched Defineix el criteri de nom dels fitxers/carpetes a coincidir final pattern patró final The actual pattern is displayed here El patró actual es mostra aquí Reset the pattern editor fields to the default values Elimina els camps de l'editor de patrons als valors per defecte reset inicialitza Okay D'acord Cancel Cancel·la Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Useu-ho per referir-vos a sub-carpetes més profundes Per exemple La carpeta "/media/music" inclou 3 sub-carpetes: 1.Rock 2.Jazz 3.Soundtracks i voleu referir-vos al contingut de totes, definiu el següent: * Conjunt de carpetes * Contingut de la carpeta * camí:/media/music/ * Vés profund en el camí en "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Useu-ho si el contingut del patró es refereix al contingut d'una carpeta (o un conjunt de carpetes), no la carpeta mateixa per exemple el contingut de la carpeta "/media/music/Album/" Directory contents Contingut de la carpeta scheduleDialog Starting from scratch Començant de zero No schedules are declared !! No hi ha planificacions declarades !! Unable to create schedule file No s'ha pogut crear el fitxer de planificació You have reached the maximum limit of supported scheduled profiles Heu arribat al límit màxim de perfils de programació admès You have to remove an item if you wish to add another Heu d'eliminar un element si en voleu afegir un altre Add profile schedule Afegir perfil de planificació Modify profile schedule Modifica el perfil de planificació Profile schedule details Detalls de la planificació Invalid profile Perfil no vàlid Execute profile Executa el perfil hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> cada hora al minut at a every cada day dia Sunday Diumenge Monday Dilluns Tuesday Dimarts Wednesday Dimecres Thursday Dijous Friday Divendres Saturday Dissabte & on the & a la st as in 1st day r nd as in 2nd day n rd as in 3rd day er th as in 4th, 5th, 6th or 7th day rt th as in 8th day è th as in 9th day è th as in 10th day è th as in 11th day è th as in 12th....19th day è th as in 20th day è st as in 21st day è nd as in 22nd day è rd as in 23rd day è th as in 24th...30th day è st as in 31st day è of any month qualsevol del mes of de January full phrase: 'of January' gener February full phrase: 'of February' febrer March full phrase: 'of March' març April full phrase: 'of April' abril May full phrase: 'of May' maig June full phrase: 'of June' juny July full phrase: 'of July' juliol August full phrase: 'of August' agost September full phrase: 'of September' setembre October full phrase: 'of October' octubre November full phrase: 'of November' novembre December full phrase: 'of December' desembre Unable to create cron file No s'ha pogut crear el fitxer cron luckyBackup - schedule luckyBackup - planificador <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule Afegeix un nou perfil de planificació add afegeix Modify selected profile schedule Modifica el perfil de planificació seleccionat modify modifica Remove selected profile schedule Elimina el perfil de planificació seleccionat remove elimina Profile : Perfil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Omet les tasques que apareixen amb un missatge d'avís 'CRÍTIC' després de la comprovació de carpetes skip critical omet els crítics time (hour:min) : hora (hora:minut) : set this value to -1 for the schedule to occur every hour establiu aquest valor a -1 per l'execució programada cada hora : : :delay :retard Delay luckybackup execution at startup Retarda l'execució de luckybackup en arrencar min means: minutes (time) min day of week : dia de la setmana : Any Qualsevol month : mes : January gener February febrer March març April abril May maig June juny July juliol August agost September setembre October octubre November novembre December desembre day of month : dia del mes : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Comprova si l'ordinador no permet suport d'entorn gràfic (per exmple: servidor) Console Mode Mode consola okay D'acord Cancel Cancel·la schedule the execution of profiles as declared in the list above Planifica l'execució de perfils segons declarat en la llista anterior cronIT !! cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version El fitxer de planificació no és d'una versió luckyBackup vàlida. file BEWARE of the whitespace before file fitxer You have made changes without clicking the cronIT button Heu fet canvis sense fer clic al botó cronIT Are you sure you want to close the schedule dialog ? Esteu segur que voleu tancar el diàleg de planificació ? Your crontab is updated successfully El crontab s'ha actualitzat correctament no crontab entries exist no hi ha entrades al crontab crontab content contingut del crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup només una vegada en iniciar el sistema Run once, at startup Executa una vegada, en iniciar @ reboot @ reiniciar close this dialog tanca aquest diàleg close tanca Display the current crontab Mostra el crontab actual view current crontab mostra el crontab actual textDialog Enter the name of the new profile : Escriviu el nom del nou perfil : Enter the new name of the profile : Escriviu el nou nom del perfil : Profile description : Descripció del perfil : A profile with the same name already exists Ja existeix un perfil amb el mateix nom Please enter a different name Escriviu un nom diferent Enter password : Escriviu contrasenya: Enter passphrase : Escriviu frase de la contrasenya: Do not show this again for this task No mostrar més per aquesta tasca You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Heu seleccionat fer una "còpia de seguretat del contingut de la carpeta d'origen"<br>junt amb l'opció "elimina fitxers en destí" BEWARE, if your intention is NOT to clone source to destination !! COMPTE, si la vostra intenció NO és clonar l'origen a la destí !! Are you sure you wish to proceed ?? Esteu segur que voleu procedir ?? luckyBackup luckyBackup Okay D'acord Cancel Cancel·la Copy command to clipboard Copia l'ordre al porta-retalls eMail information envia informació per correu electrònic No No Yes winDialog luckyBackup luckyBackup declaration of paths desclaració de camins rsync: rsync: Enter the full path of the rsync command Escriviu el camí sencer de l'ordre rsync browse locally navega localment Use default value Usa el valor predeterminat ssh: ssh: Enter the full path of the ssh command Escriviu el camí sencer de l'ordre ssh cygpath: cygpath: Enter the full path of the cygpath command Escriviu el camí sencer de l'ordre cygpath dosdev: dosdev: Enter the full path of the dosdev command Escriviu el camí sencer de l'ordre dosdev main dir: carpeta principal: Enter the full path of the luckybackup directory Escriviu el camí sencer de la carpeta luckybackup vshadow dir: carpeta vshadow: Enter the full path of the vshadow directory Escriviu el camí sencer de la carpeta vshadow temp dir: carpeta temporal: Enter the full path of the temporary directory Escriviu el camí sencer de la carpeta temporal Okay D'acord Cancel Cancel·la Select rsync command file selection dialog title Seleccioneu l'ordre rsync Executable Files (*.exe) Fitxers executables (*.exe) Select ssh command file selection dialog title Seleccioneu l'ordre ssh Select cygpath command file selection dialog title Seleccioneu l'ordre cygpath Select dosdev command file selection dialog title Seleccioneu l'ordre dosdev luckybackup-0.5.0/translations/luckybackup_sk.ts0000666000175000017500000066742213165410113021520 0ustar luckybluckyb CalcDiffThread Scanning destination Prehľadáva sa cieľ Please wait Čakajte prosím Scanning snapshot Prehľadáva sa snímka Scanning source Prehľadáva sa cieľ Calculating differences Vypočítavajú sa rozdiely Sync dir A & B differences Synchronizácia rozdielov priečinkov A & B Snapshot and source differences Rozdiely snímky a zdroja Sync dir B data that also exists at sync dir A and is different Dáta synchronizovaného priečinka B, ktoré už existujú v synchronizovanom priečinku A sú rozdielne Snapshot data that also exists at the source and is different Dáta snímky, ktoré už existujú v zdroji a sú rozdielne The snapshot data will replace the source data during RESTORE Dáta snímky nahradia počas OBNOVY dáta zdroja Data amount is huge. Displaying only first entries Množstvo dát je obrovské. Zobrazujú sa iba prvé záznamy Sync dir B data that do NOT exist at sync dir A Dáta synchronizovaného priečinka B, ktoré NEEXISTUJÚ v synchronizovanom priečinku A Snapshot data that do NOT exist at the source Dáta snímky, ktoré NEEXISTUJÚ v zdroji These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Tieto budú počas OBNOVY prenesené Sync dir A data that do NOT exist at sync dir B Dáta synchronizovaného priečinka A, ktoré NEEXISTUJÚ v synchronizovanom priečinku B Source data that do NOT exist at the snapshot Dáta zdroja, ktoré NEEXISTUJÚ v snímke These will be deleted during RESTORE only if you enable the option: Tieto budú počas OBNOVY zmazané iba vtedy, ak povolíte túto možnosť: delete existing source data that do not exist at the backup zmazať existujúce zdrojové dáta, ktoré nie sú v zálohe QObject The task list is empty Zoznam úloh je prázdny nothing to start nie je čo začať You have included both of the following connected tasks: Zahrnuli ste obe nasledujúce spojené úlohy: this is not allowed for obvious reasons toto nie je zo zrejmých dôvodov povolené Please <b>uncheck appropriate include boxes</b> before proceeding Prosím <b>zrušte označenie príslušného boxu zahrnutia</b> pred vykonaním You have not included any tasks Nezahrnuli ste žiadne úlohy The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Nasledujúce zahrnuté úlohy <b>zdieľajú ten istý cieľový priečinok</b> (všetky dokopy alebo v skupinách) a aspoň jedna z nich bude zálohovať obsah priečinka this will lead to one task canceling the other toto povedie k tomu, že jedna úloha bude rušiť druhú Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Prosím zrušte označenie príslušného boxu zahrnutia, alebo zmeňte všetky typy úloh na iné než '<b>Zálohovať obsah priečinka</b>' alebo použite 'Zálohovať obsah priečinka' spolu s možnosťou '<b>Iba zahrnúť</b>' pred vykonaním pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting vykonanie príkazu pred úlohou starting Full phrase: pre-task execution of command: <COMMAND> starting sa spúšťa Command re-run due to failure This means that a specific command is run for once more because it failed the first time post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting vykonanie príkazu po úlohe starting Full phrase: post-task execution of command: <COMMAND> starting sa spúšťa execution of task Full phrase: execution of task: <TASKNAME> starting vykonanie úlohy starting Full phrase: execution of task: <TASKNAME> starting sa spúšťa Source Full phrase: source: <SOURCE_NAME Zdroj Destination Full phrase: Destination: <DEST_NAME Cieľ execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting vykonanie prvej časti úlohy starting Full phrase: execution of 1st part of task: <TASKNAME> starting sa spúšťa Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Synchronizuje sa to Full phrase: Syncing <DIR-A> to <DIR-B> voči execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting vykonanie druhej časti úlohy starting Full phrase: execution of 2nd part of task: <TASKNAME> starting sa spúšťa Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Synchronizuje sa to Full phrase: Syncing <DIR-B> to <DIR-A> voči pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished vykonanie príkazu pred úlohou finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished dokončené post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished vykonanie príkazu po úlohe finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished dokončené execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished vykonanie prvej časti úlohy finished Full phrase: execution of 1st part of task: <TASKNAME> finished dokončené execution of task Full phrase: execution of task: <TASKNAME> finished vykonanie úlohy finished Full phrase: execution of task: <TASKNAME> finished dokončené execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error vykonanie úlohy finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error dokončené z dôvodu chyby vo vykonaní príkazu pred alebo po úlohe The process reported an error Proces nahlásil chybu Backing-up profile, logfiles and snapshot data Could not open the logfile Nie je možné otvoriť súbor záznamu The logfile does not exist Súbor záznamu neexistuje The specified command is probably not installed Zadaný príkaz zrejme nie je nainštalovaný The logfile could not be created Súbor záznamu nebol vytvorený command: príkaz: exit code: kód ukončenia: output: výstup: Last execution time Čas posledného vykonania not available nedostupné no errors bez chýb errors found boli nájdené chyby status stav OK OK Sync directory Synchronizovať priečinok Source directory Zdrojový priečinok Using remote, check is skipped Používa sa vzdialený hostiteľský počítač, overenie je preskočené Destination directory Cieľový priečinok free as in free disk space WARNING VAROVANIE I do not have the permission to read/enter sync directory A Nie je právo pre čítanie/vstup do synchronizovaného priečinka A I do not have the permission to read/enter the source directory Nie je právo pre čítanie/vstup do zdrojového priečinka I do not have the permission to read/enter sync directory B Nie je právo pre čítanie/vstup do synchronizovaného priečinka B I do not have the permission to read/enter the destination directory Nie je právo pre čítanie/vstup do cieľového priečinka Directory Priečinok and/or a/alebo does not exist neexistuje is not mounted nie je pripojený is empty or does not exist je prázdny, alebo neexistuje I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Táto úloha sa<font color=red><b>NEPRESKOČÍ</b></font>, pretože je povolená možnosť "obísť VAROVANIE" This task will be <font color=red><b>skipped</b></font> Táto úloha bude <font color=red><b>preskočená</b></font> CRITICAL KRITICKÝ is empty je prázdny I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Táto úloha sa <font color=orange><b>nepreskočí</b></font>. Synchronizácia bude aj tak vykonaná This task will <font color=orange><b>not be skipped Táto úloha <font color=orange><b>nebude preskočená The Destination Directory will be created if it doesn't exist and filled with new backup data Cieľový priečinok bude vytvorený ak neexistuje a bude vyplnený novými záložnými dátami Task description Popis úlohy ReadLogFile Could not locate the logfile Could not open the logfile Nie je možné otvoriť súbor záznamu aboutDialog using Qt4 používa Qt4 Backup & Sync Application Aplikácia pre zálohovanie a synchronizáciu Loukas Avgeriou Loukas Avgeriou It 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. Je šírený v nádeji, že bude užitočný, ale BEZ AKEJKOĽVEK ZÁRUKY; rovnako bez mlčky predpokladanej záruky PREDAJNOSTI alebo VHODNOSTI PRE KONKRÉTNY ÚČEL. See the 'License Agreement' tab for more details. Pre ďalšie podrobnosti si prezrite kartu Licenčná zmluva. Athens, Greece Atény, Grécko Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Balíček pre Arch linux a oficiálny správca pkgbuildu (AUR) Valuable advisor Cenný poradca Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor výrobca rpm balíčka, cenný tester a poradca vo veciach vzdialeného pripojenia Patrick Matthaei Patrick Matthaei Debian package maintainer Správca balíčka pre Debian Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Prekladateľ grafického rozhrania do gréčtiny a cenný tester The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Správca balíčka pre OpenSUSE (Komunitný repozitár KDE4) a cenný poradca pre balenie Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Správca balíčka pre Mepis (Komunitný repozitár) a prekladateľ grafického rozhrania do španielčiny Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) správca balíčka pre ubuntu (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port na Mac OS X Elbert Pol Elbert Pol port to OS/2 port na OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Správca ebuildu pre Gentoo Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Živiteľ šteniatka a správca sfs Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Správca balíčka pre Mandrivu (oficiálne poskytnutý repozitár) Michael J Gruber Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer bývalý správca balíčka pre Fedoru Pavel Fric Pavel Fric Czech gui translator Prekladateľ grafického rozhrania do češtiny Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Prekladateľ gréckej príručky German gui translator Prekladateľ grafického rozhrania do nemčiny Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Prekladateľ grafického rozhrania do portugalčiny Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Prekladateľ grafického rozhrania do francúzštiny Raffaele Raffaele Italian gui translator Prekladateľ grafického rozhrania do taliančiny using Qt António Correia Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Prekladateľ grafického rozhrania do ruštiny a cenný tester Kenny Verstraete Kenny Verstraete Dutch gui translator Prekladateľ grafického rozhrania do holandštiny Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Prekladateľ grafického rozhrania do bosnianštiny a správca balíčka pre Mandrivu Majed Sahli Majed Sahli Arabic gui translator Prekladateľ grafického rozhrania do arabčiny Adrian Murariu Adrian Murariu Romanian gui translator Prekladateľ grafického rozhrania do rumunčiny Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Dizajnér grafického rozhrania verzie 0.3 fri13 fri13 v.0.3 gui designer Dizajnér grafického rozhrania verzie 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Keby nebolo jeho a jeho návodov, nikdy by som nezačal s týmto projektom Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Prekladateľ grafického rozhrania do španielčiny Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Prekladateľ grafického rozhrania do švédčiny Catalan gui translator Prekladateľ grafického rozhrania do katalánčiny Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) zabijak zvláštnych chýb ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist cenný tester a odborník na hľadanie nových nápadov Yuri Vidal Yuri Vidal backupwhenidle python script developer vývojár pythonového skriptu backupwhenidle Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...všetkým používateľom forums for their support. fórum pre ich podporu. Especially Špeciálne that contributed to this project one way or another ktorí prispeli tomuto projektu či už takým, alebo onakým spôsobom Last but no least V neposlednom rade Could not locate the license file Súbor s licenciou nebol nájdený no money nepeňažná If you like this app and would like to donate something to me personally, all you have to do is: Ak sa vám táto aplikácia páči a chceli by ste mi osobne niečo darovať, všetko, čo musíte urobiť je: Give a thumbs up at: Dať palec hore na: Vote good & become a fan at: Dať dobrý hlas a stať sa fanúšikom na: This is my reward :) To je moja odmena :) money peňažná I personally never had and never will accept money for this project. Osobne som za tento projekt nikdy nemal nejaké peniaze a nikdy ich za neho neprijímem. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Aj napriek tomu som sa rozhodol, že použijem luckyBackup na podporu ľudí, ktorí finančnú pomoc naozaj potrebujú. So, please consider it seriously to donate money that will eventually be used for a good cause. Zvážte teda prosím peňažný dar, ktorý by sa časom použil na dobrý účel. donation link darcovský odkaz luckyBackup - about O aplikácii luckyBackup close zavrieť &About &O aplikácii <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Podpora A&uthor A&utor &Thanks to &Poďakovanie &License Agreement &Licenčná zmluva luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup je šírený za podmienok <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Je to <b>slobodný softvér</b>: môžete ho šíriť a/alebo upravovať za podmienok GNU General Public License tak, ako sú zverejnené Free Software Foundation, verzia 3 Licencie. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Správca balíčka pre Fedoru (oficiálny repozitár) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Prekladateľ grafického rozhrania do slovinčiny E. Hakan Duran E. Hakan Duran Turkish gui translator Prekladateľ grafického rozhrania do turečtiny Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Správca balíčka pre slackware (repozitár SlackBuilds) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...mojej druhej polovičke, <b>Dimitre</b>, ktorá je so mnou po celú dobu vývoja tohoto projektu emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Po vykonaní profilu poslať správu elektornickou poštou command: príkaz: Use default This means "use the default value for this field" Použiť predvolené Arguments Argumenty %f from: %f od: Enter the sender of the message %l logfile %l súbor záznamu %c logfile.tar.gz %d date %d dátum %i time %i čas %p profile name %p názov profilu %e No of errors %e žiadne z chýb If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t do: Enter the recipient of the message %s subject: %s predmet: Enter the subject of the message %v smtp server: %v smtp server: Enter the smtp server used to send the message %b body: %b telo: Enter the body of the message Send an email right now to test the provided arguments Poslať email hneď teraz pre vyskúšanie poskytnutých argumentov Test Skúška Accept changes and close dialog Prijať zmeny a zavrieť dialóg Okay OK Close dialog Zavrieť dialóg Cancel Zrušiť Specify the conditions to send an email Určiť podmienky pre posielanie emailu Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Podmienky Only send when error(s) occurred during a run Poslať len vtedy, ak sa počas spustenia vyskytne chyba Error(s) occurred Vyskytla sa chyba Only send when profile is scheduled to run Poslať len vtedy, ak je profil naplánovaný pre spustenie Profile is scheduled Profil je naplánovaný Never send an email Nikdy neposielať email Never Nikdy The command field is empty Príkazové pole je prázdne helpBrowser luckyBackup - help luckyBackup - príručka manual/ príručka/ Okay OK logDialog luckyBackup - tasks execution progress luckyBackup - postup vykonania úloh <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error predchádzajúca chyba next error nasledujúca chyba close zavrieť loading logfile... načítava sa súbor záznamu... wait počkať luckyBackupWindow commands output output window label výstup príkazov rsync and pre/post task commands output is displayed here tooltip výstup z rsync a pred/po vykonaní úlohy sa zobrazuje tu Task list task list label Zoznam úloh List of all the available tasks task list tooltip - line1 Zoznam všetkých dostupných úloh Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Pre zahrnutie, alebo vylúčenie vybranej úlohy použite zaškrtávacie políčka Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Vykonanie profilu finished full phrase: 'Execution of profile <PROFILENAME> finished' dokončené simulation mode režim simulácie Could not update last execution time of tasks Nepodarilo sa obnoviť čas posledného vykonania úloh Last execution time of tasks updated Čas posledného vykonania úloh aktualizovaný &Abort &Prerušiť &Minimize to tray tray menu action &Minimalizovať do systémovej lišty &Restore tray menu action &Obnoviť execution of profile: tray message - execution of profile: <PROFILENAME> in progress... vykonanie profilu: in progress... tray message - execution of profile: <PROFILENAME> in progress... prebieha... Removed all older snapshots data Odstránené všetky staré dáta snímok failed to remove all older snapshots data odstránenie všetkých starých dát snímok zlyhalo Unknown error Neznáma chyba Elapsed time Uplynutý čas pre-task execution of command vykonávanie príkazu pred úlohou post-task execution of command vykonávanie príkazu po úlohe Now performing task Teraz sa vykonáva úloha Directory Priečinok calculating vypočítavanie deleting files mazanie súborov Total files transferred trying to send an email skúša sa poslanie emailu The system will shutdown in 1 minute Systém bude vypnutý za jednu minútu Source Zdroj Destination Cieľ All tasks completed Všetky úlohy dokončené No errors found Nenájdené žiadne chyby errors found boli nájdené chyby logfile(s) have been created under directory: súbory záznamu boli vytvorené v priečinku: Done Hotovo execution of profile: vykonanie profilu: finished dokončené Execution of tasks were terminated violently by user Vykonanie úloh bolo násilím ukončené používateľom &Profile This is a top menu item &Profil &Settings This is a top menu item Na&stavenie &Language This is a top menu item &Jazyk &Help This is a top menu item &Pomocník &Handbook full phrase: 'luckyBackup Handbook' P&ríručka &About full phrase: 'about luckyBackup' &O aplikácii current profile aktuálny profil include label of 'include' checkboxes zahrnúť Move the highlighted task up, by one position button tooltip Presunúť zvýraznenú úlohu hore o jednu pozíciu Move the highlighted task down, by one position button tooltip Presunúť zvýraznenú úlohu dole o jednu pozíciu jump to next error button tooltip preskočiť k ďalšej chybe jump to previous error button tooltip preskočiť k predchádzajúcej chybe Task task groupbox (add, remove, modify buttons) label Úloha add add task button label pridať add task add task button tooltip pridať úlohu remove remove task button label odstrániť remove highlighted task remove task button tooltip odstrániť zvýraznenú úlohu modify modify task button label upraviť modify highlighted task modify task button tooltip upraviť zvýraznenú úlohu Begin the execution of all included tasks start button tooltip Začať s vykonávaním všetkých zahrnutých úloh NOTE simulation checkbox tooltip - line2 POZNÁMKA Progressbar update will not be realistic simulation checkbox tooltip - line2 Aktualizácia ukazovateľa priebehu nebude realistická Information window information window title Informačné okno Exit exit button tooltip. full phrase is: 'exit luckybackup' Ukončiť EXIT EXIT button label UKONČIŤ minimize to tray minimalizovať do systémovej lišty minimizes the window to the tray area minimalizuje okno do oblasti systémovej lišty F1 F1 English Slovenčina &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Požiadali ste o to, aby bola vytvorená úloha OBNOVENIE Please have a good look at the following task properties dialog 'create restore' message line 2/4 Prosím pozorne si prezrite nasledujúci dialóg vlastností and change anything you wish before proceeding 'create restore' message line 3/4 a zmeňte čokoľvek si budete želať predtým, než sa bude pokračovať Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Obzvlášť si skontrolujte zaškrtávacie okienka 'Názov úlohy', 'Zdroj", 'Cieľ' a 'Preskočiť novšie súbory cieľa' (pokročilé možnosti) ERROR CHYBA loading default profile ... information window message nahráva sa predvolený profil ... loading profile ... information window message nahráva sa profil ... loading failed information window message nahrávanie zlyhalo Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Nie je možné otvoriť profil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y nie je platný pre version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y verzia: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' bol úspešne nahraný scheduled this refers to a profile naplánovaný YES ÁNO NO NIE Description Popis saving default profile ... Information window message ukladá sa predvolený profil ... saving profile ... Information window message ukladá sa profil ... WARNING VAROVANIE default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. predvolený profil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' bol úspešne uložený creating default profile ... Information window message vytvára sa predvolený profil ... creating profile ... Information window message vytvára sa profil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' bol úspešne vytvorený Would you like to save it before proceeding ? Želáte si ho uložiť predtým, než sa bude pokračovať? Would you like to proceed anyway? Želáte si aj napriek tomu pokračovať? super user super user is the root user super používateľ super user mode režim super používateľa Welcome to full phrase: 'Welcome to luckyBackup' Vitajte v English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Slovenčina Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Zlyhalo vytvorenie nového profilu The name you have entered contains only invalid characters Zadaný názov obsahuje len neplatné znaky Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' už existuje Would you like to replace it ? Želáte si ho nahradiť ? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Zlyhalo nahradenie profilu Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Zlyhalo premenovanie profilu profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' bol úspešne premenovaný na default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. predvolený profil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' bol úspešne premenovaný na All relevant files (logs etc) have also been updated Všetky priamo súvisiace súbory (záznamy a podobne) boli tiež aktualizované Failed to update all relevant files (logs etc) Aktualizácia všetkých priamo súvisiacich súborov (záznamov a podobne) zlyhala Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Ste si istí, že chcete zmazať predvolený profil a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' bude vytvorený nový prázdny profil s rovnakým názvom Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Ste si istí, že chcete zmazať profil Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Zlyhalo zmazanie profilu Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' bol úspešne zmazaný All relevant files (logs etc) have also been deleted Všetky priamo súvsiace súbory (záznamy a podobne) boli tiež zmazané Failed to delete all relevant files (logs etc) Zmazanie všetkých priamo súvisiacich súborov (záznamov a podobne) zlyhalo Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' bol nastavený ako predvolený All relevant files (logs etc) have also been duplicated Všetky priamo súvisiace súbory (záznamy a podobne) boli tiež zdvojené Failed to duplicate all relevant files (logs etc) Zlyhalo zdvojenie všetkých priamo súvisiacich súborov (záznamov a podobne) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Popis profilu set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' nastavený na Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Import profilu Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Zlyhalo importovanie profilu Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' bol úspešne importovaný as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' ako and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' a pridaný do zoznamu profilov Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Nie je možné nájsť súbor You have reached the maximum limit of supported tasks Bola dosiahnutá najvyššia možná úroveň podporovaných úloh You have to remove a task if you wish to add another !! Musíte odstrániť úlohu pokiaľ chcete pridať ďalšiu !! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' voči Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Prosím vyberte úlohu, ktorá bude upravená ako prvá Please select a task to remove first Prosím vyberte úlohu, ktorá bude odstránená ako prvá Are you sure you want to remove the following task ?? Ste si istí, že chcete odstrániť nasledujúcu úlohu ?? Would you like to also remove: Chceli by ste odstrániť aj: Please select a task to manage first Prosím vyberte úlohu, ktorá bude spravovaná ako prvá nothing to do nie je čo vykonať current crontab <font color=green>updated successfully aktuálny crontab <font color=green>úspešne aktualizovaný Email preferences have been <font color=green>updated successfully Nastavenie emailu bolo <font color=green>úspešne aktualizované status stav NOT INCLUDED NEZAHRNUTÉ Checks are disabled. This task will be <b>skipped</b> Kontroly sú zakázané, Táto úloha bude <b>preskočená</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Zoznam úloh profilu and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' a zoznam 'profilu', ktorý je posunutý dole refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' obnovený luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informačné okno CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Prerušenie: Prosím počkajte až budú všetky procesy zabité Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Odstráňujú sa staré snímky a súbory záznamov úlohy Removing Odstraňuje sa failed to remove odstránenie zlyhalo Failed to start this refers to a process Spustenie zlyhalo Crashed this refers to a process Spadlo Timed out this refers to a process Čas vypršal Write error this refers to a process Chyba pri zápise Read error this refers to a process Chyba pri čítaní Unknown error this refers to a process Neznáma chyba calculating info message displayed during ...calculations vypočítavanie transferring files info message displayed during ...file transfers presun súborov deleting files info message displayed during ...file deletions mazanie súborov transferring files presun súborov ABORTED PRERUŠENÉ &Refresh This is a top 'Profile' menu action &Obnoviť De&fault This is a top 'Profile' menu action Pre&dvoliť Set as Default This is a top 'Profile' menu action tooltip Nastaviť ako predvolené &View/Edit Description This is a top 'Profile' menu action &Zobraziť/upraviť popis View/Edit the profile description This is a top 'Profile' menu action tooltip Zobraziť/upraviť popis profilu R&ename This is a top 'Profile' menu action Pr&emenovať &Delete This is a top 'Profile' menu action &Zmazať &New This is a top 'Profile' menu action &Nový &Save This is a top 'Profile' menu action &Uložiť E&xport This is a top 'Profile' menu action E&xportovať &Import This is a top 'Profile' menu action &Importovať S&chedule This is a top 'Profile' menu action N&aplánovať E&mail This is a top 'Profile' menu action E&mail Email report after profile execution This is a top 'Profile' menu action tooltip Správa emailom po vykonaní profilu &Quit This is a top 'Profile' menu action &Ukončiť D&uplicate This is a top 'Profile' menu action Z&dvojiť &Task This is a top menu action &Úloha &Add This is a top 'Task' menu action Prid&ať &Remove This is a top 'Task' menu action Odst&rániť &Modify This is a top 'Task' menu action Upra&viť Create D&uplicate task This is a top 'Task' menu action Vytvoriť z&dvojenú úlohu Create R&estore task This is a top 'Task' menu action Vytvoriť obnov&enú úlohu Manage &Backup This is a top 'Task' menu action &Spravovať zálohu display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip zobraziť - obnoviť - zmazať existujúce zálohy zvýraznenej úlohy Actions This is a top menu action Akcie Current Profile This is a top menu action Aktuálny profil Lock This is a top menu action. Refers to toolbars Zamknúť Show text under icons This is a top menu action Zobraziť text pod ikonami &Toolbars This is a top menu item P&anely nástrojov Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Spustiť Abort Abort button label Prerušiť Stop the execution of running tasks NOW Abort button tooltip Prerušiť vykonávanie TERAZ spustených úloh Execution of tasks finished Done button tooltip Vykonanie úloh dokončené Dry simulation checkbox label. Translate this as 'simulation' Na sucho This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Týmto sa vykoná <b>predstierané spustenie</b>, ktoré neurobí žiadne zmeny (a vo väčšine prípadov vedie k rovnakému výsledku ako reálne spustenie) shutdown shutdown button label vypnutie Press down to shutdown the system when done shutdown button tooltip Ptlačte pre vypnutie systému až bude všetko dokončené Hide information window show/hide information window button tooltip Skryť informačné okno Show information window show/hide information window button tooltip Zobraziť informačné okno profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Zoznam úloh je prázdny Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' nie je možné uložiť default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. predvolený profil could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' nie je možné vytvoriť Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' je upravený Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' nie je možné uložiť profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Zlyhalo zdvojenie profilu Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Zlyhalo zdvojenie profilu as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' ako Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' bol úspešne zdvojený ako Please select a task to duplicate first Prosím vyberte si úlohu, ktorá bude zdvojená ako prvá Please select a task first Prosím vyberte si prvú úlohu Hide information window hide/show information window button tooltip Skryť informačné okno Show information window hide/show information window button tooltip Zobraziť informačné okno You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Spravovať úlohu display information regarding highlighted task This is a top 'Task' menu action tooltip Zobraziť informácie týkajúce sa zvýraznenej úlohy &Task Ú&loha Successfully created destination directory Cieľový priečinok bol úspešne vytvorený Failed to create destination directory Vytvorenie cieľového priečinka zlyhalo manageDialog profile profil task úloha Delete Zmazať Restore Obnoviť view log zobraziť záznam destination: cieľ: source: zdrroj: hide source skryť zdroj Close this window Zavrieť toto okno Close Zavrieť Please select a snapshot from the list Information message Prosím vyberte snímku zo zoznamu This directory does not exist Tento priečinok neexistuje This directory does not exist Information message Tento priečinok neexistuje I do not have sufficient permissions to read this directory Information message Nie sú dostatočné oprávnenia na čítanie z tohoto priečinka sync dir A full phrase: sync dir a: <DIRECTORY_A> Synchronizovaný priečinok A sync dir B full phrase: sync dir a: <DIRECTORY_b> Synchronizovaný priečinok B View the logfile of the selected sync task 'view log' pushbutton tooltip Zobraziť súbor so záznamom pre vybraný sychronizovaný priečinok Please wait until the thread is terminated Prosím počkajte až bude vlákno ukončené STOP ZASTAVIŤ Stop calculations NOW IHNEĎ zastaviť výpočty Calculations terminated by user Výpočty boli zrušené používateľom not available refers to a date-time nedostupné luckyBackup - manage backup luckyBackup - správa zálohy Delete the selected snapshot and its logfile Zmazať vybranú snímku so záznamom Restore the selected snapshot Obnoviť vybranú snímku View the logfile of the selected snapshot Zobraziť súbor so záznamom pre vybranú snímku Calculate the differences between the source and the selected snapshot Vypočítať rozdiely medzi zdrojom a vybranou snímkou Calculate differences Vypočítať rozdiely manageWizard not available refers to a date-time nedostupné Delete backup this is the title of a wizard Zmazať zálohu Date & time simple label of the wizard gui Dátum a čas Path ...is a directory path Cesta WARNING VAROVANIE You are about to delete backup data information message - line1 Chystáte sa zmazať dáta so zálohou If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Ak je informácia vyššie správna, kliknite na <b>začať</b> pre začatie Restore backup this is the title of a wizard Obnoviť zálohu Backup path ...is the backup directory path Cesta k zálohe close zavrieť Deleting snapshot logfile info message displayed during ...logfile deletion Maže sa súbor záznamu snímky Updating list of snapshots info message displayed during ...snaps list update Aktualizuje sa zoznam snímok Aborted Zrušené Finished Dokončené simulation simulácia no errors bez chýb errors found boli nájdené chyby Restoring data: main trunk info message displayed during ...data restoration Obnovujú sa dáta: hlavný kmeň Restoring data: snapshot files info message displayed during ...data restoration Obnovujú sa dáta: súbory snímky Deleting data info message displayed during ...data deletion Mažú sa dáta luckyBackup - manage backup luckyBackup - správa zálohy Jump to previous error preskočiť k predchádzajúcej chybe previous error predchádzajúca chyba Jump to next error preskočiť k nasledujúcej chybe next error nasledujúca chyba This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Týmto sa vykoná <b>predstierané spustenie</b>, ktoré neurobí žiadne zmeny (a vo väčšine prípadov vedie k rovnakému výsledku ako reálne spustenie) start začať ABORT ZRUŠIŤ cancel zrušiť The restore directory will become identical to the backup snapshot Obnovovací priečinok sa stane totožným so snímkou zálohy Existing backup files will replace the corresponding files at the restore directory information message - line1. Existujúca záložné súbory nahradia zodpovedajúce súbory v obnovovacom priečinku If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' ak je informácia vyššie správna, kliknite na <b>začať</b> pre začatie success info message displayed after ...logfile deletion úspešné failed info message displayed after ...logfile deletion zlyhalo Deleting file that lists snapshot changes info message displayed during ...file deletion Maže sa súbor, ktorý určuje zmeny v snímke success info message displayed after ...file deletion úspešné failed info message displayed after ...file deletion zlyhalo success info message displayed after ...snapshots list update úspešné Select new restore directory directory selection dialog title Vybrať nový obnovovací priečinok Restore path ...is the restore directory path Cesta k obnovovaciemu priečinku No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Neexistujú žiadne dáta príznačné pre snímku. Preskakuje sa... Check this, to clone the backup snapshot to the restore directory. Túto možnosť zaškrtnite pre klonovanie snímky do obnovovacieho priečinka. Delete existing data that do not exist at the backup Zmazať existujúce dáta, ktoré v zálohe neexistujú Browse locally for a new restore path Prechádzať miestne kvôli novej ceste k obnovovaciemu priečinku change zmeniť <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple advanced Task name Destination Cieľ Source Zdroj Task properties Vlastnosti úlohy Enter a name for this task (eg "Backup my home directory") Zadajte názov tejto úlohy (napr. "Záloha domovského priečinka") Name : Názov : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Zadať druh tejto úlohy: 1. Zálohovať obsah Zdroja v Cieli 2. Zálohovať Zdrojový priečinok podľa názvu v Cieli 3. Synchronizovať Zdroj a Cieľ, ponechajúc posledné súbory v oboch z nich Type : Typ : Synchronize Source and Destination Synchronizovať Zdroj a Cieľ Enter the full path of the source directory (eg /home/luckyb/) Zadajte celú cestu k zdrojovému priečinku (napr. /home/luckyb/) Source : Zdroj : browse localy prechádzať miestne Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Zadajte celú cestu k cieľovému priečinku (napr. /media/backups/SiduxHome/) Destination : Cieľ : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced Shows the rsync command as it will be executed validate Okay OK Cancel Zrušiť Exclude Vylúčiť Add any directory, file or pattern to be excluded from this task Pridač ktorý koľvek priečinok, súbor, alebo vzor, ktorý má byť vylúčený z tejto úlohy Templates Šablóny Exclude all temp folders (**/*tmp*/) Vylúčiť všetky dočasné priečinky /**/*tmp*/) Temporary folders Dočasné priečinky Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Vylúčiť priečinky vzťahujúce sa k pripojovaným zariadeniam (/mnt & /media (/mnt/*/**, /media/*/**) System mount folders Priečinky pre pripojenie systému Exclude all backup files & folders (**~) Vylúčiť všetky zálohovacie súbory a priečinky (**~) Backup files Súbory so zálohou System folders Systémové priečinky Exclude all cache folders (**/*cache*/ & **/*Cache*/) Cache folders Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Trash Exclude all "lost+found" folders (**/lost+found*/) lost+found User Defined Add exclusion as entered in the next field add pridať Exclude list Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Zadať druh tejto úlohy: 1. Zálohovať obsah Zdroja v Cieli (pozrite tiež okno "NEVYTVÁRAŤ priečinok") 2. Synchronizovať Zdroj a Cieľ, ponechajúc posledné súbory v oboch z nich Backup Source inside Destination Zálohovať obsah Zdroja v Cieli Description Popis Task description Popis úlohy Type a description of the task Napíšte popis úlohy Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor Remove highlighted exclusion from list remove odstrániť Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Include list Remove highlighted inclusion from list Remote Use a remote host either for source or destination Use remote host Use a remote host for destination data. destination Use a remote host for source data. source User: Enter your username for the remote host (leave blank if not applicable). @Host: Enter the name of the remote host. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync password file: Check this to connect to an rsync Remote module Remote module Use ssh as transport shell ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair private key file : Enter the port you would like to use for the ssh connection (leave blank for default port) port : Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Preserve device, special files Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links Delete files on the destination Recurse into directories (-r) Recurse into directories Do not backup source files that are newer on the destination (--update) Skip newer destination files Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times Preserve permissions of files (-p) Preserve permissions Copy symlinks as symlinks (-l) Preserve symlinks Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way User defined Enter here an rsync option to add (eg "--delete-excluded", "-X") Extra rsync options list Remove highlighted option from list Add rsync option as entered in the next field options list Also Execute Execute extra commands, before or after the task. Before Enter here a command to be executed before the task and then press the "add" button to add it to the list below Add command as entered in the field beside Command list Remove highlighted command from list Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING After Enter here a command to be executed after the task and then press the "add" button to add it to the list below Select source directory file selection dialog title Select destination directory file selection dialog title Select rsync password file file selection dialog title Select ssh keyfile file selection dialog title Select command to be executed file selection dialog title Select file to read include patterns file selection dialog title Select file to read exclude patterns file selection dialog title Please define the source before launching the pattern editor message box, message Please specify the following before proceeding: message box, message That is not allowed because '/' does not have an actual name message box message - line2 Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 Please specify a different name before proceeding message box message - line2 The source you have declared is identical to the destination message box message - line1 Please modify at least one of them message box message - line2 You have declared a destination that is part of the source directory structure message box message - line1 <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated You have checked the 'delete files on the destination' option message box message - line2 without having checked 'Recurse into directories' which is required message box message - line3 'Remote Host' is checked, but no remote host name is declared message box message - line2 Please specify a remote host name message box message - line3 Otherwise uncheck 'Remote Host' to operate locally message box message - line4 All declared fields of the task properties window seem to be ok message box message first line Errors have been found message box message first line command to be executed full phrase: command to be executed: <COMMAND> You have already added this exclude item message box message You have already added this include item message box message You have already added this option message box message done done editing cancel zrušiť cancel editing Read exclude patterns from file Read file: filename browse ... Include Add any directory, file or pattern to be included by this task Include mode Mode: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include Read include patterns from file browse locally additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Snapshots to keep: patternEditor directory : Select file Please choose a file within the source Select directory Please choose a directory within the source file : pattern editor editor vzorov Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Toto zaškrtnite kvôli použitiu priečinka vyššie ako absolútnej cesty ak nie je zaškrtnuté, bude vzor zodpovedať ktorémukoľvek súboru, priečinku, ktorý bude vyhovovať kritériám "názov" Define here, what would you like the pattern to refer to Tu určite, na čo by mal vzor odkazovať The pattern refers to a: Vzor odkazuje na: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Toto použite v prípade, že vzor odkazuje na zvláštny súbor napr."/media/music/album/song.mp3" Specific file Zvláštny súbor Use this if the pattern refers to a specific directory eg "/media/music/Album/" Toto použite v prípade, že vzor odkazuje na zvláštny priečinok napr."/media/music/Album/" Specific directory Zvláštny priečinok Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Toto použijte v prípade, že vzor odkazuje na sadu súborov, ktoré majú niečo společného napr. všetky súbory s príponou ".txt" Set of files Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories name starts with : Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : browse localy for a file prechádzať miestne kvôli súboru browse localy for a directory path Prechádzať miestne kvôli ceste k priečinku use absolute path použiť absolútnu cestu Go deeper in path by : Ísť v ceste hlbšie o : Go deeper in path by any level Ísť v ceste hlbšie o akúkoľvek úroveň any akákoľvek Define here the name criteria for the files/directories to be matched final pattern The actual pattern is displayed here Reset the pattern editor fields to the default values Nastaviť editor vzorov na predvolené hodnoty reset reset Okay OK Cancel Zrušiť Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Toto použite kvôli odkazovaniu na podpriečinky napríklad Priečinok obsahuje tri podpriečinky: 1.Rock 2.Jazz 3.Soundtracky a vy chcete odkazovať na obsah u všetkých týchto troch, nastavte nasledujúce: * Sada priečinkov * cesta: /media/music/ * Ísť hlbšie v ceste o "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add pridať Modify selected profile schedule modify upraviť Remove selected profile schedule remove odstrániť Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel Zrušiť schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close zavrieť Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup luckyBackup Okay OK Cancel Zrušiť Copy command to clipboard eMail information No Nie Yes winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay OK Cancel Zrušiť Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_bs.qm0000666000175000017500000030067113157502316021474 0ustar luckybluckybHYDKKSL(Yep]q_ggtggWhY3jYwzffKfUvSE<>LEKO9JEK=4Z5WN~a9a9<aqa#wagaih]iNH56Ga\qw_NTY'"f"e&%7)*0<+>+?+@>,B/]^BT\Ett%FZ9'pGAGRHxDJ6J;'J;JwBLKPdPd_SKTZ[ \Zj61j69j6j6XUl̙ZBmC2xtd4x6zJDKYËcH]L3)W6s$Bt>Vĉ!pQSى>XoXgJz6=oRC^Gr, :~U% d!_gN9z(e'v+&56FR7GE.I|OQ19FRU[h_/-hwb pNS pN:(q>otc4!TVL- a$XYE$465'mѐS-vi&uTbԳWnŵ+ V _*b#K| {#uL&o)/rV28IOBZyC cPoE\c]c'f:ȓuON12;VR'6ZIWmRgT+mf;;C{N7kPX), ÷gI_Y`mԥ9V[v%G&E\S)"FGfXҐ+O:o^n@&#0a%4)kG4)*߬^,b:MTx+eh !sIiJPiU]tM/}^K9WJ[~d aVHufŇʵ]G0Sܯ" P)>bACϗKl]uU H`,0P P\AL~ǧOOjzgeJ[rNt;ge:~cօEIYIIFmId I'I_II,^AMф 4Hed:/yI ig= ri  "A=w \xm6>nBntxAvv#yBi}F9x~ȕrȕgȕXNJR~g: ,tî"pO?v "!" .X;K KO`Vfb#@ghnhnuikՒ:kՒyB|OK4Y7uDEj7IyInV0hdȒa=M':5G  e`읒 vX)`" u| 5Zt^+eJZ-zEEZN3UtZ`xe7a#&0vuFv:{p_gH I)3.ڄ&DCFkFF]ϕ4TiΕ>CUUu_Yr^gG%ȕ^TBaPUU!oDd=n.~Eǧ~(k̐Jj5?II%l׃vL ߖ+kPRkR8Y`332)@|/e1օ9GhF\IX9J T a] -B Ԡ;  ׊$i .R Ѿ u e T3 c28    -0 -nF> ?% @  `v fo gt l zj4 C H  i ~ C XB(  24u ,<: _  GC/ ñ Xh hLT t$ ԑ @ ݓ4 a i* p "/ D v< jI # (N + - 0b. 7'y& 93B, ;=k E= HZN% L9T _y2 _ g.w g.wn g.w i, kQ& {D  (W F?G Ҟ5  YI5 YG ?B6 ;3 Y s.~ T #c' &,X *}EQl +N ,D ,D PY \.~3 iR] eS 16 , 7? {b# ; b msr cy Xw f9d z0m lze I_ E jg Y_ i_V [N "+ ݗ c28k & 8 8i| 8j. 6x6sGCԵJzx'~x/#Y[sE7lGcTba].ae~!p{>+{r"b{HWR5$$Lru ֭>kIne! C/5#!/&)N//(դ(դ-X`f4?bE^YG E ND4RN>ME[=bc1lns?svu@u@WY*d t3k-4fC$t)L`#jvɟ)Spug-+\ ֙SCGߖ]-,'0.yVY]WˎŕTijmOdrediate DestinationQObjectDirektorij DirectoryQObject IzvorSourceQObjectOpis zadatkaTask descriptionQObjectUPOZORENJEWARNINGQObject greaka pronaena errors foundQObjectnema greaaka no errorsQObjectnije dostupno not availableQObjectBnaredba nakon izvraavanja zadatkapost-task execution of commandQObjectBnaredba nakon izvraavanja zadatkaCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectBnaredba prije izvraavanja zadatkapre-task execution of commandQObjectBnaredba prije izvraavanja zadatkaBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObject statusstatusQObject&O meni&About aboutDialog& &Ugovor o licenci&License Agreement aboutDialog&Support&Support aboutDialog &Hvala &Thanks to aboutDialog... mojoj drugoj polovici, <b> Dimitra </b> koja je sa mnom proala sav ovaj put u razvoju ovog projektaj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog(... svim korisnicima...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog2Prevodilac arapskog gui-aArabic gui translator aboutDialognArch linux package/pkgbuild slu~beni odr~avatelj (AUR) 5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtina, Gr kaAthens, Greece aboutDialog0Backup & Sync aplikacijaBackup & Sync Application aboutDialoglPrevodilac Bosankog gui-a & mandriva upravitelj paketa4Bosnian gui translator & mandriva package maintainer aboutDialog>Nemogu pronai datoteku license!Could not locate the license file aboutDialog* eaki gui prevodilacCzech gui translator aboutDialog0Debian upravitelj paketaDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog0Holandski gui prevodilacDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogPosebno Especially aboutDialogRFedora upravitelj paketa (oficjalni rep.))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialogFrancuski gui prevodilac i dragocjen savjetnik za pakete (i to nije sve)AFrench gui translator and valuable packing advisor (and not only) aboutDialog2Gentoo ebuild odr~avateljGentoo ebuild maintainer aboutDialog.Njema ki gui prevodilacGerman gui translator aboutDialogDr~i fige za:Give a thumbs up at: aboutDialogTGr ki GUI prevodilac i vrijedni ispitiva (Greek gui translator and valuable tester aboutDialog0gr ki prevodilac upustvaGreek manual translator aboutDialogJa li no nikad nisam niti u ikada prihvatiti novac za ovaj projekt.DI personally never had and never will accept money for this project. aboutDialogda nije njega i njegovog podu avanja, ja nikad nebi zapo eo ovaj projekatJIf it wasn't him and his tutorials I would never have started this project aboutDialogAko ti se ovaj program svia te ~elis neato donirati meni li no, sve ato trebaa uraditi je:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogdovo je <b>slobodan program<b>: mo~ete ga redistribuirati i/ili mijenjati pod uvjetima GNU Opate javne licence kao ato je objavila Slobodna Softverska fondacia, verzije 3 licence.It 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, version 3 of the License. aboutDialogBTo je distribuisano u nadi da e biti korisno, ali BEZ IKAKVOG UPOZORENJA;  ak i bez implicirane garancije o TER}I`NOM PRAVU ILI PRIPADNOSTI ZA ODREENU NAMJENU.It 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. aboutDialog8Prevodilac italianskog gui-aItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog4posljednje ali ne i zadnjeLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialog4Mandriva upravitelj paketa3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialogMepis odr~avatelj paketa (Community repo) & `panski gui prevodilacBMepis package maintainer (Community repo) & Spanish gui translator aboutDialogIpak, ja sam odluio da koristim luckyBackup kako bi pomagao ljudima koji ma je potrebna financiska pomo.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogOpenSUSE odr~avatelj paketa (KDE4 Community repo) i vrijedni savjetnik za paketeNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialog4Portugalski gui prevodilacPortuguese gui translator aboutDialogRaffaeleRaffaele aboutDialog4Prevodilac rumunskog gui-aRomanian gui translator aboutDialogRRuski gui prevodilac i vrijedni ispitiva *Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialognPogledajte "License Agreement" karticu za viae detalja.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog6Prevodilac slovenskog gui-aSlovenian gui translator aboutDialogzbog toga, zamolio bi vas da svatite to ozbiljno te donirate neato novca koji e biti koriaten u dobre svrhe._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog2Prevodilac apanskog gui-aSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog2Prevodilac avedskog gui-aSwedish gui translator aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog*ovo je moj nagrada :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialog0Prevodilac turskog gui-aTurkish gui translator aboutDialog8Glasaj rado & zadobi fanove:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogzatvoriclose aboutDialog Link za donaciju donation link aboutDialog8forumima za njihovu podraku.forums for their support. aboutDialog fri13fri13 aboutDialog(luckyBackup - o meniluckyBackup - about aboutDialogluckyBackup je distribuisan pod uslovima <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General PublicluckyBackup is distributed under the terms of the GNU General Public License aboutDialog Novacmoney aboutDialogbez novcano money aboutDialog port za Mac OS Xport to Mac OS X aboutDialogrpm packager, vrijedni ispitiva i savjetnik za udaljene konekcijepresko en</b>5Checks are disabled. This task will be skippedluckyBackupWindow0File se ne mo~e lociratiCould not locate the fileluckyBackupWindownije u mogunost aktualizirati vrijeme zadnjeg izvraenog zadatka-Could not update last execution time of tasksluckyBackupWindow,Kreiraj D&upli zadatakCreate D&uplicate taskluckyBackupWindow.Kreiraj R&estor zadatakCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowTrenutni ProfilCurrent ProfileluckyBackupWindowD&uplikat D&uplicateluckyBackupWindowSt&andardanDe&faultluckyBackupWindowOpis DescriptionluckyBackupWindowOdrediate DestinationluckyBackupWindowDirektorij DirectoryluckyBackupWindowObavljenoDoneluckyBackupWindowSuhoDryluckyBackupWindowE&xportujE&xportluckyBackupWindow GRE`KAERRORluckyBackupWindow IZLAZEXITluckyBackupWindow Proteklo vrijeme Elapsed timeluckyBackupWindowBosanskiEnglishluckyBackupWindowBosanskiDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow"Izvraenje profilaExecution of profileluckyBackupWindow8Izvraavanje zadatka je gotovExecution of tasks finishedluckyBackupWindowrzvraavanje zadaa je nasilno prekinut od strane korisnika4Execution of tasks were terminated violently by userluckyBackupWindow IzlazExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowTNeuspjeano kreiran descinaciski direktorij&Failed to create destination directoryluckyBackupWindow8Neuspjeano kreiranje profilaFailed to create new profileluckyBackupWindow6neuspjeano brisanje profilaFailed to delete profileluckyBackupWindow<Neuspjeana duplikacija profilaFailed to duplicate profileluckyBackupWindow<Neuspjeana duplikacija profilaFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow>neuspjeano importovanje profilaFailed to import profileluckyBackupWindow@neuspjeano preimenovanje profilaFailed to rename profileluckyBackupWindow4neuspjeana zamjena profilaFailed to replace profileluckyBackupWindow4Odkloni prozor informacijaHide information windowluckyBackupWindow4Odkloni prozor informacija+hide/show information window button tooltipHide information windowluckyBackupWindowImportuj ProfilImport ProfileluckyBackupWindow(Informacjiski prozorInformation windowluckyBackupWindow&informaciski prozorinformation window titleInformation windowluckyBackupWindowbVrijeme zadnjeg izvraenog zadatke je aktualiziran$Last execution time of tasks updatedluckyBackupWindow:Lista svih dostupnih zadatakaList of all the available tasksluckyBackupWindowZaklju ajLockluckyBackupWindow(Upravljaj &Backup-omManage &BackupluckyBackupWindow$Upravljaj Zatatkom Manage TaskluckyBackupWindowjPomjeri ozna eni zadatak za jednu poziciju prema dole/Move the highlighted task down, by one positionluckyBackupWindowjPomjeri ozna eni zadatak za jednu poziciju prema gore-Move the highlighted task up, by one positionluckyBackupWindowNeNOluckyBackupWindowNIJE UKLJU ENO NOT INCLUDEDluckyBackupWindow PA}NJANOTEluckyBackupWindow*Nije pronaena greakaNo errors foundluckyBackupWindow&Izvraavanje zadatkaNow performing taskluckyBackupWindowMolimo da obratite pa~nju na slijedei popis mogunosti vezanih za zadane zadatke?Please have a good look at the following task properties dialogluckyBackupWindow<Molim da prvo izaberea zadatakPlease select a task firstluckyBackupWindowjMolim da prvo izaberea ~eleni zadatak za duplikaciju'Please select a task to duplicate firstluckyBackupWindowfMolim da odaberete zadatak prije upravljanje istim$Please select a task to manage firstluckyBackupWindowVMolimo da prvo odaberete zadatak za izmjenu$Please select a task to modify firstluckyBackupWindowRMolimo prvo odaberite zadatak za brisanje$Please select a task to remove firstluckyBackupWindow ProfilProfileluckyBackupWindow ProfilPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindow8Progresni prozor nije realan(Progressbar update will not be realisticluckyBackupWindowP&reimenovatiR&enameluckyBackupWindow BriaemRemovingluckyBackupWindowdBrisanje starog snapshota i logfile-a ovog zadatka+Removing old snapshots and logfiles of taskluckyBackupWindowPokreniRunluckyBackupWindowP&laniraj S&cheduleluckyBackupWindow<Vratiti na Standardne postavkeSet as DefaultluckyBackupWindow4Prika~i prozor informacijaShow information windowluckyBackupWindow4Prika~i prozor informacija+hide/show information window button tooltipShow information windowluckyBackupWindow2Prika~i tekst ispod ikonaShow text under iconsluckyBackupWindow IzvorSourceluckyBackupWindowZZaustavi izvraavanje pokrenutog zadatka ODMAH'Stop the execution of running tasks NOWluckyBackupWindowPUspjeano kreiran descinaciski direktorij)Successfuly created destination directoryluckyBackupWindowZadatakTaskluckyBackupWindowLista zadataka Task listluckyBackupWindow,Lista zadataka profilaTask list of profileluckyBackupWindowOpis profilaThe description of profileluckyBackupWindowXIme koje ste unijeli sadr~i neva~ee znakove:The name you have entered contains only invalid charactersluckyBackupWindowOvo e pokrenuti <b>simulaciju </b> ali to nee u initi nikakve izmjene ( ali e izazvati isti prikaz deaavanja kao u pravom izvraenju){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow4Profil se ne mo~e otvoritiUnable to open profileluckyBackupWindowvKoristite 'okvir za izbor' kako bi izabrali ~eljeni zadatak>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowBPrikaz/izmjena profile-ovog Opisa!View/Edit the profile descriptionluckyBackupWindowUPOZORENJEWARNINGluckyBackupWindowDobrodoali u Welcome toluckyBackupWindow.}elite li da se obriae:Would you like to also remove:luckyBackupWindowFDa li ipak ~elite radnju izvraiti ?!Would you like to proceed anyway?luckyBackupWindowHDa li ~eliti da ih zamjenite novim ?Would you like to replace it ?luckyBackupWindowbda li ~elite snimiti promjene prije zatvaranja ?-Would you like to save it before proceeding ?luckyBackupWindowDaYESluckyBackupWindowpVi zahtjevate da POVRATITE svoje odatke odnosno RESTORE /You have asked for a RESTORE task to be createdluckyBackupWindowjDosegli ste maksimalno ograni enje podr~anih zadataka5You have reached the maximum limit of supported tasksluckyBackupWindow`Morate izbrisati zadatak kako bi dodali drugi !!7You have to remove a task if you wish to add another !!luckyBackupWindowXnovi prazan e sa istim imenom biti kreiran 4a new blank one, with the same name, will be createdluckyBackupWindow dodajaddluckyBackupWindowdodaj zadatakadd taskluckyBackupWindowSvakako postojialready existsluckyBackupWindow>i dodaj na popisu liste profilaand added at the profile listluckyBackupWindownte eventualno neato promijenite prije izvraenja zadatka.and change anything you wish before proceedingluckyBackupWindowkaoasluckyBackupWindowkaoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowPrera unavanje calculatingluckyBackupWindowizra unavam-info message displayed during ...calculations calculatingluckyBackupWindowIzlazne naredbecommands outputluckyBackupWindow Uspjeano kreirancreated successfullyluckyBackupWindow<Kreiranje osnovnog profila ...creating default profile ...luckyBackupWindow*kreiranje profila ...creating profile ...luckyBackupWindowbcurrent crontab <font color=green>updated uspjaan6current crontab updated successfullyluckyBackupWindowTrenutni profilcurrent profileluckyBackupWindow2uspjeano brisanje profiladeleted successfullyluckyBackupWindow"Brisanje Datotekadeleting filesluckyBackupWindow"Brisanje Datoteka/info message displayed during ...file deletionsdeleting filesluckyBackupWindow~display - restore - delete existing backups of highlighted task?display - restore - delete existing backups of highlighted taskluckyBackupWindow\prikazat informacije u vezi istaknutog zadatka.display information regarding highlighted taskluckyBackupWindow,Duplikacija uspjeana uduplicated successfully asluckyBackupWindow greaka pronaena errors foundluckyBackupWindow$izvraenje profila:execution of profile:luckyBackupWindow$izvraenje profila:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow,Brisanje nije uspjeanofailed to removeluckyBackupWindowZavraenofinishedluckyBackupWindow gotovo:full phrase: 'Execution of profile finished'finishedluckyBackupWindow*uspjeano importovanjeimported successfullyluckyBackupWindowIzvraavam...in progress...luckyBackupWindow DodajincludeluckyBackupWindownije validan zais not valid forluckyBackupWindow0prei na sljedeu greakujump to next errorluckyBackupWindow2prei na prethodnu greakujump to previous errorluckyBackupWindow&o itavanje uspjeanoloaded successfullyluckyBackupWindow>O itavanje osnovnog profila ...loading default profile ...luckyBackupWindow*O itavanje neuspjeanoloading failedluckyBackupWindow.O itavanje profila ...loading profile ...luckyBackupWindow>logfile je kreiran u direktorj:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow6Minimizuj u sistemsku trakuminimize to trayluckyBackupWindow<smani prozor u sistemsku traku%minimizes the window to the tray arealuckyBackupWindowizmjeni modifyluckyBackupWindow0izmjeni ozna eni zadatakmodify highlighted taskluckyBackupWindow niata za uraditi nothing to doluckyBackupWindowBnaredba nakon izvraavanja zadatkapost-task execution of commandluckyBackupWindowBnaredba prije izvraavanja zadatkapre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow ProfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow ProfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow profilprofile luckyBackupWindowOsvje~en refreshedluckyBackupWindowizbriairemoveluckyBackupWindow0izbriai ozna eni zadatakremove highlighted taskluckyBackupWindow2Preimenovanje uspjeano zarenamed successfully toluckyBackupWindow2Preimenovanje uspjeano zaWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowrrsync i pre/post task povratne naredbe su prikazani ovdje9rsync and pre/post task commands output is displayed hereluckyBackupWindow"uspjeano snimljensaved successfullyluckyBackupWindow:snimanje osnovnog profila ...saving default profile ...luckyBackupWindow(snimanje profila ...saving profile ...luckyBackupWindowplanirano scheduledluckyBackupWindow2vrati standardne Postavkeset as defaultluckyBackupWindowpostaviti kaoset toluckyBackupWindowSimulaciski modsimulation modeluckyBackupWindow statusstatusluckyBackupWindowSuper Korisnik super userluckyBackupWindow6Super korisni ki na in radasuper user modeluckyBackupWindow transfer fajlovatransferring filesluckyBackupWindow transfer fajlova/info message displayed during ...file transferstransferring filesluckyBackupWindowverzija :version:luckyBackupWindow2izra unavanje diferencijeCalculate differences manageDialogzatvoriClose manageDialog&zatvori ovaj prozorClose this window manageDialogizbriaiDelete manageDialoghIzbriai izabrane snapshot-ove i njihove logfile-ove,Delete the selected snapshot and its logfile manageDialogfNemam dovoljna prava kako bi o itao ovaj direktorij;I do not have sufficient permissions to read this directory manageDialog<Molm izaberi snapshot iz liste&Please select a snapshot from the list manageDialogpovratiRestore manageDialog6Povrati izabrnog snapshot-aRestore the selected snapshot manageDialog4Ovaj direktorij ne postojiThis directory does not exist manageDialog4Ovaj direktorij ne postojiInformation messageThis directory does not exist manageDialogHPrika~i logfile izabranog snapshot-a)View the logfile of the selected snapshot manageDialogPPrika~i logfile za izabrane sync zadatke*View the logfile of the selected sync task manageDialogOdrediate: destination: manageDialogsakrji izvor hide source manageDialogFluckyBackup - upravljanje beckup-omluckyBackup - manage backup manageDialognije dostupno not available manageDialog profilprofile manageDialog izvor:source: manageDialogsync dir A sync dir A manageDialogsync dir B sync dir B manageDialogzadataktask manageDialogprikaz log-aview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardprekiniABORT manageWizardponiatiAborted manageWizard backup odrediate Backup path manageWizardNPrika~i lokalno za novi restore putanju%Browse locally for a new restore path manageWizardKlikni ovo, da bi kloniro backup snapshot-a u obnovljenom direktorij.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum & vrijeme Date & time manageWizardizbriai backup Delete backup manageWizardlIzbriaite postojee podatke koji ne postoje u backup-a4Delete existing data that do not exist at the backup manageWizard"Brisanje podataka Deleting data manageWizardnBrisanje datoteka koje su u listi snapshot-a izmjenjeni)Deleting file that lists snapshot changes manageWizard4brisanje snapshot logfil-aDeleting snapshot logfile manageWizardPostojea sigurnosna kopija Datoteka e zamijeniti odgovarajue datoteke u obnovljenom direktorij SExisting backup files will replace the corresponding files at the restore directory manageWizardizvraenoFinished manageWizardAko su gore naveden informacije ta ne, klikni <b>start</b> da bi po eo@If the information above is correct, click start to begin manageWizardAko su navedene informacije ta ne, klikni <b>start</b> kako bi po eo`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard.prika~i sljedeu greakuJump to next error manageWizard.prika~i prijaanu greakuJump to previous error manageWizard|Nema zadanog snapshot-a podataka koji postoji. Preskakanje ...,No snapshot specific data exist. Skipping... manageWizardodrediatePath manageWizardpovrat backup-aRestore backup manageWizard"restore odrediate Restore path manageWizardFObnavljanje podataka: glavni stabalRestoring data: main trunk manageWizardNObnavljanje podataka: snapshot datotekaRestoring data: snapshot files manageWizardBIzaberi novi restore direktorij Select new restore directory manageWizardvObnovljeni direktorij e biti identi an snapshot-u backup-aBThe restore directory will become identical to the backup snapshot manageWizardOvo ce pokrenuti <b> simulaciju </b> ali nee u initi nikakve promjene (ono e obi no izazvati isti output kao kod pravog izvraenja){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardHaktueliziram listu sa snapshot-ovimaUpdating list of snapshots manageWizardUPOZORENJEWARNING manageWizard<time ~elia da izbriaea backup #You are about to delete backup data manageWizardponiaticancel manageWizardizmjenichange manageWizardzatvoriclose manageWizard greaka pronaena errors found manageWizardNe uspjeanofailed manageWizardNe uspjeano-info message displayed after ...file deletionfailed manageWizardHluckyBackup - upravljenje backapa-omluckyBackup - manage backup manageWizardsljedea greaka next error manageWizardnema greaaka no errors manageWizardnije dostupno not available manageWizard predhodna greakaprevious error manageWizardsimulacija simulation manageWizard startstart manageWizarduspjeansuccess manageWizarduspjean-info message displayed after ...file deletionsuccess manageWizarduspjeano5info message displayed after ...snapshots list updatesuccess manageWizardv'Udaljeni ra unar' je dodat, ali nije izabrano ime za istog='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>nemoj zaboravitit</b> difinisati direktorij 'izba en' groupbox koji e sadr~avati odrediatefDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogDodaj bilo koji direktoriji, datoteku ili uzorak kako bi bio isklju en iz ovog zadatka@Add any directory, file or pattern to be excluded from this task modifyDialogDodaj bilo koju datoteku, direjtorij ili uzorak kako bi bio obuhvaen u ovom zadatku>Add any directory, file or pattern to be included by this task modifyDialog0Dodajte naredbu u polju *Add command as entered in the field beside modifyDialog`Dodaj izuzimanje kao mogunost u sljedeem polju*Add exclusion as entered in the next field modifyDialog>Izaberite ata sve ~elite dodati*Add inclusion as entered in the next field modifyDialogDodaj ili briai rsync opciju. Ako neznate ata se time misli, onda nemojte ih ni dirati !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialog8Dodajte rsync opciju u polju-Add rsync option as entered in the next field modifyDialogViae opcijaAdvanced modifyDialogposlijeAfter modifyDialog` ini se kako e sve postavke dobro funkcionisati?All declared fields of the task properties window seem to be ok modifyDialogTakoer Izvrai Also Execute modifyDialogBackup datoteke Backup files modifyDialog PrijeBefore modifyDialog cache direktorij Cache folders modifyDialogPoniatiCancel modifyDialogIzabiranjem ovoga ti koristia FAT / NTFS particiju kao destinaciju. Podaci vlasniatvo i prava nee biti sa uvani. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialog^Kliknite ovdje za povezivanje sa Remote modulom/Check this to connect to an rsync Remote module modifyDialogOpciske komandeCommand Options modifyDialogKomandna lista Command list modifyDialog|Kopiraj ureaj (za administratora) & kao posebne datoteke (-D)?Copy device (super user only) & special files as they are (-D) modifyDialog:kopiraj symlinks kao symlinksCopy symlinks as symlinks (-l) modifyDialogOdredite vrstu ovog zadatka: 1. Sigurnosna kopija sadr~aja izvora unutar Odrediata 2. Sigurnosna kopija izvornog direktorija po imenu unutar Odrediata 3. Sinhroniziranje izvor & odrediate, imajui najnovije datoteke na obje straneDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog:Izbriai datoteke iz odrediataDelete files on the destination modifyDialogOpis Description modifyDialogOdrediate Destination modifyDialogOdrediate : Destination : modifyDialog.Destinacija je FAT/NTFSDestination is FAT/NTFS modifyDialogNemoj backupovati izvorne datoteke koje su u odrediatu novijeg datuma (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNe isklju uje ovaj popis obrazaca. Molimo pogledajte priru nik za bolje razumijevanje pravila.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogUnesite ime za ovaj zadatak (npr. "Backup mog va~nog direktorija"):Enter a name for this task (eg "Backup my home directory") modifyDialogMolimo unesite naredbu za izvraiti nakon zadatak, a zatim kliknite "Dodaj" da bi ste je dodali na popis u nastavkunEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogMolimo unesite naredbu za izvraiti prije zadatak, a zatim kliknite "Dodaj" da bi ste je dodali na popis u nastavkuoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogzUnesi rsync opciju za dodati (npr: "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialog>Ovdje unesite datoteke, direktorij ili uzorak, a zatim pritisnite "dodaj" tipku da bi ste je dodali na popis "oduzmi" * - Odgovara bilo kojem ne-praznom komponentu (te se zaustavlja na kosu crtu) ** - Odgovara svemu, uklju ujui i kose crte ? - Odgovara bilo kojem znaku osim kosoj crti posljednij dir_name / *** - odgovara oba direktorija & svega u njemu Po etna / - uzorak se ukorjenio u posebno mjesto u hijerarhiji prijenosa (normalno to je "izvor") posljednji / - odgovara samo direktorij, nije regularna datoteka, symlinks-u ili ureaju Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialog<Ovdje unesite datoteke, direktorij ili uzorak, a zatim pritisnite "dodaj" tipku da bi ste je dodali na popis "dodaj" * - Odgovara bilo kojem ne-praznom komponentu (te se zaustavlja na kosu crtu) ** - Odgovara svemu, uklju ujui i kose crte ? - Odgovara bilo kojem znaku osim kosoj crti posljednij dir_name / *** - odgovara oba direktorija & svemu u njemu Po etna / - uzorak se ukorijenio u posebno mjesto u hijerarhiji prijenosa (normalno to je "izvor") posljednji / - odgovara samo direktorij, nije regularna datoteka, symlinks-u ili ureajuEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogUnesite cijelu putanju odredianog direktorija (npr /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogUnesite cijeli put do datoteke koja sadr~i privatni ssh klju za provjeru vjerodostojnosti (ostavite prazno ako nije primjenjivo). Imajte na umu, da morate obaviti sve potrebo, kako bi mogli stvoriti ssh vezu koristei OpenSSH klju Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogUnesite cijeli put datoteke koja sadr~i rsync (ne ssh) autentifikacija lozinke (ostavite prazno ako nije primjenjivo).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogUnesite cijelu putanju izvornog direktorija (npr /home/luckyb/) >Enter the full path of the source directory (eg /home/luckyb/) modifyDialog:Unesite ime udaljenog server."Enter the name of the remote host. modifyDialogUnesite port koji ~elite koristiti za ssh vezu (ostavite prazno ako je standardni port)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogUnesite vaae korisni ko ime za udaljeni server (ostavite prazno ako nije primjenjivo).HEnter your username for the remote host (leave blank if not applicable). modifyDialog Pronaena greakaErrors have been found modifyDialog OduzmiExclude modifyDialoglIsklu i sve "lost+found" direktorije (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialog`Isklju i sve backap datoteke & direktorij' (**~)(Exclude all backup files & folders (**~) modifyDialogtIsklju i sve cache direktorije (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogRIsklju i sve temp direktorije (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogIsklju i sve korisni ke trash (korpa) direktorije (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogLista oduzetog Exclude list modifyDialogIsklju i sistemske mount direktorije /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogfIzvrai dodatnih naredbi, prije ili poslije zadatak.1Execute extra commands, before or after the task. modifyDialogIzvrai zadatak  ak i ako se pojavi s porukom upozorenja Obi no se koristi kada "Izvrai Prije" naredbe mo~ete popraviti upozorenja (npr. mount particije) PA}NJA: Ozna i ovo samo ako stvarno znaa ata radiaExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog4Posebna rsync lista opcijaExtra rsync options list modifyDialogDatoteke koje su fizi ki povezane (hard-link), takoer e biti na odrediatu. UPOZORENJE: Sve datoteke moraju biti uklju ene u prijenos!! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog6Presko i datoteke CVS vrsteIgnore files the CVS way modifyDialogZPrsko i datoteke koristei algoritam CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogObuhvatiInclude modifyDialog Dodaj Include list modifyDialog}eljeni modus Include mode modifyDialog Modus:Mode: modifyDialog Ime :Name : modifyDialog"Normalno obuhvatiNormal Include modifyDialogOkOkay modifyDialog Dodaj Only Include modifyDialogZa lokalno upravljanje treba se isklju iti opcija 'Udaljeni ra unar'2Otherwise uncheck 'Remote Host' to operate locally modifyDialogjMolim definiraj izvor prije pokretanja mustru editoraOdaberite odrediani derektorijiSelect destination directory modifyDialogFOdaberi datoteku za izbaene uzorke$Select file to read exclude patterns modifyDialogJOdaberi datoteku za obuhvaene uzorke$Select file to read include patterns modifyDialog>Odaberite rsync file za lozinkuSelect rsync password file modifyDialog8Odaberite izvorni direktorijSelect source directory modifyDialog*Odaberite ssh keyfileSelect ssh keyfile modifyDialogpPostavi totalni broj backup snapshot-ova kako bi zadr~ao0Set the total number of backup snapshots to keep modifyDialogbPrikazuje rsync naredbe kao kada bi se izvraavale.Shows the rsync command as it will be executed modifyDialogDPresko i novije odrediane datotekeSkip newer destination files modifyDialog.Snapshot da bi zadr~ao:Snapshots to keep: modifyDialog IzvorSource modifyDialogIzvor :Source : modifyDialogBSinhronizacija Izvora i Odrediate"Synchronize Source and Destination modifyDialog(Sistemski direktorijSystem folders modifyDialog6Sistemske mount direktorijeSystem mount folders modifyDialogOpis zadatkaTask description modifyDialogIme zadatka Task name modifyDialog Svojstva zadatkaTask properties modifyDialogTemplates Templates modifyDialog(Temporary derektorijTemporary folders modifyDialogZTo nije dozvoljeno jer '/' nema stvarni naziv <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Planifier l'excution du profil</span></p></body></html>

Profile execution scheduling

scheduleDialog@ restartaj@ rebootscheduleDialog"Dodaj novi terminAdd a new profile schedulescheduleDialogDodaj terminAdd profile schedulescheduleDialog SvakiAnyscheduleDialog AprilAprilscheduleDialog Aprilfull phrase: 'of April'AprilscheduleDialogfJesi li siguran da zelia zatvoriti prozor termina ?4Are you sure you want to close the schedule dialog ?scheduleDialog AugustAugustscheduleDialog Augustfull phrase: 'of August'AugustscheduleDialogPrekiniCancelscheduleDialogzMarkirati samo ako vaaa maaina ne podr~ava grafi ko okru~enjeOCheck this if your machine does not support a graphical environment (eg server)scheduleDialog&Konsolni na in rada Console ModescheduleDialogDecembarDecemberscheduleDialogDecembarfull phrase: 'of December'DecemberscheduleDialog4Prikazi trenuta ne crontabDisplay the current crontabscheduleDialogPokreni ProfilExecute profilescheduleDialogFebruarFebruaryscheduleDialogFebruarfull phrase: 'of February'FebruaryscheduleDialog PetakFridayscheduleDialogPogreaan profilInvalid profilescheduleDialog JanuarJanuaryscheduleDialog Januarfull phrase: 'of January'JanuaryscheduleDialogJuliJulyscheduleDialogJulifull phrase: 'of July'JulyscheduleDialogJuniJunescheduleDialogJunifull phrase: 'of June'JunescheduleDialogMartMarchscheduleDialogMartfull phrase: 'of March'MarchscheduleDialogMajMayscheduleDialogMajfull phrase: 'of May'MayscheduleDialogIzmijeni terminModify profile schedulescheduleDialogIzmjeni termin Modify selected profile schedulescheduleDialogPonedjeljakMondayscheduleDialog,Termini nisu zadani !!No schedules are declared !!scheduleDialogNovembarNovemberscheduleDialogNovembarfull phrase: 'of November'NovemberscheduleDialogOktobarOctoberscheduleDialogOktobarfull phrase: 'of October'OctoberscheduleDialogProfil : Profile :scheduleDialogDetaljiProfile schedule detailsscheduleDialogOtkloni termin Remove selected profile schedulescheduleDialog.Pokreni jednom u startuRun once, at startupscheduleDialog SubotaSaturdayscheduleDialogSeptembar SeptemberscheduleDialogSeptembarfull phrase: 'of September' SeptemberscheduleDialogPresko i zadatake koji su definisani kao 'KRITI NO' nakon provjere direktorij SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialogStartajStarting from scratchscheduleDialogNedjeljaSundayscheduleDialog^Termin koji postoji nije validan luckyBackup-u.8The existent schedule file is not a valid luckyBackup v.scheduleDialog etvrtakThursdayscheduleDialog UtorakTuesdayscheduleDialogDNije mogue kreirati corn datotekuUnable to create cron filescheduleDialogHNemogue je kreirati termin datotekuUnable to create schedule filescheduleDialogSrijeda WednesdayscheduleDialoghNapravili ste izmjene a niste klikli na cronIT tastu8You have made changes without clicking the cronIT buttonscheduleDialogZDostigli ste maksimalan broj moguih profilaBYou have reached the maximum limit of supported scheduled profilesscheduleDialognTrebate da otklonite objekat kako bi mogli dodati drugi5You have to remove an item if you wish to add anotherscheduleDialogJTvoj crontab je uspjeano aktueliziran$Your crontab is updated successfullyscheduleDialog dodajaddscheduleDialoguatscheduleDialogzatvoriclosescheduleDialog&Zatvori ovaj prozorclose this dialogscheduleDialogRaspored !! cronIT !!scheduleDialogcrontab kontentcrontab contentscheduleDialogdanadayscheduleDialogdan u mjesecu :day of month :scheduleDialogdan u sedmici : day of week :scheduleDialog svakieveryscheduleDialog(luckyBackup - terminluckyBackup - schedulescheduleDialogizmijenimodifyscheduleDialogmjesec :month :scheduleDialog-ogndscheduleDialog-ogas in 22nd dayndscheduleDialog0Ne postoji crontab unosano crontab entries existscheduleDialogmjesecaofscheduleDialogsvakog mjeseca of any monthscheduleDialogOkokayscheduleDialog2jednom kada sistem startaonce, at system startupscheduleDialog-egrdscheduleDialog-egas in 23rd dayrdscheduleDialogOtkloniremovescheduleDialogvPlan izvraenja profila kao ato je navedeno u gornjem popisu@schedule the execution of profiles as declared in the list abovescheduleDialog"Presko i kriti no skip criticalscheduleDialog-ogstscheduleDialog-ogas in 21st daystscheduleDialog-ogas in 31st daystscheduleDialog-ogthscheduleDialog-ogas in 10th daythscheduleDialog-ogas in 11th daythscheduleDialog-ogas in 12th....19th daythscheduleDialog-ogas in 20th daythscheduleDialog-ogas in 24th...30th daythscheduleDialog-og as in 8th daythscheduleDialog-og as in 9th daythscheduleDialog,vrijeme (sat:minuti) :time (hour:min) :scheduleDialogPrikazi crontabview current crontabscheduleDialogDProfil sa istim imenom ve postoji+A profile with the same name already exists textDialogLJesi li siguran da zelia da nastavia??#Are you sure you wish to proceed ?? textDialogUPOZORAVAM, ako tvoja namjera NIJE klon izvora prema odrediata !!BBEWARE, if your intention is NOT to clone source to destination !! textDialogPoniatiCancel textDialog:Kopiraj komandu u clipboard-uCopy command to clipboard textDialogFNe prikazuj ovo viae u ovom zadatku$Do not show this again for this task textDialog0Unesite phrase lozinku :Enter passphrase : textDialog"Unesite lozinku :Enter pasword : textDialog:Unesite naziv novog profila :#Enter the name of the new profile : textDialog:Unesite novi naziv profila :#Enter the new name of the profile : textDialogNeNo textDialogOkOkay textDialog4Molimo unesite drugi nazivPlease enter a different name textDialogOpis profila :Profile description : textDialogDaYes textDialogOdabrao si 'Backup sadr~aj izvornog direktorij' zajedno sa opcijom 'izbrisati datoteke sa odrediata 'You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogluckyBackup luckyBackup textDialogOkOkay winDialog Prika~i lokacijubrowse locally winDialogluckyBackup luckyBackup winDialog ) , luckybackup-0.5.0/translations/luckybackup_sk.qm0000666000175000017500000024247013157502317021510 0ustar luckybluckybB)KYT]gg]g/hY-Wf ffvSw-TEI454N~@arawaa$3a0a1vh6@KvVEwK({Y*`3*0+++/]^;:BTEttFZ9WGJ6qJ;JwBrPd%0Pd|PdTrmj6cj6~j6 j6/mCdtdg9x.z }-E2bL3Z.a/w>ĉP5&ى>=fGr(9(e'+&g6Fޟ<$QRM[{_/^`fC-hqipN`pNq>xtcgl-ѐS^i% Գ  ,'p _[;bRK H&oFI\c)c"f:uCOi2sRWj^R@*g(1 +0CϔrN݄Plԥ{*oVK[%&EmG2ҐDO ^ d&Q4)4)],b8My)T_rUnh !a.e C.e/xTcm! t![Ms#؉Ň 4[rܯ"8be]u bqsQOITiYzmi^̀r;t<}7;7:tIpII KI/xI0I1FV,H ./OHe8F `+ ?+d"i >8n#I=ȅ pnn>p^'txvR?y~iѮ9ȕYȕȕg:î"  M( !* ! # / d 9)r` < >m @ee A.: Eh FW F.$ N0 X ^, on o9 r'^ ? ^ bk j  A " h:  t T( sH 2aI RbU  ?BM  ; s_2 @ &, ) *}E + ,D ,D 69 \.~2 cC i {o e { / {   ms” Xw ' fw za j [ "' , #t 䕜r , c2k 8 81 81  6D=+.;ZC}Ե'~E7߹GJ Tba\PaשcRgmRop{>Kyi({=rP<S{HR>4$rDuN֭ 3px{d4tU"$< eO#!&)N_(դ)u(դN-X`E^G E9#RN>[=Eccf/~lnF~(NxY[ی4TfC$]t0X)yiByvʱNu.֙S?rG-ߖ+]]%0.˦5i10Vypo tavaj sa rozdielyCalculating differencesCalcDiffThreadnMno~stvo dt je obrovsk. Zobrazuj sa iba prv zznamy2Data amount is huge. Displaying only first entriesCalcDiffThread akajte prosm Please waitCalcDiffThread$Preh>adva sa cie>Scanning destinationCalcDiffThread(Preh>adva sa snmkaScanning snapshotCalcDiffThread$Preh>adva sa cie>Scanning sourceCalcDiffThread0Rozdiely snmky a zdrojaSnapshot and source differencesCalcDiffThreadlDta snmky, ktor u~ existuj v zdroji a s rozdielne=Snapshot data that also exists at the source and is differentCalcDiffThreadLDta snmky, ktor NEEXISTUJ v zdroji-Snapshot data that do NOT exist at the sourceCalcDiffThreadLDta zdroja, ktor NEEXISTUJ v snmke-Source data that do NOT exist at the snapshotCalcDiffThreadRSynchronizcia rozdielov prie inkov A & BSync dir A & B differencesCalcDiffThreadDta synchronizovanho prie inka A, ktor NEEXISTUJ v synchronizovanom prie inku B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadDta synchronizovanho prie inka B, ktor u~ existuj v synchronizovanom prie inku A s rozdielne?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadDta synchronizovanho prie inka B, ktor NEEXISTUJ v synchronizovanom prie inku A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadZDta snmky nahradia po as OBNOVY dta zdroja=The snapshot data will replace the source data during RESTORECalcDiffThreadTieto bud po as OBNOVY zmazan iba vtedy, ak povolte tto mo~nose:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadlzmazae existujce zdrojov dta, ktor nie s v zlohe;delete existing source data that do not exist at the backupCalcDiffThreadKRITICKCRITICALQObjectDNie je mo~n otvorie sbor zznamuCould not open the logfileQObjectCie> DestinationQObject"Cie>ov prie inokDestination directoryQObjectPrie inok DirectoryQObject~Nie je prvo pre  tanie/vstup do synchronizovanho prie inka A;I do not have the permission to read/enter sync directory AQObject~Nie je prvo pre  tanie/vstup do synchronizovanho prie inka B;I do not have the permission to read/enter sync directory BQObjectjNie je prvo pre  tanie/vstup do cie>ovho prie inkaDI do not have the permission to read/enter the destination directoryQObjectlNie je prvo pre  tanie/vstup do zdrojovho prie inka?I do not have the permission to read/enter the source directoryQObjectTto loha sa <font color=orange><b>nepresko </b></font>. Synchronizcia bude aj tak vykonaniI will not skip this task. Synchronizing is going to be performed anywayQObjectTto loha sa<font color=red><b>NEPRESKO </b></font>, preto~e je povolen mo~nose "obse VAROVANIE"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject0 as poslednho vykonaniaLast execution timeQObjectOKOKQObjectProsm <b>zruate ozna enie prsluanho boxu zahrnutia</b> pred vykonanmAPlease uncheck appropriate include boxes before proceedingQObjectProsm zruate ozna enie prsluanho boxu zahrnutia, alebo zmeHte vaetky typy loh na in ne~ '<b>Zlohovae obsah prie inka</b>' alebo pou~ite 'Zlohovae obsah prie inka' spolu s mo~noseou '<b>Iba zahrne</b>' pred vykonanmPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject ZdrojSourceQObject$Zdrojov prie inokSource directoryQObject0Synchronizovae prie inokSync directoryQObject Synchronizuje saSyncingQObject Synchronizuje sa'Full phrase: Syncing to SyncingQObjectPopis lohyTask descriptionQObjectCie>ov prie inok bude vytvoren ak neexistuje a bude vyplnen novmi zlo~nmi dtami]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject6Nasledujce zahrnut lohy <b>zdie>aj ten ist cie>ov prie inok</b> (vaetky dokopy alebo v skupinch) a aspoH jedna z nich bude zlohovae obsah prie inkaThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject:Sbor zznamu nebol vytvoren The logfile could not be createdQObject0Sbor zznamu neexistujeThe logfile does not existQObject*Proces nahlsil chybuThe process reported an errorQObjectRZadan prkaz zrejme nie je nainatalovan/The specified command is probably not installedQObject,Zoznam loh je przdnyThe task list is emptyQObjectdTto loha <font color=orange><b>nebude presko en3This task will not be skippedQObjectpTto loha bude <font color=red><b>presko en</b></font>7This task will be skippedQObjectPou~va sa vzdialen hostite>sk po ta , overenie je presko enUsing remote, check is skippedQObjectVAROVANIEWARNINGQObjectVZahrnuli ste obe nasledujce spojen lohy:8You have included both of the following connected tasks:QObject6Nezahrnuli ste ~iadne lohyYou have not included any tasksQObjecta/aleboand/orQObjectprkaz:  command: QObjectneexistujedoes not existQObject$boli njden chyby errors foundQObject6vykonanie prvej  asti lohyexecution of 1st part of taskQObject6vykonanie prvej  asti lohy?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject8vykonanie druhej  asti lohyexecution of 2nd part of taskQObjectvykonanie lohyexecution of taskQObjectvykonanie lohy3Full phrase: execution of task: finishedexecution of taskQObjectvykonanie lohydFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectkd ukon enia:  exit code: QObjectdokon enfinishedQObjectdokon en?Full phrase: execution of 1st part of task: finishedfinishedQObjectdokon en3Full phrase: execution of task: finishedfinishedQObjectdokon enCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectdokon en z dvodu chyby vo vykonan prkazu pred alebo po lohe9finished because of pre/post task command execution errorQObjectje przdnyis emptyQObject8je przdny, alebo neexistujeis empty or does not existQObject nie je pripojenis not mountedQObjectbez chb no errorsQObjectnedostupn not availableQObjectnie je  o za aenothing to startQObjectvstup:  output: QObject4vykonanie prkazu po lohepost-task execution of commandQObject4vykonanie prkazu po loheCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject:vykonanie prkazu pred lohoupre-task execution of commandQObject:vykonanie prkazu pred lohouBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectsa spaeastartingQObjectsa spaea?Full phrase: execution of 1st part of task: startingstartingQObjectsa spaea?Full phrase: execution of 2nd part of task: startingstartingQObjectsa spaea3Full phrase: execution of task: startingstartingQObjectsa spaea?Full phrase: post-task execution of command: startingstartingQObjectstavstatusQObjectPtoto nie je zo zrejmch dvodov povolen'this is not allowed for obvious reasonsQObjecthtoto povedie k tomu, ~e jedna loha bude ruaie druh.this will lead to one task canceling the otherQObjectvo itoQObjectvo i'Full phrase: Syncing to toQObjectDNie je mo~n otvorie sbor zznamuCould not open the logfile ReadLogFile&O aplikcii&About aboutDialog &Licen n zmluva&License Agreement aboutDialog&Podpora&Support aboutDialog&Poakovanie &Thanks to aboutDialog...mojej druhej polovi ke, <b>Dimitre</b>, ktor je so mnou po cel dobu vvoja tohoto projektuj...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog0...vaetkm pou~vate>om ...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog A&utorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialogAphofis Scott Aphofis Scott aboutDialogXPrekladate> grafickho rozhrania do arab inyArabic gui translator aboutDialogtBal ek pre Arch linux a oficilny sprvca pkgbuildu (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialogAtny, GrckoAthens, Greece aboutDialogTAplikcia pre zlohovanie a synchronizciuBackup & Sync Application aboutDialogPrekladate> grafickho rozhrania do bosnianatiny a sprvca bal ka pre Mandrivu4Bosnian gui translator & mandriva package maintainer aboutDialog^Prekladate> grafickho rozhrania do kataln inyCatalan gui translator aboutDialog>Sbor s licenciou nebol njden!Could not locate the license file aboutDialogVPrekladate> grafickho rozhrania do  eatinyCzech gui translator aboutDialog4Sprvca bal ka pre DebianDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialog^Prekladate> grafickho rozhrania do holandatinyDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialog`pecilne Especially aboutDialog`Sprvca bal ka pre Fedoru (oficilny repozitr))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog`Prekladate> grafickho rozhrania do franczatinyAFrench gui translator and valuable packing advisor (and not only) aboutDialog4Sprvca ebuildu pre GentooGentoo ebuild maintainer aboutDialogVPrekladate> grafickho rozhrania do nem inyGerman gui translator aboutDialog$Dae palec hore na:Give a thumbs up at: aboutDialogvPrekladate> grafickho rozhrania do gr tiny a cenn tester(Greek gui translator and valuable tester aboutDialog8Prekladate> grckej prru kyGreek manual translator aboutDialogOsobne som za tento projekt nikdy nemal nejak peniaze a nikdy ich za neho neprijmem.DI personally never had and never will accept money for this project. aboutDialogKeby nebolo jeho a jeho nvodov, nikdy by som neza al s tmto projektomJIf it wasn't him and his tutorials I would never have started this project aboutDialogAk sa vm tto aplikcia p i a chceli by ste mi osobne nie o darovae, vaetko,  o muste urobie je:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogXJe to <b>slobodn softvr</b>: m~ete ho arie a/alebo upravovae za podmienok GNU General Public License tak, ako s zverejnen Free Software Foundation, verzia 3 Licencie.It 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, version 3 of the License. aboutDialog0Je aren v ndeji, ~e bude u~ito n, ale BEZ AKEJKO=VEK ZRUKY; rovnako bez ml ky predpokladanej zruky PREDAJNOSTI alebo VHODNOSTI PRE KONKRTNY  EL.It 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. aboutDialog\Prekladate> grafickho rozhrania do talian inyItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialog$V neposlednom radeLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialogzSprvca bal ka pre Mandrivu (oficilne poskytnut repozitr)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialogSprvca bal ka pre Mepis (Komunitn repozitr) a prekladate> grafickho rozhrania do apaniel inyBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogAj napriek tomu som sa rozhodol, ~e pou~ijem luckyBackup na podporu >ud, ktor finan n pomoc naozaj potrebuj.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogSprvca bal ka pre OpenSUSE (Komunitn repozitr KDE4) a cenn poradca pre balenieNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialog`Prekladate> grafickho rozhrania do portugal inyPortuguese gui translator aboutDialog>}ivite> ateniatka a sprvca sfsPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogZPrekladate> grafickho rozhrania do rumun inyRomanian gui translator aboutDialogtPrekladate> grafickho rozhrania do ruatiny a cenn tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogrPre alaie podrobnosti si prezrite kartu Licen n zmluva.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog\Prekladate> grafickho rozhrania do slovin inySlovenian gui translator aboutDialogZv~te teda prosm peHa~n dar, ktor by sa  asom pou~il na dobr  el._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog^Prekladate> grafickho rozhrania do apaniel inySpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialogXPrekladate> grafickho rozhrania do avd inySwedish gui translator aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog(To je moja odmena :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogZPrekladate> grafickho rozhrania do ture tinyTurkish gui translator aboutDialogCenn poradcaValuable advisor aboutDialogLDae dobr hlas a stae sa fanaikom na:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogTvvojr pythonovho skriptu backupwhenidle&backupwhenidle python script developer aboutDialogzavrieeclose aboutDialogdarcovsk odkaz donation link aboutDialogBbval sprvca bal ka pre Fedoruex Fedora package maintainer aboutDialog,frum pre ich podporu.forums for their support. aboutDialog fri13fri13 aboutDialog.O aplikcii luckyBackupluckyBackup - about aboutDialogluckyBackup je aren za podmienok <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogpeHa~nmoney aboutDialognepeHa~nno money aboutDialog port na Mac OS Xport to Mac OS X aboutDialogport na OS/2 port to OS/2 aboutDialogvrobca rpm bal ka, cenn tester a poradca vo veciach vzdialenho pripojeniaadanie novch npadov*valuable tester & brainstorming specialist aboutDialog%b telo:%b body: emailDialog%d dtum%d date emailDialog %e ~iadne z chb%e No of errors emailDialog %f od:%f from: emailDialog %i  as%i time emailDialog %l sbor zznamu %l logfile emailDialog %p nzov profilu%p profile name emailDialog%s predmet: %s subject: emailDialog %t do:%t to: emailDialog%v smtp server:%v smtp server: emailDialog:Prijae zmeny a zavriee dialgAccept changes and close dialog emailDialogArgumenty Arguments emailDialog ZruaieCancel emailDialogZavriee dialg Close dialog emailDialogPodmienky Conditions emailDialoglPo vykonan profilu poslae sprvu elektornickou poatou&Email a report after profile execution emailDialog"Vyskytla sa chybaError(s) occured emailDialog NikdyNever emailDialog,Nikdy neposielae emailNever send an email emailDialogOKOkay emailDialoglPoslae len vtedy, ak sa po as spustenia vyskytne chyba,Only send when error(s) occured during a run emailDialogpPoslae len vtedy, ak je profil naplnovan pre spustenie*Only send when profile is scheduled to run emailDialog*Profil je naplnovanProfile is scheduled emailDialog|Poslae email hne teraz pre vyskaanie poskytnutch argumentov6Send an email right now to test the provided arguments emailDialogJUr ie podmienky pre posielanie emailu'Specify the conditions to send an email emailDialog SkakaTest emailDialog2Prkazov pole je przdneThe command field is empty emailDialog"Pou~ie predvolen Use default emailDialogprkaz:command: emailDialog&luckyBackup - emailluckyBackup - email emailDialogOKOkay helpBrowser,luckyBackup - prru kaluckyBackup - help helpBrowserprru ka/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogzavrieeclose logDialog8na tava sa sbor zznamu...loading logfile... logDialogFluckyBackup - postup vykonania loh&luckyBackup - tasks execution progress logDialog"nasledujca chyba next error logDialog(predchdzajca chybaprevious error logDialog po kaewait logDialog &%1 %2&%1 %2luckyBackupWindow&Preruaie&AbortluckyBackupWindow&O aplikcii&AboutluckyBackupWindowPrid&ae&AddluckyBackupWindow&Zmazae&DeleteluckyBackupWindowP&rru ka &HandbookluckyBackupWindow&Pomocnk&HelpluckyBackupWindow&Importovae&ImportluckyBackupWindow &Jazyk &LanguageluckyBackupWindowD&Minimalizovae do systmovej liaty&Minimize to trayluckyBackupWindowUpra&vie&ModifyluckyBackupWindow &Nov&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&Ukon ie&QuitluckyBackupWindow&Obnovie&RefreshluckyBackupWindowOdst&rnie&RemoveluckyBackupWindow&Obnovie&RestoreluckyBackupWindow&Ulo~ie&SaveluckyBackupWindowNa&stavenie &SettingsluckyBackupWindow &loha&TaskluckyBackupWindow &lohaThis is a top menu action&TaskluckyBackupWindow"P&anely nstrojov &ToolbarsluckyBackupWindow.&Zobrazie/upravie popis&View/Edit DescriptionluckyBackupWindowPRERU`ENABORTEDluckyBackupWindowPreruaieAbortluckyBackupWindowrPreruaenie: Prosm po kajte a~ bud vaetky procesy zabit4Aborting: Please wait for all processes to be killedluckyBackupWindow AkcieActionsluckyBackupWindowVaetky priamo svsiace sbory (zznamy a podobne) boli tie~ zmazan4All relevant files (logs etc) have also been deletedluckyBackupWindowVaetky priamo svisiace sbory (zznamy a podobne) boli tie~ zdvojen7All relevant files (logs etc) have also been duplicatedluckyBackupWindowVaetky priamo svisiace sbory (zznamy a podobne) boli tie~ aktualizovan4All relevant files (logs etc) have also been updatedluckyBackupWindow,Vaetky lohy dokon enAll tasks completedluckyBackupWindowHSte si ist, ~e chcete zmazae profil'Are you sure you want to delete profileluckyBackupWindow^Ste si ist, ~e chcete zmazae predvolen profil3Are you sure you want to delete the default profileluckyBackupWindowjSte si ist, ~e chcete odstrnie nasledujcu lohu ??5Are you sure you want to remove the following task ??luckyBackupWindowXZa ae s vykonvanm vaetkch zahrnutch loh)Begin the execution of all included tasksluckyBackupWindownKontroly s zakzan, Tto loha bude <b>presko en</b>5Checks are disabled. This task will be skippedluckyBackupWindow0Nie je mo~n njse sborCould not locate the fileluckyBackupWindowfNepodarilo sa obnovie  as poslednho vykonania loh-Could not update last execution time of tasksluckyBackupWindow SpadloCrashedluckyBackupWindow0Vytvorie z&dvojen lohuCreate D&uplicate taskluckyBackupWindow0Vytvorie obnov&en lohuCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowAktulny profilCurrent ProfileluckyBackupWindowZ&dvojie D&uplicateluckyBackupWindowPre&dvolieDe&faultluckyBackupWindow Popis DescriptionluckyBackupWindowCie> DestinationluckyBackupWindowPrie inok DirectoryluckyBackupWindow HotovoDoneluckyBackupWindowNa suchoDryluckyBackupWindow E&mailE&mailluckyBackupWindowE&xportovaeE&xportluckyBackupWindow CHYBAERRORluckyBackupWindowUKON IdEXITluckyBackupWindowUplynut  as Elapsed timeluckyBackupWindow|Nastavenie emailu bolo <font color=green>speane aktualizovanBEmail preferences have been updated successfullyluckyBackupWindowDSprva emailom po vykonan profilu$Email report after profile executionluckyBackupWindowSloven inaEnglishluckyBackupWindowSloven inaDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow"Vykonanie profiluExecution of profileluckyBackupWindow0Vykonanie loh dokon enExecution of tasks finishedluckyBackupWindowbVykonanie loh bolo nsilm ukon en pou~vate>om4Execution of tasks were terminated violently by userluckyBackupWindowUkon ieExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowLVytvorenie cie>ovho prie inka zlyhalo&Failed to create destination directoryluckyBackupWindowBZlyhalo vytvorenie novho profiluFailed to create new profileluckyBackupWindowZmazanie vaetkch priamo svisiacich sborov (zznamov a podobne) zlyhalo.Failed to delete all relevant files (logs etc)luckyBackupWindow0Zlyhalo zmazanie profiluFailed to delete profileluckyBackupWindowZlyhalo zdvojenie vaetkch priamo svisiacich sborov (zznamov a podobne)1Failed to duplicate all relevant files (logs etc)luckyBackupWindow2Zlyhalo zdvojenie profiluFailed to duplicate profileluckyBackupWindow2Zlyhalo zdvojenie profiluFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow8Zlyhalo importovanie profiluFailed to import profileluckyBackupWindow8Zlyhalo premenovanie profiluFailed to rename profileluckyBackupWindow4Zlyhalo nahradenie profiluFailed to replace profileluckyBackupWindow"Spustenie zlyhaloFailed to startluckyBackupWindowAktualizcia vaetkch priamo svisiacich sborov (zznamov a podobne) zlyhala.Failed to update all relevant files (logs etc)luckyBackupWindow*Skrye informa n oknoHide information windowluckyBackupWindow*Skrye informa n okno+hide/show information window button tooltipHide information windowluckyBackupWindowImport profiluImport ProfileluckyBackupWindowInforma n oknoInformation windowluckyBackupWindowInforma n oknoinformation window titleInformation windowluckyBackupWindowV as poslednho vykonania loh aktualizovan$Last execution time of tasks updatedluckyBackupWindow>Zoznam vaetkch dostupnch lohList of all the available tasksluckyBackupWindowZamkneLockluckyBackupWindow"&Spravovae zlohuManage &BackupluckyBackupWindowSpravovae lohu Manage TaskluckyBackupWindow\Presune zvraznen lohu dole o jednu pozciu/Move the highlighted task down, by one positionluckyBackupWindow\Presune zvraznen lohu hore o jednu pozciu-Move the highlighted task up, by one positionluckyBackupWindowNIENOluckyBackupWindowNEZAHRNUT NOT INCLUDEDluckyBackupWindowPOZNMKANOTEluckyBackupWindow,Nenjden ~iadne chybyNo errors foundluckyBackupWindow.Teraz sa vykonva lohaNow performing taskluckyBackupWindowpProsm pozorne si prezrite nasledujci dialg vlastnost?Please have a good look at the following task properties dialogluckyBackupWindow8Prosm vyberte si prv lohuPlease select a task firstluckyBackupWindowjProsm vyberte si lohu, ktor bude zdvojen ako prv'Please select a task to duplicate firstluckyBackupWindowhProsm vyberte lohu, ktor bude spravovan ako prv$Please select a task to manage firstluckyBackupWindowdProsm vyberte lohu, ktor bude upraven ako prv$Please select a task to modify firstluckyBackupWindowhProsm vyberte lohu, ktor bude odstrnen ako prv$Please select a task to remove firstluckyBackupWindowjPtla te pre vypnutie systmu a~ bude vaetko dokon en+Press down to shutdown the system when doneluckyBackupWindow ProfilProfileluckyBackupWindow ProfilPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindowhAktualizcia ukazovate>a priebehu nebude realistick(Progressbar update will not be realisticluckyBackupWindowPr&emenovaeR&enameluckyBackupWindow Chyba pri  tan Read errorluckyBackupWindowFOdstrnen vaetky star dta snmok Removed all older snapshots dataluckyBackupWindowOdstraHuje saRemovingluckyBackupWindowdOdstrHuj sa star snmky a sbory zznamov lohy+Removing old snapshots and logfiles of taskluckyBackupWindowSpustieRunluckyBackupWindowN&aplnovae S&cheduleluckyBackupWindow.Nastavie ako predvolenSet as DefaultluckyBackupWindow0Zobrazie informa n oknoShow information windowluckyBackupWindow0Zobrazie informa n okno+hide/show information window button tooltipShow information windowluckyBackupWindow2Zobrazie text pod ikonamiShow text under iconsluckyBackupWindow ZdrojSourceluckyBackupWindowTPreruaie vykonvanie TERAZ spustench loh'Stop the execution of running tasks NOWluckyBackupWindowNCie>ov prie inok bol speane vytvoren)Successfuly created destination directoryluckyBackupWindow lohaTaskluckyBackupWindowZoznam loh Task listluckyBackupWindow&Zoznam loh profiluTask list of profileluckyBackupWindowPopis profiluThe description of profileluckyBackupWindowPZadan nzov obsahuje len neplatn znaky:The name you have entered contains only invalid charactersluckyBackupWindowFSystm bude vypnut za jednu mintu$The system will shutdown in 1 minuteluckyBackupWindow,Zoznam loh je przdnyThe task list is emptyluckyBackupWindow"Tmto sa vykon <b>predstieran spustenie</b>, ktor neurob ~iadne zmeny (a vo v aine prpadov vedie k rovnakmu vsledku ako relne spustenie){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow as vypraal Timed outluckyBackupWindow6Nie je mo~n otvorie profilUnable to open profileluckyBackupWindowNeznma chyba Unknown errorluckyBackupWindowNeznma chybathis refers to a process Unknown errorluckyBackupWindowPre zahrnutie, alebo vyl enie vybranej lohy pou~ite zaakrtvacie pol ka>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindow<Zobrazie/upravie popis profilu!View/Edit the profile descriptionluckyBackupWindowVAROVANIEWARNINGluckyBackupWindowVitajte v Welcome toluckyBackupWindow6Chceli by ste odstrnie aj:Would you like to also remove:luckyBackupWindowJ}elte si aj napriek tomu pokra ovae?!Would you like to proceed anyway?luckyBackupWindow.}elte si ho nahradie ?Would you like to replace it ?luckyBackupWindowh}elte si ho ulo~ie predtm, ne~ sa bude pokra ovae?-Would you like to save it before proceeding ?luckyBackupWindow Chyba pri zpise Write errorluckyBackupWindowNOYESluckyBackupWindowlPo~iadali ste o to, aby bola vytvoren loha OBNOVENIE/You have asked for a RESTORE task to be createdluckyBackupWindowrBola dosiahnut najvyaaia mo~n roveH podporovanch loh5You have reached the maximum limit of supported tasksluckyBackupWindowjMuste odstrnie lohu pokia> chcete pridae alaiu !!7You have to remove a task if you wish to add another !!luckyBackupWindowhbude vytvoren nov przdny profil s rovnakm nzvom4a new blank one, with the same name, will be createdluckyBackupWindow pridaeaddluckyBackupWindowpridae lohuadd taskluckyBackupWindowu~ existujealready existsluckyBackupWindowTa zoznam 'profilu', ktor je posunut doleand 'profile' drop-down listluckyBackupWindow:a pridan do zoznamu profilovand added at the profile listluckyBackupWindowa zmeHte  oko>vek si budete ~elae predtm, ne~ sa bude pokra ovae.and change anything you wish before proceedingluckyBackupWindowakoasluckyBackupWindowakoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowvypo tavanie calculatingluckyBackupWindowvypo tavanie-info message displayed during ...calculations calculatingluckyBackupWindowvstup prkazovcommands outputluckyBackupWindow*nie je mo~n vytvoriecould not be createdluckyBackupWindow&nie je mo~n ulo~iecould not be savedluckyBackupWindow&nie je mo~n ulo~iePQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow*bol speane vytvorencreated successfullyluckyBackupWindow@vytvra sa predvolen profil ...creating default profile ...luckyBackupWindow*vytvra sa profil ...creating profile ...luckyBackupWindowpaktulny crontab <font color=green>speane aktualizovan6current crontab updated successfullyluckyBackupWindowaktulny profilcurrent profileluckyBackupWindow"predvolen profildefault profileluckyBackupWindow"predvolen profil^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow"predvolen profilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow&bol speane zmazandeleted successfullyluckyBackupWindowmazanie sborovdeleting filesluckyBackupWindowmazanie sborov/info message displayed during ...file deletionsdeleting filesluckyBackupWindow~zobrazie - obnovie - zmazae existujce zlohy zvraznenej lohy?display - restore - delete existing backups of highlighted taskluckyBackupWindowbZobrazie informcie tkajce sa zvraznenej lohy.display information regarding highlighted taskluckyBackupWindow0bol speane zdvojen akoduplicated successfully asluckyBackupWindow$boli njden chyby errors foundluckyBackupWindow$vykonanie profilu:execution of profile:luckyBackupWindow$vykonanie profilu:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow&odstrnenie zlyhalofailed to removeluckyBackupWindow^odstrnenie vaetkch starch dt snmok zlyhalo)failed to remove all older snapshots dataluckyBackupWindowdokon enfinishedluckyBackupWindowdokon en:full phrase: 'Execution of profile finished'finishedluckyBackupWindow.bol speane importovanimported successfullyluckyBackupWindowprebieha...in progress...luckyBackupWindowzahrneincludeluckyBackupWindowje upraven is modifiedluckyBackupWindow"nie je platn preis not valid forluckyBackupWindow0presko ie k alaej chybejump to next errorluckyBackupWindowBpresko ie k predchdzajcej chybejump to previous errorluckyBackupWindow&bol speane nahranloaded successfullyluckyBackupWindow@nahrva sa predvolen profil ...loading default profile ...luckyBackupWindow$nahrvanie zlyhaloloading failedluckyBackupWindow*nahrva sa profil ...loading profile ...luckyBackupWindowVsbory zznamu boli vytvoren v prie inku: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindowBminimalizovae do systmovej liatyminimize to trayluckyBackupWindowZminimalizuje okno do oblasti systmovej liaty%minimizes the window to the tray arealuckyBackupWindowupraviemodifyluckyBackupWindow0upravie zvraznen lohumodify highlighted taskluckyBackupWindow"nie je  o vykonae nothing to doluckyBackupWindow8vykonvanie prkazu po lohepost-task execution of commandluckyBackupWindow>vykonvanie prkazu pred lohoupre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowprofil profile luckyBackupWindowobnoven refreshedluckyBackupWindowodstrnieremoveluckyBackupWindow4odstrnie zvraznen lohuremove highlighted taskluckyBackupWindow4bol speane premenovan narenamed successfully toluckyBackupWindow4bol speane premenovan naWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindownvstup z rsync a pred/po vykonan lohy sa zobrazuje tu9rsync and pre/post task commands output is displayed hereluckyBackupWindow&bol speane ulo~ensaved successfullyluckyBackupWindow>uklad sa predvolen profil ...saving default profile ...luckyBackupWindow(uklad sa profil ...saving profile ...luckyBackupWindownaplnovan scheduledluckyBackupWindow8bol nastaven ako predvolenset as defaultluckyBackupWindownastaven naset toluckyBackupWindowvypnutieshutdownluckyBackupWindowre~im simulciesimulation modeluckyBackupWindowstavstatusluckyBackupWindow super pou~vate> super userluckyBackupWindow.re~im super pou~vate>asuper user modeluckyBackupWindowvo itoluckyBackupWindowpresun sborovtransferring filesluckyBackupWindowpresun sborov/info message displayed during ...file transferstransferring filesluckyBackupWindow0skaa sa poslanie emailutrying to send an emailluckyBackupWindowverzia:version:luckyBackupWindow$Vypo tae rozdielyCalculate differences manageDialogfVypo tae rozdiely medzi zdrojom a vybranou snmkouFCalculate the differences between the source and the selected snapshot manageDialogBVpo ty boli zruaen pou~vate>omCalculations terminated by user manageDialogZavrieeClose manageDialog"Zavriee toto oknoClose this window manageDialog ZmazaeDelete manageDialogBZmazae vybran snmku so zznamom,Delete the selected snapshot and its logfile manageDialogtNie s dostato n oprvnenia na  tanie z tohoto prie inka;I do not have sufficient permissions to read this directory manageDialog@Prosm vyberte snmku zo zoznamu&Please select a snapshot from the list manageDialogNProsm po kajte a~ bude vlkno ukon en*Please wait until the thread is terminated manageDialogObnovieRestore manageDialog,Obnovie vybran snmkuRestore the selected snapshot manageDialogZASTAVIdSTOP manageDialog,IHNE zastavie vpo tyStop calculations NOW manageDialog4Tento prie inok neexistujeThis directory does not exist manageDialog4Tento prie inok neexistujeInformation messageThis directory does not exist manageDialogZZobrazie sbor so zznamom pre vybran snmku)View the logfile of the selected snapshot manageDialog~Zobrazie sbor so zznamom pre vybran sychronizovan prie inok*View the logfile of the selected sync task manageDialog cie>: destination: manageDialogskrye zdroj hide source manageDialog6luckyBackup - sprva zlohyluckyBackup - manage backup manageDialognedostupn not available manageDialog profilprofile manageDialogzdrroj:source: manageDialog6Synchronizovan prie inok A sync dir A manageDialog6Synchronizovan prie inok B sync dir B manageDialog lohatask manageDialogzobrazie zznamview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizard ZRU`IdABORT manageWizardZruaenAborted manageWizardCesta k zlohe Backup path manageWizard|Prechdzae miestne kvli novej ceste k obnovovaciemu prie inku%Browse locally for a new restore path manageWizardTto mo~nose zaakrtnite pre klonovanie snmky do obnovovacieho prie inka.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDtum a  as Date & time manageWizardZmazae zlohu Delete backup manageWizardbZmazae existujce dta, ktor v zlohe neexistuj4Delete existing data that do not exist at the backup manageWizardMa~ sa dta Deleting data manageWizardTMa~e sa sbor, ktor ur uje zmeny v snmke)Deleting file that lists snapshot changes manageWizard8Ma~e sa sbor zznamu snmkyDeleting snapshot logfile manageWizardExistujca zlo~n sbory nahradia zodpovedajce sbory v obnovovacom prie inkuSExisting backup files will replace the corresponding files at the restore directory manageWizardDokon enFinished manageWizardAk je informcia vyaaie sprvna, kliknite na <b>za ae</b> pre za atie@If the information above is correct, click start to begin manageWizardak je informcia vyaaie sprvna, kliknite na <b>za ae</b> pre za atie`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard<presko ie k nasledujcej chybeJump to next error manageWizardBpresko ie k predchdzajcej chybeJump to previous error manageWizardzNeexistuj ~iadne dta przna n pre snmku. Preskakuje sa...,No snapshot specific data exist. Skipping... manageWizard CestaPath manageWizardObnovie zlohuRestore backup manageWizard>Cesta k obnovovaciemu prie inku Restore path manageWizard:Obnovuj sa dta: hlavn kmeHRestoring data: main trunk manageWizard>Obnovuj sa dta: sbory snmkyRestoring data: snapshot files manageWizard@Vybrae nov obnovovac prie inokSelect new restore directory manageWizardpObnovovac prie inok sa stane toto~nm so snmkou zlohyBThe restore directory will become identical to the backup snapshot manageWizard"Tmto sa vykon <b>predstieran spustenie</b>, ktor neurob ~iadne zmeny (a vo v aine prpadov vedie k rovnakmu vsledku ako relne spustenie){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard8Aktualizuje sa zoznam snmokUpdating list of snapshots manageWizardVAROVANIEWARNING manageWizardDChystte sa zmazae dta so zlohou#You are about to delete backup data manageWizard zruaiecancel manageWizard zmeniechange manageWizardzavrieeclose manageWizard$boli njden chyby errors found manageWizardzlyhalofailed manageWizardzlyhalo-info message displayed after ...file deletionfailed manageWizard6luckyBackup - sprva zlohyluckyBackup - manage backup manageWizard"nasledujca chyba next error manageWizardbez chb no errors manageWizardnedostupn not available manageWizard(predchdzajca chybaprevious error manageWizardsimulcia simulation manageWizard za aestart manageWizardspeansuccess manageWizardspean-info message displayed after ...file deletionsuccess manageWizardspean5info message displayed after ...snapshots list updatesuccess manageWizardPrida ktor ko>vek prie inok, sbor, alebo vzor, ktor m bye vyl en z tejto lohy@Add any directory, file or pattern to be excluded from this task modifyDialog<Zlohovae obsah Zdroja v Cieli Backup Source inside Destination modifyDialog"Sbory so zlohou Backup files modifyDialog ZruaieCancel modifyDialog\Zadae druh tejto lohy: 1. Zlohovae obsah Zdroja v Cieli (pozrite tie~ okno "NEVYTVRAd prie inok") 2. Synchronizovae Zdroj a Cie>, ponechajc posledn sbory v oboch z nichDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialognZadae druh tejto lohy: 1. Zlohovae obsah Zdroja v Cieli 2. Zlohovae Zdrojov prie inok pod>a nzvu v Cieli 3. Synchronizovae Zdroj a Cie>, ponechajc posledn sbory v oboch z nichDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog Popis Description modifyDialogCie> Destination modifyDialog Cie> : Destination : modifyDialog~Zadajte nzov tejto lohy (napr. "Zloha domovskho prie inka"):Enter a name for this task (eg "Backup my home directory") modifyDialogZadajte cel cestu k cie>ovmu prie inku (napr. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialog~Zadajte cel cestu k zdrojovmu prie inku (napr. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogVyl ieExclude modifyDialogfVyl ie vaetky zlohovacie sbory a prie inky (**~)(Exclude all backup files & folders (**~) modifyDialogXVyl ie vaetky do asn prie inky /**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogVyl ie prie inky vzeahujce sa k pripojovanm zariadeniam (/mnt & /media (/mnt/*/**, /media/*/**) CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogNzov :Name : modifyDialogOKOkay modifyDialog ZdrojSource modifyDialogZdroj :Source : modifyDialog6Synchronizovae Zdroj a Cie>"Synchronize Source and Destination modifyDialog&Systmov prie inkySystem folders modifyDialog@Prie inky pre pripojenie systmuSystem mount folders modifyDialogPopis lohyTask description modifyDialog Vlastnosti lohyTask properties modifyDialog`ablny Templates modifyDialog"Do asn prie inkyTemporary folders modifyDialog Typ :Type : modifyDialog&Napate popis lohyType a description of the task modifyDialog pridaeadd modifyDialog$prechdzae miestne browse localy modifyDialog zruaiecancel modifyDialogodstrnieremove modifyDialog ZruaieCancel patternEditornToto zaakrtnite kvli pou~itiu prie inka vyaaie ako absoltnej cesty ak nie je zaakrtnut, bude vzor zodpovedae ktormuko>vek sboru, prie inku, ktor bude vyhovovae kritrim "nzov"Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorLTu ur ite, na  o by mal vzor odkazovae8Define here, what would you like the pattern to refer to patternEditor,se v ceste hlbaie o :Go deeper in path by : patternEditorJse v ceste hlbaie o akko>vek roveHGo deeper in path by any level patternEditorOKOkay patternEditorXNastavie editor vzorov na predvolen hodnoty5Reset the pattern editor fields to the default values patternEditor$Zvlatny prie inokSpecific directory patternEditorZvlatny sbor Specific file patternEditor"Vzor odkazuje na:The pattern refers to a: patternEditorToto pou~ijte v prpade, ~e vzor odkazuje na sadu sborov, ktor maj nie o spole nho napr. vaetky sbory s prponou ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorToto pou~ite v prpade, ~e vzor odkazuje na zvlatny prie inok napr."/media/music/Album/"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorToto pou~ite v prpade, ~e vzor odkazuje na zvlatny sbor napr."/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorToto pou~ite kvli odkazovaniu na podprie inky naprklad Prie inok obsahuje tri podprie inky: 1.Rock 2.Jazz 3.Soundtracky a vy chcete odkazovae na obsah u vaetkch tchto troch, nastavte nasledujce: * Sada prie inkov * cesta: /media/music/ * se hlbaie v ceste o "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditorakko>vekany patternEditorTPrechdzae miestne kvli ceste k prie inku"browse localy for a directory path patternEditor>prechdzae miestne kvli sborubrowse localy for a file patternEditoreditor vzorovpattern editor patternEditor resetreset patternEditor,pou~ie absoltnu cestuuse absolute path patternEditor ZruaieCancelscheduleDialog pridaeaddscheduleDialogzavrieeclosescheduleDialogupraviemodifyscheduleDialogodstrnieremovescheduleDialog ZruaieCancel textDialogNieNo textDialogOKOkay textDialogluckyBackup luckyBackup textDialog ZruaieCancel winDialogOKOkay winDialogluckyBackup luckyBackup winDialogluckybackup-0.5.0/translations/luckybackup_et.qm0000666000175000017500000004312513157502317021477 0ustar luckybluckyb5g8(e'C6F&o2*f:"381R)N&Ea,AiJ9}^7W6\7(ϗ6 ‰2Ojz eJ< lw*Kr&E3I I!I+I3I<I=  5 m,55'FJ7H7:#dm6>>ȕȕȕ$X8J:!g:'p9ߘ.;oKO _Av ghnshn%Zi$kՒ kՒ(TI.I(an(0_Ȓ%=7':,3EKE;v:*_g4@FF+ FdG%+Bȕ+ua9 K2 "/e+9Qʶj d CcK Mg Mg! l Z ' % = f l  b  h7z @#  2  -$ Ge' L9: g.w+ g.w g.w &{ Y4 %=,E7k4U"w$X#%s"u@'8 'v5ɟ):ZuGki>*Erinevuste arvutamineCalculating differencesCalcDiffThreadoota Please waitCalcDiffThread.Sihtkohha skanneerimineScanning destinationCalcDiffThread*Allikka skanneerimineScanning sourceCalcDiffThreadSihtkoht DestinationQObjectAllikasSourceQObject"SnkroniseerimineSyncingQObject"Snkroniseerimine'Full phrase: Syncing to SyncingQObject$lesande kirjeldusTask descriptionQObject6lesannete nimekiri on thiThe task list is emptyQObjectHOIATUSWARNINGQObjectleitud vead errors foundQObject(lesande kivitamineexecution of taskQObject(lesande kivitamine3Full phrase: execution of task: finishedexecution of taskQObject(lesande kivitaminedFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectlpetatudfinishedQObjectlpetatud?Full phrase: execution of 1st part of task: finishedfinishedQObjectlpetatud3Full phrase: execution of task: finishedfinishedQObjectlpetatudCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectvigu pole no errorsQObjectalustaminestartingQObjectalustamine?Full phrase: execution of 1st part of task: startingstartingQObjectalustamine?Full phrase: execution of 2nd part of task: startingstartingQObjectalustamine3Full phrase: execution of task: startingstartingQObjectalustamine?Full phrase: post-task execution of command: startingstartingQObject4Eestikeelne kasutajaliidesEstonian gui translator aboutDialogRivo Zangov Rivo Zangov aboutDialogsuleclose aboutDialog LoobuCancel emailDialogOKOkay emailDialogOKOkay helpBrowsersuleclose logDialogjrgmine viga next error logDialogKatkestaAbortluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowKirjeldus DescriptionluckyBackupWindowSihtkoht DestinationluckyBackupWindowVIGAERRORluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowLukustaLockluckyBackupWindowProfiilProfileluckyBackupWindowProfiilPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindowProfiilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowProfiil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowProfiilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowProfiilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowProfiillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowProfiil3full phrase: 'Profile set as default'ProfileluckyBackupWindowKivitaRunluckyBackupWindowAllikasSourceluckyBackupWindow6lesannete nimekiri on thiThe task list is emptyluckyBackupWindowHOIATUSWARNINGluckyBackupWindowlisaaddluckyBackupWindowkuiasluckyBackupWindowkuiFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindow"ei saa salvestadacould not be savedluckyBackupWindow"ei saa salvestadaPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindowleitud vead errors foundluckyBackupWindowlpetatudfinishedluckyBackupWindowlpetatud:full phrase: 'Execution of profile finished'finishedluckyBackupWindowon muudetud is modifiedluckyBackupWindowluckyBackup luckyBackupluckyBackupWindow muudamodifyluckyBackupWindowprofiilprofileluckyBackupWindowprofiilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowprofiilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowprofiilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowprofiilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowprofiilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindoweemaldaremoveluckyBackupWindowSuleClose manageDialogSule see akenClose this window manageDialogKustutaDelete manageDialog TaastaRestore manageDialog PEATASTOP manageDialogSihtkoht: destination: manageDialogpeida allikas hide source manageDialogpole sadaval not available manageDialogprofiilprofile manageDialogallikas:source: manageDialog sannetask manageDialogvaata logiview log manageDialogKATKESTAABORT manageWizardKatkestatudAborted manageWizard&Kuupev ja kellaaeg Date & time manageWizard$Kustuta varukoopia Delete backup manageWizardLpetatudFinished manageWizardAsukohtPath manageWizardHOIATUSWARNING manageWizard Loobucancel manageWizard muudachange manageWizardsuleclose manageWizardleitud vead errors found manageWizardebannestusfailed manageWizardebannestus-info message displayed after ...file deletionfailed manageWizardjrgmine viga next error manageWizardvigu pole no errors manageWizardpole saadaval not available manageWizardsimuleerimine simulation manageWizard korrassuccess manageWizard korras-info message displayed after ...file deletionsuccess manageWizard korras5info message displayed after ...snapshots list updatesuccess manageWizard...... modifyDialog @Host:@Host: modifyDialogAsjatundjateleAdvanced modifyDialog PrastAfter modifyDialog LoobuCancel modifyDialogKirjeldus Description modifyDialogSihtkoht Destination modifyDialogSihtkoht : Destination : modifyDialogJta vljaExclude modifyDialog KaasaInclude modifyDialog Kaasamise re~iim Include mode modifyDialogRe~iim:Mode: modifyDialog Nimi :Name : modifyDialog$Tavaline kaasamineNormal Include modifyDialogOKOkay modifyDialogAinult kaasa Only Include modifyDialogSilita igusedPreserve permissions modifyDialogLoe faili: Read file: modifyDialogAllikasSource modifyDialogAllikas :Source : modifyDialog$lesande kirjeldusTask description modifyDialoglesande nimi Task name modifyDialog"lesande omadusedTask properties modifyDialog Mallid Templates modifyDialog Ajutised kaustadTemporary folders modifyDialogPrgikastTrash modifyDialog Tp :Type : modifyDialog"Kasutaja mratud User defined modifyDialogKasutaja:User: modifyDialoglisaadd modifyDialogasjatundjateleadvanced modifyDialog sirvibrowse modifyDialog loobucancel modifyDialog thista muutminecancel editing modifyDialogsihtkoht destination modifyDialog valmisdone modifyDialog$muutmine lpetatud done editing modifyDialog muudaedit modifyDialogfailinimifilename modifyDialogliiguta alla move down modifyDialogliiguta lesmove up modifyDialog"valikute nimekiri options list modifyDialog port :port : modifyDialogeemaldaremove modifyDialog lihtnesimple modifyDialogallikassource modifyDialogkontrollivalidate modifyDialog LoobuCancel patternEditorOKOkay patternEditorVali kaustSelect directory patternEditor fail :file : patternEditorniminame patternEditor fail filescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:viivitus:delayscheduleDialogKikAnyscheduleDialog AprillAprilscheduleDialog Aprillfull phrase: 'of April'AprilscheduleDialog ugustAugustscheduleDialog Augustfull phrase: 'of August'AugustscheduleDialog LoobuCancelscheduleDialogKsurea re~iim Console ModescheduleDialogDetsemberDecemberscheduleDialogDetsemberfull phrase: 'of December'DecemberscheduleDialogVeebruarFebruaryscheduleDialogVeebruarfull phrase: 'of February'FebruaryscheduleDialog ReedeFridayscheduleDialogJaanuarJanuaryscheduleDialogJaanuarfull phrase: 'of January'JanuaryscheduleDialog JuuliJulyscheduleDialog Juulifull phrase: 'of July'JulyscheduleDialog JuuniJunescheduleDialog Juunifull phrase: 'of June'JunescheduleDialog MrtsMarchscheduleDialog Mrtsfull phrase: 'of March'MarchscheduleDialogMaiMayscheduleDialogMaifull phrase: 'of May'MayscheduleDialogEsmaspevMondayscheduleDialogNovemberNovemberscheduleDialogNovemberfull phrase: 'of November'NovemberscheduleDialogOktooberOctoberscheduleDialogOktooberfull phrase: 'of October'OctoberscheduleDialogProfiil : Profile :scheduleDialogLaupevSaturdayscheduleDialogSeptember SeptemberscheduleDialogSeptemberfull phrase: 'of September' SeptemberscheduleDialogPhapevSundayscheduleDialogNeljapevThursdayscheduleDialogTeisipevTuesdayscheduleDialogKolmapev WednesdayscheduleDialoglisaaddscheduleDialogsuleclosescheduleDialogcronIT !! cronIT !!scheduleDialogminminscheduleDialog muudamodifyscheduleDialog kuu :month :scheduleDialogokokayscheduleDialogeemaldaremovescheduleDialog LoobuCancel textDialogSisesta parool:Enter pasword : textDialogEiNo textDialogOKOkay textDialogJahYes textDialogluckyBackup luckyBackup textDialog LoobuCancel winDialogOKOkay winDialogluckyBackup luckyBackup winDialog rsync:rsync: winDialogluckybackup-0.5.0/translations/luckybackup_no.ts0000666000175000017500000067636113165410113021521 0ustar luckybluckyb CalcDiffThread Scanning destination Gjennomsøker målområde Please wait Vennligst vent Scanning snapshot Gjennomsøker snapshot Scanning source Gjennomsøker kildeområde Calculating differences Beregner differanser Sync dir A & B differences Synkroniser A og B mapper Snapshot and source differences Snapshot og kilde differanser Sync dir B data that also exists at sync dir A and is different Synk mappe B data som også finnes i mappe A og er forskjellig Snapshot data that also exists at the source and is different Snapshot data som også finnes i kildemappen og er forskjellig The snapshot data will replace the source data during RESTORE Snapshot data vil erstatte kildedata ved TILBAKEKOPIERING Data amount is huge. Displaying only first entries Datamenger er store. Viser kun de første delne. Sync dir B data that do NOT exist at sync dir A Synk mappe B data som IKKE finnes i mappe A Snapshot data that do NOT exist at the source Snapshot data som IKKE finnes i kilden These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Disse vil bli ført tilbake til kilden ved TILBAKEKOPIERING Sync dir A data that do NOT exist at sync dir B Synk mappe A data som IKKE finnes i mappe B Source data that do NOT exist at the snapshot Kildedata som IKKE finnes i snapshot These will be deleted during RESTORE only if you enable the option: Disse vil bli slettet ved TILBAKEKOPIERING kun dersom du slår på valget delete existing source data that do not exist at the backup slett eksisterende kildedata som ikke finnes ved backup QObject The task list is empty Oppgavelisten er tom nothing to start Ingenting å starte You have included both of the following connected tasks: Du har inkludert begge følgende sammenhengende oppgaver this is not allowed for obvious reasons dette er ikke tillatt av opplagte grunner Please <b>uncheck appropriate include boxes</b> before proceeding Vennligst <b>fjern relevant kryss</b> før du fortsetter You have not included any tasks Du har ikke inkludert noen oppgaver The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Følgende inkluderte oppgaver <b>deler samme målmappe</b> (alle sammen eller i grupper) og minst en av de vil ta sikkerhetskopi av innholdet i en mappe this will lead to one task canceling the other dette vil føre til at en oppgave kansellerer en annen Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Vennligst fjern relevante inkluderingsbokser, eller endre alle oppgavetyper til noe annet enn '<b>Kopier mappe innhold</b>' eller bruk 'Kopier mappe innhold' sammen med '<b>Inkluder kun</b>' opsjonen, før du fortsetter pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting pre-oppgave eksekvering av kommando starting Full phrase: pre-task execution of command: <COMMAND> starting starter Command re-run due to failure This means that a specific command is run for once more because it failed the first time Kommando kjører på nytt pga. tidligere feil post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting post-oppgave eksekvering av kommando starting Full phrase: post-task execution of command: <COMMAND> starting starter execution of task Full phrase: execution of task: <TASKNAME> starting eksekvering av oppgaver starting Full phrase: execution of task: <TASKNAME> starting starter Source Full phrase: source: <SOURCE_NAME Kilde Destination Full phrase: Destination: <DEST_NAME Mål execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting eksekvering av 1. del av oppgave starting Full phrase: execution of 1st part of task: <TASKNAME> starting starter Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Synkroniserer to Full phrase: Syncing <DIR-A> to <DIR-B> til execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting eksekvering av 2. del av oppgave starting Full phrase: execution of 2nd part of task: <TASKNAME> starting starter Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Synkroniserer to Full phrase: Syncing <DIR-B> to <DIR-A> til pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished pre-oppgave eksekvering av kommando finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished ferdig post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished post-oppgave eksekvering av kommando finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished ferdig execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished eksekvering av 1. del av oppgave finished Full phrase: execution of 1st part of task: <TASKNAME> finished ferdig execution of task Full phrase: execution of task: <TASKNAME> finished eksekvering av oppgave finished Full phrase: execution of task: <TASKNAME> finished ferdig execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error eksekvering av oppgave finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error ferdig pga. feil i eksekvering av kommando pre/post-oppgave The process reported an error Prosessen rapporterte en feil Backing-up profile, logfiles and snapshot data Kopierer profil, loggfiler og snapshot data Could not open the logfile Klarte ikke åpne loggfil The logfile does not exist Loggfilen finnes ikke The specified command is probably not installed Spesifisert kommando er antakelig ikke installert The logfile could not be created Klarte ikke opprette loggfilen command: kommando: exit code: exit kode: output: utskrift: Last execution time Siste eksekveringstid not available ikke tilgjengelig no errors ingen feil errors found feil funnet status status OK OK Sync directory Synkroniser mappe Source directory Kildemappe Using remote, check is skipped Fjernbruk, hopper over sjekk Destination directory Målmappe free as in free disk space ledig WARNING ADVARSEL I do not have the permission to read/enter sync directory A Jeg har ikke tillatelse til å lese / se i synk mappe A I do not have the permission to read/enter the source directory Jeg har ikke tillatelse til å lese / se i kildemappen I do not have the permission to read/enter sync directory B Jeg har ikke tillatelse til å lese/se i synk mappe B I do not have the permission to read/enter the destination directory Jeg har ikke tillatelse til å lese / se i målmappen Directory Mappe and/or og/eller does not exist eksisterer ikke is not mounted er ikke montert is empty or does not exist er tom eller finnes ikke I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Jeg vil <font color=red><b>IKKE HOPPE OVER</b></font> denne oppgaven fordi du har slått på "overse ADVARSEL" valget This task will be <font color=red><b>skipped</b></font> Denne oppgaven vil bli <font color=red><b>hoppet over</b></font> CRITICAL KRITISK is empty er tom I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Jeg vil <font color=orange><b>ikke hoppe over</b></font> denne oppgaven. Synkronisering vil bli utført uansett. This task will <font color=orange><b>not be skipped Denne oppgaven vil <font color=orange><b>ikke bli hoppet over The Destination Directory will be created if it doesn't exist and filled with new backup data Målmappen vil bli opprettet om den ikke finnes, og fylt med nye backup data Task description Oppgavebeskrivelse ReadLogFile Could not locate the logfile Could not open the logfile Klarte ikke åpne loggfil aboutDialog using Qt4 bruker Qt4 Backup & Sync Application Backup & Synk applikasjon Loukas Avgeriou Loukas Avgeriou It 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. Det distribueres i håp om at det vil være til nytte, men UTEN ENHVER GARANTI; selv uten implisert garanti av handelbarhet eller egnethet for et bestemt formål. See the 'License Agreement' tab for more details. Se 'Lisensavtale' fanen for flere detaljer. Athens, Greece Athen, Hellas Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Arch linux package/pkgbuild official maintainer (AUR) Valuable advisor Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor rpm packager, valuable tester and remote connections advisor Patrick Matthaei Patrick Matthaei Debian package maintainer Debian package maintainer Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Greek gui translator and valuable tester The indifex team Indices teamet for developing the wonderful transifex localization platform and providing it for free for utvikling av den fantastiske oversetting å plattformen og gjøre den fritt tilgjengelig Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis package maintainer (Community repo) & Spanish gui translator Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) ubuntu package maintainer (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows porting til MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Bidragsyter for fjernstyring og vss støtte til Windows porteringen loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X port to Mac OS X Elbert Pol Elbert Pol port to OS/2 port to OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild maintainer Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy pet & sfs vedlikeholder Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva package maintainer (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Free BSD package maintainer Dimitris Jemos Dimitris Jemos Slackel package maintainer Slackel pakke vedlikeholder ex Fedora package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Czech gui oversetter Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Greek manual oversetter German gui translator German gui translator Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portuguese gui translator Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) French gui translator and valuable packing advisor (and not only) Raffaele Raffaele Italian gui translator Italian gui translator using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Russian gui oversteer og verdifull tester Kenny Verstraete Kenny Verstraete Dutch gui translator Dutch gui translator Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Bosnian gui translator & mandriva package maintainer Majed Sahli Majed Sahli Arabic gui translator Arabic gui oversetter Adrian Murariu Adrian Murariu Romanian gui translator Romanian gui translator Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v0.3 gui designer fri13 fri13 v.0.3 gui designer v.0.3 gui designer Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project If it wasn't him and his tutorials I would never have started this project Thomas Glatt Thomas Glatt French gui translator French gui oversetter Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Spanish gui oversetter Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Swedish gui oversetter Catalan gui translator Catalan gui translator Slovak gui translator Slovak gui oversetter Rivo Zangov Rivo Zangov Estonian gui translator Estonian gui translator Nicolay Boychev Nicolay Boychev Bulgarian gui translator Bulgarian gui translator Manuel Meixide Manuel Meixide Galician gui translator Galician gui translator Roger Foss Roger Foss Norwegian gui translator Norwegian gui translator Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Chinese (Taiwan) gui oversetter Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Spesiell bug killer gjest ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist valuable tester & brainstorming specialist Yuri Vidal Yuri Vidal backupwhenidle python script developer backupwhenidle python script developer Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester verdifull OS/2 og windows tester ...to all users of the ...to all users of the forums for their support. forums for their support. Especially Especially that contributed to this project one way or another that contributed to this project one way or another Last but no least Last but no least Could not locate the license file Fant ikke lisensfilen no money no money If you like this app and would like to donate something to me personally, all you have to do is: If you like this app and would like to donate something to me personally, all you have to do is: Give a thumbs up at: Give a thumbs up at: Vote good & become a fan at: Vote good & become a fan at: This is my reward :) This is my reward :) money money I personally never had and never will accept money for this project. I personally never had and never will accept money for this project. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Nevertheless, I decided to use luckyBackup to support people that really need financial help. So, please consider it seriously to donate money that will eventually be used for a good cause. So, please consider it seriously to donate money that will eventually be used for a good cause. donation link lenke for donasjoner luckyBackup - about luckyBackup om close lukk &About &Om <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Support A&uthor &Forfatter &Thanks to &Takk til &License Agreement &Lisensavtale luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup distribueres under betingelsene i <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora package maintainer (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Slovenian gui translator E. Hakan Duran E. Hakan Duran Turkish gui translator Turkish gui translator Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Send en rapport via epost etter profilkjøringen command: kommando: Use default This means "use the default value for this field" Bruk standard Arguments Parametere %f from: %f fra: Enter the sender of the message Oppgi avsender av meldingen %l logfile %l loggfil %c logfile.tar.gz %c logfile.tar.gz %d date %d date %i time %i time %p profile name %p profilnavn %e No of errors %e Antall feil If unchecked "TLS auto" is used. Only available for sendemail "TLS auto" brukes når denne ikke er krysset av. Kun for sendemail. Disable TLS Slå av TLS %t to: %t til: Enter the recipient of the message Oppgi mottakeren av meldingen %s subject: %s subject: Enter the subject of the message Oppgi emnet for meldingen %v smtp server: %v smtp server: Enter the smtp server used to send the message Oppgi SMTP serveren som skal sende meldingen %b body: %b tekst: Enter the body of the message Angi meldingens hoveddel Send an email right now to test the provided arguments Send en mail nå for å teste angitte parametere Test Test Accept changes and close dialog Godta endringer og lukk dialogboksen Okay Ok Close dialog Lukk dialog Cancel Avbryt Specify the conditions to send an email Oppgi betingelser for når en epost skal sendes Enter the command to run eg sendemail Angi kommandoen som skal kjøres, feks sendemail arguments: parametere: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Betingelser Only send when error(s) occurred during a run Send kun når feil oppstod under kjøring Error(s) occurred Feil oppstod Only send when profile is scheduled to run Send kun når profilen ble skedulert til å kjøre Profile is scheduled Profil skedulert Never send an email Send aldri noen epost Never Aldri The command field is empty Kommandofeltet er tomt helpBrowser luckyBackup - help luckyBackup - help manual/ manual/ Okay Ok logDialog luckyBackup - tasks execution progress luckyBackup - progresjon for oppgavekjøring <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error forrige feil next error neste feil close lukk loading logfile... laster loggfil... wait vent luckyBackupWindow commands output output window label kommando utskrift rsync and pre/post task commands output is displayed here tooltip utskrift fra rsync og pre/post oppgaver vises her Task list task list label Oppgaveliste List of all the available tasks task list tooltip - line1 Liste over alle tilgjengelige oppgaver Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Bruk 'inkluder kryssbokser' for å bestemme om valgte oppgaver skal inkluderes eller ikke Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Kjøring av profil finished full phrase: 'Execution of profile <PROFILENAME> finished' ferdig simulation mode simuleringsmodus Could not update last execution time of tasks Klarte ikke oppdatere siste utførelsestid for oppgavene Last execution time of tasks updated Tid for siste utførelse av oppgaver oppdatert &Abort &Avbryt &Minimize to tray tray menu action %Minimer til oppgavelinje &Restore tray menu action &Gjenopprett execution of profile: tray message - execution of profile: <PROFILENAME> in progress... kjøring av profil: in progress... tray message - execution of profile: <PROFILENAME> in progress... pågår... Removed all older snapshots data Fjernet alle gamle snapshot data failed to remove all older snapshots data klarte ikke fjerne alle gamle snapshot data Unknown error Ukjent feil Elapsed time Passert tid pre-task execution of command utførelse av kommando før oppgaven post-task execution of command utførelse av kommando etter oppgaven Now performing task Utfører oppgaven Directory Mappe calculating beregner deleting files sletter filer Total files transferred trying to send an email forsøker å sende epost The system will shutdown in 1 minute Systemet avslutter om 1 minutt Source Kilde Destination Mål All tasks completed Alle oppgaver utført No errors found Ingen feil funnet errors found feil funnet logfile(s) have been created under directory: loggfil(er) ble opprettet i mappen: Done Ferdig execution of profile: kjøring av profil: finished ferdig Execution of tasks were terminated violently by user Utføring av oppgaver ble brått avbrutt av bruker &Profile This is a top menu item &Profil &Settings This is a top menu item &Innstillinger &Language This is a top menu item &Språk &Help This is a top menu item &Hjelp &Handbook full phrase: 'luckyBackup Handbook' &Håndbok &About full phrase: 'about luckyBackup' &Om current profile gjeldende profil include label of 'include' checkboxes inkluder Move the highlighted task up, by one position button tooltip Flytt valgt oppgave opp en posisjon Move the highlighted task down, by one position button tooltip Flytt valgt oppgave ned en posisjon jump to next error button tooltip gå til neste feil jump to previous error button tooltip gå til forrige feil Task task groupbox (add, remove, modify buttons) label Oppgave add add task button label legg til add task add task button tooltip legg til oppgave remove remove task button label fjern remove highlighted task remove task button tooltip fjern valgt oppgave modify modify task button label modify highlighted task modify task button tooltip endre valgt oppgave Begin the execution of all included tasks start button tooltip Begynn utføring av alle inkluderte oppgaver NOTE simulation checkbox tooltip - line2 MERK Progressbar update will not be realistic simulation checkbox tooltip - line2 Progresjonsindikator vil ikke være realistisk Information window information window title Informasjonsvindu Exit exit button tooltip. full phrase is: 'exit luckybackup' Avslutt EXIT EXIT button label AVSLUTT minimize to tray minimer til oppgavelinje minimizes the window to the tray area minimerer vindu til oppgavelinen F1 F1 English Norsk &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Please have a good look at the following task properties dialog 'create restore' message line 2/4 Vennligst se nøye på følgende dialog for oppgave egenskaper and change anything you wish before proceeding 'create restore' message line 3/4 og endre det du måtte ønske for du fortsetter Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Sjekk spesilet 'Oppgave navn', 'kilde', 'mål' og 'hopp over nyere målfiler' kryssboksene (avansert) ERROR FEIL loading default profile ... information window message laster standard profil ... loading profile ... information window message laster profil ... loading failed information window message innlasting feilet Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Klarte ikke åpne profil is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y er ikke gyldig for version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versjon: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' vellykket innlasting scheduled this refers to a profile planlagt YES JA NO NEI Description Beskrivelse saving default profile ... Information window message lagrer standard profil ... saving profile ... Information window message lagrer profil ... WARNING ADVARSEL default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. standard profil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' lagret creating default profile ... Information window message oppretter standard profil ... creating profile ... Information window message oppretter profil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' opprettet Would you like to save it before proceeding ? Vil du lagre før vi fortsetter ? Would you like to proceed anyway? Vil du likevel fortsette? super user super user is the root user super bruker super user mode super bruker modus Welcome to full phrase: 'Welcome to luckyBackup' Velkommen til English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Norsk Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Lyktes ikke opprette ny profil The name you have entered contains only invalid characters Navnet du oppga inneholder bare ugyldige tegn Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' finnes allerede Would you like to replace it ? Vil du erstatte den? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Klarte ikke erstatte profil Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Klarte ikke omdøpe profil profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' omdøpt til default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. standard profil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' omdøpt til All relevant files (logs etc) have also been updated Alle relevante filer (logger osv) ble også oppdatert Failed to update all relevant files (logs etc) Klarte ikke oppdatere alle relevante filer (loggfiler osv) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Er du sikker på at du ønsker slette standardprofilen a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' en ny tom profil med samme navn vil bli opprettet Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Er du sikker på at du ønsker slette profilen Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Klarte ikke slette profilen Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' slettet All relevant files (logs etc) have also been deleted Alle relevanter filer (logger osv) ble også slettet Failed to delete all relevant files (logs etc) Klarte ikke slette alle relevanter filer (logger osv) Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' sett som standard All relevant files (logs etc) have also been duplicated Alle relevante filer (logger osv) ble også duplisert Failed to duplicate all relevant files (logs etc) Klarte ikke duplisere alle relevante filer (logger osv) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Beskrivelse av profilen set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' satt til Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importer profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Klarte ikke importere profil Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' importert as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' som and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' og lagt til profillisten Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Fant ikke filen You have reached the maximum limit of supported tasks Du har nådd maks antall oppgaver You have to remove a task if you wish to add another !! Du må fjerne en oppgave hvis du ønsker å legge til en! Select export directory this is a dialog title for selecting a directory to export a profile to Velg eksportmappe Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Klarte ikke eksportere profilen to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' til Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' eksportert til The directory you have selected does not contain valid profile data Mappen du valgte inneholder ingen gyldige profildata Errors occurred during snapshots and logfiles transfer Feil oppstod under overføring av snapshot og loggfiler Errors occurred during snapshots transfer Feil oppstod under overføring av snapshots Errors occurred during logfiles transfer Feil oppstod under overføring av loggfiler Errors occurred during the profile file transfer Feil oppstod under overføring av profil Please select a task to modify first Velg først en oppgave å modifisere Please select a task to remove first Velg en oppgave å fjerne først Are you sure you want to remove the following task ?? Er du sikker på at du vil fjerne følgende oppgave ?? Would you like to also remove: Vil du også fjerne: Please select a task to manage first Vennligst velg først en oppgave å endre nothing to do ingenting å gjøre current crontab <font color=green>updated successfully gjeldende crontab <font color=green>oppdatert Email preferences have been <font color=green>updated successfully Epost preferanser er blitt <font color=green>oppdatert status status NOT INCLUDED IKKE INKLUDERT Checks are disabled. This task will be <b>skipped</b> Sjekker slått av. Denne oppgaven vil bli <b>hoppet over</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Profilens oppgaveliste and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' og 'profil' nedtrekksliste refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' oppfrisket luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informasjonsvindu CheckBox Avkryssingsboks <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Avbryter: Vent til alle prosesser er drept Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Fjerner gamle snapshot og loggfiler for oppgaven Removing Fjerner failed to remove klarte ikke fjerne Failed to start this refers to a process Klarte ikke starte Crashed this refers to a process Kræsjet Timed out this refers to a process Gikk over tid Write error this refers to a process Skrivefeil Read error this refers to a process Lesefeil Unknown error this refers to a process Ukjent feil calculating info message displayed during ...calculations beregner transferring files info message displayed during ...file transfers overfører filer deleting files info message displayed during ...file deletions sletter filer transferring files overfører filer ABORTED AVBRUTT &Refresh This is a top 'Profile' menu action &Oppfrisk De&fault This is a top 'Profile' menu action Stan&dard Set as Default This is a top 'Profile' menu action tooltip Sett som Standard &View/Edit Description This is a top 'Profile' menu action &Vis / Endre beskrivelse View/Edit the profile description This is a top 'Profile' menu action tooltip Vis / Endre profilbeskrivelsen R&ename This is a top 'Profile' menu action &Omdøp &Delete This is a top 'Profile' menu action Slett &New This is a top 'Profile' menu action &Ny &Save This is a top 'Profile' menu action &Lagre E&xport This is a top 'Profile' menu action &Eksporter &Import This is a top 'Profile' menu action &Importer S&chedule This is a top 'Profile' menu action &Skeduler E&mail This is a top 'Profile' menu action E&post Email report after profile execution This is a top 'Profile' menu action tooltip Send rapport som epost etter profilkjøring &Quit This is a top 'Profile' menu action &Avslutt D&uplicate This is a top 'Profile' menu action &Dupliser &Task This is a top menu action &Oppgave &Add This is a top 'Task' menu action &Legg til &Remove This is a top 'Task' menu action &Fjern &Modify This is a top 'Task' menu action &Endre Create D&uplicate task This is a top 'Task' menu action Opprett &Duplikat oppgave Create R&estore task This is a top 'Task' menu action Opprett &Tilbakekopiering oppgave Manage &Backup This is a top 'Task' menu action Håndter &backup display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip vis - tilbakekopier - slett eksisterende backups for merket oppgave Actions This is a top menu action Handlinger Current Profile This is a top menu action Gjeldende profil Lock This is a top menu action. Refers to toolbars Lås Show text under icons This is a top menu action Vis tekst under ikoner &Toolbars This is a top menu item &Knapperader Set paths This is a top menu action Sett stier Set paths for rsync and ssh commands This is a top menu action tooltip Sett stier for rsync og ssh kommandoer quiet mode stille modus Only show errors and important messages during window update Vis kun feil og viktige meldinger ved vindusoppdatering Run start button label Kjør Abort Abort button label Avbryt Stop the execution of running tasks NOW Abort button tooltip Stopp eksekvering av kjørende oppgaver NÅ Execution of tasks finished Done button tooltip Eksekvering av oppgaver ferdig Dry simulation checkbox label. Translate this as 'simulation' Tørr This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Dette vil gjennomføre en <b>simuleringskjøring</b> som ikke gjør endringer (men stort sett viser samme output som en ekte kjøring) shutdown shutdown button label slå av maskin Press down to shutdown the system when done shutdown button tooltip Trykk for å slå av systemet når ferdig Hide information window show/hide information window button tooltip Skjul informasjonsvindu Show information window show/hide information window button tooltip Vis informasjonsvindu profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Oppgavelisten er tom Use the "add" button on the right to get started Please keep the add word inside quotes Bruk 'Legg til' knappen til høyre for å begynne could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' kunne ikke lagres default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. standard profile could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' ble ikke opprettet Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' ble endret Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' ble ikke lagret profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Klarte ikke duplisere profilen Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Klarte ikke duplisere profilen as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' som Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplisert som Please select a task to duplicate first Velg først en oppgave å duplisere Please select a task first Velg en oppgave først Hide information window hide/show information window button tooltip Skjul informasjonsvindu Show information window hide/show information window button tooltip Vis informasjonsvindu You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Håndter oppgave display information regarding highlighted task This is a top 'Task' menu action tooltip vis informasjon angående valgt oppgave &Task &Oppgave Successfully created destination directory Opprettet målmappe Failed to create destination directory Klarte ikke opprette målmappe manageDialog profile profil task oppgave Delete Slett Restore Tilbakekopier view log vis logg destination: mål: source: kilde: hide source skjul kilde Close this window Lukk dette vindu Close Luk Please select a snapshot from the list Information message Velg et snapshot fra listen This directory does not exist Denne mappen finnes ikke This directory does not exist Information message Denne mappen finnes ikke I do not have sufficient permissions to read this directory Information message Jeg har ikke tillatelser til å se i denne mappen sync dir A full phrase: sync dir a: <DIRECTORY_A> Synk mappe A sync dir B full phrase: sync dir a: <DIRECTORY_b> synk mappe B View the logfile of the selected sync task 'view log' pushbutton tooltip Vis loggfil for valgt synkroniseringsoppgave Please wait until the thread is terminated Vent til oppgavetråden er terminert STOP STOPP Stop calculations NOW Stopp beregninger NÅ Calculations terminated by user Beregninger avbrutt av bruker not available refers to a date-time ikke tilgjengelig luckyBackup - manage backup luckyBackup - håndter backup Delete the selected snapshot and its logfile Slett valgt snapshot og dets loggfil Restore the selected snapshot Tilbakekopier valgt snapshot View the logfile of the selected snapshot Vis loggfil for valgt snapshot Calculate the differences between the source and the selected snapshot Beregn differanser mellom kilde og valgt snapshot Calculate differences Beregn differanser manageWizard not available refers to a date-time ikke tilgjengelig Delete backup this is the title of a wizard Slett backup Date & time simple label of the wizard gui Dato & tid Path ...is a directory path Sti WARNING ADVARSEL You are about to delete backup data information message - line1 Du er i ferd med å slette backup data If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Hvis informasjonen over er korrekt, klikk '<b>start</b>' for å begynne Restore backup this is the title of a wizard Gjenopprett backup Backup path ...is the backup directory path Backup sti close lukk Deleting snapshot logfile info message displayed during ...logfile deletion Slett snapshot loggfil Updating list of snapshots info message displayed during ...snaps list update Oppdaterer liste over snapshots Aborted Avbrutt Finished Ferdig simulation simulering no errors ingen feil errors found feil funnet Restoring data: main trunk info message displayed during ...data restoration Gjenoppretter data: hoved trunk Restoring data: snapshot files info message displayed during ...data restoration Gjenoppretter data: snapshot filer Deleting data info message displayed during ...data deletion Sletter data luckyBackup - manage backup luckyBackup - håndter backup Jump to previous error Hopp til forrige feil previous error forrige feil Jump to next error Hopp til neste feil next error neste feil This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Dette vil gjøre en <b>simuleringskjøring</b> som ikke gjør endringer, men stort sett viser samme utskrift som en ekte kjøring start start ABORT AVBRYT cancel avbryt The restore directory will become identical to the backup snapshot Gjenopprett-mappen vil bli identisk med backup snapshotet Existing backup files will replace the corresponding files at the restore directory information message - line1. Eksisterende backupfiler vil erstatte tilsvarende filer i Gjenopprett-mappen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Hvis informasjonen over er korrekt, klikk <b>start</b> for å begynne success info message displayed after ...logfile deletion suksess failed info message displayed after ...logfile deletion feilet Deleting file that lists snapshot changes info message displayed during ...file deletion Sletter fil som viser snapshot forskjeller success info message displayed after ...file deletion suksess failed info message displayed after ...file deletion feilet success info message displayed after ...snapshots list update suksess Select new restore directory directory selection dialog title Velg ny gjennopprett-mappe Restore path ...is the restore directory path Gjenopprett-sti No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Ingen snapshot-spesifikke data eksisterer. Hopper over... Check this, to clone the backup snapshot to the restore directory. Velg dette for å klone backup snapshotet til Gjenopprett-mappen Delete existing data that do not exist at the backup Slett eksisterende data som ikke finnes i backupen Browse locally for a new restore path Bla gjennom for å finne ny gjenopprett-mappe change endre <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple enkel advanced avansert Task name Oppgavenavn Destination Mål Source Kilde Task properties Oppgave egenskaper Enter a name for this task (eg "Backup my home directory") Oppgi et navn for oppgaven (feks. "Backup mitt hjemmeområde") Name : Navn: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definer oppgavetypen: 1. Sikkerhetskopier innholdet av kilden inn i Målområdet 2. Sikkerhetskopier kildemappen med navn inn i Målområdet 3. Synkroniser Kilde og Mål, og behold de nyeste filene begge steder Type : Type : Synchronize Source and Destination Synkroniser Kilde og Mål Enter the full path of the source directory (eg /home/luckyb/) Oppgi full sti til kildemappen (feks. /home/luckyb) Source : Kilde : browse localy bla gjennom lokalt Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Oppgi full sti til målmappen (feks. /media/backups/SiduxHome/) Destination : Mål : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeter kommandoer som feiler, x ganger Repeat on fail: Repeter ved feil: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Kryss av denne for å klone kilden til målet Fjern krysset for å opprettet en ekstra mappe inni målområdet Do NOT create extra directory Lag IKKE en ekstra mappe Advanced Avansert Shows the rsync command as it will be executed Viser rsync kommandoen som vil bli kjørt validate valider Okay Ok Cancel Avbryt Exclude Ekskluder Add any directory, file or pattern to be excluded from this task Legg til mappe, fil eller mønster å ekskludere fra oppgaven Templates Maler Exclude all temp folders (**/*tmp*/) Ekskluder alle temporære mapper (**/*tmp*/) Temporary folders Temporære mapper Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Ekskluder systemmapper for montering, /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Systemmapper for montering Exclude all backup files & folders (**~) Ekskluder alle backup filer og mapper (**~) Backup files Backup filer System folders Systemmapper Exclude all cache folders (**/*cache*/ & **/*Cache*/) Ekskluder alle cache mapper (**/*cache*/ & **/*Cache*/) Cache folders Cache mapper Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Exclude alle brukeres søppel-mapper (**/*Trash*/, **/*trash*/) Trash Søppe Exclude all "lost+found" folders (**/lost+found*/) Ekskluder alle "lost+found" mapper (**/lost+found*/) lost+found lost+found User Defined Brukerdefinert Add exclusion as entered in the next field Legg ekskluderingen til i neste felt add legg til Exclude list Ekskluderingsliste Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Angi her fil, mappe eller mønster og klikk deretter "Legg til" knappen for å legge det til ekskluderingslisten * - matcher enhver ikke-tom komponent (det slutter ved slash/skråstrek) ** - matcher alt, inkludert slash / skråstrek ? - matcher ethvert tegn bortsett fra en slash mappenavn/*** - matcher både mappen og alt inni begynnende / - mønster er forankret til et bestemt sted i hierarkiet i overføringen (normalt "kilden") avsluttende / - bare mappen matches, ikke vanlige filer, symlenker eller devices Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definer oppgavens type: 1. Sikkerhetskopier kildemappen inn i Målmappen (se også "Lag ikke en mappe" valget) 2. Synkroniser Kilde og Målmapper, og behold de nyeste filene begge steder Backup Source inside Destination Sikkerhetskopier kilden inn i Målet Description Beskrivelse Task description Oppgavebeskrivelse Type a description of the task Beskriv oppgaven Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Ekskluder alle brukeres .gvfs mapper (**/.gvfs/) launch the pattern editor start mønster-editoren Remove highlighted exclusion from list Fjern merket ekskludering fra listen remove fjern Edit highlighted inclusion Rediger valgt inkludering edit rediger Move highlighted inclusion up Flytt valgt inkludering opp move up flytt opp Move highlighted inclusion down Flytt valgt inkludering ned move down flytt ned Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Inkluder KUN denne listen med mønstre. Ingen fler. Vennligst referer til manualen for bedre forståelse av inkluderingsreglene. Dette vil slå av ekskluderingsopsjonen. Only Include Inkluder kun Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Add inclusion as entered in the next field Legg til inkluderingen i neste felt Include list Inkluderingsliste Remove highlighted inclusion from list Fjern valgt inkludering fra listen Remote Fjernt sted (remote) Use a remote host either for source or destination Bruk en fjern vertsmaskin som kilde eller mål Use remote host Bruk fjern vertsmaskin Use a remote host for destination data. Bruk en fjern vertsmaskin for måldata destination mål Use a remote host for source data. Bruk en fjern vertsmaskin for kildedata source kilde User: Bruker: Enter your username for the remote host (leave blank if not applicable). Oppgi brukernavnet for den fjerne vertsmaskinen (blank hvis ikke relevant). @Host: @vertsmaskin: Enter the name of the remote host. Oppgi navn på den fjerne vertsmaskinen. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Oppgi full sti til filen som inneholder rsync (ikke ssh) autentiseringspassordet (blank hvis ikke relevant). rsync password file: rsync passord fil: Check this to connect to an rsync Remote module Kryss av dette for å koble til en fjern rsync modul Remote module Fjern modul Use ssh as transport shell Bruk ssh som transport-skall ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Oppgi full sti til filen som inneholder den private ssh autentiseringsnøkkelen (blank hvis ikke relevant). Merk at du må gjøre alle handlinger nødvendig for en passordløs ssh fjerntilkobling vha. et OpenSSH nøkkelpar private key file : privat nøkkelfil : Enter the port you would like to use for the ssh connection (leave blank for default port) Oppgi porten du vil bruke for ssh-tilkoblingen (blank hvis standard port) port : port : Command Options Kommando valg Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Legg til eller fjern rsync opsjoner Hvis du ikke aner hva disse betyr, så ikke rør dem! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Slett filer i målområdet som ikke eksisterer i kildeområdet . "Rekurser inn i mapper" må være valgt (--delete-after & --delete-excluded hvis "Ekskluder" blir brukt) Copy device (super user only) & special files as they are (-D) Kopier enhets- (kun super user) og spesialfiler som de er (-D) Preserve device, special files Behold enhets- og spesialfiler Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Filer som er hard-lenket i kildeområdet vil hard-lenkes sammen i målområdet. ADVARSEL: Alle filer må bli inkludert i overføringssettet !! (-H) Preserve hard links Behold harde lenker Delete files on the destination Slett filer på målområdet Recurse into directories (-r) Rekurser inn i mapper (-r) Recurse into directories Rekurser inn i mapper Do not backup source files that are newer on the destination (--update) Ikke kopier filer som har nyere versjoner i målområdet enn hos kilden Skip newer destination files Hopp over nyere destinasjonsfiler Preserve the owner (super user only), group & time stamp of files (-tgo) Behold eieren (kun superbruker), gruppe og tidsstempel for filene (-tgo) Preserve ownership, times Behold eierskap, tider Preserve permissions of files (-p) Behold rettigheter på filene (-p) Preserve permissions Behold rettigheter Copy symlinks as symlinks (-l) Kopier symlenker som symlenker (-l) Preserve symlinks Behold symlenker Ignore files using a similar algorithm to CVS (-C) Ignorer filer med en algoritme som ligner CVS (-C) Ignore files the CVS way Ignorer filer på CVS måten User defined Brukerdefinert Enter here an rsync option to add (eg "--delete-excluded", "-X") Oppgi en rsync opsjon å legge til (feks. "--delete-excluded", "-X") Extra rsync options list Ekstra rsync opsjoner Remove highlighted option from list Fjern valgt opsjon fra listen Add rsync option as entered in the next field Legg til rsync opsjon som skrevet i neste felt options list Opsjonsliste Also Execute Eksekver også Execute extra commands, before or after the task. Eksekver ekstra kommandoer, før eller etter oppgaven. Before Før Enter here a command to be executed before the task and then press the "add" button to add it to the list below Oppgi en kommando som skal kjøres før oppgaven, og klikk så "Legg til" knappen for å legge den til listen nedenfor Add command as entered in the field beside Legg til kommando som angitt i feltet ved siden av Command list Kommandoliste Remove highlighted command from list Fjern valgt kommando fra listen Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Eksekver oppgaven selv om den vises med ADVARSEL melding. Vanligvis brukt når "Eksekver før" kommandoer kan fikse en advarsel (feks. montere partisjoner) OBS: kryss av dette dersom du virkelig vet hva du gjør by-pass WARNING overse ADVARSEL After Etter Enter here a command to be executed after the task and then press the "add" button to add it to the list below Oppgi en kommando som skal kjøres etter oppgaven, og klikk deretter "Legg til" knappen for å legge den til listen nedenfor Select source directory file selection dialog title Velg kildemappe Select destination directory file selection dialog title Velg målmappe Select rsync password file file selection dialog title Velg rsync passordfil Select ssh keyfile file selection dialog title Velg fil med ssh nøkler Select command to be executed file selection dialog title Velg kommando som skal kjøres Select file to read include patterns file selection dialog title Velg fil med inkluderingsmønstre Select file to read exclude patterns file selection dialog title Velg fil med ekskluderingsmønstre Please define the source before launching the pattern editor message box, message Definer kilde før du starter mønster-editoren ERROR message box message FEIL Please specify the following before proceeding: message box, message Vennligst spesifiser følgende før du fortsetter: ERROR message box message - line1 FEIL That is not allowed because '/' does not have an actual name message box message - line2 Det er ikke tillatt fordi '/' ikke har et aktuelt navn Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Kryss av for å <b>STOPPE</b> eksekvering av kjørende oppgave hvis kommandoen avslutter med en feil use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated bruk kryssboks for å <b>STOPPE</b> oppgavekjøring ved feil You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Du har erklært '/' (root) området som kilde og har IKKE krysset av 'IKKE opprett ekstra mappe' valget Please check the relevant box before proceeding message box message - line3 Vennligst sjekk relevant boks før du førtsetter You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Du har erklært rot-mappen til en partisjon som kilde, og har IKKE krysset av 'IKKE opprett ekstra mappe' valget That is not allowed because the root partition does not have an actual name message box message - line2 Det er ikke tillatt fordi rot-partisjonen ikke har et navn The name of the task you requested already exists message box message - line1 Navnet du ga finnes allerede Please specify a different name before proceeding message box message - line2 Vennligst angi et annet navn før du fortsetter The source you have declared is identical to the destination message box message - line1 Kilden du har angitt er identisk med målet Please modify at least one of them message box message - line2 Vennligst endre minst en av dem WARNING message box message - line1 ADVARSEL You have declared a destination that is part of the source directory structure message box message - line1 Du har erklært et mål som er en del av kildens mappestruktur <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Glem ikke</b> å definerer en mappe i 'ekskluder' boksen som inneholder målet You have checked the 'delete files on the destination' option message box message - line2 Du har krysset av 'slett filer i målområdet' valget without having checked 'Recurse into directories' which is required message box message - line3 uten å ha valgt 'Rekurser inn i mapper' valget, som er nødvendig 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Fjern vertsmaskin' er valgt, men ingen fjern vertsmaskinnavn er angitt Please specify a remote host name message box message - line3 Vennligst angi navn på en fjern vertsmaskin Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Eller fjern valget 'Fjern vertsmaskin' for å operere lokalt All declared fields of the task properties window seem to be ok message box message first line Alle erklærte felter i oppgavens egenskaper ser OK ut Errors have been found message box message first line Feil ble funnet command to be executed full phrase: command to be executed: <COMMAND> kommando å kjøre You have already added this exclude item message box message Du har allerede lagt til dette ekskluder-valget You have already added this include item message box message Du har allerede lagt til dette inkluder-valget You have already added this option message box message Du har allerede lagt til dette valget done ferdig done editing ferdig med redigering cancel avbryt cancel editing avbryt redigering Read exclude patterns from file Les ekskluderingsmønstre fra fil Read file: Les fil: filename filnavn browse bla gjennom ... ... Include Inkluder Add any directory, file or pattern to be included by this task Legg til en mappe, fil eller et mønster som skal inkluderes av denne oppgaven Include mode Inkluderingsmodus Mode: Modus: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Ekskluder ikke denne listen med mønstre. Vennligst referer til manualen for å forstå inkluderingsregler bedre. Normal Include Vanlig inkludering Read include patterns from file Les inkluderingsmønstre fra fil browse locally bla gjennom additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Velg dette hvis du bruker en FAT/NTFS partisjon som mål. Data-eierskap og rettigheter vil IKKE bli beholdt. (-t --modify-window=1) Destination is FAT/NTFS Mål er FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Totalt antall sikkerhetskopi snapshots å beholde Snapshots to keep: Snapshots å beholde: patternEditor directory : mappe : Select file Velg fil Please choose a file within the source Velg en fil i kildeområdet Select directory Velg mappe Please choose a directory within the source Velg en mappe i kildeområdet file : fil : pattern editor mønster editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Velg dette for å bruke mappen over som en absolutt sti. Hvis ikke valgt, vil mønsteret matche enhver fil/mappe som matcher "navn" kriteriene Define here, what would you like the pattern to refer to Definer hva du vil mønsteret skal referere til The pattern refers to a: Mønsteret refererer til en: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Bruk dette hvis mønsteret refererer til en spesiell fil feks. "/media/music/album/song.mp3" Specific file Spesifikk fil Use this if the pattern refers to a specific directory eg "/media/music/Album/" Bruk dette hvis mønsteret referer til en spesifikk mappe feks "/media/music/Album" Specific directory Spesifikk mappe Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Bruk dette hvis mønsteret refererer til et sett med filer som har noe felles, feks. alle filer med en ".txt" endelse Set of files Sett med filer Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Bruk dette hvis mønsteret refererer til et sett mapper som har noe felles, feks. alle mapper som er navngitt som "temp" Set of directories Sett med mapper name navn starts with : begynner med : Enter here the starting characters of the name of the files/directories that the pattern refers to Oppgi de første tegn i navnet til filene/mappene som mønsteret referer til ends with : slutter med: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Oppgi de siste tegn som navnet til filene/mappene mønsteret referer til feks for å referere til alle ".txt" filer, oppgi .txt Enter here the name of the files/directories that the pattern refers to Oppgi navnet til filene/mappene som mønsteret refererer til is exactly : er nøyaktig : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Oppgi tegn som finnes i en hvilken som helst posisjon i navnet til filene/mappene som mønsteret refererer til contains : inneholder : browse localy for a file bla lokalt etter filen browse localy for a directory path bla lokalt etter en mappe use absolute path bruk absolutt sti Go deeper in path by : Gå dypere i stien med: Go deeper in path by any level Gå dypere i stien etvilkårlig antall nivåer any enhver Define here the name criteria for the files/directories to be matched Angi navn-kriteriene for filene/mappene som skal matches final pattern endelig mønster The actual pattern is displayed here Det faktiske mønsteret vises her Reset the pattern editor fields to the default values Nullstill mønster editor feltene til standard verdier reset nullstill Okay Ok Cancel Avbryt Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents scheduleDialog Starting from scratch No schedules are declared !! Unable to create schedule file You have reached the maximum limit of supported scheduled profiles You have to remove an item if you wish to add another Add profile schedule Modify profile schedule Profile schedule details Invalid profile Execute profile hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at every day Sunday Monday Tuesday Wednesday Thursday Friday Saturday & on the st as in 1st day nd as in 2nd day rd as in 3rd day th as in 4th, 5th, 6th or 7th day th as in 8th day th as in 9th day th as in 10th day th as in 11th day th as in 12th....19th day th as in 20th day st as in 21st day nd as in 22nd day rd as in 23rd day th as in 24th...30th day st as in 31st day of any month of January full phrase: 'of January' February full phrase: 'of February' March full phrase: 'of March' April full phrase: 'of April' May full phrase: 'of May' June full phrase: 'of June' July full phrase: 'of July' August full phrase: 'of August' September full phrase: 'of September' October full phrase: 'of October' November full phrase: 'of November' December full phrase: 'of December' Unable to create cron file luckyBackup - schedule <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule add legg til Modify selected profile schedule modify Remove selected profile schedule remove fjern Profile : Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical time (hour:min) : set this value to -1 for the schedule to occur every hour : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : Any month : January February March April May June July August September October November December day of month : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Console Mode okay Cancel Avbryt schedule the execution of profiles as declared in the list above cronIT !! The existent schedule file is not a valid luckyBackup v. v is for version file BEWARE of the whitespace before file You have made changes without clicking the cronIT button Are you sure you want to close the schedule dialog ? Your crontab is updated successfully no crontab entries exist crontab content once, at system startup full phrase: Execute profile xxxxx, once at system startup Run once, at startup @ reboot close this dialog close lukk Display the current crontab view current crontab textDialog Enter the name of the new profile : Enter the new name of the profile : Profile description : A profile with the same name already exists Please enter a different name Enter pasword : Enter passphrase : Do not show this again for this task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option BEWARE, if your intention is NOT to clone source to destination !! Are you sure you wish to proceed ?? luckyBackup luckyBackup Okay Ok Cancel Avbryt Copy command to clipboard eMail information No Yes winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally bla gjennom Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Ok Cancel Avbryt Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_vi.qm0000666000175000017500000001176713157502317021514 0ustar luckybluckybXin vui lng i trong giy lt Please waitCalcDiffThread0ang qut v tr kt quScanning destinationCalcDiffThread.ang qut phn snapshotScanning snapshotCalcDiffThreadang qut ngunScanning sourceCalcDiffThreadJim khc bit gia snapshot v ngunSnapshot and source differencesCalcDiffThreadjD liu snapshot cing t ti trong ngun v khc nhau=Snapshot data that also exists at the source and is differentCalcDiffThreadVD liu snapshot KHNG tn ti  phn ngun-Snapshot data that do NOT exist at the sourceCalcDiffThreaddD liu t ngun khng tn ti trong phn snapshot-Source data that do NOT exist at the snapshotCalcDiffThreadZng b ha tnh khc bit gia th mc A & BSync dir A & B differencesCalcDiffThreadng b ha d liu th mc A v khng tn ti trong phn ng b ha ti th mc B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadng b ha d liu th mc B c trong phn ng b ha ca th mc A v khc nhau?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadng b ha d liu th mc B v khng tn ti trong phn ng b ha ti th mc A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadD liu snapshot s thay th d liu ngun trong qu trnh KHI PHC=The snapshot data will replace the source data during RESTORECalcDiffThreadCc phn ny s b xa trong sut qu trnh KHI PHC nu bn chn phn pha sau:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadxa cc d liu ngun ang tn ti v khng tn ti trong phn sao lu;delete existing source data that do not exist at the backupCalcDiffThreadXin vui lng <b>b chn cc la chn thch hp</b> trc khi tip tcAPlease uncheck appropriate include boxes before proceedingQObjectnCc tc v c bao gm pha sau y <b>chia s chung cng mt th mc kt qu</b> (tt c hoc  cc nhm) v t nht mt trong s nhng phn ny s sao lu li ni dung ca th mcThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject@Danh sch tc v hin ang rng[The task list is emptyQObjecthBn  bao gm cc tc v c kt ni pha sau y:8You have included both of the following connected tasks:QObjectNBn vn cha thm vo bt k tc v noYou have not included any tasksQObject<khng c tc v no  bt unothing to startQObjecthiu ny khng c tin hnh v cc nguyn nhn sau'this is not allowed for obvious reasonsQObjectiu ny s dn n vic mt tc v c quyn hy nhng tc v khc.this will lead to one task canceling the otherQObject@Danh sch tc v hin ang rng[The task list is emptyluckyBackupWindowluckybackup-0.5.0/translations/luckybackup_it.ts0000666000175000017500000071247713165410113021520 0ustar luckybluckyb CalcDiffThread Scanning destination Scansione della destinazione Please wait Attendere prego Scanning snapshot Scansione dello snapshot Scanning source Scansione della sorgente Calculating differences Calcolo delle differenze in corso Sync dir A & B differences Sincronizza le differenze tra le directory A e B Snapshot and source differences Differenze tra sorgente e lo snapshot Sync dir B data that also exists at sync dir A and is different I dati della cartella di sincronizzazione B che esistono anche nella cartella di sincronizzazione A e sono diversi Snapshot data that also exists at the source and is different L'istantanea dei dati che esiste nella sorgente ed è diversa The snapshot data will replace the source data during RESTORE I dati dello snapshot rimpiazzeranno quelli della sorgente durante il RECUPERO Data amount is huge. Displaying only first entries La quantità di dati è eccessiva. Vengono mostrati solo i primi termini Sync dir B data that do NOT exist at sync dir A Sincronizzo i dati della directory B che NON esistono nella directory A Snapshot data that do NOT exist at the source Dati dello snapshot che NON esitono nella sorgente These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Questi dati saranno trasferiti verso la sorgente durante il RIPRISTINO Sync dir A data that do NOT exist at sync dir B Sincronizzo i dati della directory A che NON esistono nella directory B Source data that do NOT exist at the snapshot Dati della sorgente che NON esitono nello snapshot These will be deleted during RESTORE only if you enable the option: Questi dati saranno eliminato durante il RIPRISTINO solo se attivi l'opzione: delete existing source data that do not exist at the backup cancella i dati della sorgente che non esistono nel backup QObject The task list is empty La lista delle operazioni è vuota nothing to start niente da avviare You have included both of the following connected tasks: Hai incluso entrambi i seguenti task connessi this is not allowed for obvious reasons questo non è permesso per ovvie ragioni Please <b>uncheck appropriate include boxes</b> before proceeding <b>Deseleziona i box inappropriati</b> prima di procedere You have not included any tasks Non hai incluso nessun task The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory I seguenti task <b>hanno la stessa cartella di destinazione</b> e solo uno di essi potrà essere eseguito correttamente this will lead to one task canceling the other questa azione comporterà che un task ne cancelli un altro Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Deselezionare i task appropriati o cambiare il tipo di tutti i task in uno diverso da '<b>Backup contenuto cartella</b>' o usare "Backup contenuto cartella" con l'opzione <b>Includi solamente</b>, prima di procedere pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting esecuzione del comando pre-task starting Full phrase: pre-task execution of command: <COMMAND> starting avvio in corso Command re-run due to failure This means that a specific command is run for once more because it failed the first time Riesecuzione del comando a causa di un errore post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting esecuzione del comando post-task starting Full phrase: post-task execution of command: <COMMAND> starting avvio in corso execution of task Full phrase: execution of task: <TASKNAME> starting esecuzione del task starting Full phrase: execution of task: <TASKNAME> starting avvio in corso Source Full phrase: source: <SOURCE_NAME Sorgente Destination Full phrase: Destination: <DEST_NAME Destinazione execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting esecuzione della prima parte del task starting Full phrase: execution of 1st part of task: <TASKNAME> starting avvio in corso Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sincronizzazione in corso to Full phrase: Syncing <DIR-A> to <DIR-B> a execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting esecuzione della seconda parte del task starting Full phrase: execution of 2nd part of task: <TASKNAME> starting avvio in corso Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sincronizzazione in corso to Full phrase: Syncing <DIR-B> to <DIR-A> a pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished esecuzione del comando pre-task finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished completato post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished esecuzione del comando post-task finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished completato execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished esecuzione della prima parte del task finished Full phrase: execution of 1st part of task: <TASKNAME> finished completato execution of task Full phrase: execution of task: <TASKNAME> finished esecuzione delle operazioni finished Full phrase: execution of task: <TASKNAME> finished completato execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error esecuzione delle operazioni finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error finito a causa dell'errore nell'esecuzione del comando pre/post-task The process reported an error Il processo ha riportato un errore Backing-up profile, logfiles and snapshot data Backup del profilo, dei file di log e dello snapshot in corso Could not open the logfile Impossibile aprire il file di log The logfile does not exist Il file di log non esiste The specified command is probably not installed Il comando specificato probabilmente non è installato The logfile could not be created Impossibile creare il file di log command: comando: exit code: codice di uscita: output: output: Last execution time Orario dell'ultima esecuzione not available non disponibile no errors nessun errore errors found trovati degli errori status stato OK OK Sync directory Directory della sincronizzazione Source directory Directory della sorgente Using remote, check is skipped In modalità remota, il check viene saltato Destination directory Directory di destinazione free as in free disk space libero WARNING ATTENZIONE I do not have the permission to read/enter sync directory A Non ho i permessi necessari per entrare nella cartella A I do not have the permission to read/enter the source directory Non ho i permessi necessari per entrare nella cartella sorgente I do not have the permission to read/enter sync directory B Non ho i permessi necessari per entrare nella cartella B I do not have the permission to read/enter the destination directory Non ho i permessi necessari per entrare nella cartella di destinazione Directory Directory and/or e/o does not exist non esiste is not mounted non è montato is empty or does not exist è vuoto o non esiste I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option <font color=red><b>NON SALTERÒ</b></font> questo task perchè hai abilitato l'opzione "by-pass WARNING" This task will be <font color=red><b>skipped</b></font> Questo task verrà <font color=red><b>saltato</b></font> CRITICAL CRITICO is empty è vuoto I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway <font color=orange><b>non salterò</b></font> questo task. La sincronizzazione sta per essere effettutata comunque This task will <font color=orange><b>not be skipped Questo task &lt;font color=orange&gt;&lt;b&gt;non sarà saltato&lt;/b&gt;&lt;/font&gt; The Destination Directory will be created if it doesn't exist and filled with new backup data La cartella destinazione sarà creata se non esiste e riempita con i nuovi dati di backup Task description Descrizione dell'operazione ReadLogFile Could not locate the logfile Could not open the logfile Impossibile aprire il file di log aboutDialog using Qt4 con Qt4 Backup & Sync Application Applicazione di backup & sincronizzazione Loukas Avgeriou Loukas Avgeriou It 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. È distribuito con la speranza che possa essere utile, ma SENZA NESSUNA GARANZIA; senza quindi la garanzia di VENDIBILITÀ o IDONEITÀ PER SCOPI SPECIFICI. See the 'License Agreement' tab for more details. Leggi la scheda 'Licenza' per maggiori dettagli. Athens, Greece Atene, Grecia Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Maintainer ufficiale del package per Arch linux Valuable advisor Consulente di fiducia Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor Packager rpm, tester e addetto alle connessioni remote Patrick Matthaei Patrick Matthaei Debian package maintainer Debian package maintainer Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Traduttore greco e tester The indifex team Il team indifex for developing the wonderful transifex localization platform and providing it for free per sviluppare la meravigliosa piattaforma di localizzazione trasifex e fornirla gratuitamente Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor Maintainer del package per OpenSUSE e addetto al packing Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Maintainer del package per Mepis e traduttore spagnolo Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Maintainer per il package ubuntu (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows esporta per MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X esporta per Mac OS X Elbert Pol Elbert Pol port to OS/2 esporta per OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild maintainer Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva package maintainer (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Free BSD package maintainer Dimitris Jemos Dimitris Jemos Slackel package maintainer ex Fedora package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Traduttore ceco Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Traduttore del manuale greco German gui translator Traduttore tedesco Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Traduttore portoghese Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Traduttore francese e addetto al packing (e non solo) Raffaele Raffaele Italian gui translator Traduttore della GUI italiana using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Traduttore russo e tester Kenny Verstraete Kenny Verstraete Dutch gui translator Traduttore olandese Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Mandriva package maintainer & traduttore della gui Bosniaca Majed Sahli Majed Sahli Arabic gui translator Traduttore della GUI araba Adrian Murariu Adrian Murariu Romanian gui translator Traduttore della GUI rumena Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer designer dell'interfaccia 0.3 fri13 fri13 v.0.3 gui designer designer dell'interfaccia 0.3 Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Se non fosse stato per lui e i suoi tutorial non avrei mai iniziato questo progetto Thomas Glatt Thomas Glatt French gui translator Traduttore della GUI francese Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Traduttore della GUI spagnola Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Traduttore della GUI svedese Catalan gui translator Traduttore della GUI catalana Slovak gui translator Traduttore della GUI slovacca Rivo Zangov Rivo Zangov Estonian gui translator Traduttore della GUI estone Nicolay Boychev Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) ospite speciale bug killer ;) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist tester di fiducia & specialista di brainstorming Yuri Vidal Yuri Vidal backupwhenidle python script developer sviluppatore del script python "backupwhenidle" Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...a tutti gli utenti di forums for their support. per il loro supporto. Especially Soprattutto that contributed to this project one way or another che hanno contribuito a questo progetto in un modo o in un altro Last but no least Ultima ma non per importanza Could not locate the license file Non trovo il file di licenza no money niente soldi If you like this app and would like to donate something to me personally, all you have to do is: Se ti piace questa app e vorresti donarmi qualcosa personalmente, tutto quello che devi fare è: Give a thumbs up at: Dai un pollice in su a: Vote good & become a fan at: Vota bene & diventa un fan: This is my reward :) Questa è la mia ricompensa money soldi I personally never had and never will accept money for this project. Io personalmente non ho mai accettato soldi per questo progetto e non lo farò mai. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Nonostante tutto, ho deciso di usare luckyBackup per supportare gente che ha davvero bisogno di un aiuto economico. So, please consider it seriously to donate money that will eventually be used for a good cause. Quindi, per favore considera seriamente di donare soldi che saranno eventualmente usadi per una giusta causa. donation link link per la donazione luckyBackup - about luckyBackup - info close chiudi &About &Info <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Supporto A&uthor A&utore &Thanks to &Ringraziamenti &License Agreement &Licenza luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup viene distribuito sotto i termini della <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! È <b>software gratuito</b>: puoi ridistribuirlo e/o modificarlo sotto i termini GNU-GPL come pubblicato dalla Free Software Foundation, versione 3 della Licenza. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora package maintainer (official repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Traduttore della GUI slovena E. Hakan Duran E. Hakan Duran Turkish gui translator Traduttore della GUI turca Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) slackware package maintainer (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...la mia metà, <b>Dimitra</b> che è sempre stata con me durante il periodo di sviluppo di questo progetto emailDialog luckyBackup - email luckyBackup - email Email a report after profile execution Invia il report via email dopo l'esecuzione del profilo command: comando: Use default This means "use the default value for this field" Usa quello di default Arguments Argomenti %f from: %f da: Enter the sender of the message Inserisci il mittente del messaggio %l logfile %l logfile %c logfile.tar.gz %c logfile.tar.gz %d date %d data %i time %i orario %p profile name %p nome del profilo %e No of errors %e numero degli errori If unchecked "TLS auto" is used. Only available for sendemail Disable TLS Disabilita TLS %t to: %t a: Enter the recipient of the message Inserisci il destinatario del messaggio %s subject: %s oggetto: Enter the subject of the message Inserisci l'oggetto del messaggio %v smtp server: %v smtp server: Enter the smtp server used to send the message Inserisci il server smtp usato per inviare il messaggio %b body: %b corpo: Enter the body of the message Inserisci il corpo del messaggio Send an email right now to test the provided arguments Invia un'email adesso per verificare gli argomenti forniti Test Test Accept changes and close dialog Accetta i cambiamenti e chiudi la finestra di dialogo Okay OK Close dialog Chiudi la finestra di dialogo Cancel Cancella Specify the conditions to send an email Specifica le condizioni per mandare un'email Enter the command to run eg sendemail Inserire il comando da eseguire arguments: argomenti: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Inserire gli argomenti del comando Conditions Condizioni Only send when error(s) occurred during a run Invia solo se ci sono errori durante l'esecuzione Error(s) occurred Ci sono degli errori Only send when profile is scheduled to run Invia solo se è stata programmata l'esecuzione del profilo Profile is scheduled Il profilo è programmato Never send an email Non inviare mai un'email Never Mai The command field is empty La casella del comando è vuota helpBrowser luckyBackup - help luckyBackup - aiuto manual/ manuale/ Okay ok logDialog luckyBackup - tasks execution progress luckyBackup - esecuzione delle operazioni <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error errore precedente next error prossimo errore close chiudi loading logfile... carico il file di log wait aspetta luckyBackupWindow commands output output window label output dei comandi rsync and pre/post task commands output is displayed here tooltip l'output di rsync e i comandi di pre/post task vengono mostrati qui Task list task list label Lista delle operazioni List of all the available tasks task list tooltip - line1 Lista di tutte le operazioni disponibili Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Usa i checkbox per includere o meno un task Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' esecuzione del profilo finished full phrase: 'Execution of profile <PROFILENAME> finished' completato simulation mode Simulazione Could not update last execution time of tasks Non è possibile aggiornare la data dell'ultima esecuzione del task Last execution time of tasks updated Data dell'ultima esecuzione del task aggiornata &Abort &Stop &Minimize to tray tray menu action &Minimizza &Restore tray menu action &Ripristina execution of profile: tray message - execution of profile: <PROFILENAME> in progress... esecuzione del profilo: in progress... tray message - execution of profile: <PROFILENAME> in progress... in corso d'opera... Removed all older snapshots data Rimossi tutti i dati dei vecchi snapshot failed to remove all older snapshots data Rimozione di tutti i dati dei vecchi snapshot fallita Unknown error errore sconosciuto Elapsed time Tempo trascorso pre-task execution of command esecuzione del comando pre-task post-task execution of command esecuzione del comando post-task Now performing task Operazione in corso Directory Cartella calculating calcolo in corso deleting files cancellazione dei file Total files transferred trying to send an email cerco di inviare un'email The system will shutdown in 1 minute Il sistema si spegnerà entro un minuto Source Sorgente Destination Destinazione All tasks completed Tutti i task sono stati completati No errors found Nessun errore errors found Si è verificato un errore logfile(s) have been created under directory: il file di log è stato creato nella cartella: Done Fatto execution of profile: esecuzione del profilo: finished completato Execution of tasks were terminated violently by user L'esecuzione dei task è stata annullata dall'utente &Profile This is a top menu item &Profilo &Settings This is a top menu item &Impostazioni &Language This is a top menu item &Lingua &Help This is a top menu item &Aiuto &Handbook full phrase: 'luckyBackup Handbook' &Manuale &About full phrase: 'about luckyBackup' &Info current profile profilo corrente include label of 'include' checkboxes includi Move the highlighted task up, by one position button tooltip Sposta il task selezionato in alto, di una posizione Move the highlighted task down, by one position button tooltip Sposta il task selezionato in basso, di una posizione jump to next error button tooltip salta al prossimo errore jump to previous error button tooltip salta all'errore precedente Task task groupbox (add, remove, modify buttons) label Task add add task button label aggiungi add task add task button tooltip aggiungi task remove remove task button label cancella remove highlighted task remove task button tooltip rimuovi il task selezionato modify modify task button label modifica modify highlighted task modify task button tooltip modifica il task selezionato Begin the execution of all included tasks start button tooltip Inizia l'esecuzione di tutti i task inclusi NOTE simulation checkbox tooltip - line2 NOTA Progressbar update will not be realistic simulation checkbox tooltip - line2 La barra di avanzamento non sarà realistica Information window information window title Informazioni Exit exit button tooltip. full phrase is: 'exit luckybackup' Esci EXIT EXIT button label ESCI minimize to tray minimizza nella barra minimizes the window to the tray area minimizza la finestra nella barra F1 F1 English Italiano &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Hai richiesto di creare un task di RIPRISTINO Please have a good look at the following task properties dialog 'create restore' message line 2/4 Fai attenzione alle seguenti proprietà del task and change anything you wish before proceeding 'create restore' message line 3/4 e cambia il necessario prima di procedere Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Controlla soprattutto 'Nome del task', 'sorgente', 'destinazione' e l'opzione (avanzata) 'salta i file più recenti sulla destinazione' ERROR ERRORE loading default profile ... information window message caricamento del profilo di default in corso ... loading profile ... information window message caricamento del profilo ... loading failed information window message caricamento fallito Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Impossibile aprire il profilo is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y non è valido per version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y versione: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profilo loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' caricato correttamente scheduled this refers to a profile programmata YES NO NO Description Descrizione saving default profile ... Information window message salvataggio in corso del profilo di default saving profile ... Information window message salvataggio profilo WARNING ATTENZIONE default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. profilo di default profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profilo profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profilo saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' salvato correttamente creating default profile ... Information window message creazione del profilo di default in corso ... creating profile ... Information window message creazione del profilo... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profilo created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' creato correttamente Would you like to save it before proceeding ? Vuoi salvarlo prima di procedere? Would you like to proceed anyway? Vuoi procedere lo stesso? super user super user is the root user super user super user mode modalità super-utente Welcome to full phrase: 'Welcome to luckyBackup' Benvenuto in English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Italiano Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Impossibule creare un nuovo profilo The name you have entered contains only invalid characters Il nome inserito contiene solo caratteri non validi Profile full phrase: 'Profile <PROFILENAME> already exists' Profilo already exists full phrase: 'Profile <PROFILENAME> already exists' esiste già Would you like to replace it ? Vuoi sostituirlo? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Impossibile sostituire il profilo Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Impossibile rinominare il profilo profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profilo renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' rinominato correttamente in default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. profilo di default renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' rinominato con successo in All relevant files (logs etc) have also been updated Tutti i file di rilievo (logs, etc...) sono stati aggiornati Failed to update all relevant files (logs etc) Impossibile aggiornare tutti i file di rilievo (logs, etc...) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Sei sicuro di voler cancellare il profilo di default a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' uno nuovo, con lo stesso nome, sarà creato Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Sei sicuro di voler cancellare il profilo Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Impossibile cancellare il profilo Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profilo deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' cancellato correttamente All relevant files (logs etc) have also been deleted Tutti i file di rilievo (logs, etc...) sono stati cancellati Failed to delete all relevant files (logs etc) Impossibile cancellare tutti i file di rilievo (logs, etc...) Profile full phrase: 'Profile <PROFILENAME> set as default' Profilo set as default full phrase: 'Profile <PROFILENAME> set as default' imposta come default All relevant files (logs etc) have also been duplicated Tutti i file di rilievo (logs, etc...) sono stati duplicati Failed to duplicate all relevant files (logs etc) Impossibile duplicare tutti i file di rilievo (logs, etc...) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Descrizione del profilo set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' imposta Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importa Profilo Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Impossibile importare il profilo Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profilo imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Importato correttamente as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' in and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' e aggiunto alla lista dei profili Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Impossibile trovare il file You have reached the maximum limit of supported tasks È stato raggiunto il limite massimo di task supportati You have to remove a task if you wish to add another !! Devi rimuovere un task se ne vuoi aggiungere altri !! Select export directory this is a dialog title for selecting a directory to export a profile to Seleziona la directory di esportazione Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Impossibile esportare il profilo to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' a Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profilo exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' esportato con successo in The directory you have selected does not contain valid profile data La directory selezionata non contiene un profilo valido Errors occurred during snapshots and logfiles transfer C'è stato un errore nel trasferimento degli snapshot e dei file di log Errors occurred during snapshots transfer C'è stato un errore nel trasferimento degli snapshot Errors occurred during logfiles transfer C'è stato un errore nel trasferimento dei file di log Errors occurred during the profile file transfer C'è stato un errore nel trasferimento del file di profilo Please select a task to modify first Seleziona un task da modificare Please select a task to remove first Seleziona un task da cancellare Are you sure you want to remove the following task ?? Sei sicuro di voler cancellare il seguente task?? Would you like to also remove: Vuoi rimuovere anche: Please select a task to manage first Seleziona un task da gestire nothing to do Niente da eseguire current crontab <font color=green>updated successfully Crontab corrente <font color=green>aggiornata con successo Email preferences have been <font color=green>updated successfully Le preferenze delle email sono state <font color=green>aggiornate con successo status stato NOT INCLUDED NON INCLUSO Checks are disabled. This task will be <b>skipped</b> Il check è disabilitato. Questo task verrà <b>saltato</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Lista dei task del profilo and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' e lista dei profili aggiornate refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' aggiornati luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Informazioni CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profilo Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Annullato: Aspetta l'interruzione di tutti i processi Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Rimozione dei vecchi snapshot e dei file di log dei task Removing Rimozione failed to remove rimozione fallita Failed to start this refers to a process avvio fallito Crashed this refers to a process crash Timed out this refers to a process Tempo scaduto Write error this refers to a process Scrivi l'errore Read error this refers to a process Leggi l'errore Unknown error this refers to a process Errore sconosciuto calculating info message displayed during ...calculations calcolo in corso transferring files info message displayed during ...file transfers trasferimento file in corso deleting files info message displayed during ...file deletions cancellazione file in corso transferring files trasferimento file in corso Total files transfered Totale file trasferiti ABORTED ANNULLATO &Refresh This is a top 'Profile' menu action Ricarica De&fault This is a top 'Profile' menu action Default Set as Default This is a top 'Profile' menu action tooltip Imposta come di Default &View/Edit Description This is a top 'Profile' menu action Vedi/Edita la descrizione View/Edit the profile description This is a top 'Profile' menu action tooltip Vedi/Edita la descrizione del profilo R&ename This is a top 'Profile' menu action Rinomina &Delete This is a top 'Profile' menu action Cancella &New This is a top 'Profile' menu action Nuovo &Save This is a top 'Profile' menu action Salva E&xport This is a top 'Profile' menu action Esporta &Import This is a top 'Profile' menu action Importa S&chedule This is a top 'Profile' menu action Programma E&mail This is a top 'Profile' menu action email Email report after profile execution This is a top 'Profile' menu action tooltip Rapporto tramite email dopo l'esecuzione del profilo &Quit This is a top 'Profile' menu action Chiudi D&uplicate This is a top 'Profile' menu action Duplica &Task This is a top menu action Task &Add This is a top 'Task' menu action Aggiungi &Remove This is a top 'Task' menu action Rimuovi &Modify This is a top 'Task' menu action Modifica Create D&uplicate task This is a top 'Task' menu action Crea un task duplicato Create R&estore task This is a top 'Task' menu action Crea un task di ripristino Manage &Backup This is a top 'Task' menu action Gestisci il Backup display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip mostra - ripristina - cancella backup esistenti dei task evidenziati Actions This is a top menu action Azioni Current Profile This is a top menu action Profilo corrente Lock This is a top menu action. Refers to toolbars Blocca Show text under icons This is a top menu action Mostra il testo sotto le icone &Toolbars This is a top menu item Barre degli strumenti Set paths This is a top menu action Imposta directory Set paths for rsync and ssh commands This is a top menu action tooltip Imposta directory per rsync e ssh quiet mode modalità silenziosa Only show errors and important messages during window update Mostra solo gli errori e i messaggi importanti durante l'aggiornamento della finestra Run start button label Avvia Abort Abort button label Annulla Stop the execution of running tasks NOW Abort button tooltip Blocca tutto ADESSO!!! Execution of tasks finished Done button tooltip Esecuzione delle operazioni completata Dry simulation checkbox label. Translate this as 'simulation' Simulazione This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Questo avvierà una <b>simulazione</b> che non farà nessuna modifica (e dà spesso lo stesso risultato di un vero processo) shutdown shutdown button label spegni Press down to shutdown the system when done shutdown button tooltip Premi per spegnere il sistema quando è tutto finito Hide information window show/hide information window button tooltip Nascondi la finestra delle informazioni Show information window show/hide information window button tooltip Mostra la finestra delle informazioni profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profilo The task list is empty La lista dei task è vuota Use the "add" button on the right to get started Please keep the add word inside quotes Premi il tasto "aggiungi" sulla destra per iniziare could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' non può essere salvato default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. profilo di default could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' non può essere creato Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profilo is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' è stato modificato Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profilo could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' non può essere salvato profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profilo Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Impossibile duplicare il profilo Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Impossibile duplicare il profilo as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' come Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profilo duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' duplicato con successo come Please select a task to duplicate first Per favore seleziona prima un task da duplicare Please select a task first per favore seleziona prima un task Hide information window hide/show information window button tooltip Nascondi la finestra delle informazioni Show information window hide/show information window button tooltip Mostra la finestra delle informazioni You have only included tasks that are going to be skipped Avete incluso solo compiti che saranno saltati Manage Task This is a top 'Task' menu action Gestisci task display information regarding highlighted task This is a top 'Task' menu action tooltip mostra informazioni circa il task selezionato &Task &Task Successfully created destination directory Directory di destinazione creata con successo Failed to create destination directory Impossibile creare la directory di destinazione manageDialog profile profilo task task Delete Cancella Restore Ripristina view log vedi log destination: destinazione: source: sorgente: hide source nascondi sorgente Close this window Chiudi questa finestra Close chiudi Please select a snapshot from the list Information message Per favore seleziona uno snapshot dalla lista This directory does not exist Questa directory non esiste This directory does not exist Information message Questa directory non esiste I do not have sufficient permissions to read this directory Information message Non ho i permessi sufficienti per leggere questa directory sync dir A full phrase: sync dir a: <DIRECTORY_A> sync dir A sync dir B full phrase: sync dir a: <DIRECTORY_b> sync dir B View the logfile of the selected sync task 'view log' pushbutton tooltip Vedi il file di log del task selezionato Please wait until the thread is terminated Per favore aspetta finchè il processo sarà terminato STOP STOP Stop calculations NOW Ferma i calcoli ADESSO Calculations terminated by user Calcoli fermati dall'utente not available refers to a date-time non disponibile luckyBackup - manage backup luckyBackup - gestisci backup Delete the selected snapshot and its logfile Cancella lo snapshot selezionato ed il suo file di log Restore the selected snapshot Ripristina lo snapshot selezionato View the logfile of the selected snapshot Vedi il file di log dello snapshot selezionato Calculate the differences between the source and the selected snapshot Calcola le differenze tra la sorgente e lo snapshot selezionato Calculate differences Calcola le differenze manageWizard not available refers to a date-time non disponibile Delete backup this is the title of a wizard Cancella il backup Date & time simple label of the wizard gui Date & ora Path ...is a directory path Percorso WARNING ATTENZIONE You are about to delete backup data information message - line1 Stai per cancellare i dati di bacup If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Se le informazioni precedenti sono esatte premere <b>start<b> per iniziare Restore backup this is the title of a wizard Riprostina backup Backup path ...is the backup directory path Percorso di backup close chiudi Deleting snapshot logfile info message displayed during ...logfile deletion Cancellazione del file di log dello snapshot in corso Updating list of snapshots info message displayed during ...snaps list update Aggiornamento della lista degli snapshot in corso Aborted Annullato Finished Completato simulation simulazione no errors nessun errore errors found ci sono alcuni errori Restoring data: main trunk info message displayed during ...data restoration Ripristino dati: tratto principale Restoring data: snapshot files info message displayed during ...data restoration Ripristino dati: file dello snapshot Deleting data info message displayed during ...data deletion Cancellazione dei dati in corso luckyBackup - manage backup luckyBackup - gestisci backup Jump to previous error Salta all'errore precedente previous error errore precedente Jump to next error Salta all'errore successivo next error errore successivo This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Questo avvierà una <b>simulazione</b> che non farà nessuna modifica (e dà spesso lo stesso risultato di un vero processo) start start ABORT ANNULLA cancel cancella The restore directory will become identical to the backup snapshot La directory di ripristino diventerà identica allo snapshot di ripristino Existing backup files will replace the corresponding files at the restore directory information message - line1. I file di backup esistenti rimpiazzeranno i corrispondenti file della directory di ripristino If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Se le informazioni precedenti sono esatte premere <b>start<b> per iniziare success info message displayed after ...logfile deletion tutto ok failed info message displayed after ...logfile deletion fallito Deleting file that lists snapshot changes info message displayed during ...file deletion Eliminare un file che mostra cambiamenti nell'istantanea success info message displayed after ...file deletion tutto ok failed info message displayed after ...file deletion fallito success info message displayed after ...snapshots list update tutto ok Select new restore directory directory selection dialog title Seleziona la nuova directory di ripristino Restore path ...is the restore directory path Ripristina il percorso No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Non esiste nessun file dello snapshot. Lo salto... Check this, to clone the backup snapshot to the restore directory. Seleziona questa opzione per duplicare l'istantanea di backup nella cartella di ripristino. Delete existing data that do not exist at the backup Elimina i dati esistenti che non sono presenti nella copia di backup. Browse locally for a new restore path Esplora localmente per un nuovo percorso di riprisitno change cambia <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Semplice advanced Avanzato Task name Nome del task Destination Destinazione Source Sorgente Task properties Proprietà del task Enter a name for this task (eg "Backup my home directory") Inserisci un nome per questo task (es. "Backup dei miei file personali") Name : Nome: Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definisci il tipo di task: 1. Backup del contenuto della Sorgente nella Destinazione 2. Backup del contenuto della Sorgente (incluso il nome) nella Destinazione 3. Sincronizza Sorgente e Destinazione, mantenendo i file più recenti da entrambi Type : Tipo: Synchronize Source and Destination Sincronizza Sorgente e Destinazione Enter the full path of the source directory (eg /home/luckyb/) Inserisci il percorso completo della cartella sorgente (es. /home/luckyb/) Source : Sorgente: browse localy sfoglia Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Inserisci il percorso completo della cartella destinazione (es. /media/backups/SiduxHome/) Destination : Destinazione: eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Con questa opzione rsync trasferirà il gruppo numerico e gli ID utente⏎ invece di utilizzare i nomi utente e di gruppo⏎ ed associarli ad entrambe le terminazioni finali.⏎ (--numeric-ids) Use numeric group and user IDs Utilizza il gruppo numerico e gli ID utente This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Questo dice al ricevente di tentare di svolgere le attività da super-user⏎ anche se il ricevente rsync non è stato avviato dal super-user.⏎ Queste attività includono:⏎ mantenere gli utenti tramite l'opzione --owner⏎ mantenere tutti i gruppi (non solo il gruppo dell'utente corrente) tramite l'opzione --groups⏎ e copiare i dispositivi tramite l'opzione --devices.⏎ (--super) Attempt super-user activities Tenta le attività da super-user Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Tenta di fare il backup anche di file aperti su sistemi windows usando vss (Funziona solo su windows 2000 e successivi) (--vss) Backup open files Backup dei file attualmente aperti Repeat any command that fails, x times Ripeti ogni comando che fallisce, x volte Repeat on fail: Ripeti al fallimento: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Seleziona questa opzione per duplicare la cartella sorgente in quella di destinazione⏎ Lascia deselezionata questa opzione per creare una cartella aggiuntiva all'interno di quella di destinazione Do NOT create extra directory NON creare altre directory Advanced Avanzato Shows the rsync command as it will be executed Mostra come sarà eseguito il comando rsync validate Controlla Okay OK Cancel Annulla Exclude Escludi Add any directory, file or pattern to be excluded from this task Aggiungi cartelle, file o pattern che vuoi escludere da questo task Templates Template Exclude all temp folders (**/*tmp*/) Escludi tutte le cartelle temporanee (**/*tmp*/) Temporary folders Cartelle temporanee Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Escludi cartelle di sistema per il montaggio /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Cartelle di sistema per il montaggio Exclude all backup files & folders (**~) Escludi tutti i file e cartelle di backup (**~) Backup files File di backup System folders Cartelle di sistema Exclude all cache folders (**/*cache*/ & **/*Cache*/) Escludi cartelle di cache (**/*cache*/ & **/*Cache*/) Cache folders Cartelle di cache Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Escludi il cestino di tutti gli utenti (**/*Trash*/, **/*trash*/) Trash Cestino Exclude all "lost+found" folders (**/lost+found*/) Escludi tutte le cartelle "lost+found" (**/lost+found*/) lost+found lost+found User Defined Definito dall'utente Add exclusion as entered in the next field Aggiungi la cartella da escludere alla lista add aggiungi Exclude list Lista di esclusione Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Inserisci file, cartelle o pattern e premi il pulsante "aggiungi" per aggiungerlo alla lista * - corrisponde a tutti i componenti non vuoti (si blocca con gli slashes) ** - corrisponde a tutto, incluso gli slashes ? - corrisponde a qualsiasi carattere eccetto lo slashes trailing nome_cartella/*** - corrisponde alla cartella e il suo contenuto starting / - corrisponde normalmente alla sorgente trailing / - corrisponde solo alla cartelle, sono esclusi file, link simbolici e dispositivi Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definisci il tipo di attività:⏎ 1. Duplica la cartella Sorgente, dentro alla Destinazione (vedi anche l'opzione "NON creare una cartella")⏎ 2. Sincronizza Sorgente & Destinazione, mantenendo i file più recenti all'interno di entrambe Backup Source inside Destination Sorgente del backup dentro la Destinazione Description Descrizione Task description Descrizione del task Type a description of the task Scrivi una descrizione del task Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Esclude directory sistema: /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Escludi tutte le cartelle ".gvfs" (**/.gvfs/) launch the pattern editor avvia l'editor dei pattern Remove highlighted exclusion from list Rimuovi l'elemento selezionata dalla lista remove cancella Edit highlighted inclusion Edita l'inclusione evidenziata edit edit Move highlighted inclusion up Sposta su l'inclusione evidenziata move up muovi su Move highlighted inclusion down Sposta giù l'inclusione evidenziata move down muovi giù Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Includi SOLO questa lista di pattern. Nulla di più.⏎ Per favore fai riferimento al manuale per comprendere meglio le regole di inclusione.⏎ Questo disabiliterà l'opzione di esclusione. Only Include Includi soltanto Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Inserisci file, cartelle o pattern e premi il pulsante "aggiungi" per aggiungerlo alla lista * - corrisponde a tutti i componenti non vuoti (si blocca con gli slashes) ** - corrisponde a tutto, incluso gli slashes ? - corrisponde a qualsiasi carattere eccetto lo slashes trailing nome_cartella/*** - corrisponde alla cartella e il suo contenuto starting / - corrisponde normalmente alla sorgente trailing / - corrisponde solo alla cartelle, sono esclusi file, link simbolici e dispositivi Add inclusion as entered in the next field Aggiungi la cartella da includere alla lista Include list Lista di inclusione Remove highlighted inclusion from list Rimuovi l'elemento selezionato dalla lista Remote Remoto Use a remote host either for source or destination Usa un host remoto per sorgente o destinazione Use remote host Usa un host remoto Use a remote host for destination data. Usa un host remoto come destinazione destination destinazione Use a remote host for source data. Usa un host remoto come sorgente source sorgente User: Utente: Enter your username for the remote host (leave blank if not applicable). Inserisci l'username per l'host remoto (non puoi lasciarlo vuoto). @Host: @Host: Enter the name of the remote host. Inserisci il nome dell'host remoto: Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Inserisci il percorso completo del file che contiene la password per rsync (non per ssh), non puoi lasciarlo vuoto. rsync password file: File password rsync: Check this to connect to an rsync Remote module Seleziona questo per connetterti ad un modulo rsync remoto Remote module Modulo remoto Use ssh as transport shell Usa ssh come trasporto ssh ssh password: password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Inserisci il percorso completo del file che contiente la chiave privata ssh (non puoi lasciarlo vuoto). Nota che devi eseguire tutte le azioni richieste per una connessione ssh senza password usanto una coppia di chiavi OpenSSH private key file : File chiave privata: Enter the port you would like to use for the ssh connection (leave blank for default port) Inserisci la porta per la connessione ssh (lasciandola vuota sarà usata quella di default) port : porta: Command Options Opzioni comando Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Aggiungi o rimuovi opzioni di rsync. Se non sai cosa significhi, non modificare nulla!! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Elimina i file nella cartella di destinazione che non esistono in quella sorgente⏎ . "Ricorri nelle cartelle" deve essere selezionato ⏎ (--delete-after & --delete-excluded se "Escludi" è utilizzato) Copy device (super user only) & special files as they are (-D) Preserva i dispositivi (solo super utente) e i file speciali come tali (-D) Preserve device, special files Preserva dispositivi, file speciali Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) File che sono "hard-linked" sulla sorgente lo saranno anche sulla destinazione ATTENZIONE: Tutti i file devono essere inclusi nel gruppo di trasferimento!! (-H) Preserve hard links Preserva gli hard link Delete files on the destination Cancella file sulla destinazione Recurse into directories (-r) Entra ricorsivamente nelle cartelle (-r) Recurse into directories Entra ricorsivamente nelle cartelle Do not backup source files that are newer on the destination (--update) Non salvare file della sorgente che sono più recenti sulla destinazione (--update) Skip newer destination files Salta file più recenti sulla destinazione Preserve the owner (super user only), group & time stamp of files (-tgo) Preserva il proprietario (solo super utente), gruppo e tempi di accesso dei file (-tgo) Preserve ownership, times Preserva proprietario, tempi Preserve permissions of files (-p) Preserva i permessi dei file (-p) Preserve permissions Preserva permessi Copy symlinks as symlinks (-l) Copia i link simbolici come tali (-l) Preserve symlinks Preserva link simbolici Ignore files using a similar algorithm to CVS (-C) Ingora i file usando l'algoritmo CVS (-C) Ignore files the CVS way Ignora file usando l'algoritmo CVS User defined Definito dall'utente Enter here an rsync option to add (eg "--delete-excluded", "-X") Inserisci un opzione rsync da aggiungere (es "--delete-excluded", "-X") Extra rsync options list Lista opzioni extra per rsync Remove highlighted option from list Rimuovi l'opzione selezionata dalla lista Add rsync option as entered in the next field Aggiungi l'opzione rsync alla lista options list lista opzioni Also Execute Esegui comandi Execute extra commands, before or after the task. Esegui comandi extra, prima o dopo il task. Before Prima Enter here a command to be executed before the task and then press the "add" button to add it to the list below Inserisci un comando da eseguire prima del task e premi il pulsante "aggiungi" per aggiungerlo alla lista Add command as entered in the field beside Aggiungi il comando alla lista Command list Lista comandi Remove highlighted command from list Rimuovi il comando selezionato dalla lista Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Esegui l'attività anche se questa appare con un messaggio di ATTENZIONE⏎ Normalmente usato quando i comandi "Esegui Prima" possono correggere un messaggio di avviso (per esempio montare delle partizioni)⏎ ⏎ ATTENZIONE: seleziona questo se sei sicuro di sapere che cosa stai facendo by-pass WARNING by-pass ATTENZIONE After Dopo Enter here a command to be executed after the task and then press the "add" button to add it to the list below Inserisci un comando da eseguire dopo il task e premi il pulsante "aggiungi" per aggiungerlo alla lista Select source directory file selection dialog title Seleziona la cartella sorgente Select destination directory file selection dialog title Seleziona la cartella di destinazione Select rsync password file file selection dialog title Seleziona un file di password rsync Select ssh keyfile file selection dialog title Seleziona la chiave ssh Select command to be executed file selection dialog title Seleziona il comando da eseguire Select file to read include patterns file selection dialog title Seleziona un file da leggere per l'inclusione dei pattern Select file to read exclude patterns file selection dialog title Seleziona un file da leggere per l'esclusione dei pattern Please define the source before launching the pattern editor message box, message Per favore definisci la sorgente prima di avviare l'editor di pattern ERROR message box message ERRORE Please specify the following before proceeding: message box, message Specificare alcuni dati prima di proseguire: ERROR message box message - line1 ERRORE That is not allowed because '/' does not have an actual name message box message - line2 Ciò non è permesso perché la cartella root '/' non ha un nome Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Lascia la casella contrassegnata, per <b>FERMARE</b> l'esecuzione dell'attività in corso se questo comando restituisce un errore use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated utilizza i riquadri per <b>FERMARE</b> l'esecuzione dell'attività in caso di errore You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Hai dichiarato la ca Please check the relevant box before proceeding message box message - line3 Per favore seleziona la casella appropriata prima di procedere You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Hai dichiarato la cartella root di un'intera partizione come sorgente e NON hai selezionato la caselle "NON creare una cartella extra" That is not allowed because the root partition does not have an actual name message box message - line2 Questo non è permesso poiché la partizione root non ha attualmente un nome The name of the task you requested already exists message box message - line1 Il nome del task è già esistente Please specify a different name before proceeding message box message - line2 Specifica un nome diverso prima di procedere The source you have declared is identical to the destination message box message - line1 Sorgente e destinazione coincidono Please modify at least one of them message box message - line2 Modificare almeno una tra quelle WARNING message box message - line1 ATTENZIONE You have declared a destination that is part of the source directory structure message box message - line1 Hai scelto una destinazione che si trova nella struttura della cartella sorgente <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Non dimenticare</b> di definire una cartella nel gruppo "escludi" che conterrà la destinazione You have checked the 'delete files on the destination' option message box message - line2 Hai selezionato l'opzione "elimina i file nella cartella di destinazione" without having checked 'Recurse into directories' which is required message box message - line3 senza avere selezionato "Ricorri nelle directory", che è richiesto 'Remote Host' is checked, but no remote host name is declared message box message - line2 "Host Remoto" è selezionato, ma non è stato impostato nessun nome Please specify a remote host name message box message - line3 Specificare un nome per l'host remoto Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Altrimenti deselezionare 'Host Remoto' per lavorare in locale All declared fields of the task properties window seem to be ok message box message first line Tutti i campi delle proprietà del task sembrano essere corretti Errors have been found message box message first line Si sono verificati degli errori command to be executed full phrase: command to be executed: <COMMAND> comando da eseguire You have already added this exclude item message box message Hai già aggiungo questo elemento da escludere You have already added this include item message box message Hai già aggiungo questo elemento da includere You have already added this option message box message Hai già aggiunto questa opzione done fatto done editing modifica completata cancel cancella cancel editing annulla modifica Read exclude patterns from file Leggi i pattern da escludere in un file Read file: Leggi il file: filename nome del file browse esplora ... ... Include Includi Add any directory, file or pattern to be included by this task Aggiungi una cartella, un file o un pattern da includere in questa attività Include mode Modalità di inclusione Mode: Modalità: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Non escludere questa lista di pattern.⏎ Per favore consulta il manuale per comprendere meglio le regole di inclusione. Normal Include Inclusione Normale Read include patterns from file Leggi i pattern da includere in un file browse locally cerca localmente additional options: opzioni aggiuntive: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Seleziona questa opzione per utilizzare una partizione FAT/NTFS come destinazione⏎ Il proprietario ed i permessi dei dati NON saranno mantenuti.⏎ (-t --modify-window=1) Destination is FAT/NTFS La destinazione è FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Tenta di fare il backup anche di file aperti su sistemi windows usando vss (Funziona solo su windows 2000 e successivi) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Ripristina permessi Set the total number of backup snapshots to keep Imposta il numero totale di istantanee di backup da mantenere Snapshots to keep: Snapshots da mantenere: patternEditor directory : cartella : Select file Seleziona file Please choose a file within the source Per favore seleziona un file all'interno della cartella sorgente Select directory Scegli la directory Please choose a directory within the source Per favore scegli una cartella all'interno della sorgente file : file : pattern editor editor dei pattern Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Seleziona questo per utilizzare la cartella sopra come un percorso assoluto⏎ se deselezionato, il pattern assocerà qualsiasi file/cartella che segue il criterio "nome" Define here, what would you like the pattern to refer to Scrivi qui a che cosa il pattern si dovrebbe riferire The pattern refers to a: Il pattern si riferisce a: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Utilizza questo se il pattern si riferisce ad un file specifico⏎ eg "/media/music/album/song.mp3" Specific file Specifica file Use this if the pattern refers to a specific directory eg "/media/music/Album/" Utilizza questo se il pattern si riferisce ad una cartella specifica⏎ eg "/media/music/Album/" Specific directory Specifica directory Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Utilizza questo se il pattern si riferisce ad una lista di file che hanno qualcosa in comune⏎ per esempio tutti i file con l'estensione ".txt" Set of files Set di file Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Utilizza questo se il pattern si riferisce ad una serie di cartella che hanno qualcosa in comune⏎ per esempio tutte le cartelle che sono chiamate "temp" Set of directories Set di directory name nome starts with : comincia con: Enter here the starting characters of the name of the files/directories that the pattern refers to Digita qui i caratteri iniziali del nome dei files/delle cartelle ai quali i pattern si riferisce ends with : finisce con: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Digita qui i caratteri finali del nome dei file/delle cartelle ai quali il pattern si deve riferire⏎ per esempio per riferirsi a tutti i file ".txt", digita ⏎ .txt Enter here the name of the files/directories that the pattern refers to Digita qui il nome dei file/delle cartelle ai quali il pattern si deve riferire is exactly : è esattamente: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Digita qui i caratteri contenuti in una qualunque posizione del nome dei file/delle cartelle ai quali il pattern si riferisce contains : contiene: browse localy for a file cerca localmente un file browse localy for a directory path sfoglia localmente il percorso di cartelle use absolute path usa percorso assoluto Go deeper in path by : Vai in profondità nel percorso di: Go deeper in path by any level Vai in profondità nel percorso in qualunque livello any qualunque Define here the name criteria for the files/directories to be matched Definisci qui il criterio per i nomi da applicare ai file/alle cartelle final pattern pattern finale The actual pattern is displayed here Il pattern attuale è mostrato qui Reset the pattern editor fields to the default values Ripristina i campi dell'editor di pattern ai valori predefiniti reset reset Okay ok Cancel Annulla Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Utilizza questo per richiamare sotto-cartelle più interne⏎ per esempio⏎ La cartella "/media/music" include 3 sotto-cartelle:⏎ 1.Rock⏎ 2.Jazz⏎ 3.Colonne Sonore⏎ e ti piacerebbe considerare tutto il contenuto di queste 3 cartelle, definisci ciò che segue:⏎ * Serie di cartelle⏎ * Contenuto della cartella⏎ * percorso:/media/music/⏎ * Vai ancora più all'interno della cartella "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Utilizza questo se il pattern si riferisce al contenuto di una cartella (o di una lista di cartelle), non alla cartella stessa⏎ per esempio il contenuto della cartella "/media/music/Album/" Directory contents Contenuto della directory scheduleDialog Starting from scratch In partenza da zero No schedules are declared !! Nessuna pianificazione presente!! Unable to create schedule file Impossibile creare il file di pianificazione You have reached the maximum limit of supported scheduled profiles È stato raggiunto il limite massimo di profili di schedulazione supportati You have to remove an item if you wish to add another Devi rimuovere un elemento se ne vuoi aggiungere altri Add profile schedule Aggiungi profilo di pianificazione Modify profile schedule Modifica profilo di pianificazione Profile schedule details Dettagli del profilo di pianificazione Invalid profile Profilo non valido Execute profile Esegui profilo hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at a every ogni day giorno Sunday Domenica Monday Lunedi Tuesday Martedi Wednesday Mercoledi Thursday Giovedi Friday Venerdi Saturday Sabato & on the & del st as in 1st day ° nd as in 2nd day ° rd as in 3rd day ° th as in 4th, 5th, 6th or 7th day ° th as in 8th day ° th as in 9th day ° th as in 10th day ° th as in 11th day ° th as in 12th....19th day ° th as in 20th day ° st as in 21st day ° nd as in 22nd day ° rd as in 23rd day ° th as in 24th...30th day ° st as in 31st day ° of any month di ogni mese of di January full phrase: 'of January' Gennaio February full phrase: 'of February' Febbraio March full phrase: 'of March' Marzo April full phrase: 'of April' Aprile May full phrase: 'of May' Maggio June full phrase: 'of June' Giugno July full phrase: 'of July' Luglio August full phrase: 'of August' Agosto September full phrase: 'of September' Settembre October full phrase: 'of October' Ottobre November full phrase: 'of November' Novembre December full phrase: 'of December' Dicembre Unable to create cron file Impossibile creare il file cron luckyBackup - schedule luckyBackup - pianificazione <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">⏎ <html><head><meta name="qrichtext" content="1" /><style type="text/css">⏎ p, li { white-space: pre-wrap; }⏎ </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;">⏎ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programmazione dell'esecuzione del profilo</span></p></body></html> Add a new profile schedule Aggiungi un nuovo profilo di pianificazione add aggiungi Modify selected profile schedule Modifica il profilo di pianificazione selezionato modify modifica Remove selected profile schedule Rimuovi il profilo di pianificazione selezionato remove cancella Profile : Profilo: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Salta i task che generano un avviso 'CRITICO' dopo il controllo delle cartelle skip critical salta critici time (hour:min) : orario (ore:minuti): set this value to -1 for the schedule to occur every hour : : :delay :ritardo Delay luckybackup execution at startup Ritardo dell'esecuzione di luckyBackup dall'avvio min means: minutes (time) min day of week : giorno della settimana: Any Ogni month : mese: January Gennaio February Febbraio March Marzo April Aprile May Maggio June Giugno July Luglio August Agosto September Settembre October Ottobre November Novembre December Dicembre day of month : giorno del mese: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Seleziona questo se il tuo pc non supporta un'interfaccia grafica (es. server) Console Mode Console Mode okay ok Cancel Annulla schedule the execution of profiles as declared in the list above pianifica l'esecuzione dei profili come descritto sopra cronIT !! pianifica !! The existent schedule file is not a valid luckyBackup v. v is for version Il file di pianificazione esistente non è un file luckyBackup v. valido file BEWARE of the whitespace before file file You have made changes without clicking the cronIT button Hai effettuato dei cambiamenti senza premere il tasto cronIT Are you sure you want to close the schedule dialog ? Sei sicuro di volere chiudere la finestra di pianificazione? Your crontab is updated successfully La tua crontab è stata aggiornata con successo no crontab entries exist non esiste alcuna voce nella crontab crontab content contenuto del crontab once, at system startup full phrase: Execute profile xxxxx, once at system startup una volta, all'avvio del sistema Run once, at startup Esegui una volta, all'avvio @ reboot @ riavvio close this dialog chiudi questo dialogo close chiudi Display the current crontab Mostra il crontab corrente view current crontab vedi il crontab corrente textDialog Enter the name of the new profile : Inserisci il nome del nuovo profilo: Enter the new name of the profile : Inserisci il nuovo nome del profilo: Profile description : Descrizione del profilo A profile with the same name already exists Esiste già un profilo con questo nome Please enter a different name Inserisci un nome diverso Enter password : Inserisci la password: Enter passphrase : Inserisci la frase di sicurezza: Do not show this again for this task Non mostrare di nuovo per questo task You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Hai selezionato l'opzione "Copia il contenuto della cartella sorgente"<br>insieme all'opzione "elimina i file nella cartella di destinazione" BEWARE, if your intention is NOT to clone source to destination !! STAI ATTENTO, se la tua intenzione NON è quella di duplicare il sorgente nella destinazione !! Are you sure you wish to proceed ?? Sei sicuro di volere procedere ?? luckyBackup luckyBackup Okay ok Cancel Annulla Copy command to clipboard Copia il comando negli appunti eMail information email di informazioni No No Yes winDialog luckyBackup luckyBackup declaration of paths dichiarazione dei percorsi rsync: rsync: Enter the full path of the rsync command Inserisci il percorso completo del comando rsync browse locally cerca localmente Use default value Usa il valore di default ssh: ssh: Enter the full path of the ssh command Inserisci il percorso completo del comando ssh cygpath: cygpath: Enter the full path of the cygpath command Inserire il percorso completo del comando cygpath dosdev: dosdev: Enter the full path of the dosdev command Inserisci percorso completo del comando dosdev main dir: cartella principale: Enter the full path of the luckybackup directory Inserisci percorso completo della cartella luckybackup vshadow dir: cartella vshadow: Enter the full path of the vshadow directory temp dir: cartella temporanea: Enter the full path of the temporary directory Inserisci percorso completo della cartella temporanea Okay OK Cancel Cancella Select rsync command file selection dialog title Seleziona il comando rsync Executable Files (*.exe) File eseguibili (*.exe) Select ssh command file selection dialog title Seleziona il comando ssh Select cygpath command file selection dialog title Seleziona comando cygpath Select dosdev command file selection dialog title Seleziona comando dosdev luckybackup-0.5.0/translations/luckybackup_gl.qm0000666000175000017500000036406613157502317021503 0ustar luckybluckybRgSTUV W4X]Y`aV/8;!OUDVo01xHYKz>SY],_1ggc;ghYjCszjHf fyfvSs ZD\M{5Ez $9-E45aKaPa<awwa.a7h@mOEefsص(ʧH5ca$YhYwT"fe"&%({Y)>*`3*0Z+]+^+^,Bg/]^3:xzZKYx}.mba/W!s$/d>ĉ9˱`ImS&ى>OX+ڭ=qGr :~ duKg9(e'.+6F7?<$GI|YOW˙Q197QR[zfC/qhDhwpNGpNX>q>tc?! '-XOUYEx665{i{uԳLŵF^  ,'D K #u&o:)O?+fN/rs2h8IDZBZyG]C cIPoEZH;\c+jcof:/O)!2Y?kZI-gM*2Q+Y1Z CNk0P,V÷2mIYsԥծ{*BV-[%n&ESu"-G!ҐOo ^ay4)#4)*߬,bj8My{:M]T_rUAe3h !viJ9iUtM]4}^K.e r.e1 QoTW^c@"4t"d LMKŇʵ"0[Iܯ"3 )>^b_n:eϗ]ub w ‰1'yC6_^ PsQk&NAADȪcmL~#OjzeJhiYz@(i^ClwhSt;}7zq;6:օ I|ICI IlIIIfwwwx2,6g^AUфr A.0HeF|i~d$jOi  D8Avm=@X\xLjl@) m6>/nnhp^txly&~i=FG9}ruȕȕȕQXvJg:XtipXRߘ(,v_" o.;K zCP^KOVfѠ_hDb#_f0;ghnhnSiiFkՒXkՒsD v3$yp|;~gvb"M(Ti4KuqEIIdnd`:LV.WylSZȒR')L=':E@ZK7  |uF ` rq`v  X&` ?T5B^g;)+ex2 9Y>EʘE-N3FUtfYvJ`xea#zVvu8v:i"{_gI:D3AڄDFtFiFϕhΕ\U̙Uuhr d7jgFG%jlBjȕj/CmaXT#U_U9Dn<~E@ǧs~Ha̐xjYII % ׃LkOKvzߖ;k+Y 3M3L2w UJ5;tn"'N,!8-"u/ek9GF\аIX93JZJεL2N[pPO2cRy ,V)u|geh ,mA5@x/Y y(]E=ʴ5]ʶݭ,7Xti)$ N^ [ cB  q.R^ I *{ +)5 8ܧ CcK$ MgyG Mg N# WC ]ϡ dl j^> l lRcD mEQ qN| R~| ]G @S0 eH& c ͆Et x a Z% '.e S ׊$U =- .E & ѾY  s N   Z9 -0 -nt /l$ 7E 8< ?y @ Q ` f g j: l pN% zj Cփ vc -E = H* ~W? I 24* ,Z~ ^Z h C GC _ɻ f@ g.w! g.wb g.w] iN0 i5 k m.0 {r\ { { p | F] Ҟ " T  Y Y4 } >ӊP @e9 A. Eh F F. LM N0}e P}eb Sz6 X ^: bU o o9P r'^_ vh  =H j  r9v \%w "C UN ؄ ~  % T9 s^I % a  & ;* o @ T[ # &,s &'f& ) *}E + ,D ,D P c i {C e 1" ) i {@ Y" ms cBH lg Xwe )G fQ z< lzQ J I p j Y; ip [R " ,g ݗT #M 䕜KS n 0 z 8t 8& 8h 65 =-{s3?CRԵxj'~(q~/#YE7GJ 5Tba\P*].5a%e~'mRBp{>7yi*w{4*TYu{v/sCq$ԍ֭\ 3CM{̖šk{do4MLU"%oKC#TD!(դ*(դˠ-X`4?<EGE^IšNRN>}c=f/Wln5qs8s9-u@\u@\Z~(NQtNk4nfCxt1){g*0vɟ)*ʱNtu_+\[u:_‰G·ߖ|=ɣ0.gYPŕEi0Calculando as diferenzasCalculating differencesCalcDiffThreadA cantidade de datos moi grande. Mostrando s as primeiras entradas2Data amount is huge. Displaying only first entriesCalcDiffThread Agarde Please waitCalcDiffThread(Analizando o destinoScanning destinationCalcDiffThread$Analizando a imaxeScanning snapshotCalcDiffThread$Analizando a orixeScanning sourceCalcDiffThreadDDiferenzas entre a imaxe e a orixeSnapshot and source differencesCalcDiffThreadtDatos da imaxe que tamn existen na orixe e son difetentes=Snapshot data that also exists at the source and is differentCalcDiffThreadNDatos da imaxe que NON existen na orixe-Snapshot data that do NOT exist at the sourceCalcDiffThreadNDatos da orixe que NON existen na imaxe-Source data that do NOT exist at the snapshotCalcDiffThreadZDiferenzas entre os cartafoles de sinc. A e BSync dir A & B differencesCalcDiffThreadbDatos do cartafol de sinc. A que NON existen no B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadDatos no cartafol de sinc. B que existen no cartafol de sinc. A e son diferentes?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadbDatos do cartafol de sinc. B que NON existen no A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadOs datos da imaxe substituirn os datos da orixe durante o RESTABELECEMENTO=The snapshot data will replace the source data during RESTORECalcDiffThreadEstes eliminaranse durante o RESTABELECEMENTO s se activa esta opcin:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThread|eliminar os datos existentes na orixe que non existen na copia;delete existing source data that do not exist at the backupCalcDiffThreadCopiando os datos do perfil, dos ficheiros de rexistro e da imaxe.Backing-up profile, logfiles and snapshot dataQObjectCRTICOCRITICALQObjectPNova execucin da orde debido a un falloCommand re-run due to failureQObjectXNon foi posbel abrir o ficheiro do rexistroCould not open the logfileQObjectDestino DestinationQObject&Cartafol de destinoDestination directoryQObjectCartafol DirectoryQObjectNon hai permisos para ler/entrar no cartafol de sincronizacin A;I do not have the permission to read/enter sync directory AQObjectNon hai permisos para ler/entrar no cartafol de sincronizacin B;I do not have the permission to read/enter sync directory BQObjectnNon hai permisos para ler/entrar no cartafol de destinoDI do not have the permission to read/enter the destination directoryQObjectjNon hai permisos para ler/entrar no cartafol de orixe?I do not have the permission to read/enter the source directoryQObject<font color=orange><b>Non se saltar</b></font> esta tarefa. A sincronizacin executarase de todos os xeitosiI will not skip this task. Synchronizing is going to be performed anywayQObject <font color=red><b>NON SE SALTAR</b></font> esta tarefa porque ten activada a opcin "ignorar AVISO"mI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject>Data e hora da ltima execucinLast execution timeQObjectOKOKQObjectr<b>Desmarque os recadros axeitados</b> antes de continuarAPlease uncheck appropriate include boxes before proceedingQObjectDesmarque os cadros axeitados ou cambie todos os tipos de tarefas a outras que <b>Copien os contidos do cartafol</b> ou use Copiar os contidos do cartafol xunto coa opcin <b>Inclur s</b> antes de continuarPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject OrixeSourceQObject"Cartafol de orixeSource directoryQObject(Sincronizar cartafolSync directoryQObjectSincronizandoSyncingQObjectSincronizando'Full phrase: Syncing to SyncingQObject(Descricin da tarefaTask descriptionQObjectSe non existe, crearase o cartafol de destino e encherase cos datos da nova copia de seguranza]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject(As seguintes tarefas includas <b>comparten o mesmo cartafol de destino</b> (xuntas ou en grupos) e polo menos unha copiar os contidos dun cartafolThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectXNon foi posbel crear o ficheiro do rexistro The logfile could not be createdQObjectBO ficheiro do rexistro non existeThe logfile does not existQObject6O proceso informou dun erroThe process reported an errorQObjectfPosibelmente a orde especificada non est instalada/The specified command is probably not installedQObject>A lista de tarefas est baleiraThe task list is emptyQObject`Esta tarefa <font color=orange><b>non se saltar3This task will not be skippedQObjecthEsta tarefa <font color=red><b>ignorarase</b></font>7This task will be skippedQObjectBUso remoto, comprobacin ignoradaUsing remote, check is skippedQObject AVISOWARNINGQObjectPIncluiu as seguintes tarefas conectadas:8You have included both of the following connected tasks:QObject6Non incluiu ningunha tarefaYou have not included any tasksQObjecte/oand/orQObject orde: command: QObjectnon existedoes not existQObjecterros atopados errors foundQObject>execucin da 1 parte da tarefaexecution of 1st part of taskQObject>execucin da 1 parte da tarefa?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObject>execucin da 2 parte da tarefaexecution of 2nd part of taskQObject&execucin da tarefaexecution of taskQObject&execucin da tarefa3Full phrase: execution of task: finishedexecution of taskQObject*a execucin da tarefadFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject cdigo de sada: exit code: QObjectrematadafinishedQObjectrematada?Full phrase: execution of 1st part of task: finishedfinishedQObjectrematada3Full phrase: execution of task: finishedfinishedQObjectrematadaCFull phrase: post-task execution of COMMAND: finishedfinishedQObject`rematou por un erro da execucin pre/post-tarefa9finished because of pre/post task command execution errorQObject librefreeQObjectest baleirois emptyQObject4est baleiro ou non existeis empty or does not existQObject non est montadois not mountedQObjectsen erros no errorsQObjectnon dispobel not availableQObject nada que iniciarnothing to startQObject sada: output: QObject:execucin da orde post-tarefapost-task execution of commandQObject:execucin da orde post-tarefaCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject8execucin da orde pre-tarefapre-task execution of commandQObject8execucin da orde pre-tarefaBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectcomezandostartingQObjectcomezando?Full phrase: execution of 1st part of task: startingstartingQObjectcomezando?Full phrase: execution of 2nd part of task: startingstartingQObjectcomezando3Full phrase: execution of task: startingstartingQObjectcomezando?Full phrase: post-task execution of command: startingstartingQObject estadostatusQObjectJisto non se permite por razns obvias'this is not allowed for obvious reasonsQObject\isto provocar que unha tarefa cancele a outra.this will lead to one task canceling the otherQObjectatoQObjecta'Full phrase: Syncing to toQObjectXNon foi posbel abrir o ficheiro do rexistroCould not open the logfile ReadLogFile &Sobre&About aboutDialog$&Acordo da Licenza&License Agreement aboutDialog&Asistencia&Support aboutDialog&Grazas a &Thanks to aboutDialog6...a todos os ususarios dos...to all users of the  aboutDialog A&utorA&uthor aboutDialogAtenas, GreciaAthens, Greece aboutDialoghAplicativo para copias de seguranza e sincronizacinBackup & Sync Application aboutDialog^Non foi posbel localizar o ficheiro da licenza!Could not locate the license file aboutDialogEspecialmente Especially aboutDialog0Apoiar este proxecto en:Give a thumbs up at: aboutDialogEu persoalmente nunca aceptei e nunca aceptarei cartos por este proxecto.DI personally never had and never will accept money for this project. aboutDialogSe lle gusta este aplicativo e desexa realizar unha doazn, todo o que ten que facer :`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialog(Distribese para se til pero SEN GARANTA NINGUNHA; nin sequera a garanta ESTNDAR para bens semellantes nin ADAPTACIN A UN PROPSITO PARTICULAR.It 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. aboutDialog@ltimo pero non menos importanteLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogpVexa a lapela Acordo da Licenza para mis informacin.1See the 'License Agreement' tab for more details. aboutDialogPor iso, considere facer unha doazn econmica a unha boa causa._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog4Esa a mia recompensa :)This is my reward :) aboutDialogTom TryfonidisTom Tryfonidis aboutDialogVVotar good e converterse nun seguidor en:Vote good & become a fan at: aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialog pecharclose aboutDialog"ligazn para doar donation link aboutDialog*foros polo seu apoio.forums for their support. aboutDialog&luckyBackup - sobreluckyBackup - about aboutDialogApoio econmicomoney aboutDialog&Apoio non econmicono money aboutDialogjque colaboraron con este proxecto dun ou doutro xeito3that contributed to this project one way or another aboutDialog%b corpo:%b body: emailDialog"%c logfile.tar.gz%c logfile.tar.gz emailDialog%d data%d date emailDialog%e N de erros%e No of errors emailDialog %f de:%f from: emailDialog%i hora%i time emailDialog.%l ficheiro do rexistro %l logfile emailDialog"%p nome do perfil%p profile name emailDialog%s asunto: %s subject: emailDialog %t a:%t to: emailDialog"%v servidor smtp:%v smtp server: emailDialogJAceptar os cambios e pechar o dilogoAccept changes and close dialog emailDialogArgumentos Arguments emailDialogCancelarCancel emailDialogPechar dilogo Close dialog emailDialogCondicins Conditions emailDialogDesactivar TLS Disable TLS emailDialog^Enviar un correo-e despois de executar o perfil&Email a report after profile execution emailDialogIntroduza os argumentos da orde email p.e: -f %f -t %t -u "%s" -m "%b" -a %l -s %vPEnter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v emailDialog:Introducir o corpo da mensaxeEnter the body of the message emailDialogVIntroduza a orde a executar p.e. sendemail%Enter the command to run eg sendemail emailDialogHIntroducir o destinatario da mensaxe"Enter the recipient of the message emailDialogBIntroducir o remitente da mensaxeEnter the sender of the message emailDialogxIntroducir o servidor smtp que se usou para enviar a mensaxe.Enter the smtp server used to send the message emailDialog<Introducir o asunto da mensaxe Enter the subject of the message emailDialogErros atopadosError(s) occured emailDialogSe non est marcado, utilizarase TLS-auto. S dispobel para sendemail=If unchecked "TLS auto" is used. Only available for sendemail emailDialog NuncaNever emailDialog8Non enviar un correo-e nuncaNever send an email emailDialogAceptarOkay emailDialog\Enviar s se ocorren erros durante a execucin,Only send when error(s) occured during a run emailDialogjEnviar s cando se programou un perfil para execucin*Only send when profile is scheduled to run emailDialog(Programouse o perfilProfile is scheduled emailDialog~Enviar un correo-e agora para comprobar os argumentos indicados6Send an email right now to test the provided arguments emailDialogZIndicar as condicins para enviar un correo-e'Specify the conditions to send an email emailDialog ProbaTest emailDialog8O campo da orde est baleiroThe command field is empty emailDialog6Usar o valor predeterminado Use default emailDialogargumentos: arguments: emailDialog orde:command: emailDialog,luckyBackup - correo-eluckyBackup - email emailDialogOKOkay helpBrowser&luckyBackup - axudaluckyBackup - help helpBrowsermanual/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog pecharclose logDialogDcargando o ficheiro do rexistro...loading logfile... logDialog^luckyBackup - progreso da execucin das tarefas&luckyBackup - tasks execution progress logDialogerro seguinte next error logDialogerro anteriorprevious error logDialog agardewait logDialog &%1 %2&%1 %2luckyBackupWindow&Cancelar&AbortluckyBackupWindow &Sobre&AboutluckyBackupWindowEng&adir&AddluckyBackupWindow&Eliminar&DeleteluckyBackupWindow&Manual &HandbookluckyBackupWindow &Axuda&HelpluckyBackupWindow&Importar&ImportluckyBackupWindow&Idioma &LanguageluckyBackupWindow(&Minimizar bandexa&Minimize to trayluckyBackupWindow&Modificar&ModifyluckyBackupWindow &Novo&NewluckyBackupWindow&Perfil&ProfileluckyBackupWindow&PerfilThis is a top menu item&ProfileluckyBackupWindow &Sar&QuitluckyBackupWindow&Actualizar&RefreshluckyBackupWindow&Eliminar&RemoveluckyBackupWindow&Restabelecer&RestoreluckyBackupWindow&Gardar&SaveluckyBackupWindow&Axustes &SettingsluckyBackupWindow&Tarefa&TaskluckyBackupWindow&TarefaThis is a top menu action&TaskluckyBackupWindow,Barras de ferramen&tas &ToolbarsluckyBackupWindow0&Ver/Editar a descricin&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowCANCELADOABORTEDluckyBackupWindowCancelarAbortluckyBackupWindowdCancelando: agarde a que rematen todos os procesos4Aborting: Please wait for all processes to be killedluckyBackupWindowAccinsActionsluckyBackupWindowTamn se eliminaron todos os ficheiros importantes (rexistros...)4All relevant files (logs etc) have also been deletedluckyBackupWindowTamn se duplicaron todos os ficheiros importantes (rexistros...)7All relevant files (logs etc) have also been duplicatedluckyBackupWindowTamn se actualizaron todos os ficheiros importantes (rexistros...)4All relevant files (logs etc) have also been updatedluckyBackupWindow<Completronse todas as tarefasAll tasks completedluckyBackupWindow@Est seguro de eliminar o perfil'Are you sure you want to delete profileluckyBackupWindow^Est seguro de eliminar o perfil predeterminado3Are you sure you want to delete the default profileluckyBackupWindowVEst seguro de eliminar a seguinte tarefa??5Are you sure you want to remove the following task ??luckyBackupWindowbComezar a execucin de todas as tarefas includas)Begin the execution of all included tasksluckyBackupWindow*Caixa de comprobacinCheckBoxluckyBackupWindowAs comprobacins estn desactivadas. Esta tarefa <b>ignorarase</b>5Checks are disabled. This task will be skippedluckyBackupWindowHNon foi posbel localizar o ficheiroCould not locate the fileluckyBackupWindowNon foi posbel actualizar a data e a hora da ltima execucin das tarefas-Could not update last execution time of tasksluckyBackupWindow FalloCrashedluckyBackupWindow8Crear tarefa de d&uplicacinCreate D&uplicate taskluckyBackupWindowBCrear tarefa de r&estabelecementoCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowPerfil actualCurrent ProfileluckyBackupWindowD&uplicar D&uplicateluckyBackupWindowP&redeterminadoDe&faultluckyBackupWindowDescricin DescriptionluckyBackupWindowDestino DestinationluckyBackupWindowCartafol DirectoryluckyBackupWindow FeitoDoneluckyBackupWindow ProbaDryluckyBackupWindow&C&orreo electrnicoE&mailluckyBackupWindowE&xportarE&xportluckyBackupWindowERROERRORluckyBackupWindowSAREXITluckyBackupWindow$Tempo transcorrido Elapsed timeluckyBackupWindowOs axustes do correo electrnico <font color=green>actualizronse correctamenteBEmail preferences have been updated successfullyluckyBackupWindowXEnviar correo-e despois de executar o perfil$Email report after profile executionluckyBackupWindowEnglishEnglishluckyBackupWindow GalegoDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindownErros durante a transferencia dos ficheiros do rexistro'Errors occured during logfiles transferluckyBackupWindowErros durante a transferencia das imaxes e dos ficheiros do rexistro5Errors occured during snapshots and logfiles transferluckyBackupWindowPErros durante a transferencia das imaxes(Errors occured during snapshots transferluckyBackupWindowfErros durante a transferencia do ficheiro do perfil/Errors occured during the profile file transferluckyBackupWindow&Execucin do perfilExecution of profileluckyBackupWindow>Rematou a execucin das tarefasExecution of tasks finishedluckyBackupWindowxA execucin das tarefas cancelouse abruptamente polo usuario4Execution of tasks were terminated violently by userluckyBackupWindowSarExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindowdProduciuse un fallo ao crear o cartafol de destino&Failed to create destination directoryluckyBackupWindowTProduciuse un fallo ao crear o perfil novoFailed to create new profileluckyBackupWindowProduciuse un fallo ao eliminar os ficheiros importantes (rexistros...).Failed to delete all relevant files (logs etc)luckyBackupWindowXProduciuse un fallo na eliminacin do perfilFailed to delete profileluckyBackupWindowProduciuse un fallo ao duplicar os ficheiros importantes (rexistros...)1Failed to duplicate all relevant files (logs etc)luckyBackupWindowPProduciuse un fallo ao duplicar o perfilFailed to duplicate profileluckyBackupWindowPProduciuse un fallo ao duplicar o perfilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindowPProduciuse un fallo ao exportar o perfilFailed to export profileluckyBackupWindowPProduciuse un fallo ao importar o perfilFailed to import profileluckyBackupWindowPProduciuse un fallo ao renomear o perfilFailed to rename profileluckyBackupWindowTProduciuse un fallo ao substitur o perfilFailed to replace profileluckyBackupWindow<Produciuse un fallo ao iniciarFailed to startluckyBackupWindowProduciuse un fallo ao actualizar os ficheiros importantes (rexistros...).Failed to update all relevant files (logs etc)luckyBackupWindow8Ocultar a xanela informativaHide information windowluckyBackupWindow8Ocultar a xanela informativa+hide/show information window button tooltipHide information windowluckyBackupWindowImportar perfilImport ProfileluckyBackupWindow*Xanela de informacinInformation windowluckyBackupWindow$Xanela informativainformation window titleInformation windowluckyBackupWindowxActualizouse a data e a hora da ltima execucin das tarefas$Last execution time of tasks updatedluckyBackupWindow:Lista das tarefas dispobeisList of all the available tasksluckyBackupWindowBloquearLockluckyBackupWindow:Xestionar copias de seguranzaManage &BackupluckyBackupWindow$Xestin de tarefas Manage TaskluckyBackupWindowdMover a tarefa seleccionada un posto cara a abaixo/Move the highlighted task down, by one positionluckyBackupWindowdMover a tarefa seleccionada un posto cara a arriba-Move the highlighted task up, by one positionluckyBackupWindowNONNOluckyBackupWindowNON INCLUDO NOT INCLUDEDluckyBackupWindow AVISONOTEluckyBackupWindow*Non se atoparon errosNo errors foundluckyBackupWindow&Executando a tarefaNow performing taskluckyBackupWindowTMostrar s os erros e mensaxes importantesPrimeiro seleccione unha tarefaPlease select a task firstluckyBackupWindowXSeleccione primeiro unha tarefa que duplicar'Please select a task to duplicate firstluckyBackupWindowJPrimeiro debe seleccionar unha tarefa$Please select a task to manage firstluckyBackupWindowZSeleccione primeiro unha tarefa que modificar$Please select a task to modify firstluckyBackupWindowXSeleccione primeiro unha tarefa que eliminar$Please select a task to remove firstluckyBackupWindowfPrema abaixo para que se peche o sistema ao rematar+Press down to shutdown the system when doneluckyBackupWindowO perfilProfileluckyBackupWindowO perfilPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindowO perfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindowO perfil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindowO perfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindowO perfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindowO perfillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindowO perfil3full phrase: 'Profile set as default'ProfileluckyBackupWindowdA actualizacin da barra de progreso non ser real(Progressbar update will not be realisticluckyBackupWindowR&enomearR&enameluckyBackupWindowErro de lectura Read errorluckyBackupWindowLEliminados os datos das imaxes antigas Removed all older snapshots dataluckyBackupWindowEliminandoRemovingluckyBackupWindowEliminando as imaxes antigas e os ficheiros de rexistro das tarefas+Removing old snapshots and logfiles of taskluckyBackupWindowExecutarRunluckyBackupWindowPro&gramar S&cheduleluckyBackupWindowHSeleccionar o destino da exportacinSelect export directoryluckyBackupWindow(Facer predeterminadoSet as DefaultluckyBackupWindow(Estabelecer as rutas Set pathsluckyBackupWindow\Estabelecer as rutas para as ordes rsync e ssh$Set paths for rsync and ssh commandsluckyBackupWindow8Mostrar a xanela informativaShow information windowluckyBackupWindow8Mostrar a xanela informativa+hide/show information window button tooltipShow information windowluckyBackupWindow@Mostrar texto debaixo das iconasShow text under iconsluckyBackupWindow OrixeSourceluckyBackupWindowFDeter a execucin das tarefas AGORA'Stop the execution of running tasks NOWluckyBackupWindowVO cartafol de destino creouse correctamente)Successfuly created destination directoryluckyBackupWindow TarefaTaskluckyBackupWindow Lista de tarefas Task listluckyBackupWindow8A lista de tarefas do perfilTask list of profileluckyBackupWindow(Descricin do perfilThe description of profileluckyBackupWindowtO cartafol seleccionado non contn datos vlidos do perfilCThe directory you have selected does not contain valid profile dataluckyBackupWindowlO nome que introduciu contn s caracteres incorrectos:The name you have entered contains only invalid charactersluckyBackupWindow8O sistema pechar nun minuto$The system will shutdown in 1 minuteluckyBackupWindow>A lista de tarefas est baleiraThe task list is emptyluckyBackupWindowExecutarase unha <b>simulacin</b> que non fai ningn cambio (enva as mesmas sadas por pantalla que unha execucin real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow"Excedeuse o tempo Timed outluckyBackupWindow8Non posbel abrir o perfilUnable to open profileluckyBackupWindow Erro descoecido Unknown errorluckyBackupWindow Erro descoecidothis refers to a process Unknown errorluckyBackupWindowjUsar o botn Engadir situado dereita para comezar0Use the "add" button on the right to get startedluckyBackupWindowzUsar os recadros de inclusin para inclur ou non unha tarefa>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowBVer/Editar a descricin do perfil!View/Edit the profile descriptionluckyBackupWindow AVISOWARNINGluckyBackupWindowBenvido/a a Welcome toluckyBackupWindow,Desexa eliminar tamn:Would you like to also remove:luckyBackupWindow@Desexa seguir de calquera xeito?!Would you like to proceed anyway?luckyBackupWindow(Desexa substitulo ?Would you like to replace it ?luckyBackupWindowDDesexa gardalo antes de continuar?-Would you like to save it before proceeding ?luckyBackupWindow"Erro de escritura Write errorluckyBackupWindowSIYESluckyBackupWindow^Solicitou crear unha tarefa de RESTABELECEMENTO/You have asked for a RESTORE task to be createdluckyBackupWindowXIncluiu unicamente tarefas que se van saltar9You have only included tasks that are going to be skippedluckyBackupWindowXAcadou o lmite mximo de tarefas permitidas5You have reached the maximum limit of supported tasksluckyBackupWindowfDebe eliminar unha tarefa para poder engadir outra.7You have to remove a task if you wish to add another !!luckyBackupWindowPcrearase un perfil baleiro co mesmo nome4a new blank one, with the same name, will be createdluckyBackupWindowengadiraddluckyBackupWindowengadir tarefaadd taskluckyBackupWindowxa existealready existsluckyBackupWindow>e a lista despregbel do perfiland 'profile' drop-down listluckyBackupWindow:e engadiuse lista se perfsand added at the profile listluckyBackupWindowZe cambie todo o que desexe antes de continuar.and change anything you wish before proceedingluckyBackupWindowcomoasluckyBackupWindowcomoFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowcalculando calculatingluckyBackupWindowcalculando-info message displayed during ...calculations calculatingluckyBackupWindowsada de ordescommands outputluckyBackupWindow,non foi posbel crealocould not be createdluckyBackupWindow.non foi posbel gardalocould not be savedluckyBackupWindow&non se puido gardarPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow*creouse correctamentecreated successfullyluckyBackupWindowDcreando o perfil predeterminado...creating default profile ...luckyBackupWindow&creando o perfil...creating profile ...luckyBackupWindowrcrontab actual<font color=green>actualizado correctamente6current crontab updated successfullyluckyBackupWindowperfil actualcurrent profileluckyBackupWindow*perfil predeterminadodefault profileluckyBackupWindow.O perfil predeterminado^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow.O perfil predeterminadoVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow0eliminouse correctamentedeleted successfullyluckyBackupWindow(eliminando ficheirosdeleting filesluckyBackupWindow(eliminando ficheiros/info message displayed during ...file deletionsdeleting filesluckyBackupWindowXMostrar a informacin da tarefa seleccionada.display information regarding highlighted taskluckyBackupWindow:duplicouse correctamente comoduplicated successfully asluckyBackupWindowerros atopados errors foundluckyBackupWindow(execucin do perfil:execution of profile:luckyBackupWindow(execucin do perfil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow4exportouse correctamente aexported successfully toluckyBackupWindow(fallou a eliminacinfailed to removeluckyBackupWindowtproduciuse un fallo eliminando os datos das imaxes antigas)failed to remove all older snapshots dataluckyBackupWindowrematadofinishedluckyBackupWindowrematado:full phrase: 'Execution of profile finished'finishedluckyBackupWindow0importouse correctamenteimported successfullyluckyBackupWindowen proceso...in progress...luckyBackupWindowinclurincludeluckyBackupWindowmodificouse is modifiedluckyBackupWindow"non vlido parais not valid forluckyBackupWindow&ir ao erro seguintejump to next errorluckyBackupWindow&ir ao erro anteriorjump to previous errorluckyBackupWindow*cargado correctamenteloaded successfullyluckyBackupWindowFcargando o perfil predeterminado...loading default profile ...luckyBackupWindowfallou a cargaloading failedluckyBackupWindow(cargando o perfil...loading profile ...luckyBackupWindow`os ficheiros do rexistro creronse no cartafol: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow&minimizar bandexaminimize to trayluckyBackupWindow6minimiza a xanela bandexa%minimizes the window to the tray arealuckyBackupWindowmodificarmodifyluckyBackupWindow>modificar a tarefa seleccionadamodify highlighted taskluckyBackupWindownada que facer nothing to doluckyBackupWindow:execucin da orde post-tarefapost-task execution of commandluckyBackupWindow8execucin da orde pre-tarefapre-task execution of commandluckyBackupWindow perfilprofileluckyBackupWindowO perfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindowO perfilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindowO perfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindowO perfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindowO perfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindow perfilprofile luckyBackupWindowmodo silencioso quiet modeluckyBackupWindowactualizronse refreshedluckyBackupWindoweliminarremoveluckyBackupWindow<eliminar a tarefa seleccionadaremove highlighted taskluckyBackupWindow:renomeouse correctamente comorenamed successfully toluckyBackupWindow:renomeouse correctamente comoWfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowva sada de rsync e das ordes pre/post tarefa mstranse aqu9rsync and pre/post task commands output is displayed hereluckyBackupWindow,gardouse correctamentesaved successfullyluckyBackupWindowFgardando o perfil predeterminado...saving default profile ...luckyBackupWindow(gardando o perfil...saving profile ...luckyBackupWindowprogramado scheduledluckyBackupWindowBestabeleceuse como predeterminadoset as defaultluckyBackupWindowset toluckyBackupWindow pecharshutdownluckyBackupWindowmodo simulacinsimulation modeluckyBackupWindow estadostatusluckyBackupWindowsuper-usuario super userluckyBackupWindow$modo super-usuariosuper user modeluckyBackupWindowatoluckyBackupWindow,transferindo ficheirostransferring filesluckyBackupWindow,transferindo ficheiros/info message displayed during ...file transferstransferring filesluckyBackupWindowJtentando enviar un correo electrnicotrying to send an emailluckyBackupWindowversin:version:luckyBackupWindow,Calcular as diferenzasCalculate differences manageDialogvCalcular as diferenzas entre a orixe e a imaxe seleccionadaFCalculate the differences between the source and the selected snapshot manageDialog:Clculos parados polo usuarioCalculations terminated by user manageDialog PecharClose manageDialog$Pechar esta xanelaClose this window manageDialogEliminarDelete manageDialogtEliminar a imaxe seleccionada e o seu ficheiro do rexistro,Delete the selected snapshot and its logfile manageDialogPNon teo permisos para ler este cartafol;I do not have sufficient permissions to read this directory manageDialog<Seleccione unha imaxe da lista&Please select a snapshot from the list manageDialog8Agarde a que remate a tarefa*Please wait until the thread is terminated manageDialogRestabelecerRestore manageDialogBRestabelecer a imaxe seleccionadaRestore the selected snapshot manageDialog PARARSTOP manageDialog.Parar os clculos AGORAStop calculations NOW manageDialog0Esta cartafol non existeThis directory does not exist manageDialog0Este cartafol non existeInformation messageThis directory does not exist manageDialogHVer o rexistro da imaxe seleccionada)View the logfile of the selected snapshot manageDialognVer o rexistro da tarefa de sincronizacin seleccionada*View the logfile of the selected sync task manageDialogdestino: destination: manageDialogagochar a orixe hide source manageDialogTluckyBackup - xestionar copia de seguranzaluckyBackup - manage backup manageDialognon dispobel not available manageDialog perfilprofile manageDialog orixe:source: manageDialog:Cartafol de sincronizacin. A sync dir A manageDialog8Cartafol de sincronizacin B sync dir B manageDialog tarefatask manageDialogver o rexistroview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardCANCELARABORT manageWizardCanceladoAborted manageWizardRuta copia Backup path manageWizard`Buscar localmente unha nova ruta de restauracin%Browse locally for a new restore path manageWizardMarcar isto para clonar as imaxes das copias ao cartafol de restauracin.BCheck this, to clone the backup snapshot to the restore directory. manageWizardData e hora Date & time manageWizard Eliminar a copia Delete backup manageWizardTEliminar os datos que non existen na copia4Delete existing data that do not exist at the backup manageWizard&Eliminando os datos Deleting data manageWizardjEliminando o ficheiro que lista os cambios nas imaxes)Deleting file that lists snapshot changes manageWizardTEliminando o ficheiro de rexistro da imaxeDeleting snapshot logfile manageWizardAs copias existentes substituirn os ficheiros correspondentes no cartafol de restauracinSExisting backup files will replace the corresponding files at the restore directory manageWizardbSe a informacin correcta, prema <b>Comezar</b>@If the information above is correct, click start to begin manageWizardSe a informacin superior correcta, prema <b>iniciar</b> para comezar`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard&Ir ao erro seguinteJump to next error manageWizard&Ir ao erro anteriorJump to previous error manageWizardfNon existen datos especficos da imaxe. Saltando...,No snapshot specific data exist. Skipping... manageWizardRutaPath manageWizardBRestabelecer a copia de seguranzaRestore backup manageWizard(Ruta de restauracin Restore path manageWizardRRestabelecendo os datos: tronco principalRestoring data: main trunk manageWizardZRestabelecendo os datos: ficheiros das imaxesRestoring data: snapshot files manageWizardVSeleccionar o novo cartafol de restauracinSelect new restore directory manageWizardO cartafol de restauracin ser idntico imaxe da copia de seguranzaBThe restore directory will become identical to the backup snapshot manageWizardExecuta <b>unha simulacin</b> que non modifica nada (e mostra case a mesma sada que a real){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard>Actualizando a lista das imaxesUpdating list of snapshots manageWizard AVISOWARNING manageWizardBVai eliminar a copia de seguranza#You are about to delete backup data manageWizardcancelarcancel manageWizardcambiarchange manageWizard pecharclose manageWizarderros atopados errors found manageWizard falloufailed manageWizard fallou-info message displayed after ...file deletionfailed manageWizard<luckyBackup - xestin da copialuckyBackup - manage backup manageWizarderro seguinte next error manageWizardsen erros no errors manageWizardnon dispobel not available manageWizarderro anteriorprevious error manageWizardsimulacin simulation manageWizardcomezarstart manageWizardrematadosuccess manageWizardrematado-info message displayed after ...file deletionsuccess manageWizardrematado5info message displayed after ...snapshots list updatesuccess manageWizardMarcou Servidor remoto pero non indicou un nome para o servidor='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Non esqueza</b> definir un cartafol no grupo de exclusins que conter o destinofDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogEngada os cartafoles, ficheiros ou patrns que desexe exclur desta tarefa@Add any directory, file or pattern to be excluded from this task modifyDialog~Engadir todos os cartafoles, ficheiros ou patrns a esta tarefa>Add any directory, file or pattern to be included by this task modifyDialogVEngadir a orde introducida no campo do lado*Add command as entered in the field beside modifyDialogfEngadir como exclusin o elemento do seguinte campo*Add exclusion as entered in the next field modifyDialog^Engadir inclusin introducida no seguinte campo*Add inclusion as entered in the next field modifyDialogEngadir ou eliminar todas as opcin de rsync. Non toque este axuste se non sabe ben o que fai !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialoghEngadir a opcin rsync introducida na campo seguinte-Add rsync option as entered in the next field modifyDialogAvanzadoAdvanced modifyDialogDespoisAfter modifyDialogTodos os campos indicados na xanela de propiedades da tarefa parecen correctos?All declared fields of the task properties window seem to be ok modifyDialogExecutar tamn Also Execute modifyDialog>Tentar accins de super-usuarioAttempt super-user activities modifyDialog@Copiar a orixe dentro do destino Backup Source inside Destination modifyDialogBCopias de seguranza dos ficheiros Backup files modifyDialog6Copiar os ficheiros abertosBackup open files modifyDialog AntesBefore modifyDialog&Cartafoles da cach Cache folders modifyDialogCancelarCancel modifyDialog Marque isto se usa unha particin FAT/NTFS como destino. Os permisos e a propiedade dos datos non se gardarn. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogMarcar isto para clonar a orixe no destino Deixar sen marcar para crear un cartafol extra dentro do destinoiCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialognMarcar isto para conectarse a un mdulo remoto de rsync/Check this to connect to an rsync Remote module modifyDialog*Opcins para as ordesCommand Options modifyDialogLista de ordes Command list modifyDialogCopiar o dispositivo (s superusuario) e os ficheiros especiais tal como estn (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogDCopiar symlinks como symlinks (-l)Copy symlinks as symlinks (-l) modifyDialogDefinir o tipo de tarefa: 1. Copiar o cartafol de orixe dentro do destino (ver tamn o cadro NON crear cartafol) 2. Sincronizar orixe e destino mantendo os ficheiros mis recentes en ambos os dousDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefinir o tipo de tarefa: 1. Copiar os contidos da orixe dentro do destino 2. Copiar o cartafol da orixe polo nome dentro do destino 3. Sincronizar orixe e destino mantendo os ficheiros mis recentes en ambos os dousDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog@Eliminar os ficheiros no destinoDelete files on the destination modifyDialogHEliminar os ficheiros do destino que non existen na orixe .Debe seleccionar Recursivo dentro dos cartafoles (--delete-after e --delete-excluded se usa "Exclur")Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogDescricin Description modifyDialogDestino Destination modifyDialogDestino : Destination : modifyDialog(O destino FAT/NTFSDestination is FAT/NTFS modifyDialog0NON crear cartafol extraDo NOT create extra directory modifyDialogNon copiar os ficheiros da orixe que son mis novos no destino (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogNon exclur esta lista de patrns. Ver o manual para ampliar a informacin sobre as regras de inclusin.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogHEditar o elemento resaltado includoEdit highlighted inclusion modifyDialogIntroduza aqu a orde a executar despois da tarefa e prema o botn engadir para incorporala lista de debaixonEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogIntroducir aqu a orde a executar antes da tarefa, despois prema o botn engadir para incorporalo lista de debaixooEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogIntroducir aqu unha opcin rsync a engadir (p.e: "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogIntroducir a ruta completa ao cartafol de destino (p.e: /media/copias/luckyb/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogIntroducir a ruta completa ao ficheiro que contn a clave de autenticacin ssh (deixalo baleiro se non aplicbel). Debe levar a cabo as accins precisas para unha conexin remota ssh sen contrasinal usando unha parella de claves OpenSSHEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogIntroducir a ruta completa ao ficheiro que contn o contrasinal de autenticacin para rsync (non o ssh) (deixalo baleiro se non aplicbel).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogIntroducir a ruta completa ao cartafol de orixe (p.e: /Cartafol persoal/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogJIntroducir o nome do servidor remoto."Enter the name of the remote host. modifyDialogIntroduza o porto que desexa usar para a conexin ssh (deixar baleiro para usar o porto predeterminado)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogIntroduza o nome do usuario para o servidor remoto (deixar en branco se non aplicbel).HEnter your username for the remote host (leave blank if not applicable). modifyDialog Atopronse errosErrors have been found modifyDialogExclurExclude modifyDialogtExclur todos os cartafoles lost+found (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogExclur os ficheiros e cartafoles que son copias de seguranza (**~)(Exclude all backup files & folders (**~) modifyDialogExclur todos os cartafoles da cach (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogbExclur todos os cartafoles temporais (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogbExclur os cartafoles gvfs do usuario (**/.gvfs/),Exclude all user's .gvfs folders (**/.gvfs/) modifyDialog|Exclur todos os cartafoles do lixo (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog&Lista de exclusins Exclude list modifyDialogExclur os cartafoles do sistema /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogExclur os cartafoles de montaxe do sistema /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialog`Executar ordes extra antes ou despois da tarefa.1Execute extra commands, before or after the task. modifyDialogHLista adicional de opcins de resyncExtra rsync options list modifyDialog&Os ficheiros con hard links na orixe mantern as hard links no destino AVISO: Todos os ficheiros teen que incluirse no grupo da transferencia (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog>Ignorar ficheiros con forma CVSIgnore files the CVS way modifyDialogfIgnorar ficheiros cun algoritmo similar a CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogInclurInclude modifyDialog.Inclur S esta lista de patrns. Nada mis. Consulte o manual para unha mellor comprensin das regras. Isto desactivar a funcionalidade de exclusin.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog&Lista de inclusins Include list modifyDialogModo inclusin Include mode modifyDialogDeixar o cadro marcado para <b>PARAR</b> a execucin da tarefa activa se a orde remata cun errogLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Modo:Mode: modifyDialogTMover abaixo o elemento resaltado includoMove highlighted inclusion down modifyDialogTMover arriba o elemento resaltado includoMove highlighted inclusion up modifyDialog Nome :Name : modifyDialog Inclusin normalNormal Include modifyDialogAceptarOkay modifyDialogInclur s Only Include modifyDialog~Noutro caso, desmarque Servidor remoto para operar localmente2Otherwise uncheck 'Remote Host' to operate locally modifyDialoghComprobe os elementos importantes antes de continuar/Please check the relevant box before proceeding modifyDialogfDefina a orixe antes de iniciar o editor de patrnsRecursivo dentro dos cartafolesRecurse into directories modifyDialogJRecursivo dentro dos cartafoles (-r)Recurse into directories (-r) modifyDialog RemotoRemote modifyDialogMdulo remoto Remote module modifyDialogDEliminar da lista a orde resaltada$Remove highlighted command from list modifyDialogTEliminar da lista as exclusins resaltadas&Remove highlighted exclusion from list modifyDialogREliminar os elementos resaltados da lista&Remove highlighted inclusion from list modifyDialogHEliminar da lista a opcin resaltada#Remove highlighted option from list modifyDialogFRepetir X veces as ordes que fallen&Repeat any command that fails, x times modifyDialog(Repetir cando falle:Repeat on fail: modifyDialog0Restabelecer os permisosRestore permissions modifyDialog:Seleccionar a orde a executarSelect command to be executed modifyDialogBSeleccionar o cartafol de destinoSelect destination directory modifyDialog^Seleccionar o ficheiro cos patrns de exclusin$Select file to read exclude patterns modifyDialog^Seleccionar o ficheiro cos patrns de inclusin$Select file to read include patterns modifyDialog^Seleccionar o ficheiro da contrasinal de resyncSelect rsync password file modifyDialog>Seleccionar o cartafol de orixeSelect source directory modifyDialogHSeleccionar o ficheiro coa clave sshSelect ssh keyfile modifyDialogXEstabelecer o nmero de imaxes que conservar0Set the total number of backup snapshots to keep modifyDialogPMostra a orde rsync a segundo se executa.Shows the rsync command as it will be executed modifyDialogZIgnorar os ficheiros mis recentes do destinoSkip newer destination files modifyDialog*Imaxes que conservar:Snapshots to keep: modifyDialog OrixeSource modifyDialogOrixe :Source : modifyDialog6Sincronizar orixe e destino"Synchronize Source and Destination modifyDialog*Cartafoles do sistemaSystem folders modifyDialog@Cartafoles de montaxe do sistemaSystem mount folders modifyDialog(Descricin da tarefaTask description modifyDialogNome da tarefa Task name modifyDialog*Propiedades da tarefaTask properties modifyDialog(Cartafoles temporaisTemporary folders modifyDialogfIsto non se permite porque / non ten un nome realPARAR</b> a execucin da tarefa se hai un erro0use boxes to STOP task execution on error modifyDialogvalidarvalidate modifyDialog|sen escoller Recursivo dentro dos cartafoles, que obrigadoCwithout having checked 'Recurse into directories' which is required modifyDialogCancelarCancel patternEditor&Marque isto para usar o cartafol de arriba como ruta absoluta, se non o marca buscarase calquera ficheiro ou cartafol que cumpra co criterio nomeCheck this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefinir o criterio do nome para atopar os ficheiros/cartafoles correspondentesEDefine here the name criteria for the files/directories to be matched patternEditorHDefina aqu a que se refire o patrn8Define here, what would you like the pattern to refer to patternEditor(Contidos do cartafolDirectory contents patternEditorIntroducir aqu os caracteres contidos en calquera posicin do nome dos ficheiros/cartafoles aos que se refire o patUonsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditor Introducir aqu os caracteres finais do nome dos ficheiro/cartafoles aos que se refire o patrn p.e: para todos os ficheiros txt escribir .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorIntroducir aqu o nome dos ficheiros/cartafoles aos que se refire o patrnGEnter here the name of the files/directories that the pattern refers to patternEditorIntroducir aqu os caracteres iniciais do nome dos ficheiros/cartafoles aos que se refire o patrnbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor&Descender na ruta :Go deeper in path by : patternEditorFDescender na ruta a todos os niveisGo deeper in path by any level patternEditorAceptarOkay patternEditor>Seleccione un cartafol na orixe+Please choose a directory within the source patternEditor>Seleccione un ficheiro na orixe&Please choose a file within the source patternEditorRestabelecer os valores predeterminados dos campos do editor de patrns5Reset the pattern editor fields to the default values patternEditor(Seleccionar cartafolSelect directory patternEditor.Seleccionar un ficheiro Select file patternEditor,Conxunto de cartafolesSet of directories patternEditor*Conxunto de ficheiros Set of files patternEditor&Cartafol especficoSpecific directory patternEditor&Ficheiro especfico Specific file patternEditor:O patrn actual mstrase aqu$The actual pattern is displayed here patternEditor(O patrn refrese a:The pattern refers to a: patternEditorUsar isto se o patrn se refire a un grupo de cartafoles que teen algo en comn p.e: todos os cartafoles chamados tempUse this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditorUse isto se o patrn se refire a un conxunto de ficheiros con algo en comn p.e: todos os ficheiros coa extensin .txtwUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorUse isto se o patrn se refire a un cartafol especfico p.e: /media/msica/lbum/OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorUse isto se o patrn se refire a un ficheiro especfico p.e: /media/msica/lbum/cancin.mp3RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditor8Usar isto se o patrn se refire aos contidos dun cartafol (ou grupo de cartafoles) non ao cartafol mesmo p.e: os contidos do cartafol /media/msica/lbum/Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorLUsar isto para indicar subcartafoles mis profundos p.e: O cartafol "/media/msica" incle 3 subcartafoles: 1.Rock 2.Jazz 3.Clsica para especificar os contidos dos tres indique o seguinte: * Grupo de cartafoles * Contido dos cartafoles * ruta:/media/msica/ * Profundizar na ruta at "1" nivel0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditor todosany patternEditorRpercorrer localmente a ruta a un cartafol"browse localy for a directory path patternEditor:buscar localmente un ficheirobrowse localy for a file patternEditorcontn : contains : patternEditorcartafol : directory : patternEditorremata con : ends with : patternEditorficheiro :file : patternEditorpatrn final final pattern patternEditor exacto : is exactly : patternEditornomename patternEditor"editor de patrnspattern editor patternEditorrestabelecerreset patternEditorcomeza con : starts with : patternEditor(usar a ruta absolutause absolute path patternEditor ficheiro filescheduleDialoge o& on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialog:retraso:delayscheduleDialogN<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Programacin da execucin do perfil</span></p></body></html>

Profile execution scheduling

scheduleDialogao iniciar@ rebootscheduleDialogFEngadir unha programacin do perfilAdd a new profile schedulescheduleDialog&Programar un perfilAdd profile schedulescheduleDialog TodosAnyscheduleDialog AbrilAprilscheduleDialog Abrilfull phrase: 'of April'AprilscheduleDialog`Est certo de pechar o dilogo de programacin ?4Are you sure you want to close the schedule dialog ?scheduleDialog AgostoAugustscheduleDialog Agostofull phrase: 'of August'AugustscheduleDialogCancelarCancelscheduleDialogComprobe se a sa mquina non compatbel co contorno grfico (p.e: servidor)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogModo consola Console ModescheduleDialogDecembroDecemberscheduleDialogDecembrofull phrase: 'of December'DecemberscheduleDialog\Retrasar a execucin de luckybackup ao iniciar&Delay luckybackup execution at startupscheduleDialog0Mostrar o crontab actualDisplay the current crontabscheduleDialog"Executar o perfilExecute profilescheduleDialogFebreiroFebruaryscheduleDialogFebreirofull phrase: 'of February'FebruaryscheduleDialog VenresFridayscheduleDialog*O perfil incorrectoInvalid profilescheduleDialogXaneiroJanuaryscheduleDialogXaneirofull phrase: 'of January'JanuaryscheduleDialog XulloJulyscheduleDialog Xullofull phrase: 'of July'JulyscheduleDialogXuoJunescheduleDialogXuofull phrase: 'of June'JunescheduleDialog MarzoMarchscheduleDialog Marzofull phrase: 'of March'MarchscheduleDialogMaioMayscheduleDialogMaiofull phrase: 'of May'MayscheduleDialogDModificar a programacin do perfilModify profile schedulescheduleDialog^Modificar a programacin do perfil seleccionado Modify selected profile schedulescheduleDialogLunsMondayscheduleDialogRNon se especificou ningunha programacin!No schedules are declared !!scheduleDialogNovembroNovemberscheduleDialogNovembrofull phrase: 'of November'NovemberscheduleDialogOutubroOctoberscheduleDialogOutubrofull phrase: 'of October'OctoberscheduleDialogPerfil : Profile :scheduleDialogDDetalles da programacin do perfilProfile schedule detailsscheduleDialog\Eliminar a programacin do perfil seleccionado Remove selected profile schedulescheduleDialog6Executar unha vez no inicioRun once, at startupscheduleDialog SbadoSaturdayscheduleDialogSetembro SeptemberscheduleDialogSetembrofull phrase: 'of September' SeptemberscheduleDialogSaltar as tarefas que mostran un aviso de CRTICO despois de comprobar os cartafolesSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog$Comezar desde ceroStarting from scratchscheduleDialogDomingoSundayscheduleDialogO ficheiro de programacin existente non vlido para luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialog XovesThursdayscheduleDialog MartesTuesdayscheduleDialogJNon foi posbel crear o ficheiro cronUnable to create cron filescheduleDialog`Non foi posbel crear o ficheiro da programacinUnable to create schedule filescheduleDialogMrcores WednesdayscheduleDialog\Realizou os cambios sen premer no botn cronIT8You have made changes without clicking the cronIT buttonscheduleDialog^Xa acadou o lmite mximo de perfs programadosBYou have reached the maximum limit of supported scheduled profilesscheduleDialogbDebe eliminar un elemento se desexa engadir outro5You have to remove an item if you wish to add anotherscheduleDialogPO seu crontab actualizouse correctamente$Your crontab is updated successfullyscheduleDialogengadiraddscheduleDialogsatscheduleDialog pecharclosescheduleDialog&Pechar este dilogoclose this dialogscheduleDialogcronIT !! cronIT !!scheduleDialog$contido do crontabcrontab contentscheduleDialogdadayscheduleDialogda do mes :day of month :scheduleDialogda da semana : day of week :scheduleDialogcadaeveryscheduleDialog(cada hora no minuto hourly at minute scheduleDialog4luckyBackup - programacinluckyBackup - schedulescheduleDialogmin.minscheduleDialogmodificarmodifyscheduleDialog mes :month :scheduleDialogndscheduleDialogas in 22nd dayndscheduleDialog<no existen entradas de crontabno crontab entries existscheduleDialogdeofscheduleDialogde cada mes of any monthscheduleDialogaceptarokayscheduleDialog<unha vez, no inicio do sistemaonce, at system startupscheduleDialogrdscheduleDialogas in 23rd dayrdscheduleDialogeliminarremovescheduleDialogprogramar a execucin dos perfs como se indica na lista superior@schedule the execution of profiles as declared in the list abovescheduleDialogdestabelece este valor a 1 para programar cada hora9set this value to -1 for the schedule to occur every hourscheduleDialog"Saltar crticos skip criticalscheduleDialogstscheduleDialogas in 21st daystscheduleDialogas in 31st daystscheduleDialogthscheduleDialogas in 10th daythscheduleDialogas in 11th daythscheduleDialogas in 12th....19th daythscheduleDialogas in 20th daythscheduleDialogas in 24th...30th daythscheduleDialog as in 8th daythscheduleDialog as in 9th daythscheduleDialog(hora (hora:minuto) :time (hour:min) :scheduleDialog(ver o crontab actualview current crontabscheduleDialogBXa existe un perfil co mesmo nome+A profile with the same name already exists textDialog2Est seguro de continuar?#Are you sure you wish to proceed ?? textDialog~TEA TINO, se a sa intencin NON clonar a orixe no destino!!BBEWARE, if your intention is NOT to clone source to destination !! textDialogCancelarCancel textDialog8Copiar a orde ao portapapeisCopy command to clipboard textDialog`Non volver mostrar esta mensaxe para esta tarefa$Do not show this again for this task textDialog:Introduza unha frase secreta:Enter passphrase : textDialog4Introduza un contrasinal :Enter pasword : textDialogDIntroducir o nome do perfil novo :#Enter the name of the new profile : textDialogDIntroducir o novo nome do perfil :#Enter the new name of the profile : textDialogNonNo textDialogAceptarOkay textDialog6Introduza un nome diferentePlease enter a different name textDialog,Descricin do perfil :Profile description : textDialogSiYes textDialogSeleccionou "Copiar os contidos do cartafol orixe"<br>xunto coa opcin "eliminar os ficheiros do destino"You have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog.Informacin do correo-eeMail information textDialogluckyBackup luckyBackup textDialogCancelarCancel winDialogXIntroducir o camio completo da orde cygpath*Enter the full path of the cygpath command winDialogPIntroduza a ruta completa da orde dosdev)Enter the full path of the dosdev command winDialogVIntroduza a ruta ao cartafol de luckybackup0Enter the full path of the luckybackup directory winDialogVIntroducir a ruta completa da orde de rsync(Enter the full path of the rsync command winDialogLIntroducir a ruta completa da orde ssh&Enter the full path of the ssh command winDialogNIntroduza o camio ao cartafol temporal.Enter the full path of the temporary directory winDialogBRuta completa ao cartafol vshadow,Enter the full path of the vshadow directory winDialog:Ficheiros executbeis (*.exe)Executable Files (*.exe) winDialogAceptarOkay winDialog2Seleccione a orde cygpathSelect cygpath command winDialog0Seleccione a orde dosdevSelect dosdev command winDialog0Seleccione a orde resyncSelect rsync command winDialog*Seleccione a orde sshSelect ssh command winDialog6Usar o valor predeterminadoUse default value winDialog&explorar localmentebrowse locally winDialogcygpath:cygpath: winDialog*declaracin das rutasdeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog&cartafol principal: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog$cartafol temporal: temp dir: winDialog"cartafol vshadow: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_tr.qm0000666000175000017500000033413413157502317021517 0ustar luckybluckyb4FHYwK{SIYI]_~ggFghYfjzK2f &f{"fFvSulCnB|E{9}E~R45NN~31a`ac a'aVaaIh"@ bH5i"akYwT"fH"(&%jy))*`3r*0l+o+o+pe,BH/]^/:BTEttzFZ9HGqGHxwJ6AJ;J;&RJwB|NPdPdPd\S~TZ'[>\ZB`Zj6Rj6ij6pj6l̙mCStdUxiz;}YKY}" iL3Ja/wWhs$YGu>ĉB`_Sى>X}q=}sGr_ :~ dTg 9(e'+&V36F7*c<$Gx;I||Q19yRo[|_/NfC"hwpNpNjKq>tcU!-?>s YEW65ZѐSNiZ uԳŵ0 3 ,'] _KbDK W#u(&oκ)7@/r02I8I.BZy1{C cPoE\ccOf:|u5O2kRIXZIR2gqϩu+{k$lC]NkMP,=÷IOYԥ{*\@V¢[]%&EٷSH"EG'ҐOo*^wA&CaX4)4)'*߬7,bŷ:MCTe"h !TiJ^iU>tMC(}^.e .e$fcW~ c[</d {`Ňʵf&0n[`Aܯ"-)>Dbq;vϗ~]u xR P#A,[L~O;sOjzeJ{iYzZxi^Kr?\xm6>$nYnЬtxqvDXyWF19ȕvȕȕ9XJg:? tJî"0:pTߘ?@Yu vV B" .d;KKOGVf_hDb#pghnIhn;zi0SkՒjkՒysR|(T44fYY&utZEIIHnF9VuȒ:<;=S':hez M |u^4`읒@XJ`U X )|.5^I+eze-z6E9YEEBN31Ut`xeja#Y{vuv:J{_g{QIJ3+ڄuDvqFFJFϕg1i.ΕnvUUu״rgïG%K,BbȕK]"Fsa(XTUEUADnO~E+ǧd~2]I|̐zjhII%׃4v| ߖLlGkY3535;2")@,-/eK1 9GF\3IX9#GJlJεL'NmiPO%Ry V)wgVh ;zG Z@xf#E~, W{](o8@ʴ5oʶS'C,7wJi Np Z c-& q.:K + *{v +)% 69! 87 CcK3 Mgz Mg N#ƀ W@ ] dK j^S l mE p3 qbC @; WQ ݏ a -B.S Z '! Ԡ;@ ; ׊$A =!3 .: 6 Ѿ@` TT O  c2Z 6  @ -0M -nv /l$A 7E ?Y< @ 9 ` f7 g l# zjg C H 4 iA: ~>> XBI 3e 24 ,lw Dd GCP ñM k Xh@ hy t$%\ ԑ(4 @'k ݓg ; i]6 7* p. "b w vm(  d] j}  #I (N + -' 0bN 7'yY 93BM :UC ;m En Ge' HZ~ L9\ PAl _yS _ f[ g.w g.w g.wP i6o k {u P [ Fot Ҟh <  # Y|T Y3{ =yi{0rB<E{xVR1m]-$r7u@֭nk|U"eA CG-#;!*&)NP6(դ=(դ-X`4?P<E^E^G E-Nw5RN>}2[=7cRf/iln8s&s&u@Bu@BP~(NcYL<Sˏk`4fCX3t%)|yX4hv.ɟ)u+\Au ֙S2wGrߖ]N;[.0.uYQŕ/i(Farklar hesaplan1yorCalculating differencesCalcDiffThreadtVeri miktar1 ok byk. Yaln1zca ilk girdiler gsteriliyor2Data amount is huge. Displaying only first entriesCalcDiffThreadLtfen bekleyin Please waitCalcDiffThreadHedef taran1yorScanning destinationCalcDiffThread ^ip_ak taran1yorScanning snapshotCalcDiffThread Kaynak taran1yorScanning sourceCalcDiffThread<^ip_ak ve kaynak farkl1l1klar1Snapshot and source differencesCalcDiffThreadT^ip_ak verisi kaynakta da mevcut ve farkl1=Snapshot data that also exists at the source and is differentCalcDiffThreadBKaynakta BULUNMAYAN _ip_ak verisi-Snapshot data that do NOT exist at the sourceCalcDiffThreadB^ip_akta BULUNMAYAN kaynak verisi-Source data that do NOT exist at the snapshotCalcDiffThreadJDizin A & B e_zamanlama farkl1l1klar1Sync dir A & B differencesCalcDiffThreadvDizin B e_zamanlamada BULUNMAYAN dizin A e_zamanlama verisi/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadDizin B e_zamanlama verisi ayn1 zamanda dizin A e_zamanlamada mevcut ve farkl1?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadvDizin A e_zamanlamada BULUNMAYAN dizin B e_zamanlama verisi/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadYER0NE KOYMA s1ras1nda _ip_ak verisi kaynak verisinin yerini alacak=The snapshot data will replace the source data during RESTORECalcDiffThreadEer seenei geerli k1larsan1z _unlar YER0NE KOYMA s1ras1nda silinecek:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadZyedekte bulunmayan mevcut kaynak verisini sil;delete existing source data that do not exist at the backupCalcDiffThreadfProfil, kay1t dosyalar1 ve _ip_ak veri yedekleniyor.Backing-up profile, logfiles and snapshot dataQObjectdBa_ar1s1zl1ktan dolay1 komut tekrar al1_t1r1l1yorCommand re-run due to failureQObject0Kay1t dosyas1 a1lam1yorCould not open the logfileQObject Hedef DestinationQObject Dizin DirectoryQObject$Son yrtme zaman1Last execution timeQObjectLtfen ilerlemeden nce <b>ilgili ierme kutular1n1 temizleyiniz</b>APlease uncheck appropriate include boxes before proceedingQObjectLtfen ilerlemeden nce ilgili ierme kutular1n1 temizleyin ya da tm grev trlerini '<b>Dizin ieriini yedekle</b>'den ba_ka birine dei_tirin veya 'Dizin ieriini yedekle' ile '<b>Yaln1zca ier</b>' seeneini birlikte kullan1nPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject KaynakSourceQObjectE_zamanlan1yorSyncingQObjectE_zamanlan1yor'Full phrase: Syncing to SyncingQObjectGrev tan1m1Task descriptionQObject@A_a1daki ierilmi_ grevler <b>ayn1 hedef dizini payla_makta</b> (hep birlikte ya da gruplar halinde) ve en az1ndan bir tanesi bir dizin ieriini yedekleyecekThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObject8Kay1t dosyas1 olu_turulamad1 The logfile could not be createdQObject4Kay1t dosyas1 mevcut deilThe logfile does not existQObject*Sre hata rapor ettiThe process reported an errorQObjectLBelirtilen komut muhtemelen kurulmam1_/The specified command is probably not installedQObject"Grev listesi bo_The task list is emptyQObject UYARIWARNINGQObject\A_a1daki her iki balant1l1 grevi ierdiniz:8You have included both of the following connected tasks:QObject*Hi grev iermedinizYou have not included any tasksQObject komut: command: QObject hatalar saptand1 errors foundQObjectFgrevin 1. blmnn al1_t1r1lmas1execution of 1st part of taskQObjectFgrevin 1. blmnn al1_t1r1lmas1?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectFgrevin 2. blmnn al1_t1r1lmas1execution of 2nd part of taskQObject"grev yrtlyorexecution of taskQObject,grevin al1_t1r1lmas13Full phrase: execution of task: finishedexecution of taskQObject,grevin al1_t1r1lmas1dFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObject1k1_ kodu: exit code: QObject bittifinishedQObject bitti?Full phrase: execution of 1st part of task: finishedfinishedQObject bitti3Full phrase: execution of task: finishedfinishedQObject bittiCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectrgrev ncesi/sonras1 komut yrtmede hata nedeniyle bitti9finished because of pre/post task command execution errorQObjecthata yok no errorsQObjectmevcut deil not availableQObject,ba_latacak bir _ey yoknothing to startQObject 1kt1: output: QObject:grev sonras1 yrtlen komutpost-task execution of commandQObject:grev sonras1 yrtlen komutCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObject8grev ncesi yrtlen komutpre-task execution of commandQObject8grev ncesi yrtlen komutBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectba_l1yorstartingQObjectba_l1yor?Full phrase: execution of 1st part of task: startingstartingQObjectba_l1yor?Full phrase: execution of 2nd part of task: startingstartingQObjectba_l1yor3Full phrase: execution of task: startingstartingQObjectba_l1yor?Full phrase: post-task execution of command: startingstartingQObject durumstatusQObjectVbariz nedenlerden dolay1 buna izin verilmez'this is not allowed for obvious reasonsQObjectdbu, bir grevin dierini iptal etmesine yol aacak.this will lead to one task canceling the otherQObject_unatoQObject_una'Full phrase: Syncing to toQObject0Kay1t dosyas1 a1lam1yorCould not open the logfile ReadLogFile&Hakk1nda&About aboutDialog"&Lisans Anla_mas1&License Agreement aboutDialogDe&stek&Support aboutDialog&Te_ekkrler &Thanks to aboutDialogbu projenin geli_tirme a_amas1 boyunca bana katlanan, dier yar1m, <b>Dimitra</b>j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog6..._unun tm kullan1c1lar1 ...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Arial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialog Ya&zarA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog(Arapa gui evirmeniArabic gui translator aboutDialoghArch linux paketi/pkgbuild resmi idame edicisi (AUR)5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog"Atina, YunanistanAthens, Greece aboutDialogDYedekleme & E_zamanlama Uygulamas1Backup & Sync Application aboutDialogjBo_naka gui evirmeni & mandriva paket idame edicisi4Bosnian gui translator & mandriva package maintainer aboutDialog4Lisans dosyas1 bulunam1yor!Could not locate the license file aboutDialog"ek gui evirmeniCzech gui translator aboutDialog4Debian paket idame edicisiDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog0Felemenke gui evirmeniDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogzellikle Especially aboutDialogFFedora paket idamecisi (resmi repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialogFrans1zca gui evirmeni ve deerli paketleme dan1_man1 (ve daha fazlas1)AFrench gui translator and valuable packing advisor (and not only) aboutDialog6Gentoo ebuild idame edicisiGentoo ebuild maintainer aboutDialog*Almanca gui evirmeniGerman gui translator aboutDialog>^urada bir kabul i_areti verin:Give a thumbs up at: aboutDialogRYunanca gui evirmeni ve deerli s1nay1c1(Greek gui translator and valuable tester aboutDialog6Yunanca el kitab1 evirmeniGreek manual translator aboutDialogBen bu proje iin ki_isel olarak hibir zaman para kabul etmedim ve etmeyeceim.DI personally never had and never will accept money for this project. aboutDialogEer o ve onun bilgilendirici rehberleri olmasayd1 bu projeyi asla ba_latmazd1mJIf it wasn't him and his tutorials I would never have started this project aboutDialogBu uygulamay1 beendiyseniz ve bana ki_isel olarak ba1_ta bulunmak isterseniz, tm yapman1z gereken:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogn<b>zgr bir yaz1l1md1r</b>: Lisans1n 3. srmnde zgr Yaz1l1m Kurumu'nca yay1nland11 gibi, GNU Genel Kamu Lisans1 _artlar1 alt1nda yeniden da1tabilir ve/veya dei_tirebilirsiniz.It 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, version 3 of the License. aboutDialog2Yararl1 olmas1 midiyle da1t1lmakta, fakat H0B0R GARANT0 0ERMEDEN; hatta T0CARETE UYGUNLUK ya da BEL0RL0 B0R AMACA UYGUNLUK imas1 dahi iermemektedir.It 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. aboutDialog.0talyanca gui evirmeniItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogFSon olarak fakat en nemsiz olmayanLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialoghMandriva paket idame edicisi (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialogMarvin Gomez Marvin Gomez aboutDialogMepis paket idame edicisi (Community repo) & 0spanyolca gui evirmeniBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogYine de, luckyBackup'1 gerekten finansal yard1ma gereksinim duyan ki_iler iin kullanmaya karar verdim.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNikolas PonirosNikolas Poniros aboutDialogOpenSUSE paket idame edicisi (KDE4 Community repo) ve deerli paketleme dan1_man1NOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialog0Portekizce gui evirmeniPortuguese gui translator aboutDialogRaffaeleRaffaele aboutDialog*Romence gui evirmeniRomanian gui translator aboutDialogNRusa gui evirmeni ve deerli s1nay1c1*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogvDaha fazla ayr1nt1 iin Lisans Anla_mas1 sekmesine bak1n1z.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog,Slovaka gui evirmeniSlovenian gui translator aboutDialogDolay1s1yla, neticede iyi bir ama iin kullan1lacak bir ba1_ta bulunmay1 ltfen ciddi olarak gz nnde bulundurun._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialog00spanyolca gui evirmeniSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog*0svece gui evirmeniSwedish gui translator aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog*Bu benim dlmdr :)This is my reward :) aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialog(Trke gui evirmeniTurkish gui translator aboutDialogX0yi olarak oylay1n & _urada hayran1m1z olun:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialog kapatclose aboutDialogba1_ linki donation link aboutDialog2destekleri iin forumlar.forums for their support. aboutDialog fri13fri13 aboutDialog,luckyBackup - hakk1ndaluckyBackup - about aboutDialogluckyBackup <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU Genel Kamu Lisans1</a> ko_ullar1 alt1nda da1t1lmaktad1rluckyBackup is distributed under the terms of the GNU General Public License aboutDialogparamoney aboutDialogpara yokno money aboutDialogMac OS X'e portport to Mac OS X aboutDialogtrpm paketisi, deerli s1nay1c1 ve uzak balant1 dan1_man1 <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialog kapatclose logDialog6kay1t dosyas1 ykleniyor...loading logfile... logDialogHluckyBackup - grev yrtme gidi_at1&luckyBackup - tasks execution progress logDialogsonraki hata next error logDialognceki hataprevious error logDialogbekleyinwait logDialog &%1 %2&%1 %2luckyBackupWindowY&ar1da kes&AbortluckyBackupWindowH&akk1nda&AboutluckyBackupWindow &Ekle&AddluckyBackupWindow&Sil&DeleteluckyBackupWindowEl ki&tab1 &HandbookluckyBackupWindowYard1&m&HelpluckyBackupWindow0&e aktar&ImportluckyBackupWindowDi&l &LanguageluckyBackupWindow,Si&mge durumuna klt&Minimize to trayluckyBackupWindowDe&i_tir&ModifyluckyBackupWindow Ye&ni&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfilThis is a top menu item&ProfileluckyBackupWindow&1k&QuitluckyBackupWindow&Tazele&RefreshluckyBackupWindowSi&l&RemoveluckyBackupWindowGe&ri ykle&RestoreluckyBackupWindowKa&ydet&SaveluckyBackupWindowAya&rlar &SettingsluckyBackupWindow &Grev&TaskluckyBackupWindow G&revThis is a top menu action&TaskluckyBackupWindow &Grev ubuklar1 &ToolbarsluckyBackupWindow2Tan1m1 &Grntle/Dzenle&View/Edit DescriptionluckyBackupWindowYARIDA KES0LD0ABORTEDluckyBackupWindowYar1da kesAbortluckyBackupWindowYar1da kesiliyor: Ltfen tm srelerin sonland1r1lmas1 iin bekleyin4Aborting: Please wait for all processes to be killedluckyBackupWindowEylemlerActionsluckyBackupWindow.Tm grevler tamamland1All tasks completedluckyBackupWindowTProfili silmek istediinizden emin misiniz'Are you sure you want to delete profileluckyBackupWindowhntan1ml1 profili silmek istediinizden emin misiniz3Are you sure you want to delete the default profileluckyBackupWindowjA_a1daki grevi silmek istediinizden emin misiniz??5Are you sure you want to remove the following task ??luckyBackupWindowVTm ierilmi_ grevlerin al1_mas1n1 ba_lat)Begin the execution of all included tasksluckyBackupWindowjKontroller etkisiz k1l1nd1. Bu grev <b>atlanacak</b>5Checks are disabled. This task will be skippedluckyBackupWindow Dosya bulunamad1Could not locate the fileluckyBackupWindowZGrevlerin son yrtme zaman1 gncellenemiyor-Could not update last execution time of tasksluckyBackupWindow0Grev k&opyalama olu_turCreate D&uplicate taskluckyBackupWindow8G&eri ykleme grevi olu_turCreate R&estore taskluckyBackupWindow Ctrl+DCtrl+DluckyBackupWindow Ctrl+NCtrl+NluckyBackupWindow Ctrl+SCtrl+SluckyBackupWindow Ctrl+XCtrl+XluckyBackupWindowGeerli ProfilCurrent ProfileluckyBackupWindowK&opyala D&uplicateluckyBackupWindowntan1&ml1De&faultluckyBackupWindow Tan1m DescriptionluckyBackupWindow Hedef DestinationluckyBackupWindow Dizin DirectoryluckyBackupWindow BittiDoneluckyBackupWindowBenzetim yapDryluckyBackupWindowD1&_a aktarE&xportluckyBackupWindowHATAERRORluckyBackupWindowIKEXITluckyBackupWindowGeen zaman Elapsed timeluckyBackupWindow TrkeEnglishluckyBackupWindow TrkeDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindow Yrtlen profilExecution of profileluckyBackupWindow8Grevlerin yrtlmesi bittiExecution of tasks finishedluckyBackupWindowGrevlerin yrtlmesi kullan1c1 taraf1ndan _iddetle sonland1r1ld14Execution of tasks were terminated violently by userluckyBackupWindow1kExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindow4Hedef dizin olu_turulamad1&Failed to create destination directoryluckyBackupWindow4Yeni profil olu_turulamad1Failed to create new profileluckyBackupWindow,Profil silme ba_ar1s1zFailed to delete profileluckyBackupWindow.^u profil kopyalanamad1Failed to duplicate profileluckyBackupWindow^u profilFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindow8Profil ie aktarma ba_ar1s1zFailed to import profileluckyBackupWindow<Profil yeniden adland1r1lamad1Failed to rename profileluckyBackupWindow6Profilin zerine yaz1lamad1Failed to replace profileluckyBackupWindow.Bilgi penceresini gizleHide information windowluckyBackupWindow.Bilgi penceresini gizle+hide/show information window button tooltipHide information windowluckyBackupWindow&Profili 0e AktarmaImport ProfileluckyBackupWindowBilgi penceresiInformation windowluckyBackupWindowBilgi penceresiinformation window titleInformation windowluckyBackupWindowRGrevlerin son yrtme zaman1 gncellendi$Last execution time of tasks updatedluckyBackupWindow:Tm mevcut grevlerin listesiList of all the available tasksluckyBackupWindow KilitLockluckyBackupWindowYedei &YnetManage &BackupluckyBackupWindowGrev Ynet Manage TaskluckyBackupWindowHseili grevi bir basamak a_a1 ta_1/Move the highlighted task down, by one positionluckyBackupWindowJseili grevi bir basamak yukar1 ta_1-Move the highlighted task up, by one positionluckyBackupWindow HAYIRNOluckyBackupWindow HAR0 NOT INCLUDEDluckyBackupWindowNOTNOTEluckyBackupWindowHata bulunmad1No errors foundluckyBackupWindow.^imdi grev yrtlyorNow performing taskluckyBackupWindowLtfen a_a1daki grev zellikleri ileti_im kutusunu dikkatle inceleyiniz?Please have a good look at the following task properties dialogluckyBackupWindow:Ltfen nce bir grev seinizPlease select a task firstluckyBackupWindowTLtfen nce kopyalanacak bir grev seiniz'Please select a task to duplicate firstluckyBackupWindowVLtfen nce ynetmek iin bir grev seiniz$Please select a task to manage firstluckyBackupWindowXLtfen nce dei_tirmek iin bir grev sein$Please select a task to modify firstluckyBackupWindow@nce silmek iin bir grev sein$Please select a task to remove firstluckyBackupWindow ProfilProfileluckyBackupWindow ProfilPQuestion dialog message. Full phrase: 'profile could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow^u profilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindow^0lerleme ubuu gncellemesi gereki olmayacak(Progressbar update will not be realisticluckyBackupWindow"Y&eniden adland1rR&enameluckyBackupWindow<Tm eski _ip_ak verisi silindi Removed all older snapshots dataluckyBackupWindowSiliniyorRemovingluckyBackupWindowf^u grevin eski _ip_ak ve kay1t dosyalar1 siliniyor+Removing old snapshots and logfiles of taskluckyBackupWindowal1_t1rRunluckyBackupWindowTa&rifelendir S&cheduleluckyBackupWindow(ntan1ml1 olarak ataSet as DefaultluckyBackupWindow0Bilgi penceresini gsterShow information windowluckyBackupWindow0Bilgi penceresini gster+hide/show information window button tooltipShow information windowluckyBackupWindow:Simgeler alt1nda metin gsterShow text under iconsluckyBackupWindow KaynakSourceluckyBackupWindowVal1_an grevlerin yrtmesini HEMEN durdur'Stop the execution of running tasks NOWluckyBackupWindowBHedef dizin ba_ar1yla olu_turuldu)Successfuly created destination directoryluckyBackupWindow GrevTaskluckyBackupWindowGrev listesi Task listluckyBackupWindow2^u profilin grev listesiTask list of profileluckyBackupWindow$^u profilin tan1m1The description of profileluckyBackupWindowlGirdiiniz isim yaln1zca geersiz karakterler ieriyor:The name you have entered contains only invalid charactersluckyBackupWindow"Grev listesi bo_The task list is emptyluckyBackupWindowBu,herhangi bir dei_iklie yol amadan, bir <b>benzetim eylemi</b> uygulayacak (ou gerek eylemle ayn1 1kt1lar1 reterek){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow Profil a1lamad1Unable to open profileluckyBackupWindowSeili grevi iermek ya da iermemek in 'ier onay kutucuklar1'n1 kullan1n>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowBProfil tan1m1n1 Grntle/Dzenle!View/Edit the profile descriptionluckyBackupWindow UYARIWARNINGluckyBackupWindowHo_geldiniz Welcome toluckyBackupWindow:^unu da silmek ister misiniz:Would you like to also remove:luckyBackupWindow@Yine de ilerlemek ister misiniz?!Would you like to proceed anyway?luckyBackupWindow:zerine yazmak ister misiniz?Would you like to replace it ?luckyBackupWindowR0lerlemeden nce kaydetmek ister misiniz?-Would you like to save it before proceeding ?luckyBackupWindowEVETYESluckyBackupWindowjBir GER0 YKLEME grevi olu_turulmas1n1 talep ettiniz/You have asked for a RESTORE task to be createdluckyBackupWindowdMaksimum deskteklenebilir grev s1n1r1na eri_tiniz5You have reached the maximum limit of supported tasksluckyBackupWindowjYenisini eklemek isterseniz bir grevi silmelisiniz!!7You have to remove a task if you wish to add another !!luckyBackupWindowLayn1 adl1 bo_ bir profil olu_turulacak4a new blank one, with the same name, will be createdluckyBackupWindowekleaddluckyBackupWindowgrev ekleadd taskluckyBackupWindowzaten mevcutalready existsluckyBackupWindow"ve profil listesiand 'profile' drop-down listluckyBackupWindow6ve profil listesine eklendiand added at the profile listluckyBackupWindowxve ilerlemeden nce dei_tirmek istediklerinizi dei_tiriniz.and change anything you wish before proceedingluckyBackupWindow:_u dosya ad1yla kopyalanamad1asluckyBackupWindow:_u dosya ad1yla kopyalanamad1Ffull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowhesaplan1yor calculatingluckyBackupWindowhesaplan1yor-info message displayed during ...calculations calculatingluckyBackupWindowkomut 1kt1s1commands outputluckyBackupWindowolu_turulamad1could not be createdluckyBackupWindowkaydedilemedicould not be savedluckyBackupWindowkaydedilemediPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow*ba_ar1yla olu_turulducreated successfullyluckyBackupWindowDntan1ml1 profil olu_turuluyor ...creating default profile ...luckyBackupWindow0profil olu_turuluyor ...creating profile ...luckyBackupWindowlmevcut crontab <font color=green>ba_ar1yla gncellendi6current crontab updated successfullyluckyBackupWindowgncel profilcurrent profileluckyBackupWindow ntan1ml1 profildefault profileluckyBackupWindow ntan1ml1 profil^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindow ntan1ml1 profilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow"ba_ar1yla silindideleted successfullyluckyBackupWindow$dosyalar siliniyordeleting filesluckyBackupWindow$dosyalar siliniyor/info message displayed during ...file deletionsdeleting filesluckyBackupWindowvseili grevin mevcut yedeklerini gster - geri ykle - sil?display - restore - delete existing backups of highlighted taskluckyBackupWindowDseili grevle ilgili bilgi gster.display information regarding highlighted taskluckyBackupWindowH_u dosya ad1yla ba_ar1yla kopyaland1duplicated successfully asluckyBackupWindowhatalar bulundu errors foundluckyBackupWindow"Yrtlen profil:execution of profile:luckyBackupWindow"yrtlen profil:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindowsilme ba_ar1s1zfailed to removeluckyBackupWindowPtm eski _ip_ak verisini silme ba_ar1s1z)failed to remove all older snapshots dataluckyBackupWindow bittifinishedluckyBackupWindow bitti:full phrase: 'Execution of profile finished'finishedluckyBackupWindow>_u adla ba_ar1yla ie aktar1ld1imported successfullyluckyBackupWindowsryor...in progress...luckyBackupWindowierincludeluckyBackupWindowdei_tirildi is modifiedluckyBackupWindowgeerli deilis not valid forluckyBackupWindow.bir sonraki hataya atlajump to next errorluckyBackupWindow,bir nceki hataya atlajump to previous errorluckyBackupWindow$ba_ar1yla yklendiloaded successfullyluckyBackupWindow>ntan1ml1 profil ykleniyor ...loading default profile ...luckyBackupWindow"ykleme ba_ar1s1zloading failedluckyBackupWindow*profil ykleniyor ...loading profile ...luckyBackupWindow`ktk dosyalar1 _u dizinin alt1nda olu_turuldu: .logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindowtepsiye kltminimize to trayluckyBackupWindowDpencereyi tepsi blgesine kltr%minimizes the window to the tray arealuckyBackupWindowdei_tirmodifyluckyBackupWindow,seili grevi dei_tirmodify highlighted taskluckyBackupWindow*yap1lacak bir _ey yok nothing to doluckyBackupWindow:grev sonras1 yrtlen komutpost-task execution of commandluckyBackupWindow8grev ncesi yrtlen komutpre-task execution of commandluckyBackupWindow profilprofileluckyBackupWindow profilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow profilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow profilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow profilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowprofil profile luckyBackupWindowtazelendi refreshedluckyBackupWindowsilremoveluckyBackupWindow"seili grevi silremove highlighted taskluckyBackupWindowFba_ar1yla _una yeniden adland1r1ld1renamed successfully toluckyBackupWindowFba_ar1yla _una yeniden adland1r1ld1Wfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowrrsync ve grev ncesi/sonras1 komutlar1 burada gsterilir9rsync and pre/post task commands output is displayed hereluckyBackupWindow(ba_ar1yla kaydedildisaved successfullyluckyBackupWindowBntan1ml1 profil kaydediliyor ...saving default profile ...luckyBackupWindow.profil kaydediliyor ...saving profile ...luckyBackupWindowtarifelendi scheduledluckyBackupWindow.ntan1ml1 olarak atand1set as defaultluckyBackupWindow_una ayarland1set toluckyBackupWindowbenzetim kipisimulation modeluckyBackupWindow durumstatusluckyBackupWindowsper kullan1c1 super userluckyBackupWindow(sper kullan1c1 kipisuper user modeluckyBackupWindow_unatoluckyBackupWindow(dosyalar aktar1l1yortransferring filesluckyBackupWindow(dosyalar aktar1l1yor/info message displayed during ...file transferstransferring filesluckyBackupWindow srm:version:luckyBackupWindow Farklar1 hesaplaCalculate differences manageDialogfKaynak ve seili _ip_ak aras1ndaki farklar1 hesaplaFCalculate the differences between the source and the selected snapshot manageDialog^Hesaplamalar kullan1c1 taraf1ndan sonland1r1ld1Calculations terminated by user manageDialog KapatClose manageDialog$Bu pencereyi kapatClose this window manageDialogSilDelete manageDialogJSeili _ip_ak1 ve kay1t dosyas1n1 sil,Delete the selected snapshot and its logfile manageDialogPBu dizini okumak iin yeterli yetkim yok;I do not have sufficient permissions to read this directory manageDialog@Ltfen listeden bir _ip_ak sein&Please select a snapshot from the list manageDialogJLtfen silsile sonlanana dek bekleyin*Please wait until the thread is terminated manageDialogGeri ykleRestore manageDialog2Seili _ip_ak1 geri ykleRestore the selected snapshot manageDialogDURSTOP manageDialog0Hesaplamay1 ^0MD0 durdurStop calculations NOW manageDialog*Bu dizin mevcut deilThis directory does not exist manageDialog*Bu dizin mevcut deilInformation messageThis directory does not exist manageDialogLSeili _ip_ak1n kay1t dosyas1n1 gster)View the logfile of the selected snapshot manageDialogfSeili e_zamanlama grevinin kay1t dosyas1n1 gster*View the logfile of the selected sync task manageDialog hedef: destination: manageDialogkayna1 gizle hide source manageDialog4luckyBackup - yedei ynetluckyBackup - manage backup manageDialogmevcut deil not available manageDialog profilprofile manageDialogkaynak:source: manageDialog(dizin A'y1 e_zamanla sync dir A manageDialog(Dizin B'yi e_zamanla sync dir B manageDialog grevtask manageDialog2kay1t dosyas1n1 grntleview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardYARIDA KESABORT manageWizardYar1da kesildiAborted manageWizardYedekleme yolu Backup path manageWizardRYeni yerine koyma yolu iin yerele gz at%Browse locally for a new restore path manageWizard|Yedek _ip_ak1 yerine koyma dizinine klonlamak iin bunu sein.BCheck this, to clone the backup snapshot to the restore directory. manageWizardTarih ve zaman Date & time manageWizardYedei sil Delete backup manageWizardHYedekte bulunmayan mevcut veriyi sil4Delete existing data that do not exist at the backup manageWizardVeri siliniyor Deleting data manageWizardd^ip_ak dei_ikliklerini listeleyen dosya siliniyor)Deleting file that lists snapshot changes manageWizard<^ip_ak kay1t dosyas1 siliniyorDeleting snapshot logfile manageWizardMevcut yedek dosyalar yerine koyma dizinindeki e_le_en doyalar1n yerini alacakSExisting backup files will replace the corresponding files at the restore directory manageWizard BittiFinished manageWizardEer yukar1daki bilgi doruysa, ba_lamak iin <b>ba_la</b>'y1 t1klay1n@If the information above is correct, click start to begin manageWizardEer yukar1daki bilgi doruysa, ba_lamak iin <b>ba_la</b>'y1 t1klay1n`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard.bir sonraki hataya atlaJump to next error manageWizard,bir nceki hataya atlaJump to previous error manageWizardH^ip_aka zgn veri yok. Atlan1yor...,No snapshot specific data exist. Skipping... manageWizardYolPath manageWizard"Yedei geri ykleRestore backup manageWizard"Yerine koyma yolu Restore path manageWizard<Veri yerine konuyor: ana gvdeRestoring data: main trunk manageWizardHVeri yerine konuyor: _ip_ak dosyalarRestoring data: snapshot files manageWizard@Yeni yerine koyma dizinini seinSelect new restore directory manageWizard\Yerine koyma dizini yedek _ip_akla ayn1 olacakBThe restore directory will become identical to the backup snapshot manageWizardBu, herhangi bir dei_iklik yapmayan (ve gerek yrtme 1kt1s1n1n ounlukla ayn1s1n1 reten) bir <b>benzetim yrtmesi</b> gerekle_tirecek{This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizard8^ip_ak listesi gncelleniyorUpdating list of snapshots manageWizard UYARIWARNING manageWizard<Yedek veriyi silmek zeresiniz#You are about to delete backup data manageWizardiptal etcancel manageWizarddei_tirchange manageWizard kapatclose manageWizardhatalar bulundu errors found manageWizardba_ar1s1zfailed manageWizardba_ar1s1z-info message displayed after ...file deletionfailed manageWizard2lucyBackup - yedei ynetluckyBackup - manage backup manageWizardsonraki hata next error manageWizardhata yok no errors manageWizardmevcut deil not available manageWizardnceki hataprevious error manageWizardbenzetim simulation manageWizard ba_lastart manageWizardba_ar1l1success manageWizardba_ar1l1-info message displayed after ...file deletionsuccess manageWizardba_ar1l15info message displayed after ...snapshots list updatesuccess manageWizardv'Uzak Makine' i_aretlendi, ama uzak makine ad1 bildirilmedi='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog'Hari tut' grup kutusunda hedefi ieren bir dizin tan1mlamay1 <b>unutmay1n</b>fDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host:@Host: modifyDialogBu grevden hari tutulacak herhangi bir dizin, dosya ya da desen ekleyin@Add any directory, file or pattern to be excluded from this task modifyDialogBu grev taraf1ndan ierilecek tm dizin, dosya ya da desenleri ekleyin>Add any directory, file or pattern to be included by this task modifyDialogRKomutu yandaki alanda girildii gibi ekle*Add command as entered in the field beside modifyDialogrBir sonraki alanda girildii gibi hari tutma kural1 ekle*Add exclusion as entered in the next field modifyDialoghBir sonraki alanda girildii gibi ierme kural1 ekle*Add inclusion as entered in the next field modifyDialogrsync seenekleri ekle ya da 1kar. Eer bunun ne amlama geldii hakk1nda hibir fikriniz yoksa, bu ayarlara dokunmay1n !!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialogfBir sonraki alandaki girilmi_ rsync seeneini ekle-Add rsync option as entered in the next field modifyDialog0leri DzeyAdvanced modifyDialog SonraAfter modifyDialogGrev zellikleri penceresinin tm bildirilmi_ alanlar1 tamam grnyor?All declared fields of the task properties window seem to be ok modifyDialogAyr1ca Yrt Also Execute modifyDialog&Yedekleme dosyalar1 Backup files modifyDialognceBefore modifyDialog&nbellek klasrleri Cache folders modifyDialog0ptal etCancel modifyDialogHedef olarak bir FAT/NTFS disk blm kullan1yorsan1z bunu i_aretleyin. Veri aidiyeti ve izinler korunmayacakt1r. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogrBir rsync Uzak modlne balanmak iin buray1 i_aretleyin/Check this to connect to an rsync Remote module modifyDialog"Komut SeenekleriCommand Options modifyDialogKomut listesi Command list modifyDialogAyg1t1 (yaln1zca sper kullan1c1) & zel dosyalar1 olduu gibi kopyala (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogbSimgesel balar1 simgesel ba olarak kopyala (-l)Copy symlinks as symlinks (-l) modifyDialognBu grevin trn tan1mlay1n: 1. Kayna1n ieriini Hedef iine yedekler 2. Kaynak dizinini ayn1 adla Hedef iine yedekler 3. En gncel dosyalar1 koruyarak Kaynak & Hedef'i e_zamanlarDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog.Hedefteki dosyalar1 silDelete files on the destination modifyDialog Tan1m Description modifyDialog Hedef Destination modifyDialogHedef : Destination : modifyDialog$Hedef FAT/NTFS'tirDestination is FAT/NTFS modifyDialog~Hedefte daha yeni olan kaynak dosyalar1n1 yedekleme (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogBu desen listesini hari tutma. Ltfen ierme kurallar1n1 daha iyi anlamak iin el kitab1na ba_vurun.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialogBu grev iin bir isim giriniz (rnein "Ba_lang1 dizinimi yedekle"):Enter a name for this task (eg "Backup my home directory") modifyDialogBuraya grevden sonra yrtlecek bir komut girin ve a_a1daki listeye eklemek iin "ekle" dmesine bas1nnEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogBuraya grevden nce yrtlecek bir komut girin ve a_a1daki listeye eklemek iin "ekle" dmesine bas1noEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogEklenecek rsync seeneini girin (rnek: "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogBuraya dosya, dizin ya da deseni girin ve hari listesine eklemek iin "ekle" dmesine bas1n * - herhangi bir bo_-olmayan bile_enle e_le_ir (taksim'lerde durur) ** - her_eyle e_le_ir, taksimler dahil ? - her_eyle e_le_ir, taksim hari izleyen dizin_ad1/*** - dizin ve iindeki her_eyle e_le_ir ba_layan / - desen, nakil hiyerar_isi iindeki belirli bir noktaya 1palan1r (normal olarak bu "kaynak"t1r) izleyen / - yaln1zca dizin e_le_ir, dosya, simgesel link ya da ayg1tlar deilEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogBuraya dosya, dizin ya da deseni girin ve dahil listesine eklemek iin "ekle" dmesine bas1n * - herhangi bir bo_-olmayan bile_enle e_le_ir (taksim'lerde durur) ** - her_eyle e_le_ir, taksimler dahil ? - her_eyle e_le_ir, taksim hari izleyen dizin_ad1/*** - dizin ve iindeki her_eyle e_le_ir ba_layan / - desen, nakil hiyerar_isi iindeki belirli bir noktaya 1palan1r (normal olarak bu "kaynak"t1r) izleyen / - yaln1zca dizin e_le_ir, dosya, simgesel link ya da ayg1tlar deilEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogHedef dizininin tam yolunu (r: /media/backups/SiduxHome/) girinOEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogzel ssh kimlik denetleme anahtar1n1 ieren dosyan1n tam yolunu girin (uygun deilse bo_ b1rak1n). Bir OpenSSH anahtar ifti kullanarak parolas1z uzak ssh balant1s1 kurmak iin gereken tm eylemleri yapmal1s1n1zEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialogrsync (ssh deil) kimlik denetleme parolas1n1 ieren dosyan1n tam yolunu girin (uygun deilse bo_ b1rak1n).~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogjKaynak dizininin tam yolunu (r: /home/luckyb/) girin>Enter the full path of the source directory (eg /home/luckyb/) modifyDialog6Uzak makinan1n ad1n1 girin."Enter the name of the remote host. modifyDialogssh balant1s1 iin kullanmak istediiniz portu giriniz (ntan1ml1 port iin bo_ b1rak1n)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogUzak makina iin kullan1c1 ad1n1 giriniz (uygun deilse bo_ b1rak1n).HEnter your username for the remote host (leave blank if not applicable). modifyDialogHatalar bulunduErrors have been found modifyDialogHari tutExclude modifyDialogrTm "lost+found" klasrlerini hari tut (**/lost+found*/)2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogdTm yedekleme dosya & klasrlerini hari tut (**~)(Exclude all backup files & folders (**~) modifyDialog~Tm nbellek klasrlerini hari tut (**/*cache*/ & **/*Cache*/)5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialogVTm temp klasrlerini hari tut (**/*tmp*/)$Exclude all temp folders (**/*tmp*/) modifyDialogKullan1c1n1n tm p klasrlerini hari tut (**/*Trash*/, **/*trash*/);Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialog"Hari tut listesi Exclude list modifyDialogSistem balama klasrlerini hari tut /mnt & /media (/mnt/*/**, /media/*/**)CExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialog`Grevden nce ya da sonra ekstra komutlar yrt.1Execute extra commands, before or after the task. modifyDialogGrevi UYARI mesaj1yla grnse bile yrt Normalde "nce Yrt" komutu bir uyar1y1 onarabildiinde kullan1l1r (rnek: disk blmleri monte et) D0KKAT: ne yapt11n1z1 biliyorsan1z bunu i_aretleyinExecute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog@Ekstra rsync seenekleri listesiExtra rsync options list modifyDialogKaynakta birbirine sert-bal1 dosyalar, hedefte de birbirlerine sert-balanacak UYARI: Aktar1m kmesinde tm dosyalar ierilmelidir !! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog:Dosyalar1 CVS tarz1nda yoksayIgnore files the CVS way modifyDialognCVS'e benzer i_lem yolu kullanan dosyalar1 yoksay (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialog0erInclude modifyDialog0erme listesi Include list modifyDialog0erme kipi Include mode modifyDialogKip:Mode: modifyDialogAd :Name : modifyDialogNormal 0ermeNormal Include modifyDialog TamamOkay modifyDialog$Yaln1zca _unu 0er Only Include modifyDialogAksi halde yerelde al1_mak zere 'Uzak Makine' i_aretini kald1r1n1z2Otherwise uncheck 'Remote Host' to operate locally modifyDialognDesen dzenleyiciyi ba_latmadan nce kayna1 tan1mlay1nSeili iermeyi listeden kald1r&Remove highlighted inclusion from list modifyDialog8Seili seenei listeden sil#Remove highlighted option from list modifyDialog6al1_t1r1lacak komutu seinSelect command to be executed modifyDialog$Hedef dizini seinSelect destination directory modifyDialogZHari tutma deseninin okunaca1 dosyay1 sein$Select file to read exclude patterns modifyDialogP0erme deseninin okunaca1 dosyay1 sein$Select file to read include patterns modifyDialog8Rsync parola dosyas1n1 seinSelect rsync password file modifyDialog&Kaynak dizini seinSelect source directory modifyDialog6Ssh anahtar dosyas1n1 seinSelect ssh keyfile modifyDialog`Tutulacak toplam yedek _ip_aklar1n1 belirleyiniz0Set the total number of backup snapshots to keep modifyDialog^rsync komutunu al1_t1r1laca1 _ekilde gsterir.Shows the rsync command as it will be executed modifyDialog@Daha yeni hedef dosyalar1n1 atlaSkip newer destination files modifyDialog(Tutulacak _ip_aklar:Snapshots to keep: modifyDialog KaynakSource modifyDialogKaynak :Source : modifyDialog4Kaynak ve Hedefi e_zamanla"Synchronize Source and Destination modifyDialog"Sistem klasrleriSystem folders modifyDialog2Sistem balama klasrleriSystem mount folders modifyDialogGrev tan1m1Task description modifyDialogGrev ad1 Task name modifyDialog"Grev zellikleriTask properties modifyDialog^ablonlar Templates modifyDialog Geici klasrlerTemporary folders modifyDialogjBuna izin verilmez nk '/'in gerek bir ismi yoktur <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html>

Profile execution scheduling

scheduleDialog"yeniden ba_lamada@ rebootscheduleDialog:Yeni bir profil tarifesi ekleAdd a new profile schedulescheduleDialog(Profil tarifesi ekleAdd profile schedulescheduleDialogHerAnyscheduleDialog NisanAprilscheduleDialog Nisanfull phrase: 'of April'AprilscheduleDialog~Tarife ileti_im kutusunu kapatmak istediinizden emin misiniz ?4Are you sure you want to close the schedule dialog ?scheduleDialogAustosAugustscheduleDialogAustosfull phrase: 'of August'AugustscheduleDialog0ptal EtCancelscheduleDialogMakineniz grafik ortam1 desteklemiyorsa (rnein: sunucu) bunu i_aretleyinOCheck this if your machine does not support a graphical environment (eg server)scheduleDialogKonsol Kipi Console ModescheduleDialog Aral1kDecemberscheduleDialog Aral1kfull phrase: 'of December'DecemberscheduleDialog.Mevcut crontab'1 gsterDisplay the current crontabscheduleDialog^u profiliExecute profilescheduleDialog ^ubatFebruaryscheduleDialog ^ubatfull phrase: 'of February'FebruaryscheduleDialogCumaFridayscheduleDialogGeersiz profilInvalid profilescheduleDialogOcakJanuaryscheduleDialogOcakfull phrase: 'of January'JanuaryscheduleDialog TemmuzJulyscheduleDialog Temmuzfull phrase: 'of July'JulyscheduleDialogHaziranJunescheduleDialogHaziranfull phrase: 'of June'JunescheduleDialogMartMarchscheduleDialogMartfull phrase: 'of March'MarchscheduleDialog May1sMayscheduleDialog May1sfull phrase: 'of May'MayscheduleDialog0Profil tarifesi dei_tirModify profile schedulescheduleDialogBSeili profil tarifesini dei_tir Modify selected profile schedulescheduleDialogPazartesiMondayscheduleDialog,Tarife planlanmam1_ !!No schedules are declared !!scheduleDialog Kas1mNovemberscheduleDialog Kas1mfull phrase: 'of November'NovemberscheduleDialogEkimOctoberscheduleDialogEkimfull phrase: 'of October'OctoberscheduleDialogProfil : Profile :scheduleDialog6Profil tarifesi ayr1nt1lar1Profile schedule detailsscheduleDialog8Seili profil tarifesini sil Remove selected profile schedulescheduleDialog8Ba_lang1ta bir kez al1_t1rRun once, at startupscheduleDialogCumartesiSaturdayscheduleDialog Eyll SeptemberscheduleDialog Eyllfull phrase: 'of September' SeptemberscheduleDialogDizin kontrolnden sonra 'KR0T0K' uyar1 mesaj1 olan grevleri atlaSSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog&S1f1rdan ba_lan1yorStarting from scratchscheduleDialog PazarSundayscheduleDialoglMevcut tarife dosyas1 geerli bir luckyBackup v deil.8The existent schedule file is not a valid luckyBackup v.scheduleDialogPer_embeThursdayscheduleDialogSal1TuesdayscheduleDialog6cron dosyas1 olu_turulamad1Unable to create cron filescheduleDialog:Tarife dosyas1 olu_turulamad1Unable to create schedule filescheduleDialogar_amba WednesdayscheduleDialogdcronLA dmesine t1klamadan dei_iklikler yapt1n1z8You have made changes without clicking the cronIT buttonscheduleDialogtMaksimum desteklenebilir tarife profili limitine ula_t1n1zBYou have reached the maximum limit of supported scheduled profilesscheduleDialoglYeni bir ge eklemek iin bir tanesini kald1rmal1s1n1z5You have to remove an item if you wish to add anotherscheduleDialogDcrontab'1n1z ba_ar1yla gncellendi$Your crontab is updated successfullyscheduleDialogekleaddscheduleDialogsaatatscheduleDialog kapatclosescheduleDialog$Bu pencereyi kapatclose this dialogscheduleDialogcronLA !! cronIT !!scheduleDialogcrontab ieriicrontab contentscheduleDialoggndayscheduleDialogay1n gn :day of month :scheduleDialoghaftan1n gn : day of week :scheduleDialoghereveryscheduleDialog(luckyBackup - tarifeluckyBackup - schedulescheduleDialogdei_tirmodifyscheduleDialogay :month :scheduleDialogncindscheduleDialogncias in 22nd dayndscheduleDialog&crontab girdisi yokno crontab entries existscheduleDialog _ununofscheduleDialog"herhangi bir ay1n of any monthscheduleDialog tamamokayscheduleDialogJsistem ba_lang1c1nda bir kez al1_t1ronce, at system startupscheduleDialogncrdscheduleDialogncas in 23rd dayrdscheduleDialogsilremovescheduleDialogprofillerin yrtlmesini yukar1daki listede bildirildii gibi tarifelendir@schedule the execution of profiles as declared in the list abovescheduleDialogkritii atla skip criticalscheduleDialogincistscheduleDialogincias in 21st daystscheduleDialogincias in 31st daystscheduleDialogincithscheduleDialoguncuas in 10th daythscheduleDialogincias in 11th daythscheduleDialogincias in 12th....19th daythscheduleDialogncias in 20th daythscheduleDialogincias in 24th...30th daythscheduleDialoginci as in 8th daythscheduleDialoguncu as in 9th daythscheduleDialog*zaman (saat:dakika) :time (hour:min) :scheduleDialog.mevcut crontab'1 gsterview current crontabscheduleDialogLAyn1 ada sahip bir profil zaten mevcut+A profile with the same name already exists textDialogPDevam etmek istediinize emin misiniz ??#Are you sure you wish to proceed ?? textDialoghD0KKAT, amac1n1z kayna1 hedefe klonlamak DE0LSE !!BBEWARE, if your intention is NOT to clone source to destination !! textDialog 0ptalCancel textDialog*Komutu panoya kopyalaCopy command to clipboard textDialogHBu grev iin bunu bir daha gsterme$Do not show this again for this task textDialog0Parola cmlesini girin :Enter passphrase : textDialog Parolay1 girin :Enter pasword : textDialog6Yeni profilin ad1n1 girin :#Enter the name of the new profile : textDialog6Profilin yeni ad1n1 girin :#Enter the new name of the profile : textDialog Hay1rNo textDialog TamamOkay textDialog2Ltfen ba_ka bir ad girinPlease enter a different name textDialogProfil tan1m1 :Profile description : textDialogEvetYes textDialog"Kaynak dizinin ieriini yedekle" ile <br>"hedefteki dosyalar1 sil" seeneini birlikte setinizYou have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialogluckyBackup luckyBackup textDialog TamamOkay winDialogyerele gz atbrowse locally winDialogluckyBackup luckyBackup winDialogluckybackup-0.5.0/translations/luckybackup_tr.ts0000666000175000017500000067570213165410113021530 0ustar luckybluckyb CalcDiffThread Scanning destination Hedef taranıyor Please wait Lütfen bekleyin Scanning snapshot Şipşak taranıyor Scanning source Kaynak taranıyor Calculating differences Farklar hesaplanıyor Sync dir A & B differences Dizin A & B eşzamanlama farklılıkları Snapshot and source differences Şipşak ve kaynak farklılıkları Sync dir B data that also exists at sync dir A and is different Dizin B eşzamanlama verisi aynı zamanda dizin A eşzamanlamada mevcut ve farklı Snapshot data that also exists at the source and is different Şipşak verisi kaynakta da mevcut ve farklı The snapshot data will replace the source data during RESTORE YERİNE KOYMA sırasında şipşak verisi kaynak verisinin yerini alacak Data amount is huge. Displaying only first entries Veri miktarı çok büyük. Yalnızca ilk girdiler gösteriliyor Sync dir B data that do NOT exist at sync dir A Dizin A eşzamanlamada BULUNMAYAN dizin B eşzamanlama verisi Snapshot data that do NOT exist at the source Kaynakta BULUNMAYAN şipşak verisi These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE YERİNE KOYMA sırasında bunlar kaynağın üstüne nakledilecek Sync dir A data that do NOT exist at sync dir B Dizin B eşzamanlamada BULUNMAYAN dizin A eşzamanlama verisi Source data that do NOT exist at the snapshot Şipşakta BULUNMAYAN kaynak verisi These will be deleted during RESTORE only if you enable the option: Eğer seçeneği geçerli kılarsanız şunlar YERİNE KOYMA sırasında silinecek: delete existing source data that do not exist at the backup yedekte bulunmayan mevcut kaynak verisini sil QObject The task list is empty Görev listesi boş nothing to start başlatacak bir şey yok You have included both of the following connected tasks: Aşağıdaki her iki bağlantılı görevi içerdiniz: this is not allowed for obvious reasons bariz nedenlerden dolayı buna izin verilmez Please <b>uncheck appropriate include boxes</b> before proceeding Lütfen ilerlemeden önce <b>ilgili içerme kutularını temizleyiniz</b> You have not included any tasks Hiç görev içermediniz The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Aşağıdaki içerilmiş görevler <b>aynı hedef dizini paylaşmakta</b> (hep birlikte ya da gruplar halinde) ve en azından bir tanesi bir dizin içeriğini yedekleyecek this will lead to one task canceling the other bu, bir görevin diğerini iptal etmesine yol açacak Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Lütfen ilerlemeden önce ilgili içerme kutularını temizleyin ya da tüm görev türlerini '<b>Dizin içeriğini yedekle</b>'den başka birine değiştirin veya 'Dizin içeriğini yedekle' ile '<b>Yalnızca içer</b>' seçeneğini birlikte kullanın pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting görev öncesi yürütülen komut starting Full phrase: pre-task execution of command: <COMMAND> starting başlıyor Command re-run due to failure This means that a specific command is run for once more because it failed the first time Başarısızlıktan dolayı komut tekrar çalıştırılıyor post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting görev sonrası yürütülen komut starting Full phrase: post-task execution of command: <COMMAND> starting başlıyor execution of task Full phrase: execution of task: <TASKNAME> starting görev yürütülüyor starting Full phrase: execution of task: <TASKNAME> starting başlıyor Source Full phrase: source: <SOURCE_NAME Kaynak Destination Full phrase: Destination: <DEST_NAME Hedef execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting görevin 1. bölümünün çalıştırılması starting Full phrase: execution of 1st part of task: <TASKNAME> starting başlıyor Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Eşzamanlanıyor to Full phrase: Syncing <DIR-A> to <DIR-B> şuna execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting görevin 2. bölümünün çalıştırılması starting Full phrase: execution of 2nd part of task: <TASKNAME> starting başlıyor Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Eşzamanlanıyor to Full phrase: Syncing <DIR-B> to <DIR-A> şuna pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished görev öncesi yürütülen komut finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished bitti post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished görev sonrası yürütülen komut finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished bitti execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished görevin 1. bölümünün çalıştırılması finished Full phrase: execution of 1st part of task: <TASKNAME> finished bitti execution of task Full phrase: execution of task: <TASKNAME> finished görevin çalıştırılması finished Full phrase: execution of task: <TASKNAME> finished bitti execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error görevin çalıştırılması finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error görev öncesi/sonrası komut yürütmede hata nedeniyle bitti The process reported an error Süreç hata rapor etti Backing-up profile, logfiles and snapshot data Profil, kayıt dosyaları ve şipşak veri yedekleniyor Could not open the logfile Kayıt dosyası açılamıyor The logfile does not exist Kayıt dosyası mevcut değil The specified command is probably not installed Belirtilen komut muhtemelen kurulmamış The logfile could not be created Kayıt dosyası oluşturulamadı command: komut: exit code: çıkış kodu: output: çıktı: Last execution time Son yürütme zamanı not available mevcut değil no errors hata yok errors found hatalar saptandı status durum OK Sync directory Source directory Using remote, check is skipped Destination directory free as in free disk space WARNING UYARI I do not have the permission to read/enter sync directory A I do not have the permission to read/enter the source directory I do not have the permission to read/enter sync directory B I do not have the permission to read/enter the destination directory Directory Dizin and/or does not exist is not mounted is empty or does not exist I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option This task will be <font color=red><b>skipped</b></font> CRITICAL is empty I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway This task will <font color=orange><b>not be skipped The Destination Directory will be created if it doesn't exist and filled with new backup data Task description Görev tanımı ReadLogFile Could not locate the logfile Could not open the logfile Kayıt dosyası açılamıyor aboutDialog using Qt4 Qt4 kullanılıyor Backup & Sync Application Yedekleme & Eşzamanlama Uygulaması Loukas Avgeriou Loukas Avgeriou It 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. Yararlı olması ümidiyle dağıtılmakta, fakat HİÇBİR GARANTİ İÇERMEDEN; hatta TİCARETE UYGUNLUK ya da BELİRLİ BİR AMACA UYGUNLUK iması dahi içermemektedir. See the 'License Agreement' tab for more details. Daha fazla ayrıntı için Lisans Anlaşması sekmesine bakınız. Athens, Greece Atina, Yunanistan Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Arch linux paketi/pkgbuild resmi idame edicisi (AUR) Valuable advisor Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor rpm paketçisi, değerli sınayıcı ve uzak bağlantı danışmanı Patrick Matthaei Patrick Matthaei Debian package maintainer Debian paket idame edicisi Nikolas Poniros Nikolas Poniros Greek gui translator and valuable tester Yunanca gui çevirmeni ve değerli sınayıcı The indifex team for developing the wonderful transifex localization platform and providing it for free Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE paket idame edicisi (KDE4 Community repo) ve değerli paketleme danışmanı Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis paket idame edicisi (Community repo) & İspanyolca gui çevirmeni Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) ubuntu paket idame edicisi (launchpad PPA) Bruce Marriner port to MS Windows Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X Mac OS X'e port Elbert Pol port to OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo ebuild idame edicisi Dimitris Stasinopoulos Puppy pet & sfs maintainer Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva paket idame edicisi (official contrib repo) Michael J Gruber Jason E. Hale Free BSD package maintainer Dimitris Jemos Slackel package maintainer ex Fedora package maintainer Pavel Fric Pavel Fric Czech gui translator Çek gui çevirmeni Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Yunanca el kitabı çevirmeni German gui translator Almanca gui çevirmeni Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Portekizce gui çevirmeni Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Fransızca gui çevirmeni ve değerli paketleme danışmanı (ve daha fazlası) Raffaele Raffaele Italian gui translator İtalyanca gui çevirmeni using Qt António Correia Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Rusça gui çevirmeni ve değerli sınayıcı Kenny Verstraete Kenny Verstraete Dutch gui translator Felemenkçe gui çevirmeni Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Boşnakça gui çevirmeni & mandriva paket idame edicisi Majed Sahli Majed Sahli Arabic gui translator Arapça gui çevirmeni Adrian Murariu Adrian Murariu Romanian gui translator Romence gui çevirmeni Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer v0.3 gui tasarımcısı fri13 fri13 v.0.3 gui designer v.0.3 gui tasarımcısı Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Eğer o ve onun bilgilendirici rehberleri olmasaydı bu projeyi asla başlatmazdım Thomas Glatt French gui translator Sébastien Bourgain pinguinofurioso Alessio Ganci Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator İspanyolca gui çevirmeni Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator İsveçce gui çevirmeni Catalan gui translator Slovak gui translator Rivo Zangov Estonian gui translator Nicolay Boychev Bulgarian gui translator Galician gui translator Roger Foss Norwegian gui translator Pin-hsien Li Chinese (Taiwan) gui translator Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) özel konuk yazılım hatası giderici ;) Aphofis Scott valuable tester & brainstorming specialist Yuri Vidal backupwhenidle python script developer Bjorn Rietdijk valuable OS/2 and windows tester ...to all users of the ...şunun tüm kullanıcıları forums for their support. destekleri için forumlar. Especially Özellikle that contributed to this project one way or another bu projeye şu ya da bu şekilde katılan Last but no least Son olarak fakat en önemsiz olmayan Could not locate the license file Lisans dosyası bulunamıyor no money para yok If you like this app and would like to donate something to me personally, all you have to do is: Bu uygulamayı beğendiyseniz ve bana kişisel olarak bağışta bulunmak isterseniz, tüm yapmanız gereken: Give a thumbs up at: Şurada bir kabul işareti verin: Vote good & become a fan at: İyi olarak oylayın & şurada hayranımız olun: This is my reward :) Bu benim ödülümdür :) money para I personally never had and never will accept money for this project. Ben bu proje için kişisel olarak hiçbir zaman para kabul etmedim ve etmeyeceğim. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Yine de, luckyBackup'ı gerçekten finansal yardıma gereksinim duyan kişiler için kullanmaya karar verdim. So, please consider it seriously to donate money that will eventually be used for a good cause. Dolayısıyla, neticede iyi bir amaç için kullanılacak bir bağışta bulunmayı lütfen ciddi olarak göz önünde bulundurun. donation link bağış linki luckyBackup - about luckyBackup - hakkında close kapat &About &Hakkında <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Arial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support De&stek A&uthor Ya&zar &Thanks to &Teşekkürler &License Agreement &Lisans Anlaşması luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU Genel Kamu Lisansı</a> koşulları altında dağıtılmaktadır It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! <b>Özgür bir yazılımdır</b>: Lisansın 3. sürümünde Özgür Yazılım Kurumu'nca yayınlandığı gibi, GNU Genel Kamu Lisansı şartları altında yeniden dağıtabilir ve/veya değiştirebilirsiniz. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora paket idamecisi (resmi repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Slovakça gui çevirmeni E. Hakan Duran E. Hakan Duran Turkish gui translator Türkçe gui çevirmeni Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) slackware paket idamecisi (SlackBuilds Deposu) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development bu projenin geliştirme aşaması boyunca bana katlanan, diğer yarım, <b>Dimitra</b> emailDialog luckyBackup - email Email a report after profile execution command: Use default This means "use the default value for this field" Arguments %f from: Enter the sender of the message %l logfile %c logfile.tar.gz %c logfile.tar.gz %d date %d tarih %i time %i saat %p profile name %p profil adı %e No of errors %e hata sayısı If unchecked "TLS auto" is used. Only available for sendemail Disable TLS %t to: %t şuna: Enter the recipient of the message Mesajın alıcısını giriniz %s subject: %s konu: Enter the subject of the message Mesajın konusunu giriniz %v smtp server: %v smtp sunucusu: Enter the smtp server used to send the message Mesajı göndermek için kullanılan smtp sunucusunu giriniz %b body: %b metin: Enter the body of the message Mesajın metnini giriniz Send an email right now to test the provided arguments Sunulan argümanları denemek için şu anda bir eposta gönder Test Test Accept changes and close dialog Değişiklikleri kabul et ve iletişim kutusunu kapat Okay Tamam Close dialog İletişim kutusunu kapat Cancel İptal et Specify the conditions to send an email Bir eposta gönderme koşullarını belirleyin Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Koşullar Only send when error(s) occurred during a run Yalnızca yürütme sırasında hata(lar) oluştuğunda gönder Error(s) occurred Hata(lar) oluştu Only send when profile is scheduled to run Profile is scheduled Never send an email Never The command field is empty helpBrowser luckyBackup - help luckyBackup - yardım manual/ el kitabı/ Okay Tamam logDialog luckyBackup - tasks execution progress luckyBackup - görev yürütme gidişatı <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error önceki hata next error sonraki hata close kapat loading logfile... kayıt dosyası yükleniyor... wait bekleyin luckyBackupWindow commands output output window label komut çıktısı rsync and pre/post task commands output is displayed here tooltip rsync ve görev öncesi/sonrası komutları burada gösterilir Task list task list label Görev listesi List of all the available tasks task list tooltip - line1 Tüm mevcut görevlerin listesi Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Seçili görevi içermek ya da içermemek çin 'içer onay kutucukları'nı kullanın Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Yürütülen profil finished full phrase: 'Execution of profile <PROFILENAME> finished' bitti simulation mode benzetim kipi Could not update last execution time of tasks Görevlerin son yürütme zamanı güncellenemiyor Last execution time of tasks updated Görevlerin son yürütme zamanı güncellendi &Abort Y&arıda kes &Minimize to tray tray menu action Si&mge durumuna küçült &Restore tray menu action Ge&ri yükle execution of profile: tray message - execution of profile: <PROFILENAME> in progress... yürütülen profil: in progress... tray message - execution of profile: <PROFILENAME> in progress... sürüyor... Removed all older snapshots data Tüm eski şipşak verisi silindi failed to remove all older snapshots data tüm eski şipşak verisini silme başarısız Unknown error Elapsed time Geçen zaman pre-task execution of command görev öncesi yürütülen komut post-task execution of command görev sonrası yürütülen komut Now performing task Şimdi görev yürütülüyor Directory Dizin calculating hesaplanıyor deleting files dosyalar siliniyor Total files transferred trying to send an email The system will shutdown in 1 minute Source Kaynak Destination Hedef All tasks completed Tüm görevler tamamlandı No errors found Hata bulunmadı errors found hatalar bulundu logfile(s) have been created under directory: kütük dosyaları şu dizinin altında oluşturuldu: Done Bitti execution of profile: Yürütülen profil: finished bitti Execution of tasks were terminated violently by user Görevlerin yürütülmesi kullanıcı tarafından şiddetle sonlandırıldı &Profile This is a top menu item &Profil &Settings This is a top menu item Aya&rlar &Language This is a top menu item Di&l &Help This is a top menu item Yardı&m &Handbook full phrase: 'luckyBackup Handbook' El ki&tabı &About full phrase: 'about luckyBackup' H&akkında current profile güncel profil include label of 'include' checkboxes içer Move the highlighted task up, by one position button tooltip seçili görevi bir basamak yukarı taşı Move the highlighted task down, by one position button tooltip seçili görevi bir basamak aşağı taşı jump to next error button tooltip bir sonraki hataya atla jump to previous error button tooltip bir önceki hataya atla Task task groupbox (add, remove, modify buttons) label Görev add add task button label ekle add task add task button tooltip görev ekle remove remove task button label sil remove highlighted task remove task button tooltip seçili görevi sil modify modify task button label değiştir modify highlighted task modify task button tooltip seçili görevi değiştir Begin the execution of all included tasks start button tooltip Tüm içerilmiş görevlerin çalışmasını başlat NOTE simulation checkbox tooltip - line2 NOT Progressbar update will not be realistic simulation checkbox tooltip - line2 İlerleme çubuğu güncellemesi gerçekçi olmayacak Information window information window title Bilgi penceresi Exit exit button tooltip. full phrase is: 'exit luckybackup' Çık EXIT EXIT button label ÇIK minimize to tray tepsiye küçült minimizes the window to the tray area pencereyi tepsi bölgesine küçültür F1 F1 English Türkçe &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Bir GERİ YÜKLEME görevi oluşturulmasını talep ettiniz Please have a good look at the following task properties dialog 'create restore' message line 2/4 Lütfen aşağıdaki görev özellikleri iletişim kutusunu dikkatle inceleyiniz and change anything you wish before proceeding 'create restore' message line 3/4 ve ilerlemeden önce değiştirmek istediklerinizi değiştiriniz Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Özellikle 'Görev adı', 'kaynak', 'hedef' & 'daha yeni hedef dosyalarını atla' kutularını (ileri düzey) kontrol ediniz ERROR HATA loading default profile ... information window message öntanımlı profil yükleniyor ... loading profile ... information window message profil yükleniyor ... loading failed information window message yükleme başarısız Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Profil açılamadı is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y geçerli değil version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y sürüm: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' başarıyla yüklendi scheduled this refers to a profile tarifelendi YES EVET NO HAYIR Description Tanım saving default profile ... Information window message öntanımlı profil kaydediliyor ... saving profile ... Information window message profil kaydediliyor ... WARNING UYARI default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. öntanımlı profil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' başarıyla kaydedildi creating default profile ... Information window message öntanımlı profil oluşturuluyor ... creating profile ... Information window message profil oluşturuluyor ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' başarıyla oluşturuldu Would you like to save it before proceeding ? İlerlemeden önce kaydetmek ister misiniz? Would you like to proceed anyway? Yine de ilerlemek ister misiniz? super user super user is the root user süper kullanıcı super user mode süper kullanıcı kipi Welcome to full phrase: 'Welcome to luckyBackup' Hoşgeldiniz English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Türkçe Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Yeni profil oluşturulamadı The name you have entered contains only invalid characters Girdiğiniz isim yalnızca geçersiz karakterler içeriyor Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' zaten mevcut Would you like to replace it ? Üzerine yazmak ister misiniz? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Profilin üzerine yazılamadı Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Profil yeniden adlandırılamadı profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' başarıyla şuna yeniden adlandırıldı default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. öntanımlı profil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' başarıyla şuna yeniden adlandırıldı All relevant files (logs etc) have also been updated Failed to update all relevant files (logs etc) Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Öntanımlı profili silmek istediğinizden emin misiniz a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' aynı adlı boş bir profil oluşturulacak Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Profili silmek istediğinizden emin misiniz Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Profil silme başarısız Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' başarıyla silindi All relevant files (logs etc) have also been deleted Failed to delete all relevant files (logs etc) Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' öntanımlı olarak atandı All relevant files (logs etc) have also been duplicated Failed to duplicate all relevant files (logs etc) The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Şu profilin tanımı set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' şuna ayarlandı Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Profili İçe Aktarma Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Profil içe aktarma başarısız Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' şu adla başarıyla içe aktarıldı as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' şu dosya adıyla kopyalanamadı and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' ve profil listesine eklendi Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Dosya bulunamadı You have reached the maximum limit of supported tasks Maksimum deskteklenebilir görev sınırına eriştiniz You have to remove a task if you wish to add another !! Yenisini eklemek isterseniz bir görevi silmelisiniz!! Select export directory this is a dialog title for selecting a directory to export a profile to Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' şuna Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' The directory you have selected does not contain valid profile data Errors occured during snapshots and logfiles transfer Errors occured during snapshots transfer Errors occured during logfiles transfer Errors occured during the profile file transfer Please select a task to modify first Lütfen önce değiştirmek için bir görev seçin Please select a task to remove first Önce silmek için bir görev seçin Are you sure you want to remove the following task ?? Aşağıdaki görevi silmek istediğinizden emin misiniz?? Would you like to also remove: Şunu da silmek ister misiniz: Please select a task to manage first Lütfen önce yönetmek için bir görev seçiniz nothing to do yapılacak bir şey yok current crontab <font color=green>updated successfully mevcut crontab <font color=green>başarıyla güncellendi Email preferences have been <font color=green>updated successfully status durum NOT INCLUDED HARİÇ Checks are disabled. This task will be <b>skipped</b> Kontroller etkisiz kılındı. Bu görev <b>atlanacak</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Şu profilin görev listesi and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' ve profil listesi refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' tazelendi luckyBackup luckyBackup Ctrl+S Ctrl+S Information window Bilgi penceresi CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Ctrl+N Ctrl+X Ctrl+X Ctrl+D Ctrl+D F5 F5 Aborting: Please wait for all processes to be killed Yarıda kesiliyor: Lütfen tüm süreçlerin sonlandırılması için bekleyin Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Şu görevin eski şipşak ve kayıt dosyaları siliniyor Removing Siliniyor failed to remove silme başarısız Failed to start this refers to a process Crashed this refers to a process Timed out this refers to a process Write error this refers to a process Read error this refers to a process Unknown error this refers to a process calculating info message displayed during ...calculations hesaplanıyor transferring files info message displayed during ...file transfers dosyalar aktarılıyor deleting files info message displayed during ...file deletions dosyalar siliniyor transferring files dosyalar aktarılıyor ABORTED YARIDA KESİLDİ &Refresh This is a top 'Profile' menu action &Tazele De&fault This is a top 'Profile' menu action Öntanı&mlı Set as Default This is a top 'Profile' menu action tooltip Öntanımlı olarak ata &View/Edit Description This is a top 'Profile' menu action Tanımı &Görüntüle/Düzenle View/Edit the profile description This is a top 'Profile' menu action tooltip Profil tanımını Görüntüle/Düzenle R&ename This is a top 'Profile' menu action Y&eniden adlandır &Delete This is a top 'Profile' menu action &Sil &New This is a top 'Profile' menu action Ye&ni &Save This is a top 'Profile' menu action Ka&ydet E&xport This is a top 'Profile' menu action Dı&şa aktar &Import This is a top 'Profile' menu action İ&çe aktar S&chedule This is a top 'Profile' menu action Ta&rifelendir E&mail This is a top 'Profile' menu action Email report after profile execution This is a top 'Profile' menu action tooltip &Quit This is a top 'Profile' menu action &Çık D&uplicate This is a top 'Profile' menu action K&opyala &Task This is a top menu action G&örev &Add This is a top 'Task' menu action &Ekle &Remove This is a top 'Task' menu action Si&l &Modify This is a top 'Task' menu action De&ğiştir Create D&uplicate task This is a top 'Task' menu action Görev k&opyalama oluştur Create R&estore task This is a top 'Task' menu action G&eri yükleme görevi oluştur Manage &Backup This is a top 'Task' menu action Yedeği &Yönet display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip seçili görevin mevcut yedeklerini göster - geri yükle - sil Actions This is a top menu action Eylemler Current Profile This is a top menu action Geçerli Profil Lock This is a top menu action. Refers to toolbars Kilit Show text under icons This is a top menu action Simgeler altında metin göster &Toolbars This is a top menu item &Görev çubukları Set paths This is a top menu action Set paths for rsync and ssh commands This is a top menu action tooltip quiet mode Only show errors and important messages during window update Run start button label Çalıştır Abort Abort button label Yarıda kes Stop the execution of running tasks NOW Abort button tooltip Çalışan görevlerin yürütmesini HEMEN durdur Execution of tasks finished Done button tooltip Görevlerin yürütülmesi bitti Dry simulation checkbox label. Translate this as 'simulation' Benzetim yap This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Bu,herhangi bir değişikliğe yol açmadan, bir <b>benzetim eylemi</b> uygulayacak (çoğu gerçek eylemle aynı çıktıları üreterek) shutdown shutdown button label Press down to shutdown the system when done shutdown button tooltip Hide information window show/hide information window button tooltip Bilgi penceresini gizle Show information window show/hide information window button tooltip Bilgi penceresini göster profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end profil The task list is empty Görev listesi boş Use the "add" button on the right to get started Please keep the add word inside quotes could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' kaydedilemedi default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. öntanımlı profil could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' oluşturulamadı Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' değiştirildi Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' kaydedilemedi profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Şu profil kopyalanamadı Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Şu profil as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' şu dosya adıyla kopyalanamadı Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Şu profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' şu dosya adıyla başarıyla kopyalandı Please select a task to duplicate first Lütfen önce kopyalanacak bir görev seçiniz Please select a task first Lütfen önce bir görev seçiniz Hide information window hide/show information window button tooltip Bilgi penceresini gizle Show information window hide/show information window button tooltip Bilgi penceresini göster You have only included tasks that are going to be skipped Manage Task This is a top 'Task' menu action Görev Yönet display information regarding highlighted task This is a top 'Task' menu action tooltip seçili görevle ilgili bilgi göster &Task &Görev Successfully created destination directory Hedef dizin başarıyla oluşturuldu Failed to create destination directory Hedef dizin oluşturulamadı manageDialog profile profil task görev Delete Sil Restore Geri yükle view log kayıt dosyasını görüntüle destination: hedef: source: kaynak: hide source kaynağı gizle Close this window Bu pencereyi kapat Close Kapat Please select a snapshot from the list Information message Lütfen listeden bir şipşak seçin This directory does not exist Bu dizin mevcut değil This directory does not exist Information message Bu dizin mevcut değil I do not have sufficient permissions to read this directory Information message Bu dizini okumak için yeterli yetkim yok sync dir A full phrase: sync dir a: <DIRECTORY_A> dizin A'yı eşzamanla sync dir B full phrase: sync dir a: <DIRECTORY_b> Dizin B'yi eşzamanla View the logfile of the selected sync task 'view log' pushbutton tooltip Seçili eşzamanlama görevinin kayıt dosyasını göster Please wait until the thread is terminated Lütfen silsile sonlanana dek bekleyin STOP DUR Stop calculations NOW Hesaplamayı ŞİMDİ durdur Calculations terminated by user Hesaplamalar kullanıcı tarafından sonlandırıldı not available refers to a date-time mevcut değil luckyBackup - manage backup luckyBackup - yedeği yönet Delete the selected snapshot and its logfile Seçili şipşakı ve kayıt dosyasını sil Restore the selected snapshot Seçili şipşakı geri yükle View the logfile of the selected snapshot Seçili şipşakın kayıt dosyasını göster Calculate the differences between the source and the selected snapshot Kaynak ve seçili şipşak arasındaki farkları hesapla Calculate differences Farkları hesapla manageWizard not available refers to a date-time mevcut değil Delete backup this is the title of a wizard Yedeği sil Date & time simple label of the wizard gui Tarih ve zaman Path ...is a directory path Yol WARNING UYARI You are about to delete backup data information message - line1 Yedek veriyi silmek üzeresiniz If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Eğer yukarıdaki bilgi doğruysa, başlamak için <b>başla</b>'yı tıklayın Restore backup this is the title of a wizard Yedeği geri yükle Backup path ...is the backup directory path Yedekleme yolu close kapat Deleting snapshot logfile info message displayed during ...logfile deletion Şipşak kayıt dosyası siliniyor Updating list of snapshots info message displayed during ...snaps list update Şipşak listesi güncelleniyor Aborted Yarıda kesildi Finished Bitti simulation benzetim no errors hata yok errors found hatalar bulundu Restoring data: main trunk info message displayed during ...data restoration Veri yerine konuyor: ana gövde Restoring data: snapshot files info message displayed during ...data restoration Veri yerine konuyor: şipşak dosyalar Deleting data info message displayed during ...data deletion Veri siliniyor luckyBackup - manage backup lucyBackup - yedeği yönet Jump to previous error bir önceki hataya atla previous error önceki hata Jump to next error bir sonraki hataya atla next error sonraki hata This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Bu, herhangi bir değişiklik yapmayan (ve gerçek yürütme çıktısının çoğunlukla aynısını üreten) bir <b>benzetim yürütmesi</b> gerçekleştirecek start başla ABORT YARIDA KES cancel iptal et The restore directory will become identical to the backup snapshot Yerine koyma dizini yedek şipşakla aynı olacak Existing backup files will replace the corresponding files at the restore directory information message - line1. Mevcut yedek dosyalar yerine koyma dizinindeki eşleşen doyaların yerini alacak If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Eğer yukarıdaki bilgi doğruysa, başlamak için <b>başla</b>'yı tıklayın success info message displayed after ...logfile deletion başarılı failed info message displayed after ...logfile deletion başarısız Deleting file that lists snapshot changes info message displayed during ...file deletion Şipşak değişikliklerini listeleyen dosya siliniyor success info message displayed after ...file deletion başarılı failed info message displayed after ...file deletion başarısız success info message displayed after ...snapshots list update başarılı Select new restore directory directory selection dialog title Yeni yerine koyma dizinini seçin Restore path ...is the restore directory path Yerine koyma yolu No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Şipşaka özgün veri yok. Atlanıyor... Check this, to clone the backup snapshot to the restore directory. Yedek şipşakı yerine koyma dizinine klonlamak için bunu seçin. Delete existing data that do not exist at the backup Yedekte bulunmayan mevcut veriyi sil Browse locally for a new restore path Yeni yerine koyma yolu için yerele göz at change değiştir <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple basit advanced ileri düzey Task name Görev adı Destination Hedef Source Kaynak Task properties Görev özellikleri Enter a name for this task (eg "Backup my home directory") Bu görev için bir isim giriniz (örneğin "Başlangıç dizinimi yedekle") Name : Ad : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Bu görevin türünü tanımlayın: 1. Kaynağın içeriğini Hedef içine yedekler 2. Kaynak dizinini aynı adla Hedef içine yedekler 3. En güncel dosyaları koruyarak Kaynak & Hedef'i eşzamanlar Type : Tür : Synchronize Source and Destination Kaynak ve Hedefi eşzamanla Enter the full path of the source directory (eg /home/luckyb/) Kaynak dizininin tam yolunu (ör: /home/luckyb/) girin Source : Kaynak : browse localy yerele göz at Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Hedef dizininin tam yolunu (ör: /media/backups/SiduxHome/) girin Destination : Hedef : eg -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities Backup open files Repeat any command that fails, x times Repeat on fail: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory Advanced İleri Düzey Shows the rsync command as it will be executed rsync komutunu çalıştırılacağı şekilde gösterir validate geçerli kıl Okay Tamam Cancel İptal et Exclude Hariç tut Add any directory, file or pattern to be excluded from this task Bu görevden hariç tutulacak herhangi bir dizin, dosya ya da desen ekleyin Templates Şablonlar Exclude all temp folders (**/*tmp*/) Tüm temp klasörlerini hariç tut (**/*tmp*/) Temporary folders Geçici klasörler Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Sistem bağlama klasörlerini hariç tut /mnt & /media (/mnt/*/**, /media/*/**) System mount folders Sistem bağlama klasörleri Exclude all backup files & folders (**~) Tüm yedekleme dosya & klasörlerini hariç tut (**~) Backup files Yedekleme dosyaları System folders Sistem klasörleri Exclude all cache folders (**/*cache*/ & **/*Cache*/) Tüm önbellek klasörlerini hariç tut (**/*cache*/ & **/*Cache*/) Cache folders Önbellek klasörleri Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Kullanıcının tüm çöp klasörlerini hariç tut (**/*Trash*/, **/*trash*/) Trash Çöp Exclude all "lost+found" folders (**/lost+found*/) Tüm "lost+found" klasörlerini hariç tut (**/lost+found*/) lost+found lost+found User Defined Kullanıcı Tanımlı Add exclusion as entered in the next field Bir sonraki alanda girildiği gibi hariç tutma kuralı ekle add ekle Exclude list Hariç tut listesi Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Buraya dosya, dizin ya da deseni girin ve hariç listesine eklemek için "ekle" düğmesine basın * - herhangi bir boş-olmayan bileşenle eşleşir (taksim'lerde durur) ** - herşeyle eşleşir, taksimler dahil ? - herşeyle eşleşir, taksim hariç izleyen dizin_adı/*** - dizin ve içindeki herşeyle eşleşir başlayan / - desen, nakil hiyerarşisi içindeki belirli bir noktaya çıpalanır (normal olarak bu "kaynak"tır) izleyen / - yalnızca dizin eşleşir, dosya, simgesel link ya da aygıtlar değil Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Description Tanım Task description Görev tanımı Type a description of the task Görevin açıklamasını yazın Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) launch the pattern editor desen düzenleyiciyi başlat Remove highlighted exclusion from list Seçili hariç tutmayı listeden kaldır remove sil Edit highlighted inclusion edit Move highlighted inclusion up move up Move highlighted inclusion down move down Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include Yalnızca şunu İçer Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Buraya dosya, dizin ya da deseni girin ve dahil listesine eklemek için "ekle" düğmesine basın * - herhangi bir boş-olmayan bileşenle eşleşir (taksim'lerde durur) ** - herşeyle eşleşir, taksimler dahil ? - herşeyle eşleşir, taksim hariç izleyen dizin_adı/*** - dizin ve içindeki herşeyle eşleşir başlayan / - desen, nakil hiyerarşisi içindeki belirli bir noktaya çıpalanır (normal olarak bu "kaynak"tır) izleyen / - yalnızca dizin eşleşir, dosya, simgesel link ya da aygıtlar değil Add inclusion as entered in the next field Bir sonraki alanda girildiği gibi içerme kuralı ekle Include list İçerme listesi Remove highlighted inclusion from list Seçili içermeyi listeden kaldır Remote Uzak Use a remote host either for source or destination Kaynak ya da hedef için uzak bir makina kullan Use remote host Uzak makina kullan Use a remote host for destination data. Hedef verisi için uzak makina kullan. destination hedef Use a remote host for source data. Kaynak verisi için uzak makina kullan. source kaynak User: Kullanıcı: Enter your username for the remote host (leave blank if not applicable). Uzak makina için kullanıcı adını giriniz (uygun değilse boş bırakın). @Host: @Host: Enter the name of the remote host. Uzak makinanın adını girin. Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). rsync (ssh değil) kimlik denetleme parolasını içeren dosyanın tam yolunu girin (uygun değilse boş bırakın). rsync password file: rsync parola dosyası: Check this to connect to an rsync Remote module Bir rsync Uzak modülüne bağlanmak için burayı işaretleyin Remote module Uzak modül Use ssh as transport shell Aktarım kabuğu olarak ssh kullan ssh ssh password: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Özel ssh kimlik denetleme anahtarını içeren dosyanın tam yolunu girin (uygun değilse boş bırakın). Bir OpenSSH anahtar çifti kullanarak parolasız uzak ssh bağlantısı kurmak için gereken tüm eylemleri yapmalısınız private key file : özel anahtar dosyası : Enter the port you would like to use for the ssh connection (leave blank for default port) ssh bağlantısı için kullanmak istediğiniz portu giriniz (öntanımlı port için boş bırakın) port : port : Command Options Komut Seçenekleri Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! rsync seçenekleri ekle ya da çıkar. Eğer bunun ne amlama geldiği hakkında hiçbir fikriniz yoksa, bu ayarlara dokunmayın !! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Copy device (super user only) & special files as they are (-D) Aygıtı (yalnızca süper kullanıcı) & özel dosyaları olduğu gibi kopyala (-D) Preserve device, special files Aygıtı, özel dosyaları koru Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Kaynakta birbirine sert-bağlı dosyalar, hedefte de birbirlerine sert-bağlanacak UYARI: Aktarım kümesinde tüm dosyalar içerilmelidir !! (-H) Preserve hard links Sert bağları koru Delete files on the destination Hedefteki dosyaları sil Recurse into directories (-r) Dizinlere yerleştir (-r) Recurse into directories Dizinlere yerleştir Do not backup source files that are newer on the destination (--update) Hedefte daha yeni olan kaynak dosyalarını yedekleme (--update) Skip newer destination files Daha yeni hedef dosyalarını atla Preserve the owner (super user only), group & time stamp of files (-tgo) Dosyaların sahip (yalnızca süper kullanıcı), grup ve zaman damgalarını koru (-tgo) Preserve ownership, times Sahiplik, zamanları koru Preserve permissions of files (-p) Daosyaların izinlerini koru (-p) Preserve permissions İzinleri koru Copy symlinks as symlinks (-l) Simgesel bağları simgesel bağ olarak kopyala (-l) Preserve symlinks Simgesel bağları koru Ignore files using a similar algorithm to CVS (-C) CVS'e benzer işlem yolu kullanan dosyaları yoksay (-C) Ignore files the CVS way Dosyaları CVS tarzında yoksay User defined Kullanıcı tanımlı Enter here an rsync option to add (eg "--delete-excluded", "-X") Eklenecek rsync seçeneğini girin (örnek: "--delete-excluded", "-X") Extra rsync options list Ekstra rsync seçenekleri listesi Remove highlighted option from list Seçili seçeneği listeden sil Add rsync option as entered in the next field Bir sonraki alandaki girilmiş rsync seçeneğini ekle options list seçenek listesi Also Execute Ayrıca Yürüt Execute extra commands, before or after the task. Görevden önce ya da sonra ekstra komutlar yürüt. Before Önce Enter here a command to be executed before the task and then press the "add" button to add it to the list below Buraya görevden önce yürütülecek bir komut girin ve aşağıdaki listeye eklemek için "ekle" düğmesine basın Add command as entered in the field beside Komutu yandaki alanda girildiği gibi ekle Command list Komut listesi Remove highlighted command from list Seçili komutu listeden sil Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Görevi UYARI mesajıyla görünse bile yürüt Normalde "Önce Yürüt" komutu bir uyarıyı onarabildiğinde kullanılır (örnek: disk bölümleri monte et) DİKKAT: ne yaptığınızı biliyorsanız bunu işaretleyin by-pass WARNING yan-geçit UYARISI After Sonra Enter here a command to be executed after the task and then press the "add" button to add it to the list below Buraya görevden sonra yürütülecek bir komut girin ve aşağıdaki listeye eklemek için "ekle" düğmesine basın Select source directory file selection dialog title Kaynak dizini seçin Select destination directory file selection dialog title Hedef dizini seçin Select rsync password file file selection dialog title Rsync parola dosyasını seçin Select ssh keyfile file selection dialog title Ssh anahtar dosyasını seçin Select command to be executed file selection dialog title Çalıştırılacak komutu seçin Select file to read include patterns file selection dialog title İçerme deseninin okunacağı dosyayı seçin Select file to read exclude patterns file selection dialog title Hariç tutma deseninin okunacağı dosyayı seçin Please define the source before launching the pattern editor message box, message Desen düzenleyiciyi başlatmadan önce kaynağı tanımlayın ERROR message box message HATA Please specify the following before proceeding: message box, message Lütfen devam etmeden önce aşağıdakini belirleyin: ERROR message box message - line1 HATA That is not allowed because '/' does not have an actual name message box message - line2 Buna izin verilmez çünkü '/'in gerçek bir ismi yoktur Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Please check the relevant box before proceeding message box message - line3 You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 That is not allowed because the root partition does not have an actual name message box message - line2 The name of the task you requested already exists message box message - line1 İstediğiniz görev ismi zaten mevcut Please specify a different name before proceeding message box message - line2 Lütfen ilerlemeden önce farklı bir isim belirtiniz The source you have declared is identical to the destination message box message - line1 Bildirdiğiniz kaynak hedefin aynısı Please modify at least one of them message box message - line2 Lütfen en azından birini değiştirin WARNING message box message - line1 UYARI You have declared a destination that is part of the source directory structure message box message - line1 Kaynak dizin yapısının bir parçası olan bir hedef bildirdiniz <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated 'Hariç tut' grup kutusunda hedefi içeren bir dizin tanımlamayı <b>unutmayın</b> You have checked the 'delete files on the destination' option message box message - line2 'Hedefteki dosyaları sil' seçeneğini işaretlediniz without having checked 'Recurse into directories' which is required message box message - line3 fakat 'Dizinlerin içine dal'ı işaretlemediniz, ki bu gerekli 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Uzak Makine' işaretlendi, ama uzak makine adı bildirilmedi Please specify a remote host name message box message - line3 Lütfen bir uzak makine adı belirleyiniz Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Aksi halde yerelde çalışmak üzere 'Uzak Makine' işaretini kaldırınız All declared fields of the task properties window seem to be ok message box message first line Görev özellikleri penceresinin tüm bildirilmiş alanları tamam görünüyor Errors have been found message box message first line Hatalar bulundu command to be executed full phrase: command to be executed: <COMMAND> çalıştırılacak komut You have already added this exclude item message box message Bu hariç tutulacak ögeyi zaten eklemiştiniz You have already added this include item message box message Bu dahil edilecek ögeyi zaten eklemiştiniz You have already added this option message box message Bu seçeneği zaten eklemiştiniz done done editing cancel iptal et cancel editing Read exclude patterns from file Hariç tutma desenlerini dosyadan oku Read file: Dosyayı oku: filename dosya adı browse göz at ... ... Include İçer Add any directory, file or pattern to be included by this task Bu görev tarafından içerilecek tüm dizin, dosya ya da desenleri ekleyin Include mode İçerme kipi Mode: Kip: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Bu desen listesini hariç tutma. Lütfen içerme kurallarını daha iyi anlamak için el kitabına başvurun. Normal Include Normal İçerme Read include patterns from file Dahil etme desenlerini dosyadan oku browse locally yerele göz at additional options: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Hedef olarak bir FAT/NTFS disk bölümü kullanıyorsanız bunu işaretleyin. Veri aidiyeti ve izinler korunmayacaktır. (-t --modify-window=1) Destination is FAT/NTFS Hedef FAT/NTFS'tir Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Set the total number of backup snapshots to keep Tutulacak toplam yedek şipşaklarını belirleyiniz Snapshots to keep: Tutulacak şipşaklar: patternEditor directory : dizin : Select file Dosya seç Please choose a file within the source Lütfen kaynak içinden bir dosya seçin Select directory Dizin seç Please choose a directory within the source Lütfen kaynak içinden bir dizin seçin file : dosya : pattern editor desen düzenleyici Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Yukarıdaki dizini mutlak yol olarak kullanmak için bunu işaretleyin eğer işaretlenmemişse, "ad" kriterine uyan her dosya/dizin desene eşlenecektir Define here, what would you like the pattern to refer to Desenin neye başvurmasını istediğinizi burada tanımlayın The pattern refers to a: Desen şuna başvuruyor: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Desen belirli bir dosyaya başvuruyorsa bunu kullanın örneğin "/media/music/album/song.mp3" Specific file Belirli dosya Use this if the pattern refers to a specific directory eg "/media/music/Album/" Eğer desen belirli bir dizine başvuruyorsa bunu kullanın örnek "/media/music/Album/" Specific directory Belirli dizin Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Eğer desen bazı ortaklıkları olan bir dosya kümesine başvuruyorsa bunu kullanın örnek ".txt" uzantılı tüm dosyalar Set of files Dosya kümesi Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Eğer desen bazı ortaklıkları olan bir dizin kümesine başvuruyorsa bunu kullanın örnek "temo" olarak adlandırılmış tüm dizinler Set of directories Dizin kümesi name ad starts with : şununla başlar : Enter here the starting characters of the name of the files/directories that the pattern refers to Desenin başvurduğu dosya/dizinlerin başlangıç karakterlerini burada tanımlayın ends with : şununla biter : Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Desenin başvurduğu dosya/dizinlerin bitiş karakterlerini burada tanımlayın örnek ".txt" dosyalarının tümüne başvurmak için .txt girin Enter here the name of the files/directories that the pattern refers to Desenin başvurduğu dosya/dizinlerin adlarını buraya girin is exactly : tam olarak : Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Desenin başvurduğu dosya/dizin adlarının herhangi bir yerindeki karakterleri buraya girin contains : içerir : browse localy for a file bir dosya için yerele göz at browse localy for a directory path bir dizin yolu için yerele göz at use absolute path mutlak yolu kullan Go deeper in path by : Yolda daha derine gitme basamak sayısı : Go deeper in path by any level Yolda gidebildiğince daha derine git any her Define here the name criteria for the files/directories to be matched Eşlenecek dosya/dizin ad kriterlerini burada tanımlayın final pattern son desen The actual pattern is displayed here Güncel pattern burada gösteriliyor Reset the pattern editor fields to the default values Desen düzenleyici alanlarını öntanımlı alanlara sıfırla reset sıfırla Okay Tamam Cancel İptal et Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Daha derin alt-dizinlere başvurmak için bunu kullanın örneğin "/media/music"dizini 3 alt-dizin içeriyor: 1.Rock 2.Jazz 3.Film Müzikleri ve siz bu üçünün de içeriğine başvurmak istiyorsunuz, aşağıdakini tanımlayın: * Dizin kümesi * Yalnızca içerikler * path:/media/music/ * Yolda "1" daha derine git Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Desen bir dizinin (ya da dizin kümesinin) kendisi değil, içeriğine başvuruyorsa bunu kullanınız örneğin "ortam/müzik/Albüm" dizininin içeriği Directory contents Dizin içeriği scheduleDialog Starting from scratch Sıfırdan başlanıyor No schedules are declared !! Tarife planlanmamış !! Unable to create schedule file Tarife dosyası oluşturulamadı You have reached the maximum limit of supported scheduled profiles Maksimum desteklenebilir tarife profili limitine ulaştınız You have to remove an item if you wish to add another Yeni bir öge eklemek için bir tanesini kaldırmalısınız Add profile schedule Profil tarifesi ekle Modify profile schedule Profil tarifesi değiştir Profile schedule details Profil tarifesi ayrıntıları Invalid profile Geçersiz profil Execute profile Şu profili hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> at saat every her day gün Sunday Pazar Monday Pazartesi Tuesday Salı Wednesday Çarşamba Thursday Perşembe Friday Cuma Saturday Cumartesi & on the & şu günde st as in 1st day inci nd as in 2nd day nci rd as in 3rd day üncü th as in 4th, 5th, 6th or 7th day inci th as in 8th day inci th as in 9th day uncu th as in 10th day uncu th as in 11th day inci th as in 12th....19th day inci th as in 20th day nci st as in 21st day inci nd as in 22nd day nci rd as in 23rd day üncü th as in 24th...30th day inci st as in 31st day inci of any month herhangi bir ayın of şunun January full phrase: 'of January' Ocak February full phrase: 'of February' Şubat March full phrase: 'of March' Mart April full phrase: 'of April' Nisan May full phrase: 'of May' Mayıs June full phrase: 'of June' Haziran July full phrase: 'of July' Temmuz August full phrase: 'of August' Ağustos September full phrase: 'of September' Eylül October full phrase: 'of October' Ekim November full phrase: 'of November' Kasım December full phrase: 'of December' Aralık Unable to create cron file cron dosyası oluşturulamadı luckyBackup - schedule luckyBackup - tarife <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Add a new profile schedule Yeni bir profil tarifesi ekle add ekle Modify selected profile schedule Seçili profil tarifesini değiştir modify değiştir Remove selected profile schedule Seçili profil tarifesini sil remove sil Profile : Profil : Skip tasks that apear with a 'CRITICAL' warning message after the directories check Dizin kontrolünden sonra 'KRİTİK' uyarı mesajı olan görevleri atla skip critical kritiği atla time (hour:min) : zaman (saat:dakika) : set this value to -1 for the schedule to occur every hour : : :delay Delay luckybackup execution at startup min means: minutes (time) day of week : haftanın günü : Any Her month : ay : January Ocak February Şubat March Mart April Nisan May Mayıs June Haziran July Temmuz August Ağustos September Eylül October Ekim November Kasım December Aralık day of month : ayın günü : 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Makineniz grafik ortamı desteklemiyorsa (örneğin: sunucu) bunu işaretleyin Console Mode Konsol Kipi okay tamam Cancel İptal Et schedule the execution of profiles as declared in the list above profillerin yürütülmesini yukarıdaki listede bildirildiği gibi tarifelendir cronIT !! cronLA !! The existent schedule file is not a valid luckyBackup v. v is for version Mevcut tarife dosyası geçerli bir luckyBackup v değil. file BEWARE of the whitespace before file dosya You have made changes without clicking the cronIT button cronLA düğmesine tıklamadan değişiklikler yaptınız Are you sure you want to close the schedule dialog ? Tarife iletişim kutusunu kapatmak istediğinizden emin misiniz ? Your crontab is updated successfully crontab'ınız başarıyla güncellendi no crontab entries exist crontab girdisi yok crontab content crontab içeriği once, at system startup full phrase: Execute profile xxxxx, once at system startup sistem başlangıcında bir kez çalıştır Run once, at startup Başlangıçta bir kez çalıştır @ reboot yeniden başlamada close this dialog Bu pencereyi kapat close kapat Display the current crontab Mevcut crontab'ı göster view current crontab mevcut crontab'ı göster textDialog Enter the name of the new profile : Yeni profilin adını girin : Enter the new name of the profile : Profilin yeni adını girin : Profile description : Profil tanımı : A profile with the same name already exists Aynı ada sahip bir profil zaten mevcut Please enter a different name Lütfen başka bir ad girin Enter password : Parolayı girin : Enter passphrase : Parola cümlesini girin : Do not show this again for this task Bu görev için bunu bir daha gösterme You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option "Kaynak dizinin içeriğini yedekle" ile <br>"hedefteki dosyaları sil" seçeneğini birlikte seçtiniz BEWARE, if your intention is NOT to clone source to destination !! DİKKAT, amacınız kaynağı hedefe klonlamak DEĞİLSE !! Are you sure you wish to proceed ?? Devam etmek istediğinize emin misiniz ?? luckyBackup luckyBackup Okay Tamam Cancel İptal Copy command to clipboard Komutu panoya kopyala eMail information No Hayır Yes Evet winDialog luckyBackup luckyBackup declaration of paths rsync: Enter the full path of the rsync command browse locally yerele göz at Use default value ssh: Enter the full path of the ssh command cygpath: Enter the full path of the cygpath command dosdev: Enter the full path of the dosdev command main dir: Enter the full path of the luckybackup directory vshadow dir: Enter the full path of the vshadow directory temp dir: Enter the full path of the temporary directory Okay Tamam Cancel Select rsync command file selection dialog title Executable Files (*.exe) Select ssh command file selection dialog title Select cygpath command file selection dialog title Select dosdev command file selection dialog title luckybackup-0.5.0/translations/luckybackup_de.qm0000666000175000017500000045534213157502317021467 0ustar luckybluckybLHYRKSYE]_.9gģghYjcsz~Pf@ffdvS<UE9 E %4֠5ӣN~Jaaaaa-*a5h=@&yEmص,Y9sH5a! ,(9bw&T"fϵ"+s&%({Y)*`3d*0++.+,B/]^B?:Hfĉ^r˱h SOى>ԔK4rX b"@=K6#wGr+ :~I dg9!bC(e'+&}%.+ך6F7V<$GI|OW:_Q19QRѦ[_/pOfC3Kh"hw'pNpNq>4tc|:!m!-JbYYE65sѐSoiARuzԳ$ŵ z ,'M _kfba`K #u&o))+/r=2g8IBZyC cZITPoENPYBD4ZH4\c/cf:duO|BMOu2RgrZIRIg7-*G+5CeNkkRP,÷I%0Y%ԥ/{*V[%&E5,SN"YGiҐOC oQ^ we Avdp5&_a4)4)A\*߬$,b8MyA:MKT_rUeh !iJiU"?tMŮ}^ .e .e5eTJW c<&)E%|t%d & ;M>ŇCʵ}@!=[0[ܯ">)>Ǜb[~q%`ϗ T]uP  ‰o G>hy%ug  P!:sQ&:AdDȪL~aOVOjzKeJiYzzi^Qlw7rGt:}7;r:yօUIIVI֠IXI)I0F~,"TÎ^AM2ф ,.4HeF3s  Hi\@d Gi|  HNH8>C=>R\xl@,m6>En+^n+p^"vtxv`y~iF9r2ȕȕȕXJ|g:tӹî"CpSXR#"ߘ ?\'+|&v ^"D" e1.;KVCJKOQVf_Avh_hD b#Cf0g<hnAhnHi`ijkՒkՒFsD#?v3y|~ghzvb%c(Ts4xYuEfRe IDsIξnx`CDV|._ySBEdȒ-wF=:':@Z M 2|u `U4읒],Xj`/ \ X) |?S5BĈ^;-%+eC-zP@2 79Y>/EEEN3-UtLYv`xe4a#vufv:{l_g CIk"3ڄIDD'FFӀF"ϕi@ΕU2U*uݏ2r .dßj9gG%BhȕK3aYOIXT&UcU^%D*nr~Eǧ?%~h̐jIIV%׃Gv=ߖmTk"HY&R O3&3{2) ;tP"*)@,$-%/eq1u9G/F\7IX9'JJεL8 NvPO6[Ry V)g h SmzG@x 5[35 f-M (S Lʴ5ʶ%}'_, 7ؔBh li&)@ N  c; 8 q. I ) #r|t *{+ +) 6S 8$t CcK( Mg Mgd N#  U  W7 ]& aY? dծ j^y7 lH lRc mE˛ pK qP R ]y @ e ~ ΅ ͆ 9 aPW -B@C Z(w '2K Ԡ;[  ׊$ =1 . *1 Ѿ Tz.  ; c2 Z  g  -0= -n /l$ 7E 8 ? @  ` f g j1f l+( pN% zj C 17  H N0 i]v ~n cbl XBiw  24$ bK^ ,|  Ұ  GCs[ ñ n H( Xh3K h< t$6 ԑO @ ݓV E T iI 7& p2 "  v1  Vd5 d j  SФ #X (N< +} - 0b 7'yg 93Bo :UC$ ; E Ge' HZ L9 PA  T, T2 Zv _yy _ f g.w# g.w g.wC i i9 k m { { {  } F Ҟ "   9 Y  YK !/ ! #(N %+ /G 79͵ 798! 9% 9)rs ;w <  <@ >o >ӊ @e A. Acsi9 Eh5p FH F. LM N0 P}P Sz X ^" bUb o3 o98 r'^A v I  u j> g. 7 r \%? J " UNX }  ~7 ,c ! T *F si v ɀ % U 2tw a'$ Rbe ? ?B[ j ;`  sq @j T #( &,? &' ) *}EJ +s ,D*, ,DF 6? P \.~8p c i( ma {I e 1Z   {  Gj i2E\ ms; c l6 Xw , f zt lz> m I%g % j'7 ll! Y$ i$ [ " ,a ݗ # 䕜+  c2_ 7 | \ 8 80D 894 >M 6P=1isb[AC(Ե'~#(q*#?/#YE7GYJoTba6\P%].9apcR}e~mRp{>Xyi-{G9r_T6YT3<bB{RG`b $rQ7u\h֭ 3M̖4 k N{d4*U")e] Cnh#!I0NRN> [=R^i`bcw"f/lnRss:u@u@¸~(NYm*E&ka4'fCt5)*eyvL@Mv,[ɟ)ʱNu-U+\?u_ ֙SIDGߖ lA]o8o0.Y!P hŕi:.Kalkuliere UnterschiedeCalculating differencesCalcDiffThreadlDie Datenmenge ist gro. Zeige nur die ersten Eintrge2Data amount is huge. Displaying only first entriesCalcDiffThreadBitte warten Please waitCalcDiffThreadScanne ZielScanning destinationCalcDiffThread(Scanne SchnappschussScanning snapshotCalcDiffThreadScanne QuelleScanning sourceCalcDiffThreadHSchnappschuss und Quell-UnterschiedeSnapshot and source differencesCalcDiffThreadSchnappschuss Daten welche ebenso in der Quelle existieren und sich unterscheiden=Snapshot data that also exists at the source and is differentCalcDiffThreadrSchnappschuss Daten welche NICHT in der Quelle existieren-Snapshot data that do NOT exist at the sourceCalcDiffThreadhQuell-Daten welche NICHT im Schnappschuss existieren-Source data that do NOT exist at the snapshotCalcDiffThreadZSynchronisiere Verzeichnis A & B UnterschiedeSync dir A & B differencesCalcDiffThreadSynchronisations Verzeichnis A daten welche NICHT existieren im Synchronisations Verzeichnis B/Sync dir A data that do NOT exist at sync dir BCalcDiffThreadSychronisiere Verzeichnis B Daten welche genauso existieren im Verzeichnis A und unterschiedlich sind?Sync dir B data that also exists at sync dir A and is differentCalcDiffThreadSynchronisations Verzeichnis B Daten welche NICHT existieren im Synchronisationsverzeichnis A/Sync dir B data that do NOT exist at sync dir ACalcDiffThreadDie Schnappschussdaten werden die Quell-Daten ersetzen whrend der WIEDERHERSTELLUNG=The snapshot data will replace the source data during RESTORECalcDiffThreadDiese werden nur gelscht whrend der WIEDERHERSTELLUNG, when Sie die Option einschalten:CThese will be deleted during RESTORE only if you enable the option:CalcDiffThreadLsche existierende Quell-Daten welche nicht in der Sicherung existieren;delete existing source data that do not exist at the backupCalcDiffThreadfSichere Profile, Logdateien und Schnappschuss-Daten.Backing-up profile, logfiles and snapshot dataQObjectKRITISCHCRITICALQObjectXKommando erneut ausfhren wegen einem FehlerCommand re-run due to failureQObject@Konnte die Logdatei nicht ffnenCould not open the logfileQObjectZiel DestinationQObjectZielverzeichnisDestination directoryQObjectVerzeichnis DirectoryQObjectIch habe nicht die Berechtigung das Synchronisations-Verzeichnis A zu lesen/betreten;I do not have the permission to read/enter sync directory AQObjectIch habe nicht die Berechtigung das Synchronisations-Verzeichnis B zu lesen/betreten;I do not have the permission to read/enter sync directory BQObjectIch habe nicht die Berechtigung das Zielverzeichnis zu lesen/betretenDI do not have the permission to read/enter the destination directoryQObjectIch habe nicht die Berechtigung das Quellverzeichnis zu lesen/betreten?I do not have the permission to read/enter the source directoryQObjectIch werde <font color=orange><b>diese Aufgabe</b></font> nicht berspringen. Die Synchronisierung wird trotzdem ausgefhrtiI will not skip this task. Synchronizing is going to be performed anywayQObjectIch werde diese Aufgabe <font color=red><b>NICHT BERSPRINGEN</b></font>, weil Sie die "umgehe WARNUNG"-Option eingeschaltet habenmI will NOT SKIP this task because you have enabled the "by-pass WARNING" optionQObject,Letzte AusfhrungszeitLast execution timeQObjectOKOKQObject|Bitte <b>deaktiviere geeignete Optionen</b> vor dem FortsetzenAPlease uncheck appropriate include boxes before proceedingQObjectBitte deaktive passende Optionen oder ndere alle Aufgabentypen anders als '<b>Sichere Verzeichnisinhalte</b>' oder benutze 'Sichere Verzeichnisinhalte' zusammen mit der'<b>Nur beinhaltet</b>' Option, vor dem FortsetzenPlease uncheck appropriate include boxes or change all task types to other than 'Backup dir contents' or use 'Backup dir contents' together with the 'Only include' option, before proceedingQObject QuelleSourceQObject QuellverzeichnisSource directoryQObject6SynchronisationsverzeichnisSync directoryQObjectSychronisiereSyncingQObjectSychronisiere'Full phrase: Syncing to SyncingQObject(AufgabenbeschreibungTask descriptionQObjectDas Zielverzeichnis wird erstellt, wenn es nicht existiert und mit neuen Sicherungsdaten gefllt]The Destination Directory will be created if it doesn't exist and filled with new backup dataQObject|Die folgenden beinhalteten Aufgaben <b>teilen sich das gleiche Zielverzeichnis</b> (alle zusammen oder in Gruppen) und wenigstens einer von denen wird den Inhalt eines Verzeichnisses sichernThe following included tasks share the same destination directory (all together or at groups) and at least one of them will backup the contents of a directoryQObjectRDie Logdatei konnte nicht angelegt werden The logfile could not be createdQObject8Die Logdatei existiert nichtThe logfile does not existQObject@Der Prozess meldete einen FehlerThe process reported an errorQObjectrDas spezifische Kommando ist vermutlich nicht installiert/The specified command is probably not installedQObject4Die Aufgabenliste ist leerThe task list is emptyQObjectDiese Aktion wird <font color=orange><b>nicht bersprungen werden3This task will not be skippedQObjectvDie Aufgabe wird <font color=red><b>bersprungen</b></font>7This task will be skippedQObject^Verwende entferntes, Prfung wurde bersprungenUsing remote, check is skippedQObjectWARNUNGWARNINGQObjectSie haben beide der im Folgenden angeschlossenen Aufgaben eingefgt:8You have included both of the following connected tasks:QObjectDSie haben keine Aufgaben eingefgtYou have not included any tasksQObjectund/oderand/orQObjectKommando:  command: QObjectexistiert nichtdoes not existQObjectFehler gefunden errors foundQObjectFAusfhrung des 1. Teils der Aufgabeexecution of 1st part of taskQObjectFAusfhrung des 1. Teils der Aufgabe?Full phrase: execution of 1st part of task: finishedexecution of 1st part of taskQObjectFAusfhrung des 2. Teils der Aufgabeexecution of 2nd part of taskQObject,Ausfhrung der Aufgabeexecution of taskQObject,Ausfhrung der Aufgabe3Full phrase: execution of task: finishedexecution of taskQObject,Ausfhrung der AufgabedFull phrase: execution of task: finished because of pre/post task command execution errorexecution of taskQObjectFehlercode:  exit code: QObjectbeendetfinishedQObjectbeendet?Full phrase: execution of 1st part of task: finishedfinishedQObjectbeendet3Full phrase: execution of task: finishedfinishedQObjectbeendetCFull phrase: post-task execution of COMMAND: finishedfinishedQObjectbeendet wegen Aufhrungsfehlers eines Kommandos vor/nach der Aufgabe9finished because of pre/post task command execution errorQObjectfreifreeQObjectist leeris emptyQObject:ist leer oder existiert nichtis empty or does not existQObject(ist nicht eingehngtis not mountedQObjectkeine Fehler no errorsQObjectnicht verfgbar not availableQObject"nichts zu startennothing to startQObjectAusgabe:  output: QObjectRAusfhrung des Kommandos nach der Aufgabepost-task execution of commandQObjectRAusfhrung des Kommandos nach der AufgabeCFull phrase: post-task execution of COMMAND: finishedpost-task execution of commandQObjectRAusfhrung des Kommandos vor der Aufgabe pre-task execution of commandQObjectPAusfhrung des Kommandos vor der AufgabeBFull phrase: pre-task execution of COMMAND: finishedpre-task execution of commandQObjectstartetstartingQObjectstartet?Full phrase: execution of 1st part of task: startingstartingQObjectstartet?Full phrase: execution of 2nd part of task: startingstartingQObjectstartet3Full phrase: execution of task: startingstartingQObject Start?Full phrase: post-task execution of command: startingstartingQObject StatusstatusQObjectfdies ist aus offensichtlichen Grnden nicht erlaubt'this is not allowed for obvious reasonsQObjecttdas wird dazu fhren, dass eine Aktion die andere abbricht.this will lead to one task canceling the otherQObjectzutoQObjectzu'Full phrase: Syncing to toQObject@Konnte die Logdatei nicht ffnenCould not open the logfile ReadLogFile &ber&About aboutDialog&Lizenzabkommen&License Agreement aboutDialog&Untersttzung&Support aboutDialog&Danksagung an &Thanks to aboutDialog...meine bessere Hlfte, <b>Dimitra</b>, die mich entbehrt und ertrgt, wenn nderungen an dem Projekt anstehen.j...my other half, Dimitra that bears with me all these times that this project is under development aboutDialog....an alle Benutzer der...to all users of the  aboutDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

 aboutDialogA&uthorA&uthor aboutDialogAdrian MurariuAdrian Murariu aboutDialogAlessio Ganci Alessio Ganci aboutDialog Andrej ZnidarsicAndrej Znidarsic aboutDialog&Antonio Jose MolinaAntonio Jose Molina aboutDialogAphofis Scott Aphofis Scott aboutDialogXbersetzer der arabischen BenutzeroberflcheArabic gui translator aboutDialogvOffizieller Verwalter (AUR) des Arch Linux package/pkgbuild5Arch linux package/pkgbuild official maintainer (AUR) aboutDialog&Athen, GriechenlandAthens, Greece aboutDialog Aurelien MerckelAurelien Merckel aboutDialogFBackup- & Synchronisation-AnwendungBackup & Sync Application aboutDialogBjorn RietdijkBjorn Rietdijk aboutDialogbersetzer der bosnischen Benutzeroberflche & Mandriva-Paket-Verwalter4Bosnian gui translator & mandriva package maintainer aboutDialogBruce MarrinerBruce Marriner aboutDialog\bersetzer der bulgarischen BenutzeroberflcheBulgarian gui translator aboutDialog^bersetzer der katalanischen BenutzeroberflcheCatalan gui translator aboutDialognbersetzer der chinesischen (Taiwan) BenutzeroberflcheChinese (Taiwan) gui translator aboutDialogBeitragender von Code fr die Untersttzung von entfernten Rechnern und VSS bei der Windows-PortierungDCode contributor for remote & vss support regarding the windows port aboutDialogBKann die Lizenzdatei nicht finden!Could not locate the license file aboutDialog^bersetzer der tschechischen BenutzeroberflcheCzech gui translator aboutDialog,Debian-Paket-VerwalterDebian package maintainer aboutDialogDenis Skorski Denis Skorski aboutDialogDimitris JemosDimitris Jemos aboutDialog$Dimitris KalamarasDimitris Kalamaras aboutDialog,Dimitris StasinopoulosDimitris Stasinopoulos aboutDialogdbersetzer der niederlndischen BenutzeroberflcheDutch gui translator aboutDialogE. Hakan DuranE. Hakan Duran aboutDialogElbert Pol Elbert Pol aboutDialogInsbesondere Especially aboutDialogXbersetzer der estnischen BenutzeroberflcheEstonian gui translator aboutDialog\Fedora-Paket-Verwalter (official contrib repo))Fedora package maintainer (official repo) aboutDialog Francesco BraileFrancesco Braile aboutDialog Fredrik HolmgrenFredrik Holmgren aboutDialog0Free BSD-Paket-VerwalterFree BSD package maintainer aboutDialog^bersetzer der franzsischen BenutzeroberflcheFrench gui translator aboutDialogbersetzer der franzsischen Benutzeroberflche und wervoller Pack-Ratgeber (aber nicht nur)AFrench gui translator and valuable packing advisor (and not only) aboutDialogZbersetzer der galizischen BenutzeroberflcheGalician gui translator aboutDialog.Gentoo-ebuild-VerwalterGentoo ebuild maintainer aboutDialogVbersetzer der deutschen BenutzeroberflcheGerman gui translator aboutDialog8Eine positive Bewertung auf:Give a thumbs up at: aboutDialogbersetzer der griechischen Benutzeroberflche und wertvoller Tester(Greek gui translator and valuable tester aboutDialogJbersetzer des griechischen HandbuchsGreek manual translator aboutDialogWeder habe ich selbst in der Vergangenheit Geld fr dieses Projekt angenommen noch werde ich es in Zukunft.DI personally never had and never will accept money for this project. aboutDialogOhne ihn und seine Anleitungen htte ich dieses Projekt niemals begonnenJIf it wasn't him and his tutorials I would never have started this project aboutDialogWenn Sie diese Anwendung mgen und mir persnlich etwas zurckgeben wollen, ist alles, was Sie tun mssen:`If you like this app and would like to donate something to me personally, all you have to do is: aboutDialogEs ist <b>freie Software</b>: Sie knnen sie weiter verteilen und/oder modifizieren unter den Bestimmungen der GNU General Public License, herausgegeben von der Free Software Foundation, Version 3 der Lizenz.It 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, version 3 of the License. aboutDialogDas Programm wurde verteilt in der Hoffnung, dass es ntzlich sei, aber OHNE IRGENDEINE GARANTIE; selbst ohne die implizierte Zusicherung allgemeiner GEBRAUCHSTAUGLICHKEIT oder die TAUGLICHKEIT FR EINEN BESTIMMTEN ZWECK.It 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. aboutDialog^bersetzer der italienischen BenutzeroberflcheItalian gui translator aboutDialogJack Fink Jack Fink aboutDialogJason E. Hale Jason E. Hale aboutDialogJavi Romero Javi Romero aboutDialog$Juan Luis BaptisteJuan Luis Baptiste aboutDialog4Juan Ramon Alfaro MartinezJuan Ramon Alfaro Martinez aboutDialogJulien CynoberJulien Cynober aboutDialog*Karsten JaschultowskiKarsten Jaschultowski aboutDialog Kenny VerstraeteKenny Verstraete aboutDialogZu guter LetztLast but no least aboutDialogLoukas AvgeriouLoukas Avgeriou aboutDialogMajed Sahli Majed Sahli aboutDialog`Mandriva-Paket-Verwalter (official contrib repo)3Mandriva package maintainer (official contrib repo) aboutDialogMarcio Moraes Marcio Moraes aboutDialog0Marcos Del Puerto GarciaMarcos Del Puerto Garcia aboutDialog4Martin Grashoff (linuxrev)Martin Grashoff (linuxrev) aboutDialogMarvin Gomez Marvin Gomez aboutDialogMatej Urban i Matej Urbančič aboutDialogMepis-Paket-Verwalter (Community repo) & bersetzer der spanischen BenutzeroberflcheBMepis package maintainer (Community repo) & Spanish gui translator aboutDialog Michael J GruberMichael J Gruber aboutDialog"Michele Dall'ArnoMichele Dall'Arno aboutDialogTrotzdem entschied ich, luckyBackup zu nutzen, um Leute zu untersttzen, die wirklich finanzielle Hilfe bentigen.]Nevertheless, I decided to use luckyBackup to support people that really need financial help. aboutDialogNicolay BoychevNicolay Boychev aboutDialog Nikolas PonirosvNikolas Poniros aboutDialog\bersetzer der norwegischen BenutzeroberflcheNorwegian gui translator aboutDialogOpenSUSE-Paket-Verwalter (KDE4 Community repo) und wertvoller Pack-BeiratNOpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor aboutDialog Patrick MatthaeiPatrick Matthaei aboutDialogPavel Fric Pavel Fric aboutDialogPin-hsien Li Pin-hsien Li aboutDialog`bersetzer der portugisischen BenutzeroberflchePortuguese gui translator aboutDialog:Puppy-pet- und -sfs-VerwalterPuppy pet & sfs maintainer aboutDialogRaffaeleRaffaele aboutDialogRivo Zangov Rivo Zangov aboutDialogRoger Calvo Roger Calvo aboutDialogRoger Foss Roger Foss aboutDialogZbersetzer der rumnischen BenutzeroberflcheRomanian gui translator aboutDialogbersetzer der russischen Benutzeroberflcher und wertvoller Tester*Russian gui translator and valuable tester aboutDialogSavvas RadevicSavvas Radevic aboutDialogdSiehe Reiter "Lizenzabkommen" fr weitere Details.1See the 'License Agreement' tab for more details. aboutDialogSergio GameiroSergio Gameiro aboutDialog.Slackel-Paket-VerwalterSlackel package maintainer aboutDialog\bersetzer der slowakischen BenutzeroberflcheSlovak gui translator aboutDialog\bersetzer der slowenischen BenutzeroberflcheSlovenian gui translator aboutDialogZiehen Sie es also durchaus einmal in Betracht, Geld zu spenden, das letztendlich fr einen guten Zweck verwendet wird._So, please consider it seriously to donate money that will eventually be used for a good cause. aboutDialogXbersetzer der spanischen BenutzeroberflcheSpanish gui translator aboutDialogStephan KleineStephan Kleine aboutDialog(Stergios ProsiniklisStergios Prosiniklis aboutDialogSubhi Honaco Subhi Honaco aboutDialog\bersetzer der schwedischen BenutzeroberflcheSwedish gui translator aboutDialog$Sbastien BourgainSébastien Bourgain aboutDialog Das Indifex-TeamThe indifex team aboutDialog"Theo ChatzimichosTheo Chatzimichos aboutDialog6Diese ist mein Belohnung :)This is my reward :) aboutDialogThomas Glatt Thomas Glatt aboutDialogThomas JanssenThomas Janssen aboutDialogTito Poquito Tito Poquito aboutDialogTom TryfonidisTom Tryfonidis aboutDialogTomas Vadina Tomas Vadina aboutDialogXbersetzer der trkischen BenutzeroberflcheTurkish gui translator aboutDialog"Wertvoller BeiratValuable advisor aboutDialogbEine gute Bewertung abgeben & ein Fan werden auf:Vote good & become a fan at: aboutDialog Wilfried SchobelWilfried Schobel aboutDialog$Yiorgos KapellakisYiorgos Kapellakis aboutDialogYuri Vidal Yuri Vidal aboutDialogZEntwickler des backupwhenidle Python-Skriptes&backupwhenidle python script developer aboutDialogschlieenclose aboutDialogSpendenlink donation link aboutDialogBehemaliger Fedora-Paket-Verwalterex Fedora package maintainer aboutDialogfr die Entwicklung der wundervollen Lokalisierungs-Plattform "Transifex" und deren kostenfreien BereitstellungVfor developing the wonderful transifex localization platform and providing it for free aboutDialog<Foren fr deren Untersttzung.forums for their support. aboutDialog fri13fri13 aboutDialog ber luckyBackupluckyBackup - about aboutDialog0luckyBackup wird verffentlicht unter den Bestimmungen der <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a>luckyBackup is distributed under the terms of the GNU General Public License aboutDialogGeldmoney aboutDialogKein Geldno money aboutDialogpinguinofuriosopinguinofurioso aboutDialog2Portierung auf MS Windowsport to MS Windows aboutDialog.Portierung auf Mac OS Xport to Mac OS X aboutDialog&Portierung auf OS/2 port to OS/2 aboutDialogRPM-Paket-Ersteller, wertvoller Tester und Helfer bei FernverbindungenGebe den Text der Nachricht einEnter the body of the message emailDialogGeben Sie einen Befehl auf, der aufgerufen werden soll z.B. sendemail%Enter the command to run eg sendemail emailDialogRGeben Sie den Empfnger der Nachricht ein"Enter the recipient of the message emailDialogPTrage Sie den Absender der Nachricht einEnter the sender of the message emailDialogbGebe den SMTP-Server zum Senden der Nachricht ein.Enter the smtp server used to send the message emailDialogNGeben Sie den Betreff der Nachricht ein Enter the subject of the message emailDialog,Fehler ist aufgetretenError(s) occured emailDialogWenn nicht markiert, wird "TLS auto" verwendet. Nur verfgbar fr sendemail=If unchecked "TLS auto" is used. Only available for sendemail emailDialogNiemalsNever emailDialog0Sende niemals eine EmailNever send an email emailDialogOkayOkay emailDialogrSende nur, wenn Fehler whrend eines Durchlaufs auftraten,Only send when error(s) occured during a run emailDialoghSende nur, wenn ein Profil zur Aufhrung geplant ist*Only send when profile is scheduled to run emailDialog$Profil ist geplantProfile is scheduled emailDialogxSende jetzt eine Email, um die angegeben Argumente zu testen6Send an email right now to test the provided arguments emailDialogGeben Sie die Bedingungen an, wann eine Email versandt werden soll'Specify the conditions to send an email emailDialogTestTest emailDialog2Das Kommandofeld ist leerThe command field is empty emailDialog.Standardwerte verwenden Use default emailDialogArgumente: arguments: emailDialogKommando:command: emailDialog*luckyBackupy - emailluckyBackup - email emailDialogOkayOkay helpBrowser&luckyBackup - HilfeluckyBackup - help helpBrowserHandbuch/manual/ helpBrowser<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 logDialogschlieeclose logDialog Lade Logdatei...loading logfile... logDialogrluckyBackup - Fortschritt bei der Ausfhrung der Aufgaben&luckyBackup - tasks execution progress logDialogNchster Fehler next error logDialog"Vorheriger Fehlerprevious error logDialog wartewait logDialog &%1 %2&%1 %2luckyBackupWindow&Abbrechen&AbortluckyBackupWindow &ber&AboutluckyBackupWindow&Hinzufgen&AddluckyBackupWindow&Lschen&DeleteluckyBackupWindow&Handbuch &HandbookluckyBackupWindow &Hilfe&HelpluckyBackupWindow&Importieren&ImportluckyBackupWindow&Sprache &LanguageluckyBackupWindow&&Minimiere zum tray&Minimize to trayluckyBackupWindow&Bearbeiten&ModifyluckyBackupWindow&Neu&NewluckyBackupWindow&Profil&ProfileluckyBackupWindow&ProfileThis is a top menu item&ProfileluckyBackupWindow&Beenden&QuitluckyBackupWindow&Aktualisieren&RefreshluckyBackupWindow&Entfernen&RemoveluckyBackupWindow"&Wiederherstellen&RestoreluckyBackupWindow&Sichern&SaveluckyBackupWindow&Einstellungen &SettingsluckyBackupWindow&Aufgabe&TaskluckyBackupWindow&AufgabeThis is a top menu action&TaskluckyBackupWindow&Werkzeugleiste &ToolbarsluckyBackupWindow@Beschreibung ansehen/&bearbeiten&View/Edit DescriptionluckyBackupWindow4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindow<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html>

luckyBackupWindowABGEBROCHENABORTEDluckyBackupWindowAbbruchAbortluckyBackupWindowvAbbruch: Bitte warten Sie, bis alle Prozesse beendet wurden4Aborting: Please wait for all processes to be killedluckyBackupWindowAktionenActionsluckyBackupWindowtAlle relevanten Dateien (Logs usw.) wurden ebenso gelscht4All relevant files (logs etc) have also been deletedluckyBackupWindowxAlle relevanten Dateien (Logs usw.) wurden ebenso dupliziert7All relevant files (logs etc) have also been duplicatedluckyBackupWindowzAlle relevanten Dateien (Logs etc) wurden ebenso aktualisiert4All relevant files (logs etc) have also been updatedluckyBackupWindow6Alle Aufgaben abgeschlossenAll tasks completedluckyBackupWindowrSind Sie sicher, dass Sie folgendes Profil lschen wollen'Are you sure you want to delete profileluckyBackupWindowSind Sie sicher, dass Sie das folgende Standardprofil lschen wollen3Are you sure you want to delete the default profileluckyBackupWindowSind Sie sicher, das Sie die folgende Aufgabe entfernen wollen??5Are you sure you want to remove the following task ??luckyBackupWindowbStarte die Ausfhrung aller selektierten Aufgaben)Begin the execution of all included tasksluckyBackupWindowCheckBoxCheckBoxluckyBackupWindowPrfungen sind abgeschaltet. Diese Aufgabe wird <b>bersprungen</b>5Checks are disabled. This task will be skippedluckyBackupWindow:Konnte die Datei nicht findenCould not locate the fileluckyBackupWindowKonnte nicht die letzte Ausfhrungszeit der Ausgaben aktualisieren-Could not update last execution time of tasksluckyBackupWindowAbgestrztCrashedluckyBackupWindow:Erzeuge D&uplikat der AufgabeCreate D&uplicate taskluckyBackupWindowLErzeuge &Wiederherstellung der AufgabeCreate R&estore taskluckyBackupWindow Strg+DCtrl+DluckyBackupWindow Strg+NCtrl+NluckyBackupWindow Strg+SCtrl+SluckyBackupWindow Strg+XCtrl+XluckyBackupWindow Aktuelles ProfilCurrent ProfileluckyBackupWindowD&uplizieren D&uplicateluckyBackupWindowStan&dardDe&faultluckyBackupWindowBeschreibung DescriptionluckyBackupWindowZiel DestinationluckyBackupWindowVerzeichnis DirectoryluckyBackupWindow FertigDoneluckyBackupWindowSimulationDryluckyBackupWindow E&mailE&mailluckyBackupWindowE&xportierenE&xportluckyBackupWindow FEHLERERRORluckyBackupWindowBeendenEXITluckyBackupWindowVergangene Zeit Elapsed timeluckyBackupWindowEmail-Einstellungen wurden <font color=green>erfolgreich aktualisiertBEmail preferences have been updated successfullyluckyBackupWindowTEmaile einen Bericht nach Profilausfhrung$Email report after profile executionluckyBackupWindowDeutschEnglishluckyBackupWindowDeutschDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowhBeim bertragen der Logdaten sind Fehler aufgetreten'Errors occured during logfiles transferluckyBackupWindowBeim bertragen der Schnappschsse und Logdaten sind Fehler aufgetreten5Errors occured during snapshots and logfiles transferluckyBackupWindowtBeim bertragen der Schnappschsse sind Fehler aufgetreten(Errors occured during snapshots transferluckyBackupWindownBeim bertragen der Profildaten sind Fehler aufgetreten/Errors occured during the profile file transferluckyBackupWindow,Ausfhrung des ProfilsExecution of profileluckyBackupWindow>Ausfhrung der Aufgaben beendetExecution of tasks finishedluckyBackupWindowxAusfhrung von Aufgaben wurdn gewaltsam vom Benutzer beendet4Execution of tasks were terminated violently by userluckyBackupWindowBeendenExitluckyBackupWindowF1F1luckyBackupWindowF5F5luckyBackupWindow^Erzeugung des Zielverzeichnisses fehlgeschlagen&Failed to create destination directoryluckyBackupWindow@Fehler beim Erzeugen des ProfilsFailed to create new profileluckyBackupWindowvLschen aller relevanten Dateien (Logs usw.) fehlgeschlagen.Failed to delete all relevant files (logs etc)luckyBackupWindow>Fehler beim Lschen des ProfilsFailed to delete profileluckyBackupWindow~Duplizieren aller relevanten Dateien (Logs usw.) fehlgeschlagen1Failed to duplicate all relevant files (logs etc)luckyBackupWindowLDuplizieren des Profils fehlgeschlagenFailed to duplicate profileluckyBackupWindowLDuplizieren des Profils fehlgeschlagenFfull phrase: 'Failed to duplicate profile as 'Failed to duplicate profileluckyBackupWindowFFehler beim Exportieren des ProfilsFailed to export profileluckyBackupWindowFFehler beim Importieren des ProfilsFailed to import profileluckyBackupWindowDFehler beim Umbenennen des ProfilsFailed to rename profileluckyBackupWindow@Fehler beim Ersetzen des ProfilsFailed to replace profileluckyBackupWindow(Start fehlgeschlagenFailed to startluckyBackupWindowAktualisierung aller relevanten Dateien (Logs etc) fehlgeschlagen.Failed to update all relevant files (logs etc)luckyBackupWindow:Verstecke InformationsfensterHide information windowluckyBackupWindow:Verstecke Informationsfenster+hide/show information window button tooltipHide information windowluckyBackupWindow"Importiere ProfilImport ProfileluckyBackupWindow&InformationsfensterInformation windowluckyBackupWindow&Informationsfensterinformation window titleInformation windowluckyBackupWindow`Letzte Ausfhrungszeit der Aufgaben aktualisiert$Last execution time of tasks updatedluckyBackupWindow:Liste aller mglichen BefehleList of all the available tasksluckyBackupWindowVerriegelnLockluckyBackupWindow*Verwalte &SicherungenManage &BackupluckyBackupWindow$Aufgabenverwaltung Manage TaskluckyBackupWindowpDie markierte Aufgabe um eine Position nach oben bewegen/Move the highlighted task down, by one positionluckyBackupWindowpDie markierte Aufgabe um eine Position nach oben bewegen-Move the highlighted task up, by one positionluckyBackupWindowNEINNOluckyBackupWindow"NICHTS BEINHALTET NOT INCLUDEDluckyBackupWindowACHTUNGNOTEluckyBackupWindow*Keine Fehler gefundenNo errors foundluckyBackupWindow*Aufgabe nun ausfhrenNow performing taskluckyBackupWindowZeige nur Fehler und wichtige Nachrichten whrend der Fenster-Aktualisierung could not be saved'ProfileluckyBackupWindow ProfilIQuestion dialog message. Full phrase: 'profile is modified'ProfileluckyBackupWindow Profil9full phrase: 'Profile deleted successfully'ProfileluckyBackupWindow ProfilJfull phrase: 'Profile duplicated successfully as 'ProfileluckyBackupWindow ProfilGfull phrase: 'Profile exported successfully to 'ProfileluckyBackupWindow Profillfull phrase: 'Profile imported successfully as and added at the profile list'ProfileluckyBackupWindow Profil3full phrase: 'Profile set as default'ProfileluckyBackupWindowvDer Fortschrittsanzeige wird nicht der Realitt entsprechen(Progressbar update will not be realisticluckyBackupWindowU&mbenennenR&enameluckyBackupWindowLesefehler Read errorluckyBackupWindow^Alle lteren Schnappschussdaten wurden entfernt Removed all older snapshots dataluckyBackupWindowEntferneRemovingluckyBackupWindownEntferne alte Schnappschsse and Logdateien der Aufgabe+Removing old snapshots and logfiles of taskluckyBackupWindowAusfhrenRunluckyBackupWindow&Zeitplaner S&cheduleluckyBackupWindow0Whle Export-VerzeichnisSelect export directoryluckyBackupWindow$Setze als StandardSet as DefaultluckyBackupWindowSetze Pfade Set pathsluckyBackupWindowPSetze Pfade fr rsync- und ssh-Kommandos$Set paths for rsync and ssh commandsluckyBackupWindow2Zeige InformationsfensterShow information windowluckyBackupWindow2Zeige Informationsfenster+hide/show information window button tooltipShow information windowluckyBackupWindowJZeige Beschriftung unter den SymbolenShow text under iconsluckyBackupWindow QuelleSourceluckyBackupWindowdStoppe die Ausfhrung der laufenden Aufgaben JETZT'Stop the execution of running tasks NOWluckyBackupWindowJErfolgreich erzeugtes Zielverzeichnis)Successfuly created destination directoryluckyBackupWindowAufgabeTaskluckyBackupWindowAufgabenliste Task listluckyBackupWindow2Aufgabenliste des ProfilsTask list of profileluckyBackupWindow8Die Beschreibung des ProfilsThe description of profileluckyBackupWindowDas von Ihnen gewhlte Verzeichnis enthlt keine gltigen Profil-DatenCThe directory you have selected does not contain valid profile dataluckyBackupWindow~Der Name, den Sie eingegeben haben, enthlt unzulssige Zeichen:The name you have entered contains only invalid charactersluckyBackupWindow`Das System wird in einer Minute heruntergefahren$The system will shutdown in 1 minuteluckyBackupWindow4Die Aufgabenliste ist leerThe task list is emptyluckyBackupWindow*Es wird eine <b>Simulation durchgefhrt,</b> welche keine nderungen verursacht (und nahezu das gleiche Ergebnis produziert wie die reale Ausfhrung){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run)luckyBackupWindow.Wartezeit berschritten Timed outluckyBackupWindow@ffnen des Profils nicht mglichUnable to open profileluckyBackupWindow$Unbekannter Fehler Unknown errorluckyBackupWindow$Unbekannter Fehlerthis refers to a process Unknown errorluckyBackupWindowjVerwende den "Hinzufgen"-Knopf rechts, um zu starten0Use the "add" button on the right to get startedluckyBackupWindowBenutze die "Optionen hinzufgen" um eine Aufgabe einzufgen oder nicht>Use the 'include checkboxes' to include or not a selected taskluckyBackupWindowRAnsehen/Bearbeiten der Profilbeschreibung!View/Edit the profile descriptionluckyBackupWindowWARNUNGWARNINGluckyBackupWindowWillkommen zu Welcome toluckyBackupWindowNWollen sie auch noch folgendes lschen:Would you like to also remove:luckyBackupWindowBWollen Sie trotzdem weitermachen?!Would you like to proceed anyway?luckyBackupWindow.Wollen Sie es ersetzen?Would you like to replace it ?luckyBackupWindowRWollen Sie es vor dem Fortfahren sichern?-Would you like to save it before proceeding ?luckyBackupWindowSchreibfehler Write errorluckyBackupWindowJAYESluckyBackupWindowbSie wollen eine WIEDERHERSTELLUNGS-AKTION anlegen/You have asked for a RESTORE task to be createdluckyBackupWindowvSie haben nur Aufgaben eingebunden, die bersprungen werden9You have only included tasks that are going to be skippedluckyBackupWindowpSie haben das Maximum an untersttzten Aufgaben erreicht5You have reached the maximum limit of supported tasksluckyBackupWindowSie mssen erst eine Aufgabe entfernen, wenn Sie eine andere hinzufgen wollen!7You have to remove a task if you wish to add another !!luckyBackupWindowheine neues leeres, mit demselben Namen, wird erzeugt4a new blank one, with the same name, will be createdluckyBackupWindowhinzufgenaddluckyBackupWindow$Aufgabe hinzufgenadd taskluckyBackupWindow"existiert bereitsalready existsluckyBackupWindow:und die "Profil"-Auswahllisteand 'profile' drop-down listluckyBackupWindow>und zur Profilliste hinzugefgtand added at the profile listluckyBackupWindow^und vor der Ausfhrung alles nach Wunsch ndern.and change anything you wish before proceedingluckyBackupWindowalsasluckyBackupWindowalsFfull phrase: 'Failed to duplicate profile as 'asluckyBackupWindowkalkuliere calculatingluckyBackupWindowkalkuliere-info message displayed during ...calculations calculatingluckyBackupWindowKommandoausgabecommands outputluckyBackupWindow6konnte nicht erzeugt werdencould not be createdluckyBackupWindow:konnte nicht gesichert werdencould not be savedluckyBackupWindow:konnte nicht gesichert werdenPQuestion dialog message. Full phrase: 'profile could not be saved'could not be savedluckyBackupWindow(erfolgreich angelegtcreated successfullyluckyBackupWindow4erzeuge Standardprofil ...creating default profile ...luckyBackupWindow$erzeuge Profil ...creating profile ...luckyBackupWindowrMomentaner crontab <font color=green>updated successfully6current crontab updated successfullyluckyBackupWindow Aktuelles Profilcurrent profileluckyBackupWindowStandardprofildefault profileluckyBackupWindowStandardprofil^Information window message. Full phrase: 'default profile could not be created'.default profileluckyBackupWindowStandardprofilVfull phrase: 'default profile renamed successfully to '.default profileluckyBackupWindow4wurde erfolgreich gelschtdeleted successfullyluckyBackupWindowlsche Dateiendeleting filesluckyBackupWindowLsche Dateien/info message displayed during ...file deletionsdeleting filesluckyBackupWindowAnzeigen - Wiederherstellen - Lschen von bestehenden Sicherungen der markierten Aufgabe?display - restore - delete existing backups of highlighted taskluckyBackupWindowhZeige Informationen bezglich der markierten Aufgabe.display information regarding highlighted taskluckyBackupWindow4erfolgreich dupliziert alsduplicated successfully asluckyBackupWindowFehler gefunden errors foundluckyBackupWindow.Ausfhrung des Profils:execution of profile:luckyBackupWindow.Ausfhrung des Profils:Atray message - execution of profile: in progress...execution of profile:luckyBackupWindow6erfolgreich exportiert nachexported successfully toluckyBackupWindow0Entfernen fehlgeschlagenfailed to removeluckyBackupWindowrEntfernen aller lteren Schnappschussdaten fehlgeschlagen)failed to remove all older snapshots dataluckyBackupWindowbeendetfinishedluckyBackupWindowbeendet:full phrase: 'Execution of profile finished'finishedluckyBackupWindow8wurde erfolgreich importiertimported successfullyluckyBackupWindow"in Bearbeitung...in progress...luckyBackupWindowEinfgenincludeluckyBackupWindowwurde verndert is modifiedluckyBackupWindow(ist nicht gltig fris not valid forluckyBackupWindow6Springe zum nchsten Fehlerjump to next errorluckyBackupWindow:Springe zum vorherigen Fehlerjump to previous errorluckyBackupWindow&erfolgreich geladenloaded successfullyluckyBackupWindow.Lade Standardprofil ...loading default profile ...luckyBackupWindow(Laden fehlgeschlagenloading failedluckyBackupWindowlade Profil ...loading profile ...luckyBackupWindowtLogdatei(en) sind in folgendem Verzeichnis erzeugt worden:.logfile(s) have been created under directory: luckyBackupWindowluckyBackup luckyBackupluckyBackupWindow6minimiere in das Systemtrayminimize to trayluckyBackupWindowNminimiert das Fenster in das Systemtray%minimizes the window to the tray arealuckyBackupWindowbearbeitenmodifyluckyBackupWindow8Markierte Aufgabe bearbeitenmodify highlighted taskluckyBackupWindownichts zu tun nothing to doluckyBackupWindowRAusfhrung des Kommandos nach der Aufgabepost-task execution of commandluckyBackupWindowRAusfhrung des Kommandos vor der Aufgabe pre-task execution of commandluckyBackupWindow ProfilprofileluckyBackupWindow ProfilVInformation window message. Full phrase: 'profile could not be created'.profileluckyBackupWindow ProfilSInformation window message. Full phrase: 'profile could not be saved'profileluckyBackupWindow ProfilUInformation window message. Full phrase: 'profile created successfully'profileluckyBackupWindow ProfilSInformation window message. Full phrase: 'profile saved successfully'profileluckyBackupWindow ProfilMfull phrase: 'profile renamed successfully to 'profileluckyBackupWindowProfileprofile luckyBackupWindowstiller Modus quiet modeluckyBackupWindowwurden erneuert refreshedluckyBackupWindowentfernenremoveluckyBackupWindow6Markierte Aufgabe entfernenremove highlighted taskluckyBackupWindow2erfolgreich umbenannt in renamed successfully toluckyBackupWindow2erfolgreich umbenannt in Wfull phrase: '(default) profile renamed successfully to 'renamed successfully toluckyBackupWindowDie Ausgabe von rsync und Vorher-/Nachher-Aufgaben-Kommandos wird hier angezeigt9rsync and pre/post task commands output is displayed hereluckyBackupWindow*erfolgreich gesichertsaved successfullyluckyBackupWindow4sichere Standardprofil ...saving default profile ...luckyBackupWindow$sichere Profil ...saving profile ...luckyBackupWindowGeplant scheduledluckyBackupWindow,als Standard verwendenset as defaultluckyBackupWindow lautetset toluckyBackupWindowHerunterfahrenshutdownluckyBackupWindow"Simulations-Modussimulation modeluckyBackupWindow StatusstatusluckyBackupWindowSuper-User super userluckyBackupWindow Super-User-Modussuper user modeluckyBackupWindownachtoluckyBackupWindow"bertrage Dateientransferring filesluckyBackupWindow"bertrage Dateien/info message displayed during ...file transferstransferring filesluckyBackupWindow:versuche eine Email zu sendentrying to send an emailluckyBackupWindowVersion:version:luckyBackupWindow.Kalkuliere UnterschiedeCalculate differences manageDialogKalkuliere die Unterschiede zwischen Quelle und den gewhlten SchnappschussFCalculate the differences between the source and the selected snapshot manageDialogHKalkulationen beendet durch AnwenderCalculations terminated by user manageDialogSchlieenClose manageDialog(Schliee das FensterClose this window manageDialogLschenDelete manageDialognDen gewhlten Schnappschuss und dessen Logdatei lschen,Delete the selected snapshot and its logfile manageDialogIch habe nicht ausreichende Berechtigungen, um das Verzeichnis zu lesen;I do not have sufficient permissions to read this directory manageDialogdBitte whlen Sie einen Schnappschuss aus der Liste&Please select a snapshot from the list manageDialogTBitte warten bis der Vorgang beendet wurde*Please wait until the thread is terminated manageDialog WiederherstellenRestore manageDialog\Den gewhlten Schnappschusses wiederherstellenRestore the selected snapshot manageDialogSTOPSTOP manageDialog4Stoppe Kalkulationen JETZTStop calculations NOW manageDialogDDieses Verzeichnis existiert nichtThis directory does not exist manageDialogDDieses Verzeichnis existiert nichtInformation messageThis directory does not exist manageDialog\Logdatei der gewhlten Schnappschusses ansehen)View the logfile of the selected snapshot manageDialogjSiehe Logdatei der gewhlten Synchronisations-Aufgabe*View the logfile of the selected sync task manageDialog Ziel: destination: manageDialog Verstecke Quelle hide source manageDialog@luckyBackup - Verwalte SicherungluckyBackup - manage backup manageDialognicht verfgbar not available manageDialog Profilprofile manageDialogQuelle:source: manageDialog:Synchronisationsverzeichnis A sync dir A manageDialog:Synchronisationsverzeichnis B sync dir B manageDialogAufgabetask manageDialogSiehe Logdateiview log manageDialog<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html>

 manageWizardABBRUCHABORT manageWizardAbgebrochenAborted manageWizardSicherung-Pfad Backup path manageWizardDurchsuche diesen Computer fr eine neuen Wiederherstellungs-Pfad%Browse locally for a new restore path manageWizardPrfe dies, um den Sicherungs-Schnappschuss in das Wiederherstellungsverzeichnis zu klonen.BCheck this, to clone the backup snapshot to the restore directory. manageWizardDatum & Zeit Date & time manageWizard Lsche Sicherung Delete backup manageWizardLsche existierende Daten, die nicht in der Sicherung existieren4Delete existing data that do not exist at the backup manageWizardLsche Daten Deleting data manageWizardpLsche Datei, welche Schnappschuss-nderungen auflistet)Deleting file that lists snapshot changes manageWizard:Lsche Schnappschuss-LogdateiDeleting snapshot logfile manageWizardExistierende Sicherungsdateien werden die zugehrigen Dateien im Wiederherstellungsverzeichnis ersetzenSExisting backup files will replace the corresponding files at the restore directory manageWizardBeendetFinished manageWizardWenn die vorhergehenden Informationen korrekt sind, klicken Sie auf <b>Start</b>, um zu beginnen@If the information above is correct, click start to begin manageWizardWenn die Informationen zuvor korrekt sind, klicken Sie auf <b>Start</b> um zu beginnen`information message - line2. Please leave tags intact and surrounding 'start translated'@If the information above is correct, click start to begin manageWizard6Springe zum nchsten FehlerJump to next error manageWizard:Springe zum vorherigen FehlerJump to previous error manageWizardEs existieren keine Schnappschuss-spezifischen Daten. berspringe...,No snapshot specific data exist. Skipping... manageWizardPfadPath manageWizard4Sicherung wiederherstellenRestore backup manageWizard.Wiederherstellungs-Pfad Restore path manageWizardBDatenwiederherstellung: HauptteilRestoring data: main trunk manageWizardZDatenwiederherstellung: Schnappschuss DateienRestoring data: snapshot files manageWizardRWhle neues WiederherstellungsverzeichnisSelect new restore directory manageWizardDas Wiederherstellungsverzeichnis wird identisch mit dem Sicherungs-Schnappschuss seinBThe restore directory will become identical to the backup snapshot manageWizard(Es wird eine <b>Simulation durchgefhrt</b>, welche keine nderungen verursacht (und nahezu das gleiche Ergebnis produziert wie der reale Durchlauf){This will perform a simulation run that doesn't make any changes (and produces mostly the same output as a real run) manageWizardJAktualisiere Liste der SchnappschsseUpdating list of snapshots manageWizardWARNUNGWARNING manageWizardTSie sind dabei, Sicherungsdaten zu lschen#You are about to delete backup data manageWizardAbbrechencancel manageWizardnderungchange manageWizardSchlieeclose manageWizardFehler gefunden errors found manageWizardFehlgeschlagenfailed manageWizardFehlgeschlagen-info message displayed after ...file deletionfailed manageWizard@luckyBackup - Verwalte SicherungluckyBackup - manage backup manageWizardNchster Fehler next error manageWizardkeine Fehler no errors manageWizardnicht verfgbar not available manageWizard Vorherige Fehlerprevious error manageWizardSimulation simulation manageWizard Startstart manageWizardErfolgreichsuccess manageWizardErfolgreich-info message displayed after ...file deletionsuccess manageWizardErfolgreich5info message displayed after ...snapshots list updatesuccess manageWizard'Entfernter Rechner' ist markiert, aber es wurde kein Rechnername angegeben='Remote Host' is checked, but no remote host name is declared modifyDialog...... modifyDialog<b>Vergessen Sie nicht</b> ein Verzeichnis im "Ausnahme"-Gruppenfeld zu definieren, welches das Ziel beinhaltetfDo not forget to define a directory at the 'exclude' groupbox that will contain the destination modifyDialog @Host@Host: modifyDialogFge ein beliebiges Verzeichnis, Dateien oder Muster ein, die von der Aufgabe auszuschlieen sind@Add any directory, file or pattern to be excluded from this task modifyDialogFge ein beliebiges Verzeichnis, eine Datei oder ein Muster ein, das in die Aufgabe aufgenommen werden soll>Add any directory, file or pattern to be included by this task modifyDialogbFge Kommando wie im Feld daneben angegeben hinzu*Add command as entered in the field beside modifyDialog^Fge Ausnahme wie angegeben in das nchste Feld*Add exclusion as entered in the next field modifyDialogfFge Einbeziehung wie angegeben in das nchste Feld*Add inclusion as entered in the next field modifyDialogHinzufgen oder Entfernen beliebiger rsync-Optionen. Wenn Sie nicht wissen, was das bedeutet, lassen diese unberhrt!]Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! modifyDialoglFge rsync-Option wie angegeben im nchsten Feld hinzu-Add rsync option as entered in the next field modifyDialogErweitertAdvanced modifyDialog DanachAfter modifyDialogAlle angegebenen Felder im Fenster der Aufgabeneigenschaften scheinen ok zu sein?All declared fields of the task properties window seem to be ok modifyDialog Ebenso ausfhren Also Execute modifyDialog>Versuche Super-User-AktivittenAttempt super-user activities modifyDialogDSichere Quelle innerhalb des Ziels Backup Source inside Destination modifyDialog"Sicherungsdateien Backup files modifyDialog2Sichere geffnete DateienBackup open files modifyDialog ZuvorBefore modifyDialog<Zwischenspeicher-Verzeichnisse Cache folders modifyDialogAbbrechenCancel modifyDialog(Markiere dies wenn Sie eine FAT-/NTFS-Partition als Ziel verwenden. Datei-Eigentmerschaft und -rechte werden NICHT erhalten. (-t --modify-window=1)Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) modifyDialogWhle dies, um Quelle zum Ziel zu klonen Nicht whlen, um ein Zusatzverzeichniss innerhalb des Ziels zu erzeugeniCheck this to clone source to destination Leave unchecked to create an extra directory inside destination modifyDialogvPrfe dies, um zu einen entfernten rsync-Modul zu verbinden/Check this to connect to an rsync Remote module modifyDialog"Kommando-OptionenCommand Options modifyDialogKommando-Liste Command list modifyDialogKopiert Gert (nur Super-User) & besondere Dateien, wie sie sind (-D)?Copy device (super user only) & special files as they are (-D) modifyDialogDKopiere Symlinks als Symlinks (-l)Copy symlinks as symlinks (-l) modifyDialogDefiniere den Typ dieser Aufgabe: 1. Sichere das Quellverzeichnis, innerhalb des Ziels (siehe auch "KEIN Verzeichnis erzeugen") 2. Synchronisiere Quelle & Ziel, behalte die letzten Dateien bei beidenDefine the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialogDefiniere den Typ der Aufgabe: 1. Sichere den Inhalt der Quelle innerhalb des Zieles 2. Sichere das Quellverzeichnis per Namen innerhalb des Zieles 3. Synchronisiere Quelle & Ziel, behalte die neusten Dateien bei beidenDefine the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them modifyDialog,Lscht Dateien im ZielDelete files on the destination modifyDialogZLsche Dateien im Ziel, die nicht in der Quelle existieren "Abstieg in Verzeichnisse" muss gewhlt sein (--delete-after & --delete-excluded, wenn "Ausnahme" verwendet wird)Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) modifyDialogBeschreibung Description modifyDialogZiel Destination modifyDialog Ziel : Destination : modifyDialog"Ziel ist FAT/NTFSDestination is FAT/NTFS modifyDialog<Erzeuge KEIN ZusatzverzeichnisDo NOT create extra directory modifyDialogSichere keine Quell-Dateien, die auf dem Ziel aktueller sind (--update)HDo not backup source files that are newer on the destination (--update) modifyDialogDiese Liste an Mustern nicht ausschlieen. Bitte lesen die das Handbuch, um die Einbeziehungs-Regeln besser zu verstehen.kDo not exclude this list of patterns. Please refer to the manual for better understanding of include rules. modifyDialog@Bearbeite markierte EinbeziehungEdit highlighted inclusion modifyDialogGeben Sie einen Name fr die Aufgabe an (z.B. "Sichere mein Heimverzeichnis"):Enter a name for this task (eg "Backup my home directory") modifyDialogGeben Sie hier ein Kommando zur Ausfhrung nach der Aufgabe an und drcken Sie den "Hinzufgen"-Knopf,um es der Liste unten hinzuzufgennEnter here a command to be executed after the task and then press the "add" button to add it to the list below modifyDialogGeben Sie hier ein Kommando zur Ausfhrung vor der Aufgabe an und drcken den "Hinzufgen"-Knopf, um es der Liste unten hinzuzufgenoEnter here a command to be executed before the task and then press the "add" button to add it to the list below modifyDialogGebe hier eine rsync-Option zum Hinzufgen an (z.B. "--delete-excluded", "-X")@Enter here an rsync option to add (eg "--delete-excluded", "-X") modifyDialogGeben Sie hier eine Datei, ein Verzeichnis oder Muster ein und drcken dann den "Hinzufgen"-Knopf, um es zur Ausnahmeliste hinzuzufgen. * - passt auf alle nicht-leeren Komponenten (es stoppt an Schrgstrichen) ** - passt auf alles, inklusive Schrgstriche ? - passt auf jedes Zeichen ausgnommen eines Schrgstrichs Angehngtes Verzeichnis-Name/*** - passt auf beides, das Verzeichnis & alles darin Beginnend mit / - Muster ist verankert zu einem besonderen Punkt in der Hirachie des Transfers (normaler Weise ist das die "Quelle") Angehngtes / - passt nur auf das Verzeichnis, nicht gewhnliche Dateien, Symlinks oder GerteEnter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogGeben Sie hier eine Datei, ein Verzeichnis oder Muster ein und drcken dann den "Hinzufgen"-Knopf, um es zur Ausnahmeliste hinzuzufgen. * - passt auf alle nicht-leeren Komponenten (es stoppt an Schrgstrichen) ** - passt auf alles, inklusive Schrgstriche ? - passt auf jedes Zeichen ausgnommen eines Schrgstrichs Angehngtes Verzeichnis-Name/*** - passt auf beides, das Verzeichnis & alles darin Beginnend mit / - Muster ist verankert zu einem besonderen Punkt in der Hirachie des Transfers (normaler Weise ist das die "Quelle") Angehngtes / - passt nur auf das Verzeichnis, nicht gewhnliche Dateien, Symlinks oder GerteEnter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normaly this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices modifyDialogGeben Sie den vollstndigen Pfad zum Ziel-Verzeichnis an (z.B. /media/backups/SiduxHome/)OEnter the full path of the destination directory (eg /media/backups/SiduxHome/) modifyDialogGeben Sie den vollen Pfad der Datei an, die den privaten SSH-Schlssel enthlt (leer lassen, falls unzutreffend). Beachten Sie, dass Sie alle diese Schritte ntig sind, um eine passwortfreie SSH-Verbindung mit einem OpenSSH-Schlsselpaar zu nutzenEnter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair modifyDialog"Geben Sie den vollen Pfad der Datei an, die das rsync-Authentifzierungs-Passwort (nicht das von ssh) beinhaltet (leer lassen, falls unzutreffend)~Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). modifyDialogDen vollstndigen Pfad des Quellverzeichnisses angeben (z.B. /home/luckyb/)>Enter the full path of the source directory (eg /home/luckyb/) modifyDialogRDen Namen des entfernen Rechners eingeben"Enter the name of the remote host. modifyDialogGeben Sie den Port ein, den Sie fr die Benutzung der SSH-Verbindung verwenden wollen (leer lassen fr den Standardport)ZEnter the port you would like to use for the ssh connection (leave blank for default port) modifyDialogBenutzernamen fr den entfernten Rechner eingeben (leer lassen, falls unzutreffend)HEnter your username for the remote host (leave blank if not applicable). modifyDialog2Es wurden Fehler gefundenErrors have been found modifyDialogAusnahmeExclude modifyDialog|Schliee alle "lost+found" Verzeichnisse (**/lost+found*/) aus2Exclude all "lost+found" folders (**/lost+found*/) modifyDialogTSchliee alle Sicherungs-Dateien (**~) aus(Exclude all backup files & folders (**~) modifyDialogSchliee alle Zwischenspeicher-Verzeichnisse (**/*cache*/ & **/*Cache*/) aus5Exclude all cache folders (**/*cache*/ & **/*Cache*/) modifyDialog|Schliee alle Verzeichnisse fr temporre Daten (**/*tmp*) aus$Exclude all temp folders (**/*tmp*/) modifyDialog|Schliee alle .gvfs-Verzeichnisse der Benutzer (**/.gvfs/) aus,Exclude all user's .gvfs folders (**/.gvfs/) modifyDialogSchliee alle Mlleimer von Benutzern (**/*Trash*/, **/*trash*/) aus;Exclude all user's trash folders (**/*Trash*/, **/*trash*/) modifyDialogAusnahmen-Liste Exclude list modifyDialogSchliee System-Ordner aus (/var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**)bExclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) modifyDialogSchliee System-Einhngepunkte /mnt & /media (/mnt/*/**, /media/*/**) ausCExclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) modifyDialogtFhre zustzliche Kommandos aus, vor oder nach der Aufgabe1Execute extra commands, before or after the task. modifyDialog Fhre die Aufgabe aus, selbst wenn eine WARNUNG-Nachricht erscheint. Dies wird normalerweise benutzt, wenn "Zuvor Ausfhren"-Kommando eine Warnung beheben kann (z.B. Partitionen einhngen). ACHTUNG: Verwenden Sie dies nur, wenn Sie wirkich wissen, was Sie tun.Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing modifyDialog@Zustzliche rsync-Optionen-ListeExtra rsync options list modifyDialogRDateien, die in der Quelle ber einen Hardlink verknpft sind, werden dies auch im Ziel sein. WARNUNG: Alle Dateien mssen in der bertragungsliste beinhaltet sein! (-H)Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) modifyDialog<Ignoriere Dateien nach CVS-ArtIgnore files the CVS way modifyDialog~Ignoriere Dateien nach einem hnlichen Algorithmus wie CVS (-C)3Ignore files using a similar algorithm to CVS (-C) modifyDialogEinfgenInclude modifyDialogtSchliee NUR diese Liste an Mustern ein. Nicht mehr. Fr das bessere Verstndnis der Einbeziehungs-Regeln schauen Sie bitte im Handbuch nach. Dies wird die Ausnahmen-Funktion abschalten.Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. modifyDialog"Einbezieungsliste Include list modifyDialogEinfgemodus Include mode modifyDialog Lassen Sie dies gewhlt, um die Ausfhrung der laufenden Aufgabe zu <b>STOPP</b>en, wenn das Kommando mit einen Fehler beendet wird.gLeave the box checked, to STOP the execution of running task if this command exits with an error modifyDialog Modus:Mode: modifyDialogHBewege markierte Einbeziehung runterMove highlighted inclusion down modifyDialogDBewege markierte Einbeziehung hochMove highlighted inclusion up modifyDialog Name :Name : modifyDialog(Normale EinbeziehungNormal Include modifyDialogOkayOkay modifyDialogNur Einbeziehen Only Include modifyDialog|Andernfalls 'Entfernter Rechner' abwhlen um lokal zu arbeiten2Otherwise uncheck 'Remote Host' to operate locally modifyDialogpBitte prfen Sie die relevante Option vor dem Fortfahren/Please check the relevant box before proceeding modifyDialogBitte geben Sie die Quelle vor dem Starten des Muster-Editors anWhlen Sie ein QuellverzeichnisSelect source directory modifyDialogDWhlen Sie eine SSH-SchlsseldateiSelect ssh keyfile modifyDialog~Setze die Gesamtanzahl zu behaltender Sicherungs-Schnappschsse0Set the total number of backup snapshots to keep modifyDialog^Zeigt das rsync-Kommando wie es ausgefhrt wird.Shows the rsync command as it will be executed modifyDialog>Neuere Zieldateien berspringenSkip newer destination files modifyDialog:zu behaltende Schnappschsse:Snapshots to keep: modifyDialog QuelleSource modifyDialogQuelle :Source : modifyDialog:Sychronisiere Quelle und Ziel"Synchronize Source and Destination modifyDialog(System-VerzeichnisseSystem folders modifyDialog(System-EinhngepunktSystem mount folders modifyDialog(AufgabenbeschreibungTask description modifyDialog Name der Aufgabe Task name modifyDialog,Aufgaben-EigenschaftenTask properties modifyDialogVorlagen Templates modifyDialog.Temporre VerzeichnisseTemporary folders modifyDialogvDas ist nicht erlaubt, da '/' keinen eigentlichen Namen hatSSH als Transportshell benutzenUse ssh as transport shell modifyDialog"Benutzerdefiniert User Defined modifyDialog"Benutzerdefiniert User defined modifyDialogBenutzer:User: modifyDialogjMit dieser Option wird rsync numerische Gruppen- und Benutzer-IDs benutzen, anstatt Benutzer- und Gruppennamen zu bertragen und diese auf beiden Seiten anzupassen. (--numeric-ids) With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) modifyDialogTSie haben diese Ausnahme schon hinzugefgt(You have already added this exclude item modifyDialogrSie haben diesen Eintrag zum Einbeziehen schon ausgewhlt(You have already added this include item modifyDialogRDiese Option haben sie bereits ausgewhlt"You have already added this option modifyDialogjSie haben die Option "Lsche Dateien im Ziel" gewhlt=You have checked the 'delete files on the destination' option modifyDialogSie haben ein Ziel angegeben, welches Teil der Quellverzeichnisstruktur istNYou have declared a destination that is part of the source directory structure modifyDialogSie haben das '/' (root) Verzeichnis als Quelle angegeben und haben NICHT die Option 'Erzeuge KEIN Zusatzverzeichnis' gewhltqYou have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box modifyDialogSie haben das root-Verzeichnis einer ganzen Partition als Quelle angegeben und NICHT die Option 'Erzeuge KEIN Zusatzverzeichnis' gewhltYou have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box modifyDialoghinzufgenadd modifyDialog*Zustzliche Optionen:additional options: modifyDialogErweitertadvanced modifyDialogDurchsuchenbrowse modifyDialog"lokal durchsuchenbrowse locally modifyDialog4Diesen Rechner durchsuchen browse localy modifyDialog&berspringe WARNUNGby-pass WARNING modifyDialogAbbrechencancel modifyDialog*Bearbeitung abbrechencancel editing modifyDialog.Auszufhrendes Kommandocommand to be executed modifyDialogZiel destination modifyDialog Fertigdone modifyDialog&Bearbeitung beendet done editing modifyDialogBearbeiteedit modifyDialog<z.B. -C4c arcfour,blowfish-cbceg -C4c arcfour,blowfish-cbc modifyDialogDateinamefilename modifyDialog0Starte den Muster-Editorlaunch the pattern editor modifyDialoglost+found lost+found modifyDialog Runter move down modifyDialogHochmove up modifyDialogOptionen-Liste options list modifyDialogPasswort: password: modifyDialog Port:port : modifyDialog0Private Schlssel-Datei:private key file : modifyDialogentfernenremove modifyDialog(rsync-Passwortdatei:rsync password file: modifyDialogEinfachsimple modifyDialog Quellesource modifyDialogSSHssh modifyDialogxBenutze, um Aufgabenausfhrung bei Fehler zu <b>STOPP</b>en.0use boxes to STOP task execution on error modifyDialogberprfenvalidate modifyDialogohne 'Abstieg in Verzeichnisse' markiert zu haben, was erforderlich istCwithout having checked 'Recurse into directories' which is required modifyDialogAbbrechenCancel patternEditorxWhlen Sie diese Option, um das obige Verzeichnis als absoluten Pfad zu benutzen wenn nicht gewhlt, wird das Muster auf jede Datei/Verzeichnis passen, welches das Kriterium "Name" erflltCheck this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria patternEditorDefiniere hier das Namens-Kriterium fr die Dateien/Verzeichnisse, die passen sollenEDefine here the name criteria for the files/directories to be matched patternEditorbDefiniere hier, auf was das Muster verweisen soll8Define here, what would you like the pattern to refer to patternEditor"VerzeichnisinhaltDirectory contents patternEditorGeben Sie hier die Zeichen ein, die an irgendeiner Stelle im Namen der Dateien/Verzeichnisse enthalten sind, auf die das Muster verweistsEnter here the characters contained in any position of the name of the files/directories that the pattern refers to patternEditorVGeben Sie hier die letzten Zeichen des Namens der Dateien/Verzeichnissese ein, auf die das Muster verweist z.B. um auf alle ".txt"-Dateien zu verweisen, geben Sie ein .txtEnter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt patternEditorGeben Sie hier den Namen der Dateien/Verzeichnisse ein, auf die das Muster verweistGEnter here the name of the files/directories that the pattern refers to patternEditorGeben Sie hier die ersten Zeichen des Namens der Dateien/Verzeichnisse ein, auf die das Muster verweistbEnter here the starting characters of the name of the files/directories that the pattern refers to patternEditor*Steige im Pfad ab um:Go deeper in path by : patternEditor@Steige im Pfad ab auf jede EbeneGo deeper in path by any level patternEditorOkayOkay patternEditorjBitte whlen Sie ein Verzeichnis innerhalb der Quelle+Please choose a directory within the source patternEditorhBitte whlen Sie eine Datei innerhalb der Quelle aus&Please choose a file within the source patternEditorSetze die Eintrge des Muster-Editors auf die Standardwerte zurck5Reset the pattern editor fields to the default values patternEditor"Whle VerzeichnisSelect directory patternEditorDatei whlen Select file patternEditor.Satz von VerzeichnissenSet of directories patternEditor Satz von Dateien Set of files patternEditor*Konkretes VerzeichnisSpecific directory patternEditorKonkrete Datei Specific file patternEditorNDas aktuelle Muster wird hier angezeigt$The actual pattern is displayed here patternEditor<Das Muster verweist auf einen:The pattern refers to a: patternEditor&Benutze dies, wenn das Muster auf einen Satz Verzeichnisse verweist, die etwas gemeinsam haben z.B. alle Verzeichnisse, die benannt sind als "temp"Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" patternEditor Benutze dies, wenn das Muster auf einen Satz Dateien verweist, die etwas gemeinsam haben z.B. alle Dateien mit der Erweiterung ".txt"wUse this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension patternEditorBenutze dies, wenn das Muster auf ein konkretes Verzeichnis verweist z.B. "/media/music/album/song.mp3"OUse this if the pattern refers to a specific directory eg "/media/music/Album/" patternEditorBenutze dies, wenn das Muster auf eine konkrete Datei verweist z.B. "/media/music/album/song.mp3"RUse this if the pattern refers to a specific file eg "/media/music/album/song.mp3" patternEditorBenutzen Sie dies, wenn das Muster auf den Inhalt eines Verzeichnisses (oder einen Satz von Verzeichnissen) verweist, nicht das Verzeichnis selbst z.B. den Inhalt des Verzeichnis "/media/music/Album/"Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" patternEditorBenutzen Sie dies, um auf tiefere Unterverzeichnisse zu verweisen z.B. Das Verzeichnis "/media/musik" beinhaltet 3 Unterverzeichnisse: 1. Rock 2. Jazz 3. Soundtracks und wenn Sie auf den gesamten Inhalt dieser drei verweisen wollen, definieren Sie das folgende: * Satz von Verzeichnissen * Verzeichnisinhalte * Pfad:/media/music/ * Steige tiefer im Pfad um "1"0Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" patternEditoralleany patternEditorXDurchsuche lokal nach einen Verzeichnis-Pfad"browse localy for a directory path patternEditor:lokal nach einer Datei suchenbrowse localy for a file patternEditorenthlt: contains : patternEditorVerzeichnis : directory : patternEditorendet mit: ends with : patternEditorDatei :file : patternEditorFertiges Muster final pattern patternEditorist genau: is exactly : patternEditorNamename patternEditorMuster-Editorpattern editor patternEditorZurcksetzenreset patternEditorbeginnt mit: starts with : patternEditor,benutze absoluten Pfaduse absolute path patternEditor -Datei filescheduleDialogund am & on thescheduleDialog11scheduleDialog1010scheduleDialog1111scheduleDialog1212scheduleDialog1313scheduleDialog1414scheduleDialog1515scheduleDialog1616scheduleDialog1717scheduleDialog1818scheduleDialog1919scheduleDialog22scheduleDialog2020scheduleDialog2121scheduleDialog2222scheduleDialog2323scheduleDialog2424scheduleDialog2525scheduleDialog2626scheduleDialog2727scheduleDialog2828scheduleDialog2929scheduleDialog33scheduleDialog3030scheduleDialog3131scheduleDialog44scheduleDialog55scheduleDialog66scheduleDialog77scheduleDialog88scheduleDialog99scheduleDialog::scheduleDialogVerzgerung:delayscheduleDialog6<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profilausfhrung planen</span></p></body></html>

Profile execution scheduling

scheduleDialog@reboot@ rebootscheduleDialogDNeue Profil-Zeitplanung hinzufgenAdd a new profile schedulescheduleDialog:Profil-Zeitplanung hinzufgenAdd profile schedulescheduleDialog JedenAnyscheduleDialog AprilAprilscheduleDialog Aprilfull phrase: 'of April'AprilscheduleDialogSind Sie sicher, dass Sie den Zeitplaner-Dialog schlieen wollen?4Are you sure you want to close the schedule dialog ?scheduleDialog AugustAugustscheduleDialog Augustfull phrase: 'of August'AugustscheduleDialogAbbruchCancelscheduleDialogWhlen Sie diese Option, wenn Ihr Computer ber keine grafische Umgebung verfgt (z.B. Server)OCheck this if your machine does not support a graphical environment (eg server)scheduleDialogKonsolen-Modus Console ModescheduleDialogDezemberDecemberscheduleDialogDezemberfull phrase: 'of December'DecemberscheduleDialogZVerzgere die Ausfhrung von beim Systemstart&Delay luckybackup execution at startupscheduleDialogJZeige die derzeitige Crontab-Datei anDisplay the current crontabscheduleDialog Profil ausfhrenExecute profilescheduleDialogFebruarFebruaryscheduleDialogFebruarfull phrase: 'of February'FebruaryscheduleDialogFreitagFridayscheduleDialog"Ungltiges ProfilInvalid profilescheduleDialog JanuarJanuaryscheduleDialog Januarfull phrase: 'of January'JanuaryscheduleDialogJuliJulyscheduleDialogJulifull phrase: 'of July'JulyscheduleDialogJuniJunescheduleDialogJunifull phrase: 'of June'JunescheduleDialogMrzMarchscheduleDialogMrzfull phrase: 'of March'MarchscheduleDialogMaiMayscheduleDialogMaifull phrase: 'of May'MayscheduleDialog:Profil-Zeitplanung bearbeitenModify profile schedulescheduleDialogPBearbeite ausgewhlte Profil-Zeitplanung Modify selected profile schedulescheduleDialog MontagMondayscheduleDialogBKeine Zeitplanungen deklariert !!No schedules are declared !!scheduleDialogNovemberNovemberscheduleDialogNovemberfull phrase: 'of November'NovemberscheduleDialogOktoberOctoberscheduleDialogOktoberfull phrase: 'of October'OctoberscheduleDialogProfil: Profile :scheduleDialogFEinzelheiten der Profil-ZeitplanungProfile schedule detailsscheduleDialogNEntferne ausgewhlte Profil-Zeitplanung Remove selected profile schedulescheduleDialogJDurchfhrung ein Mal beim SystemstartRun once, at startupscheduleDialogSamstagSaturdayscheduleDialogSeptember SeptemberscheduleDialogSeptemberfull phrase: 'of September' SeptemberscheduleDialogberspringe Aufgaben, die mit einer "KRITISCH"-Meldung nach der Verzeichnisprfung erscheinen.SSkip tasks that apear with a 'CRITICAL' warning message after the directories checkscheduleDialog"Von vorn beginnenStarting from scratchscheduleDialogSonntagSundayscheduleDialogDie vorhandene Zeitplanungsdatei ist kein gltige luckyBackup v.8The existent schedule file is not a valid luckyBackup v.scheduleDialogDonnerstagThursdayscheduleDialogDienstagTuesdayscheduleDialog6Cron-Datei nicht erstellbarUnable to create cron filescheduleDialogRKann die Zeitpanungsdatei nicht erstellenUnable to create schedule filescheduleDialogMittwoch WednesdayscheduleDialogSie haben nderungen vorgenommen, ohne diese in die Cron-Datei bernommen zu haben8You have made changes without clicking the cronIT buttonscheduleDialogSie haben die maximale Anzahl untersttzter Zeitplanungsdateien erreichtBYou have reached the maximum limit of supported scheduled profilesscheduleDialog~Sie mssen einen Eintrag lschen, um einen anderen hinzuzufgen5You have to remove an item if you wish to add anotherscheduleDialogbIhre Crontab-Datei wurde erfolgreich aktualisiert$Your crontab is updated successfullyscheduleDialogHinzufgenaddscheduleDialogumatscheduleDialogSchlieenclosescheduleDialog.Diesen Dialog schlieenclose this dialogscheduleDialog.in Cron-Datei eintragen cronIT !!scheduleDialogCrontab-Inhaltcrontab contentscheduleDialogTagdayscheduleDialogTag des Monats:day of month :scheduleDialogWochentag: day of week :scheduleDialog jedeneveryscheduleDialog(stndlich zur Minutehourly at minute scheduleDialog0luckyBackup - ZeitplanerluckyBackup - schedulescheduleDialogminminscheduleDialogBearbeitenmodifyscheduleDialog Monat:month :scheduleDialogtendscheduleDialogteas in 22nd dayndscheduleDialogHEs existieren keine Crontab-Eintrgeno crontab entries existscheduleDialogimofscheduleDialogjeden Monats of any monthscheduleDialogOkayokayscheduleDialog0einmal, beim Systemstartonce, at system startupscheduleDialogterdscheduleDialogteas in 23rd dayrdscheduleDialogEntfernenremovescheduleDialogPlane die Ausfhrung der Profile wie in der Liste oben angegeben@schedule the execution of profiles as declared in the list abovescheduleDialogSetzen Sie diesen Wert auf -1, damit die Aufgabe stndlich durchgefhrt wird9set this value to -1 for the schedule to occur every hourscheduleDialog*berspringe kritische skip criticalscheduleDialogtestscheduleDialogteas in 21st daystscheduleDialogteas in 31st daystscheduleDialogtethscheduleDialogteas in 10th daythscheduleDialogteas in 11th daythscheduleDialogteas in 12th....19th daythscheduleDialogteas in 20th daythscheduleDialogteas in 24th...30th daythscheduleDialogte as in 8th daythscheduleDialogte as in 9th daythscheduleDialog2Uhrzeit (Stunde : Minute)time (hour:min) :scheduleDialog@Derzeitige Crontab-Datei ansehenview current crontabscheduleDialog^Ein Profil mit gleichem Namen existiert bereits+A profile with the same name already exists textDialogXSind Sie sicher, dass sie fortfahren wollen?#Are you sure you wish to proceed ?? textDialogVORSICHT, wenn es Ihre Absicht ist, NICHT die Quelle zum Ziel zu klonen!BBEWARE, if your intention is NOT to clone source to destination !! textDialogAbbrechenCancel textDialogLKopiere Kommando in die ZwischenablageCopy command to clipboard textDialogNZeige dies nie wieder fr diese Aufgabe$Do not show this again for this task textDialog(Passphrase eingeben:Enter passphrase : textDialog$Passwort eingeben:Enter pasword : textDialog\Geben Sie einen Namen fr das neue Profil ein:#Enter the name of the new profile : textDialog\Geben Sie einen Namen fr das neue Profil ein:#Enter the new name of the profile : textDialogNeinNo textDialogOkayOkay textDialogNBitte geben Sie einen anderen Namen einPlease enter a different name textDialog&Profilbeschreibung:Profile description : textDialogJaYes textDialogSie haben "Sicherung der Inhalte des Quell-Verzeichnisses"<br>zusammen mit der Option "lsche Dateien im Ziel" ausgewhltYou have selected to "Backup the contents of the source directory"
together with the "delete files on the destination" option textDialog$E-Mail-InformationeMail information textDialogluckyBackup luckyBackup textDialogAbbrechenCancel winDialogdGeben Sie den vollen Pfad zum cygpath-Kommando ein*Enter the full path of the cygpath command winDialog`Geben Sie den vollen Pfad zum dosdev-Kommando an)Enter the full path of the dosdev command winDialogpDen vollstndigen Pfad des Luckybackup-Verzeichnisses an0Enter the full path of the luckybackup directory winDialog^Geben Sie den vollen Pfad zum rsync-Kommando an(Enter the full path of the rsync command winDialogZGeben Sie den vollen Pfad zum SSH-Kommando an&Enter the full path of the ssh command winDialogxGeben Sie den volen Pfad zum Zwischenspeicher-Verzeichnis an.Enter the full path of the temporary directory winDialoghGeben sie den vollen Pfad zum vshadow-Verzeichnis an,Enter the full path of the vshadow directory winDialog6Ausfhrbare Dateien (*.exe)Executable Files (*.exe) winDialogOkayOkay winDialogFWhlen Sie das cygpath-Kommando ausSelect cygpath command winDialogDWhlen Sie das dosdev-Kommando ausSelect dosdev command winDialog0Whle rsync-Kommando ausSelect rsync command winDialog,Whle SSH-Kommando ausSelect ssh command winDialog*Benutze Standard-WertUse default value winDialog"lokal durchsuchenbrowse locally winDialogcygpath:cygpath: winDialog*Deklaration der Pfadedeclaration of paths winDialogdosdev:dosdev: winDialogluckyBackup luckyBackup winDialog"Hauptverzeichnis: main dir: winDialog rsync:rsync: winDialogssh:ssh: winDialog"Zwischenspeicher: temp dir: winDialog(vshadow-Verzeichnis: vshadow dir: winDialogluckybackup-0.5.0/translations/luckybackup_en.qm0000666000175000017500000000051213157502317021462 0ustar luckybluckyb;iEnglishEnglishluckyBackupWindowEnglishDo not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu.EnglishluckyBackupWindowluckybackup-0.5.0/translations/luckybackup_de.ts0000666000175000017500000072073313165410113021466 0ustar luckybluckyb CalcDiffThread Scanning destination Scanne Ziel Please wait Bitte warten Scanning snapshot Scanne Schnappschuss Scanning source Scanne Quelle Calculating differences Kalkuliere Unterschiede Sync dir A & B differences Synchronisiere Verzeichnis A & B Unterschiede Snapshot and source differences Schnappschuss und Quell-Unterschiede Sync dir B data that also exists at sync dir A and is different Sychronisiere Verzeichnis B Daten welche genauso existieren im Verzeichnis A und unterschiedlich sind Snapshot data that also exists at the source and is different Schnappschuss Daten welche ebenso in der Quelle existieren und sich unterscheiden The snapshot data will replace the source data during RESTORE Die Schnappschussdaten werden die Quell-Daten ersetzen während der WIEDERHERSTELLUNG Data amount is huge. Displaying only first entries Die Datenmenge ist groß. Zeige nur die ersten Einträge Sync dir B data that do NOT exist at sync dir A Synchronisations Verzeichnis B Daten welche NICHT existieren im Synchronisationsverzeichnis A Snapshot data that do NOT exist at the source Schnappschuss Daten welche NICHT in der Quelle existieren These will be transferred over at the source during RESTORE These will be transfered over at the source during RESTORE Diese werden übertragen zur Quelle während der WIEDERHERSTELLUNG Sync dir A data that do NOT exist at sync dir B Synchronisations Verzeichnis A daten welche NICHT existieren im Synchronisations Verzeichnis B Source data that do NOT exist at the snapshot Quell-Daten welche NICHT im Schnappschuss existieren These will be deleted during RESTORE only if you enable the option: Diese werden nur gelöscht während der WIEDERHERSTELLUNG, when Sie die Option einschalten: delete existing source data that do not exist at the backup Lösche existierende Quell-Daten welche nicht in der Sicherung existieren QObject The task list is empty Die Aufgabenliste ist leer nothing to start nichts zu starten You have included both of the following connected tasks: Sie haben beide der im Folgenden angeschlossenen Aufgaben eingefügt: this is not allowed for obvious reasons dies ist aus offensichtlichen Gründen nicht erlaubt Please <b>uncheck appropriate include boxes</b> before proceeding Bitte <b>deaktiviere geeignete Optionen</b> vor dem Fortsetzen You have not included any tasks Sie haben keine Aufgaben eingefügt The following included tasks <b>share the same destination directory</b> (all together or at groups) and at least one of them will backup the contents of a directory Die folgenden beinhalteten Aufgaben <b>teilen sich das gleiche Zielverzeichnis</b> (alle zusammen oder in Gruppen) und wenigstens einer von denen wird den Inhalt eines Verzeichnisses sichern this will lead to one task canceling the other das wird dazu führen, dass eine Aktion die andere abbricht Please uncheck appropriate include boxes or change all task types to other than '<b>Backup dir contents</b>' or use 'Backup dir contents' together with the '<b>Only include</b>' option, before proceeding Bitte deaktive passende Optionen oder ändere alle Aufgabentypen anders als '<b>Sichere Verzeichnisinhalte</b>' oder benutze 'Sichere Verzeichnisinhalte' zusammen mit der'<b>Nur beinhaltet</b>' Option, vor dem Fortsetzen pre-task execution of command Full phrase: pre-task execution of command: <COMMAND> starting Ausführung des Kommandos vor der Aufgabe starting Full phrase: pre-task execution of command: <COMMAND> starting startet Command re-run due to failure This means that a specific command is run for once more because it failed the first time Kommando erneut ausführen wegen einem Fehler post-task execution of command Full phrase: post-task execution of command: <COMMAND> starting Ausführung des Kommandos nach der Aufgabe starting Full phrase: post-task execution of command: <COMMAND> starting Start execution of task Full phrase: execution of task: <TASKNAME> starting Ausführung der Aufgabe starting Full phrase: execution of task: <TASKNAME> starting startet Source Full phrase: source: <SOURCE_NAME Quelle Destination Full phrase: Destination: <DEST_NAME Ziel execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> starting Ausführung des 1. Teils der Aufgabe starting Full phrase: execution of 1st part of task: <TASKNAME> starting startet Syncing Full phrase: Syncing <DIR-A> to <DIR-B> Sychronisiere to Full phrase: Syncing <DIR-A> to <DIR-B> zu execution of 2nd part of task Full phrase: execution of 2nd part of task: <TASKNAME> starting Ausführung des 2. Teils der Aufgabe starting Full phrase: execution of 2nd part of task: <TASKNAME> starting startet Syncing Full phrase: Syncing <DIR-B> to <DIR-A> Sychronisiere to Full phrase: Syncing <DIR-B> to <DIR-A> zu pre-task execution of command Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished Ausführung des Kommandos vor der Aufgabe finished Full phrase: pre-task execution of COMMAND: <COMMANDNAME> finished beendet post-task execution of command Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished Ausführung des Kommandos nach der Aufgabe finished Full phrase: post-task execution of COMMAND: <COMMANDNAME> finished beendet execution of 1st part of task Full phrase: execution of 1st part of task: <TASKNAME> finished Ausführung des 1. Teils der Aufgabe finished Full phrase: execution of 1st part of task: <TASKNAME> finished beendet execution of task Full phrase: execution of task: <TASKNAME> finished Ausführung der Aufgabe finished Full phrase: execution of task: <TASKNAME> finished beendet execution of task Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error Ausführung der Aufgabe finished because of pre/post task command execution error Full phrase: execution of task: <TASKNAME> finished because of pre/post task command execution error beendet wegen Auführungsfehlers eines Kommandos vor/nach der Aufgabe The process reported an error Der Prozess meldete einen Fehler Backing-up profile, logfiles and snapshot data Sichere Profile, Logdateien und Schnappschuss-Daten Could not open the logfile Konnte die Logdatei nicht öffnen The logfile does not exist Die Logdatei existiert nicht The specified command is probably not installed Das spezifische Kommando ist vermutlich nicht installiert The logfile could not be created Die Logdatei konnte nicht angelegt werden command: Kommando: exit code: Fehlercode: output: Ausgabe: Last execution time Letzte Ausführungszeit not available nicht verfügbar no errors keine Fehler errors found Fehler gefunden status Status OK OK Sync directory Synchronisationsverzeichnis Source directory Quellverzeichnis Using remote, check is skipped Verwende entferntes, Prüfung wurde übersprungen Destination directory Zielverzeichnis free as in free disk space frei WARNING WARNUNG I do not have the permission to read/enter sync directory A Ich habe nicht die Berechtigung das Synchronisations-Verzeichnis A zu lesen/betreten I do not have the permission to read/enter the source directory Ich habe nicht die Berechtigung das Quellverzeichnis zu lesen/betreten I do not have the permission to read/enter sync directory B Ich habe nicht die Berechtigung das Synchronisations-Verzeichnis B zu lesen/betreten I do not have the permission to read/enter the destination directory Ich habe nicht die Berechtigung das Zielverzeichnis zu lesen/betreten Directory Verzeichnis and/or und/oder does not exist existiert nicht is not mounted ist nicht eingehängt is empty or does not exist ist leer oder existiert nicht I will <font color=red><b>NOT SKIP</b></font> this task because you have enabled the "by-pass WARNING" option Ich werde diese Aufgabe <font color=red><b>NICHT ÜBERSPRINGEN</b></font>, weil Sie die "umgehe WARNUNG"-Option eingeschaltet haben This task will be <font color=red><b>skipped</b></font> Die Aufgabe wird <font color=red><b>übersprungen</b></font> CRITICAL KRITISCH is empty ist leer I will <font color=orange><b>not skip</b></font> this task. Synchronizing is going to be performed anyway Ich werde <font color=orange><b>diese Aufgabe</b></font> nicht überspringen. Die Synchronisierung wird trotzdem ausgeführt This task will <font color=orange><b>not be skipped Diese Aktion wird <font color=orange><b>nicht übersprungen werden The Destination Directory will be created if it doesn't exist and filled with new backup data Das Zielverzeichnis wird erstellt, wenn es nicht existiert und mit neuen Sicherungsdaten gefüllt Task description Aufgabenbeschreibung ReadLogFile Could not locate the logfile Could not open the logfile Konnte die Logdatei nicht öffnen aboutDialog using Qt4 Benutzt QT4 Backup & Sync Application Backup- & Synchronisation-Anwendung Loukas Avgeriou Loukas Avgeriou It 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. Das Programm wurde verteilt in der Hoffnung, dass es nützlich sei, aber OHNE IRGENDEINE GARANTIE; selbst ohne die implizierte Zusicherung allgemeiner GEBRAUCHSTAUGLICHKEIT oder die TAUGLICHKEIT FÜR EINEN BESTIMMTEN ZWECK. See the 'License Agreement' tab for more details. Siehe Reiter "Lizenzabkommen" für weitere Details. Athens, Greece Athen, Griechenland Tom Tryfonidis Tom Tryfonidis Arch linux package/pkgbuild official maintainer (AUR) Offizieller Verwalter (AUR) des Arch Linux package/pkgbuild Valuable advisor Wertvoller Beirat Yiorgos Kapellakis Yiorgos Kapellakis rpm packager, valuable tester and remote connections advisor RPM-Paket-Ersteller, wertvoller Tester und Helfer bei Fernverbindungen Patrick Matthaei Patrick Matthaei Debian package maintainer Debian-Paket-Verwalter Nikolas Poniros Nikolas Ponirosv Greek gui translator and valuable tester Übersetzer der griechischen Benutzeroberfläche und wertvoller Tester The indifex team Das Indifex-Team for developing the wonderful transifex localization platform and providing it for free für die Entwicklung der wundervollen Lokalisierungs-Plattform "Transifex" und deren kostenfreien Bereitstellung Stephan Kleine Stephan Kleine OpenSUSE package maintainer (KDE4 Community repo) and valuable packing advisor OpenSUSE-Paket-Verwalter (KDE4 Community repo) und wertvoller Pack-Beirat Marcos Del Puerto Garcia Marcos Del Puerto Garcia Mepis package maintainer (Community repo) & Spanish gui translator Mepis-Paket-Verwalter (Community repo) & Übersetzer der spanischen Benutzeroberfläche Savvas Radevic Savvas Radevic ubuntu package maintainer (launchpad PPA) Ubuntu-Paket-Verwalter (launchpad PPA) Bruce Marriner Bruce Marriner port to MS Windows Portierung auf MS Windows Juan Ramon Alfaro Martinez Juan Ramon Alfaro Martinez Code contributor for remote & vss support regarding the windows port Beitragender von Code für die Unterstützung von entfernten Rechnern und VSS bei der Windows-Portierung loh.tar Code contributor for important fixes, structure improvement and port to Qt5 Jack Fink Jack Fink port to Mac OS X Portierung auf Mac OS X Elbert Pol Elbert Pol port to OS/2 Portierung auf OS/2 Theo Chatzimichos Theo Chatzimichos Gentoo ebuild maintainer Gentoo-ebuild-Verwalter Dimitris Stasinopoulos Dimitris Stasinopoulos Puppy pet & sfs maintainer Puppy-pet- und -sfs-Verwalter Juan Luis Baptiste Juan Luis Baptiste Mandriva package maintainer (official contrib repo) Mandriva-Paket-Verwalter (official contrib repo) Michael J Gruber Michael J Gruber Jason E. Hale Jason E. Hale Free BSD package maintainer Free BSD-Paket-Verwalter Dimitris Jemos Dimitris Jemos Slackel package maintainer Slackel-Paket-Verwalter ex Fedora package maintainer ehemaliger Fedora-Paket-Verwalter Pavel Fric Pavel Fric Czech gui translator Übersetzer der tschechischen Benutzeroberfläche Stergios Prosiniklis Stergios Prosiniklis Greek manual translator Übersetzer des griechischen Handbuchs German gui translator Übersetzer der deutschen Benutzeroberfläche Wilfried Schobel Wilfried Schobel Sergio Gameiro Sergio Gameiro Portuguese gui translator Übersetzer der portugisischen Benutzeroberfläche Marcio Moraes Marcio Moraes Julien Cynober Julien Cynober French gui translator and valuable packing advisor (and not only) Übersetzer der französischen Benutzeroberfläche und wervoller Pack-Ratgeber (aber nicht nur) Raffaele Raffaele Italian gui translator Übersetzer der italienischen Benutzeroberfläche using Qt António Correia Aurelien Merckel Aurelien Merckel Denis Skorski Denis Skorski Russian gui translator and valuable tester Übersetzer der russischen Benutzeroberflächer und wertvoller Tester Kenny Verstraete Kenny Verstraete Dutch gui translator Übersetzer der niederländischen Benutzeroberfläche Martin Grashoff (linuxrev) Martin Grashoff (linuxrev) Subhi Honaco Subhi Honaco Bosnian gui translator & mandriva package maintainer Übersetzer der bosnischen Benutzeroberfläche & Mandriva-Paket-Verwalter Majed Sahli Majed Sahli Arabic gui translator Übersetzer der arabischen Benutzeroberfläche Adrian Murariu Adrian Murariu Romanian gui translator Übersetzer der rumänischen Benutzeroberfläche Angelescu Constantin Romanian gui reviewer & translator Roger Calvo Roger Calvo Tomas Vadina Tomas Vadina Marcos Lans Javi Romero Javi Romero v0.3 gui designer Designer der v0.3-Benutzeroberfläche fri13 fri13 v.0.3 gui designer Designer der v0.3-Benutzeroberfläche Dimitris Kalamaras Dimitris Kalamaras If it wasn't him and his tutorials I would never have started this project Ohne ihn und seine Anleitungen hätte ich dieses Projekt niemals begonnen Thomas Glatt Thomas Glatt French gui translator Übersetzer der französischen Benutzeroberfläche Sébastien Bourgain Sébastien Bourgain pinguinofurioso pinguinofurioso Alessio Ganci Alessio Ganci Matej Urbančič Matej Urbančič Marvin Gomez Marvin Gomez Spanish gui translator Übersetzer der spanischen Benutzeroberfläche Antonio Jose Molina Antonio Jose Molina Fredrik Holmgren Fredrik Holmgren Swedish gui translator Übersetzer der schwedischen Benutzeroberfläche Catalan gui translator Übersetzer der katalanischen Benutzeroberfläche Slovak gui translator Übersetzer der slowakischen Benutzeroberfläche Rivo Zangov Rivo Zangov Estonian gui translator Übersetzer der estnischen Benutzeroberfläche Nicolay Boychev Nicolay Boychev Bulgarian gui translator Übersetzer der bulgarischen Benutzeroberfläche Manuel Meixide Manuel Meixide Galician gui translator Übersetzer der galizischen Benutzeroberfläche Roger Foss Roger Foss Norwegian gui translator Übersetzer der norwegischen Benutzeroberfläche Pin-hsien Li Pin-hsien Li Chinese (Taiwan) gui translator Übersetzer der chinesischen (Taiwan) Benutzeroberfläche Axel Rousseau Esperanto gui translator Omar Anwar Michele Dall'Arno Michele Dall'Arno special guest bug killer ;) Spezieller Gast Bug Killer ;-) Aphofis Scott Aphofis Scott valuable tester & brainstorming specialist Wertvoller Tester & Brainstorming-Spezialist Yuri Vidal Yuri Vidal backupwhenidle python script developer Entwickler des backupwhenidle Python-Skriptes Bjorn Rietdijk Bjorn Rietdijk valuable OS/2 and windows tester wertvoller OS/2- und Windows-Tester ...to all users of the ...an alle Benutzer der forums for their support. Foren für deren Unterstützung. Especially Insbesondere that contributed to this project one way or another die zu diesem Projekt auf die ein oder andere Weise beigetragen haben Last but no least Zu guter Letzt Could not locate the license file Kann die Lizenzdatei nicht finden no money Kein Geld If you like this app and would like to donate something to me personally, all you have to do is: Wenn Sie diese Anwendung mögen und mir persönlich etwas zurückgeben wollen, ist alles, was Sie tun müssen: Give a thumbs up at: Eine positive Bewertung auf: Vote good & become a fan at: Eine gute Bewertung abgeben & ein Fan werden auf: This is my reward :) Diese ist mein Belohnung :) money Geld I personally never had and never will accept money for this project. Weder habe ich selbst in der Vergangenheit Geld für dieses Projekt angenommen noch werde ich es in Zukunft. Nevertheless, I decided to use luckyBackup to support people that really need financial help. Trotzdem entschied ich, luckyBackup zu nutzen, um Leute zu unterstützen, die wirklich finanzielle Hilfe benötigen. So, please consider it seriously to donate money that will eventually be used for a good cause. Ziehen Sie es also durchaus einmal in Betracht, Geld zu spenden, das letztendlich für einen guten Zweck verwendet wird. donation link Spendenlink luckyBackup - about Über luckyBackup close schließen &About &Über <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support &Unterstützung A&uthor A&uthor &Thanks to &Danksagung an &License Agreement &Lizenzabkommen luckyBackup is distributed under the terms of the <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> Please leave the tags <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank"> & </a> intact and surrounding the GNU General Public License !! luckyBackup wird veröffentlicht unter den Bestimmungen der <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">GNU General Public License</a> It is <b>free software</b>: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License. Please leave tags eg <b>, </b> intact and surrounding the words they are suppossed to !! Es ist <b>freie Software</b>: Sie können sie weiter verteilen und/oder modifizieren unter den Bestimmungen der GNU General Public License, herausgegeben von der Free Software Foundation, Version 3 der Lizenz. Thomas Janssen Thomas Janssen Fedora package maintainer (official repo) Fedora-Paket-Verwalter (official contrib repo) Karsten Jaschultowski Karsten Jaschultowski Francesco Braile Francesco Braile Andrej Znidarsic Andrej Znidarsic Slovenian gui translator Übersetzer der slowenischen Benutzeroberfläche E. Hakan Duran E. Hakan Duran Turkish gui translator Übersetzer der türkischen Benutzeroberfläche Tito Poquito Tito Poquito slackware package maintainer (SlackBuilds Repository) Slackware-Paket-Verwalter (SlackBuilds Repository) ...my other half, <b>Dimitra</b> that bears with me all these times that this project is under development ...meine bessere Hälfte, <b>Dimitra</b>, die mich entbehrt und erträgt, wenn Änderungen an dem Projekt anstehen. emailDialog luckyBackup - email luckyBackupy - email Email a report after profile execution Per Email einen Bericht nach Profilausführung senden command: Kommando: Use default This means "use the default value for this field" Standardwerte verwenden Arguments Argumente %f from: %f von: Enter the sender of the message Trage Sie den Absender der Nachricht ein %l logfile %l Logdatei %c logfile.tar.gz %c logfile.tar.gz %d date %d Datum %i time %i Zeit %p profile name %p Profilename %e No of errors %e Anzahl der Fehler If unchecked "TLS auto" is used. Only available for sendemail Wenn nicht markiert, wird "TLS auto" verwendet. Nur verfügbar für sendemail Disable TLS TLS deaktivieren %t to: %t an: Enter the recipient of the message Geben Sie den Empfänger der Nachricht ein %s subject: %s Betreff: Enter the subject of the message Geben Sie den Betreff der Nachricht ein %v smtp server: %v smtp Server: Enter the smtp server used to send the message Gebe den SMTP-Server zum Senden der Nachricht ein %b body: %b Text: Enter the body of the message Gebe den Text der Nachricht ein Send an email right now to test the provided arguments Sende jetzt eine Email, um die angegeben Argumente zu testen Test Test Accept changes and close dialog Akzeptiere Änderungen und schließe Dialog Okay Okay Close dialog Schließe Dialog Cancel Abbrechen Specify the conditions to send an email Geben Sie die Bedingungen an, wann eine Email versandt werden soll Enter the command to run eg sendemail Geben Sie einen Befehl auf, der aufgerufen werden soll z.B. sendemail arguments: Argumente: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Geben Sie die Argumente für den E-Mail-Befehl ein z.B. -f %f -t %t -u "%s" -m "%b" -a %l -s %v Conditions Bedingungen Only send when error(s) occurred during a run Sende nur, wenn Fehler während eines Durchlaufs auftraten Error(s) occurred Fehler ist aufgetreten Only send when profile is scheduled to run Sende nur, wenn ein Profil zur Auführung geplant ist Profile is scheduled Profil ist geplant Never send an email Sende niemals eine Email Never Niemals The command field is empty Das Kommandofeld ist leer helpBrowser luckyBackup - help luckyBackup - Hilfe manual/ Handbuch/ Okay Okay logDialog luckyBackup - tasks execution progress luckyBackup - Fortschritt bei der Ausführung der Aufgaben <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> previous error Vorheriger Fehler next error Nächster Fehler close schließe loading logfile... Lade Logdatei... wait warte luckyBackupWindow commands output output window label Kommandoausgabe rsync and pre/post task commands output is displayed here tooltip Die Ausgabe von rsync und Vorher-/Nachher-Aufgaben-Kommandos wird hier angezeigt Task list task list label Aufgabenliste List of all the available tasks task list tooltip - line1 Liste aller möglichen Befehle Use the 'include checkboxes' to include or not a selected task task list tooltip - line2 Benutze die "Optionen hinzufügen" um eine Aufgabe einzufügen oder nicht Execution of profile full phrase: 'Execution of profile <PROFILENAME> finished' Ausführung des Profils finished full phrase: 'Execution of profile <PROFILENAME> finished' beendet simulation mode Simulations-Modus Could not update last execution time of tasks Konnte nicht die letzte Ausführungszeit der Ausgaben aktualisieren Last execution time of tasks updated Letzte Ausführungszeit der Aufgaben aktualisiert &Abort &Abbrechen &Minimize to tray tray menu action &Minimiere zum tray &Restore tray menu action &Wiederherstellen execution of profile: tray message - execution of profile: <PROFILENAME> in progress... Ausführung des Profils: in progress... tray message - execution of profile: <PROFILENAME> in progress... in Bearbeitung... Removed all older snapshots data Alle älteren Schnappschussdaten wurden entfernt failed to remove all older snapshots data Entfernen aller älteren Schnappschussdaten fehlgeschlagen Unknown error Unbekannter Fehler Elapsed time Vergangene Zeit pre-task execution of command Ausführung des Kommandos vor der Aufgabe post-task execution of command Ausführung des Kommandos nach der Aufgabe Now performing task Aufgabe nun ausführen Directory Verzeichnis calculating kalkuliere deleting files lösche Dateien Total files transferred trying to send an email versuche eine Email zu senden The system will shutdown in 1 minute Das System wird in einer Minute heruntergefahren Source Quelle Destination Ziel All tasks completed Alle Aufgaben abgeschlossen No errors found Keine Fehler gefunden errors found Fehler gefunden logfile(s) have been created under directory: Logdatei(en) sind in folgendem Verzeichnis erzeugt worden: Done Fertig execution of profile: Ausführung des Profils: finished beendet Execution of tasks were terminated violently by user Ausführung von Aufgaben wurdn gewaltsam vom Benutzer beendet &Profile This is a top menu item &Profile &Settings This is a top menu item &Einstellungen &Language This is a top menu item &Sprache &Help This is a top menu item &Hilfe &Handbook full phrase: 'luckyBackup Handbook' &Handbuch &About full phrase: 'about luckyBackup' &Über current profile Aktuelles Profil include label of 'include' checkboxes Einfügen Move the highlighted task up, by one position button tooltip Die markierte Aufgabe um eine Position nach oben bewegen Move the highlighted task down, by one position button tooltip Die markierte Aufgabe um eine Position nach oben bewegen jump to next error button tooltip Springe zum nächsten Fehler jump to previous error button tooltip Springe zum vorherigen Fehler Task task groupbox (add, remove, modify buttons) label Aufgabe add add task button label hinzufügen add task add task button tooltip Aufgabe hinzufügen remove remove task button label entfernen remove highlighted task remove task button tooltip Markierte Aufgabe entfernen modify modify task button label bearbeiten modify highlighted task modify task button tooltip Markierte Aufgabe bearbeiten Begin the execution of all included tasks start button tooltip Starte die Ausführung aller selektierten Aufgaben NOTE simulation checkbox tooltip - line2 ACHTUNG Progressbar update will not be realistic simulation checkbox tooltip - line2 Der Fortschrittsanzeige wird nicht der Realität entsprechen Information window information window title Informationsfenster Exit exit button tooltip. full phrase is: 'exit luckybackup' Beenden EXIT EXIT button label Beenden minimize to tray minimiere in das Systemtray minimizes the window to the tray area minimiert das Fenster in das Systemtray F1 F1 English Deutsch &%1 %2 &%1 %2 You have asked for a RESTORE task to be created 'create restore' message line 1/4 Sie wollen eine WIEDERHERSTELLUNGS-AKTION anlegen Please have a good look at the following task properties dialog 'create restore' message line 2/4 Bitte schauen Sie beim folgenden "Aktionseigenschaften"-Dialog genau hin and change anything you wish before proceeding 'create restore' message line 3/4 und vor der Ausführung alles nach Wunsch ändern Especially check 'Task name', 'source', 'destination' & 'skip newer destination files' checkbox (advanced) 'create restore' message line 4/4 Prüfe speziell "Aufgaben Name", "Quelle", "Ziel", & "überspringe-neuere-Ziel-Dateien" Checkbox (Erweitert) ERROR FEHLER loading default profile ... information window message Lade Standardprofil ... loading profile ... information window message lade Profil ... loading failed information window message Laden fehlgeschlagen Unable to open profile information window message. full phrase is 'Unable to open profile <PROFIENAME>' Öffnen des Profils nicht möglich is not valid for information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y ist nicht gültig für version: information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y Version: profile info window message. full phrase: 'profile <PROFILENAME> loaded successfully' Profil loaded successfully info window message. full phrase: 'profile <PROFILENAME> loaded successfully' erfolgreich geladen scheduled this refers to a profile Geplant YES JA NO NEIN Description Beschreibung saving default profile ... Information window message sichere Standardprofil ... saving profile ... Information window message sichere Profil ... WARNING WARNUNG default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be saved'. Standardprofil profile Information window message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil profile Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' Profil saved successfully Information window message. Full phrase: 'profile <PROFILENAME> saved successfully' erfolgreich gesichert creating default profile ... Information window message erzeuge Standardprofil ... creating profile ... Information window message erzeuge Profil ... profile Information window message. Full phrase: 'profile <PROFILENAME> created successfully' Profil created successfully Information window message. Full phrase: 'profile <PROFILENAME> created successfully' erfolgreich angelegt Would you like to save it before proceeding ? Wollen Sie es vor dem Fortfahren sichern? Would you like to proceed anyway? Wollen Sie trotzdem weitermachen? super user super user is the root user Super-User super user mode Super-User-Modus Welcome to full phrase: 'Welcome to luckyBackup' Willkommen zu English Do not translate this. Enter here the language of the translation in native characters instead. This is how your translation will appear under the 'language' menu. Deutsch Failed to create new profile full phrase: 'Failed to create new profile <PROFILENAME>' Fehler beim Erzeugen des Profils The name you have entered contains only invalid characters Der Name, den Sie eingegeben haben, enthält unzulässige Zeichen Profile full phrase: 'Profile <PROFILENAME> already exists' Profil already exists full phrase: 'Profile <PROFILENAME> already exists' existiert bereits Would you like to replace it ? Wollen Sie es ersetzen? Failed to replace profile full phrase: 'Failed to replace profile <PROFILENAME>' Fehler beim Ersetzen des Profils Failed to rename profile full phrase: 'Failed to rename profile <PROFILENAME>' Fehler beim Umbenennen des Profils profile full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' Profil renamed successfully to full phrase: 'profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' erfolgreich umbenannt in default profile full phrase: 'default profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>'. Standardprofil renamed successfully to full phrase: '(default) profile <PROFILENAME> renamed successfully to <NEWPROFILENAME>' erfolgreich umbenannt in All relevant files (logs etc) have also been updated Alle relevanten Dateien (Logs etc) wurden ebenso aktualisiert Failed to update all relevant files (logs etc) Aktualisierung aller relevanten Dateien (Logs etc) fehlgeschlagen Are you sure you want to delete the default profile full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' Sind Sie sicher, dass Sie das folgende Standardprofil löschen wollen a new blank one, with the same name, will be created full phrase: 'Are you sure you want to delete the default profile: <PROFILENAME> ? (a new blank one, with the same name, will be created)' eine neues leeres, mit demselben Namen, wird erzeugt Are you sure you want to delete profile full phrase: 'Are you sure you want to delete profile: <PROFILENAME> ?' Sind Sie sicher, dass Sie folgendes Profil löschen wollen Failed to delete profile full phrase: 'Failed to delete profile <PROFILENAME>' Fehler beim Löschen des Profils Profile full phrase: 'Profile <PROFILENAME> deleted successfully' Profil deleted successfully full phrase: 'Profile <PROFILENAME> deleted successfully' wurde erfolgreich gelöscht All relevant files (logs etc) have also been deleted Alle relevanten Dateien (Logs usw.) wurden ebenso gelöscht Failed to delete all relevant files (logs etc) Löschen aller relevanten Dateien (Logs usw.) fehlgeschlagen Profile full phrase: 'Profile <PROFILENAME> set as default' Profil set as default full phrase: 'Profile <PROFILENAME> set as default' als Standard verwenden All relevant files (logs etc) have also been duplicated Alle relevanten Dateien (Logs usw.) wurden ebenso dupliziert Failed to duplicate all relevant files (logs etc) Duplizieren aller relevanten Dateien (Logs usw.) fehlgeschlagen The description of profile full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' Die Beschreibung des Profils set to full phrase: 'The description of profile <PROFILENAME> set to: <DESCRIPTION>' lautet Please check 'Task name', 'source', 'destination' and especially the 'Delete files on the destination'' & 'skip newer destination files' check-boxes (advanced) 'create restore' message line 4/4 Import Profile this is a dialog title Importiere Profil Failed to import profile full phrase: 'Failed to import profile <PROFILENAME>' Fehler beim Importieren des Profils Profile full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' Profil imported successfully full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' wurde erfolgreich importiert as full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' als and added at the profile list full phrase: 'Profile <PROFILENAME> imported successfully as <NEWPROFILENAME> and added at the profile list' und zur Profilliste hinzugefügt Could not locate the file full phrase: 'Could not locate the file <FILENAME>' Konnte die Datei nicht finden You have reached the maximum limit of supported tasks Sie haben das Maximum an unterstützten Aufgaben erreicht You have to remove a task if you wish to add another !! Sie müssen erst eine Aufgabe entfernen, wenn Sie eine andere hinzufügen wollen! Select export directory this is a dialog title for selecting a directory to export a profile to Wähle Export-Verzeichnis Failed to export profile full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' Fehler beim Exportieren des Profils to full phrase: 'Failed to export profile <PROFILENAME> to <DIRNAME>' nach Profile full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' Profil exported successfully to full phrase: 'Profile <PROFILENAME> exported successfully to <DIRNAME>' erfolgreich exportiert nach The directory you have selected does not contain valid profile data Das von Ihnen gewählte Verzeichnis enthält keine gültigen Profil-Daten Errors occurred during snapshots and logfiles transfer Beim Übertragen der Schnappschüsse und Logdaten sind Fehler aufgetreten Errors occurred during snapshots transfer Beim Übertragen der Schnappschüsse sind Fehler aufgetreten Errors occurred during logfiles transfer Beim Übertragen der Logdaten sind Fehler aufgetreten Errors occurred during the profile file transfer Beim Übertragen der Profildaten sind Fehler aufgetreten Please select a task to modify first Bitte wählen Sie zuerst eine Aufgabe zum Bearbeiten Please select a task to remove first Bitte wählen Sie zuerst eine Aufgabe zum Entfernen Are you sure you want to remove the following task ?? Sind Sie sicher, das Sie die folgende Aufgabe entfernen wollen?? Would you like to also remove: Wollen sie auch noch folgendes löschen: Please select a task to manage first Bitte wählen Sie zuerst eine Aufgabe zum Bearbeiten nothing to do nichts zu tun current crontab <font color=green>updated successfully Momentaner crontab <font color=green>updated successfully Email preferences have been <font color=green>updated successfully Email-Einstellungen wurden <font color=green>erfolgreich aktualisiert status Status NOT INCLUDED NICHTS BEINHALTET Checks are disabled. This task will be <b>skipped</b> Prüfungen sind abgeschaltet. Diese Aufgabe wird <b>übersprungen</b> Task list of profile full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' Aufgabenliste des Profils and 'profile' drop-down list full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' und die "Profil"-Auswahlliste refreshed full phrase: 'Task list of profile <PROFILENAME> and 'profile' drop-down list refreshed' wurden erneuert luckyBackup luckyBackup Ctrl+S Strg+S Information window Informationsfenster CheckBox CheckBox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Profile &Profil Ctrl+N Strg+N Ctrl+X Strg+X Ctrl+D Strg+D F5 F5 Aborting: Please wait for all processes to be killed Abbruch: Bitte warten Sie, bis alle Prozesse beendet wurden Removing old snapshots and logfiles of task info message displayed during ...data removal Full phrase: Removing old snapshots and logfiles of task: <TASKNAME> Entferne alte Schnappschüsse and Logdateien der Aufgabe Removing Entferne failed to remove Entfernen fehlgeschlagen Failed to start this refers to a process Start fehlgeschlagen Crashed this refers to a process Abgestürzt Timed out this refers to a process Wartezeit überschritten Write error this refers to a process Schreibfehler Read error this refers to a process Lesefehler Unknown error this refers to a process Unbekannter Fehler calculating info message displayed during ...calculations kalkuliere transferring files info message displayed during ...file transfers Übertrage Dateien deleting files info message displayed during ...file deletions Lösche Dateien transferring files Übertrage Dateien Total files transfered Dateien insgesammt übertragen ABORTED ABGEBROCHEN &Refresh This is a top 'Profile' menu action &Aktualisieren De&fault This is a top 'Profile' menu action Stan&dard Set as Default This is a top 'Profile' menu action tooltip Setze als Standard &View/Edit Description This is a top 'Profile' menu action Beschreibung ansehen/&bearbeiten View/Edit the profile description This is a top 'Profile' menu action tooltip Ansehen/Bearbeiten der Profilbeschreibung R&ename This is a top 'Profile' menu action U&mbenennen &Delete This is a top 'Profile' menu action &Löschen &New This is a top 'Profile' menu action &Neu &Save This is a top 'Profile' menu action &Sichern E&xport This is a top 'Profile' menu action E&xportieren &Import This is a top 'Profile' menu action &Importieren S&chedule This is a top 'Profile' menu action &Zeitplaner E&mail This is a top 'Profile' menu action E&mail Email report after profile execution This is a top 'Profile' menu action tooltip Emaile einen Bericht nach Profilausführung &Quit This is a top 'Profile' menu action &Beenden D&uplicate This is a top 'Profile' menu action D&uplizieren &Task This is a top menu action &Aufgabe &Add This is a top 'Task' menu action &Hinzufügen &Remove This is a top 'Task' menu action &Entfernen &Modify This is a top 'Task' menu action &Bearbeiten Create D&uplicate task This is a top 'Task' menu action Erzeuge D&uplikat der Aufgabe Create R&estore task This is a top 'Task' menu action Erzeuge &Wiederherstellung der Aufgabe Manage &Backup This is a top 'Task' menu action Verwalte &Sicherungen display - restore - delete existing backups of highlighted task This is a top 'Task' menu action tooltip Anzeigen - Wiederherstellen - Löschen von bestehenden Sicherungen der markierten Aufgabe Actions This is a top menu action Aktionen Current Profile This is a top menu action Aktuelles Profil Lock This is a top menu action. Refers to toolbars Verriegeln Show text under icons This is a top menu action Zeige Beschriftung unter den Symbolen &Toolbars This is a top menu item &Werkzeugleiste Set paths This is a top menu action Setze Pfade Set paths for rsync and ssh commands This is a top menu action tooltip Setze Pfade für rsync- und ssh-Kommandos quiet mode stiller Modus Only show errors and important messages during window update Zeige nur Fehler und wichtige Nachrichten während der Fenster-Aktualisierung Run start button label Ausführen Abort Abort button label Abbruch Stop the execution of running tasks NOW Abort button tooltip Stoppe die Ausführung der laufenden Aufgaben JETZT Execution of tasks finished Done button tooltip Ausführung der Aufgaben beendet Dry simulation checkbox label. Translate this as 'simulation' Simulation This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation checkbox tooltip - line1. Please leave tags <b> and </b> intact and surrounding 'simulation run' Es wird eine <b>Simulation durchgeführt,</b> welche keine Änderungen verursacht (und nahezu das gleiche Ergebnis produziert wie die reale Ausführung) shutdown shutdown button label Herunterfahren Press down to shutdown the system when done shutdown button tooltip Drücke um das System nach Beendigung herunterzufahren Hide information window show/hide information window button tooltip Verstecke Informationsfenster Show information window show/hide information window button tooltip Zeige Informationsfenster profile information window message. Full phrase is: 'profile <PROFILENAME> is not valid for luckybackup version:X.Y'. BEWARE of the whitespace in the end Profile The task list is empty Die Aufgabenliste ist leer Use the "add" button on the right to get started Please keep the add word inside quotes Verwende den "Hinzufügen"-Knopf rechts, um zu starten could not be saved Information window message. Full phrase: '(default) profile <PROFILENAME> could not be saved' konnte nicht gesichert werden default profile Information window message. Full phrase: 'default profile <PROFILENAME> could not be created'. Standardprofil could not be created Information window message. Full phrase: '(default) profile <PROFILENAME> could not be created' konnte nicht erzeugt werden Profile Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' Profil is modified Question dialog message. Full phrase: 'profile <PROFILENAME> is modified' wurde verändert Profile Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' Profil could not be saved Question dialog message. Full phrase: 'profile <PROFILENAME> could not be saved' konnte nicht gesichert werden profile Information window message. Full phrase: 'profile <PROFILENAME> could not be created'. Profil Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME>' Duplizieren des Profils fehlgeschlagen Failed to duplicate profile full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' Duplizieren des Profils fehlgeschlagen as full phrase: 'Failed to duplicate profile <PROFILENAME> as <FILENAME>' als Profile full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' Profil duplicated successfully as full phrase: 'Profile <PROFILENAME> duplicated successfully as <FILENAME>' erfolgreich dupliziert als Please select a task to duplicate first Bitte wählen Sie zuerst eine Aufgabe zum Duplizieren Please select a task first Bitte wählen Sie zuerst eine Aufgabe Hide information window hide/show information window button tooltip Verstecke Informationsfenster Show information window hide/show information window button tooltip Zeige Informationsfenster You have only included tasks that are going to be skipped Sie haben nur Aufgaben eingebunden, die übersprungen werden Manage Task This is a top 'Task' menu action Aufgabenverwaltung display information regarding highlighted task This is a top 'Task' menu action tooltip Zeige Informationen bezüglich der markierten Aufgabe &Task &Aufgabe Successfully created destination directory Erfolgreich erzeugtes Zielverzeichnis Failed to create destination directory Erzeugung des Zielverzeichnisses fehlgeschlagen manageDialog profile Profil task Aufgabe Delete Löschen Restore Wiederherstellen view log Siehe Logdatei destination: Ziel: source: Quelle: hide source Verstecke Quelle Close this window Schließe das Fenster Close Schließen Please select a snapshot from the list Information message Bitte wählen Sie einen Schnappschuss aus der Liste This directory does not exist Dieses Verzeichnis existiert nicht This directory does not exist Information message Dieses Verzeichnis existiert nicht I do not have sufficient permissions to read this directory Information message Ich habe nicht ausreichende Berechtigungen, um das Verzeichnis zu lesen sync dir A full phrase: sync dir a: <DIRECTORY_A> Synchronisationsverzeichnis A sync dir B full phrase: sync dir a: <DIRECTORY_b> Synchronisationsverzeichnis B View the logfile of the selected sync task 'view log' pushbutton tooltip Siehe Logdatei der gewählten Synchronisations-Aufgabe Please wait until the thread is terminated Bitte warten bis der Vorgang beendet wurde STOP STOP Stop calculations NOW Stoppe Kalkulationen JETZT Calculations terminated by user Kalkulationen beendet durch Anwender not available refers to a date-time nicht verfügbar luckyBackup - manage backup luckyBackup - Verwalte Sicherung Delete the selected snapshot and its logfile Den gewählten Schnappschuss und dessen Logdatei löschen Restore the selected snapshot Den gewählten Schnappschusses wiederherstellen View the logfile of the selected snapshot Logdatei der gewählten Schnappschusses ansehen Calculate the differences between the source and the selected snapshot Kalkuliere die Unterschiede zwischen Quelle und den gewählten Schnappschuss Calculate differences Kalkuliere Unterschiede manageWizard not available refers to a date-time nicht verfügbar Delete backup this is the title of a wizard Lösche Sicherung Date & time simple label of the wizard gui Datum & Zeit Path ...is a directory path Pfad WARNING WARNUNG You are about to delete backup data information message - line1 Sie sind dabei, Sicherungsdaten zu löschen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start' translated Wenn die vorhergehenden Informationen korrekt sind, klicken Sie auf <b>Start</b>, um zu beginnen Restore backup this is the title of a wizard Sicherung wiederherstellen Backup path ...is the backup directory path Sicherung-Pfad close Schließe Deleting snapshot logfile info message displayed during ...logfile deletion Lösche Schnappschuss-Logdatei Updating list of snapshots info message displayed during ...snaps list update Aktualisiere Liste der Schnappschüsse Aborted Abgebrochen Finished Beendet simulation Simulation no errors keine Fehler errors found Fehler gefunden Restoring data: main trunk info message displayed during ...data restoration Datenwiederherstellung: Hauptteil Restoring data: snapshot files info message displayed during ...data restoration Datenwiederherstellung: Schnappschuss Dateien Deleting data info message displayed during ...data deletion Lösche Daten luckyBackup - manage backup luckyBackup - Verwalte Sicherung Jump to previous error Springe zum vorherigen Fehler previous error Vorherige Fehler Jump to next error Springe zum nächsten Fehler next error Nächster Fehler This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) Es wird eine <b>Simulation durchgeführt</b>, welche keine Änderungen verursacht (und nahezu das gleiche Ergebnis produziert wie der reale Durchlauf) start Start ABORT ABBRUCH cancel Abbrechen The restore directory will become identical to the backup snapshot Das Wiederherstellungsverzeichnis wird identisch mit dem Sicherungs-Schnappschuss sein Existing backup files will replace the corresponding files at the restore directory information message - line1. Existierende Sicherungsdateien werden die zugehörigen Dateien im Wiederherstellungsverzeichnis ersetzen If the information above is correct, click <b>start</b> to begin information message - line2. Please leave tags <b></b> intact and surrounding 'start translated' Wenn die Informationen zuvor korrekt sind, klicken Sie auf <b>Start</b> um zu beginnen success info message displayed after ...logfile deletion Erfolgreich failed info message displayed after ...logfile deletion Fehlgeschlagen Deleting file that lists snapshot changes info message displayed during ...file deletion Lösche Datei, welche Schnappschuss-Änderungen auflistet success info message displayed after ...file deletion Erfolgreich failed info message displayed after ...file deletion Fehlgeschlagen success info message displayed after ...snapshots list update Erfolgreich Select new restore directory directory selection dialog title Wähle neues Wiederherstellungsverzeichnis Restore path ...is the restore directory path Wiederherstellungs-Pfad No snapshot specific data exist. Skipping... info message displayed during ...data restoration/deletion Es existieren keine Schnappschuss-spezifischen Daten. Überspringe... Check this, to clone the backup snapshot to the restore directory. Prüfe dies, um den Sicherungs-Schnappschuss in das Wiederherstellungsverzeichnis zu klonen. Delete existing data that do not exist at the backup Lösche existierende Daten, die nicht in der Sicherung existieren Browse locally for a new restore path Durchsuche diesen Computer für eine neuen Wiederherstellungs-Pfad change Änderung <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> modifyDialog simple Einfach advanced Erweitert Task name Name der Aufgabe Destination Ziel Source Quelle Task properties Aufgaben-Eigenschaften Enter a name for this task (eg "Backup my home directory") Geben Sie einen Name für die Aufgabe an (z.B. "Sichere mein Heimverzeichnis") Name : Name : Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Definiere den Typ der Aufgabe: 1. Sichere den Inhalt der Quelle innerhalb des Zieles 2. Sichere das Quellverzeichnis per Namen innerhalb des Zieles 3. Synchronisiere Quelle & Ziel, behalte die neusten Dateien bei beiden Type : Typ : Synchronize Source and Destination Sychronisiere Quelle und Ziel Enter the full path of the source directory (eg /home/luckyb/) Den vollständigen Pfad des Quellverzeichnisses angeben (z.B. /home/luckyb/) Source : Quelle : browse localy Diesen Rechner durchsuchen Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Geben Sie den vollständigen Pfad zum Ziel-Verzeichnis an (z.B. /media/backups/SiduxHome/) Destination : Ziel : eg -C4c arcfour,blowfish-cbc z.B. -C4c arcfour,blowfish-cbc With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Mit dieser Option wird rsync numerische Gruppen- und Benutzer-IDs benutzen, anstatt Benutzer- und Gruppennamen zu übertragen und diese auf beiden Seiten anzupassen. (--numeric-ids) Use numeric group and user IDs Benutzer numerische Gruppen- und Benutzer-IDs This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Dies teilt der Empfänger-Seite mit, Aktivitäten mit Super-User-Rechten zu starten zu versuchen, auch wenn rsync auf der Empfänger-Seite nicht als Super-User läuft. Diese Aktivitäten beinhalten: Beibehaltung des Benutzers mit der Option "--owner" Beibehaltung aller Gruppen (nicht nur die Gruppe des derzeitigen Benutzers) mit der Option "--groups" und kopiere Geräte mit der Option "--devices" (--super) Attempt super-user activities Versuche Super-User-Aktivitäten Try to backup open files in windows systems using vss (Only works on windows 2000 and upper) (--vss) Versuche geöffnete Dateien unter Windows mit VSS zu sichern (funktioniert nur in Windows 2000 oder höher) (--vss) Backup open files Sichere geöffnete Dateien Restore backed-up windows permissions localized in nt-streams (--restore-nt-streams) Stelle gesicherte Windows-Zugriffsrechte aus NT-Streams wieder her (--restore-nt-streams) Repeat any command that fails, x times Wiederhole x-mal jedes Kommando, das fehlschlug Repeat on fail: Wiederholung bei Fehler: Check this to clone source to destination Leave unchecked to create an extra directory inside destination Wähle dies, um Quelle zum Ziel zu klonen Nicht wählen, um ein Zusatzverzeichniss innerhalb des Ziels zu erzeugen Do NOT create extra directory Erzeuge KEIN Zusatzverzeichnis Advanced Erweitert Shows the rsync command as it will be executed Zeigt das rsync-Kommando wie es ausgeführt wird validate Überprüfen Okay Okay Cancel Abbrechen Exclude Ausnahme Add any directory, file or pattern to be excluded from this task Füge ein beliebiges Verzeichnis, Dateien oder Muster ein, die von der Aufgabe auszuschließen sind Templates Vorlagen Exclude all temp folders (**/*tmp*/) Schließe alle Verzeichnisse für temporäre Daten (**/*tmp*) aus Temporary folders Temporäre Verzeichnisse Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Schließe System-Einhängepunkte /mnt & /media (/mnt/*/**, /media/*/**) aus System mount folders System-Einhängepunkt Exclude all backup files & folders (**~) Schließe alle Sicherungs-Dateien (**~) aus Backup files Sicherungsdateien System folders System-Verzeichnisse Exclude all cache folders (**/*cache*/ & **/*Cache*/) Schließe alle Zwischenspeicher-Verzeichnisse (**/*cache*/ & **/*Cache*/) aus Cache folders Zwischenspeicher-Verzeichnisse Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Schließe alle Mülleimer von Benutzern (**/*Trash*/, **/*trash*/) aus Trash Mülleimer Exclude all "lost+found" folders (**/lost+found*/) Schließe alle "lost+found" Verzeichnisse (**/lost+found*/) aus lost+found lost+found User Defined Benutzerdefiniert Add exclusion as entered in the next field Füge Ausnahme wie angegeben in das nächste Feld add hinzufügen Exclude list Ausnahmen-Liste Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Geben Sie hier eine Datei, ein Verzeichnis oder Muster ein und drücken dann den "Hinzufügen"-Knopf, um es zur Ausnahmeliste hinzuzufügen. * - passt auf alle nicht-leeren Komponenten (es stoppt an Schrägstrichen) ** - passt auf alles, inklusive Schrägstriche ? - passt auf jedes Zeichen ausgnommen eines Schrägstrichs Angehängtes Verzeichnis-Name/*** - passt auf beides, das Verzeichnis & alles darin Beginnend mit / - Muster ist verankert zu einem besonderen Punkt in der Hirachie des Transfers (normaler Weise ist das die "Quelle") Angehängtes / - passt nur auf das Verzeichnis, nicht gewöhnliche Dateien, Symlinks oder Geräte Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Definiere den Typ dieser Aufgabe: 1. Sichere das Quellverzeichnis, innerhalb des Ziels (siehe auch "KEIN Verzeichnis erzeugen") 2. Synchronisiere Quelle & Ziel, behalte die letzten Dateien bei beiden Backup Source inside Destination Sichere Quelle innerhalb des Ziels Description Beschreibung Task description Aufgabenbeschreibung Type a description of the task Geben Sie eine Beschreibung der Aufgabe ein Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Schließe System-Ordner aus (/var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Exclude all user's .gvfs folders (**/.gvfs/) Schließe alle .gvfs-Verzeichnisse der Benutzer (**/.gvfs/) aus launch the pattern editor Starte den Muster-Editor Remove highlighted exclusion from list Entferne markierte Ausnahme von der Liste remove entfernen Edit highlighted inclusion Bearbeite markierte Einbeziehung edit Bearbeite Move highlighted inclusion up Bewege markierte Einbeziehung hoch move up Hoch Move highlighted inclusion down Bewege markierte Einbeziehung runter move down Runter Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Schließe NUR diese Liste an Mustern ein. Nicht mehr. Für das bessere Verständnis der Einbeziehungs-Regeln schauen Sie bitte im Handbuch nach. Dies wird die Ausnahmen-Funktion abschalten. Only Include Nur Einbeziehen Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices Geben Sie hier eine Datei, ein Verzeichnis oder Muster ein und drücken dann den "Hinzufügen"-Knopf, um es zur Ausnahmeliste hinzuzufügen. * - passt auf alle nicht-leeren Komponenten (es stoppt an Schrägstrichen) ** - passt auf alles, inklusive Schrägstriche ? - passt auf jedes Zeichen ausgnommen eines Schrägstrichs Angehängtes Verzeichnis-Name/*** - passt auf beides, das Verzeichnis & alles darin Beginnend mit / - Muster ist verankert zu einem besonderen Punkt in der Hirachie des Transfers (normaler Weise ist das die "Quelle") Angehängtes / - passt nur auf das Verzeichnis, nicht gewöhnliche Dateien, Symlinks oder Geräte Add inclusion as entered in the next field Füge Einbeziehung wie angegeben in das nächste Feld Include list Einbezieungsliste Remove highlighted inclusion from list Entferne markierte Auflistung von der Liste Remote Entfernt Use a remote host either for source or destination Benutze entfernten Rechner entweder als Quelle oder Ziel Use remote host Benutze entfernten Rechner Use a remote host for destination data. Benutze entfernten Rechner für Zieldaten destination Ziel Use a remote host for source data. Benutze entfernten Rechner für Quelldaten source Quelle User: Benutzer: Enter your username for the remote host (leave blank if not applicable). Benutzernamen für den entfernten Rechner eingeben (leer lassen, falls unzutreffend) @Host: @Host Enter the name of the remote host. Den Namen des entfernen Rechners eingeben Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). Geben Sie den vollen Pfad der Datei an, die das rsync-Authentifzierungs-Passwort (nicht das von ssh) beinhaltet (leer lassen, falls unzutreffend) rsync password file: rsync-Passwortdatei: Check this to connect to an rsync Remote module Prüfe dies, um zu einen entfernten rsync-Modul zu verbinden Remote module Entferntes Modul Use ssh as transport shell SSH als Transportshell benutzen ssh SSH password: Passwort: Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair Geben Sie den vollen Pfad der Datei an, die den privaten SSH-Schlüssel enthält (leer lassen, falls unzutreffend). Beachten Sie, dass Sie alle diese Schritte nötig sind, um eine passwortfreie SSH-Verbindung mit einem OpenSSH-Schlüsselpaar zu nutzen private key file : Private Schlüssel-Datei: Enter the port you would like to use for the ssh connection (leave blank for default port) Geben Sie den Port ein, den Sie für die Benutzung der SSH-Verbindung verwenden wollen (leer lassen für den Standardport) port : Port: Command Options Kommando-Optionen Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! Hinzufügen oder Entfernen beliebiger rsync-Optionen. Wenn Sie nicht wissen, was das bedeutet, lassen diese unberührt! Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Lösche Dateien im Ziel, die nicht in der Quelle existieren "Abstieg in Verzeichnisse" muss gewählt sein (--delete-after & --delete-excluded, wenn "Ausnahme" verwendet wird) Copy device (super user only) & special files as they are (-D) Kopiert Gerät (nur Super-User) & besondere Dateien, wie sie sind (-D) Preserve device, special files Erhalte Geräte, besondere Dateien Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Dateien, die in der Quelle über einen Hardlink verknüpft sind, werden dies auch im Ziel sein. WARNUNG: Alle Dateien müssen in der Übertragungsliste beinhaltet sein! (-H) Preserve hard links Erhalte Hardlinks Delete files on the destination Löscht Dateien im Ziel Recurse into directories (-r) In Verzeichnisse absteigen (-r) Recurse into directories In Verzeichnisse absteigen Do not backup source files that are newer on the destination (--update) Sichere keine Quell-Dateien, die auf dem Ziel aktueller sind (--update) Skip newer destination files Neuere Zieldateien überspringen Preserve the owner (super user only), group & time stamp of files (-tgo) Erhalte Besitzer (nur Super-User), Gruppe und Zeitstempel der Dateien (-tgo) Preserve ownership, times Erhalte Besitzrechte & Zeitstempel Preserve permissions of files (-p) Erhalte Zugriffsrechte der Dateien (-p) Preserve permissions Erhalte Rechte Copy symlinks as symlinks (-l) Kopiere Symlinks als Symlinks (-l) Preserve symlinks Erhalte Symlinks Ignore files using a similar algorithm to CVS (-C) Ignoriere Dateien nach einem ähnlichen Algorithmus wie CVS (-C) Ignore files the CVS way Ignoriere Dateien nach CVS-Art User defined Benutzerdefiniert Enter here an rsync option to add (eg "--delete-excluded", "-X") Gebe hier eine rsync-Option zum Hinzufügen an (z.B. "--delete-excluded", "-X") Extra rsync options list Zusätzliche rsync-Optionen-Liste Remove highlighted option from list Entferne markierte Option von der Liste Add rsync option as entered in the next field Füge rsync-Option wie angegeben im nächsten Feld hinzu options list Optionen-Liste Also Execute Ebenso ausführen Execute extra commands, before or after the task. Führe zusätzliche Kommandos aus, vor oder nach der Aufgabe Before Zuvor Enter here a command to be executed before the task and then press the "add" button to add it to the list below Geben Sie hier ein Kommando zur Ausführung vor der Aufgabe an und drücken den "Hinzufügen"-Knopf, um es der Liste unten hinzuzufügen Add command as entered in the field beside Füge Kommando wie im Feld daneben angegeben hinzu Command list Kommando-Liste Remove highlighted command from list Entferne markiertes Kommando von der Liste Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing Führe die Aufgabe aus, selbst wenn eine WARNUNG-Nachricht erscheint. Dies wird normalerweise benutzt, wenn "Zuvor Ausführen"-Kommando eine Warnung beheben kann (z.B. Partitionen einhängen). ACHTUNG: Verwenden Sie dies nur, wenn Sie wirkich wissen, was Sie tun. by-pass WARNING Überspringe WARNUNG After Danach Enter here a command to be executed after the task and then press the "add" button to add it to the list below Geben Sie hier ein Kommando zur Ausführung nach der Aufgabe an und drücken Sie den "Hinzufügen"-Knopf,um es der Liste unten hinzuzufügen Select source directory file selection dialog title Wählen Sie ein Quellverzeichnis Select destination directory file selection dialog title Wählen Sie ein Zielverzeichnis Select rsync password file file selection dialog title Wählen Sie ein rsync-Passwort-Datei Select ssh keyfile file selection dialog title Wählen Sie eine SSH-Schlüsseldatei Select command to be executed file selection dialog title Wählen Sie das Kommando zur Ausführung Select file to read include patterns file selection dialog title Wählen Sie eine Datei zum Lesen der Einbeziehungsmuster Select file to read exclude patterns file selection dialog title Wählen Sie eine Datei zum Lesen der Ausnahmenmuster Please define the source before launching the pattern editor message box, message Bitte geben Sie die Quelle vor dem Starten des Muster-Editors an ERROR message box message FEHLER Please specify the following before proceeding: message box, message Bitte folgendes vor dem Fortfahren angeben: ERROR message box message - line1 FEHLER That is not allowed because '/' does not have an actual name message box message - line2 Das ist nicht erlaubt, da '/' keinen eigentlichen Namen hat Leave the box checked, to <b>STOP</b> the execution of running task if this command exits with an error Lassen Sie dies gewählt, um die Ausführung der laufenden Aufgabe zu <b>STOPP</b>en, wenn das Kommando mit einen Fehler beendet wird. use boxes to <b>STOP</b> task execution on error Please leave the bold tags <b></b> intact and surrounding the word STOP translated Benutze, um Aufgabenausführung bei Fehler zu <b>STOPP</b>en. You have declared the '/' (root) directory as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Sie haben das '/' (root) Verzeichnis als Quelle angegeben und haben NICHT die Option 'Erzeuge KEIN Zusatzverzeichnis' gewählt Please check the relevant box before proceeding message box message - line3 Bitte prüfen Sie die relevante Option vor dem Fortfahren You have declared the root directory of an entire partition as source and have NOT checked the 'Do NOT create extra directory' box message box message - line1 Sie haben das root-Verzeichnis einer ganzen Partition als Quelle angegeben und NICHT die Option 'Erzeuge KEIN Zusatzverzeichnis' gewählt That is not allowed because the root partition does not have an actual name message box message - line2 Das ist nicht erlaubt, weil die root-Partition keinen eigentlichen Namen hat The name of the task you requested already exists message box message - line1 Der Name der angeforderten Aufgabe existiert schon Please specify a different name before proceeding message box message - line2 Bitte vor dem Fortfahren einen anderen Namen angeben The source you have declared is identical to the destination message box message - line1 Die Quelle, die Sie angegeben haben, ist identisch mit dem Ziel Please modify at least one of them message box message - line2 Bitte ändern Sie mindestens eine von beiden. WARNING message box message - line1 WARNUNG You have declared a destination that is part of the source directory structure message box message - line1 Sie haben ein Ziel angegeben, welches Teil der Quellverzeichnisstruktur ist <b>Do not forget</b> to define a directory at the 'exclude' groupbox that will contain the destination message box message - line2. Please leave tag <b>,</b> intact and surrounding 'do not forget' translated <b>Vergessen Sie nicht</b> ein Verzeichnis im "Ausnahme"-Gruppenfeld zu definieren, welches das Ziel beinhaltet You have checked the 'delete files on the destination' option message box message - line2 Sie haben die Option "Lösche Dateien im Ziel" gewählt without having checked 'Recurse into directories' which is required message box message - line3 ohne 'Abstieg in Verzeichnisse' markiert zu haben, was erforderlich ist 'Remote Host' is checked, but no remote host name is declared message box message - line2 'Entfernter Rechner' ist markiert, aber es wurde kein Rechnername angegeben Please specify a remote host name message box message - line3 Bitte einen Namen für den 'Entfernten Rechner' angeben Otherwise uncheck 'Remote Host' to operate locally message box message - line4 Andernfalls 'Entfernter Rechner' abwählen um lokal zu arbeiten All declared fields of the task properties window seem to be ok message box message first line Alle angegebenen Felder im Fenster der Aufgabeneigenschaften scheinen ok zu sein Errors have been found message box message first line Es wurden Fehler gefunden command to be executed full phrase: command to be executed: <COMMAND> Auszuführendes Kommando You have already added this exclude item message box message Sie haben diese Ausnahme schon hinzugefügt You have already added this include item message box message Sie haben diesen Eintrag zum Einbeziehen schon ausgewählt You have already added this option message box message Diese Option haben sie bereits ausgewählt done Fertig done editing Bearbeitung beendet cancel Abbrechen cancel editing Bearbeitung abbrechen Read exclude patterns from file Lese Ausnahme-Muster aus Datei Read file: Lese Datei: filename Dateiname browse Durchsuchen ... ... Include Einfügen Add any directory, file or pattern to be included by this task Füge ein beliebiges Verzeichnis, eine Datei oder ein Muster ein, das in die Aufgabe aufgenommen werden soll Include mode Einfügemodus Mode: Modus: Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Diese Liste an Mustern nicht ausschließen. Bitte lesen die das Handbuch, um die Einbeziehungs-Regeln besser zu verstehen. Normal Include Normale Einbeziehung Read include patterns from file Lese Einbeziehen-Muster aus Datei browse locally lokal durchsuchen additional options: Zusätzliche Optionen: Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Markiere dies wenn Sie eine FAT-/NTFS-Partition als Ziel verwenden. Datei-Eigentümerschaft und -rechte werden NICHT erhalten. (-t --modify-window=1) Destination is FAT/NTFS Ziel ist FAT/NTFS Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Versuche geöffnete Dateien unter Windows mit VSS zu sichern (funktioniert nur in Windows 2000 oder höher) (--vss) {2003 ?} Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Stelle Zugriffsrechte wieder her Set the total number of backup snapshots to keep Setze die Gesamtanzahl zu behaltender Sicherungs-Schnappschüsse Snapshots to keep: zu behaltende Schnappschüsse: patternEditor directory : Verzeichnis : Select file Datei wählen Please choose a file within the source Bitte wählen Sie eine Datei innerhalb der Quelle aus Select directory Wähle Verzeichnis Please choose a directory within the source Bitte wählen Sie ein Verzeichnis innerhalb der Quelle file : Datei : pattern editor Muster-Editor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Wählen Sie diese Option, um das obige Verzeichnis als absoluten Pfad zu benutzen wenn nicht gewählt, wird das Muster auf jede Datei/Verzeichnis passen, welches das Kriterium "Name" erfüllt Define here, what would you like the pattern to refer to Definiere hier, auf was das Muster verweisen soll The pattern refers to a: Das Muster verweist auf einen: Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Benutze dies, wenn das Muster auf eine konkrete Datei verweist z.B. "/media/music/album/song.mp3" Specific file Konkrete Datei Use this if the pattern refers to a specific directory eg "/media/music/Album/" Benutze dies, wenn das Muster auf ein konkretes Verzeichnis verweist z.B. "/media/music/album/song.mp3" Specific directory Konkretes Verzeichnis Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Benutze dies, wenn das Muster auf einen Satz Dateien verweist, die etwas gemeinsam haben z.B. alle Dateien mit der Erweiterung ".txt" Set of files Satz von Dateien Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Benutze dies, wenn das Muster auf einen Satz Verzeichnisse verweist, die etwas gemeinsam haben z.B. alle Verzeichnisse, die benannt sind als "temp" Set of directories Satz von Verzeichnissen name Name starts with : beginnt mit: Enter here the starting characters of the name of the files/directories that the pattern refers to Geben Sie hier die ersten Zeichen des Namens der Dateien/Verzeichnisse ein, auf die das Muster verweist ends with : endet mit: Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Geben Sie hier die letzten Zeichen des Namens der Dateien/Verzeichnissese ein, auf die das Muster verweist z.B. um auf alle ".txt"-Dateien zu verweisen, geben Sie ein .txt Enter here the name of the files/directories that the pattern refers to Geben Sie hier den Namen der Dateien/Verzeichnisse ein, auf die das Muster verweist is exactly : ist genau: Enter here the characters contained in any position of the name of the files/directories that the pattern refers to Geben Sie hier die Zeichen ein, die an irgendeiner Stelle im Namen der Dateien/Verzeichnisse enthalten sind, auf die das Muster verweist contains : enthält: browse localy for a file lokal nach einer Datei suchen browse localy for a directory path Durchsuche lokal nach einen Verzeichnis-Pfad use absolute path benutze absoluten Pfad Go deeper in path by : Steige im Pfad ab um: Go deeper in path by any level Steige im Pfad ab auf jede Ebene any alle Define here the name criteria for the files/directories to be matched Definiere hier das Namens-Kriterium für die Dateien/Verzeichnisse, die passen sollen final pattern Fertiges Muster The actual pattern is displayed here Das aktuelle Muster wird hier angezeigt Reset the pattern editor fields to the default values Setze die Einträge des Muster-Editors auf die Standardwerte zurück reset Zurücksetzen Okay Okay Cancel Abbrechen Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Benutzen Sie dies, um auf tiefere Unterverzeichnisse zu verweisen z.B. Das Verzeichnis "/media/musik" beinhaltet 3 Unterverzeichnisse: 1. Rock 2. Jazz 3. Soundtracks und wenn Sie auf den gesamten Inhalt dieser drei verweisen wollen, definieren Sie das folgende: * Satz von Verzeichnissen * Verzeichnisinhalte * Pfad:/media/music/ * Steige tiefer im Pfad um "1" Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Benutzen Sie dies, wenn das Muster auf den Inhalt eines Verzeichnisses (oder einen Satz von Verzeichnissen) verweist, nicht das Verzeichnis selbst z.B. den Inhalt des Verzeichnis "/media/music/Album/" Directory contents Verzeichnisinhalt scheduleDialog Starting from scratch Von vorn beginnen No schedules are declared !! Keine Zeitplanungen deklariert !! Unable to create schedule file Kann die Zeitpanungsdatei nicht erstellen You have reached the maximum limit of supported scheduled profiles Sie haben die maximale Anzahl unterstützter Zeitplanungsdateien erreicht You have to remove an item if you wish to add another Sie müssen einen Eintrag löschen, um einen anderen hinzuzufügen Add profile schedule Profil-Zeitplanung hinzufügen Modify profile schedule Profil-Zeitplanung bearbeiten Profile schedule details Einzelheiten der Profil-Zeitplanung Invalid profile Ungültiges Profil Execute profile Profil ausführen hourly at minute full phrase: Execute profile <PROFILENAME> hourly at minute <MM> stündlich zur Minute at um every jeden day Tag Sunday Sonntag Monday Montag Tuesday Dienstag Wednesday Mittwoch Thursday Donnerstag Friday Freitag Saturday Samstag & on the und am st as in 1st day te nd as in 2nd day te rd as in 3rd day te th as in 4th, 5th, 6th or 7th day te th as in 8th day te th as in 9th day te th as in 10th day te th as in 11th day te th as in 12th....19th day te th as in 20th day te st as in 21st day te nd as in 22nd day te rd as in 23rd day te th as in 24th...30th day te st as in 31st day te of any month jeden Monats of im January full phrase: 'of January' Januar February full phrase: 'of February' Februar March full phrase: 'of March' März April full phrase: 'of April' April May full phrase: 'of May' Mai June full phrase: 'of June' Juni July full phrase: 'of July' Juli August full phrase: 'of August' August September full phrase: 'of September' September October full phrase: 'of October' Oktober November full phrase: 'of November' November December full phrase: 'of December' Dezember Unable to create cron file Cron-Datei nicht erstellbar luckyBackup - schedule luckyBackup - Zeitplaner <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profilausführung planen</span></p></body></html> Add a new profile schedule Neue Profil-Zeitplanung hinzufügen add Hinzufügen Modify selected profile schedule Bearbeite ausgewählte Profil-Zeitplanung modify Bearbeiten Remove selected profile schedule Entferne ausgewählte Profil-Zeitplanung remove Entfernen Profile : Profil: Skip tasks that apear with a 'CRITICAL' warning message after the directories check Überspringe Aufgaben, die mit einer "KRITISCH"-Meldung nach der Verzeichnisprüfung erscheinen. skip critical überspringe kritische time (hour:min) : Uhrzeit (Stunde : Minute) set this value to -1 for the schedule to occur every hour Setzen Sie diesen Wert auf -1, damit die Aufgabe stündlich durchgeführt wird : : :delay Verzögerung Delay luckybackup execution at startup Verzögere die Ausführung von beim Systemstart min means: minutes (time) min day of week : Wochentag: Any Jeden month : Monat: January Januar February Februar March März April April May Mai June Juni July Juli August August September September October Oktober November November December Dezember day of month : Tag des Monats: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 Check this if your machine does not support a graphical environment (eg server) Wählen Sie diese Option, wenn Ihr Computer über keine grafische Umgebung verfügt (z.B. Server) Console Mode Konsolen-Modus okay Okay Cancel Abbruch schedule the execution of profiles as declared in the list above Plane die Ausführung der Profile wie in der Liste oben angegeben cronIT !! in Cron-Datei eintragen The existent schedule file is not a valid luckyBackup v. v is for version Die vorhandene Zeitplanungsdatei ist kein gültige luckyBackup v. file BEWARE of the whitespace before file -Datei You have made changes without clicking the cronIT button Sie haben Änderungen vorgenommen, ohne diese in die Cron-Datei übernommen zu haben Are you sure you want to close the schedule dialog ? Sind Sie sicher, dass Sie den Zeitplaner-Dialog schließen wollen? Your crontab is updated successfully Ihre Crontab-Datei wurde erfolgreich aktualisiert no crontab entries exist Es existieren keine Crontab-Einträge crontab content Crontab-Inhalt once, at system startup full phrase: Execute profile xxxxx, once at system startup einmal, beim Systemstart Run once, at startup Durchführung ein Mal beim Systemstart @ reboot @reboot close this dialog Diesen Dialog schließen close Schließen Display the current crontab Zeige die derzeitige Crontab-Datei an view current crontab Derzeitige Crontab-Datei ansehen textDialog Enter the name of the new profile : Geben Sie einen Namen für das neue Profil ein: Enter the new name of the profile : Geben Sie einen Namen für das neue Profil ein: Profile description : Profilbeschreibung: A profile with the same name already exists Ein Profil mit gleichem Namen existiert bereits Please enter a different name Bitte geben Sie einen anderen Namen ein Enter password : Passwort eingeben: Enter passphrase : Passphrase eingeben: Do not show this again for this task Zeige dies nie wieder für diese Aufgabe You have selected to "Backup the contents of the source directory"<br>together with the "delete files on the destination" option Sie haben "Sicherung der Inhalte des Quell-Verzeichnisses"<br>zusammen mit der Option "lösche Dateien im Ziel" ausgewählt BEWARE, if your intention is NOT to clone source to destination !! VORSICHT, wenn es Ihre Absicht ist, NICHT die Quelle zum Ziel zu klonen! Are you sure you wish to proceed ?? Sind Sie sicher, dass sie fortfahren wollen? luckyBackup luckyBackup Okay Okay Cancel Abbrechen Copy command to clipboard Kopiere Kommando in die Zwischenablage eMail information E-Mail-Information No Nein Yes Ja winDialog luckyBackup luckyBackup declaration of paths Deklaration der Pfade rsync: rsync: Enter the full path of the rsync command Geben Sie den vollen Pfad zum rsync-Kommando an browse locally lokal durchsuchen Use default value Benutze Standard-Wert ssh: ssh: Enter the full path of the ssh command Geben Sie den vollen Pfad zum SSH-Kommando an cygpath: cygpath: Enter the full path of the cygpath command Geben Sie den vollen Pfad zum cygpath-Kommando ein dosdev: dosdev: Enter the full path of the dosdev command Geben Sie den vollen Pfad zum dosdev-Kommando an main dir: Hauptverzeichnis: Enter the full path of the luckybackup directory Den vollständigen Pfad des Luckybackup-Verzeichnisses an vshadow dir: vshadow-Verzeichnis: Enter the full path of the vshadow directory Geben sie den vollen Pfad zum vshadow-Verzeichnis an temp dir: Zwischenspeicher: Enter the full path of the temporary directory Geben Sie den volen Pfad zum Zwischenspeicher-Verzeichnis an Okay Okay Cancel Abbrechen Select rsync command file selection dialog title Wähle rsync-Kommando aus Executable Files (*.exe) Ausführbare Dateien (*.exe) Select ssh command file selection dialog title Wähle SSH-Kommando aus Select cygpath command file selection dialog title Wählen Sie das cygpath-Kommando aus Select dosdev command file selection dialog title Wählen Sie das dosdev-Kommando aus luckybackup-0.5.0/manpage/0000777000175000017500000000000013367645635015033 5ustar luckybluckybluckybackup-0.5.0/manpage/luckybackup-pkexec.80000666000175000017500000000302113367115037020676 0ustar luckybluckyb.\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH LUCKYBACKUP-PKEXEC 8 "2018-11-02" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for manpage-specific macros, see man(7) .SH NAME \fBluckybackup\fP \- a powerful, fast and reliable backup & sync tool .br .SH SYNOPSIS .B \fBluckybackup-pkexec\fP .SH DESCRIPTION .\" TeX users may be more comfortable with the \fB\fP and .\" \fI\fP escape sequences to invode bold face and italics, .\" respectively. \fBluckybackup\fP is an application that backs\-up and/or synchronizes any directories with the power of rsync. .br This command is used to run luckybackup's graphical user interface with super-user privileges, using polkit and pkexec. .SH OPTIONS No options are used with this command. eg: .br $ luckybackup-pkexec .SH SEE ALSO For a complete documentation, please have a look at the application manual via the gui main window help menu. .SH AUTHOR luckybackup was written by . .PP This manual page was written by luckyb , for the Debian project (but may be used by others). luckybackup-0.5.0/manpage/luckybackup.80000666000175000017500000000533013165421603017421 0ustar luckybluckyb.\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH LUCKYBACKUP 8 "2017-10-05" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for manpage-specific macros, see man(7) .SH NAME \fBluckybackup\fP \- a powerful, fast and reliable backup & sync tool .SH SYNOPSIS .B \fBluckybackup\fP [OPTIONS]... [FILE]... .SH DESCRIPTION .\" TeX users may be more comfortable with the \fB\fP and .\" \fI\fP escape sequences to invode bold face and italics, .\" respectively. \fBluckybackup\fP is an application that backs\-up and/or synchronizes any directories with the power of rsync .SH OPTIONS \fB \-\-help\fP .br displays this help message .br \fB \-\-version\fP .br displays the current version of the application .br .br \fB \-\-skip\-critical\fP .br does not execute tasks that appear with a 'CRITICAL' warning message .br \fB \-\-dry\-run\fP .br executes luckybackup in dry\-run (simulation) mode .br \fB \-\-silent\fP .br executes luckybackup in silent mode (just tray notification icon shown) .br .br \fB \-c\fP .br console mode. Use this, if there is no graphical envrironment available .br \fB \-\-no\-questions\fP .br skips confirmation questions asked to user. Implies \-c (console mode) .br .br \fB [FILE]\fP .br is the filename of the already created profile that is going to be executed \fB examples\fP .br 1. Execute luckybackup gui : .br $ luckybackup .br .br 2. Execute luckybackup in silent mode for profile '~/.luckyBackup/profiles/BackupHome.profile' : .br $ luckybackup \-\-silent ~/.luckyBackup/profiles/BackupHome.profile .br .br 3. Execute luckybackup in console mode for profile '~/.luckyBackup/profiles/BackupHome.profile' : .br $ luckybackup \-c BackupHome.profile .br .br 4. Execute luckybackup in console mode for profile '~/.luckyBackup/profiles/BackupHome.profile' .br Do not ask any questions and skip all operations that appear CRITICAL after the checks : .br $ luckybackup \-\-skip\-critical \-\-no\-questions ~/.luckyBackup/profiles/BackupHome.profile .SH SEE ALSO For a complete documentation, please have a look at the application manual via the gui main window help menu. .SH AUTHOR luckybackup was written by . .PP This manual page was written by luckyb , for the Debian project (but may be used by others). luckybackup-0.5.0/manual/0000777000175000017500000000000013165422442014661 5ustar luckybluckybluckybackup-0.5.0/manual/index.html0000666000175000017500000103777013165410243016671 0ustar luckybluckyb luckyBackup - backup and sync utility

luckyBackup logo





user's manual



contents

menu entries

terminal arguments

man page

Tasks

Profiles

Help

Settings

name

type

source

destination

cannot display remote places

snapshots

done

description

exclude

include

options

remote

also execute

validate

pattern rules

pattern editor

include state

declared data check

execution order

save profile

simulation

task list check

normal run

silent mode

command-line mode

add

modify

remove

cronIT

crontab info

troubleshooting cron

log-file

command

conditions

arguments

test

logging

view log

calculate differences

delete backup

restore

restore profile

manage wizard

separate task



go up
overview – features

luckyBackup is an application that backs-up and/or synchronizes any directories with the power of rsync.

It is simple to use, fast (transfers over only changes made and not all data), safe (keeps your data safe by checking all declared directories before proceeding in any data manipulation ), reliable and fully customizable.



Backup

Create a "clone" of your data at another location in no time, safely.

Backup any directory (source) to another (destination).

luckyBackup copies over only the changes you've made to the source directory and nothing more.
You will be surprised when your huge source is backed up in seconds (after the first time !!).

Whatever changes you make to the source including adding, moving, deleting, modifying files / directories etc, will have the same effect to the destination.

Owner, group, time stamps, links and permissions of files are preserved (unless stated otherwise).

Snapshots
Create multiple backup "snapshots".

Each snapshot is an image of the source data that refers to a specific date-time.

Rolling back to any of the snapshots is possible.

Sync
Sync any directories keeping the files that were most recently modified on both of them.

Useful if you modify files on more than one PCs (using a flash-drive and don't want to bother remembering what did you use last.

Keep your data safe
luckyBackup first checks whether the directories you've declared exist or if they are empty and warns you accordingly.

You wouldn't want your 500GB music collection backup (that took half a day to create !!) vanish in a second if you forgot to mount the external drive that your source is in !!
You also wouldn't want to execute an rsync command if your destination folder is in an external drive that you also forgot to mount.

Simple / advanced option
The add/modify task dialog is quite simple and everybody can use it with confidence.
Hit on the "advanced" pushbutton at the task properties window and a whole bunch of other options will appear.
If you know what you're doing change anything at will.

Exclude option
Exclude any file, folder or pattern from the transfer.
You might not want to copy over backup files (*~), trash folders, system mount folders (/media & /mnt), some huge video files or anything else.

Choose from already made templates or produce your own with the cool pattern editor.

Only include option
Use this option to only transfer over specific file(s), folder(s) or pattern(s) within your source directory and nothing else.

Add/remove any rsync option
If you don't like the default rsync options that luckybackup uses, add or remove any option you wish.

Remote connections
Remote connections are possible, either for use as a source or as a destination.

Also execute
You can execute any command(s) before or after a specific task.

Restore task
Everybody wishes to never use this !!
But when this time comes, luckyBackup gives you the option to either go through a restore wizard or create a task based on an existing one for restore purposes.

Simulation option
If you are unsure of the effects on your data when executing an rsync command try the dry-run option. luckyBackup will perform a trial run that doesn't make any changes (and produces mostly the same output as a real run).
Note: The progress-bar might be misleading when using this.

Profiles
You don't have to create all tasks from scratch every time you start luckyBackup.
You can save your preferences in a .profile file and load it whenever needed. Use as many profiles as you like, export, import or duplicate them.

Include option – Execution order
A separate check-box can be used to include or not a task within a profile.

The option to change the execution order of tasks is also given.

Scheduling

Scheduling for execution of already created profiles via cronjobs is supported.

e-mail

email a report after a profile execution.

Logfile
After all tasks execution, a logfile is created in your home folder. You can have a look at it any time you want.

A handy logviewer that displays errors in red and has next/previous buttons, is also provided.

Command line mode
luckyBackup can run in command line if you wish not to use the gui, but you have to first create the profile that is going to be executed.
Type "luckybackup --help" at a terminal to see usage and supported options.








legal

Copyright © 2008, Loukas Avgeriou

luckyBackup is distributed under the terms of the GNU General Public License.

It 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, version 3 of the License.

It 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.




definitions



Before we proceed to any description or instructions, it would be useful to first make some definitions:



task

For example the task of backing up one directory to another. The basic properties of a task are:

a. Its name (for example “backup my home directory”).

b. Its include state which actually says if the task will be executed or not.

source

The directory that holds the data to be backed-up.

destination

The directory that source will be backed-up to.

profile

A collection of tasks at a particular order.

snapshot

Backup data that refer to the source at a particular time. Just like a photo snapshot that captured a face at a specific time.

schedule

A profile that is scheduled to be executed at a specific time, at a specific day.

super-user mode

The execution of luckyBackup with super-user privileges.

Command-line mode

The execution of luckyBackup without a graphical user interface (gui), by using a terminal.

Silent mode

The execution of luckyBackup without launching the main window - just tray notification shown.






launch


After this (small I hope) introduction, It is now time to launch luckyBackup.
It is always a good thing to have multiple options and the ability to choose.
That is why, there are various ways to do that:


Menu


The easiest way to launch luckyBackup is by using your operating system's menu items.
Please note that 2 items are created.


Normal user




The first one is used to launch luckyBackup as a normal user.
This is created under Utilities (kde) or Accessories (Gnome) or Applications -> File Management (Debian menu).

Use this method, if the normal user has full read access to the source and full write access to the destination.



Super user




The second one is used to launch luckyBackup as a super-user.
This is created under System (kde) or System Tools (Gnome) or Applications -> System -> Administration (Debian menu).
Fedora users, must install the "beesu" package to use the system menu link.

Use this method, if the normal user has limited read access to the source or limited write access to the destination.



IMPORTANT:
luckyBackup copies files preserving their owner, group, times, permissions and attributes.
You should run it with su privileges if you want to

  • transfer data that a normal user has no or limited authorization on.
  • transfer data to a place that a normal user has no or limited authorization on.


Terminal arguments


luckyBackup can also be launched by using a terminal (console).
The full syntax of the command used is :

$ luckybackup  [options]  [profile]


If no options or profile is provided, the main window will show, the same way as if you used the menu items .


Launching with super-user privileges, is possible by using normal bash commands to gain root access.
eg

$ sudo luckybackup  [options]  [profile]

or

$ su root
Password: XXXXXXX
# luckybackup  [options]  [profile]



[profile]

... is an already created profile that is going to be executed instantly, either in gui or command-line mode, depending on the options provided.
Profile files are normally located under your home directory (~) at ~/.luckyBackup/profiles.
NOTE that the root's home directory is /root.
As [profile] you can use :

  • the full path of the profile filename.
    eg: ~/.luckyBackup/profiles/default.profile
  • The profile filename without using its full path.
    Then, luckyBackup will search at the normal profiles location, under the home directory of the current user.
    eg: default.profile
  • The profile name.
    Again, luckyBackup will search at the normal profiles location, under the home directory of the current user.
    eg: default



[options]





available options :



--help

Displays a “usage” help message

--version

Displays luckybackup's current version

--skip-critical

Will not execute tasks that appear with a CRITICAL warning message after the data checks

--dry-run

Executes luckyBackup in dry-run (simulation) mode

--silent

Executes luckyBackup in silent mode ((just notification tray icon shown))

-c

Console mode

Executes luckyBackup in command-line mode

--no-questions

Executes luckyBackup in command-line mode and skips confirmation questions asked to user. Implies -c (console mode).





manualy schedule:

For some reason, you might not wish to use the luckybackup's schedule feautre, to have some jobs scheduled.
Instead you might want to manualy configure your system to execute luckybackup by using cron or anacron or a bash script or anything.

If that is the case, it is recommended to use the --silent together with the --skip-critical option to run luckybackup in silent mode.

Something else that should be taken into consideration is that for the silent mode to run, a graphical environment is needed.
For that purpose the environmental variable DISPLAY should be defined.
An example, a luckybackup crontab entry follows:

env DISPLAY=:0 /usr/bin/luckybackup --silent --skip-critical /home/luckyb/.luckyBackup/profiles/EveryDay_jobs.profile





examples:

1. Execute luckybackup gui:

$ luckybackup



2. Execute luckybackup gui and run profile "BackupHome" immediately:

$ luckybackup ~/.luckyBackup/profiles/BackupHome.profile



3. Execute luckybackup gui and run profile "BackupHome" immediately in simulation mode:

$ luckybackup --dry-run BackupHome.profile



4. Execute luckybackup in silent mode and run profile "BackupHome" immediately. Skip all CRITICAL tasks:

$ luckybackup --silent --skip-critical BackupHome



5. Execute luckybackup in command-line mode and run profile "BackupHome" immediately:

$ luckybackup -c BackupHome



6. Execute luckybackup in command-line mode and run profile "BackupHome" immediately. Do not ask any questions and Skip all CRITICAL tasks:

$ luckybackup -c --skip-critical --no-questions BackupHome





man page


A man page (system's manual page) is available at section 8 (System administration commands).
To view it, enter the following command:

$ man luckybackup








the main window







This is the application's main window as it appears as soon as you execute luckyBackup.

It consists of :

  • A menu.

  • A toolbar that refers to current profile handling.

  • The Task List which lists all the available tasks of the current profile.

  • 3 buttons that refer to specific task handling (addremovemodify).

  • A run button and a simulation (Dry) check-box. You can start the execution of all the tasks included in a profile by using these.

  • An information window. It can be shown/hidden by using the arrows icon at its top left corner.



...Playing around





Tasks

All task related actions are accomplished via the "task area":



or the menu → Task:

Add

Add a new task to the current profile.

Remove

Remove an existing task from the current profile:

  • Click on an task name, inside the task list, to highlight it.

  • Press the remove button.

  • Answer yes to the dialog that will appear to permanently remove the task.

Modify

Modify an existing task to your liking:

  • Click on an task name, inside the task list, to highlight it.

  • Press the modify button for the modify task dialog to appear.

Duplicate

Create a duplicate of the highlighted task and add it to the current profile.

  • Select Task-> Create Duplicate Task from the menu.

  • Change anything (if) you wish at the task properties dialog that will appear and click ok:

Create Restore task

Create a restore task of the highlighted task and add it to the current profile.

  • Select Task-> Create Restore Task from the menu.

  • Please have a look at the restore section of this manual for full reference to the restore procedures.



Profiles

All profile related actions are accomplished via the toolbar:



or the menu → profile:

Current Profile – profile load

The profile you are currently using is displayed at the drop-down list, on the left of the toolbar.

To change the current profile simple select another one from the list.

The information window will display a message:

Save

To save the profile you are currently using, press the save button at the toolbar, or select profile → save from the menu, or press ctrl+S.



Default profile

The default profile is the profile loaded as soon as luckyBackup starts.

Normally the name of the default profile is “default”. To change that, select profile → Default from the menu.



Rename

To rename the profile you are currently using, select profile → rename from the menu.



Delete

To delete the profile you are currently using, press the delete button at the toolbar, or select profile → delete from the menu.



New

Create a new profile:

  • Press the “new profile” button or select “Profile → new” from the menu or press ctrl+N.

  • Enter the name of the new profile at the dialog that will appear and press ok.



Duplicate

Create a duplicate of the current profile:

  • Select “Profile → Duplicate” from the menu

  • Enter the name of the new duplicate profile at the dialog that will appear and press ok.



View/Edit Description

View or edit the profile's description:

  • Select “Profile → View/Edit Description” from the menu

  • Enter any text to use as a profile description and press ok.



Export

You can export the current profile as a folder to any location.
Together with the .profile file, luckybackup will also export all relevant snapshot and log data.

  • Select “Profile → export” from the menu.

  • The following dialog will appear

  • Navigate to the directory you wish to export the profile to.

  • Type a file-name for your profile or select an already existent profile to replace it.

  • Press the save button

Note that you do not have to type the “.profile” extension. It will be added automatically.

Also have in mind that the default directory where profiles are located is inside the user's home directory, under the folder “~/.luckyBackup/profiles”.



Import

To Import a profile from another location:

  • Select “Profile → import” from the menu.

  • The following dialog will appear.

  • Navigate to the directory you wish to import the profile from.

  • Select the profile you wish to import.

  • Click the open button to finish the procedure.

Together with the .profile file, luckybackup will also import all relevant snapshot and log data, if available.



Refresh

To refresh the current view, simply click the refresh button, or select profile → refresh from the menu or press F5.



Schedule

Create new, modify or remove existing luckyBackup schedules

  • Click the schedule button at the toolbar or select profile → schedule from the menu, for the schedule dialog to appear



Run

Start the execution of all included tasks of the current profile.

You have 2 options to do this:

a. Normal execution. For real data transferring

  • Click the “Run” button.

b. simulation. Perform a dry-run execution of all included tasks of the current profile.

If you are unsure of the effects on your data when executing an rsync command try the dry-run option. luckyBackup will perform a trial run that doesn't make any changes (and produces mostly the same output as a real run).

Note: The progress-bar might be misleading when using this.

WARNING: Any pre/post task execution commands, will run normally, not simulated.

  • Check the “Drycheck-box to enable this option.

  • Click the “run” button

Help

about

Display the “about” dialog

  • Select “Help → about” from the menu.





Do not forget that this is free software.

Help

Display this manual

  • Select Help → Help from the menu or

  • Press F1.



Language

If you wish to change the language of the application:

  • Select Settings → Language from the menu

  • Click on the language you wish to use



Toolbar settings

Change the display of the toolbar:

  • Select Settings → Toolbars from the menu

  • Select the options you wish.



Quit

In order to exit luckybackup:

  • Click the EXIT button, located at the actions toolbar or

  • Select Profile → Quit from the profile menu or

  • Press ctrl+X

Do not worry about losing your profile if not saved when exiting the application.
You will be prompted accordingly.










task properties (the simple way)



As already seen at a previous chapter the basic properties of a task are its name and its include state.

Of course this specific task actually does something (e.g transfers data from the source to the destination). Although this might seem simple, a lot of parameters are involved in the way this can be accomplished.

Let's have a deeper look at a task's properties by...

creating a new task



As soon as you click the “add” task button the following dialog appears:





name

First thing you have to do is enter a name for this new task.

Click on the “Task name” text field and type a name for the task. For example if you wish to backup the home directory of your sidux distribution, a good name would be “Back up my sidux home directory”.

Actually, there is no such thing as a “good name”. Type anything that suits you best with no restrictions :-)



type

The next thing you have to define is the task type. There are 2 types available:

1. Backup source inside destination

Select this type to create a backup of the source inside the destination directory.
Depending on the state of the following checkbox, you can define whether an extra directory will be created inside the destination or not.


do NOT create extra directory check box

Check the box to backup the contents of a directory, not the directory itself.

In simple words, to copy over, all the data that the source contains inside the destination.

Leave the box unchecked to backup the source directory by name.

This means that a new directory with the same name as the source will be created (if not already there) inside the destination.

Example:

Let's assume that you create a task and declare:

source = /home/luckyb/photos/ (that contains a large number of files)

destination = /media/backups/pictures/

If you check the “do NOT create extra directory” box, then all files and folders from inside /home/luckyb/photos/, will be copied inside /media/backups/pictures/.

If you leave the box unchecked, then you will end up with the directory /media/backups/pictures/photos/ (the whole source directory will be copied inside the destination).


2. synchronize source & destination

Use this task type in order to sync the source with the destination by keeping the most recent files at both of them.

It can prove really useful if you modify specific files from different locations.

Example:

Let's assume that you are working on a project. You have created the directory /home/luckyb/project at your home PC and save all relevant files in there. At the same time there is a need to work on some of these files at another PC, so you copy them at your usb flash drive (location: /media/myUSB/project).

There are times when you do not remember which file you edited when and from where. So you create a task declaring:

source: /home/luckyb/project/

destination: /media/myUSB/project/

task type: “sync directories”

This will result in a 2-way transfer. Newest modified files will be transferred from source to destination or the other way round. Also freshly created files at one of the locations will be copied over to the other.

Please note that if you delete files at either the source or the destination and you perform this task, you will end up with these files created again because they still exist at the other location.



source

After defining the name and the type of the task, you have to define the source. That means the directory that holds the data that are going to be backed-up. You can do that in 2 ways:

1. Click on the “source” text field and type the full path of the source directory. For example /home/luckyb.
Auto-completion as you type is enabled by default.

2. Click the “browse locally” button, located at the right of the source text entry field. A normal file dialog will appear. Navigate to the directory you wish to use as a source and press the “choose” button



destination

Declare a directory to use as a destination, the same way as the source declaration procedure. This is the directory where the source will be backed-up to. For the “Backup my sidux home directory” example this could be /media/backups/siduxHome.



why can't I declare my remote place ??


Today's file managers like nautilus, konqueror or dolphin have the ability to directly support some remote filesystem protocols such as smb/cifs or nfs.
You might be able to browse some remote places via your filebrowser but cannot find a way to declare those as source or destination.
This does not necessarily mean that the remote place is locally mounted. You can distinguish such a situation by observing the full path address of the remote folder. If it does not start with "/" but with eg smb:// then you are using the direct filesystem browser support.

The solution to this issue is to mount the remote place locally.
This involves, adding a line at the file /etc/fstab so that the remote directory can be visible under a specific mount point eg /media/my-Remote-Place/

It is not the purpose of this document to describe every possible mount procedure. Please refer to your distro's documentation or support web pages for guidelines.



Snapshots to keep

Every time a task is run the source data are backed-up as they are at that specific time.
This is called a snapshot !!
luckyBackup can hold a number of snapshots so that it is possible to revert to any one of them.
Define the maximum number of snapshots you wish to keep, by clicking on the arrows of the spin-box.
If that number is reached, older snapshots will be deleted when the task is run again.
The default number of snapshots to keep is 1.



Below is a screenshot of the task properties dialog, with the name, source and destination fields, ready.













As soon as you are finished declaring all appropriate fields, click the “okay” button.

If there are errors, you will be informed by the application.





For safety reasons, if you have chosen "Backup the contents of the source directory" as task type, you will face the following WARNING message:





This is a reminder that the destination directory will finaly become a "clone" of the source. Any irrelevant-to-the-source data it might contain, will be lost !!



Next, the main window will regain focus, displaying the task you just created.

Note that the default include state of a freshly created task is FALSE (not included)














task properties (for the unsatisfied)



The task properties, as discussed at the previous chapter, are quite simple and straightforward. Now, it's time to have a much deeper look. If you haven't done it already (out of curiosity), do it now. Go ahead and press the advanced pushbutton at the “task properties” window. This will result in a resizing of the window and a display of much more information.

It is not as complicated as it looks !!



Description

You can optionaly add a description for the current task here.
This description will be displayed at the main window, as soon as a task is selected and can provide useful information without the need to open the task-properties dialog.



Exclude

This feature, allows the exclusion of certain file(s), folder(s), pattern(s) from the task. Everything declared here, will not be a part of the data transfer. It will be skipped.


NOTE that the this feature will be disabled if you select the Only Include option.



The Exclude tab is divided to:



1. Templates

Use the checkboxes to exclude the following at will:

  • Temp folders.

    All folders named tmp. These are directories that are used for storing temporary data that you would not mind losing. For example /tmp.

    pattern used: **/*tmp*/

  • cache folders.

    All folders named cache. These folders are used by various application or systems for storing cache data. Your browser for example, uses a cache folder.

    pattern used: **/*cache*/ & **/*Cache*/

  • backup files.

    Backup files created by various applications. These are files whose filenames have a trailing “~. For example if you open the text file “LotsOfText.txt” for editing, make changes and save it, then apart from the main file, another one will be created named “LotsOfText.txt~”. This is identical to the pre-modified “LotsOfText.txt” and is created automatically for backup/safety purposes.

    pattern used: **~

  • mount directories.

    System normal mount points. These would be /media and /mnt. If you decide to use your “/directory as source, then it would by wise to check this for various reasons. The most important one is to avoid backing up the destination onto its self!! Usually, the destination is a hard disk partition, different from the one that your distro is installed and your root directory (“/”) is located. This will be normally mounted at point /media or /mnt.

    Please see the WARNING at the end of this chapter.

    patterns used: /mnt/*/** & /media/*/**

  • lost+found.

    System folders named lost+found.

    pattern used: **/lost+found*/

  • system folders.

    These would be /var/run, /run, /proc, /dev and /sys. Again, you can use this option if you decide to backup your root folder (“/). If it does not suit you and you want your own defined directories to be excluded, feel free to leave this unchecked and use the “user defined” way to declare anything.

    patterns used: /var/**, /run/**, /proc/** , /dev/** & /sys/**

  • Trash.

    Directories named trash. These are directories where files that you delete are stored.

    patterns used: **/*trash*/ & **/*Trash*/

  • .gvfs

    Directories named .gvfs. Normally, these are hidden directories inside home folders.

    pattern used: **/.gvfs/



Example of an “Exclude” tab :



2. User defined

You can declare anything you wish to be excluded from the task by adding it to the “exclude list” in the following way:

  1. Use the text field located next to the add button to enter what is going to be excluded. If you find it handy, use the "launch pattern editor" button, located at the right of the text field, to open the graphical pattern editor.

  2. Press the add button (or ENTER), to add the entered text to the exclude list.



Remove an item:

  • click on it to highlight it

  • click the remove button.

Edit an item:

  • click on it to highlight it

  • click the edit button.

  • Change the item by using the keyboard.

  • click the done button.

Move an item:

  • click on it to highlight it

  • click the move up or down button.









Patterns can also be read from a file !!

  • Check the Read File box.
  • Define, at the line-edit on its right, the full path of the exclusions file (use the "browse locally" button if you wish).
This file must contain one exclude pattern per line. Blank lines and lines starting with ‘;’ or ‘#’ are ignored.



An exclusion can be a file, a directory or a list of files/directories that follows a pattern.

Anything you add as an exclusion must follow the pattern rules, as described at the end of the chapter.







WARNING

DO NOT FORGET TO EXCLUDE THE DESTINATION



It is possible sometimes, for the destination to be included in the source. Meaning that the destination directory is a part of the source hierarchy of files.

examples:

source is your root directory (“/”) and destination is /media/backups/

source is your home directory and destination is /home/username/backup/



This will result in unwanted data transfer. The destination will be backed-up onto itself !!



To avoid such circumstances, do not forget, to add as an exclusion the destination directory or a folder that contains the destination directory.





Include

Use this feature, to define specific file(s), folder(s) or pattern(s) to be included by the transfer.

There are 2 modes of operation available:

1. Only include

Use this mode to backup/sync only specific file(s), folder(s) or pattern(s).

For example, you might not want to backup a whole directory structure but just a single file

...or a single directory

...or 2 single files and all the open-office writer documents within this directory structure


Everything that you declare here, and only that, will be taken into consideration when performing data transfers of the specific task and nothing more.

NOTE that if you enable this option, the Exclude feature will be disabled.



2. Normal include

Use this mode, to define file(s), folder(s) or pattern(s) that will not be excluded by the transfer.

concept - theory:
As the list of files/directories to transfer is built, luckybackup checks each name to be transferred against the list of include/exclude patterns in turn, and the first matching pattern is acted on:
if it is an exclude pattern, then that file is skipped;
if it is an include pattern then that filename is not skipped;
if no matching pattern is found, then the filename is not skipped.

Note that, when using the "recurse into directories" option, every subcomponent of every path is visited from the top down, so include/exclude patterns get applied recursively to each subcomponent's full name (e.g. to include “/foo/bar/baz” the subcomponents “/foo” and “/foo/bar” must not be excluded).
The exclude patterns actually short-circuit the directory traversal stage when luckybackup finds the files to send. If a pattern excludes a particular parent directory, it can render a deeper include pattern ineffectual because luckybackup did not descend through that excluded section of the hierarchy. This is particularly important when using a trailing ‘*’ rule. For instance, this won't work:

include: /some/path/this-file-will-not-be-found
include: /file-is-included
exclude: *

This fails because the parent directory “some” is excluded by the ‘*’ rule, so luckybackup never visits any of the files in the “some” or “some/path” directories. One solution is to ask for all directories in the hierarchy to be included by using a single rule: “include: */”, and perhaps use the --prune-empty-dirs option.
This technique is used at the only include mode. Another solution is to add specific include rules for all the parent dirs that need to be visited. For instance, this set of rules works fine:

include: /some/
include: /some/path/
include: /some/path/this-file-is-found
include: /file-also-included
include: *





Add

You can declare anything you wish to be included by the task, by adding it to the “include list” in the following way:

  1. Use the text field located next to the add button to enter what is going to be included. If you find it handy, use the "launch pattern editor" button, located at the right of the text field, to open the graphical pattern editor.

  2. Press the add button (or press ENTER), to add the entered text to the “only include” list.



Remove an item:

  • click on it to highlight it

  • click the remove button.

Edit an item:

  • click on it to highlight it

  • click the edit button.

  • Change the item by using the keyboard.

  • click the done button.

Move an item:

  • click on it to highlight it

  • click the move up or down button.





Read from file

Include patterns can also be read from a file !!

  • Check the Read File box.
  • Define, at the line-edit on its right, the full path of the inclusions file (use the "browse locally" button if you wish).
This file must contain one include pattern per line. Blank lines and lines starting with ‘;’ or ‘#’ are ignored.





An inclusion can be a file, a directory or a list of files/directories that follows a pattern.

Anything you add as an inclusion must follow the pattern rules, as described at the end of the chapter.





Options

luckyBackup uses some default rsync options to perform tasks. That is not obligatory. You can remove any option and add others as you wish by using the Command Options tab. This is divided in 2 sections





Templates

Here, you will find normal checkboxes. These refer to some typical rsync options.

Simply click a box to change its check state, so that to use or not the option(s) it refers to.

The checkboxes provided and the relevant options they refer to are as follows:

  • Skip newer destination files refers to:

    -u, --update

This forces rsync to skip any files which exist on the destination and have a modified time that is newer than the source file. (If an existing destination file has a modification time equal to the source file's, it will be updated if the sizes are different.)
Note that this does not affect the copying of symlinks or other special files. Also, a difference of file format between the sender and receiver is always considered to be important enough for an update, no matter what date is on the objects. In other words, if the source has a directory where the destination has a file, the transfer would occur regardless of the timestamp.
  • Delete files on the destination refers to:

    --delete
This tells rsync to delete extraneous files from the destination side (ones that aren't on the source side), but only for the directories that are being synchronized. You must have asked rsync to send the whole directory (e.g. “dir” or “dir/”) without using a wildcard for the directory's contents (e.g. “dir/*”) since the wildcard is expanded by the shell and rsync thus gets a request to transfer individual files, not the files' parent directory.
Files that are excluded from the transfer are NOT excluded from being deleted because of the automatic use of the --delete-excluded option.
This option can be dangerous if used incorrectly! It is a very good idea to first try a run using the --dry-run option (-n) to see what files are going to be deleted.
If the sending side (source) detects any I/O errors, then the deletion of any files at the destination will be automatically disabled. This is to prevent temporary filesystem failures (such as NFS errors) on the sending side causing a massive deletion of files on the destination. You can override this with the --ignore-errors option.
    --delete-after
Request that the file-deletions on the destination be done after the transfer has completed. This is useful if you are sending new per-directory merge files as a part of the transfer and you want their exclusions to take effect for the delete phase of the current transfer. It also forces rsync to use the old, non-incremental recursion algorithm that requires rsync to scan all the files in the transfer into memory at once (see –recursive).
    --delete-excluded
In addition to deleting the files on the receiving side that are not on the sending side, this tells rsync to also delete any files on the receiving side that are excluded.
This option is added only if the “exclude groupbox” is activated.


  • Recurse into directories refers to:

    -r, --recursive
This tells rsync to copy directories recursively.
Beginning with rsync 3.0.0, the recursive algorithm used is now an incremental scan that uses much less memory than before and begins the transfer after the scanning of the first few directories have been completed. This incremental scan only affects our recursion algorithm, and does not change a non-recursive transfer. It is also only possible when both ends of the transfer are at least version 3.0.0.
Some options require rsync to know the full file list, so these options disable the incremental recursion mode. These include: --delete-before, --delete-after, --prune-empty-dirs, and --delay-updates.
Incremental recursion can be disabled using the --no-inc-recursive option or its shorter --no-i-r alias.
  • Preserve ownership, times refers to:

    -o, --owner
This option causes rsync to set the owner of the destination file to be the same as the source file, but only if the receiving rsync is being run as the super-user (see also the --super and --fake-super options at the rsync man page). Without this option, the owner of new and/or transferred files are set to the invoking user on the receiving side.
The preservation of ownership will associate matching names by default, but may fall back to using the ID number in some circumstances.
    -g, --group
This option causes rsync to set the group of the destination file to be the same as the source file. If the receiving program is not running as the super-user (or if --no-super was specified), only groups that the invoking user on the receiving side is a member of will be preserved. Without this option, the group is set to the default group of the invoking user on the receiving side.
The preservation of group information will associate matching names by default, but may fall back to using the ID number in some circumstances.
    -t, --times
This tells rsync to transfer modification times along with the files and update them on the remote system. Note that if this option is not used, the optimization that excludes files that have not been modified cannot be effective; in other words, a missing -t will cause the next transfer to behave as if it used -I, causing all files to be updated (though rsync's delta-transfer algorithm will make the update fairly efficient if the files haven't actually changed, you're much better off using -t).
  • Preserve permissions refers to:

    -p, --perms
This option causes the receiving rsync to set the destination permissions to be the same as the source permissions.
When this option is off, permissions are set as follows:
o
Existing files (including updated files) retain their existing permissions, though the --executability option might change just the execute permission for the file.
o
New files get their “normal” permission bits set to the source file's permissions masked with the receiving directory's default permissions (either the receiving process's umask, or the permissions specified via the destination directory's default ACL), and their special permission bits disabled except in the case where a new directory inherits a setgid bit from its parent directory.
Thus, when --perms and --executability are both disabled, rsync's behavior is the same as that of other file-copy utilities, such as cp and tar.
In summary: to give destination files (both old and new) the source permissions, use --perms.


  • Preserve symlinks refers to:

    -l, --links
When symlinks are encountered, recreate the symlink on the destination.
  • Preserve device, special files refers to:

    -D
The -D option is equivalent to --devicesspecials.
--devices
This option causes rsync to transfer character and block device files to the remote system to recreate these devices. This option has no effect if the receiving rsync is not run as the super-user.
    --specials
This option causes rsync to transfer special files such as named sockets and fifos.
  • Preserve hard links refers to:

    -H, --hard-links
This tells rsync to look for hard-linked files in the transfer and link together the corresponding files on the receiving side. Without this option, hard-linked files in the transfer are treated as though they were separate files.
When you are updating a non-empty destination, this option only ensures that files that are hard-linked together on the source are hard-linked together on the destination. It does NOT currently endeavor to break already existing hard links on the destination that do not exist between the source files. Note, however, that if one or more extra-linked files have content changes, they will become unlinked when updated (assuming you are not using the --inplace option).
Note that rsync can only detect hard links between files that are inside the transfer set. If rsync updates a file that has extra hard-link connections to files outside the transfer, that linkage will be broken. If you are tempted to use the --inplace option to avoid this breakage, be very careful that you know how your files are being updated so that you are certain that no unintended changes happen due to lingering hard links (and see the --inplace option for more caveats).
If incremental recursion is active (see --recursive), rsync may transfer a missing hard-linked file before it finds that another link for that contents exists elsewhere in the hierarchy. This does not affect the accuracy of the transfer, just its efficiency. One way to avoid this is to disable incremental recursion using the --no-inc-recursive option.
  • Ignore files the CVS way refers to:

    -C, --cvs-exclude
This is a useful shorthand for excluding a broad range of files that you often don't want to transfer between systems. It uses a similar algorithm to CVS to determine if a file should be ignored.
The exclude list is initialized to exclude the following items (these initial items are marked as perishable — see the FILTER RULES section):
RCS SCCS CVS CVS.adm RCSLOG cvslog.* tags TAGS .make.state .nse_depinfo *~ #* .#* ,* _$* *$ *.old *.bak *.BAK *.orig *.rej .del-* *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core .svn/ .git/ .bzr/
then, files listed in a $HOME/.cvsignore are added to the list and any files listed in the CVSIGNORE environment variable (all cvsignore names are delimited by whitespace).
Finally, any file is ignored if it is in the same directory as a .cvsignore file and matches one of the patterns listed therein. Unlike rsync's filter/exclude files, these patterns are split on whitespace. See the cvs(1) manual for more information.
If you're combining -C with your own --filter rules, you should note that these CVS excludes are appended at the end of your own rules, regardless of where the -C was placed on the command-line. This makes them a lower priority than any rules you specified explicitly. If you want to control where these CVS excludes get inserted into your filter rules, you should omit the -C as a command-line option and use a combination of --filter=:C and --filter=-C (either on your command-line or by putting the “:C” and “-C” rules into a filter file with your other rules). The first option turns on the per-directory scanning for the .cvsignore file. The second option does a one-time import of the CVS excludes mentioned above

  • Destination is FAT/NTFS refers to:

    -t, --modify-window=1
This is a useful when the destination file system is FAT/NTFS (windows).
When that is the case, many errors are encountered because windows file systems do not support all file atrributes that xNIX file systems do.
Moreover, rsync will compare the timestamps of files and decide if it will trigger a transfer. These timestamps are treated as being equal if they differ by no more than the modify-window value. Windows filesystems represent times with a 2-second resolution. This sometimes leads to rsync always performing data transfer although it shouldn't. To avoid this, the modify-window is set to a larger value.

Note that the following options:
   Preserve ownership, times
   Preserve permissions
are automaticaly disabled.

NOTE 2: FAT/NTFS partitions should be mounted using the options "shortname=mixed" and "utf8=true" (if UTF8 file names are used) to avoid further errors.

  • Use numeric group & user IDs refers to:

    --numeric-ids
With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends.
By default rsync will use the username and groupname to determine what ownership to give files. The special uid 0 and the special group 0 are never mapped via user/group names even if the --numeric-ids option is not specified.

  • Attempt super-user activities refers to:

    --super
This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user.
These activities include: preserving users via the --owner option, preserving all groups (not just the current user’s groups) via the --groups option, and copying devices via the --devices option.
This is useful for systems that allow such activities without being the super-user, and also for ensuring that you will get errors if the receiving side isn’t being run as the super-user.


User defined options

Add

You can add any rsync option you wish by adding it to the options list in the following way:

  1. Use the text field located next to the add button to enter the option you would like to add.

    Type the option, starting with a “-” or a “--” (without the quotes), followed by the appropriate string. Do not enter spaces.

    Example: “ --xattrs

  2. Press the add button (or press ENTER), to add the entered option to the “options” list.





Remove

Remove an item:

  • click on it to highlight it

  • click the remove button.

Edit an item:

  • click on it to highlight it

  • click the edit button.

  • Change the item by using the keyboard.

  • click the done button.

Move an item:

  • click on it to highlight it

  • click the move up or down button.







NOTE: Please refer to the man page of rsync for a complete reference of all possible options.



Remote

It is possible to use luckyBackup, not only for local transfers, but also for remote ones.

Data transferring either to or from a remote host is possible.

Tasks between 2 remote hosts is not supported.



To use this feature, simply check the Use remote host box located on top of the Remote tab.





Source or Destination

First, specify whether you want to use a remote host for your source or destination data by choosing an appropriate radio-button, located at the top of the Remote groupbox.

Please note, that the directory located at the remote host and will be used by luckyBackup as source or as destination, has to be declared at the appropriate text-edit fields, labeled source or destination accordingly, that are visible at “task properties - simple mode”.

user

Enter your username for the remote host at the user text-field.



host

Enter the name of the remote host you would like to connect to, at the @Host text-field.

Note that a host name can also be an ip address.

host names examples:

  • freehosting.net

  • 89.70.191.201



remote module

Connecting to an rsync module.

If you are contacting an rsync daemon at the remote system directly via TCP, then check the Remote module box.



Some modules on the remote daemon may require authentication.

luckyBackup, does not support either the definition of passwords as a task property (for security reasons), or the entry of passwords when prompted at the stage of a task execution (because it is possible for the specific task to be scheduled).

If a password is required by the remote daemon, then you have to create a password file and declare it at the relevant text-field (use the browse button to open a graphical file dialog and select your already created file).

The password file must not be world readable and it should contain just the password as a single line.



Please do not confuse the password to connect to an rsync module with the password needed if you use ssh as a transport shell.



ssh

If you use ssh as a transport shell to connect to the remote host then check the ssh box.



As clearly stated above (at the remote module section):

luckyBackup, does not support either the definition of passwords as a task property (for security reasons), or the entry of passwords when prompted at the stage of a task execution (because it is possible for the specific task to be scheduled).



For an ssh connection to become possible, you have to do all actions needed for a password-less connection, using an OpenSSH key pair.



However, if you still wish to use a direct password or protect your key with a passphrase, then you have to either:
   1. Execute luckybackup from a terminal. Then, you will be prompted to enter your password/passphrase at that terminal and not via the gui. or...
   2. Use the ssh-askpass tool (other variations such as ksshaskpass or ssh-askpass-gnome are possible).



Some helpful information on this ssh authentication scheme follows:

The public key authentication scheme is based on public-key cryptography, using cryptosystems where encryption and decryption are done using separate keys, and it is unfeasible to derive the decryption key from the encryption key.

The idea is that each user creates a public/private key pair for authentication purposes. The server knows the public key, and only the user knows the private key. ssh implements public key authentication protocol automatically, using either the RSA or DSA algorithms. The file ~/.ssh/authorized_keys lists the public keys that are permitted for logging in. When the user logs in, the ssh program tells the server which key pair it would like to use for authentication. The client proves that it has access to the private key and the server checks that the corresponding public key is authorized to accept the account.

example:

To create an appropriate public-private key pair, use the command

$ ssh-keygen

When prompted to enter a passphrase, just press “ENTER” twice (no passphrase).

This stores the private key in ~/.ssh/identity (protocol 1), ~/.ssh/id_dsa (protocol 2 DSA), or ~/.ssh/id_rsa (protocol 2 RSA) and stores the public key in ~/.ssh/identity.pub (protocol 1), ~/.ssh/id_dsa.pub (protocol 2 DSA), or ~/.ssh/id_rsa.pub (protocol 2 RSA) in your home directory.

Then copy the public key to ~/.ssh/authorized_keys in your home directory on the remote machine. The authorized_keys file corresponds to the conventional ~/.rhosts file, and has one key per line, though the lines can be very long. After this, you can log in without giving the password.

Please refer to the man page of ssh for a complete reference of ssh connections.



Enter the full path of your private key file at the private key file text-field (use the browse button to open a graphical file dialog if you wish).



Finally, specify the port to connect to, on the remote host, by entering its number at the port text-field. Leave it blank for the default ssh port (normally no.22).









Also Execute



This option is used for the situation that you wish to run some commands before and/or after the task execution.




add

  • Select the “before” or “after” section according to whether you wish commands to be executed before or after the task.
  • Type the full name of the command, as well as any arguments at the text field.
  • Click the add button, to add it to the list.




Remove an item:

  • click on it to highlight it

  • click the remove button.

Edit an item:

  • click on it to highlight it

  • click the edit button.

  • Change the item by using the keyboard.

  • click the done button.

Move an item:

  • click on it to highlight it

  • click the move up or down button.



STOP check boxes

On the left side of every command, there is a check-box available.
Check this to stop the task execution if the command exits with an error.



Repeat on Fail

This option allows any command that fails, to run again. The re-run times number is set by using the spinbox.
command is any pre-task, main rsync or post-task command.

fail, when referring to pre or post task commands, means that the command exited with an exit status other than 0 (zero) or it completely failed to start.
When it refers to main rsync commands, a fail means that the command failed to start completely or it exited with one of the following errors:
5 - Error starting client-server protocol
12 - Error in rsync protocol data stream
30 - Timeout in data send/receive
35 - Timeout waiting for daemon connection
255 - unexplained error



by-pass warning

Checking this box means that all security checks that refer to this task will be skipped.
The task will run even if it appears with a WARNING message.
The checks by-pass, can be used when some pre-task execution commands can overcome possible warnings (eg mount a partition).

BEWARE: Only use this option if you really (I mean really) know what you are doing.

WARNING : The Dry-run feature only affects the main task and NOT pre/post command which are going to be executed normally !!.



complex commands

Please note that luckybackup only supports the direct declaration of a command and its arguments. Complex command syntax is not (yet) supported.
This includes the use of pipelines (|) or backtits (`) or even redirect of a command's output with ">".
If you wish to use a "complex" syntax please create a bash script that contains your command(s) and enter the name of the script at the "also execute" field.



Validate

The validate pushbutton can prove useful, if you wish to perform some initial checks to all the fields you have declared at the task properties window.

As soon as you click the validate button, a pop-up message will apear, informing you of any errors or warnings found.




In addition to this, it will display the actual command that is going to be executed.
Click the copy command to clipboard button to be able to paste it wherever...

Click the Okay button to close this dialog.



Pattern rules

Patterns entered in the “Task properties” window must follow these rules:



  • If the pattern starts with a /
    then it is anchored to a particular spot in the hierarchy of files, otherwise it is matched against the end of the pathname. This is similar to a leading ^ in regular expressions.
    Thus “/foo” would match a name of “foo” at the “root of the transfer". If you think of the transfer as a subtree of names that are being sent from sender to receiver, the transfer-root is where the tree starts to be duplicated in the destination directory. Because the matching is relative to the transfer-root, changing the type of the backup affects the path you need to use in your matching.
    An unqualified “foo” would match a name of “foo” anywhere in the tree because the algorithm is applied recursively from the top down; it behaves as if each path component gets a turn at being the end of the filename. Even the unanchored “sub/foo” would match at any point in the hierarchy where a “foo” was found within a directory named “sub”.
  • if the pattern ends with a /
    then it will only match a directory, not a regular file, symlink, or device.
  • choosing between doing a simple string match and wildcard matching is done by checking if the pattern contains one of these 3 wildcard characters: ‘*’, ‘?’, and ‘[’.
  • *
    matches any non-empty path component (it stops at slashes).
  • **
    matches anything, including slashes.
  • ?
    matches any character except a slash (/).
  • [
    introduces a character class, such as [a-z] or [[:alpha:]].
  • in a wildcard pattern, a backslash can be used to escape a wildcard character, but it is matched literally when no wildcards are present.
  • if the pattern contains a / (not counting a trailing /) or a “**
    then it is matched against the full pathname, including any leading directories. If the pattern doesn't contain a / or a “**”, then it is matched only against the final component of the filename. (Remember that the algorithm is applied recursively so “full filename” can actually be any portion of a path from the starting directory on down.)
  • trailing “dir_name/***
    matches both the directory (as if “dir_name/” had been specified) and everything in the directory (as if “dir_name/**” had been specified). You need rsync version 2.6 or later for this option.



The pattern editor


The pattern editor makes the definition of patterns much easier (...for some people).
You can just select the options you wish, using a graphical user interface (gui) and a pattern will be produced automatically and displayed at the final pattern field.
After having all the relevant fields of the gui filled, click the okay button to insert the final pattern at its final destination (eg an exclude/include pattern).
Click the reset button, any time, to reset all fields of the editor.

Have in mind the its abilities are restricted to simple and most frequently used patterns.
Not all possible pattern rules can be defined by this editor.


NOTE: The patterns that the pattern editor produces are for specific source and task type. If these change, the patterns have to be re-declared.


Specific directory



Use this if you want the pattern to refer to a specific directory.
Click the browse localy button to select the directory you want the pattern to refer to.
eg /home/luckyb/Downloads/

Check the Directory contents box for the pattern to refer to the contents of this directory.
eg The contents of directory /home/luckyb/Downloads/

NOTE: If you use the pattern editor to define an only include directory, the Directory contents box has to be checked.


Specific file



Use this if you want the pattern to refer to a specific file.
Click the browse localy button to select the file you want the pattern to refer to.
eg /home/luckyb/Downloads/video.avi


Set of directories



Use this if you want the pattern to refer to a set of directories that their names have something in common, no matter their location inside the directory tree.
eg To refer to :
* all the directories that their name contains the characters "videos" (videos, videos_1, videos_2, my_videos etc): Type videos at the contains : field.
* all the directories that their name starts with the characters "vid" (videos, videos_1, videos_2, vids etc): Type vid at the starts with : field.
* all the directories that their name is exactly "videos" (videos...): Type videos at the is exactly : field.


If you wish to anchor the pattern to the root of the transfer, check the use absolute path box.

eg
To refer to all directories that their name contains the characters "videos" and are inside "/home/luckyb/Downloads" :
1. Check the "use absolute path" box.
2. Use the "browse localy" button to select the directory "/home/luckyb/Downloads".
3. Type "videos" at the "contains :" field.


When the use absolute path box is selected, the pattern will only take into consideration, directories that are one level below the declared folder.
To refer to deeper levels of the directory tree, use the go deeper in path by spinbox.

eg:
The diredtory "/home/luckyb/Downloads", contains 3 sub-directories:
* Loukas (/home/luckyb/Downloads/Loukas/)
* Dimitra (/home/luckyb/Downloads/Dimitra/)
* Maria (/home/luckyb/Downloads/Maria/)

Each one of those 3, contain lots of stuff amongst whom one directory named "music".
To refer to all these directories that their name is "music" and are one level below "/home/luckyb/Downloads" :
1. Check the "use absolute path" box.
2. Use the "browse localy" button to select the directory "/home/luckyb/Downloads".
3. Type "music" at the "is exactly :" field.
4. Select "1" at the "go deeper in path by :" spin-box.


You can also check the any box to go deeper in path by any level.


Set of files



Use this if you want the pattern to refer to a set of files that their names have something in common, no matter their location inside the directory tree.
eg
To refer to all files that have ".avi" as an extension, type .avi at the ends with : field.

All options mentioned at the Set of directories section are valid, except the "Directory contents".















not just ready yet



So, you have managed to create a number of tasks and you are ready to execute all or some of them.







Before doing so, you might want to review the following:

Include state

Change the include state of any existing task

  • Just click on an include checkbox, at the left of an task's name to change its state to included (checked) or not included (unchecked)

Have in mind that only included tasks will be executed.

Also note that the include state is a basic property of a task, together with its name. Both these properties are saved inside a profile.



As soon as you “include” a task you will notice that there is an icon at the left of the task's name as well as some text displaying in the information window:



declared data check



A directories check will be performed instantly. All declared folders will be checked to see if they are empty or if they exist and luckyBackup will warn you accordingly.

This task is performed to protect your data, either source or already made backups.



Please note that directory pairs statuses are divided into 3 categories:

1. ok: Both dirs are ok.

You are ready to go as far as this pair is concerned.

2. WARNING: This task will be skipped to avoid doing something stupid with your data !!

The declared source directory does not contain any data or does not exist at all. Most possible situation, is that you have forgotten to mount a partition or have just mistyped a path. You wouldn't like the foolish rsync command to make your already existent 500GB backup (that took 2 days to create), vanish in a second so as to look the same with an empty directory !!

3. CRITICAL: This task will NOT BE SKIPPED.

The declared destination directory does not contain any data or does not exist at all. Most possible situation, is that you have forgotten to mount a partition or have just mistyped a path. Of course it might be the first time you perform the specific task, and you just want you destination folder to be created or fill with new data if it's empty.

Beware if it's not the first time you perform this task.

ADVICE: Spend some time and have a good look at this window. Then decide wisely whether to “Go on” and execute a bunch of rsync commands, or not and try to fix the errors that cause the “bad” status messages.



Execution order

Tasks of a profile are executed sequentially, one by one at the order that they appear at the task list.

You can change the execution order of the tasks within a profile:

  • Click on an task to highlight it.

  • Press the up/down arrow keys located at the right of the “Task List” to change its position inside the list.



Save profile

Now is good time (actually, every time you change something regarding a profile is a good time) to save the profile you created.

  • Click on the “save” button or select “Profile → save” from the menu or just press ctrl+S .












run

After all this preparation you are ready to have a go.

Well, just a final thought that might save you from a lot of trouble. That would be a...



simulation execution



If you are unsure of the effects on your data when executing an rsync command try the simulation option. luckyBackup will perform a trial run that doesn't make any changes (and produces mostly the same output as a real run).

Note: The progress-bar might be misleading when using this.

WARNING : The Dry-run feature only affects the main task and NOT pre/post commands which are going to be executed normally !!.

  • Check the “drycheck-box to enable this option.



Go on now. Click on that big purple button button that is clearly labeled: Run.





task list check



For safety reasons, luckybackup will first check the task list for “errors” and pop up a relevant warning message if something is found unsatisfactory.

For example if you haven't included any tasks, you will get a warning message at the information window.



The most important check of all is the one of many tasks that share the same destination.

When luckyBackup performs a task the “normal” way (meaning, you were not tempted to click that “advanced” button and change stuff), you end up with a destination directory that is identical to the source. Any file that existed at the destination and did not at the source, will be deleted.

Now imagine the situation of creating a number of tasks with different sources, the same destination (for example /media/backups) and “backup dir contents” as task type.

The first task will execute ok resulting to a “cloned source” destination.

The second task will clone the source again (which is different this time) to the same destination directory. This means the first task's backup will be lost. The second task will cancel the first.

backup dir by name” should have been selected as task type, so as to end up with the destination directory containing all the sources of your tasks as sub-folders.

So do not be surprised if you face the following warning message as soon as you press the “start” button.




















normal run



Well, you've done it. You wisely chose to Run and let the party begin. The main window fills with scrolling data calculating and transferring, messages and the progress-bar shows the progress of the current task (not in simulation mode):



NOTE : The application window cannot be closed while task execution is in progress. If the window close button is clicked, luckyBackup will minimize to the tray area just like in silent mode.



Smash the “ABORTpushbutton any time during the execution of tasks if you feel like something is going wrong (or just want to see what will happen :-p).





Press the "shutdownpushbutton down to shutdown your system as soon as the execution of all tasks finishes.





All done

As soon as all tasks are complete you will face the following window.







Please notice that a log file is created every time you come along this window. It is hosted in your home directory under ~/.luckyBackup/logs and can be viewed easily by using the luckybackup logviewer or any text file viewer.










silent mode



Silent, as the word describes, is that mode when luckybackup is executed in a discrete way.
The application main window is not shown at all.
Instead, an icon appears at the tray notification area, together with a bubble message that informs the user of current action.
kde users will get feedback via their graphical environment's tray notification system.



Silent mode can be invoked by using the --silent argument. eg:

luckybackup  --silent  [profile]


Please refer to the terminal arguments chapter for a full [options] and [profile] description and usage.

After the profile execution is finished, the tray notification icon will stay there for a few seconds and then disappear, freeing the system's memory from any luckybackup process.
In simple words, the app will exit.

Click on the icon, any time during profile execution for the main application window to show.
NOTE that if you do, luckybackup will not exit as it would normally do.

The silent mode can prove quite useful when executing luckybackup via cron or anacron or as part a bash script.
Each time the job is run, you will be informed by the icon and the bubble message.










terminal lovers



For those of you that for any reason would like to execute luckyBackup without a graphical user interface (gui), it is possible to run it in...


command-line mode





Command-line mode can be quite useful at systems where a graphical desktop is not available (eg servers).
Note, that no graphical libraries are needed when running luckybackup in this mode.
It can safely be used at a terminal.

The creation of profiles, using this mode is not supported.
First, you have to have an already created profile by using the gui.
Then, just type the command:

luckybackup  [options]  [profile]


Please refer to the terminal arguments chapter for a full [options] and [profile] description.




The options that invoke the command-line mode are:

  • -c
  • --no-questions



When the execution of a profile at command-line mode finishes, the application provides the following error codes:

1: Something wrong with the arguments given at CL
2: The profile failed to load for a reason
3: Something is wrong with the task list (eg there is nothing to execute)
4: Something is wrong withe the declared directories
6: Errors found at rsync execution (or pre/post commands execution if any)
0: No errors - Everything went ok










schedule

It is possible for luckyBackup to “make arrangements” for specific profiles to be executed at regular intervals automatically, without the need to run the gui of the application.

If you wish to take advantage of that feature, click on the schedule button located at the toolbar of the main window or select schedule from the profile menu.



add

To add a new schedule, click the add button and define the following:

  1. Profile declaration

    Select an already existent profile from the Profile list.

  2. Skip critical

    As described earlier, before the actual execution of tasks, luckyBackup first checks all declared data for errors and produces relevant messages. Those, that appear with a WARNING message are skipped anyway to protect your data. But those with a CRITICAL message, although suspect, are not going to be skipped. If you wish the latter to be skipped at schedules then check the skip critical box.

    The default and advised state of this check-box is checked (meaning skip all tasks that appear with a critical message).

    Please refer to chapter declared data check for more information about messages.

  3. Console-mode

    Check this box if you wish this schedule to be executed in command-line mode.
    Use this if there is no graphical environment available at your system (eg server).
    Also use this option if there is a graphical environment available but you wish not to grant permission, to the user that runs luckybackup, to use it. This is almost always true for the super-user (see also troubleshooting).

  4. Execute every

    It is possible to schedule a specific profile to execute at a specific time, at specific intervals by declaring the following:

  • Month & day of month

    Declare the specific date you wish your profile to be executed, by selecting the relevant month & day of month (for example every February the 26th).

    If you do not wish to use this option leave both listboxes to Any.

  • Day of week

    Choose the day of week, you wish your profile to be executed (for example every Sunday). If you do not wish to use this option leave it to Any.

    NOTE: If you use both “Month & day of month” and “Day of Week” then the profile will be executed when at least one of them matches the relevant time criteria. For example if you declare “every February the 26th “ as well as “every Sunday”, the schedule will run every Sunday and every February 26th.

    TIP: If you wish the schedule to run every day, leave all 3 fields to Any.

  • Time

    Declare the specific time at which you want a profile to be executed by entering appropriate data at the hour & minute boxes. Use the up/down arrows if you find them handy. e.g. for execution at time 17:45, enter hour:17 & minute:45.

    If you wish the profile to run on an hourly basis, set the hour value to -1

  1. @reboot

    For the profile to be executed once, at system startup, check the @reboot box.
    Adjust the delay minutes to give your system enough time to settle.

  1. add

    To finish the procedure of adding a new schedule, click the okay pushbutton.

    A new line will appear at the window above “Profile execution details”, stating the profile you have chosen and when this is scheduled for execution.

modify

To modify an existing schedule:

  1. Select a schedule at the window, so that it is highlighted and click the modify button.

  2. Change everything at your will and click the okay button when you're finished.





remove



  1. Click on a schedule at the window to highlight it.

  2. Click the remove pushbutton.



cronIT

Whenever you have finished adding, modifying, removing schedules click the cronIT pushbutton for the changes to take effect at your system.





crontab info

luckyBackup uses the current user's crontab to schedule the execution of profiles.

Please do not confuse that with the file /etc/crontab or anacron. If you wish to use these instead, you must manually alter relevant configuration files by adding lines that will execute luckyBackup in silent or command-line mode.

See the man pages of cron and crontab (1 & 5) for more details.

To display the current crontab, click the view current crontab pushbutton located at the bottom left of the dialog.





luckyBackup uses the current user's crontab to schedule the execution of profiles.



Troubleshooting sheduled backups



1: cron user permissions
If the /etc/cron.allow file exists, then you must be listed there in order to be allowed to use this feature. If the /etc/cron.allow file does not exist but the /etc/cron.deny file does exist, then you must not be listed in the /etc/cron.deny file in order to use this feature. If neither of these files exist, then depending on system-dependent configuration parameters, only the super user, or all users will be able to use this feature. For standard Debian systems, all users may use this feature.

Some useful (terminal/console) commands:

  • crontab -l

    causes the current crontab to be displayed on standard output.

  • crontab -r

    causes the current crontab to be removed.



2: X-Server user permissions
It is essential for a user to execute luckybackup in silent mode via cron, to be allowed to connect to the X-server.
For security issues, this is most of the times NOT the case for the super user and will be reported at the cronLogfile (see log-file below) as:
Invalid MIT-MAGIC-COOKIE-1
or
No protocol specified
luckybackup: cannot connect to X server :0

Please refer to unix/linux commands XAUTH and XHOST for a full understanding of X-Server access control issues.

If you do NOT wish to use the X-server, the console-mode option is a nice workaround. Please note that no visual feeback will be available during profile execution.



3: cron locale settings
If one or more profiles or tasks contain specific language characters (eg Greek, Cyrillic etc) then it is possible for a cronjob regarding these specific profile(s) or task(s) to NOT execute correctly, leaving a process named "luckybackup" running with no results.
This is due to cron locale settings and can be confirmed by running the command:
locale
both directly at a terminal and via a cronjob. The ouptut of the terminal command will look normal (eg LC_CTYPE="en_US.UTF-8") but the output of the cronjob will not (eg LC_CTYPE="POSIX").

workaround:
Create (if not already present) the file /etc/environment and add the following line
LANG=en_US.UTF-8
The cron process will read this file when it starts, so you need to restart it in order to apply the change:
service cron restart



4: luckyBackup own cron config file
luckyBackup saves all the information of the “schedule dialog” at its own configuration file every time you click the cronIT button. That is irrelevant with the system's crontab and has the following effects:

  • luckyBackup does not interfere with other (if any) entries of your crontab. It just adds/changes/removes its own entries without affecting anything.

  • If you alter or remove your crontab manually and accidentally delete luckyBackup entries, you can still open the “schedule dialog” (all the information will appear) and click “cronIT” for the deleted entries to recover.

  • If you wish to delete all luckyBackup entries from your crontab, open the “schedule dialog”, “remove” everything and click “cronIT”.

5: ubuntu users

Ubuntu based distros might not get a icon at the notification area during a scheduled run followed by the error:
Warning: "sni-qt/XXXX" WARN YY:YY:YY.YYY void StatusNotifierItemFactory::connectToSnw() Invalid interface to SNW_SERVICE
workaround:
Manually add the following text at your crontab just after the time columns:
eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)" &&
example crontab line after the above insertion (I know, it's long):
0 0 * * * eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)" &&
env DISPLAY=:0 /usr/bin/luckybackup --silent --skip-critical /home/luckyb/.luckyBackup/profiles/default.profile > /home/luckyb/.luckyBackup/logs/default-LastCronLog.log 2>&1

Furthermore, if you wish the notification to be displayed inside the active window (yes, it can get even longer !!):
0 0 * * * eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)" &&
gsettings set com.canonical.notify-osd multihead-mode focus-follow &&
env DISPLAY=:0 /usr/bin/luckybackup --silent --skip-critical /home/luckyb/.luckyBackup/profiles/default.profile > /home/luckyb/.luckyBackup/logs/default-LastCronLog.log 2>&1



log-file

The output of execution of scheduled profiles is saved in the following log file located at your home directory:

~/.luckyBackup/logs/PROFILENAME-LastCronLog.log

This is different from the normal log-file which will be created as well.
The cron logfile can prove handy to extract information about the cronjob itself

~/.luckyBackup/logs/PROFILENAME-LastCronLog.log

This is different from the normal log-file which will be created as well.
The cron logfile can prove handy to extract information about the cronjob itself








e-mail

luckyBackup can use already installed tools to send e-mail reports after a profile execution.

If you wish to take advantage of that feature, click on the email button located at the toolbar of the main window or select email from the profile menu.
After having finished editing the fields, click the "Okay" button to accept any changes and close the dialog.




command

This field is used to define the full command with arguments to run so that an email is sent.

Although luckyBackup uses "sendemail" as default, you can use any command-line email tool you wish. Some examples follow:
  • sendemail (default)
  • mail
  • mutt
  • pine


To revert this field to the default value which is:
sendemail -f %f -t %t -u %s -m %b -a %l -s %v
click the use default button, on the right


See also the arguments section of this chapter.


NOTE on cron: Depending on your distro, the mail command (eg sendemail) may not execute via cron due to a different location !!
eg cron is set up to only look at /usr/bin/ but sendemail is located under /user/local/bin/
workaround: Create a symlink eg # ln -sf /usr/local/bin/sendEmail /usr/bin/sendEmail



conditions

Define here, various conditions that have to be met for an email message to be sent.

  1. Never

    Check this to never send a message.
    Leave unchecked to enable email sending after a profile run.

  2. Error(s) occurred

    Check this to only send an email when errors occurred during a profile run.
    If the total number of errors is zero, no message will be sent

  3. Scheduled

    Check this to only send an email when the profile is run from within a cronjob.



arguments

Instead of typing normal text at the provided fields, you can type the percentage symbol (%), followed by a letter, to use one of the available variables.
In simple words, if you use a %[VARIABLE] syntax, this will be replaced by the corresponding value.
eg instead of typing the profile name, you can just enter %p

These variables are divided to 2 categories

  1. Editable
  2. The value of these variables is defined by the user.
  3. pre-defined
  4. These refer to system or application defined variables that the user cannot change.

Note that it is possible to use a variable inside a definition of another variable.
eg see "body"


Available variables:

  • from

    reference: %f
    Enter the email address of the sender at the available field and use it as the variable value.

  • to

    reference: %t
    Enter the email address of the recipient at the available field to and use it as the variable value.

  • subject

    reference: %s
    Enter the subject of the message at the available field to and use it as the variable value.

    To revert this field to the default value which is:
    luckyBackup report

    click the use default button, on the right

  • smtp

    reference: %v
    Use the available field to enter the smtp server address and use it as the variable value.

  • body

    reference: %b
    Use the available field to enter the body of the message and use it as the variable value.

    To revert this field to the default value which is:
    Profile: %p
    Date: %d
    Time: %i
    Errors found: %e

    click the use default button, on the right

  • logfile

    reference: %l
    The value of this variable reflects the actual (full path) filename of the logfile.

    Note that normally individual logfiles for each task are created after a profile run.
    These are merged into a single one before the send process.

  • date

    reference: %d
    The date at the specific moment the profile run.

  • time

    reference: %i
    The time at the specific moment the profile run.

  • profile name

    reference: %p
    The profile name.

  • No of errors

    reference: %e
    The value of this variable reflects the total number of errors that occurred during the profile run.



test

Use the test button any time to send a message with the arguments provided.
The message will be sent as soon as the button is clicked.
A dialog will provide feedback about the email command run result.



logging

A couple of logfiles are available after an email is sent and located at the user's home directory (~): ~/.luckyBackup/logs

  1. profile run output
    This contains all the task's commands output.
    It's contents are exactly the same with the command's output window.
    It's filename is [PROFILE_NAME]-email.log

  2. email run output
    The contents of this logfile contain the result of the last email attempt.
    It's filename is [PROFILE_NAME]-email-LastLog.log








The manage backup/sync task

This feature is used to manage already created backups.
Various tasks can be accomplished through the manage dialog, such as:

  • Browse the destination and source
  • View the log of a backup/sync task
  • Delete a backup
  • Restore



To launch the manage dialog:

  1. Highlight the task you wish to manage its backups.
  2. Select task -> Manage Backup from the main window menu



At the top of the window, the current profile and task are displayed.

On the left top side, there is a list of the backup snapshots of the task created so far.
You can select a snapshot by left clicking on the corresponding date-time field.

On the right, two browsers display the contents of the destination and source.
NOTE that the destination refers to the selected snapshot.
It is possible to change the browsers view so as only destination is visible, by checking the hide source box.



Beneath the snapshots area there are buttons that perform various actions.
These actions refer to the selected snapshot.



View log

Click the view log button to launch the log viewer for the selected snapshot


All the task execution progress of the specific snapshot is displayed.
Use the window scroll bar to navigate within the logfile.


If there were errors during the task execution, you can jump to them by using the next/previous error buttons.


Errors are displayed in red color.
Information lines are displayed in magenta or blue color.



Calculate differences

Click the Calculate differences button for all the differneces between the source and the selected snapshot to be displayed.


There are 3 different categories of differences:

Snapshot data that also exists at the source and is different
These snapshot data displayed in blue color, will replace the relevant source data during a RESTORE procedure

Snapshot data that do NOT exist at the source
These snapshot data displayed in green color, will be transferred over at the source during RESTORE

Source data that do NOT exist at the snapshot
These data that belongs to the source and is displayed in magenta color, will be deleted during RESTORE only if you enable the option: "delete existing source data that do not exist at the backup"



delete backup

Click the delete pushbutton to wipe out the selected snapshot.

You will first be WARNED by a dialog. This is the first and last WARNING you will receive.



Click the start button to proceed to backup data deletion.



NOTE:
1. If more than one snapshots exist, you can ONLY delete the earliest made snapshot.
2. If only one snapshot exists, the whole backup wil be deleted.



restore

The restore button's purpose is to transfer your data
from the selected backup created at a specific date & time (snapshot),
back to its original location (source).



Before you click the start button for the transfer to take place, take a minute to consider the following options:

1. Delete existing source data that do not exist at the backup
This option is disabled by default.

If you leave it unchecked, the backup files will replace the corresponding source files.
Any source files that do not exist at the backup (eg files created after the snapshot) will not be deleted.

If you enable this option, all source data will be replaced by the backup.
You will end up with the source being identical to the snapshot.
That means that your original data will become exactly the same as it was at the moment you created the snapshot.



2. Simulation
Check this option to perform a dry-run.
You will be presented by (mostly) the same output as a real run, but no data transfer will take place.



3. Change the restore path
It is possible to not restore the backup to its original place but anywhere.
Click the change pushbutton for a file browser to appear.
Select the new directory to restore the backup snapshot to and click ok.






restore

The main goal of luckyBackup, as its name states, is the creation of backups of your data.

Somebody once said:

if you haven't backed up your data is like not having them at all !! ”

That is because, based at the laws of probability, some time, for some reason, something will happen and you will lose valuable data. Another guy once said:

computer users can be divided into 2 categories:

Those that have lost data

...and those that have not lost data YET ”



I really wish you to never come to that situation.

But if you do, then I hope that you backed up your data the very last minute either by using this application or not :-)



profiles restoration

As explained earlier, all profile, logs and snapshot data are stored inside the user's home directory, under ~/.luckyBackup/
It is essential to understand that all luckybackup automated restore procedures must make use of these data. Because of that importance, a backup of all task-related files is performed after each task finishes at the destination directory, under folder:
DESTINATION/.luckybackup-snaphots/PROFILENAME.profile/

In case profile files, logs and snapshot data are lost for any reason from inside your home directory, you can always import them back by using the import profile procedure and navigating to the task's destination under .luckybackup-snaphots/.



ways to restore your data:

1. restore wizard

This method is thoroughly described at the manage backup - restore chapter of this manual.



2. restore task

The second restore procedure that luckyBackup utilizes is actually a normal task that is created from the original one with some crucial changes:

  • The task name is changed so that it is distinguished from the original.

  • A swap between the source and the destination is performed so that the destination becomes the source and the other way round.

  • The “skip newer destination files” box, at the “options” groupbox of the modify task widow, is unchecked so that every file of the backup replaces the one that exists at the original data.

The advantage of this method over the restore wizard is that you have full control of the situation.
Modify the restore task as you wish by using the modify dialog.



If you wish to create a restore task then proceed to the following:

  1. At the application's main window, click on a task to highlight it and then select Create Restore Task from the task menu.





  2. You will face the following message box:



    Click ok to proceed.

  1. Another “task properties” window will appear. This is the restore task and it differs from the original at the 3 points just stated (name, source & destination, “skip newer files” option).

  2. Change anything at your will (or just leave it as it is) and click the “Okay” button to create the RESTORE task.

  3. Execute the RESTORE task as usual to restore your data at its original place.












Epilogue

Wish you good, fast, reliable, safe and usable backups

(no matter if you use luckyBackup or not)

luckyb :-)




luckybackup-0.5.0/manual/images/0000777000175000017500000000000011560462404016125 5ustar luckybluckybluckybackup-0.5.0/manual/images/top.png0000666000175000017500000000074611536464563017457 0ustar luckybluckybPNG  IHDR\DttEXtSoftwareAdobe ImageReadyqe<IDATxڜJAwg'hae'Bk;W+{ESNP\Hs,솙$_fg9(R.X/ 5~mX5ĺ"n Újp'P|),7= \zykV\7kX\8|^96%ikb8tȰ<$^ M'L{LA o^{`AщxN88׾eQ.,;`oڠc+Iq;,!ێ,g`qL*k)bO<6+N=7PF ,i8d  "'`S tl b7Õi ~-/>!-sV@-ܤqĄeE#!-^KN6bC-W|V{qbB yU1)͡^DeGaFm  lJvϞjރ`CdF4tOh||BScNḐԿ] Q⇓(꼼MjVtBX*q!IٸwF lH `kD~d A@"LQ`0|P!pȻC)%(ANcCE&#Gm: ЗH3ىY[dj8) e\w6m Ugަb7B5M|W,F+2&lf;?94q0(Q'YVXT9>Jpݠl:.IsJ5 /q.8 d!$)))--- v㵞??>>Cj 6_qxlHEpA*sH(D:3ĠCRW[[pͿ&F(v|x`kkKĤ>*n[̣DY:oenM^hN8xy mLPd*pAz){EIV|bȽHpcePRW)lxetT\5aY&kh!K&*2CK%JG[a:k`x4@彸ipeq4/ٱc mΐ]FfoC87rlv#*2]tIKO ?tѧoNJr:l]}W,H<*W'=8jU68$X<*$-#ZOc9} mE"YyX_1G"X8V)v+h»ə1 xS Pz)R&&7, 2 fZG Qi쬇e VŸE>No=KnFP@9hb^Slpu8jqqꊈ';$v ~x07=e-g!qqqܹsƆV4 !)1O>P(zǀ3O5#xEL(iF@Zu(z$aRK;ش^u0 ӈMnQ`хxli:qFCExfJlQKAЛ-4:U., 5!FV Ry!E 5M0H qiRR `}MKu7!-)!!aފ0;+{܉'ӷGffCCÁwQ\Z2t萱c6 EԘ1`m[DX#|As=z>tK.γWCFiDf`MhV 0܄zr%x^~9y\jis<\),%uSgq@y^9J4ǰRH /8`qB˚މeƒz;.t`D倜$ppuNHIPkx@u&yB `'1 "R.H("wU#ď:JYY;YzBUEoilO]>ީ]AP|||Ssƍ닊g?5jtqq3fzGv*9Bi'ښk׭]{3f0pVmqxgO\.X][pGC  r;UGMW)BPf5_޺U\\\>v ޱx3 ]Zz7 vpfsnNRo 0oW;k.‚‹/qLP x5וq m[m۶7?jXd $M3Ү7?RÊжzTxp:-h0ǑPPцP@QSBAMs&YQ =47>70vbІ$c&T7B9,b*1 ȷ(ۘ)7-#ƿ'(5S3H@gÚw uJ_ 3sZCR7rT͐54AEW5Æ07X?JCu3$3F }Ĺ>(QzwjSQ[]8JMRm*TITELOM =jzSW^yiRRR(/|sw;k?0R546l޼y! SH=zL:w?w> GS0+V(//'5sƌOW/Y$--gyꩧoGxsO{=#G|뭷yE6}[uu|Zs$$$‹.q F+V|5jԌ38 (0x^{-=-ٹsǏ0j } \x #`ΜvI8a=7(/vv<1v.P85W߿RSOKnjK)1b8X>|0ص1|<̳땝;vB&NtsejkkϛznNtw EoQ\\zvۚ[h/0dp>S ]jUee%O~re7)_S[;g\%SN¤ⒷzkKzKJ  gx.]6yΝ;}kԋ.L҅YСCSN뮻sss̒|5t '_m/RSr)=9!BHSSSSsScCccScCCCSSSݡ:=TWȈ}I >j rQ :xUS*Z+:WVZw3y<'6gU!^DW+R$nRσ leI%Vp?k9K<-%GG#x<^znτ>ȢPY n"<֠ ZpE7Uo#yƅǚv.<o7n0qb4B:$e***ο;73{ϯX2+++e"?Ekl90ff._Vc[u$']5WƛÆG^_ıT8~֬Y+waK.ƚ|GWZtٰùy^{ Ťw1]>믿?|*9+tPWYyձ˖-/{y~}]v٥oTKLI1B;Ι//H0'.1)))==0[ޔdCC51,g~tϽ5__`p׮]]2\=IoٲvCCìٳѣGϟ??3'_g4 ػw?ϟ׿?  axƍ;1_~9S NSUU[nꪫ{駟\I'ē[o>xS}sr|G՝4~c{l`^^yy}ݦM<=OyzN'c8n&Sx~5O~|{W a+P0eRb83qхS XO*#z.%㸅72GT|aj-bhp*%gxg#bRgUFh)G9>"ΐ3 :.ީ}@;H&D꣝EWV^tųfͺ馛XE-^?r hѢX2y_|1%% lGox㍔ҹs_~Æ o~٭hqC?; (MtkuOI9o<ӕҔĺ^z6mZB(@0` ^3^y啤$==4 蘯}g㏏=L0q℉gvkIIgOp}㯼[ty4Ϯ}>߂ V\Yu@4e=Gf%'N8q[YYy뭿)))93]tQג;O# 4GtEⴍD'?ܹ pE)[ZZz-gee;ο$3?!C׮]nZ -\hB\Mꩱcr;S1B1헛[RZ˛o2dHVVq.8fdwW}%lsay7n̙3n8M[ޓs^,uwW< е^?=ZUU2#au\M2} :L"m J(]*ܡ>- b%\1Z Cܦ"{@Ee")|i/lJ^i@BVEʼn'A([+>-DW^̻0ㆤw8] bup-h4*w>~ۼy(5oŋ/^dY +^s52;6V 7ܰa 6L<#ʸ{leI >!h7gݳ+7[mUEEq}!Ou |>" %%&K !`05!!1Dg ajJ٭CDf*))IOOG$(vUW-~w˗/+4m_Mm/+/_ve XC`N#}a.II\w>_3ֳ [@~­[g}6g}O^z)W&X 2Sl|ocϨQ(񆣯 = {ɿWXPyfXbs.#r&Ty :dL:lS=S6ù=0p YM)Pʦ7c`įY,d Z好usKKCcCSOccSS]]mScSCS#_]]]cccCcCSSSXOӴlrIt~(4< &AKo@z8t>UZ:ZBs0#9Aku|ǒX_J 0: 'Fl~y;!>C@a\fQpjQ ""0Ӥ/ذ~o7u]W_u5+ 9ŋyE&p;={: ("6n<֮]K/xÍ?2n'{'ѼnӻHIIz u-O<~^^TfF֖渴4ՄxYX wK؝z9m괔SN9UfQU]]XX8j((X>͇1cƢE{c}BV}*** ./ \6tǎGx=f̘wnuM޽57nx7}b,IF)ݲy3BPe\1=p6p+W~+Բ'IBV رc??5e556nx/,M~aIt\| T2Y*[X\QSSSVZ:x`nYYӭdȐ!bii)6FfffUU՚5ks]mnHMMMMMz8QDQ$>I>m§{M4bi>h8Wπ/s+|$8YݾNjWØ'bN}d4F%P.Yu*0X2tZ/P{u564d7|UW(%!ٽ{={s=7Gam m%G/ /pw^uUs=G)]z!'~c߿gϞKLͪ62<2)?~<;~) ׿D59-ʗE -Z|3yp߽]-7wc!CK={,.._ZXlrsx7PJkjΝ ii%ctIHH(83Ի{z~wu'Æ {饗z_]Yy9_/\֮[wVz䑇 ())vruFŬ/~qeK[G}gL:WS IDAT> >|cc[v*Þ={ (..f9mdٗނ]Pe׮]߃,X׮]{ʷzygӧOg}aBN? c玐aܹ㥗^䒋 i=Ű-I/HBL<={B|rBԩS/ڽ;d38;wB۷ ^3j)L-0DM`0 >y}֖(mmZ*VU-ze^$Dh%x^/3ǜhEU$e|^/Ew>>mm 7a/YZQ+a6t7l.!|akr1$z}^}}D|@ `3cw- X*`0SZLA/ 3 B`0hB`0P0 3F(2 0 4C" 3&~P5- dL~ٳR*/r"rSo~?yӍ7FU!=22KJ2{ w̚}q/~q-^pauUUʸ47n|sٶLJn®][^rgkiiQN7N+[Z޽oYg_jչ׻wo[_h{n1woYUUsϏ93_u[lILLLLL\3mBg|wSJx?*ömaƌTww)3g`-\hĈ ,X0_jB7%JKK[tYNNLP}9R0qڴ=<,7oyZvRJGJOO3jꮾ}*[AA!Xߟ/(,N~ܹsbߐ:tzXh]yUy)2_ԔiCߍ`Oq V|II)t_e%_|*#QŸ544Bjjj.ReeMtJ_cMU sQj젢x*VcN@ ؙ9)&D) |"R4']7o:=[8-$n/m;[q%k{3Lp&5#>Z%]2@at @ߎ GH2u={fbV2Nz[!gNϧKX]{OӻKbB`QҴg:}^o~MuvZjjژvӦO9w@r˞׿&{UUɣGn6ΐ%+BN9c*/Ϳʛo3Ϟ<)kv˖-@/ar&bRRҀ~v7\c{衇>3?hP7 {z%o꫟~)SQ$$߿^׌g1gySNawRGsݵzۭ"Sx !&Nppa ݄?C<%Kxf@nNϸ[Y[nJII3zponajq͙/TPP@8i}뙙lٲ^x?ۻw/Nt2{ƉXv1ʠzmww)))cƌ_q^lٲo38Y;|w/ZSN9/R@o  ;ΜAy5k>|8##cwۜ\77ww_~7Çꗿ}2YYY?`ϯ\SN+xgk~jٹɟC+\tD,F[4 ^#ײ ץkGU/GVIϩ&RX&t ۧszROrބ}L~}^lûI__q<H~W8AO(PΠ9cw᯦IX@!Ȇe;$ F(#2[[TFj[wӭGztB5W%?Yr!)]Rnݶe՗_ qB~ ]vM:}p`yE!Ǚ*++/|4.]:l.by1-9 l li ZǷCZN\4F bCܹ@el !yP/—cNe4AauGA HQw|b2eԩ> :z<‰R×v@oJG*DQEK3>.\<Ohژrk{$$N}t!N¥} Kbu7rNTה;_;ZhCDꅩTSXASVgVC?B#_^Q{˷l+hmm򀑖6qğ]p>)l7">Q隚T[[f͚0zĄļAy'|JFFJB#O^l)6mܹϺMJ \qWQ)1E;v8ya$dV JE,_'v5ǝ/PEN!*vG]#pCXA[s),rq{ ^HwY\qH/UJ@@(L~hk[@_@ÊKTT8eF3+>EBSTE`M=E] `q+Qt 5> (M I~-iϐ4h"pѲ :$AZ;UpezfeG~  :|СCqOϞ=ӝ^G$55R]JJrRR-f:IJJ2e?ҽ{w'NIhX88O.?r+ި)l6N C?v[ҨJH7Gj7b74RũB%HD 8V+`QLuKOwi8hAr:X׵یx >;2Gz8AA3h#i[apX hki}u4C5PCo LTW'BHRRRRRR\|<`(~1h}9]\WЅV 2- Vnqأk=|,@q2LnUbveiVnP/Te5Q;dIgkW ?u ZR+)7X6lxE;enlHe W˘"1"txuY ^(պJ?L pFHIRk8\zD-i.{(\)8IʛSR] aKu-\KJdص*2\Xc  3BqF(DJD~o5uQN^Tn"i[mDbLJ2!oYҘ|3ܐ5|c@Ŕ7)mf`V(W+&mPu cRCwOܜ?a nQb9( =% /A™fbݷܚ] \ܷݪja>xsY j3!V#PLg7~.| o(.>>2nڦqk[/k4̜ x<FՍ\t!PZ`+7!1'5zyo ?Nnۡ$EyK![xɀ8#uW<&XN^T}˩̈cuB&¡q#tR{Zzi8ۭK#q!6"J, eiõuߢ .nq.`i%)f">]󷺓(k驟'^處$f5Mt=BĕW6KbԖ%G{#W6zQ|K.6j~hBҚh:6" 8Ix>S4<vnu-I8KPCbBd>| !K#e2KGlNsV*%Xk@lK #*m:  EaC]T H> 7G]r(ΐȶJ?H.DDKWH115hWY'tMp22٦]@Gp#Bu P鮈z!#U^x!cͩ[O_&TxJu3ۗ`FH("Q!#{u/-70"z0K]aQ2A)]-$La}E6phR&HF 凸4' 01  P%N骻S4B\֑Z]4 ڶ824T@vPD9XU]ZؤMֽH @d#"M!WZJ=T# g%uݚ@+ѣN~~ի~~ }w<}KS\崣rW[͝,qǝ4HK Em'(fzAt*¾v-mF sn{Pn@ʔ q(L:墔@ ,\P5Q rDUGm> BCUklCtÅX۞ 7-=20bBuѢc?ə-('ģL]4w8䎄pIxI4oXYiۅk/!il%UDJW`fq)kv8h]J(e[ۗjosIwlP&^0ܱ;px⃫ﴃ WVmS7ZVI{vVG (nDUU:tDoku 7mя}%I0h?bëKZxAfzJy'ݻ}oۦx0 E]N;!!x+ ;Bp$1 8.Aߗ ʩժ{,p~^ D摜>Uܼ86#K#pvd!,E5jnSZBT+6bĄ_qf+ qzrRĬn*G q:yKԕuzi\lH<1:^䔔)SB~[֭[gOq04͛7.j݇ :v8ǃ<-X0_jڱ6 0aBbbwM{+lz~4{yɧ[`pÆ %%ٽz3V(@SrI'CNt0a8묳 99yp!p6VpΝ55P[j&NLJL.ff{_bYd׷fժ/쉏?Qz*SRذz}!O:u4ׯ/.׫Wc 4g%rL@(]Pk`[nO:d6=dD){vvm{PJ?ut}CV[v  <;6C["4 {]x!;캡#7smP9-up-)Kqvǩ-9`'ߕ]~/_ί</lϊa{ݫ"{+>C0N?#Gj[ZꚚظm۶ѣG%&&1' AJAw0+>-))P(iӷcƌ}e˖0vz^,sg+ͮ ػw޽{0ϔdZq-zM'|RXX`[awJˮ牉j}Xk%2E@5j)wDӣ $\H)ԑ!ʋ$H4d[z*P %)S0SFA&[ ܍( B'8rwQ~:̔n^r%}x<e˖'%%M6m<(+-r՗[6ofXA}ry׮]E&69'77>>v5'G;LǏW_]y>uN:lښ6m|'s>'ͩ &~g|7|=h`^!qc޵s'3ȔS'$֮YnN5k6~,bgϾuXGZɒ nmi|W[nٵkѣ !7}==sU]]'ྔiӇ_SSI1 hX`3U0ӎ; ҦMWw/'O>,cTWWkUSR IDATSmllܸq)S|GB";I蓮~_{9U`^8#pDm' ؘT'H0aC{qIprII6 kWq%{y2mz:WQ w# m:X[pju6:ϟ7_|Ɵ4^b6}zNn.>PTTӧM2dhBBBBBCM8]=ܹ>ܼA=Ovv9 ޽sx<ӧOy(زy=|\O>x<\h#{D)1K.80/!!aݟtoy[[339眛7hPRRs=KJ)ƃ?~ƙii&NÇ1ҒR6}z^^~oR6Qy͛8/)5 ֆ8?4iJ)Pcv8 JLJ> 7 :3zex3T}AwfUڣVD4!KND@}Cҵtcbڞcl_٢Q@VRjQvV$RJ[k~M̀6'7jM-"jŕH`$|Z=cA;VUP^gRɀܝ;QƗ-:'踒-: 3+$7s0@doIeKVo555C e˖P( [[[ŴW|iyyYyylܐ~ٓW_rEBB…^ԻwvΗeNNNNNiw֮]gE:475:m\p)#n]gdd]  2 }p7) ~|IYYiYYzݻ{Y={yN3UpzMMMXsrr)7'Vi!D8Qn<ONd(D $#{*e| %i-ȯ7Eʓ|gdh6*B@Sn8+$zj+@`@T]qt m>Biꋻ\VTģө QTc D8~t2{qrڒ8PXW_}efVM7[q񞆆/>ʫP ZZۭNH{<$GFk̍T7DW|3܍)-i{Uy$EBua1&̙7WTWVVٳ>ϯfuY_#9Ko5 5P ]c=.P `Z6}!t ;򅻀|e ApNTع:ٜ}7}-7pwBf(A,x\aJpHQhb5>aRB ^z|m!Ie?p!—.c=%!-'j+n1\F@HDC탦^/DA xm/;y!0F點w^WWWQ^[#GuMϯ&GR҉ӽs> `hE!>>>oP^ޠO:^[)SYO?=3!*B nx+IrI\f7pwfn8x_n.%n4hЉ'K/e)eGY]]k=tHA*U01i8كE>@ֺ*@+`eJPtq!&ScjJa+,D< Zx]fj15%XBLPJA %3]SA't9ڢЈHSZ&04;*ArAQ/,cXTN9WR3B5@s,cQU `p=VCF  M4 ~ΝN*o!klj|޽{Y|ʘ1c&Olʕ+w>.]}Çafuuͧ+W@@))**d BھcDze˘V]to^KoA)5Mʟ81/6MZUU嗫yB[ m0\8JH]0?z`򂂂f0C!;v,]6v`Z #tU_~yyI8BQ*>f[Zg A ցP aA'uZ/̶jm PʅUl4G@U:?"XgiP!RQxPxΰ7-I|ٙZ /)Ǵ`s0-@Ƕg#@T'.W5l[KO.V&N#嫞<_<"112FY=:lFY 1AR<4;vlyy>F99cǍm#lݶu:HGG߿IIɇ}>8-(%% cǎ k׭/B1mruuUuuTH4dvnsrr{]V8k,BHnNPp O0~I'.lh𩣼 h墉y:`Ibe͈ϑ#VWoٺeŧ9*f$22z^@jj  )@8BBvXQ#X~/[ffrJm+Z$ʸ\ {|̠fq!r#e1"Ir=p0P7Ѐ™ )-do|96T@x<pML@pĶvrR4#N>𝧎H ۓ(P& mxHF Ky~dnzl|]t[l)**':tܸq{am)S ۾}^IKKwӧ 3hР)S,^߽KnVYYRSf!CL4 D O.;aSM}|^BoN%\öӞL>B.9-..g/Cbi{U:h.u2vuG92bUwQIK3`6uYR7|sq!D\J(x/Vt%Imh(;;~byes#y w|'8.;ae֮AfDv;C%uN/GJKKJKLfge5 (e-!xF)./.{$Ļ"$@ (FU=q<=eTSljJ)t6ᘆX8V ,[m$wڒ](6y F%QNHؓaT^^e檪ʟ0qb.Il!1%;dqz3Xݓ/P"KB@)rEzA=]yDkDөhGr %R:&0,"[6t)]QK1 \"֝EY(-'D]A&Ze7>DQ;ڝRO4͵O`Vvp4`ԏS"Mp4csz P ڽҵĕ(F;n%69x]atI~wGQ.HiSy!>~ \qsNI\AKTgH/.{ ".Un*>MT8-(I8.BB4b=؊E-bn\={6mAbKR ˝8i+r Zu+/jtdhrBm݈@)i^.lY[~IU#2<=!!\;^%O*v7Ll'>Ú@ ZN%5ǣ:EO18"X‰8{@?sE*I!1ڴE6#&Ii)ӶfTTo+9 # =</";e B]M:LzE!uG Eߝ(z j) IvTēȷO@m<4~Xk+ J)r%Dr1Ō0ߗGi@u@8{@zU]$Q*O)' m mB*TSP.;7D0@,=#PSAu:6R[t>~]f@hZQ O4alM` C[8[|=1:C?1D2ixs|% QD29CdR44L#Uljj; 656:b %q) (" 1:Jlge޽V'Fђx+ D'dt~oIliR 6{*C(*++5 #>.~P~{]l%%$$tʪ $$$۷w]S|`0qcw]U]W3oР޽zEiv475565%$'.CK"@q4ikkkrrrBGFi@ #ILLC yhѣGiiiZZQg& g(FD =F(iV} u iSϬw^|"c9))H%$''m۶¢`0lf0,--MHH6laÒ^o[  )ڳ;;+kر ͵uMuۛoܸq)))G [U] <b \?&$$444ѣMY((LHGa ?,|}OJnIi-8sb>_g-1j.Qj33g}G䑈@5bt<6E5iz믿KNNa(3P(TTXmҫWݻw &;r3 ֭[wni>iR%''*(:vܹwo)'PUU###-jrJrrrzM III P1 e233~cc# IJ5`k׮iR4|fذP(^#99y9 ?$&&u8c&~dv s[qM> *vJxW@򑈊MyGQܥ  JGДfo W|"EQ+泌HQH'H{.k~L)wB>총}yi7yI˲ <-[B9Zg0 R{CR*EX֔Ԫ*|}}]]]#""Z{L.bbbr`0jx^Hh`Yb,'JKKKcbbx\n1'k6z***rrr>R[UU-VB2rwyyKVqFZ_a+ 8<<ѴWsz!KRn# bDZfźicvFZ77w;q\K,_N> rr'<OQPWEQT~2ܾdXMk4ֲ;! Q%%%[UU]R\P(6mJF0L+L*n IDAT*c- F|r߾}+W;{lii)b yyy&aXBaZܴZOOς‚‚.]ZZ qa[oK~eMlӬ7|cL&'viqA9rR=j))O<1o:22#=_=rTUę={؃2W]ʻXe0}j2 S\\\\\|ĉf7QQڤ`my 8|=hxkr~8ê񫢼Y2 XMfjaB45@2<$8ã5 J! }MEy9˲UUb8 PP`L&s4J$UinnڊJz}R\wd+hӃUJŮ{oyYY``WM&3X)))E4=tPV|nNNjjdh4׮?T2H$ t>>>,8r<((eZ# z#U|]a u[>5rԩ⒀]vvvdd$EiDRS7?i mXJ}3ZBggej fqxcY <v6)*^Ry^`(V@x…OϪ=(9^*v XbLf0FKAAMK`YyL&өӧܴnz}MAA/5StQ˫_߾/];v,ZsN?nx|=^UZZϿbspR |)XۣP`#k<\p^Ow-Ws)pO3#з,{4 @C>0}ƌԔ_6maߞgee@pp#xxYݫW/8w@PL4eڹs維ےSMfcǾˮTprps_999bx^~~^~>V޵kqcFIOKKHv-dƌruЉ@>#B||<>u!MΎ%8> ddYX:u BQء9rh޽;B(>>^"Yv(D*N(c|hky`P*="{ s7JJ背v4Wˍf/^,,,D42Vf9V pFT\\bXVFl~]kKfVd+- ˱W^˗/j FbdfeѣMpºx*&Hhhذ#i^ QIHӧmK+Vzlc LPu+J8ŀ5&HZV}<=>*\"E r9|'Ϟ3VK/{A|V;t0N>Axv%矎?q&T7Kh 4~wrrrd2ٰu d%c/_A?n\p_8?`O>9ۧd޽zw뚀ІX,Gqǁ.:} "{Dq?#& ![ qbYfaJPRT*AyN !e8GF4<2YhZT:rY2$>BA:.ZxvAZgF׆qx7يJg+QH"===j`OKhJل(ʎ5==aBhFF߳g\AXQ%z^ M,H.]\\\JJJ\0;V0 SRR"B>}<<wƍ{yҲ={|_6cǟӧO۶޽+ ˂  P(Җ,YrҥōFhOrR29*{w7Gl$8x   NNNѣ'_3 :#G__#G׎̬;̙'Opuq HMIϐCR By^?y^^><r"?L'ש{%1>%o/O\|aAAmm- BrS4q|aQ,ʤB}}||nf?l7MVfQ޽+/JU=ǜӟ8^s8+O5^y_6Sض}X"** ѣ3oH!Bm%Z;d2>'F8p@NNvܥKXw  _ t[AFe4֦?~PcxB9j(Zueټ<<¾79 !$8Rш6 ,˲ &7> 4M+ !lHJW5b,W63VhIeFx/,%*36bUU`=xJeZ/gƎJe2V_׫WOWRRze__ OVkXXGZZ,YF.Ưb BTeeeUu5BqUՕ>>>...R !FY,ߏlXB@xx8^abLJ1zTpX;*j C U(<_0~xXUT]Zӷ:@&E>Sy" ]<`crjz%2>;&9-w0^_j#5r$deev ŭj2T6yB;E~į VwAX1u??œ\LZTT8_1s#Z5V7~q:( !54-A7◖`9 D"q7~`:yjepͳ)?˲y9Fc9: krTB9Y 9NՖrłb9-%2 Z-/ȑIRiKJJk ]z{yy ] XZZj6V+~ժtN׊_s,keՊq8x3 !l]8%^V7/g/.ByyyZ#u_!nGTk]STh [+ 403#CR61aH/a.ᴔ ӛ 2)/0l&)s2~E/\AAv2M>|rguXTAdۓV#HX5k6[YYYffFDDDsI6cqݯG0p].ʤrׯEAb֯H>t`puu=zF7Hyƒ!N5~aaJ TZ\\ HeR/RBeXy^Qpw0E!ZEt%d'&)jbVvlxPL*yAZ-x][!-=<]\]\\JByyyM΀sӺyzz)H('<}||srsrXN^x{[ZO8~;v?>!>:UpPYD+rl_3ǫ.VU Hb(*LmQ hpCdw}ߏO?~; M(u z5q۶pawjmj*.0 [UUc!{$$&&f㋊cT>}r5QL9(03;;Z5Z]hTGs_TT|h F#`9jT=Gcn^e9X5 UUFaX8_xy4-JʇW *Jut:??WM`?}e$y ?)$}|}=eR)MKhZB!der9ɖ"+UJ.@'I:ᬹʤ:ZP(ړl680;;'6TgsssJNN*//ǷM4Mer~i7xqk׮f??0e&֧Oo2,6|9Þ㭐+PbY.11eY\m?-Kaaቓ'v稑#Y<===ϝ;[YQKi}mKtPCȊTt\)-c*yYeR*LjH9p~opZSOyxxp䉘#Y'(  `D#Ĝww-[_]\\GD[ c-f0ky9Mf EQ9ŋ< Xhdzĩu?Zh,~ɤ>>*yNgbP%žo0Ln^naq^#GTeRjȱaIIIJǷ{DHOOX%`0L&[QoVZ!^^^ii>>>QQRRR<J h4P-j‚(^(+;ʕ+}8p{JJ`Hhoo={&sx= 8 EQޞ))nb$xy{Evc[z5ԭv(;]L6ݵkנAKu?T9"p4%m[,2mq-]!Nj ).Oޯ.ըT[Ǐx޵6p3f8yǒ~?MrW!))Æ]##>!!5% !ӷOmjOt4©'O?XdQQM$cx@*nfdnnnG GT*T*7mڸ￳( 0a3%igM b,xoQ[nIiK. ǣ9.6y83gN}E!rA~}n`Ø}FGF((,={ʤ]Z5z( eCEx,m[X7~˱Bw\PxD^9J#c R)^E"o1-f]T*Tư\.8BH&* Zy4JQlfH Bӫ[KRoo`A233O* MK\\\8d##zSYUm}y^0Mee宮Cv4JbsX,J+ iA]1hdhjnژ/LJ~횿FA4B-FF'fD50p̘vYZ1@~}/%u/;77u/ Ah3Bbۯ[NN| ((PՋ@H0,D*jRDJ J!J5$4Q0}OO}h62 2 HxGxgvD8AH$>~[XBh4y8"t@QT*5dzZɗM^@AYiiii)B j5$B.rpn2OOR*V̦ZCj qqqyh42 [$DBӴ!H28ww xAPt23\찜:JnUS@Delې(!ihn(:K6  CщEv] A >(~`z‚ilިۗ^ǽX@8xI.]t]3M&dWךLfE#h \]\5WgzT* S*,g IDATnxHt"I5^^^3nJv&l6M2BP( T*uDM1|𢢢jJ&Z8*d`h:&4  )O D( j2lr`R(...J+eoڑ_-.[ 8N݌}ԩSų,mظ~ǟ'N4cƌ&[mz59-,,l@F  ZѼuA殲 9Mؾ{z V9={~ "Ç.\h4Ő߿_|m߾}ҥ,ˊqrsrsvڵ`'6sN|4w܏>p/p`jj_ |M.xx9󵵵))))ɻwOlg[mtRL}8;'gʕٍپ}'|bR^^^^^~ܹo־L뚷O|믯'"7|CZj/,dG9u?|?|p'!>~ɒ%{ϞG%KLȑ# 1? =r>mܰ.}ݝuC͙35BfVÇy1d[D'22rϞ;11q"֭{|r$P!O?,^{mΤ4\.0`ʕ+qysyp_f:[ь0/Fyh81$=Z[]+M Hh77g}V@7w&k54TjGw^oBR)}c GM?( `YɌpdCMdŘ |NMM4MPSP0 w!NvxP?h4qeEEq\mѶ^Ҷt"?(̛ԩΝ4]\]&.ҫg;쳥ӦMwqOEvh]5m0-L]\\Dk Q9@ >}߾M۷x||p&#t"=&ɲn2M- bر׫޺u~ɮE+J dn:&3٣r$ҏH$O~~V=DRgzooj0XqfΘ)f%ť%߬׋3oLo#G՗i>co|]RR\RR,6?mYYVb1;Ns|*E 3 "".fKF9t_x#8NtKh0aXBݧ 2}tQx;dرcǎljII&L0aBM`OHHO'O=<ݮ9 eX  ٶmF˨!55-44Dy6l2lnX o\[X@ ]@ ~@ ]@8ׇ@ 8R77%eJeg@!СxyzL" M&Wg@!/CQ*BLz'+,˪T*\!nEK t4 \AIy@  "@ @  "@  EQZ@ vAv@|e_;Kc5A _%_>7tqs],j>mɉK8<-uHp蔉@ NRW.#}'N[Z#[ @ :?߉edgCrj!; @ :C&ڏ|Ԕv*C'K?B2@0h mUYY믿Ϙ1=@f@U0 ?l6/\l6y.D!pK?e9.""bOíO<߶uw@ طM>88W^  YUx0#!LK/)Sv颯 4y2\Zm@|T*3(DEEEPk0 4H&#ryAH@  zQ@a;J6̋H?@ n j Ɓ6ψ@ @  "@ ~?@ :CmmzZjaa!ð(Bu[aP@q Q{i4ϑH?@ :KjBR" QPH~w8…ѣG|D!ЙfWF.!D#DQE:cy2L(*@ BqT*JD^2ZA*2llK$^@ :U/4jFW5nUfi@ *羍!8;w]9bD!sZ_D@ Σ>m|嫱(@ 9B/s@ TRCHqj"[,>~~wO -*6vЃ۷oBzЙ3f=z%  #߿mK91e~' :l}… mClܧ kiii_}帇j2{{DN?tȽk|ݸľ}{L'"۔ɓۢZmt}zGM:~0 m蘼aiЅ,˲eKٲVUo0@ϖTWW7ᇋV^òlD^3c8{`o/n: #wW^rݙk=W^~eSvV1ڱ_V}{[ZV| gΜ>sǍV;v 1-..~z̋/INJJNJEhCk' -_q…~M\\\XXز+ڹ*mØѣm~OLRݩܢLiYyiYyJJY5k:0-aɒүe#G:y-HRr)S˕+۰`x6l0 3c/t{RAaQNnSb{i|W\ llw>o'~F1cΜ=WXT|QG/+_z)/|J'Syp^5Ӟz bۅ:k.WWߒ_[\]]wyy=Zu\|BAaщO?Y܆iסs1Lf+j߳ssr߲5*w^^ެ3L&ƍXZڵR%K2q`ff>d?]V;R7I~>[y11G'Oq}EE@ZZmj]꫑#FtеK#z5c˲?|1vأ60[;{6,4sժ+FAA̘9S*1cn2c'.W:Y6 ozhHppP3Oɱm3Oa_xgy600P**ʈYO?g R-^wԖ-?a!:?\H׷)`06gv`.pUmpDFF6ٳg`͚5aaa$,,l͚o~p .iZ-\L m\. |ꩧ:ܳWuk׊gmo\mm>п/4$x򤉢\1(߅̙3fv ~7 *&&fia!]L?K! eM]h-[o=Z.=ͷ[~{ڴiR{}=dddؿѸ wN^֍vz`6_{ϞcƨjJ5jԨ]wgddlܰA,M؄ݤOE   fEv18^}k!W_|!(kDD',c ݺud WTԊ?2; %"c2eӧO!W^zʡ߲U*b-N 222x >[tvg^>}zG lR'Sh ]}{ϖfdfJs L N܅UVo&mЯ>zO<1a5_m0 p\Q*,,`1>f7лO& i=;tp&''o|$NVa:n….ZVBwVPRR|ܼWg7|!d˦M.z4&_enݻGlܰ!::zɒS۶mWl0Lnܸ֮[7~xF#J׮]vl><$$TT;| !,i 3A DoAJm@eeEr>0v:.rsso>=zlS9̷qS8dذaWTj矟;upqq>u֍9Egϝ>|ĺu>#'Sh挌+V|ve˖>;WIow/{vǶ4WǭY#v %v MUqR*`6k1e۶͙V2dr4:p:Z:8qUUUP?|h={)<= mTȦt oeecG޽HMv:y6_yTTTd?ږ-[oܸITnܰayͽق{svN]|!S,FGGkꇉ^={I[@og?jhn2a?wdfe,]<֭>jPDyf'ShN>aaaM3vl+7l|ulN[oIo6 բE -\xe[ cN\w!c.a9g<ϧLi%9ihL[pƧN8="{8]CVwXuW喖~@.?uw^XnpxrAn߽{n ~a^|Ohup\|unjZw!00al^,)-rX8kj]_~p~1.ݷ߾?AXlO?0vlhŊ 4F+m3ݣu :eJk ŗ^tu&I&kh4ɓ8޼_j^pᙧok~/ٰ~}s=^}-[~/++X, S衃[])UY0ŋ?><8w>|󩧦'''{/77aٜa Jb_|l̘Δ_Ӟڼys~~>˲ڵk֯0~\m%ܕ+Vkjj3O?h}9|6** |MѩΤVX͛73:)1^h2ON1T"؟.npI.`y1 `qa9wI&W_~yrȑl&/EQWxɥ?5z48gΚG>rh4LG#ڙRkܐ>u8^3Of,ȄXdžM ۶mk~5CG~fĥ4qwGN4Qќ:}bL4̙}5qC EAi*`GOEφ;{;˩`;`C;ETD!- !?Vsk&/&37%* zzz.d2YO a0e_bŴiSyK71?*`AK mwvvvG/͛nBEJ pa 炎j lZn]Hdkgu!vҬyȽ[vv[ٻwߺK+beV :}mkg'\]K=&dx6w &0`:sSog0-~ ӂL 0-~ ӂL 0-~ " bxߵ2CߏaLW9;#_> 4 ]p+ s?`ZiA.;}94~|uǻ]bBu,±4iAD?`ZiAD?`Zi)<_G/0-_+,ҞcbCA 0 4 ]p+ s?`ZiAD?`ZiAE`=oOzKaLWzV>" yH :X~ ӂL 0-~_.?H(0䥯)nܸ>uM4vq.);yԬ1lk׮)3\|yرk;P\Ϟ=Μ9LR_b3ݧOԨ}HHHn,HjyxN< >'?# ~rMI&$$$$$ٳ{U]t%mZ+}#Gb[aA+NdxQΝ͛?h`Vb!QQQ ޽q_LJpPƍ/^-kL&uꄆ-vƫקNi3''g:LNyשsg"о *߿ߩ7o. esѨ(kk;wxj]Q2vID^^^DssnѢezF~ VX? )͓+z+fhq)ӈSh֭*QFl6nݛOĉ&7>+:|dʕDU.\RRR 1~~~%K +V\z5=yc#Dԡiܾݩ׬Y/OUx."=fL͛5o>z" ߵɐDDESIDW^ڷOeJ N PR%*Ʀ8iƽp[2KU޲2d(ӥR鹳gQD>}ڴZbe˔zAk4A=}ݛOѣG*Ujѹ'@^1M"ܿIDMcHHDBcǏǥUqww-Uʈ 7oܥOof#^JDZwƇyͤ#}!55Ugvvc̚5H"qc۫FI6n\\OZZڒ%!F~gee_7nN|Rfffʕ5jdO>?~\l\Zr kS–-TOJc0G%KN4yQsXǒO:(tgҹL&۶}GysHbb".]Z¼f҉we+ ZS]I^5Lҷq Zv]No)ǏP$ѣnj/MǏ'iѼA=z077uV4RnjٳӧM_JoR.JNN~m;D*Nʥ(\~ i0?V G?ݻĤ$Ը~}6K/f.Ypa|՗/_שS׸ J-ZsǗJ$إ!!;2RDTX1"Ǐi\q2{\ۈ7mҘG.?zhcHyg8s3.=edd3W@ ^ĞAERy> X)GbԄ illlfȻsB?nqy`gd>]mLs7[޽$I'tm?6lȭ}Zlپ}|:thޢJ;v3_naaO/TnVNJ4 L.Wia999ӦM7nlff搡C5M L'$߻{W$խ_vcG3+\zЎ"}O<'@bϱOttLO??@`eeUJ~S+VmQZ/OћAŠAg#..芭Yn...Be׬U#JǍ;w… +'LطoS6mj߾&LhtƥL1cLB1e%KTŋ|ر"̌ RYZ'TڤIS\^,յOQo^v_._`LHa=Y s?`ZGyZ*P C# B"JD?`ZiAD?`ZiAD?`ZiA~c+o"`P{[=%}U@`O p,M@ ŗ<GB#ՙ/vX5%|ǿBknaL 0-~ ӂL 0-~ٌ@/K$3fxxt*Q>Op]G˗/Q\\7o>zyCf޵-D?åKCڶi]A^'HjyxN<rժ.]j+Sw블i6XȑMNY,lF``޽, VHMM)*',JK6i\Źd&M- SPf-ruqq.٩cGBiii\BY3g*y=p ϻ-`{WQtt_ɒ%BaŊY ɚ7mڴRJ?T=e>4q~$0<}zg( ]O fggGcl?D?z\zZjLa^3z?VݵT)#24lyǎ̑e-...F4DvHD>|`v*?ƌ5kv"Er_I#H$O<|}iff]q(++kuDԸqv˗233+UQ#WX\&})K?|N~S꘯U*S(Qݻʣ=ݽ`B ŰCG ~TTe:o'vaC_߿8'1̽4_Y3g޾}++++++[3wd_zN2YYYgΜ<sޅ.]~=ǸΈIKK[$dԨѤW0D"! BeʱGhA~%N۵=w[*<nݺٳ^~8kL%]iZm{GD"*]2yͤ~>7ޣGB|3/^x޽=z(OvKD/{ΪU+K8ܥKkh(\RгI&kqr)mĔ\rY=z[~:u"7?g/_%rXuݻd {unwB͙fΜekg*urCT\YIư:իΞ=Sh5k>{y5k)rԩիWi+j5 ^$/_%Fh߾=;ORR҅^ S9}~O81>>~YXXpT:![Ye/=2Yui6I'Nd'27fd;ztʕ/_QƿR8G\As:#'T[[۰hѿ?zhVM׭_߮];PXzuQT>v΅ 5jH$k׮Ν: B\gA/c"Z`a.] *TP]}ϹmKܱ,\ثwo;;;H?i3;Eʔ)kii9n8"zǸk`:v_|}I?-*NLLKK#˗mذ!=====ĉ;w:!7%_n61VXQ*.ZAeW>tP(RR߾{Ly]JJB/kl:> ~$,e Iܹ޽uu-Ş{7()SNݺ{ܳnzK1 m 拗,y'O,\hnn?~QAA6l>=pz`ƍΑOc߳{"#UqӦjqr,ӠmĔ:sV\ɼv>ߠg .*ZÇ:z{׫[[\{#wGη)S竤̘9t2 .XPj 7(ݹsZj>SDӝ7oظq}޼y3g,&]z0G="mڰ۶mGD=$sIzڵSa\ Cq)##m֬mZDDo#FQhXX L(qI/\lٲL&7o.!7NiU6k^r%1W0wy̙3g_Yf.~nWM֯_Ϝ OϱT^^DDϾѣ|ͤ*پ֝\o_Ot~\̅vݻ}faĺۻoPB ̷^ j2 F|򋗄ʕ+ijgdggW^tE-oܼiaÇO3K1|Se}-ӧO>ɤoߦ~I-o*1ݩ =CNNNffׯU gM#YhsAX,&eae˖e˖eNC_rɐFLe.e$~ZW-*t|B~HDԮU ѣf͚Dt!e Fz&Թ%sa.iS.^IXy;e:θYum_ρ[ZZkn֬ه%7ot1#'$U 7Ç&O=fLJJMGQbn9q, & $'5jt꾣^ֈ=Bʕ##1w+W%11h =ƥsd27^gʕcP(򮇇iՔ׉M.BHP/3==]c -:V* "rwz֢Cs~iHHllD"]BŸz˗/ԩk\%kk / .lT#4.>#0лcG`ADsl?|~cm\n111))r<555.._>DCz[ghn#\ѣ/G]`=ztcf+A\0bxɿ2˵n~uFT\[nÆ wvv޳{}A $_zر˗Ǜ7mj߮3.]XfMm.]15*jkKDOV~x{##322222OD>>޽;oKK.c=ƥC̞=G.6bMܯYxԩx ?@ݺ Q#G=}D.?yd#nݺ_ȃүrԩ fCQ-wy#AoUV%ѣFꗳWO(fjҤ[? ou᯿!5>tYKCB~+$Dc*tgS.C}f`?wn!NQ~Ϝ1#,,4$dB136h|n߾+K`Wz>뙹y))U*W O>SނWȈe{G]t]M))ɞ <߽{ZnCDÆupp8}ƺM4qڵWGB:?wy)rlҳgݧz܏7ƀˮsǻ֞;w_͐d={tgf&شW%Ewq/|ӦMxg2tvиݗCW{VaG:mŋ:|9qG2(1?*]۶hڴ)U0tB 6lϞ׮(^ z1Yn...Behޱ٢'"8gozťRtܸsgyL8o~S9mԾ}M81_E XYYUR~?y{OVuƕ/^wh{ɓ' E:uOmkg'\]K=&da|ˈ'#);vbČ3 Ŕ)U/'X1u4777Hdkk}aeCݽCvv?r2LѸ $f͛GFmݺϷkݺ޽Ї*>g %J9ܩSgBs?ٲyS;{ǣG5\fwǎ߻.n38P{ |777J|v "jM~t+Wnذ᫴?Gu֠`>O~]~UÇ0:) g 7.k?'@w߿?Zs?`ZiAD?`ZiAD?`ZiAD?`ZwB!e2ޜBx<# ~ζvz3@ f9Â\YӣL&KIo… WZ+|3E?iiip }H*Z[[,"!H"F /psNNNj'L)Te˳3339rtGO999 ~$,$K( Y*)2D"BQ#+H/\N ?~P(|=;OŰnjϿྐྵH"E"эy#"PN޻oV~{-b4]-2w? ~x<[w>~L*TX}ED";!=-ޝV<WեmaxءC۴nURTέl_=~E )]Сy[7;:Pdggo߾GU*W;(ҨQC/]֋|mpu*]åKCڶi]Aݻ׿*N [|\.gg8x@7_ ˕(^Br|}<`P FcwXSݻw[fMZZZϱf]z}ʨ !DTC,v$JٙNI.%b'5 zڵLّMV~ob xϷxU*r-|3spp(RP(b~؋ISs;qCdg˻wn\!72rР̉3g/^s:y^.+H +{W /^&g͜jd&~̬]+VPre*VlmmmffcgÇR44ti&M\K8lڤɲea2L!;;{-[4/\Sǎ*-.?V}hRmxګW"E,--[l+ܰqs#۷osl3៖6jȲeJ.ڷOxv';{5jLD۷m~c* ---+TлOSIaLOO?nsG֮];;uVXs3SSS m~1ŹBfTd^zUN>0RJuy"Z|@ pss[|m߾>}zg(ӹW]]]{y*)))׭SpӧM!v*QLi_3WT?A{+<{ׯru)[ѣ8_ʖqq.پ][& ]MƘ EDnjiּyGCDv2>2prʉD" U.ZDD)))7^wd;A }[6>{ruq+[f̘Z"Nŋ9*lڤ}/!Ӌs,)vH$LY$55uᅰ-SBaaDmʠAKTP~ΜBtcowg/]xsdC\\\޽$ɒ%!$FM6=vh3fvom2}|ۢ]w-]|)33RʎD{D4q$G+6l媉HP 6,""\eŽ9s:mh" ]$3瘸W+aNEW._f֭MϞ=G+V,))9vXB߯ѣG35rod$Z&?~:&شuFz»o:tHJJbgַZV2ŋ{s`յUFIGUիWUe[j={,&]Ϟ=[b9Fьۑv˾{|$[_k֬yk׮zz6ݻwΝ۩666ׯ_ɩ>ΓC1bpݙ3fr-Dds߾؋8Ʋۘ;#dx<y{60p:5mLzg-ZtڵϞ?{z͚"E:ujUDv… /Yr×GR IDATco^_˖׮]#Jhe۔N!"www.MPwC_JŠhmL:t^5j$|\.ɨ˗LAA&LܳZUVu޽&LıP~="zw8@D=yă{yy(M[$[!444))L2p=x5We\wǎG{*]td˗-Q&mM&!HDKVf`^3JsIqC&MϹ0nG چ-,,իWK޲1޹sנUQKLyٜRJ?Naӱy& /^>FeffNgVEtc)61|wƟ1Wb-7W^}޼ʷ"""h]t-TPBvaFdDxܱ,\ثwo;;;H?i3][ӱS'm5**jfff6l?^P?`SRbE1piR"VZ , "7i6|Sj*|eɍ 5jH$-[6Ѻ۵kgcc# Wnz"ڗ[Lƍ#p_JW0a?|P.QX:?[XZQff&AP$e]aݻde쫷PHQ"v3iqU+W^|Fi:\#[ 2#xz\ц H$ .$ 먌 {& !f;Yd^ؾɯ_f&søYo'hz1:ծ]{[KׯWO>MDL&gΒ24D/.WŘ1c(--M%E=(qUW(YYYM8xʔǏQ6m٘=zHD?"vT'{~1*<_߱fN?wҥf^fP(ƎDԡC[i׮&(oЀ?NDiiiW\ x2Z9VI?ܹCD[dߏ _]Ūv*U 5j 6*TЀ~}$.\0s7kŋ_ظqϚ5c rHIƅ -ZCAխs-ipnjzՎMe\˗5k[Y"z2*Mښ>,--(++K,IWb=YZ7L6U[=9vdmxݲG@}DTn]>U":st%tZxq.kW:u4ʠ!ʨRŝyao1E%mXA~:avYn\.۷o?e!'''33׺ڵ؝:w޲e͛'[[[391;[ћgdggW^ƆIqRW;q)5*zؗMcW+hs Ϟ/|+WywDZLY@PlٰeaDc%䇳gw[lyM >\,?}t̘:J39yUU`oݺɞV5Y}999ѳgϔyLB yz6df0zGMammɓ[n5mڔ5mƍ/^x7#[aM ]~ܼSS)J+Rr ʕWLj3w|(ݼyӸԘ V8;o'k=~MrʓVFI!TfM":|2y~ؒ &Vj8;2N8_CDس{w?\m{Tzҥ}y!gϑ忍y&mkoּ9 :d׮))D&f:zэ W\d/_ 6mҗ47nٳ_j??oѼM'$$dn޴}XB"ZxqVVӧOǏR/~=wlD͛6ozջ[oݺ)Jv|zeTpߛQB>>D4$$66V". !>ݻĤ$Ը~}Q]-#mCeaDQ~"ھ}3CDM6x7oR]h;&S7*T^=_Wi*-Μg7:~OW3g/^\";wVeAOOϝE"L&٣;! Lv+W6m*Ǜ={ΐC+ o/^`'֮]yC̙ Qmڴe_'㎟˳T, <}ƾG411w_;)k vİ3hI/j: FGocwڮPiP(ܰq1ܱǎT9'(tVygg͞~`wR>>V&߷w]&]OIInҸ7o[9t@ H|mDԯo,2좸MqӛZC [;}*V# :-ݻfM(x'm2s"z6RŊD^5/5iDt}:aX[[|Ħlwn Ϗ6ff] ;vΘdܢv# 1b̙ bʔovvv;>r(777HThсF^v]B֬^=gl#Z J+W_-jeeծ]}lmmO}|p!`j0yf۶M6DKDr[Oci٪UVw-1daL1s? B.syP(yKy';;;[./lkk7w^HN@`XP"323kzԒdi>_p*U]zU@..1!"Tjmm]x{ 9'''5CVVT*IKOeg+HSOaefe:8:~b~)2,H,BQz2lsSdRD xWBpssHF&VhN0&a?ZXXdf'Iʤ9Ne@d܏`ii\Ny!ĸH&dٖ>}RoƳcR7Ŋ ?Pw拈2/;sQH$Hd<" ޾MfNqrr=X,633#le\x"Hcu? |)rP(ufZ'>73fR$YBs3_ B!n޼)f9xL#~ c"@ p*QYYYEllS /)%|>y{H{D"uvv#*+ (H 1?on!R=z8K"qvqvtt D2ƍS٤IcbGÆv2˗Ǎ[V-S ̙Ӻd>>U/=i ~I?9:؇$88XT#88H**ߕJne˔s+;iL^6::gv~y"w^*V ;5_oer\G\:Vwb*,,4''Gu<<F4J"F {6߻Y&$$$$$ٳ{U]t%mZ+}#Gb[aA+NdxQΝ͛?h`Vb!QQQ ޽q_LJpPƍ/^-M6BSZ衩TA((`T<,`,w難 TDAD pJSJQ{z$;l'!~ٙgyicݴn:0 C'07ԫ.Co 7n|#GYvAn^P\޹ۓ_8 ݺ](/癳n7xS <ٳN>[o2Yjշ~;]055UM0o׷o?_|K/\qEi `x_|ܞ^i'Nڴ={~:wJ6Iύ`Μ9 ꫯ)qRw xCC}쉈OG?W1bDf͢cbb\rkٳjŋ <^zQQQ-Z:mZr%nS>`ݻvܿ_ZZO|]!xl̘={:={>6f P:u @jժWn|}o.(W~LҴiSѴi)Sg KaMתY{ɶ/((شq#@NNs>۱Cu.nҸ-_,SR'p07*cODT"=r\{`A^DGG 2ϵkdggn&a0-ޒ̙ʥ}vz겺@Zgff1f̋/ZjP+vBm[ =Yfٓ&裏ylϟo[nk٪z}wߝr¬kQU0'э,=5SpeE\ nO?kʦɉ'4jX. 0pʔw/Z$5u{׹[o-2Xڵߴi#?/%'7J]+F?Μ9sɒx,X03<LVn{钥ݹ!`U^tE><111uY]_wff3G1lO?}w&O^beAA3 H) 8ʤsAX|Ŋ~[ꇯ  {ᇣ?9GTXPnݺ{G+.zZVG^*K+>xfS^0'uPw1z=,?=Qycp /+W/ꪸ{PJOqqqkS6nСs{者ofۻuR]kWVmŊ'N߯]:ڹ3O*]B}'"*o~LW^yYX`u'f5JQ^}РۃPQ|M7zO~zz-/?y\?ԩuY]_җ_< ,o|,|nW~ׇ9xnݲ@ff۷;vF;w /aAFffm޴)24`@ofjjJMM}7c`_PvmǰwΝ; ~ܳwaÆυ _rɬY^v?hٲRlvY&777''Gp8cJ){.aؘ7*Tػ?P{" 8PrCJV ̿Mr={{^)ף]ǘٟ|?BDTI{_|vgnO]6BF?,WA5W_-ɍGzQZv.뽈(l mݶ@DD" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""臈" """,~(0!""g~r̅w;#*B_%Gm/}y,\Yի#?|QKIH5o+L@7hXLQTTe2Uy _Q~ǹsHK_TtQ)!eE ;}~7Y WBaa;PSi*Myz^~ 'qBDDH%~vߣKt sdYY^Tz+47`k8š];* jzv6|5jhߑF}doVYO?]w}п?TAժ1YY̯]o/ժDf?an]}Z5š[7ZenƓOIDGjUUtnGv];c툉14 ֕^/^6,G+8z},᭷ЩTA\w…V?sGa=kcυ_`_j &L0KwEΈF.x]@!F{NT*U0x0L17NEϞSY3?_֫e0ֹV6{Gukkտ=Q*бv?-ͼyѨ_kjK1i6mBNX lKjXƏF?j++eHG}=̾ >DK0r$j@t4vŗ_AV_Cω †lAp8p! D V /?F(,+yn?Т:wƦMf6,7ښ\#&yyE~>oH!'qqŎk vQv/ bbry)[l6ǣ}{}*>{(ƤI3nKGZY3̟mgUf&WG8x;I=zMд)BZ(BoH42/WQ\򐕅*U<z~N|XX0W>.lx϶͆,Y]ǀG/#DLehca~7@oތ2l3BrO:?ԞO=I<7?ѣXkb<݋#㏁*1mb6~ C@O?ؿ:hO]x*piUo!׎(g[(st"*Jg|{MFY*@J ,^\,:ƤEjFM!eގSa-ϐE2%.7ߌ7оoEmzu( z^PX^v X0ݠ<B-p|=̾<#oDs[>֗&ÒJ>_6gw܁9s%B,<Z~1gl6>\gð0grr! y3zQ0orr?&?Q6kքSGcblJ=n¬Y8rEEp>ݺPbbpv+V 'ZEofj}!0}U`%wJHxA0 ѣG8ش ުy9W%oqin  G1insH*, Z3}:{cԽ{c2L^ld1\eޫW_Tݻc2ߨ*A0:OOӧѶ-N4oai1=`GzݦxK9utm?lViԪ_Wi 8aC3*,D>^"R[}=a?'~v,-†l[o' &Mcyn у5D2|u?jֽz4b`Z5{6II7c:퇚Ӊ++2 6] 4 @ONX6֭M7!.>\0)) X^=DE!6m`hj0lf.oj* fkO?I /jeKzsܪ,XIݠ<B-p|=̾<(,YW_ǣ{w!m<ٱ4υ 6<8^{ Rb̘p&a5nG|휈"~n6BF],""HW)G5|5ؚˬ{,u?f"ꅪUMSX:x#n ACDt" """,~(0!""臈" """,~(p"""p2?UXTTXX 5_Rgne75"""`yyyYY99n&8ظ^&cCDDDn+;+;/z]EEG)nEQE*"(*p8p0';+.>n{}{H*vٝ:v8K.4'']~bI waQ\|GPJ MF?DDDT$ 66 _臈*^'66 臈*3oO\lU<'~ """x.ּ2<g;$""*p !D^n^u?DDDTaQQB%|3~臈*MKRaU&GnN쬨( l2~XCDDDtl*[lUTTcǎظ8J *n];w9{fn[Ja&AQ kԸ%veCDDD&#=aFGO;+B  '%UZIϝ-AQ)((8\z.N˥HdE8m6۹g JPF?DDDT \ǎ]#3Edg#1B@$&";KuDݺ}%q~>}={fMDEfM)S ۨ(ԩn¢E++il6ࢋб#k{J=QܹҖ駁w)(X Wm:x:ᡇsPTs琚FN8x_EE8yo_|qxg)rilۆѣDNN9(Tuknm~EJHlښɓͭv]wa\7y'څ}ٞ>ѣ5bWx$Xu48r}ƍ`z+/>?-:e-̙DGE ̝]0clk288_Æa4m +V`=(Qpܹ< ~>-<Q!2FӦ+'ᆱ-ha?_[xbOh ٨IJ T2R:^xA[3.+)))))idgk}ࢋpz*U0v,8x s{h9s|I k̏ v=Q%(T%%%e7o^XX8sLTLjr֨ A}rax?}=SV-ddxGTjƻfÐ!Z zum!==@ͿYODDTɬZ:;'QFϿBݟ|Æ 33RSS@5Q[jD߾ښ~P$qQ~ڵfaz0ȏh~]K:wN[V-@JF?DDg?4:]v|rdgCyVlg":keK̘Z믵\uqvGmKd(%rsx1En.f@˖xp+ +Wj :H٠-񵞈2뮿 hղezŽGG;m6AVR0q򴅁7L9i<`0pru<ƍӖx,HY]ODDTHEi٢Et8[lҬY>яgϯk*Wmv0r}{maHjK{(,`,_Z{y#h ̠<8v Noꅿ=^뙈2332KH*kt*_cw-[Բ%t,/ߨZ7@l,&NԶo ?D'%EIުVKt9y{B>5?oQ>m/a|wϩ}:3z0VYǣU+< oUW4m<WÁu+4 \[nAϞPT9oPYѨ]: _."""H׳m|>XlMH xas2h?|ejU|r(ӆR""WCDDDTQ0XwI)_EEDDD';;{қܥӦMpc>qqqeu,QKHL1b)S^/@!""'婧zߙ|>,))^xsgϖXCDDD¹g^znAohܧO__Qqܹg}C 6ԩ3<{\>`URQ23}ꫮHORGຟKZܲb@DDD-۪^Oܼ=z(CtxdcqC;VlIqk}׾devM}w5bKBDDDfvMѴqlI*DDD)8拈" """,~(3` V""" g` Y""" gsi3IEF?DDDYQd'e Y"""2`|_x/"""3?kO|qŰEF?DDDY|Y?ػw‚+EGJ|3 BDD>Ng|l\V-[:F5!D?;w\*cKjf. !lzBa, Rli==+v8 lB=J+V.b˖T(<fSV k\!uT }HH)RBJ5Rz&FcY1lnDޖŗ(BAvFj!Jd觯V47hӦu\\\O#(YYΝsFGWui~.Cl E;0h,R 'Z!Q,~$8BYqTYTX,JMpTR#)H jB5O QPC,!`z0HHkfR lŲF#G=Q,{B,o.m2OԹ }ONQWO@QbB Fכjrj @BBhRԽB)B(R 5pR !Q!6pL\QV5@XW5Ȑ5-QX)dGK(¨V0wPk?z#7)7"(ѐqzBZNQ/"" MvGEEWOPq+검 #<=LRIB k5l *i.jZ@!V2c/u9C$zIj5I랬IC1ReEB)%fu;jU4Pz]H7iVGcV樗Hk2ʧ15 ْ^_t/(@0VˠOj)J[*GHG-Ujh)j}[oòFfՎG^ J¨FϦB7(C2M)QZ#3VJ:#?Z襘zP񖺨7i !E1߈g &GaͭhMHZX*jKQAS?mZ65mHimҲZ` `H3ر4h  vMO ~f,#0E }i%1bq5Mv+g* jM0ٔ7]G2w/2b:E&6_ "lM؄M\%ePF?6MشL"Z)mBܭ?9+&6v@ dQY [QꔁZt^haB56uzf!AB8$5P}1֓Zz-GZz;aeZZqƲٍ8>E;q\)f%aᇾ7Ho#HBQJHUh T+z(4bM=,z*Ʊ݌~7o޽{6[WxgϛoD?̚iMΔ)7ЩCGc t[Q>9kFż]6Ej˗Q~j BbF+^c~BB( "0#|F ! 2eP C+u>Lo;3Gk#%ZU"FK (G]˜OcHuRBT E,PGxE-L-T[ߤw];z}?rzuGzƜ>^}23㏯+<EpFtaZ#@Ưj+~.} Em/[VBhB7nAB(j @h14=i봤,|ūPE+ڃ[oRR=%׿-!H(jW[V HE Ƹ -=^ҏFiP\+BdȨz+89vv֝v7HnPV-ceĴcbb"=cƇ.VxяQOP+lоOZoi[/l5ٙhRу!u]B &"o4KU0iz)*9!a^z?bu.F,(O'2zO,ZF-_j:8}ӏ$˃a%oe=x25u֭:uh]ٵkKlݺM}6 e˪U.]`"4E? 2͎W,s# =)ǘSL( z+RekX|,NpJ&WQ\#e }_F?6n\xn%*mv~7g\!ĵ={vۭgΜ]h͙3gMvzbg"*Ҵ|1?wN)+$Y%T_}>3~26l8moD-K&Z5k%''[GEEw{k>9oߛjժVZ=bp)~{D-6*3>W kRL:MJ9|+]5͏?nбSYmڼ)==믇e8.7>F~KVCң{_ɶmۊ⣽J͝;1cƨ`֌,7EТ+<}t.XQ2!K9Xk/Ds1k̋m!|] k.lػ}'7 ͟/6lh>C;w>!!!{>;_ޤIccժUҌ`UV-ÒQd G_ZT?+cT_!鰌A׷KmgB˜=zylG[JRn+$/Յ k x&նRY@{A,!^$ۤ]^}f}6z)%lfLJ]]Xޔw$$lC~ ;~y?WvEpn]Qd GnToS i-: 6il dlڗ֘sMR;͜ؾf-i7WY+b/oHOc+a/ug5|Xxe#"*)Ė/Ռ%Ho냌 fFcMD{w.6KŒv3XRhU@̇fu>%M;ͦa^mAЧXZ1{ʲF;Z.{z{UAZjvioSRؤ624O0s~hAעͶ,͒Tѫr6[`5Iz>N_[G?F+Q4Hf`c.ӈbY,>56`l5ڋHa`٤hP(FI51fVpzL5J Vs915E{E[ijRFJ*u?DDt!Y׏kU_f0;Xh;6-#=ʑif_aMo`zb#kE^vj3k"+++5@`6F" 6}xߨ^R!klZm]7^*opR_w R'%ͦU6i\UKld fs %B*R{_Z4wFcjGf(UEhTCefSыH ,F@fu%ndcQBVmw@ @k!FK $`g@0}w=\:XY;Z{Yi;B rGmzzFL!"RPWkjtc;*IGdPu0zb C$ a3[JX"c0xm!mָ,Q)/F$bvm6{(jճpG#Dj=DRojemG eBʣQB-1^(7zjgjo!"Rq 88bѾhG '.3fɬa ;ԏZiC&3_%Cї/eA<52ö OٲTzoۻzsZMJE@H TljbuD^WƦ5/ڤMRH؄M-M+z9E1#>\DDZjN3/77~:=귖1]-+i؄%J0zPM /A˦u1v4!Ȉ4E1;iUDBoBFB+s@^7ZIGm|Җ+PInFGv)yw: 0*33~-R.6EoYԣ#Z UWDDӤq d>>>~ᖍȻt:+DD'#KiٳAlSPPpܹ-tل-:iΝ=[PP^!Sr8v,U #"""k`CDDDEF?DDDYQd *).,, 2**n """p!G?EEEEnwLvGNEDDDTB Jnwn^^ RJK.i8{#"""*?E?ɍ(((HHHW#VV W^u.?n2q'NW߳Ҿ"s,?/L:"B(JffV͚52sr"RAfZwJHH0^JD78~NȀ*Vhя˕_ʗRlSN|xwm)hq=tB*^X#!Q)݊{㦍7}N0!ҥKO<١C͚F? l=ԓ'ޟ>Cɓ#~PXX&uͶm3325/pFnj=J]_<{S YԐ@N.ښ'JNNv:vs)S uxN Ԃ-j(WcB5ؽkWfFưaC333w` !:vkw?ڴi:,*)rկ_iƻw޼y]u-r9{(D61UdddhРAӭZhuƍ ZgM5jEQԏO?=~XQQWԐ@RRR&M8rmش111q6nw8Фij|s,_ tJY6" UxdnNΦ =zOLlܼy\*6V:7liO99e\d"`'ιuQc͑G^*ؚٛRUHy27#=N?z$J\p:u.)2Q8t }㣢7ksz$xhԨڵk]ŵnr5k֬F'%jZ:uN}oj+86[POFD^CܐҲՂ/mcv+**:x`= \J8rkr8V\q7ktp:kRS5j7P21$7jZ8bqFt:SRnݺ,WnN@o{l|;U!D?B;wW^JWѺu+vڴn֬81ՠA`FdݞbV[6LndjѢE ([c{Z5} %"""BkSgm_tQ/(&މRߏ͖U=))???`6{Q% ,!DlllLL b(qU*aAgXCDDDR狈ϊEF?DDDYQd sZZݻsr!oͿ7ߥ@|||֭UV.Nq!D?;vYf+E;w>Vρ4w+ EK8xeBck֬Y~E!""HVfM>|xҤI4 !뺈Ipܹ< ~>--q .+)))))i.+Qe(T%%%e7o^XX8sLEQ-|]0VnԨ<ܠAƍ?~ffVjj^jn!""J-??0hu.8 `O?!~Tf gΞx `tb&Zl 33CNt:!eȺ"jլOE N0p .Ѹb  ?م?ĶmxItꄪUp !-[bY27ơukĠZ5o lѢEJJeW[Li,~HuJZ3kuÂ8u 8u kW̝N 9Dǎxul݊Lƞ===z୷dٸj<<~.22o+y233232|XݚܳvСn4n4pm˗/37oڤqݺu.q23u:tϐ&7hڤ1/і~|ᇚ4n|;wv 4S/]t+ -!??% 6QQHIIڦ\3ټyĉQ5j`Dp1uj8W|`g1hcۗ,]ֶm[kQ>tRuy?Ӛ뒒}oZ]_XXvڵkמ9{NJ9,opwޙrK&$$?_ǏWΙ=ٳexRGZL+ ?0o}sҤ: @z?pWU\i,VQr?xC8|!mAυ 6" ~ sW^}q뭷Ny4gǎXlyrrǏO~m˖.W&?p˖۷/9g/X0?9Of+WܥoIޙ<5V]tݿ?##-S7m>r؃FxGm6u9sԔ}z̕uj {R+bbк5>x-X/^G=jBHSPXxı͛7/[ Q|p~|ʭ۶!臨l|G]6::nݺ~f⫯v!::cǎ*fVZVZ5nҮ]> `O|0cF>}ڶm3|BK.f۩S'5۲o4k,&&f̘1=ٳGM^Je49Jㅃ١% B«ns%wp}P‘#GKf[VZn.ԨQQ)>jϡ|>TR%duegc6_ذǰhॗbΟϋ[Zrv\jءCTtVEQ(R*(]vO<ޢE&gqs;wȳ^^w/;vdFխ[c<$,s0v{5*jӦ±cJcYВU!T5ט׮-V~Y6SOi.$ZnwvvvΝ11٦%999EEA=*F?De>0}8}&۸qa cccW\`ǎRʖ-[X%ޫR%OJ5L{Qll 2YE$:4 @Ӧ;gΠ{Vӆ}C˟BJ bbbn i~ʀZ㌉q:zxM6Om۶p֭?pCowq5krsssrrCq#5?رcEEE.k߾}̚uczSFmoՒ_ E Ӄj}kƍæM((ƍ7bc1jThm88W`TrayGb{HME~>220{6{ ȑ_; iټVv[vű?%yyɸk-ZtϐՏ_RRZp}/cݺuyQWZ]|t߾ _v?4k?Ȃ8`dۻwÇyMlꪫ~ͭB^޴)MýQX7nh(du͛ٳ <4hqޙUQ3[ p7}'4w+q,rAM'g4MG}4~@T Ki%".pw_d3g{{9sΙva׮ !HH@@~pO(@rΥ|23L Xx^9roӭ5ztz|||bbbv>00tƌKaѢnHllÆ ݽZn=~={}||nj2~ .<ܬnbAcx/ __4hŋu//4hwAi *+bM?Z-o4k//jŋ[{~~{-,KMƥV5ΝV7m;uRY'U+xy!2Z{6U6m;&a la EE+\2c%$lsŴJOu@I0wwcׯ377 XNcl$*ĉUS7(Ьӫ2޿~h?h[#G c>\TSU\T 6:oGJI 7D=:}|ny󌐯5._ÇM9b9SX-O"kC q9|,k[(&Rȑ d<|:voom>Çq6mۖ/wrnSi;!0,cþq"#';qyx0jB6޾-vVAffc\][h׿ d8(vnZkApi ָ/9 ֦ X߾=%16~<Xd$k12RUWHNet۠В=K1g9w1t:3u*iM3pzA&9YU|AI;rD82Ģa5"kKMѥ*oTvNnj%LsrnSify3gϜ:O?}<(1`t:cRՋ.] GB`ZZA*1F\$tfū"ݻ AIÔ cXO?3߾-pЫ|}ѱ#^~;wWح~Cbnq%jS|i[a1/+_t.Ξa&-̘aڡpsHLRv m~' ߀$x6*U4_k ||0&l 㑔;wMJٽ=&lz*%"7իkWxy 3|T#s*CMM03XPŴi5X¶FTy&)O>[jͦs۔6vj5я̐YhSE:?C1|0~h `835 :Owo^>Vh(GT 3ػ%<77a/gnK*bUꌝT%jj͙@R4m 4o?Y}6>>Cȋ 8?E[YMz]g իϛ`EX< T|)0++kssSuomovHA83ͩW^u7s|m*5|]Z[ted>aM5id>~Dq#cMÚEF̘1=??!\֭[j٨QΏ?>oܼ熖SҸ^uu0zWxN4++kejtOT&FY~~~K,[YkA2.\m Z25?jt~|yVVVDP-wNty?ǒU_"F>4 Z[:2%nh{ K̘1矯t@ii5kL{}8ṱJhټ`3jZqeek֬3vzgsaM_0^XrUia3n߃gAnbXU~z o [5AODMpЁīV=OSq^1 qaPMpPQQ(𗎏.ǏJKK5N+/whÚu|ҥ+W𧩩)࠘3eɤd1d}ݺѩ&Qrӻ&8h-2ۻWhmM}kZuvYid'TVTKRLT}54{jm)qib! ڸq#ݷjyf ڵG# R4R}. 0ŪQn ~xXi}PtF>|%͆le=fcY2w5[Xoү__._xbڅi)Ξ;{KzW~۵a .]hKUuڷةnu6m&@aa!ZVV2akµkZsqqMH 0zhk3eJn ݻTS}rmʵkbbtCzhoMQɻuU_"F>4 Z[:jJ\ba3g<rȑ'_]eΞuuuXQZFυJlFNiΝ;*Zfdd|`o+MRô0Xl=ݤ2ʷֳjW,aaH̾.j丸Fedd̜9!!jR̝޻p!M*9rGbB"c,???11o=>S֢S}rmSE3}kJeӔ26KF>t ֖Na{tŋ:}ӧ[jտW-DN8^ZZڱcGŴ*cɠZ) ʙnnn-ZXd)+?mhj 3:XTAҕ;_ƻQ͛?vIDATطw4߼y ~'Zn }BFmڶ㲷wLL  --wڵǪ͛6Xfwf_ϸa$4h͛?SBւg7___ĉ' Ǐhڴ$j wޥ>? O+]d:y{dvtrb,2hI%nZ4=<3gg+W:ud"V~GH50ͻz:5-nE%%%^{5!a46gfgg fT2Kr2{7|!Kϰa9۷nf0l0[LII)))IIIy8~F|qͷn*---..vW41 /8x`aaaAAg͍oX>}챊9k2{^cF*SxgϞ-))9s[o`jtړ%Fٳٸ:/̨ho8v>uR͞\-[l `EEEgUQLԁ%b[MQ4IMFǐ_mڶ=Ν 66|;R{VnFɅi E֩iq&N\S|~ޙeeeޘ1͆le=E'ϲt7|^o+*ffd^hٺMbbBvĐ􈈈;XF+..>lɓ'dzekGv>{K?uӿ={B!F; 2YYYs ]/ eذVYYYbw-5k׮;o111vj&QJ,jҒoe"&ɗi(yLLLVvݶmڸ_ϸ)KH50//4(D֩oq+?lΜw9[&b s}&77t߾Pl6Le+3*:{ٻɂM t!Fff(5iORNN+/RZVƘ^_z m߶=~Hthq9t#Y~<==ߝ3mv^^^m۵{bф~{{{?##GZp!]o۰aCwww//֭[?>i0٨Q!ܶ}!CÛΘ1s@۷g&?Qd%xqHq%1c&=LYbe|ѣիsGN[Λ=zlP>]p!C:v~>>>cƎ]J1w3FJ3,DU"e,&ɗi(>>_O-] ƎyvX\\gOһ!ri޼qG?Ї jmQxa=罪Slv('prU+/7/wmeeeqlwsusӃ}F?صkp+ұcqUv?VA8qEttVZYٳ`QM2{86ܳ|SXRZR7?oZ\\\ZZ{_ZG |'w6mWO!ֳg%KV!r%=ݽ}.F o 4~W^ߪuwwwiEWVQ3T)5יU`ygܽ۾CG22~Ԑs4y;UjAAHAAމh,<"RW\gzSŅ킂iCARAQAAu AQAA57o.YjU{  ANNf%$&+9hCAD 󋋋,XP\\l*Au-[\-Z|KGmq0 0 0 e&EDF]:/k6! ©)**JMM#6^x&Æp.%EY+*ffd^hٺMbbBvĐ􈈈;a?AAy.]H<*(squ+sڴn[90(K...2f`ڶEAD-[\{^kۺ^0Zm$+$L$L$L/\{`AmhAAu CAS`iߏ   4! nA  ĄD팱-[$$&ڠEAD-#??%t%Q#G_mذj*bb|||RHs?AA85VX?={τ}}}UHs?AA85L=e.}g7Y9*  ,\8`cǎ̟hCAD^NΜ9uצM>;^-CAA5?{0}Gճ׃LMs?eee%CA!OYY@iiiQ駞3&b'((H^tŅ p$z^+JkII ^"V~]\\ h  GRZZQiY7$S  Z" nA  4! n!gذUfAAD`qPvAAT G?ڵJ;  CAD݂F?AA-hCADŠo=3Ƅ$ሁI΅N8 1P1_yP*rp.e x !|:&_j ɕG3!;E]'8'& tp xkŌ8<r WZ<+*:N"cbXL|$8UȣhCq8 dj ˏ8,"™8lcL8c9pc.8Hbwz !n+i`HV A-DH 1INx\w呸l0p 'T@qxs8QA̕)H$!L'xK'w㜡o)Ţ-Hyz1Q! 4qfKDLkEeя8 as`A=T<R(%`P_ U< (`bNfJḂ 1Ս 'U|>1:597#!}iH^EI$3=5+m9a)̩@̵~,Nrlc+`_QVZsAAA5CAD݂F?AA-hCAD݂F?AA-hCAD݂F?AAZ-hCADA՞?^պxxxV1AA;֫Wϥ auCAQhZo/.;I?AAN>~ޕӳ=3." Vz4w``ߟz?2nd=|WvAA8ww`"mGk$4IENDB`luckybackup-0.5.0/manual/data/manage_main_withSource.png0000666000175000017500000035106011377455763022774 0ustar luckybluckybPNG  IHDRV=9F pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&&tEXtTitleluckyBackup - manage backup <3>?4& IDATxwxUM6!HH"E_AEAfAwD .E HGz(J@H@Jz6wgn ̝kΜ3gg{sV$*Bh$ \ף 2YU{pEV i 2%UC0 XjuEOUGgpRw"UZՅd!!h:N_,q_(dܔ #V%ŨjI,Qw-ZUxӮ|!VΖH_p)MyOqEhy7 Ơ> " Q,xzCj%@o-gY+_*Ь%1fؐb "dҬ^4w!E#4*TIGwC_d|Eeڪ$8!@N*Zޛ'lzp)n`, i2 Xx[cՁToV*Pq/P  |AѢj=S)V2P(h4j5ԪU B[GвV5%cN?3]Җr[֡|KAm#>Є^K< W2ՅTI٪dd [$V55cu%w_ͺ 9rI3@Yy9Y@v^%eD+6mRr Vp"Ԯ]x~~>gxBCC;M• S`d|\M^ٴJZա|3Fd0ɘn.eV@B_H?$T_H7V]I25:0R̸[ ZR@(++sjr~O˸Fw!#).(FY!Ji:DXXSNu_EsdlUظ`0nI r:ǴQrh987jFC%<:!}Z:(Jh49smZ"C9-+_4i#70"V+;{˚X\5m^c1N:Ń~SU8ܯe)_%pB>' dDU%  xyAI.y̙E"U9CY_I>z3%J U w`|6mΨQ:fL_tU2zD DGU?#w_WG<13Xi;?J(+-G8ʑj{tr "wNe"ٍ2zY-;iiyG]u[:sF)rP6A|Y)%9),=RRҼLyy9g{ҦMk?;4yi֬)_og4k֔K:ku4m=}/.*2lŔW^Klʮ_&InҘ)̞= Ngneee|g.Z]ӒԔ x/?ͦl u:| 7JMؿW7JQ$G4JjHf57nТE*#'#=i{:^ i ukpםwܤ1^Ӓٳgٲeyc(!Kk֬&~hҸo>l:s Jk!)!:w⣏>Bېի~B<i([oO?VkC222>l͚&4 }aufY999;Ν;ѨQZbcHwѾل s=}i4͛1l032ڵkhXInҘ~]ZVZVƧ|wEj Mп?m`zxc"I V~԰I 8)nƍ П)lق#F=P\\er`u'O[nc$''(..tUV6;'ӭ[W>+We_%^"?AF1c&]ȑ{.n199ٔd۴m۶tfժ>1/7ndh4fϞ… yu8t;]' .JQeK|6Zj#zةO:Lr)))6E,X`VIOOg)h}9 ט939Y[ںg}͛7ԤIMmjncS;:1mܹCyJ\/D!j͹}͟j57l`߾}^f™FĉLz=j^|E;C>h=YLyޭNZ FgϞo>6>ooΦ]weJ{ Ν_ky{l;sAnf8GvIШ5< 1p?vFÿƹsEbӦM4n܄˖lY+ɡ?ifKѾkڣhصGV^~0d@~MsEhтs;ǟ]5Wo>O=п?< +H*:Gk:55gK9t0Ѩ=tч3eTJ%:zrMn;wweit:}ԭidҼ||5*wy-[gey!rJ>uD.<8A6oLزu 7FoʾMmKzZܥ {Y>:wB^^3?)>i쇞٣s~gecҩS'~u?g31y^-[ۨQ#-[sg駟!xsٲe23fL'/7:gOfޟh߾CN6,{y|V6O3cLJJJ4yC9k]sˌӱ ]L9c:ǏsgȐٴi5i؜~<>ص&ЩSGF=(7l %% O4lcN:]N8~#96٨]6>:-[v'N$57l`ԨQt o1ѧ,2ֲrH*:+Cqw_n:RT\̫BaQ1oL|f{[b#z 1sL֬YCve.SaX( d2] b̳gпMA﮿\#VI&ND…ߒGzXh;|xPk4[]066A@VSZRB\\O<;vŋ'?/DB@*T=TYl\a]ݽGNaAqnF͊(.-eȐ W!Dߺef2tؑS'3HmʢExߺ55̜ɊYr{᭷M]7Sh(@vNu!""2 K\Us+*h֬3rB#Dy8 g:\.'77а0rS*AhPwP{X 5uadˉ =О7f-+6fqSJ6Oh4Z񗊏zlԩSiӦ:l}k׮a񄇇 }@XK7̟3{6}A@&c ju7թE6iu::C;>CSNϘa8줤$39FaX/_-Vo'\6OI1_wU*sۛ~ƏcŊƹDָ}{p5+[:NǍuT.8YӦ6m49ٶ8o?=7nl7vڸʈdŋaNuz̧ #iBBB}зO_5n,*PR\ ׷g޼/][[ɵgΰa6l_Nݺ75t\Ar#T^:1_Ib #U>nٲ%ϟGguO4]PPVeU t . "u?ܳuz 23IIIq8}_W\kXn= ^{BXӌL&N?P(IHHvhܸ1qqq4jԈzhk#G^SǎnCB$ThjM]Q/,4e\8CBr^O]`/$$^?p([^=9I89s%// ̀)**b:t zZR7#[qq1d>{挹)ży:^6u׏, ڴJ4QN 4fbccE'ְ^)Ѵ X.Xuؼ.}Ǝ]456mfi_\\iiEɚéSlI+ bccmeV>l6o ldCw,ml~4ydo.=pdӦN[n{r<Ο{:+YYY|ߏ[nS=p"I& EW`J"Uq*pw?{ng8iX)?/˗TFO3~ߺ&n"T*Ng 4ONdRP+Rΰ`JKKl~|  >&Kbb}N>2,Ft Dz7"..<ĥ~iMA d/}⋹M} 3 (g޽fb]w<޽2***8SO>aM&f:IOOg8}OW~Q/YLÇ@l4 YL<11:C rOX-`jgy];wRZZJEy92vs=*'h5g;Kp<PWѨѣ_|19G}M7Çyw֭Yb@~,n!'3(ÇSO8$T1i{9ro?gt;ؾ{pA6`rίߢndBFV @m^x?X6T.ۯ?֧ە<~ٷK.LwZ-*juӯJs5P+|/t,??_(/s\ ;2?O]CǶBp5~_R.cԣ-ZojE"%96CJ%QQќ8q2ZjEBB ы2,З?e2u⋛i0' y1}4*  c&eD32N"s!'{[. |E6mrr',,P~?ݼ!&y搻?4jgiʝر{#YYYfU@gewoPWe` ܒ)%&^v1kqq1wL/n(]&q9~p"sO:yo+P(( rrrXr+WdM}GGGz6mjww4hGB|k׬A5\#Qj,V||c9q'SO1v85nB &&=zdR*7o&ЦM[""" s.|p٦5:]FС˾}f?u:2,e]QQ-&T*Z]wo6/ygȐ!DEEJm3ײmjժŖ-[] YnN?}? 3>MdϟơYa#w<2,v~:\g\äcԩUfI6kr ٸq={"""JEǎ5{6`֭Sog%55PBCCIIIaȇ +e_2Ex.&;Q^;Aa6}=~`"1Q)+-%&:<ή]Xoiذ! pZlcGk۽2a׮jr 8T*4lHtTDGGK"٫ Lf|թ[i*<0xVKEy9QQyyfyLFXXPBBBdN IDATd2r!!!2EҒ'A99zz͚5ktL*s4j;7Bd2T*jkz pYuR*(J ?:ZmIRu(/7ST( sް,iiII `yO(JXm}AۡzooPW'zt:BY1RV'2fص+={ٳ>g\۪۶`U}r\nyt:h4r9}0f.ZP NFcG9)S}T*UZ;hߩ+*DiO"c$Q*(rotѨf婌 K.ؤ'*aJ=wK +xnn.r∉kA A0QN\.'""05r])JW9:9{'NȒ%N̝+^ -B{~l{ ]> S(|zkw K.wz_!.}&䋭j%+L"&*[W)F0]wxDŠP(#gGԙK2%MC߂Eӽ-Fu}cY뛏U;1ﶓ5=QT~L:fWk@u*ĞGr8argI?">K.c֬9pt'|VZ\>'( '3J"E6P[Dݒn/JUlT"Vrz%o'g[bTVZkvY_3SGFFx#/^I[C.P(#$޴ZC̨,D~g=Z5$oA񋔥  (AB lULf,hy$D(>Cj{-,G:Dk9H>dWYPHJC%HL9<16z[ħʖ*RC\6D{1 PT|nnsSԆ?Asm F aw#ȋW8QZUlHJBUA"V 5`ۆI7x \,kYEȊ$1Vz|"Z.EH%B\gF3)jx p}h@'U s'P}٣ʰ!* U XIrTefCz$ ,Xgۭd[=Ne̔'z]Tv&+ 1 P"+J$S5݆D$THJBA 1UI6E~clzS}NyKnm^5*=H}"SD94WHBD$T;`U0d(Yr"^$1=nt9^Sw!Śq5)@"J&SeG"TBA%T?X_8k0Acpmp.Rs&R>}l87;RvJbA*leeJ,I(yMD\ x~E\ZF^3hCP{I SQa?Dž|]*DyõꓕrD2e^"S$CAmH4T\`&YVsqBbt{yHGKK6?b|eYɪv!.Ihz~5Ngw;PP:; ;eP_KlH+ 5AbU~g+gΗWb@Osr#w`:- <_E8*me@S$u.mՀ@9 $QD^%v$2%A琈+ 5dXɎD X˭N7{W:uV$(`=2XVmPO*cujH >ٞD$H+Wɂ@tr?*9+xyߍ qrj,Q݁LF f$2%AIeh`b3yl3P(W!Hؖ6݊WU{T-C-QWVCH+HU $b%Ced*%e0dh0fd{b6=l:.#%k;ɶ9j裯R^`2* v+KdJB"VjTFҲYcc`S̮WNEbHm{`Ei~yTC*`e=﫪2 E&VdKAAGM& &$?gϪaUY7Ժu=G6x+%;m1KJdddȐ|E'0fLy@m;-.SiZ-I`谺]^`h$Ҩq"_}wř-\aS~ZX^qzٳkqh\.73eJ@oEeO=$ݺHN>l(FGii 3fL;CFF?6ݻw`;t ]H1>?Nn4jOqL~?ҡݗ.SP?5nOxhNgQbh!F񤶈k~& u/L:#OAx,͛MgǬfӵ[,IѱS,'EP^fIA0b^|=VZ <E&q.ٳ >9 A14L2΂zqMpn ҾCޛAya[>ZƵjQ(͛k^dmbVCؽKGҶ]ҴY]?;_}(E:$ԏ%E]U^aâU'<Š:a۽[Ï>$;2qXkLmb*g(kkUZYTt\tX>W6QhYX˹V2߲E׏E{o4V*~}~&FcU]fV}iаw#j'GlAQ\w]]4#55cX޶=<eby3Z=6:wizz}{(#FкM i2f0ה2xmB$׶#Ah 0{N87Käztˬm5o~F`e'7o}:sO]6IIm]cyoR$GR8G5+n7ѸIBKդM/ڴi@?~ܵXBBV"&&e#GV=z iiDtҙ9sCuMA`lܴQT6%% )* ?g?vcM᫯j9NE'æM*̛ǭTdi/X=*X apޟ\C8:ヒpkW5˖^F\0?{ΧqREѪU+^z%m}s>Z7d}h@ljDˢ!ÆI/_vbX<\T_T͗IMњ͂mP O<ƍ*bbϭՆ 7.Nwrzae,\XnԬXRm]w]ƍ`z9s"^xr}o>|x a OV%27ٳ#XȐz2ޟ\G cE29t0?E1cYq W0wn!*Ջsf%~A_oTNQX5vl$;/o ec8G bj`Wo+==T_;8iR cIJFXLi][fUYI>l`߷K3'm +F7܈e̘Q@Ac9>LRC'Ʈhgԩ]BN7ߺax3f[۷-4''F,o}[c?l ˼]'u>;vq(cMf籁uYA]|&ݿ%H)Ab#I/^4lDNN /p({qr>4 -$-L>~NJTT;-ȑ#6~+|lܴ Oط<IJe˸}{222rޗixKFIULY8q<ӧX2zQPcٴIEZ6oĭT011O?R\l5;4܈T*{(~5-/ߙ,mHj/n/ gńz|2<۹λh|2~^_~,^o]Ν;y'tL6{k| _]~5[.ql~vɦ/驉V |ϡC0hp6nTѬ͛.s3-FXvxVg%۶撙y?X}Brs2(O\ z+m4gZ%KU6Ϣl|%r.";Ң'%_~i Y/գa8n.P&O*wm$-VIUsr%2^b|CmyJ8";瑒`0#Z[8LFMdȡeoU,[|LjbnO]&e֮)0n4w%b}.^R6~L K؞o0J%Z}ޝGK%+vr.]h&/Zw4!g<.Xdy;wvEA|V-ڶՐ~>ۮ ̤eK-6q]WO5oYL@LO?-@&3dž|7>: 99ZLL, 7-lژ˹]0eU=9=];/u>@nRK7^< kkF+O Eefs wrMuhO߸ߗ+VX=+ӧ9}*/[iiAMKPPbӦMkJ%m۶aص{C7&NzԼi&&N]wEDD76_ӹG"Q*jՊ3f}ސ6OTo\M-`@2T*n*eef{O-7Wi%5^ RIBBߘ?O,v!u׵?tзq^z% euT0'`Nm)[}JK|٫hY6G;9ܕ\/Ik#שpxYkcHKy8M5;ΛNvJXv1wuZlkw(`uPkd4lw<>`;`B5nmZudA_`pj@yTj.Kx@r65}w9=]ho 5gJzB$U3%**ZÆ#?ѣP6rqhah42n3d-]E$|L>9Ǐِ*|-l߾?Çٳgy7tz˹pA幞Iē {y~9˗@tmaj"M'8ǧ20筡"_]+BO|9BS7u4xV5Dx͝qeB- Ȃ>BذP/>8%%v. (Ccz/Z/e_'f)c>^/sMzoܞ `f>ݻWL?(Y"w |X@lYqcyTT8vL />̲jӸq1[Nq 21C#,[zkRXo=IL4}.;_ b8rDF+Q%f/ƕ)?piRʹL~m'|_~2JKKm\R.;WCyWtL0U+W]t:?J%W/9|DZ~P|Wtr PY~?Z~?5ϞmU2nEށ^\YIFY:v\M>Q0v\@cw]& 2jd9&ϲ#GX~Sڵ*9]#ZXʎ 4j#iS]GlY˨by_(e24ZȹޟB6vi9GŚ*eWw%?@B-Md%I5p±.xsEE q;<𠥝\/ry~ltm<}F$ϲ\}J>evwr]`dpnu|pc}@Ν?>|o;vsϚw??{6|8zA`ƌ;3tӟb ]Ԍ d_ KvϞ6nAèQv>xPγr x(J6FYʯ(YNEzB~9uV.̞ѣ  p_rhBm]Ax>>lb'5 wyh0hP`Z={] eHK u: pv Mxx8=z믾6BCC/xImтPHmт^x9sYE_7ygϞǣT( #%%!w̖ cF3B4ѡT$7曅o5d2:]wrסT DGm6rzX~&ZJKe ^={l}rw7 `|&N,iShII:~%/.7nDt&<͗tM U#GQp,C.jW$yyyhZr9rAd_/_u:zBIV]v@"⎞G iA DAAG%555`7 $H "??ÇӮ];bbbob% AT $T(Jdk.͕ӧOsuבLDDDU#A $T)JKKQ*>}믿> :%H *,$ UծH A U(8w\tLxԱ# "5!Cg߾EWTT0mT:v@tЁiӦVʦqGX~x?K|Q/.Vts1{ϛ?vyab o#ylт lݺc9Uu$H A E0fwǎqN/>}|h6l`g>m_}Mn]ooٳ[o fϛyS6ʕ+زs-[6h~ۿaCrev: ڵ? 3vuA5opC ߭ؾ`ة T] $H` @#ܥ |yY>u ^Iٔݹc6l;7ZQQW]WE]j[pk{muVb-*8u"#&@ {9;rsOι̖-[ϖ-[qvvf==zT#}ʕ1r$OoIӸq/ʌ/}2g֔rRnBBGb/Í*˘c4`R-[rIs:|Qa1f͚˻j5k._Ą iڴ e˔յujע_߾\xQ2b _v~+Wf|X:o֘mV J-hޢCe)lۺ͛ӟ8yʠ7--!!4n$GyCWyƬiM)'2wwwŒ ^Θci5$&&kuQJTb0V,;oV-_}fKll,;w`|ŗ;fAmfkF9z`Q/\@֚]TUelaaA*/^]KΧ-OLպuk9q,J}{KGg^JUV+ϐ(o2]owm}s#Uڵ9k6!@8ԩ32)L~,»-O+V,~1=!!26`@"""HKKܹs|\zE+FQL8GPjUXz5rnx՗_p1d?1t4h7Lrr{gx{{Sh߾ , ))I&99yѮ];֭wC˱cJwxe ƏGiҴ)/BOuHi7^^^|wt$Tʚkܹ ^^^xyyѹs֭[Gzzz-}4'ʗR,^{D^=qw+KJ6mضng;YG:y2]nų|91$((ugr-Sv>m؆JRR|9<ܹs'Ger Zl[Yʖ)g;f;3g,_cѢkjZv &M/A$ `džqgϞTPV:sѣGfA-φ[ŋb„ RRRӘzo,cUw!hll:uqss 27o2ob=9s]g.4ZfӦ % mے_(ט|7v> f͚EHH!!!̜9gggΝ;oͭZ7n`,Yx<iZM7Yy32gȱ %)_ToAeEF*[n}|tNeӀ899iիg2Yn=ΝG~} 00ٳgQ\9֮]Gzl{ŋ\x)ڵk0Տ3 6u\0Bxܹci/\ѣGIMMѣp!ݏPBФIlj'HNNVۧ-^ueʮM@e~Tv㎥]`DEF&qm @٘(dϐT8x7jD@@ N)Y$Lur㰴r X0>7oay%xsːVs}1d!\jm:y$&OիW* ?옢eK.½{ J/r\@V|*7ү\]]b!ypttۻO=]"Bfӧ/_~ј-eVkt}ZFHRQ]Gq:666ZpPcT%%K2z3fMkJ*WG96mʗ_~~VE&LmyyfVPL;~u>ӓk׮m*T6o;;;7kFfiٲ7oDP HH$( {Sٳ{7fGGG^$'[Ę=<uǏӺcW\{x3ZΜ|/^TLS=nMZ-[LRRyh3d}nTY*T+8_\VOرcݫ'K.ޞ=z{)]oe|}||aРTZ+WP(G!qꢪgQPznֳrj~>ebmmMٲeepV\e|?BK糏 moߞ"EÏ:|D}! ?0q"XPH:|)Ql7t?˚6c4^Jzz:W\aڴiZiZ9ݠAٳg#==4bbbr4)))$''TW`\  44ԤÏZllm!>.)311`iBJJ dTa0su͛7Gzz:DFFazm[序9#J cĈj9֖;110toF '5.]1'OFhh(=(E>}:u2 `y*U`|ی>#߷:^Z5,[Zs+Yjeځ緍(>iZ=m۶ܹŒJ-[d߾}|׽zZ6h1t}+U(Q=*z͡C;ve}C.3q~gRRRӷ/t.]bʕZ+٭ǑÇSϨCO~lѣGW)R(SL< XcʊN<5S+\0k֬YӦSP!KM3QYb%ZDXYYakk'_w邯r8իWӲU+ .]KӣGO&OkQ4 + iٲ%vvv8;;ӱcGO=<11ذ| BJ֖*1dP-[yj>cLӎ)UУGPhQK۶mqppH"tޝeWT С8kW-_]|9[ .>>>ٳWL%Cf-LWV-x{{gqoP(7n, ,gϞ <"ED.]cvƬ])Z+++2d( =O{Td~ڕebeeUV姟r *FDRvmFlAr/==HMo!{{;>ggg,,D/ћ2B o7\ӧ7Y&~p)5kcRSe+BݝԷ*&VHJJ^B<KKKAL&#K<}I+VdybiR<%Ri-dogx/^pA!_Iqpp0cLzPȑx$+Tt89:!}.^=O8e---U. 2gvWB`Նz1 VMR޽Q@sB!3X X(r\v5Q;e\OTLMPSɅ5(RG5v[TffLn|:OcE_|3vsA2M}Q([ΨeL1ex,q! LbPX{WKr i_:^έ;=Ipğ{w)~ڴhGywOJ*Clu'ONdt8| @]nF Z*cEG<XA,syl7]eiގ *s #G'5hJųxؠer 3soI  I׶ݛv*ϟq/] kX2aT*%:6gFL)Pg9WגQYœ3ljwW+tѷ2+Sk=~ȳgO3b^&]˰y/t Wq*]x|+AA1m*_kը G599:O*+Nkqu 6zzNc+R(tؼ×hU.[f=9Dϗ}er)LM9zJk[&a>Е7Z!AAo*VZQr>N@4TW-5VzUc)܉VO76q:(Q$[PH1wjħ̲nI$u*l9*S"кgd~ٹØ}#]PN}/Q -H}/er@sob% 3&X3 aZiD"!~~EkI)Z.NxZ.NHz:r#z ׮KRarxvW_W_spptzj.\D9bҊr/թO&믾Hw35>IlE6#+L&;[]2JzD|*ϘR#n" ;yPk0tdU7A7,$+V  WX1V.we[ h懑Ja8;9<9^D176_r4 w:թ[wlmmy8;=[ۣreƭkĘ 7gNk>Ȯ[o_ $Ossg7K'Oo>y\M6[aqؠIOOY[[|Jd2I)6Y’vt'M o0ߍ|+<<<;A7a4g׮]ڵK"K\ tpNy‘#Ghîݻ9BeW@@R2ԭT˩W6-W?79r-gԩ|}}pnЀFQti<޵dtҔ.]6mmou7 P3;#'|޳]wO?{ҥR>s+T':::thOnݱ0Tݻ̚=XYYѺMkF3ߌ5j\& nc2둂PQ`!v5r$VVV̚5ˠaӛcǂy9\xq5njî]HJJӧ̟?۷ %%gOj*n۪^NP0j(ƌCh9?NTJl֮]CIJJ2v --iӧMLLdrzs9[[*W_pmڴI}-c:GvJ.âE … lٲڵkUL7M28qg̙<3g}&ND2.2%d`ѢE4jԈv|>b8{U_0eի?XD"yL@Ӻݫ'>JOOgƿGO""n?poJ.?w{?f|T5GŐ-0?G`!Hر#qqKDDDбcG6l@XX(...̙3grYfϞ3gϞwk֬->6nȭ[Ɩq3o ]`6+7rsLX `6P¬^,.?*UbmmMɒ%0q".\Й~Ixxx`kkK޽x鑑0o\Zh3TZpP`V\x#IRWagРA3t0W"JLm,,,}Yf͚aggǝ;ѣF<~1z ?1YVUTۛo>CwuԡVZˍ05j`mm͇~Ȅ  BymwFf};woW_y|M0ppp]v<~ѣqVfMqfJlK%cٳg ԯC $=LHH>ulb AŅAbi̞3L'Xa=#:&/_=Og)R4oݺ7|7++5%-ZvmvݺѢE R2bcT///dDGGv>kq ̞Ì3+--aÆH:uիz85e? ѻw/N< G:n]}ݻwww?v$&*Rfr='cQvmH$ԩSGeWh6k5ysQQHqfJlK%1\kky [[llH, xݞ$u+\.r-Z*6Q:w¦[ ̙3:̛7뜗R/U( x^!]WJr2nneya}/SRYOOO>nvt߈>3ڵk8;;3sL\ YzԪ].r{.]'Mj_]Oa4iwFf9.LR&zլԗ)899accBYEƊU2d29RYITA0+KKKFM^=>}4v`x7ɉ/^РASB_vAŊMvx܉8Κ7oF\]e̶˸2ꘒЕQr b%Bpss/&OLVٙ>R1cYOZiC%֖ *7?lݲyfuFʕU`V[fݺui:_=`8;6ՕRuvvs.Y9s&_|...ӢEs^Odɒ4n܄Ƴk.UƘ1кuk *Ս3 WbذaT\ lmmT?3+WTW .yfSP!3g2Kln+;mu'O('kP]t`<_̏guΏ!~Ib8nR}~(Ye._DQNp~}!m?iCݏ/_b„4mڄeJZ:kѯo_.^hpy̞=uZu0{,Ҵq?+Uյ ?nҥKdo'C գǏz?XB 8UJr/HZ6?QY BPKcǎФi70(ϖ-ZhM%66;wlrl׷{Us'9gsu֮]~e:oOrrzZxx8'M͛,Zؠ ]?cb3Զm[9pyZhrsճd*ReA :_Bѵ?sڷksUEqi+Wfȑ?q2j׮Y 9}bLNdLl;r0{ٙ-[r7.-[={8zz)Frr2-Z$ܻ3giޢ7NegLlHHH`Q eZh@j:"/^zCar$4|ɵrTnPP+W̙ӤQF FK&̮GF)--˗o;s@Ν۷Y.'&vȴiߺu |z )/_Rڵ4:t`?N:Daĉ޽D`>t+Viii q'O@!iժWgyl۶Ge[޶m[2t(_5oт!C2umB8s K.]===YVM6Ѱwq~f!C!C1C5MP¸-]^EV༑k++&}] #r}۹Wϝ;7_waԬY3=<ʙ$ #55Ν:y1W߫>t-[\=~O?@||zF__tP(߯~~4GGGdb 5Go7YppIIITV 7wUP{Jtt4N:g[ޅ hݺF֭0u|\ٕ]"hU=uȘuE]}֭ĉ:t++0y~Gn16-+"/A^Y} pgG;L'ܨב8;]ʧ;rt _|%RKd? Hb!bŊ億p¬\;Daʕ*T'Nbr.Yx<|Ƚ{-0Yj>Q$00zxd {^;)B\X"β^7X `65TVsU; ƽ$rņL&c%4o e(^1*xÇZSSS<} 0d!"2ByOUOipkLaC׮]SպVه5Q2kݷrt;ժWךą籴};svQF ֮]ä-/_jzʖ;vШQ#pttG 8''\GfĦ,,^To@^7BQ]*uX{[ $Z$QP)gɓ'|2:2v.] ˖-2GiAx7) C*Ԑ 7jvrtԩ1Gn8::݈oz1s,+UDGGktVϨaCovܥ1mʕTP$t1}:Ҵ44ns~rJ {jMZQ?w_u5CtWje="mZZk(yh2QkmlrÜ&+A.'VVV||ڵcڴx|TdddqF֖m~~X???"#"H$S'hѢٳqr1lmmiߡSLf̘O;֭[KsD/{xx}__Nƍ(S .^pA, 6 ;v~6O!?r.2"<==8;;cccЌ5NKK#)RiM6vP -V _AT) _W+#As,X9D\>'=DJ+(-V%ښ? ;.Ox{QA0PRqrrql3hYAAC+A̮XI# f+A̮ TAAxwTD@"QO[[[,,-P(}nV uf 4#BAL;7(Pu((-V  =  ե˔$%%L&Gb!ll+'D f'*U  r/p)BcmmB.G++(rr9/SS NJJ | N;|-[͝|[nرc܎D&~ɒxyէ_ZݻWΝ̞Yvzի3zF~OP=VϒeWTJRRj2DJJ ݻ}ݻwV:7o!:1wbٲuիݻt-)))9]tUreF' J4nڵk3slBN!.>ػqөSgd2S~ͤ9|{̖-[ϖ-[qvvf==zTջ7\\|={ٖ_ˋEpeq)6F.3}T<ݞD"1i:C+A /e:7G7o[$<< ݧم(/ƒ5r{ޞݺ3~֭[իWHyҮС~c0iDvEbb"?0j`4/_vDFFYN;ѷo?\NL Ǐ#88+++>ؑiӦM. Ni}}O8',,>RŋLJtt4N: .кf֭0u|Ν~_L:QD ߿ŋru zpVyddJtr2 Gn|Kntƍ4jHooo҂UV]߿s{^{y?}}ۆ;7y;{:|q hwz*w$.>AtY\RЗbrBBNQpaVZEtcbJ *ĉ'Xb|,^L||<8H\|ڵZiŹ8nyaҮ4nHpPcƌegc&lVbKAZ*%Zhmm=JQJ(Z*BH( /U?$2If~Lfd23%sޯWͽsd=f-/==WWW/[Ɯ9_wi6UެLw>-3~\#4nlQfaaD"ѻXXZL$`F`okQ%oXFyWl׀EXڵ`ggnj3E %?l݊e˖ښ&MeVBCkb%۷׈:%㳂>ꇃ_uQsîмyslllhѢ>>>iwqT$:tГݻݻwK>[[yyʡ}Jׅr22qzqϤцv/VVV̛7Oc!s塍9€FD")?aXיy1۞6'2Zl/#Ƹ.}?ÇP$>T-4P 2,պWЭ:}:A?] 9Uݺk [:MIIM6jxxh{ ⰴf\…,Zm~BˌeU<}{{{O+-\Kխ[w5kܯf֭Xذha(@ b|׮Mϔ0Yz_<61xpʰ]b 9A^uZg/\QΙhƔmθoX5hQ:DEaAZcXV`]\AxDG&Mz@۶e7Pi򜝝HNNVK|Z_j׮ual7ߎL?LƊ+0`dJz?K\^?C XeBH T;[ v-v=VgvX֓+*)2CA83Ҽ Axխ @#>@ݺt@LA49hhtp g RTj5k#+_~nfffedٮ᧟>}re˗3b'g?&22O?@{ `DDDCDDkVԣ5j)H~~>L8Im{qVDϊ9s1&z?_ =V%.<ПR:_j~aj އsk3Qpqq{R;9Od5 _x7odoܹu{ ]mQ#ٿo:eQW[mKl\1WO999x1Zmۖ`U=xΝ:[ѣ*D.xF_{ȸ[ bmmMbR2_B~7F&!ɐeerdr9ry:roAHT"tAeʋX rrG&CcooϘ1c7ݝ'NaO$'%J^?~ʕoɒrNEEC{./l߾sgϒ%xxx0hdlmm  a D"ފBܹ_s lmmջ7-Fz]ɓ'jJv~;8Ezz:666ٓ&PJiV޽KժU8hӦMWKӓ{sgye˕eL:Z}l4X+AJ{EACL6??z.ӦO׿+V`z>9Ǐ*_"fsA(uQ% qE vZ :'{B ԉ+ATqquyB(`$$H(?J G4AAx$/aU K[ậ|  61m(`DJR'zAAx ?X/ u2BX `n"uIkCCRXM$=V <JAX &cr>^W1uY{Ax~ зhX PL231)/pKލ7,?/{TL]: c?nTE WZ[4R{Ex~.^yCǎY:ժ9ӼYSƍ˅ tSREm\gF,-[nfjztƛ+Yaeۼ9ժ9n,_ TZjm}mjZ%c~+ ﯱ=""+DuA^%%yUwOs-Xs1R=Ei"66cƐy۷w/}6y7TʡC9t 2off&Opt ~eCAP驱ܾ}={vӆ |Q?'N(O IDATۡcyqbՖG >qcz\vm۶ߔǐ6%mq g׮]|7nd~<-X0\ҥHص+N:v: `UfFQ59̜1rQ~}f͞ɨS{QBCCqrr"00Q*]Cش[ѻwoΜ9MJrj݃9p}1 ax 1J\Tt\`P +`ܺuScT*w :vfԬQN;nZrstyyylڸxR&5kT烾}9t;9[TT_5z9-- \r .pJ*ݒ\rEޘ@9ɓ'L<:]qu'#Zfg]ԔF KթԩSԙ>((ŭNmUse|`?VKW̜1zuZrH8GnݺPLnԈ+W^*r:&5{L LY<|=Vb( /%k++rء2=Deڪa711j\̕+9N`P0!w-O}JHF FNNVVcN;zeςo5,Wtl1AaǍUrƅ <~˛L+=x>}zn|羖e\q V[ĺuk ?B؁899m7vYrlrrrHNNm=Gvv6 6rj۶oFTTG}y[\8<]vS[ߵk7/Zn }筜66cj׮5j ٳ Hعӟ5kҶm[Cq Vz3O7ebCMQ˱y891`|:um DoifSRINIeM+W(6n͛ёUVs-v ={ZvXXB^~>7o1Q%Jy`u̙=K5ת`oƽ]~Cp'-S iii5˱ t0nZpu8xWiOHH0jϟ$~ZZX]|ÝbQzp<2e˗S): 099|ìx뭷-KWJOOUmr! =o]9ocJoEQq;5S={ׯ3p 3E+jCK&CAx)w,%vF-w4aa_??4iҥ߫ Q YG )~bÆB вeK~Q~ppGʊ;=lGhh(Ə‚Y3g"IMIr4~CAڥ1e4߃–мyslllxw;,R^S?J?-ZP} W|'lٺ///ʖ-5M4a˖oŊoK޽{ܽ{L^tó!|2'R^=&M7omy#;;2egM뼵3漍})BTy"­[AӂKBt\ 률NnP=e\=Uچ2(jX2l{jKT>!>n5p( RMP;U&Ȯ@Zli>.1l3}?`qvexzvW^W=4nɓUcރڴiMEWOu%g[gW*n߾ΣP=oʿEff&.g…l3_h>yqqXZZq=qqq=zL6]yΎL>}jӧOU eyby~+]Zf߾}H$Zr íJgcA̱)4*W"FE v81NDNyGV2 |'iӦƕk"LFvv6w5x i~~ ~~:QDm^!E*1d`\Jh۶oj`DG)[jK+ҡ};y+c8;;Orrڐ䂨wFYybyV sCTY3.x }F[ÁYd)|hU)}D:.]Xx1NvzVjP~0=(, u" َMϺ_2݉Q:ÿ/P6& ?pW">C[\h֬GV[|]r[cۘ?;;;>VaCEuA^!\XYYq/˂G{Y&uqwwj}9k&%++,Yii=k+Rs͠ߑ&c\pqcHF=rrrS9n{1Aasf"..\bcc={6ݻ0 YWR,ٟUoaF`p!!!;֕9pDFF'#h޳*NtQ-}¯uaXz5ի͈~s޺sƤ--NNNXe)2P@A^JM\x"3~ ښ%Kǻ?~-=zxQJƎǑG8}:ѣGi׶m[ƌ (gG8q'O2ܱ!y̘1lƌ3…8_ńնhтs;{;n@1h{P{}w몶Zjf@-ϺI &))IߣGRS:.ef&~1|'񊈈@*h>#ׯ]Ɔ֭[TGFDDw~'m߿?-Y}:u 6nޞsc{Q1Aa?m3G*ұcG/NCۧ^*뻆N;RFuj֨NYn-9]s(W{ _LO5pwǢ 5SSR1|.jV6SN!33Sk9E׶.333f^.U!CpS5ӫ¢<6m]Et)w###1|999ZaÇ3z(ݫJ9~=^yc\.gqONNbݺ!AԶ몿#y o6\\4ƞ#;; RrCrr2?oz;<]vSK۵k7/ZK$ʗq%>Œ96?{IMMI&|3>צD=oQAxɡ nq̨؍<X;ףU|gi܍޸q11ѼlڼTSRٸiʕ#**7}~q,? `o֮%-- W:|;i8xWiU!/_濻p'-]m{}9zw%>_NfMDDDȪUqw ;p={j=ǰ0>:|6o°8Tpqe$&%s'-CлwocBA0Z=%םS ;IHL"-.GѪuk_U4U_u; 0@S(5W][GFW_lr奧ꪖVZifL8DILLdܹsDQ1fxR)gϞ~\|T37í9V ;; {[K;߰2t({ّĞݻ?nݺv%#Y$||VGppp~~CCJt+Vv:1c n޼~мyslllhѢ>>>b%۷׈hܸ 666TV +34>+V0lp*T -[~e1zHعW~j.GOƞiӦl&%Q:oL}Wԗ-[EٲeI&lٲ骿|Ph7CZ޽{ܽ{W-򲳳(SFwFZ`9XZZraZlI*oҺUKi5c y{jځ_>RC&M-y3ʜ-\n8r /:S]`mshͧ)`} Nv-e$sѮ];w$1)SѬXW\|oSK[w=zxKQ RR%ECpڴQ2=jgutԉZ5kPRE=kl&$(//SE}1aΝ;m[b%oGfeӇZ˦ DWycիWeu}_;EԺW1USZ=]ݽvaooFbI8::<2؊ӆ yh-Zǟ~P73wy%miQK&=V +)jX;[ [ZP𻸖ԯ_O>GzZg `|._q1W*5,LFvv6wx2;7~<ժU#))S\ * -X`}ޔ!{~&&&<4iBٲeRm۶S+{++dە<<ڲ{^RRoʲ>Ğ;@ݺur7>|\3ÃW9V 9`g+θְ+m:)~l*Tavvvxyyhb+.]2k\A0u(c2ۉQ:ÿNss UfB7t׬bԑ#+_k{paRV ҥGǦ˟ @ŊNJin]ٶgnݺENNR?1c#ԩJۿ"JY3ٷw/YYYdeegnfR_(;?O>%))Y3g})͙=8rsseVAEQԩSF5NTe`kkKjJ ӧOH7p@fϚo?T*ܹs|2bFnja ۱CmРDFFEff*F$-AxES_G ! Ν;呓CBB~;vӫOsyܹCŊiժ4@:t49pDFF'#h޳*o֬^MDD999DDDfj@3Q#|R7oɈSlY>t碍ǦCEVVjc AsW^D.K5Odᔀqqqifaa/R;vGFm۶3Vzl޴͛6eI8i!!$%%ѽ[W=z]v߷>|$m.]1|ja}9G8q'O2ƎL&o1ct3v,ǎ嘖{1(_A07c|Q!CrEl/&$^1 -ȸkװuk͆g*)"""t>| ,ZXoy]={jzؿo<ښ?țo 2CcnCZ=WR/ 6*U-7v]K[[[CBظq!!!$#H憷7cǎS5zh#W*gϞ,[CmWgB } IDATܹ_s lmmջ7-֚%K圊ÇߵUH$= ^={wKpS[-5ٴi#$ciiIf?A #g70w׊^{ٲe NǏV:}3u Bi3el}]{z}6Ν=KFFCJt_ aau=ɓrZj`NEE .xvd TRŠ6mªU?ݻwZ* bڴiwח H[Ϙ;46+U$))Qm˗\"6o^c(\ǵ-uuFTGX~·^pll,3OŻR͹*2x O,h999,_w7Z5gmޜ˗!J5?t ^.U{ ϡCK 1jHcsWԢOZoN_c{DDD;ܠ=[(xUI3a"/m %yUgcZcz~6~Z۷ם;9uFQښ\NFQvSQC#AJҥՋ,պ[n`|nܸZ}NP˗s5mۮZerFDFFe|gf?o}8xP{î4Nߟ=4۳k.>6Lmjd9$ϮM cθ뛢D $se嫖\:Ҥ+FQQ'֟:C GiޡCAx˸uE g.>w?oI(R~l ߵEu*d2|XkE8v(899_w ɉPz|\t^ѣXzUwqrfΘ\S֕kׯ3`V~޽{̙Ӥ$'=ЧO5 +A^J\ z"[SZb'qbn^0:}XXX0mt,--U )P<=&&FmT:uHթY::vdݺ7C2339cjIqRSR1|.jV6SN!337RS1A߾թMjδlтo,jLy9s憕nnn_#vRK/J9]{8,C zX[[S~}6l@bpn]y0eT:{zbkkKgOOL_7?XZZRZ5/Vm9[)S&)SKyJ*U%Kr4 E.+YJ 2Ԥr eZUX-'A3b w,#5L R ֭[\|ƍpij֬Iƍ9<7oݝWC4h@ʕŘDe\pV>nC6 {}&--Mn?32 };A0Zɘz+?n!!j듓Xn-G;p'''~7$z˸XΦAÆamllm#my?]Շvڍŋ 0;~aEL87|k}`VA֣}6?zc3FL4;w?~8[ zbiXc<puuUK|e̙%{FoS4~cΜ/~ٲb ?o]7̚9z+ g.o4q;5S={ׯ3p 2sQAe¨֒4:t5c۵S6wҞ5: g}ׯ?˖/W ({Ŋob,yТE ||| 1^+Soزu+^^^-[kkk4i–-[ ݯ!/s`iiɑ#iղ%UIV-)cVK :Q<א`֮ʊyilז2e; \.'# W #2u`o>u=J.7}P^7: -2DPl/#θšr/6ڶmOǐg`iiI6צ VVV:E~~>111XZZ#!>n5s(#aڴiMc4WZW^U}޳4k߾=ݽvaooFbI8::>yqq?$$/&LwZ<xZzkv e֭tԙ?Ξ%ߜ,:td֭,ZЬˏ?'..h򴱷{_ҌTvZn;}ػg{W&Y kz3M$sA(E ʕ*j-j`yGl-p,cPV˗qE̤iӦ-[P4nܘ8y!͚5\rAeum2^޳WmM[j]LL4yyy4o\=]ߎ̜9\Ί+0`F]y8;;OrrڐHvΪubJԩSҰAXH{4BS[K+ҡ`zQEeL~:dRyB?P@A^JlhgbgkX<cf5کWγZ§ #G4Vխ[SF- fPzmLmР'NF *ϡ2T* =tQWH2 pO?1}4r9˖/gĈO+fs9^iӦufUy$->C찳?,$XYY+5*77++K-V :S. eA#Q˽, " +d*%<$E"?`欙ۻ,س{7gRo+)͙=8rsseVAނ _I1v(ųL@@w!//۱^=}/QFr%R)7o#lٲ|HU:eЉ\VDϊ9JgY5WANNYV8_F!S&OQ 1`Xr[}KZ^I999z/RoeCCYZZHl\Riܼ<^}{,-K޸ܿ!N^44s*rR.Ƞ0U&o7Ҍd.Q)r2Ȍ)Gx/L!//+++qppPm 꺑 IjsrrߟӧceO۶m VM0/.dʋs'\8GGzx0} yٍ'O"iժFPشy V@`@wޥjժ 4iӦ޽칳<~ѲEKNJVv{l˔ΎryH(elζD"AK,,Js-J=V haÇi P! L6??z.ӦO׿C)!|tX999acc,,̀*ȒJ((ŭNmUse|`?VK̜1zuZu*ٳРAiR)cbh^уv!CPzu_>6n 1Q{788)S[[[:{z2eT@Ǚ3gX~=nnnXYY?k.G%\JvdmeAXyG&5oٳdlE<#c1aIKKS r>99u~qrrR>n>{߮^ @7[ҰRyƶtpf͞nѢbU]3N[:MIIM6jxxhUn]=kN#@츢<ڶ{~'Op>.KKK<<HHwaM]oǿaPp U[ڟ[ܳZV;Zwݭu׽Vl@gEܫnP+S ? 1!x?ϓ'ɽޑ{9\YgKk999siϒvvv@B׿AZ[[[ə֬Yӧ0xqBt!ty^t1#īd]i/f*U:+@`rorZGvTkߦ{ҢD33h@4 &O믿1GVv4;?K0ERtiR3OzLxcIDRc%r91Q !X9K,]@פo`ڵ,MsJj6mȀppp`kp|p ^ Ŋyr n̯QcFѣG=Mt-ZEJ7A6m-Z$&&ÓcUL֭_O*UP*888iV:#GL/Rz__FMrP*8::R\9FcP2%o޼lOƍqvv&O\Rc%0b;wBM:-8p>V1r 4荛ȸ5Vlx"""QմSBP,Rc%x)P%"HHF:~]'2eIQ#Z  PdLXYo!HX !ȨNC/>yr&88JEZE,N(Xʖ?Xz[ sh n.*!BXF|ʒ|Nh1y\4zUT0"#3X !Xe[%BX&22+2oJP%B7]r*sOB߹sGV'BZf0I"IB!tRBd׽ƪ@|(g[q%ܹs/Ҍ=:C═?;gY3º5BBtRBdXX)[%& Nj/}H:Dǯ">>,MwҠ~}Ǝg-&Bdg'OàA|G.WRoG4Ν%wR%ϟoni֬);vG\\'OJps+G*1y$T*;vЮmJPx.EmR)׮]c4nԐY)lŚۯX7! !\fzjf@4 ͛yQcΜ9C/>[l߾-ZX-bذ}fΚmz!Ȉƍ|){vf޽,Y͛Ms`{kծ}Z ;Dǯ2ٻ`6TׯFTRۛ$_V7v3… ckkcƎ3aai$X-&+Wr*/?0ƎGn,YO !^Ivv  /$&̭Ys?q8Op_|EY޽ضm̟? }ti5jعc'_5π5'lE˖/?ݻu%>>C0thRS]wϞ4U|e+GÑ#XT п=zCF7Y;c ? |Y)8ڵmkp/س{7k׭O @4h/k9+W_ӧO_ (={m۶tdIlSzݴsfҾjm gΜ>hb\Íݻ={R*/_fte.\`FBq͝|`4&|7nʕ6tŊY(m>kͱ wiߵ&Nİaٴq#/GlټaÆ3q$K9MfsfҾlGHv2rH,8h ^Zb0dHA)ω)╔'#J[r8XrVڒ'+s]z{ecll&MTRȑ!p 4U~B\v!!8s9Lhk# ծU9sdrkL::7o^\2+VJwԬU9r\OKIM.\y cؔ)Si3rA96L<9)Ml`)TT >cLb'x4i+TPŋhSQfM2_̞= ;;;Fe4^^QQQ̝;KMtt4UO :z4XQ`iggGz^.^@[S33qWUޝ"n&knܸ@&NC:hZlivO> &:”~7' wӸqRR֭[3jՌj 7=@ҳRVz]d͚=[Y+**ӧNakkKj/_[!q@бԯZ̈́ QDZd֩˱/WVm,Y?[cud(6s36}VPUhHjYFdTE[^tIiCN'^JUܧOv {gJѣ\|9>ۤqsYp e ;8㳊Ǐ9sҜ^{Wjcccܹsʕ+3v?< tB fLuanʕՋDNFv >S]{ddnjWˣݟwe4N{1TҩN_X1{ tH^R*eru %Jm۶3˖-H d76mf֬Y?qgp͕WfTRonlأGP(>| QP4X !Xj&;i{NW;!B@ׯRlY)+!bXʗB! ܼqjyJBa%ʕa! rjIJ!bC|;L!iBdsΒ?;|TRvRd;wQ~vZxqͭ0*~H=8sLӼMH!=VB<@ڵ9< {yy{ swaF?/X@֟BJ!f͚ˑ[bE&NL Bqn(mv$$$0矍B`%Xll, //;Ұa#Z4o!C<KV믿֭;7q&t֝5kow=pX>VZS~6ngϞ4mڌƍ0p k.D-iب1;vb?*QT LZ/5k A>S'^^={ӵk˫4 (ui˖,Q7TcƍKDDA۷nu+A0je,Q"4mXWyY˫#**~R'Ŋם}.]ҥ JGGGʕ/i7+f!PaSp`xN<ɓػw*Cq9nܸ78tI'agCЯʑ#q?q`ٳg9{,{AoسgA0֬YCPP&Gs{ ӛ{?~{bǎǍXb̚5gÌ)R|- IDAT^={ `̙ݻض=裏tˡ_fʣG>,BC !,6p@~7hQVXcnjdܽsFVV wnD+ <ի:͛7ݫwiN4uE6֭[_HOBB gܸqXݸ>gĝrhSKۻatt4gΜf?lRllL4옅BsHbUVa5?ڒ?~BCØ:m摲V!%R|MuR52*0TPWWWilmm-er4رc;f .7(TU*\ȑ#ի`ʤZ>f,BC VB Q*T^޽z1|]FAG;z(E=Oun޼aqL<9j=Xd5΂&fn<QT_Ŋ 0а4֓5 Eq3¹b.+W_jˡ]h *ˊY!ěO VB >'Nsbccu'vv( ZϜx9ϟ?g߾}̘1z_<ĵXjT*L>4Lj7cLZK=O[~ ȑ#ٹs>$!!Jݻw꿕}fpvPVm䧯s.|١=k֬!44xqVi4naCp)j5'OdȐ!fK[KttDTr- h.+W_:t(%-ڲ}v@DDo'B+!Ŏ;cǍkԦM=gaVg}ިQc^Ɔ ~l@uqi&O&fhܤ1׮_o#'NL7όv˗.@ժU-sϱx"|b}w=4j_7[iL^zlݺ;u kذA^^}^^e ͍:Fٷo39my?B7X !,iԬU\RPaЁ!C)֭+%JJ,Aݘ4yAo~Z}Jp劳3 gĈeggĉѳn|X:^o߾L:Zk/_>pppӓO?m{Qf:tFC*U2|?Xz&L?ZlI…OZw}Ν;#ļye?7ٙKDFFz*VT՛!zqrrjyJJ!HT3B4B!BLB!BdB!"`%B!$+!B!$)X !B!D&IJ!B!2Ic%ȐgϞqUcbP(@wywywywywg)ㅫk6 b\ty!-ŋ(W,.. +!Dܽswww>E!o'Orʕ-ݡr" ͓a!-7olg4 aaYsttDTfwB!x)JJv:&N_,G VB!B7Ν8x 9sd=:t(K#+!B!l޼J>bjʖ-ڵ8%+!B!+^M%9r$aw3v lrBBB:?)X !x/_gwB׈ㆩa>իϪ9s2n8O3ao899`IwB;~C/\RocǎdΟ?OLL  rʴmۖ+fwxo KO8r.v'JVZj݊9rd:ڞkGٹ_oo϶ C#FщȈHHH >>8_J":*j󓂕"KM6xzzfw( { HbbnXXX6mbӦMF'Yr2/vj5>Ç?,^9sP\-MNNNlܴɨ`닓/5SǒpBUBH5z*Uj( h4VYBV3a.\ݡWQ(,Xhܽ{@&Upp0$&&RN DѢEX1{՗A$1=LڵkX"ׯ_gѢEVX"=0qD"##8q">`1xqOu籱 ݳf͢F4mڄCߨ]).\0x͛7B|a`" )mst`dzz|׹tׯ䯿矸,YxSfU0zڜ~ = -[$,4'sY_N˖-Smvj*N<+SLرc;vɓ'±cYҥKyEuիzz/wua%&3q2g%)X !L^ɕ;7/޽{i^Y)X F&ӏ;OOOJ%ݺu ::7n iS -[Ӧ{-HZ| 8k׮ѷo_]ƀ)_|!U\obcck4UV,]:uwaоO<6;PFW^|7)={e^:=b֭wTT?`4O~ޞ>Q~`ۻ2=\\Zz\N)+ǧ~ ƍݰ>yXToݖ5&M쌳3M6ǟطo`UPAY%e:Hok :?Gt4cAA?~\:q' (('s)?y+!Dquuo_)*'O4,\zۧwXXڅ@9qq捛lW;MlLWuM?&RVR*U@HH'Od\r)0atRT 8*UD׮]ud10Gn]Xj%Z`UrAΝMNG~c޽ )#"")~9.ۣhѢTX;wP(Tɮ)!!ԮSh\ݺI/3kdݼ̸^)׮_'AQ鄍BBa͋$/j8x3.]L2Y]{ZvIPP4ӦMcʕ&ŧRakkJUjõ4ftjN1911ٓMPfg<6Ą4RdIJ,>&Mr0}#.^ 'N4ؗd1fHWÊrٳg)Y$kmN'N0-#唲j{cN}~5'jș66I+'H깩,"+!Detڅ~dM60uTרNΜ9O>zų'W\4ld,$GgdɺyqP{{{l@= 8i=VB,'Ukp>mRIݻ76Kbо{fܿxT*!n~z:v*K-{E6^:tk&88JZŋ :Hj:k׮1hѼ9M657+WZ)?](X͚7K5jΝ;/ @:uw;Y=juC7o?ի͛:Xr\v͕ Ǐdș3''NĉMi4i7~<;w 66X0~4͓~ڦ)8Xn^f\wmƊ7+!K1x:l I5ؽg ]NѪu+.^ȟǑ#d"k$&$?4666|ߧO0@wߟ-/\ mK( v°aHHHcJD' KdHm fƌ\Jvipoܫԩԩ +WcN@ҽ}[n;Yݺu kո,Y7/3EZŒf&L@ɤJR-ZN^);舫 jfYa䈑,^ R@Q**U_eټY:U RԃY4hЀ˗ӰA4I~pzd'=HŅv>O3ĉiYk\]]qrrۻ.+W Wr v2R`ԬYFĦM(WAK#Aʕ˨gvo/^*ㅃJ2^ 4?CWϝ;7+Wn:899+W.ڴmĉ$6sˎuZN DiwCÖ|ЫnjT BW߸񜛿vn29>88"!!0F4';~l\/jZL=H P<=`kkcpqIœ{T*QQѨ**VDBB|bqs/"5VB!l$5Bיc%BN~5kQdlF!2O VB!vvvTTqew(BiRB!KgRrou X !B!D&I" *!!-!"ߓ!!-5W^")X !2fzB!RO =VB,sA!"KIJ6l!!Bd))X !X !2#wȟBk"eƪ'~>O *1ɗYGJ%^CMNsY{*U v3gΠqȟ/xYFڵkQ7T!={̙3f/..ɓ'QJJ>F'THB,s jy%>?W0sgtK~7CBI*UL?x j OʳѰ;wp6ncnY٣;ob\te˖놟?͚v5ƎÕ+W5kYq|f`r/h @Vиq4|ձpU8;;$H"eg1 WZ{T(KxKݴh1Ѡc?ȑt,ca aZ>->peڵkMm޼9AAGcoN-,B VBWRg8y&Kv߶uMj5(Y8EiڤO_˜fNJT*f͚Iڵ(GwԮ͜9QӿHr-ԑbE=(Y8':::֭Ӗ-)Y8nnnj;thtt4ҥ(T@UǞݻh̸`R8@͚/jsC蓮]ҥ JGGGʕ/iOw~ׯFTRۛ$_V7}PPsΥdɒQdIΝmj1{,Xbxk-_J&LӾ×h4^bk׮ERѾ×N !^Ivv  /$&̭73xxxPz M&5VB,ρ^%ccmѲ%{%4gϝuP̝3G&e? B .4;ojk.\@`rr6!n?ȕ+f;gl,Ύ \x(j|}Sh1V`gTZ˗/l u6m$4|q֭*3BQz5ψ#4yrwiߵ>"}%8& g(AjB{ Bg)J41P = -r##G/3<37γpU&M@RRR RV1 MFƍWnH>I&ed2Æ'!>Çq1.\ 5ʞTa%J$<]qwQ&((ia/Ҽy J%UVeQL?iyg$BBB?/<<<<3P(ݻmPӴkW@Jz{=իI 3 40?yU#FM1MaX b;Gy1ywW^n6We=tӏޝ5Sb֩ U*z۷oӮ}{TqZ+?1:YtezСYzɞ;w.=kެ)A:>NGDp j֬EM߻w( :v,Zwl\j֬,_b$|1OL2,[Ba@ (> C2er\00phZZjE2eR:uuiڤ1!!!|7w^y{{Mll\lnt:ooo::vĦ[V\ @ݺu{foZM.-?^#g[#Dc䈑?I+@P")E\UVsj q5&ֲl@ Q]2Hܛ}{3`׭[jZA"r8|81íޡ*;v߯2=w 7^.k-s+ڻwYqg).Z/yիOQfl_Q(Yŗ^ 777S~ea%{nZH͔{G&iK͔Za +...}ϟ?ϴ0tPb@2dH0uTnBff&l޴ӦY?g3O#22FÉ'[6/F# )) VJʕ+_9%'OD h۶Ec ]]ϰ~ܹTt:鄅Юx7d-"44JEhh(-G5-EVs%xu)S o}ԶY0?KxyyH|B]+7+@ (q& 1GvzҫW/O^*z DPPY~j d'cDZw^`Q;uĘ1coDBBoަ~g&;W8VZ{Np\'JدֱHKK(JڵoxY7xM Hn={Nz9 ;6,ofimʶ[Ҝyi RVPu[qDaX I}T֯$33SR9wwwƌX1a8?@&~J% 믿Nmu\Rh;lT\\\ aŊ億p%:LF:ucqF+_<۶mO?0p fϞO;ڵr1P(бcG? >`o m۶zvdu ڵk(JjгGOO@ʕmoB*U6|8S|O,Y©'Sǎ|4k~9?R Iv+ 4/pa@P*l,[=[,RFuZjm={v[yT?]r>5q={v;L@ %t::{xBP:;SA}2sTgIYx֪^Tus'.]{tt+@ VRV`0(hhP)aU^].]@Ԋ_ٶm -)_a:K;VyTP޻RT;6o̵dZmCi=ւ1$ƛ@ !g yǪBt?cFص7]dLE%⺹YZҡ:GcF̙qA^NJʴmێq[zizI͚8ɉ' 8pIxzzg4i;vW^Rx"6p-U>b8'OATZTwbU>}tʔ)C-xw۷_Hjam[RdmÃf͚3q|ye-Z^},?44aCjGI*P +@ (Xu7xO:BfWYޮ%b[6o`zz 3_ZBB l޼e˗˃Yk,֭[߷пb/2h qcǰ}v~|||y>):V^׾0̋T2228r$#G"XO~ɸq|z|X}(bX B(LiSi44Тq'55~ JPIMaq<):̙FPPjUf, $Sb%[Ξ=kQfW0 l hJ DV3b+ 63V9[;Acό3GNJ!TT #"YٳQ=} ٙI&uF8pZBTҺukϟ_z'ERƛzVYC)S δhтի}|,XH.],F{HMM%%%^on $ѵbt򲲲pu5'E` --7ͣ޼y|.˶PP .#~~CMܵ VYvila+6hƍ9.~ObU~ĈlwaL{`Td2rt+`@ӡiV <N(byb5f۬\g^z(qwᦔ֞lENY\OF1Rte kܸݻ{0o\|}}׵4iTrEEJQƦ+V1,FCs7;^ALOQǬvܹz?gU_BBB[ԩ+~r1fݻH 0!!;aK.CcFFFٸҳMF'EW_}ɚ5kӧ/sC5O>a͚58+̞m{W˖ߟemݺ5?/[F=M+k+4kޜI&@׷6m۵c֭d2ڵoTlw,ֵZ-|(WP|OY?s mn+ky)E @9}8oaaa>|[wBɣr9B'zĖ K2޼?NxxxЩSg~[Mb2""jiժeʔWvuL! 2t|2DGGKF6YO,]B ]6K\J ٰR0>}CeĞߍ#F2Qߏ#y]ɐ!#?98!wO:FM˖ude=^1'OO/5{ǐdgJ.2<ݤV:( :urY /hg|Gnz4777O8qM75-6(ɊeAG=++Tӹs#HJZ|2ÔqpO*RHo 6ԩS;F91VMi/[L&cylْhcfݻlAbkIQXL#?)>}  w"^|%>cߏ#JZ jEѠVbJ٦VjԪKFcCd󎕓rb$m͸ 2Ӧu233dML6-G/GfaIFF)BTr:t.j;@&&*ӦN-R#22FÉ'[@cAQr3zeHJJBբRr ׭c@~baP?vIZZ*:txh׾IHknf:~{1zk `ER eEy>kI4IsNիWD?kW'33ޱcгW/e ///OHeiiDzRRR٫7Y~!LJ*V/611ԨQZۤמ8iFOEۑWۃw* !C8rIJ{N FTZ (1diQb֭fk hINJV^0߿?;w̧ZLy&=w3  9 CV?Qx:f:>#VZU`-\l۶ JFpvvjL,...6x̴k2p@l_9¢;o {_j,k:*W̞Z]ۖZߘ$&&S ‰ܾs7۷z=Sb%Xm۵CggժPףRQT&@PzQQz=űgƪ[*aWHwwwƌH[ŅVXNHHWdԮS???Ǝgۼe WСCMOjjLo`0p(<۷oQJF͵dGV3`Λo=ϽAO8x ... 4ٳID}o]+Ǐ#-- B;vdc ,~n:s5J%||٣''Lr ڶmȑU  %%*U0lpL$SX}ѳ'[leɒ%;~;w(S,mZaɴi۶H}?6mfUݻTR^éSRݲ9xEIj$$$ҳsh5jaX=D:|G=d2NN5jTR0f@2e2'2 /P<4c5wyF3VOW† JƌU^ČU&00l_.Bٲeâ;m6hxRG @W@Vz1cU*0Fdgg/^tOE^i^_qPqF@ uJaeYlߑLnnԬYUrܹCt|k}';wjSj54l:?L!!lw;(.{VX @ xؾUIuDX̬ܻ[/YF$yjBuX  6䟣GI~ ?FBy .]DvϨ[=-*A+*@ YiwD ZM9_VCաhPTT*\\\pV:pB+Iǎl6*}G[u]Ll\, {xЬiS*VB =gΜ͛\x&MXCJ^z͛7RU H_1c%abU 5 z:P zC}tʔ)C-xw۷_ĉ߆ 8p$<==iL4;Z^g4k֜&+hbf gQ]Ō㉳ݻwGSB`\sfZ-/_JOd<=s6ݺvf*o^=i9\fśv%Jby@q96n$ 0n@ ()t^9v^={IHH !!͛7lr^~~ߢ0nonڏcy?_]kJ_z54L߭[ #,,oo]`W~}k~A):O[ȑ`?'ƍVqww'33Sr%]8c8M=$m.V掻&~O:L;wQ*ԨY$SVM ddet߻G\\<[CjySԴ4K#6{7G^S7;:Ӧhh䭡Eu-deeګ#11&MHl\$o4tt@˖-n<"%) Io(:_}ڿ۷E``Im 5];7q̿=ŋ~(6m۲d鏜:}k):Lǎ| EY :E?XA8zq7nsNyItČࡰc鮮zgWF;qi:8I-_|yRRR8z)vC ^af"#[ $CFYeݕbu\zxxxzA۶m\/._3f `Joݻnjضmnnk|.AA'*_V bPL|u3/غu \OұJj˗G\ @:uر tg}ʁprr^믿*$o,V9@.93H{'פiS,\Hppiii/88'OGN=yd̞MpP =z=s,\]sZ*3g}ɚ5kLcN | 7kիWmRTX Ξ=kQfW dcFf@4j5#FB@@]uDJ;V z=xǥP(prrHrW<6jؐ+U">1;nR帻Q|9UL})6h7nDј鲧8p^,^2mt3ʈӦOg;}vae+NozŒ%Zb0?nB1Rˎ򹽎;]vIj@PQT #"(Ξb}[5n޼"99ٔߟnH&'EFTEJEll,?~~CZɓ'ܽw>̙=۔0t0֭9sf{y駹~:K.)R۔ʜgi mA:Y,MΝ^:L>LƆ ԨQNl{`+A>} /_孿b,gA=wqQҢE mU>UXA+]⬐fYitz< ^0…t٪LN9yse!GԖׯϱcTW_}UɰOHH05kb_өS'8w|1=ʢ~/06Ӯ]|/o %KA,Rnbr""SO1o|ݻ>mXޛhQK/+ViӦ9sMD5Zj|'L4ɡ]v 3Y1໹sֲbrSz*U1#ޟ<ٮv4kܮpq#Y3gX]S&1lp_ÇTp>:f׹£pt;V@(yM.iswQPγ`ݻ㻭F># Rq<͛7IKKaHH0K.ɉ?<_- J+Pb6hƍx#F`ᅴc Y+[ts,-RJ]e)=IV-///nݺ۷XѲ۷sd{a+,Tmԟ7ҹs9:u|4?n>DSէo6HfїꍋY4Cf:v'+7۹w'##Q(Ìό N:쯾_A.y͍ qww7ggg|UλT}esQ&|'Ygٳm @9ѻ&dR:t?ݝf͛3iҤF֦mvlݺLF\_+9DS(\t <] >\ܸ| wT>@9O%n.r<ݤm.rylX5líʄ @\Y)()gT;yqX@2|hZZhaA<<<ԩ3˙0@:>ooobD˻o d|}kDڵYRI֯[DŽ,XCI=:z}5{" 9K ,0E&'bܰaCN:iH&vԭ˹gٷw//Yޞ=[jDDDDNoc {n 7HjCkٲ%ݻƍ{ݻl݌,$eϐd̝7_ærQ)_zO>QKЌ\.wOǕW幛B|OY*>\̾{GV[Dj;2I[j'krE4P233?<  b9`Eoc0h۶m>#gǎ[C\v RI-z \CXj5?=PJ Δ)ٓ-[d?F;)[60ydڴm+mMqOA~l}vR3ʋXGH (jPIO %)S&~=|)S>>IA3VLfӌoz,3c[ ,Q%%rIt0PhuDc%1c%%u}'G h) 'aT @ x+W>7ħ%nݺE\\ r'' QSV%Rqn (3V:FM˖`@Q;B@ x)Sf͞!1d2 a5Ʈi$cRo/V.xeݝF1fXRd={vppss}3f ݺuYǃÃf͚3qDa 1 yx9s <+WT\m1nxyezI͚E5-m X>-|2;v;`0X *ŋ1k)Ù>qy~umwao{d –뱻;7ngXݝ"4bmҗpz{wQBŜ4bJfX"sCzԙ6FC#o -[ߤvԴ\xW_{ >Lf͚`o#Uٸ1ݻۥx,_СCXlI8-[yD9JR5 ;Pt:*_QԥK|y׮]3뵤AL>Xپ};^^^L``^^^l߶bwAo֐r=4hG!.6֔v v?owJ;z]C +JZPlb[I4Z *>wuf_ątuJr}+T`֬/|R|Z͒%ޭ5WFjt֍\FcniZVXszRf jTƋ/?QR ,Y6'''W_lٲ X_-gϞ5K9*VR ܻwI&RZ5y׈/RRƓ%xWUuj2ydddX ^Nm_VM|9kfrƱ?~TtسwGnݺ(J\]]iҴ) . --L^Vs$".]X$jժŤ߷Z53} 6lX`r<={B=yº-߅aK- k㼌 MihjF|m( 9~Q 6vqR]l)|,B bbb hNN^?z=,jvqq1WT #"YٳQ=} F^Ç8|էaaaګT*~ai u_3{Y0) /Ǎ5sٱcN"Aʕ+6 J'#7o.l熅eq 6Ko^v܅YcUPT93~~CO8NVV 5RJfykJxx8/0QA:lɓ,w>̙=۔/]P[-UV ]ܹ3իW' g ذ5jЩS'4blce(%4Z !iӚѸq#g}JH>P:|}})fKi_|6o[&txn /W%Z<\%w f͚ @=VXNDaz)VZEl\S4iH;yp"%)vfZ$''tUP1dǥKINN4v͹sn'$$5kn?WƐ|-}mv\pUTTlLR}xWJN9y8wa_0m47n\`]tʵk1K7m~[CJڊd2 NB|<رc\paÇ[32W5{&IFj7v,O6Kh4\xK/a\Ø+JjV1o7 ڵkܥ 2 `5]xSwJgi? jrV}-Zo3K q?/)}! ƍKHp7 =mӦ [ &JF%6t(QQ2nxVX/Ng$쳭̿Qv 'O| 2o|Zj>>|w⋙3mndd׮jݺi|?[f -[4hтիмYSo_|aVnvTRRR}Nt§yW'M*T%RZn7ۃ~[2[1*ǖ1b/\GwĈEnGiW C7ᬐӵr:~:Ih=~קhxJ*޻tҕʕ+HLLcR >{s:w6.(afah)j`Y%2ܔ lENY{pwwgGQre+?1BSt+9[zw'LӓiƦ2_Κɑ#Y /"m:zm 4kޜI&) /:t08&(]Xw<1k+/Ν˩sV%$$KP N:쯾_A.ܜٛ{q22BAǎ?fM ;;wwwSzvv)Vl5[,]-[ڱuVd2ڷa(V 6(f ;.(y3I2^hrEZOAFf 8̀GpQQQT^?BP)ɉujSNmn֏Cv-OGVӤqc&OBG pVe?6oʕ+zZxe[.ѹ?4F?X-3[Z7oL`@ϟ#[»7}a„ |-СC899ѯ?>sm۷mt{m̙3|^ds^ IDATܹwrEu>}Y3gs.\>lSN5ze Zwff&/f=\ -Z47ߤge5J+X2HX(ED7rVi7PTڹwߝo;^D*z,RRRl.bŗ^ˋ7|ٽ+}nZqpwĖqeHy/MxxxЩSg~[Mb20""jiժe_roAVӵKg:>8C DGGkR[΂m )"k \GɔGM? Xb߱28fKHFll"R)NS80gdd;doBBn3g=O|67 4,wR˗YlYhժUPf-C:K``/^*ƶXj#mn=QQgc}9/ؔJjRDF$*,!a_q`Mrb$mr0~ׯɓ'Y7S!C:m*[l!33L6oirdrd O6ujǏR3f s|N Xn]쑻帱c $--JF5߷Ϯc` ) /3O#22FÉ'>}:}sh {ǓkZnټ5WF $Z-*+W~:|㰡~ܹTt:鄅ЮE{A'vf0c45R2ŋJ"44ŋ#YBJ!Rd ///OHӳX* a@g_? իn,;2]իqTV@M7Frܹ"Ӧuk ˽4_r_x .0^x,WP5Y{gdС>}5kfwuvBZcɢqU ;ߟA~m!8nUVѵ[7ڼe 5th777NGe HG$''ӽ{w5kFygKInL FVϓXjԨNVR% #9P <\=Eb28ߐ)SG\2* !C8r$’*:uD`P0JFÈLOm${de?_|L&cΜ3vն'&&$&vnݚǏ0fXŶXB1ȫo~ZSؘw<ݼyݻ[ׯ)Dz޺?#VZU`+_m۶ӠARiܨ\ͷDAǪ0E{x5vؑOfPZ_lh鼜>9 ù}w\ z zCn4*GPBڶkN-VTVdcjqrrBc,@L Tڜ/TB[ܹ} l XZmFLlI7,יszv\PGQgO CbmZ63{߆XMno۶m0]3/WȍV$a HY_2uT cҥԬYKmR [g,n:[eʆ),C DҖʔ  .RvW&&4m&m  ==wor=\bbC׹2p@ gzj Nغe cnjfoQT bEq-"DBJ޽; <* dbL&~|:dHz?2#F&OĄ _ȈH-[7w.۶E븹ҭ[7l̈Yx1LuEZiYh_=mVUVL0dH _qAT*}}:u2ÏtVljC&EfGٶm;׬pHoFTEmtKCa4iԨ]F-Q%K1{sJ*E=9 ߂>x\$Q'`ԛON^GeZժ=zCBxW2c VZeL~yޗ2z>9}ّ5rJysnJ崺Ri?iCpp0cرX&L볭'[$y h+_v(QνAYܭ\*CJbذ 6<ۺ }6>!C>cȐϲPBL孷ѣ̛7N]aȊ7O?§$$$XVbzP"ػw/pqq!99{(RĴvrxlp} UԺ*Upy6mlZɄor刌Hx6rn[;|խRhӦ5mڴfpҥ kN+G*@ <[8ukLuJRɍיA[ͯ;w~˟AC4Z-OfСJ*&dbb2t8Ҿ p19$秃qFnݾNCe'{gyo͇N[Μ=V5"[Y^V;ϩgݟ ÇILL$!!} K= //0GAɓ܍gyzyU@,}ɿ+V85jh\(`8sRtB\.VB` |g\p)d*kLJ={0tSVAֵ}{Ƅ'׶.\o~khӦMܶqFڹ~}Z.\Hwr1"k2~|KY_[WϞ֭[s358JVGOVά+m=Gt:DȡCڵk7fX@ly֝#v}%Jh1#Z]QB!Kw%Xwn۸t)ǏP(xlY)z[j]LDT*hӦ-ƍ9L-y E-[B&QV-"קw/stmۆh G7~xF#ǎ&K>_Ѧu9s4?@*R\96h`:![`AV~0J%k1cGyݙ̺ ث{ժw;NB|<%Ktȧ{yb%U~@ wg_85z|ƂsPň\Jp@ YUwuGI6ܺRb=N =VIUAG@,wщ{a%^@ g+ NƔ[d2)QQ( gT' kdΝs+VyGbE)^̾ϟ5m G>Ks'H$l3Cw:xT*Ev)R :mBIF˙3g)]R󌫜X ZuJ.aX;*}ܝ͛˩'t4oޜ>FR<<#<'>j9$;ퟣmˌ[:BkagN+;g\{}Y""HgJ$spM1dXi:r>'vlNڵ)錶 gիW9,ݩUn9Y'eh ೸oև_*Yn֭?@44GM~[jikִ]uMs\ׯsu6nEl 4[Z^0s .]ʕ,ΝŷcG-yW^e\|yn{HۜE^KHH ,,P2ȸnݺ \]]y~B&ΩӧU& EuZ+jN RPx  gϞ%h3WEXT.N;7{%(ٻ$ xM&MLŊy!!BXbE*[`ƍt|k̆%Zjt~m:w~3W~}zMV(_<k/_o԰2۷w/[nÃWЬys>̀ٺe uL[iӶ-0~8wzEf96{n䕾L8@̞mӰ%00h<۷o睮][D*JۻހĖD\UFT{N1R)(U .Drr3ԮTK)IHNp|%Hh5%)M\v _,PB-Zt1VˢE 3O]Rt; V9/*:cFe\j>x8}'\.S|ښօ#zy1L4͛7c/`=Vvڌ-[$-)))X^`5|67x3C;z޽{c&NĀ3ctn۷pqqۛ'/9+[;&Əϑ+e^ח_|A,rٍF={1aj 5M<!U{2լUY?eo@Am0|M1qQ,X@bT ʫ5n: +{HۜA^+V8}\pL}`:Ǝ@@@:^[ @ZFW0VoD"AT*$R)Z)[v@D"EJrV *3 =GsRT\e׏… g*hx{wBCt/\8υ ٻg}̊φ|ʶmHJJb޼.S?ө/nݲ\Ϗ{Paر#CݻY>~8z`ԭ[N{}z~+#GsLg`8Fa9 П͛6Ydt:Վ܎+GƄh Zo/gϞl۾ȋNpyfM[7N$רAsOͯ.{ww)ڵko%ۮ]{Mj),./O8>őA{^6iLll,ue4i4W!-ZPlY3f,k(W͛go>O$  Tb!mߵZ-Z)znݞ"$RLyEN"tyr W }Spڕq|wTZF '~} :ŋ =BBXt)1DIJx ,HHH/ri8v8o'K/s-*snn޺;xRxߍgI9<n[;u}y6gΞkwt,ҥKؿ?̞=Wrmm[oe۶m>IYt;S\q:Qܼuv-S&rdL#(h={z"u{QƄ3g e6F^t/j@pp0`wWТy3`>cFn߾ Wks9@z|DEE뉌dyfGfhZ?Nwsy̽{qLz5kִ)#Hѳ'cc9r0Ǐ'<<={3Ë8J K ઒ᦖ:\U2 gmXӇ 7oVb |:x0۵#.i fΜE׮憛>(W}OTPZ͗_~ +W,;vl`̙x{{T*iР3g̹Y?!Ԋ+S.J2e0s,;j `Y)RRIÆ m ֯d@~r֮om)3PۻE rԫW~q܎+GƄ3lr:t@P(ԭ[e˖u e6F^dz=;&3_7ܽ{;wX L_RR`rQO`رd2vE )U5EQ86 ɭ%4eRZjhZ~\[Z5֭[#3ի2yJ igm-c>9WݔHP;\$tAE]KdT4!0맟4qEZiG721ojMZo#6RLL MZ4m,:p,X ?ʗ+KbE\"}jlt`{u*= +̰`֬(Twbƌtԉ&qvMHj3ʑ1qEvgX=S`Z[cE',,Q'5kPϩ'dvK M]6+W`߯S_ hWWW߿?C~{Gږ -rʖI_.7sҸI;:d \aB4jܘ͛7iF7iW/=V@lؙ RP]Z%Aw0d2UFjhժ 4`޽>(~L̢9k0HJJΝ;ھ:gϝ9r͛6ňٽǹ࿉ј}.9d[mO!%%ooo͍[5Ԫ*AAA8}FJ.MDDѼӉhKyZ5kΆ.Y@ʕҏ^l>S}9qkݫ7#SK+@/)Dv,UX٢=K^=wg7U\Œg~KNxK♺<4LfQ̾`pZM:uŘ:w88:Ș^:\AUed{jWYž; 44_ߴoj]V׶NVe gmsmq+}v.jjȹJ 99yhMHP(E.z1XrW^EѠj9s GTX"ۭ)Jިѣؼi$Ծ[ IDAT&&qƌ6&^ժUINN&**ѣF9]Ǝɓ't8qѩS(5Ç2N̾*T*11|EF=z0fhw@d2f)W,Y{Bbu_H] Wܽ.(ReWЩS'*{n>ylp_lǍС۷VwlcݙWߧZYx7-ѿ?ll%+[nߏ>D 3Ӿ5:^={XfӓʤIMe^t֝E, 1?~˖.ͲiӦ2w{}̙<..֨B 2*좻(\[lZj,PcǎmU- +W</mݟ%Kkʔ)cpsml~+N͍72bdr;JT=FC;+e*%%HyO/ .k$_7 < && $gAU]Yb\]]8p P"S{@HH׮)V5hAfTU*냂XxAAA\@"PR%w7d6j؀}k֠jy뭷>c&RsBԇ T*:2u4~FCW~y6{T*[|TXJNP?%Kd2!C2!C0bdILib&-[Çy1eʼB׮]jqG?HojJ>~8d2^^^4k֌}#R'M2;СCF5jqH϶^!!ܾ}RmZ!C(Y],]?ϝ;w(U=zd/2]˼y8}n4o֌/ڵYHl熍,_#?yBRhu5RJ9]+^F~`4b0H +L39N8K]ڵk@ 95k "؟>Kb@JU0'/Tg"",0 s0"W} ׆` I<Ŋ3E|qt?@ 7 F+ٳqws bJ 7'N| VNF+Rth4Z 3F@ P7 *GǓ[*zZAO2P(w3"ĵX@\*1>zD>9BMNB5xpjtظX:ZZjߏN:; ꎌS=#0@ |Cfz:9aRڵ`yX@# |D.lm,>ـ`@&ݻqܹժUuظv 3s,Yt]tɋX!>+V@ ^~{ hJlq(J)(l@(EB>$ۗ6PreK}+U?""_+WeV"P"oݙ}ZΞ=?y /_v͂XGN'  16sB~bD?iu:N_W7]d :.y&[ZjqNJqE֝T* ##G~/GqQ>Ç0YF#$'k裾̜9Kh44 ᗘ>}:Ceȑ#?xaj,)/ȩQ5h}4ྴx{קx?*hXŋ$os/V׼se&8ϖpKU)S4͚6a_6Ϟ=c]w eJjՓ#Gg3}37eʔ5oof̘VpΝ;x{7VL%Z2vΝ;пL?З~xy/vRv_qϑ} +/g߿/AU[ )*.xVu2$};wҢ\Uv1'g?мE *0 -[6Sl90ƍ+W6m*'O`…5{0qdvR$<Bf1 |4zױo^nܸ݊y@<<<غe \;g|'=w;˙0`sΓ~g۷7v,=Yl}r)ŊYɚ,u֍jUZ_no|C9p t)tm4Vn:CY6ի 4j(#mo\jiNG|OCDx$βna`Zt;v T/@&Y )0ju= Λ7jEP+U+~e>:gvHHH`ԗ_Z\\"6&?xT#F '!!)S;ptlvTX2eJӰA2Ǐ[dg=  TrJ*`[J^n۶ݛW^1YZ5-^ fV0|ZiJu6 1T:Y XޓɓPtid2eʔaoʝ>| >3SXq.\`SW>F?NW>9+9n$$'幤&vUMzPҨq#x0j ȓ{ CnGղw^ƎСSV-=ut:F#>-}#?~;v˄ X~5k볒u2J|vm؉$+\U:8c0ܿ2ЧdɒTRWr9ԩӧIJJVڔ+W:up)\BժUx>z/^0x{wBCXy.\8={\!A3u'I4AZ??{;|INǎGƆh }_gnmߑ!ؑ4cOW-^#*T%KKtL,,`x ϟ?ϟ6r,ݢ~?[nUvsmŋ@,pENǎGZ??S'q-2[g>5nLxxM+{i~^=S$χ~NTT$zH}> 7oZO#3ԕud(U۷568}:cǎcƍԮU%Sv-lرq,;347rmt:(ݻ7FO$&&}d} cVƕoǎLvlAbb"l۶o5-v̲9iHBaw\U2RJFaw; E ae{jxW̙pssw1} g Jemܱc;3f;5pK 9sf39;f~~kX|9:t@( ֭˲eغuK1c"ؽ{6T4n{2))Jt"AA?r'f(UYuvFr}+w׮*Gmk``СTRχ s0ODTVF8|L{?|ygs]W[4^r%}^Q P0W 5‘kHp)IRsZYB x~gZnCNW._dZƏe]!rPv[t5n܈];wѯo_K ĉ"DÆ y2Vi>}ҮTr0G 5W jcm2ӵѼysR)aah4=L&if4i\zBCCd4kRǵԳڿ189rSD et͈iӦVMӴA dғӱcƑqEvgZ3;N;>>>a3gɓH$zI^ٲy3xN<]gAAl͟o̮ZMBBɸZ򓓓-f/_No0i+W޴૯X|9 SmI3_pIݗ 3Օu0lذ,AUPFyf$ 4˫Bt r&\^jP`a>j9/5ݠ)\\Wp/[2J4S}N'۴Iڵo]6[5,5+ڴn?gΜHRʕ+G xK0Bw;NB|<%Ktȧ]Ǎh4r1?~liR`ٲe^FtTO//|};3/f8^+j#aǢJn #ݳ7 .L͚8w,k֬!!!zQ@ݩS'Od<|S0u567}y=eLYlظ*o%T\ْz-߅iYz5F}hdO?=2dVGҥ ::ʥ.:5]ҥ-y̛?EM+V_Szu5wfZZ'an%'{fdj WJ ERhQƕ?Zȝ5^zn;@\\):]??'O[޸qc7niF ҠAL/n#mB`@ ? :#mG~Wݔ(UՎVz#ȌpY5ozOA-8y$?͚*oSre.^ݻVe+WPիW 5EL%ȑ,?;իsi FNVe dm-6-\ĉ_#H>c~ͺ3~DDD{.+j]ԫWϒ]FFͬYG喷t᫯[/x87ܺ Gh5=+!8|`?pAb:&M xdM.s7QJ#Cn4[ 3MUfLuѣؼie 3zI{7n5vhNsrg;3;--^A9v=|qqQ=%qqwnq)))\~۵'> pC*Ξݻ)WlJTT4ʕw>*+B$22jF{nڬyl~*BJ曖0/r2Kv܎GXtimN뺜U_DlEfU(Xb5P(DFER>-/_HѢYчm۶ wؑU޿o{BgΟY)vwzY{dhݹ}?fN7n @ٷQ*HR$)Rja"mDVK||Z-}xQR敲qɤDEERtZ3BAd5d*ZU}ku 8@O777{{s1֭keTiUݺu9q ^k!Jb}P/"((kH$*VD4hp")R-[2aW٣P(hݻҥJPhLN]O #Gf _}5_|yT@Wʗ⯿RٽbOtԙ)+VRwwwԮOر};kצI^4^g)\N'*@  6hy]@J%UVXH$1"9PrDH%Ξ=KQ> vhѢ+V*vAX Aɓ 7ԩKBAӑUlaDڅbŋSV-ܾt8ŰJxxT)(\7@ReD Q% y1<*Rd Y֓J\\Jܼy'OJαH$\P)sP XUAٺuull 3gҥK\*[}qY|;v$11ђwUL˗7o]}vg9= ??|CWWW֭[{oWWW6LڵR`AKɃjXFz=)cvV /!ɑdy=VZQzjZ Cߍg\z5z ǍU+53gn%[UFߦsi<[yc~lب|!-[DDFF2fh9M2֭[`4kޜ#3`@niݺucߒHm$&&ӫW/5˾ώޣ61L8@̞mӰ%00h<۷o睮]w/Ǐgx{Ɣoa1R`!jשT][7o亢F#=(\<[l$_7kB*"g=Mre KjiS0^$Hps<^rfWG>|HU0=v *:EܖƎ͖-[pqqWL2Lfmܨ!l޲M͛k8Ϊ˶lO>&%%c0fXb2e2@QN&OGyS{ 3Z--Ϡ?v-J* 4$bcb #Թ3}=^m oϟ#)9Wʼ/# dIؼy??{oZ-+U$)))^M۷oSv-d2ս`zDaɟ;wӦNG,uaó|9NbOz]^Q}8GpVmxUTŅ7nfsFڅQG3v8-\ĉ_a&vy;vGN7niʕ,X=1cqqRH19 9^fn)JYXz:-7ζ@ ȿ(Pڵqq$@!3gU5`_yҦ۪߲ggC>e۶m$%%pᯔ,U>jy7YWve1+Έ#8knBΝ֭[-Fըѣ-F͛7yܻG^^}&m4 vNh syC@z+*-ߧS'_nݺe[ǽ FO&(hU~tt2={vm<<<Ȏ;r'&))5jdjT(&{t)ڵvl׮=ӦNgϑ:߱-/O8ygsHn lsv^'-Zlٲ3fX$ kQ\97J]~fǎ]7/z3l0v)+`r4 "$ RRR0xzV !1_ rͅ}Sbp(Cmws%-?h4Y|luBÎK޽ yM[Ν|:tHչ$Kغu+|<52 0矹wM6#eQdI=zDhj5ݺuwXAfckEPB,YXcbYd  $$$ŋeZ/s-*snn޺;x1cε~~|yOVZdna}4jܘp̞熍ܼuw?uԮS*V̯YszωDɰχɡF^޽8&~=5kڔH$ٓ뱱9rǏN=_ʽEh Fׅr˵ae0O0&"DLFbŊ$iЈAaw\U2RJFaw +{r @VSW[lv<ө\2nnn5kV27`\z(K~2e8}z6؞JJС3nxՄ(ZUTw>Ν;[Q ̙pssw1} L߱c;3fRI 9sfY?5,[:P@ ueٲlݺ%ufJ2w}h2S̟?\ĉʒpq66gϑ:ƌL&c]4jؐR%KиQC\Զ9qrel;Iժn:|^Xa{j5<~ C4IVC|c~>bXi4Z:FQ$Dz.EFuavJ9$аݔHP;\$tA>gEFzA&UVeZ׷lr@X\N۶svE(a%oaxQ[MV? ܠӽu Pk=UƼ>"jдiS͚e5^ϰzVv-t>[znQϩ'dO ZgC0o|KZ @rrU<+}ß6ТE \]]qss 9vّWmvuuq&w-*THƍټy36nq&xyUȑN9RSh4:4F$oP 0!OTvp+!x6s@[Q +Q8Νa~H$Dٲe8kNs%o&̸4ehϟkN`;9w>_?5Ӈ fI0_Pаa# {Kl=\}xzmDYQh42맟xdJ.MDDѼ꫖hKyvYlظ*oi[tʕřmY^yԧv? zz]2c<"%z>O,'PMZ%]XR[~dZiC*UPazm\;J۶# ɓ'J$Yy3tPF#F}iuqRtޕ6Xtb#Q)q+ؕ+WzOOOBCCC k8x($=hBb$F3f٬~ݻͯ{53}a Vˊ&76mf)_xm~Kj5jts}kX7%4CHyx ې/2C)IHd$k\|!}\#b2KG}`|N(T5y\U939欙hVPXֽii7}KԺӽkC6]AsFũ,cD@d8~8H"S>_>CZkýXk=d2nZ"ƽNc]蒹R0a"M6#e2Az oClL kW/p^}U֯[GAA䟯 _kٳDBB{QoO=*7_͠t%ޒ.瞾eϙ=zJ{ȑ*r0ys}vپ};`ǫ-&y5}F>3#Fϖ:s ?qSUy+'0Md2?iEԫWTj-:w_b jP.0T"_ȝ-Z^MJq-T*4 ?#~6P:VU8oƝh*p}-_]ˍ5kV3iժ̐A2wUkʺ\*0mTZ-&?ϰaʥ7.YR*O?0 -&Mp!W.a&MD+UVV\U:L̈KG\)44_} PeyQUZ- -p܊o•i+] +4}m h db\DD*iӦ`6ÏsrrrhUINϪUIKK+l$*!m $ѻo1c1L|2-g~(-O^//o/?&p1sՂAsXͨTjł܉jѣ;M6eJ ii$/9]Xv۷EQ#33 UnwBB婮+!B(gϞa3#x&H ڴ:ZgWF fc!VS!ߞX \8 CxHqѮ|xܶhQ,_f75tȐr̞z)^=kג}$&b233YbO=T>M:Шζ츷* |h8sf!C>c'M,_ĽV[P\&7$$8̱`:DsQ^_7_q&dfRhڬaa>mɽ믿YFGwwwy>co^ [ֺB!Vf3...U.&~9t(Vf4pZNFɮaky7֭-չj\ܪ] X!B tQ+%y啗^F#/^d ;7vB!J-Rmζmo׮?>H!Bc&33F섨 www4Z-9 YVKFF:NNҙ-BQuRո8w/>>>815vO߾ӷ-IQTl$11F VKJ!^iXbȖ͛ر#M:nB(55$}|pssB!D 8d^L PT$%%#B\GWիo}z]!B[CVjww7tz-^9"[!u쌋^B!u( |r[89~#ETT8RqIJ!f3д>%{@%߯wL*txuy1B!>HA(U]'tx7{QT8999OYJ!BR%ZhjjUntun+*Ei@22ps~K!Bj1z(Vld/Zv}fU+!B!nJqHf2(.6bZԌ4B!:4.Dנ>Zz/};bpD YfuuU+FK.}c !BqKQf'zĜȢE@fw+09>>,Z͛Bө]<׿4ֲbJHF 1p3wwwߵF a84e$B!n5lW۸1/x/E0yJf6)xcttv>PeY6n b\>>5k(..fȑǕ9~<@tt4 .B믳y4&_ů"55 EQ8q"QQuQ v+qssYeX]b1Nɗbvh y!B!n%dkȘys;su'j%˪JŋdYZлpg^^^{Az]\}-/">>OOO̙޽ݛٳ &&ŋ( [:Dޚ:={~'9y?Vf( +W *j=~~_) {ؿ?5kҵ+,XБcU6>6HMcyDA {prro{;vlӏlڸ4FԯO>}xZe jWΜAѦmW^6Xj۶ms}/3גּy`o |3&??~ \v?ǎjҶm[xb(z;B!}jq`3 _{O?45ה];wˮ2/^ӣVu|N[Zz<4, ĉDEEKvv6;\^.=zk׮|((XұcҼڷoܹsO~ _X:c򁨍Yf/n___{lp?q)ݷifΝ;W.(?-m=_ˉ壏?`w{ѥ?fm۶b4?_'))y餧;cWPʼ[}f){w$&&mV\B!SM^r'Np,EP@ ]8l(*;7wwq9իxm*Y1_~6o*##gkcvG}D@@}mڴСC CF%w:Vux j\k|}}ω\?|_ejиqc|s -Z 55ri7o֭[iذcǎ;?&99K WZov/ie^$݉GϞ=ms{Yzmb`-ӡCɁk"#߽^"wo Nee~!BaMˉ+MUfxn(Z?\66֭ZΝ裏ԸNW_GEv>!::_E||[lرcL2UVuoL&Sʱ:ϱROI&zGUyή]qhӦ Zv2>b\7m`괷 FCV-:-~*gU8pVZ1}tn@D8뇋 ...ߟq^i=R#ӹsF?XZAxzzji߾3gt !BfՙN}#,fwZC4| 0$'( N6A{scG۷ol/ߏ_+WpV+-[`8pҭFn9VeԺ5kؼl *9y:U.mFI嘗TQey#CLl 11|W4iҘӦ(SիWr9;^uc:Tn\!!!B!iUq‰, [Ir\B s4y]<*M,[RAԯ_JVV6 \KTx-a>ti3f(pO{رc3gΰ EQ^=gyΝ;( J: ./ԓO1)4z4/ {/Vl㉌dҥvÛ.xŕ pQhs5Ίٽ;ĤDwDς R(ZB!{J!Tz=p>8myyOO90X-*jd'cٿ?ӦWY 1h?a|tݺuQ_v䗝;˥PC#` K]¤IjTGciԨ!ǎ'1)nAAʥ lơC$6z=!!':thi,~?23}˜@@9w..##u  -=]v1` :B!jkS _F)0zY  [eѠK,eÆ l޼rZ-MڕGyuZ-_~%_57nHf&*͚ʈ#j4P}ҥs)?;hȠ1/7ydILKnnj5k{r!;cʔ)y睤2gri}Q}=&OȑNԫWӧIܛȖGUZoCC(RBqBR1233o.=z ^0?Wn4ÇS%0gNW#mAsd4 i,[3gt !B(Mrr8qh42rZ-ύzF=WAA Vm=zGvէ:7PZX]HÆ c֭dee3f̟kWԩe>ЃYfժx64<<8KbFIЈ+ݩC )y9|85k"Y&rU#66={~ރʧq !BkKס=gf(SѢ{+xqlݮӃys'gt:z͘^",r_~eBBz>j=)S8wjƍө] 8fȵ$&&r)7{t:Wfm%,TqWFJz>UVB!QhQ{n8d( ZnZ(**\ggg\ :=*LB!GڻmEPT8:W!BQ]ޣE9 ZPIB!BԜGߺV+jű +!B!X,Vr!B!,jE8x(B!BNY !B!DY,V(ҰB!BRB!BZX--V ^!B!e(iX !B!D(P!B!j}\T,-+!B!1NlB!BQS8;;cXPa!B!-d98N1{aR9 !B!ajYq9NiyWB!Bq"N*.$[ZT?[[IENDB`luckybackup-0.5.0/manual/data/manage_main_withoutSource.png0000666000175000017500000027004011377456015023511 0ustar luckybluckybPNG  IHDRN" pHYsMĶZ IDATxwx׀MvH $.A*R,(+*E^H.U:iB 5'~leglI!3fg=ܲ3̹sGqu-AP(<%XCpN+veɰdaE;pX;d8(K<res>|!nJdCM9*vNw6ACA)m?ѹ݁ʓu(LZB#ljەO]&ezR(,*VvX 9RSI9.r8!C,r 0Nኋ1ٹesǤɑL%%sن/Xpp(0:r<]N8hi\O^~).9R6vdʷP. uVQ(ws=(G~ LG > q:stubW@.W(p=r4 9RVLHJYVٺh蒣o8AZqB9,ӝ Q ;KG8Lp!(f4p?YbDub\4]!7$Oa˓`˩-Ӫ|:w$% q]0i1%/mMYp,cu2dw~[|q 2, ""$(4>ps5B5H(!a_LwZ)$2[JL֝naa2e%_"I2'zJaŭ<>rJCYLOe3>Ua;JN~Y:+]L$(D T>O;Q&:L;r #!99B);rleK%ʦ)HO=mK8sQ.sHO99vsa[Nщ*YHd.^8KRUAq@|S'Y8j9ANٙ?35%XaKkurhkƺM'M=]w\/c~z)#A3\K:[@nDIPh[[3\|%+9ߚ|#qq!yV.ԶDpVQ<^®@Vֳ*B`햸lR鶙8HaGL_v$XG8NbMwtJt:%F}c#.kǙrX ʮLs[2ʵ#\|'mR^'P94~E(%)ӝN+9)i}Y q<0%?TG`4JR-+R9J:5Y"'IA:QґNQuIsXI6C8UvdcΕúi7{|_S~ЫExDJR'*&NQ*(Aa"'OAD $SdW̨t:ם$2eɵQ-[ Gt9[RYX8sEFg)dv.O9!E&-H[8K[DQF)3-Rzewg4IB=ʖ){vtY~[SdQAN*<rsW)@Pd&L޽{>'N~zH$#*~z,UHQzu8y᨞ o޸A|Ȅ0n޲L?n'!L|w`sHeCs.n[>ʖ-cΝQ"s@/ٰч[ht ' wG} +_yRy6Zb7$Qdzq6CPL<T@#R:J H5lMr\+ =Wzpt~~Z*VФqdѦڪ.Im m $6kA,[k_uLM̔+o?V[dI2|p#qڻwΣUֆgAE%r tfl[l9U\X4ys7~e4tnɥvJԱ5j+xcq'ӦZW.hȪ^O.PQH$.8Sd3I (( KRϞ=*^y%MU)5xg^?jti/jj40""XfvtFelZ%Ry6 e236iAbb|XyÖoDrԩʜ9:/]w"t2Xfr\-e q2@I;lz3];?? *jr76P :1kղ{^ A2TJղĎ*ՇY BQ,fײm] *RNuKmn%/عSeHZ.rfZCC6}ҚUiMhZfYTi,Il*7t_znj_Ze 5V˚5:k,C ԬY=YZe6ہTJ:e=з{&"R˯ɱhњ١jj5lߦd -KDD9jg֯7ϡ~ghدE:$wiJXXyݖ|}P~9"¨Y={fz_甌 9*uQ1"L2Fe\Z>JdTyZewh5u-jjf&zAK ~_n x}?w2;Κ5k ĉdgg3dPbcKiѢ9s~O&ĉ6iZF M%V^%K(#" _v~[F aRVuٓ7˰i~.b|Ai:tb2^+uL_L߿:˖XӪU6+J%+y }GߞRU*%K.N:|8Cnw&;;?zPΑ;yұi*?V}ۨTªU򂂴l|s FfBKzn0>L^,ƍ~h=ڵ֥7.nqCaV8 %K-Һu6Jel Yݻgqs(cƤ2wn7nx9"O3|/f|{ ,I_6ĆE/ `R]W30>B  )Q|FCy,K+ʗ3dlnV ÆO~Vr}I ?h=^vr嬦.]ro6lryL-qܸ4JE0#)i駲X$MvK6i7Ylؐo1wݾ-V }O?Yse0uj +h>k׼PСDEr7 %'4{25fK)nݼV Om00S M>T&͛5_p'sدytw asy2~1=߸nԱY4VkSq~ E/Isy/_#GXl9Qܼy?.H{#GK.!60L2Cq!&MDPPK.ĉf{_ٸi#Q|3s&ȑYr%7ܹsa+a/kz)$Dw9{:fm:wl^ʦM~TMI{$ g $D=طχT OVO݅OK͉\t[QCw8xɼ_t܉UVroN.]QsXp!ͮ?w0bH<ȑ#GX|;vԹsNz rrs2y =zȻZYÖ?r۶& J 3ǿ"u;uuٔ3fh T:D98wKoۯw9˦M{ѻO6nj\6oMvY"%yxyw8Vf[!!۷ݡf^a֝=)rwͺo7fL ꫉;Ȭo?[2۶jB";ߡfMM*ۤY><˗'2mڔeR?دR巬#-li*]Z˼y_H"JkOdl[0^=rj";ߥz\~7I*R|iz6ok{;X؏?-38MKk~^ np6k=O]Rb}II&]qj;37_-,ށ*vK•$>f0/\hZO[Rbi5ڜhRY9ov˭Ƽm\|pd=p..31cJѠsq̚e޷m38Mji]^őt;',^Ϫ~oPlL3'OOLiu͛7RW78Mji&Hlц%\'ٓ6ׯ9/ZT$.]ɇE-3g迉\Mn19բ>M~V_y8:>}sf# /`$L|:@PqqO_* 3Qڽ"gGӲe T&7mѣڥ+Эk7FژU~u SN DRRNM 8e"O`'g2 秥u,~jS ,^Ǩ[3f̰q>CJ%͚E':`& z_XﳿG>TR e[)tm<%g4g,Yl}o|,#l|jr$}E\Y'Ш Ld,ڈh>< >kQƙ4) st _V[wdf*37K1i42uJ2=$0P֭Y!ƴ'Рa*h0ɓu|`ۙ)4oFJrQtSS# ~~ڴfY?nZ)ShP LWn)9&PN~~Z^{8Yur,<):sP(jvB>߰&}~GH#$DK|}{pg5hKHѴk'v93fMQ)DEF'lIDꑶټWw+V<'_ (Ѯ3iLRQ̘l.4:u6CeǾ̾G>T?jxmxN;+̣~Sud3dH*[X_A~ ҕM45;g5i af-]xv[{}4<Ǭwl \v-τ:ؙ3ceʲ'q7ݺe2wJK/ Jj-~b8{aϞ=̞*UbԬULȑ(9siذuaL`Hkٴ:_B˫w9}Z^;z w~!|{nCyӋ27d?3Mf655-sVz.Z-gQC_$o0knMvf65qqh5ZC{UZǕ?rśX]O6g[KߞƁ~j-&9mvLFb`hӧ;u.#)]4MѪֱx4)w|͚gHfs e,hLV[6I߸bpmn:MB|5+}z\4R}ێM O:O2dDF՗)%z6iHmWi]oZXܟ_<ǝ}^nPP3dcFJq~ E "Nr=M8r7HF48YY_,2R7c~N~Jɛc/j-[umCVْ$Oi8s洙6V>۷of2p@ùr BF!33[$^(V"DƎ fذm < OJ42 ~F?t7fy7֝K}|$WWgw fFGd)ShX44e[SV6{yǸ³n!eLPqX;[_ES;(,~2m/}M Gט&dJgWcЕs 4~f~'^sѾ}22U‹e`$kn(Gw^c{ & ^:k'nFwL0pdZgbsG|Ss=J/{@89ً9sJq%=c{s:EwҺu2y ر8pPR:t࣏>fŊ8} G4ƪñFgE_˖Z̙snpuI-ެ`yI?ӷ,VY vVu#6Ve{93qDlT#f^E`1_YimcYӨplf_Lɡvm-ͭnؾcyw[_ܬja{yY#GnL$n޸iu3eҤ@PPyQ*u/>41php`"7߰9K2H9U<~Y6'̝cV|?[ (87'O?u(njWlݺ 222;nݻb>[oɺq999dggs%֬^ܢ˔ʕ'$+KJF|Q&Ua:RSde)8|؇W^>u!8XʟoC9$xPܩS&+_NX_E `NPQp򤊑#eDa?]Q&__|}|_~a7^dddU!-ޫ||2j(֬^rثwVKnў-*_T%eht?Z~ab}:VpU+Y~!(i})C1ұ;Gʬ'U aף̗ZZYY~2g(P[^)h׾,Z` 6 ~_GJ,⥗C,`n3n (JpҲ68K:zտLyv~uHiv25S?p@wuǺwɻş-[,o̘u)/0dHi!#CANܺž}>LȣW647v#[=:ji;>xr,]J^@MA IDATPTqUV /;ٳ#Gb6C͛5c@83{N˗騑v7h[f(ԀiALٳs=bRܽk[JQ?'ѣg9ΟW|P~mZ5eJ3cefl<ѥm/s[hޜm۶`c<~m۶eǎ;۵ȿ>gcN Fe)|՗dffҟ޽YH7xycVg(noRi„ <OXpNޣF͚K5y;{U\e|:uDXX*___Ws}l 3tH*F&J%&:?Ofh(0i}/MnTJ%8He{kembsHOW0p`Y14TJ4=I1zt2UV孷RY#ة!!!f?;GPP?qE,/]RIdd_XF 4 C2i$p| V.ᅲ´i!0}2i=/cς UwNU;*yNuv?:$Ք*5f{,[ ((]\wEcK$$x7al)KL_xu)XvVh|+T8D܇CBEE>@P4UOP.. ˊh"?1Ʃ^yEoDb:3cQ \v( .pjC8Fǩ 5k7>9'-{[qL%I!#@P(]Mg@P(SN+!^0M%qE )qNL5,6uUDpj8_B  8 az`'6uy21/p@ 8 apb]hجy.@`8 -l-a/xIJ3P@PTP@ x7>ä()KP("SwwT@wAjS|b PT գt;Na K&@ XCq5ArߣG)_AAAK )))$&%ѸQ#BBBg@ (Ȏ8M6mŧ ?sssTSK3ld;N //ʅ:P =ʅ\f9q$5j0@PwǏaÆNϰ82@P4T@@a!p#ԭ[D JriX\ @^^DFFgQ@ իNr1|4kڔY:=חKbI4m҄4m҄ɓ'm6..o.Ot&|9ʗ>UP\ǏQ\(M4qJFr5)/z1En_8q8/j$2"ݻwc˖?QN;VrN@ &4F)M"Ko;߽{۷Ν`!O>׆aÆ /_b,\,mV;l{]vNː>9哓֝8w_ߗc3/jڰCп?IE߶=6lckR]l- a =Aa)΍w-Z0Y=vkooZnFafiw  bժ_HzU~!(( U}1{Y88##< ]M7k'|rӺg^~|°%/ݺu7xZc?}Iz;wSO caAIaÆ$.2%Puu1FQ)*4i܈׆ѣV۞qڴiZj1w<ԯDž ̎^ { =ƻدb/С!Al:xGi 9HS>i݉3z}yw0a LjXx 4h5 (OQARQљV¤k)W\ʕ+o̙;gavm% EQRtd>%K]\.r&##jצ|.DFT[.A4RT-ZȾ}vw(sG}֗v&[H; LI++v]5nܘ&sC\v+ Wٵk7z&77"Oa,Juf7 ~:111f"Wݻ;wlzɓ',H{x1?}D:u"Z_:<͚7瓏?"&21ѕY>tHGڱr5*.?0mڴacHOO~ ~y0mڴift$3f 55Ր&==iӦѭ[76mJ6:t({~+ߗƧFѲeKڵo7_Vk>x뭷iӦ -Z`РAoAV`zC-hѢ{aѢE8mXzo($''[oRJ 5kogpv2ʕYƍ_V񿧟Z*DDTyf|1f;._Ġ\jU{&i͎]v|~TZJQt0vzRSSy睷Z%ʼ0h /_vJWNNϛG#r%*EE򿧟H߇Qjʗ eoܑگgiii|g*Vjz֭[֕;vnݶSzu|||nzL6 $3W ܍ǖ#_f5~;Rѣ͎eddg_]\.rB'\2z͇ÆQre?{Ù3g6mT1)}z5j;M4[}I?Yw={pA~wZ>l\>9Xw/7o4߸{EZV#ٴy+,Z}{%?g֭49__.OQܩ{&133 N~ҼP<ǎ7`ɒԩS)ټ65bĚ?{ gϞa߾}̝;"눽.Da/믛 +G3s7|=cQQQ‹_5֬Ym&xf۷iqzI]fHlRnۢwfۇl1sb׆-^i&=ʮ{(Súj5g 9p`ή]4pYYY̘5^9ym֭]k8Vٽ{7w6橾!deeqEfНM)I8A#5kVo0oiժq t333;]9rSSSiݺӶ͙;pwYf̞3p̞F0{w9r=GחmzZ:7nrرjgmǒʢEy&QQXlfɒ%ŝHoi&"##oؿ?X378>w`Çl2:>8` ;v̰9Bbb6СC֚ة?ÇuVtBNN?L.[JX4iL8 .]ꔽb/}Mu+ Wyݳ^^^/[fȷlR֬YM,^vwE˖>}g`ַr5bbe6^?p㩧fΝ\vcO=P|7k>}`[Rr4׮]ۙ3e? dƌ9s6׮itMRM|?rrs 8-ǖ0Н2u*/մ={?$++?o(rCڵwZFg߾} 2=H߇d=W /w~ r~mZlif9(# HhӶ-[nc0`@ùr c6z3O̙SssL^\PسUz[mMu:fsNi݉eӗڷoO=5F]}c~y:WDEEO#6k|$6"mj8uWzveG裼Kk|7{6?jժL2!]ȏ\t>x"#o OtO+/ݻdggsa^dëC0v8rssy7XxX͚5>}:_al։rۇ]vNZZaRB(ӻ7o&))\ٵk//LWH-)8ABp劬H\\UT!:{K,aQ>@..^ŋV#Dݣo>fˑ<ھ=0GW8i"?XaSѣhԨ䱮]1a}4۶Y MuKsN4ڵ7C4tˑȿ 4k֌9s^쨽JGmQT$%%RvmT*/Z?bp`WbmܹCGۛ-GХKRRQv_ƍv!jt>D """ c; t|ie3{6}6Bر2t(gOwڕ͛7[{尶 OϞ;nv)[7PV-+Pؿߡ1RZĩ0ٳ[wqk[@K>ݔ.] h³=z0n?μyӱS'P*RZ5ҥϟ;R4JȈH^~y0cƌ1OtiBB:UџGPPO?4K/_/ΛǻK5ח5k{9MEAD'LȚ_㩧bŊT*x衇xٲUxw҅ʔ)À3wCzOO>iǜs8Z9s|.]v rDJ畫ԩ[___hӦ K, oŗ_j5j$_Ϙyw)S,Ӈs,u)kSOQlYJ%+G7{vnڴRJ(J]o{Vނ1b@ (, W.ˌ8J a@ .ی8 qq .)CAԕ;4@ p?>q4%-] űqA!77JE/.Bqh@ (z\M.lȿ妗 CRѴQst^ئ<lH97ǽ K~).+.v &{ aÆܽwu{/ REhbHhrr5J)ޅm@ Jnn.YܽwTBCN;NYxyjX IDAT+rZ@ (ܞGEVqEmOVxJ@ RKư^3Μ$9>999ܾĖ;KQGxj5{ojV{,?q(I%u;+WH\ [ߤɩ7 y 8 n֡mGs8'2X\6@ }\8im rպrss tljޖr6 @TrNii.ֿ trFE)}RXDE!N"ߵSز^DFDץXiNHHT,@ c8ٹcݨ~Sn ,{w߻*hNqr"*pe~gm+S,#x{/VĤ[fiIaS5FX q93$4mn߇Xԁ<;#Ñ6X(@ AA- -<Qf[htffw"-*ʪ\=Rʍ92\4+Su +NǺZ&[afIˏz3EP g֗'ҩP(ԡ+w#,>cdei)}|@ S<q]]:vpxN///jsU*VV;u_\*UDr9a\6n]g6o]π/eΚ>9fJs?7oݰQS|p}fMt8)Rehޤ%*t"rL Gq@ p 'ɪzzkD]Q(lݹEʖ %80ƩT!85P#7B^^^\y v3QO#fJ5;Aiooo^7X2q2sUʰT,hdŧS|ORԫ[ҥK78јݱn֤%9z9bIHJ% ke468Kɴ?qgeikx?8_HttejԨa@ OE-^z@ Jrr|.FfmY m[AwprVζmKW.yTח]c߁ݤÞ>{e_gOH~Jim{<:cak@ Qb*W!Yŋ^d:^8O@ ;6=(SQ"&ZbAш@ AIiG"GJ"+;˝6y,_ Z2}U@ (e/Ȧխ޴qsN>Ia(][\ <99ܻw捛Ղo[ciիɓ' @P\:oHKNNfٻ{Sgv=VpynF@ (|*7K'tr'ʗ^|}hxq8 ĉFի7.lJ ssT]*ePF =Ҏg}RJ,Sij_|I=̎?pCf?n<6n(4"N;N^t{i=;Ŕ˖ҳWObbb ؾc׮]cڵ]b%낒NZ[yg5ku-llkZ8Nk֬ߟG\g͛G֭Q(V C̱nAV3a͛Wئq  Ǯ_aaay?oh4<|T\d>7+~^2tHPD kSmMbb"f믳n:J.]:EYa WUeΝtڕzTqoB'-ۿm<¾{ٹO{ʹdҥ]!z~Y:@L8;vT2y嗹{cǍgҧOoy YWΜ9MFf&+Tcǎ *AAAvpSvovvfgR37#8n0o~k8,0@g)++[r!bwo> 1ylJw^ ;=z`Z{.i֬u@0tHWIG;Y|\5n=i PrD!6.ڏkqeq8p UVXXX-vhnny뭷4u֍-b \~]mY32x ӧsAe_>>>>)SFroLDoOs)[,? Q'S{$&$0vX(W\yRqU6wZ ]#?m磉&qƎ˗yMشi#-ggy{ѽ{7CWZrʽXPƏyo7CiLի GF&1`8r䈪|ŗDD\k֬ܜ 458)חm櫤Q~7=J.GŔ/A^3uÝ{lܸQo={k.]㸸ŦMONN& >f̜=QMOzQըx{{өS'zva ++Ko"##զ_]L&̌;a/F `ǎjٳglߞ{EEEc.]oF5y6l^TѦ#5Fɐߌy#0dߟĄ.\?/Euv۶m([, ,?///ry||qF{43qqqkkkz?~ 88PhB=3&)E؊18 FTlY|5sׂ,YXklnӧeɏ_X6lPoT(p~[n3߉W+#)D߉f=|4t(Τ#i!&-Z\:99Dvv6D\`ܸy^ em[0`۞6luڴnMݻ 0]6Zѣd2U1tUcY}t}όIʶy2'OPq F5xvqQΝ;5̢Eغuet75~H|%o3 Pz1j(zPv-R<ѻtrs cjjݾ=..9yAy_~:̛7O{.Ӛ iӦ--[Kvkk+._]j^uOE".ڢ0f]U:}Wz'AԔӦ3bp~ga ة#eʔ!55=?ڵkٳ =~t{LU 4f72#R o~v3S[.2^^__Ö-y>@}y trY&tVZ@NTfd2  Bmx{2kϭIz644uQLL1I6/2_Ʀ>^gA0]Y,,rr9 1Œw+yű{nX^-QUuk Ã;!33,_ΔSܮ=}6sЯo_zN)hHѥKW4lӧ :vUЧoիWʕ+̝;(I}I 2۷nQB<<exxZKJq2ep.\ֽP>sO?zzrIOOpa<==s=]<=JΣ>R̗͋\!ZA('OvܩAǏ3vռ]K> mo|wŒիWzuLLLo wP[)ZRd2F δifCީ_zj;#ɐkիtRwjIprrѣjϦ?&4$/F0q$m۶eЏg>;]<6}- Ny1-[+++uww\.jժt܅f}hҤZ)N=zP\9n/{XXX~:&L@F @.ӰQC&NڵkU˳uwʕc ͛_,y3tۼ|4  ={a|L"_*BɗV0"wP(mq P=~Á@n%AJ/}=gAAx}ަs.8H -ATAAx홙ȏ?"B eR% @c~~شi +I߱.xr.- Z?Pbr~=̒%Kuabb†۷|Ic|;}22o>#Fй Fڷ' `#v6FLJ^\4Z[[Ӽy ۶Ç#1Ҁ9~]"ZA0NCOs-̹(zRXd1#+W#o._Xtm;G m;#׍ 33aatCFӨQ#VY@ttREғr͚5իcjjf\ Чa')۹8 PRe~]5LJ( vT#+3w nq3[ B; Pz(k]8̘srr`h`/9|X`AjqwB#hcǰ>U,BCC ոW9tx{/A%t=zTߣGOzzgXAx222JX׮ErZ$ǃ۵sss매Я__U(_%@P0z(w͏aŊPalmmՖ:222_W:XmyDyqc*W|Eɿ'%uoPJ8N{ |w0zyW\^aE50Ě5 ;CYnqųfZʕ+ǩSXfxW,_Nbb"u9r I>iヿnj׮m>܉!1>AOԮ7nڭI׹U5kѩcBCB.44ۜ.f͛͗z.Җ8͟ϴiٷw/͚6j4o֔3mt͟_`99x0&C[2d;G=JfФIad2Cܸϙ3 ƍ qs[*:ItDx%rSlL$MrS(b*N .sXXX߸q͛;;;,\Taw/O?U@˖-ٴyf:Qn=4in2zyT~V^6,X`cc |0Hu_`XXXЦM,Xg7lŅebnnN-X~4u)->|QܥKfro̘1c2"mICPG))jaSRRHN~(5@vv6sozIʳzڶ󬬬٨;wv7~ܱCu|(D$佋mQ<ڞ)gc [+ir6/b٬\ݺQVM*WH}z*…(_<ǎk>};'EFjٸ[+Uʭp)GwΥӧj󕟕ˋ3 (@4Qu[gqqqjA#s1ܼYS޽sϫLcٻo͚5cӦ̚_ɓ'\xSSS:t^~|Wx/_oos)"]IcΜٰaݻu|x8Ip|8]teÆ xzj~QgHIyDuhҴul<+Y[[Ӯ}{...:խ[vؿ?]-T/8 `4y/FSmԽ7X`%7Rne^LIٳ=kW5^fy;˕lèѣ#&&iijjjkQzubhryq׉!w FQZo6бc'lmiPٳghтejmV=.ZC4H9JOJ~x/nzQ^=XR޻OoIWv6vqw 8h(^4QqD(gc\F+iŵ8i+ºu <=r,8W^XC*j cǎW~nٲe͡~邎Xl_<`?hlJaghUtyS:G/ 0I,}jXp-VZĉP(O>sQHiz|<ߤl<`eejJTA0𛙙0̈́ei&C) le[Z"ˉcDnnC QUSaffn W-]Jpp0liKT\ae4(wTS&>HKKc=L2%7L3Rv6u /^$++<_7arߍ;$$$3222s۶nK/c2ؕ@Ǐ O?r_Kjq,Y3~@&`B>|t'%ϻӍ;hf7cԖҥK$$$PbEHsawQLbO(d1ђnuFE޾}r'vo~8Or)2n2d0٧F=R=՝j:C4U¤_P9tϧ|<>}yVyV'##A8{6L;kj`񥤤н[WzB=~] d-w_ֳdb|}>ժUc&L|aaeg͚s'* LF=\]]9rTUx~!qIr9}s.u5߻/pq͛Nrr2ӡCJ3EqP [mS$%%aaaA{{;3Z* '''JTg3ۛ <_ʖ+G6m?~cġ)̱AfMQy:r\ki.]U[̐EKq'A(q0G,}Lfvt23}6s~RaYAv{IO}9m]xY#ݻw{.{a 5KTX_ŦMUׯ_Ϸӧ?BHH̛ψ# L_j+:p`?ݻw/nnnfΝ'mX[[V,,,qU+3Ne,WϢEMݓT0w1klo^ jP'jԨSNS tVZ1oagϑ{ :l<1jz'' [[[vq/!?]pu.Y /H?W2|p-]7}3f866oެ˖:)ۗsׯPy(N;ȋs:uߠaqI,-qp} 8ԧP mN2l,]pe?԰\.^B4.?|yOaW}2aDʖ- @jj*^@RR"8::ȑb A0]g^^Ν(:ؕ#Gann^`|qqbffF駟S[kچϬ3ٿ?IJ }&33HOO_7\θRSSS+++3Zz_Ů]a ƍ lRzz2dV ڵj{ XZZ¦SVM[͐6CCܼyN;кukLLLhܸFXe0yMU1%oEtD073c[C>jFKNӧlڸ.]J^ ѣF[m~ll +V,'(ckkرcؿo*LVVddd0Օ3j]ڵHkZ)Kb7_(9Y#sC^F~Ç [WVDyqc bccו6jz.]Gja{\OOruoPJTZ)+;[KM777~4}|MuOt+++_w}sXd 3f_ \Ndd$˽5OGY3/_ T-Gf):u5kV7cƻbr˚kiڴ)W\a_jrn+22]vfʿ?kԨ~ǘc^RRja͟Oٲe3kVVͯVӦMgGTTnkkxx8>#GҴi3z)~XYY1pXXXYҺL&c-̙XXȹq&OF&\E<$BFKXH妼QS^Y`r׹Áx-X#iӆ hrnkEt4At>|VJzj]~V.BFdѢEoϞ=[[[r9n<~{;;wP#y% (($Ba>;KD~'my*gc [+ir6_L(d?LY6u*W28}_@襁rjެ);^/_cǎ5Ѿ"#Ap]i>Sث QQuowkzCR yu(]ۓ'Ot"tY~>g}4k֌M62k l)yZx-)sȆ ޭ;Isҥ+6l (qZ*>=<fpZ[6or)}d2Dԭ[vؿ?]58)\D)ʿ  SB#)h2XM(c%mFwahР,`ժ_%9V!wrG|wr5|5z4vvv0~BGKʹ!/]ݜJ3<{-Z ;vbܖ e ҫ^:yF}Yԭ[333ի}\ cOj?IDD_u3S[ zoz{Fjj*[{tM %B9 2XIZtI w~ʋ䇪yׯ_opS:@[OϹ :իWԭC8ԯ@бc˔7й~:uww>R 3հtӃ*FMUV;vTmsޗɦF)jqe*V,J[Z/`ee`P/8 `t733a $ML03>Mvv6QQQL Ǿxb>}JLL4S&O7lX;;>pח={FFFwa֭v}BBBTwڔEc4hLf}={:eJnA:Wv6u /^$++<_7/)םrJ`` DŽ٧ЮKo W-]Jpp0lino#5mrqDMtt4c,\^cOJ}!N"--MU6&C7Tvޅ ^qW011a]֖{2eMeE߉tKΝ;ԩS WAxnߺI\|<E$?ɑ X L mD-%333oMGB B``Fou G:5h+׬)p}A7\sFFq9:v߮ݪǗBn]Ն#իjœ s159!o5n91rBQF7$=O?CiۧO6o٪|Zpc/ݺu+0?-wUV ﶭ[8q#0C & ,YЏ?֙omwݣ\CB-6|@I뙚RR%:97chݺuNRb"|I޽﵀u4<\\zy&.)t}9}41vv58p ܭr9Yf5܉B&QW4]'OD.ӧo_<=:?P(899iTb d붭>u$,,,coswgFUV5jzk׭gɒr}U77&L3ۛ <_ʖ+G6m?~&g6{&LW,=+lxI&ANIˋoKCz«KtD PX/WhqDIAƤo41q|  BShqD  BA(=o-N  T^D F'ZAA(mDI{[*WmZnABq")A(]DI+l)jXz(yR^^4qAU47{֬ BI;_w7n?QÆUYrZ_rʕ*&MH֭^ ƙ3u? ;vtk>9rhؠ>ժVa vđ#܆6sゾUT68שM}nRq܉8 `tEyS9fc2B=L~ ڵkԯ_egE=^B>}HKKSͻ}6g͛x{/Xܗv^T[?p<('ذq}_///6mڬ~z>M#͐BBBe|Far{.6I:J=ٳalW/0ܹU kkkm*-N ]Qq7-[5edeѸz-jꞤzH$o_v6W8_>9sHKKw8{_7n0x`.^}rYbcUR="00~IN'AJ$F4%M7:]xή:m۴ٳyZgϞv}Ǚ:kQf _խ#o7m]SSSqP:I9㓏Rv-eq oD߹Us9V\fff888rܹS-|ff&g9С@<<##AA#TRe~]5LJ( vW&???23qi %b"vNN,;ciL ѣF[m~ll +V,'(ckkKVV}v̙Ӝ9sZQ#芑`WWΨͿv-k"9߮ݘ-:ttQή.&e ḻ !Zhapy s.!!8?) {L)Я__U(9Y#sI^ܮ2LmňHOOƍ\L IDATY9F>ǥKC_=Z0xnܹ|TƒXWF/ߋ͛7q)cffe|hhO<&M]A蒿 uԉ5kԩӐdlCZرc. L \AJyƒ7z+Gt3lm,%M}|Muغ͇;1$&' ڵƍn ֭%882eʰdRn޺MBbӻwo@ǰ.Cg/ Ik֬&, ˗guϚk)WNb͚q=x߽Lj/wmHY'HHL YYY\A >8V,uRZ|9c$$&xׯVʹ$/mWQ˖bb&::c>44.>oiּ2mq$%%`ooVY`L6}{ҬiVLfM9?ӦMg [f͜ɔSx뭷 Z@Z=JfФIad2Cܸϙ3 ƍ qs[z W]A((c+Iܔ7^q* m߰ʖ-9-Z` 7ǂ TP ڶm˖$p":wjn 2p`cc bWnq-ZDݺbҤIܺu -ƍh޼ٱ`BΟ?'5eTިPe˖r޽PzR:|8ׂ8::baaA6mX`FX)璼 ^ESMԔcǎԶ-ժVS[,rjU:tn/̌3fh,2KKP($'?QJZؔjtyFjLoA;VoJm,MM75Ru+7~ܱCW{ՙH}cr0q.چ2-gc [+ir6_Lׯгǻw7k ݻws' #n wrnk,k*vW7!eft֍ڵjRRE; tHQ|yONzz:3gj^8 h?ǔR\\o;t+\ssg:u 7ߌL2O<ŋҡ믾{r~[} OW~V.3G6l@n9N;N.]ٰasZn]~u%/^dw8{6GԮ]&M6ִkߞzJué];Ͼ{i׾=u#qh"+UZQmԽ7X`%7Ħ|7]XC(Tyhq5{,VZuYO?M6q`~ HQs1/[ٳwڼukV , Ϟ=ёejijmV&OB`E mJaghr.y]dffqcn7EwQW !U8q ^^|ɧZGV;vTms˖-U  Mr]t|P>$`eej(@TA0𛙙0̈́ei&-ưa___xܹsm[ۥC:e ;~L.\|opiIArGsU8]tU[̘2 t+A\Xt)ddd̲K>6n8֖{Ϡ Y[nw޹s:uŕ'A^7">>zi]"Sq HSe,wELm]v:׭GVVnCtHas`~ 6##A8{6Lc@ǎ۵[?ϐ|'z|Ou*WLL4;vTu4܅/:âS)))tUm8r^z/̹Đٸi7ܜX ;߼y +|zEC^}a󖭪'NNvvFX333v[nIW;XC{Aadҥ|4t(K. |]"qDhhmkX5_~%P/yfM\'99SSSСnp׏kǝ(LMMiժ? ϿP(8} nug͚s'* LF=\]]9rF2,/A&qq,,,pݛ~z/Au1ˑX!& ScB 8ɓ'OϹԵ|ggv%lʔcL4fJ?@PTwc,Y?__߿OjƄ uwvf߾x{{~!Krhۦ-ǏmlhD Foq:z AA m}=&NԿB1!^mq8 `t$ ̤?P[G+ c$ Vŋ%"43GhqDIAFTA0:j  w/PN Zױ--N  T{t-N hqA'AN8 Pڈ F'ZA(*WHJVOTA0¶8ܜ6ό'q#'屯k^C*se*WHkGGռ۷olRzד*+܏W\fƌڵ jή:Z2jHOk>NkGG擙7h԰!vvv{V\AvvI͛ \aujӯo_7]㣱<88fŞ ǩKOLXv1zk>PA'OȶK.ynoP8;k̻{.we=Z?Лި_///6mڬCZZj۷=k7o{A6|RfݻwqaˌURSS9{6gC^.aٹs' 6gjy*NI+3Ne,WϢEMݓ !&?: /G:ʊLΝU5jĔSkժ{v Iܽ@HH(s8~lmmŽDvakkK34yΓtgϝ3;~3g ίIɛ!>m'MֺXSR~qta˹sgUKy@')ݢ0QsIC9l4E܈l]. ‡8ԫK5KédHWH^]x{/[׮ԪYZ5kЭkWVXNV4qq|PԮC?TwqW;mӆgjT&ODVJ[Rdddp<(>}4+N sZN>ԩx7 NҒ&Mp"{.ƍOwggr9ݝ7~|]~ϝ;ʕ+qpp V;wY .bܸԩSi]nWRe~]5LJ( vY{|XT QDW=AJs33f5Db;xN,;]tREz׷k0  vu%,k"v-AAڍSRRׯ/y}|x@P0z(w͏aŊPalmmՖS#VgX:$$&qU,VX ko;v 033c5fjP|y֮[Gl\.www*Haa!Š{=ԣG۪F< >c>|Ν:QKt f\SR6@s}EEE|g4k֌'L(7?SAۢys0&?l0v.)=- -(P)VK4imO۬{U!vy(,,duszڏedheԇӥkW8rqAxt\OH(gJH3ݤ$u릶FK.u饤hs}CݻK iպFÇ9w,渺Vl,Ο?ǼsٺGd,Z[n~r,=zjGTJkK|}9{,2C2tp݋},)ee5={G֖6m2a„r'jԨ1ta޽d2tjPx}=gA0ɩfZ/R?~[!6FbLA5{NsfuZ믾?J*[sssIaU( ~(׿h pqqJ*&7ݏ֭^&$$Dpҕ# $&& cK,Q-WW7vޣnƍ4m$alٴY`yyp5MPS1NI*.yCAY!a/ȭeF8 شi3o22q3Q{܀o %KR~}P4);rFM6ӹ}ÒI bJfcSֈ%(ӣ?O0'l~@MiMmZqoY9oi={|Μ9ômK5#>RSS)(( 77ׯ};ބAaa!< "".]hVW~{br%<<˗3!qqի{$$$PJ>CEeF_秹888r[&h+F]q e^|")4n}ӨQI 2I] f￧II V]t:ȼkPA`&66FkAʦw=z69@߾}USdM喹?+/#X|Fxff/l%7n&bmmoֲOj/Ⱦ}4o\o~7%=dߟm?m[6KKK~ܺU3l|t5UI_"qRpg᷑lI2zh@K!C,Hːd=z+++<Фiy ")qA|  aÆp=!LF&Mf̘fb̙_sqżyin ُm۶dffbnn xܰOM'N@PйsgF|o;'HOOʊNNًqSV-۸i3˖@`@oߦv :ɓh߱+Wr9qsue_ЦM[ .1 &WMJbԬ  XH}c.FeWM(NgݖX+K6  G$UF  ) &|  B4A09$ F4A05}û )^FE4A09c{lLO.ã ԧa΢E n#.|٦úv+V,}xf 5󊋋YуR#.3vΟ?orss]+..ԩ+...&//Oc=fM]%5{00p2B87kʰaC>iRӐz>>,_}8u*Dպ{wƀ$Ȯ_Ժq 4VmTAx.]@rJ 54ǜd=*@! v6Drۍ60s8;;s³k\v :(/71}F.g䈑|3k2Lm@@ΣGԭS///&OB*UT&&%3oٻwތ3KKrKNJof|[SZmhڤ1999\O͚5uSrSnicL( IDAT~Ǎ%((ofbI+V,gy 25kР~=rrrH*nNN ֖rvmsssR0x޿fM!VF_wf:m3f| u5vHT]ba ‚C1^T+~QniӦk46}:?PUPʕ+pSG5$CP0nXBBնKLի8r0>vh0l\ ۛh/qbG!0(XTڽ{04պԈ+~ 9srrrhѲFSnn.]oow9zVֻwϛ ?1<>s^z%ܹêU++T6+!7Q)gٛeuޝz3dOqss3:'I yΆcW Z$i9v;rӎ @w:㸹]. 'ܹsO&9 ;Q'$$ ϟ7n~#GѹKe]IMKCtM azbbyظiI$&%aFVJTT6יUHKKɩ&5-tF\[ Mdd$x\iʿauJdD_}5}}M_zz:NNNjq/fƌ/ٳ{7mZK5iۦ5eƌ/YxQZf-mڶ5j{C0{7YUVZd2 JJr2'9}4 :To"N T m6Nn&i6} B5W+˾iԨ1r/(B[I*U]vl޼}.www$IÄdR~{vvv1h`EcHpw\\\cǎ,YD#-F5QCzbBFFoߦHo\)){-=* 233{Z{B!}r`VZf7Y=}ihcT6Z4oΝ;8iÆ `/r]ed!oP/ }5ᅨzP-[2ҳ]t >_יFJwJ:TAE..'? Im3%$\әnRRݺuS[U#-0Ç9w,渺j7w.[EO.ţGU*\ieyͧ~$''3ٲe VV̛gPtxVZEn)SaikkKm0aBF5jԘ]w^d2]vIsGwݣqdJvLGrk3k3ٗpjѢ%Q'tƉ:@˒Rn]|KAxDSPP@v&(7BكhH,5[pVZIFqƬZ pCmq(**b3D>FEܟBhoͲ;|pb{DIJrkriZIΊKh}/Dvv6/]WI9ژ!J-Z(S"/= IM8rFM6ӹ}Æ Q[WN5-qSKi+_8|z蚕Unz•֯[ǔ)Q(,7h;SQ)["ˑ5pϯ"DI3oaaAF$-fXX?A舑#iԨW\aW&''Hxʕ+4nܘ#GmBɳO'O44jT;<>RSS)(( 77ׯ};< 3x`N={&;;ݻv1}ڴ8ރun7c4Ξ=K~~>gΜaZɶ)'jCmo̠@^x/X|9ΊYZn yܸq?\-<~YA&dR>p}Ɠ:R888r[?*B8ݤAjm T."%%F:}ṪER_ 2כ?\ի &55Ukxݺu YmQo^ueTmW_}M-tAN_}{`bcclzݣjӑW5-xL߬w-D ھڋ/o_(͛77Y~7Rʉ϶>;(,,Ԉkaa/;xW-^r<4O}6jh'wݣx <Zҕ֖ѣG/3O~:~7ogܸTZUc P(8mt…Ƕm[i233177 WWWVq݂𼲶&8$ d24ۻfb̙_sqżyiP#-ĉ( :wшٿ?~9Ezz:VVV4trW^?Zj4?6lpmj׮͐CTF߅\|} u8 {bm}ml\%)vk?NI{z8(ߌWX6>xQr>ٜ9s1GSPPȐ!C$ݳ?Eyyy/[f B]C,ZKL)RIJDD$>2o\mwwwt1_L-7_mi4oޜiӧs"d;zP VjA888oOdc~KsNŒZw]0`e,d/Iz`ƍ4hPm=2 ][4j5i{9zTB32dX9}CJ_(?4m+++R~:~ hҤ)>ތ3KKKU܂~ܲ]FQQ..0F_~Ç[&LX>Ԯ$B.;4qnRnJ>4o&&_oEEExxx0ow4h BEhewtzII|L"##`ow pj@kAAwG[.^^^L2*Uh䕘oe=1&Wȑ;Z1M2Ԫ%11k{}ϜZlٶm+QQQ9r ݗasлw{ayp)wy 9C[j\C=Wս{wիG@@ӧ@&c?$e7z 1~:pJW$-Ǯ`g#9{w2gl^S-lÆD /q&ILJfƍTZ(6lXM ޞe˖s5Rv~i{p ٴiA<^*9Yӧuw3LZjH;_äs!4hHZZV4IYX&0z*prj8ȥK5'$$ ϟ7n~#GѹK]IMKԛ׫[nDFDW_W-r⛲o2o6u/ryJPţ+?+ a~"e5sEY2!CLtIN>M||Eٹs''M| J]xWXd >w˅烱u~ǎU6oق'UTҒvڱyBCiltceeU222}6EEEjU:x}8xj< g!k5g d0nni[LHHMAA...jf,\ ,$??O> QUz{Zڵk!bbb?G?p߰aCMLﺒ_Z-8~"J74/UM!^f/-/ ):tÇ+?W䦛E~K5p r\[¸B3oaaAF$-fFEOpvvܹslj:m*{!;;lviӊxQ8wiܿ<Os҇OFf(,,۾]o9{gΜai1W?dFw# T mN?緮 &,, y|{tIzPKC_cg]iH1x7+/'<<\Y|99#6R[)-%@r-SnaooDzd.^7iP>m>a- :v1ceF1(o՘N:b:r_nw]޽{t}UM!^:ﯾ͛6[f]Ϻf\J-DWFXKC쯥dq϶2tu!i:J|]"qRpg᷑lI2zh%kBcili;azBBBL&q&x{Syeii΀@6n@`` 077C?^gƏG~̙_ͤڟQW\#9%;[[w o^&M eo:I9[o~#//N4Jҋ%3g~DZͧՅ ُm۶dffbnn })k0mdTXYYɉ^={1nxD='N@PйsgMژ" 6lpmj׮͐C4kڵpО?O2I&qq&)뇮Exz;zmOj֨+..u׮]cŊ}/լ_2k7xx~ԩK3_nn.yŅ:uy_ilχ~@sggqĵ[W֬YMaaZ6]ԍ'S zӵtO>8 `ryS"囱o6|b>isNv)fAuYNj_dãjkZ^RRRHIIa][7cF__._֭T/\ Vvsfʕ+\ʠrRf*O",bccߟ}=5ڲsN1BmjI=N \Eq'P1vt/XpEEEF_NFǐ~Wy\]݌. ev8kFِqwwWk޼9ӦODrС{ԴtRn̛;Wo~ǎ%44F``Gxxjys璝M^#߾C٫3WI)!Ս'x|||Xlָ^^^:KRbjݽw cpRs37r$Yr&sP~:׬ W[g^yyy\W=<_.UV^E~zcMm>|ȧѠ~=1o\e—{#GаA}4nĤIҚOb_ܬ)k iҸեg_ՅCilܰ_E_.o&Ј[NѤq#j֨ʕ+bpMFNx$UR6W@zM4nD:t̙ؑÃ髿Ϻ\9@ <)u IDATbcbpwu2gТEr?t}M6 Zn 33So~AL4zammM^8iRqxPjS%C׬YC&MI&Y;wrX ?)e3'_5nB.^5ΰP(ǰ1P=A*K fuL휢"Xۍrvt$%9?~Hjtۛh/qbG!0(KKKi-ؿ?999\:uwxf?w˜;f4h6r|}>}4Æ!Aڵk@~~>3\nbtIOk{#G˲e1r$}4{Idd/+*ZWBc V[xիWqaA-\W}EFFC^nՊ j9999hْ5?%Enn.]oo;w޽ݻS2L-3g*I)<Ѧ뷶[.$''Ӯ];=]U(?)wNz`d2v~=#f PTޘ4l8vȫEcW p)7iS`w4wnFN䓏 ҸazbbyظiI$&%aFVJTT6ݹsO&9 ;Q^4qaR ;pK.kUX8~ݵԴtocHMKϿ.ۃgժ86m$<<{{{-[ΕHMKguϻ M63bH\-\7IMKxyyI9 +ZӠACsMos1:wB||֡J~6DFF{׫[nDFDW_Wo~899U~Vo?7oPXXȍ7RSS+eI)! 4 O4?w3LZj5L&cС$'}ӧOϐC61" P)T;ڜj7v7"˹y&wbرݛ Uܐ,Yo;;; :ɆTh_~=5F._pUUa.Y VVVtؑ%KqwwJm?nmvXYYQN,] ?m00xŒK1r$/"VVVtԉiG>‚;~ͷR);zqoߞ~2z"*ZWy<==R k׎͛Oc;]YVXXȁ)oѣpceddpm t嗓yFY0} 9|;uvҹ6r͸ lk>y}ɐFcG٠mѼjIu6l;EU3cߜ+4]\m(cohNp'!Ӳ˪רQܐ(=#PRRݺjtZ2fjz* ףf4mxܘ~xzj]*㱵%8Wzt >|_ż9`]tb\&51DE뼔zҥzնMkxַg]ll ݥAjZ#Ç;{ss O{'&%{ڴi֭?2ǿx=t}Y]  '77pV,_h7jԇ] //W{@*UmMwy(Uۏ=l"rpp 9)L> JwMׯO.OL *IA"P ^o{[yyˏ=x01Z㻹zH{| 8ΔnD {UtF}Ⱦ2*=lR[jV+>}PeWnϰCߩ֭]˷B&1w3Fb`ooؠ5L*BR|EW_}M-!Y6{/'ALN8  'ALN8  'ALN8  'ALN8fzoL\AQoh8 `r8vOm;.Kj֨N\bcU65kTjqqY:~ ³t׶OW||<~͝Sn]Yf5ZןjgΜ)S+qs 6:,@nn.yŅ:uy_il|ܬ)ksxOl 1jԇ:Ǧȯl]qj؀^^Zo_#<<xpwww~ޱQ'iݺj}tt4u"FOF{" Tԅ տ?٪u׮]c\r+Wilsxi{x}߿#G?v-?nKocnj&44T999%\|[o޼gDD,\?Oppho=!66?ԈckkΝ;yw~ڪY$zA0^ ^6jO`ذ%QZ{ ϶̻Z7w.z5bON;Ğz?k5R6z:wf՜/ou2WW7X|Mѣ@``R }Wm||'u!w?G}˞~'==/g`SJ~ʺr9>/Ӿ^^^:KRbjݽw cDIJcy`ˑdI˙x9_n X{133c)JEEEĨmʕ+xÃR^]^`U7CaINJ⽑#hؠ>M7bҤdee~ ALJFj 7ߤIFԩHϜ9ZWAL4zammM^8iRqxPj{d98::bnnN:u=?jo}&N@Æ 0qSOF|`!/^gwP( xG`` yy QV&b :c&vNQMdYZZh֬׮]#.m۶кuׯO۶m9wW^ٙK.ӢE j֬ &&&Z-x1GZ1u(޽{ EZZjffz8Az$* ƍKHHě^#G?jTvW2Lm3g֟9999hR;UFH[Νwoa{ayp!l>祗^Ν;Zoo m=۶m%**#Gba2^j~RMݻS^=>}2;_>nnnF[Y) YAx~ৃ ǮyHrJv6z<\W ݻֽ$x8oڰa=11Ѽ lܴĤdٰq#UV%** kǯv^РիVS#:LjZ:are'BtM alVRowL 7IK͑ܥ Z@Rٵo?7oPXXȍ7RSSGFFuY[ғҦm[0miWYhbf=wӦu+jTmZo^fE[6ߺ$&d2m4^~'_Ywf2뛙jJkLƐCIIN&:$O&>>!Cmt=MƶP=A*j6Zc'7ZSހSqH9ƻ{weéN㆕&U!!!,Yvvv 4žqC4^{ݱ*d ...XYYѱcG,YwA0ZIJ`-xzzRJ,--i׮7o 4tvTvgܜÇѹS'jz.;a#/ QԡLCBYj%̚5K#\[|llϥˡP({jqݻGffA7h֬O`QhhѼjIu6l;EW{։ &S.)GSjʴ62;U_LaffFll ~t @nݰdI WWWUمi8|sgϖk`>?V~!xZ|ge8ܹa˖-|'>M;4=zxe͛ke5={UgK׮g<=5gSjԨ1ta޽ٽ.]Ȩ<+ &Y$ͺW 6e o8UVVZs_ER P|"i۶-gϞ%88:PjUiѢIX]Nhy quuc=j6m@ӦMUbb)((E;]L 8ptt$!!D!o%39::rJW@ƍYz-[ yg~pQ2EU4Ҍ:|p&LR1dqRjgZ\"6 q_b9ݻW>%%Շ4)9?{?pVDEPW[GݳYPۺmNJ*.[Aq\ )j"CVPGL$$! DE{ޯ}isν%9{h =d54 `e n7n SN*a*<֯wStC^9nzVdid2jL[[-[9rXeu-tjSYOwIeah~eXZZbii{?^QqJoffK Z춠8)*7)(9ݺuK_ߙݳrrrؽk~3gc< >vE ;w|4mA׵!رg"$$4 ͛lټ~}݌}رctw?q*Ub18ŤEǙ̙%EϘ1c- ww,^LDDDDDdZљ|Sޅrꔩ*-|ۛb[]˚_YؐzۥXI.vޠ)nJ-[~^e;WnNQqݟN S-gCS87OAAfffܸrÇi܀-,HL2x877wwbb5%ONݾC9)e5mʢT5pssSNEo-e:,umu;{,֮YSbv{."M~e%4#.M4ܜ[IH/ڵ?ZZi|߿_mqfɓ'jfff-w}2i+w.-֐ M,3w6b 傋]"&''Ǡ0aִlՊgi޼J 㜚7oN||col*SN!h۶ZG_Xf-?#!!ԬYឞL6]%+{eҥǃT2mZLJ6mEo!ZA0zÇ4N! LC-|L>]) U'1I&ANOYǃowP'щ'Aϝ+iBqI&AA^7$)}" 'AN8 'AN8 'AN8 'AUoqngKzN 2W=UKC͝"傝m5l=VOTA0Ҷ8MܘL Ǎ R&mKQ2SN1jH J.\ƎM=W/8P*\wu,Y[T\vxU+1}:yZ5qi茗'QQg4K@Bi {~ IDATZӪ +?CHHH`̘4rq޾;gejլm5*''%1fsrNm{u#6&Cbg[u Axt :qSwucٲ@uߠIINGXׁ3l۷ޠA4_{Ziݚ*qk6;;3piL|/3QӸqcyyyDGХhx{{SvmiԨHLTcvTJwWWȷoՙ!i|r4h 4`l۶稬iY˗5xy@&-Y=T>o6 傹<]01vNa!,JMiGa঍t14O>ft2O7V\CС# BƜ9_o 2Ùx 9??ӧ71r6m78?A(rssrsK\|cG}b+m &3#C-V&IPYte9zFe8x`i+=q&i7ߣЫj^z7(!i(ڬxy.>^fXi[Oguuܹ3u!$$??$ [@NJ$ZA0 洱kРl+T6}^/BnnniJtL,I)xy{=tJL7yCT4iKCp>?f?K$33:pQ1ԨQ%)/>(hQ^SZʕ+siViMwY` 89#C\>`vP#s3wm׎ݚ.]]IK^x Y9mVsUaÆxxebРATTIg `Ѣ2d(X[[3t; 1;´-UVXXXкuk-Zѷo_*U9͛7guSK.XXX`_1ʉv1gm=Bk3$ ?LMM9r0m۴fkۆ 33v7%7j7gx///P+DI)zWSKbZRMӓVK *[cBAV!bIlܸQkhR:=zgʕ+UWOI1fjȻll*֭[+/ *m7G}RL`7n\ךnrr2:tPYߡcGXuۻWO֯z?;CΟ;);j>|', TvgV*Kϐ4t]ܹ3VVVX[[3vX&O +y/*ڷg?+{HhR^}ڶk޽{ٳ{7ڷɩ^|DI)cDSD1۞YTRjBEKÖ RT4]{D"aĉ :J*CBBB=6)apWpXA =bo!..NcL iA+>&&("::7o{|?0lpZjTdֶKϐ4:vĮ{HNI%)9WuK`2+SR ^z{yCvv6^ޥ:ETA(*[[`)PҰRjX>6mǏJÆ dp 7T=133#::'OkNj֬ɔSUbMMM?. dd2|}gԘF˧GVYxݢE &yyy_/ڣGŋ.{cii% + QqJoffK Z9C_@cTE_om۶#??=w3u ߰UUkkk c>}N\|Ye{Ν7ww%6&{(YF9 ={!''ݻv7S>]|~39w3E;^FAAܼy-7ӯ񕤘kn*GD¢g̘ZPLddb"""%""%1Lg~0v.]<>nܸAJ{ye!%6)ewƢ$;ݸ[ppCVu J8WnNQqݟN HlhZb;Ø8a...>e~e%'_,+%M+br͝9,[OOOS֭jǥ)cG剕Q1Ԯ]k׮õڌkV]I^kݝh;uDʮʢT#pssSN!^4ٳgv͚ˬ/T>32ҴIIT*{kjg1~Eߟ6iT>sssoؠdUXm'QTiˬgUG$BbyKp9-v-'L6ѣXէ.t~~>S}|4V͛Oҙf=8h999̞%SFؾcmڶE*baa{yQᅬuETʎ0̝Kf͐JTP͚1wgG||<3O;`_&. $*}.^ ;jӪȘŅ߿;\NVVXH^^d;. Y:. 5?M_Β%qӛv%~ )&Ҽ'2p7Rm VQnQ'A,qR|~@ޓ ]Tyis7# .9d8jj,YD"y֧{qQ"g 0@m'ڭr;f ugcc5rƙI51iÕSRYիWٰarڵk=_ܑDFF໅?^w^geƐ\DD͖`XYYm6F>8x VVV*I8 `tet?rϧI|ѾJ1w-Z;M7LWK cD"a%:A( }}iӶ-Kq᷋gرոӥKo>qуSp;-cǏ3@ i?vplll tBCcccC}DDD(]ӏ#.~?.θqX'QF[r )6Ҽ'%Q\WW6l| @ll IIuY棨8 P.tDM1hOH ϥLpInJ4ZÇP̝3'OTڵmm522Ҹ #d.)_}Qf l9sV4YPP zpűujޠAu]9/A&1m6m[ f3<΁ *//Knn8ԩCڼۭ˖jh± g*ZoAhPhӺ5_͟σTl|gPv{Uoooj׮95bUP3򈉎Kykц y 4`-4nTo7);0LJHR2G}{r{2o|jժ)̛v]NϟƍgHٴ1<֎._1{2m!۔BCC{D~DW=As33y`bBXq/ɯqqʻnڸI8C?cGXr5jO'+cqc>t:/$i̙%1p -<< ߙ3wE?~Ǐ+q|FVu3ş: s ΝL__ R-fg*vdPwrssrsK\|cG}b+m &3#C-V&IPYte9zFe8xP yt~ѣG4n;;;ߧq#Ju)Ыj7^z7( 6͛70ygT^xx 3KdH %]wK:e-.ޝ;wN:D"a`ԩS~^D FW68~Vuʦի_-1mCSRR%)9/oonW&X%o߾O\]bq0WeԩS\qSc5kVAŊ\:iw 3< |L&c,Vkzy&}]AA7`5$%BT\ӧO3,0tqp!\Qaskp0aa;[ב[x;rqڶkGBBnM.]bݤyX~[mۉ'g]n޼ @6mc]>tgccJΝ;899*^+|p!س{7oٌx7ٷw/nBCD%j/Yfc$ ==IMI!* qqq$$$0ӳ܎'Aʅ*+`%5ĠJjJW%M6%++}-`…8;;cmmLߙ$&Ti׮=+W$%Reo wQ4MfV֭k7*VCC]E}=UbaaA6mشy5ҵ+*wKRҥKJ h 2kkk:ԝaZ?xѪU+,,,hݺ5-R _k׭o߾TT sss7oڵߧ@.](3aa; \sQۮԡI>|X~=dggsI~ؘi'Řm۸i a ԩm5kx&7^dgg3p >w9Ι hyCyG}RL`7n\ךnrr2:tPYߡcGXuۻWO֯z?;RYO>`i`+Ç9tbqϿ=GϞgLCqS*y*^i_n:۝qڵ֭o6(U<6V+++ڵo֟VФ^m׎{gnڵoSR FSLj b=MUhԄ-&Thܻ#44D„2t(*U"6&2+{lRO-Z\|9>{-,B\\ʶ%K{׮Wa5ƝG1r7iӆ+WEf͚e. \3&0ryef>c 6lZLtt4oޜJ*)?mm\H133~. ܹs:ӨUIEfs+Z 4$KWO=ۍŐy.MlI)WYv!;;o/R Bek ,*ZXJ kqǦMx1]]iذ! .4ոѣ'fffDGG?pIvI͚52uJ)ǗҥL<L ]FuN@9Ei2\p'zo:[1%?\xpbyD,GmSܬpvnuGGGܦQZ[_1LŭZӧ!X|1N9x.v>V[%mi|a-ZP+ivD eHJy64yxo`,--_hކ'A4_fff1!ĠnQ3TPPuk]>=OZ;oжm;ٳ{7>S`aa ZUῶ,1gĕ˗U+CZWww v~3}ٴi#곇/TZm!!T}Rr ?~̦Mٽ{o„R/;ӗ{CNNwo|졻Yfr9󉏏g};V^FAAܼy-7ӯ3K$ 1cjULKa=nJɓ'$&&h׮4=Xx1ŋՙ|SޅrꔩSl7Cʦ!ِƆۤަbŊ/<CH.vޠn%PZ?2 ?+oqO'xX@E д0]3)*{;w1q\\\8}&Je8KO:74hYW0KVvŊ̛;sssY|jqSN[ՎKSǎ,ҋ IDAT+++c]6>5ZfS엛ː!;{Vܜ]b lm4_ [fϞ;sʬE;jNLL:u"teeeenj)/ٳ-(_Ϧkڵ?Zwiڤ $JRk8a;wOaeeE[o3?x_cyٸiux{{=c7~»[qa-[t5Fq -!U}c_msA(\,e5999gee8\&NTk3zhƲqeEǍys璟T&?GDDs٣gOľ{=˟[ogܼqCR]v|2vIbb"yyyD?ח{bqƏÇ[ x{B'JFP*¸y ĉJͮjժ_|ɓ'J0oz~-X}c GFF899ѱcG<ԩSd2ڶm+hf3~޺T*Z[өsgg)CJcӏRfM{z2mtٳKkߧRʴiڴmk׷l‹'ZA0zÇ*z.t?΀R,Ts5!aÆ==&e0`1$'%)eef$BmYw4Š%>!nջg˼7h c5x5N<ɭ[Z㒓3C99R=áCF*7hۦ5ujխn ŷ۷Z5k`g[jq>O>C\:3w<Ѵ'<.]»ݺP6ujnn,[r^d>xuhP>>S}{( DE֭j|>twuE*Օ>>C+޿ySV-LMMgTibÆ|v7/..#Gдi3Fr[VVnn}HMy> gG)((wLb>cGXr5jO'?2 By0T_|˗/qQB\YYY 8t庭dODXIIX,GAlllTO8o򺈏GѸI4撔ĊfΟ?@^Ub{ͷ|0lp6oķ~ɟQzu/]6CP0zڡ};RRRh޼9sͣ}*ۏ;qJ:g]];wL:u D֭888ЩS'XD FW68~Vu2x0˶^/BnnZO?Hff&:t$5cQ':: KKK=K,!5%*U~SHNIeTRkוQxx8GAA3|}1.%%XS`{vWݠUDGGozSHJN!hj*Wӧ Z5eTC~ql[ Aݺl[ǎӶ];4vkt;w&-ο{'gRujӹSGNDF2{, 0j~wI%VZ໅ ŞݻyfԨnoɾ{w 1(ƍС\7oкMfX'ǺX**339_~@f4H${zBTHHH`gw+*N U*VJjAԔ*8=zkkkjԨ3? 22KKK4mJVV&U/>Z5[6loРATTIyKgAX[[cee XiϘ5kָ 쌵53}gxSg `Ѣ2d(X[[3tGx؎0`e_l9y$GlL26nԈm]L_~Q^u周8 `4EjT- ҰźXaxo@hwj2 OO/&MƍȻll֭[+_۷٫ZZ[~6}*N/1E˖qpTF7o]{E)fqtA Tb\"ϫWO֯zW\rmyz!ϝԔՏ_&%{z-6lXϼs%?VWVlXnٸ8gڵ֭oT'i\J9u֬X@9KAQ!zE~~> G]lgUQO^m׎{gnڵoSR" FSLj`qUhԄ-&TũO7V4ݻw$ &NdСTTؘ4Sb9mڴU355xgT1ACi=bo!..Nk\;&,Tiq4EQмys⬭ԩ36[+-ʯVZ$kvА.^Q~}t{I&M4z{{{Rz~Ν3(wrJ*իK7999dggmP~/\lmTBEKKa-N bܿCi&?~LwWW6l%Ço+65y͚5z٘ݻvAW^Qwqq4)8X?=m?rz-Z(ו4"@JC~$VM'HVc<KKK,--yo_Y FW/~333昐t_br7ǤT!?ȃpҏc]>=OZ[[Ν7ww%6&{(YFui0yϏݻv), xQ+-'f8::q e=䐓])uEw>;w|tߢƎ?g!!!QPP@nn.7odfC|%)&jڵ<8pwy < 22~@=VW~},^LDDDDDdb@u7ߔw:e*n%lg*Kb4FӧQw ;l'S>1v̯lllHIMJm*V+ n7.֭$вUk Ο۷prrԸE\ed<,"h=mVSڭ/tܙ;Ø8a...>rǭ~e%ʧ_vfܫ]6iii׊Y\֭ٵ{`S֭ji:cG剕Q1Ԯ]kJ[AxUlNLL:u"teeeen*ӑ)/ٳXfMeVĿץYWfdqM`nnN$iKڿJժNF||CQgǏxfff-w}ψcQUvS8a;wwq"孷.QG$BbyKp9-v-ʥ:~x999x{y &NT0zh6רQ#AmJXXXDD`cmm9BBW4k&RTJM/ٽgZ D߿?VVV:GϞ 4fR rRaa̙;͚!JPM5cy*&M>憕UTarU #l.DZ077B 4nܘcrzSN!hojQ̰IӦ|dN:Ri2F~׬e/ __VVg^zCU155Jժ݇{4+vӿT,c8zZ `̙; `naA*U0p ѫo"ZA0zÇ*mA^MӦe ӦO^>$B!*M Biq_Gv3wQ׸ -N ]i[233yM'"@"A"`bb)O3ss wq'̘>#}4t˓3Z!\\m_qXj͌ٻ~:V?{I'r Ru/^9s[8ԩ}-Zlp}lNVה|_J*c@y]d1n}zSζsss X;Zao_wZ" `!yyyRYcǎјNi}Xh_4nkp'A-N2 sssR)&&&JʓD"Ą'<~بe/ -ʭOoѣD?κ0`0v2jpwTT>}; kkk.dUPs)tˣjRSSIMMe]\!Cl?yRpڮݺ_S*@ +_$( Wa2vo=Gvv611D%87j1VVVl۶Fނ999'A,c%RҤxm" 11D ʷ6m۲4p~H?9}&;QXX[ؿO?|\{3NK 8%񥧧o^zo-,,ٳ{毿z%-[cbIKC4"#O1'O_t0*J]^(@Fǩ[;Fxx8666nvZ:۱!|>"""Jܿe.ɝ;w _KS 6 ?1vƐ\ɁXN_ ]YfՓH$)䙘|Ȕ)QNuIII0}?wvTggg3o\yZ5_ *O:wLAA{v)˖r8 vG2* QQgtmeQ*/_˗8v(w`nn^b4hٻg6nd*[l&''~\I4ߋǎ0nxewղxDv\p'>9gwJ)w|N8'7z H&Lk\sˋ\Xb9TʣGhܤ vvvZvMա};RRRh޼9sͣ}j1K;a^oOKd >}Gݺ=1DRO;wN:D"a`ԩS}D FW'),,Db"!N呗2x{Y'(eTC~qUӺt;w&- lkp0aa;[ב[x;rqڶkGBB Ú5bŊbq;?p~_Żo"::7xk֐BRr AWSreN>MP*=u֪ h.((`5LlH[|o7oкMfX'ǺXIH\;8Q)?|[I#*cVi\|8qk.˦h S۞Ν:r"2ٳ?ga@J܉'nshqyyy>t(.o~ܹs'''׊ҧ$%bܹIӦMu+339_~@f4H${zBTHHH`J"*N ]ٞ$J*TZN*U^wQU_w$@vD6ATPpCEqVK.Zm*k]j]Z՟AAQE IDATe 1KYd fQ<1s=sI3siob"IIHF6|2 y~r0`ZiZaa!y)**3f,_?_O k~GOILLN/IX|gqoL~3RYf@`{}gLӬTs =eGLSu姢_mJJJ"#:<.\Oir=еkW~}oi%u֍wzGOᲦH4*;9|䩦y|bv!C_S^y%r΀xyRپ)PeDsM^~XOыf">>A{qUG ̙1c ge1h`:uʨW''it=0pSM1ݻ(((#>JKK?OqqopԘM|^}|Ȑ t _p9;m۶q}G/j?r0-qICMABBC9VW_`0H>}HJJ2o4QvڡC*_4ڴi U|bɓ~vvvڶI4 ض;9~1q1w)q&0 >>f͚B|\<P0H(磰ASǎoL,2/rJWE5 xrw)ٳ>#Z/ᄃɞ{T2iXSO?M7zoY>zianXs[Tw*../?y`~m;wЫiU歎? va9m.TuVZ@jjġշo_fRygQvk&l&m1c#..+ƌ95'i2 ,^/]Bn՚$'<ÉeG^^ڵw[Xb@˗Q[nq3evE0yf~-."wl2~qӍ6''hѢJƎ {ӧS\\Lqq1Y~˗gccQٓ/ٴiӆW_]ϵGa<|-5ֽP(Ė-[=e 4(ݯpUviߋe?׏~[B뮻sFyp8"Dxs=7uxr5W3k,G(ȑ#̝; AQs*oXS?.\Hqq1>/;n_nMbز ?ϗ_~.kRח_DzMD;zǽ0rV}׵yy[IOoO~WL"r}b;wSN?Q;wORRiFnkW\\޽{ILLd˖- 0E5nփ2s+ U pEEX6j & puF-LU|>;Cu6mT~U>&p=)5~R*||UOgGѻwͣ^"m۶̝7al=~?{W^y^9: \Mjث#W"+CVʡUVzwMc-Emgҭ[7G=p:lZixXS5mժm7ncs5sOMtIDݎtFnxka`&iG>}NjROᢋ.">>d~~Lz埍4arӦMN'ݻs-ge8N3% 'ҳW/n7 :w}7ߓ2+Jv:m>Xd~C^x+}E߾e%%%_oʐ:yҥ NdF_v~6;I ?͛7'>>/U&n;״A9%o]~9>i@YӧC7 /e }lbLTI=|,7tٓヌ F>/X˲83tO>K/%9%Izz:s4Vz5xA#}>_'ױX&RFGDqڵk^'(;ߺ{r7 Bn~=}=L8d#ɉΛ6mbC׿^/j3_pҥqPNᅬw~?*7g1'' ;1PHf!TD~,ȑ#x<ix72mg)UƠFaTKD`0H\\\?7^N<[P,"ze>n[ʈQvF':(q':(q':4FLe  ݮYDމS0IJ,:tDrrJyzֳ3m[6æYԡ^B}`!JJ;.9μDz>˗bvd$"""d+q**.KA'Cp8tM$%&DDDD'4),($55b,:q  HMK#'g%/6ƋN'Ϗò,%N"?p>_)>48ԠJ~Lu]w#1] DDDDȕ85]^l6n7͚%ѦM[222m4FCbEDDDѰTCb&%%%g^֮]CVN,aACziDA#N?c^ %N=o .dԨ q\ l~~lZ""""QiSƊE62 СCڶm˼y8|06mGپ}۶qa kێnݻt:k#?HiӦF~ꪫFyHt8#N U\R\&,mv'>FvnݻdbK#Ӗ-[ʎ;+/**b ٻs9JR_][ mGHt62Nk 2`(D("|n.'^ː!CNjF)e6Dlݶ;v@N#-v#GY~=zX3f YYY3R[CbHt>8.7˴(,,,?f0-@ @iI)@b.7nݎa'`L,{t뾦m䰗mP(m6@r摺͒1p@>SvM=շ޿""""p'Hd@@ @0f؈t:q:vl6PTe9r^qqq6k#N#WCԗeyj=GD~,"--xl/FDDD:J|>?@, R$C#P""""RUG)'Nedt*\]١Cxb7ÇaYyy[k,CꉈԭaSOS >}:٬YÇp8HЁpر۷퟈uP>:gd%/ÉJu1W,{ΞQezMr|(qK<┳epzwjժJ@ ׳az}]6oRxOQq V7~+͟?ɓ'saeY5,M.qT9]miW6bߪ]6o2 Cpu~ymҺukn ;VZ عs˗-eӚ|bO`gW_SҰ^ZV٣|/epy@cs(*ӻk\=F}0ukߞM%55-2ppJΜҥ3]w]XpoN̲ٓ!CTQy feyfLӤO3[1|N96mTʏ#mҥKmgM"s]R6pᅣ뮻HLL~Y+عcˢEp8\tEu^˃>X:hh...^O?c=n9_ψ#j4""""ȌUĔAv#Gh] #aaכ@qq ]vV-jmn䫯ge̘1QӵkN9Ӫ۸C} ɂ m7\jj⫮N˲x\Gtdfv:@~~>_~{T~3gΜZjSTm9ٳgWcs7}ソf֬Y5Pat9|lpT]J^Vӷ߀)"""r2}b;wS1נç5aݺwNCִnӒL߷ =zvpLuV˓k׭ώ) /] ^{J]o& .$!!e%fʔLF^pAV^]Y4mذ12 #˲x?3o˓^a^>̢_lܸI&պ^}UC:u|7ԹX1[v-o6?''HaN}qVL: GjԭaS#v;%A8_> f :-,( YRLI֭0q+V,Tkh}/\|WWV?g s#&zq8ՓO?u4g<>qzI30aQ/G,>qM8t9OСC7w}6oiﴴ 7^g媕:/QHݚ5N`Á/`2n "mv|kI|:&&r(?ÇU,PoN&{z6y[(--L@}}G^jSK /,|cݻk];v0pJrYVMy}>3Sv$PRR>K'L=ܹs;w./:tॗ^{5= E."""&1a6L+TVf;:?(g` B@ξz*/f\qQO3yjtMױeѮuBPU,kR OTv-} 3yhYt | ۷oGaԩuS'CGDDDD$'V6*Yfsb،P+ݠ3``k[%\ŋy6l(Gj!9v6^ȑ>4gdtfݺ̙3ѣG؇㡴Rv$luUګX 4Juڕ\ϘQvtl’K9{H%KZh9qW~cU<} ־n7#F gĈz 6kVٮa'4!>̷beMlݺ nWphp8p8u{Ř1ѓ]v2Lɜ®]y233w yJJN}s]\.vc=V2[vO?tʕ+{"t W^m۶2aĨ%fXd iF]?;︃,v@G^^^:7u;|p =񉨖cڪ>K߿v-ZDqq1EEE|-ևԭaGQ.-T|.Z>fTtpt﹛ի0 5 5l0>sȴs=Jg?c|Ǐ^1W]ɚukxwyᇫ8nV>h&۷o뮋>]vֹsly}㮮lby4@,}/\ T6rFy)mNQokZLcK@*KtDw-y9s&f}ڵ8rNv3.H['L0`\NF8? <|kp+;0#;yyvN;4ƏE ={xT??ѲA #XŒK8rHх|>)SjJfb̘Zofxͷx/믿rqȑ IDATs| #"ѱl$xd6h"%M"""""r5IDDDDD)WdۂlxDr:lٲ]ߡ&!l6qqV\IJJ @5޽{ӡclVɷqFrssHNI*qE#w=la׋jD8K 55ݞHVfvܜƎKD3C\|TQ8Ů`(вLB!O Ѿm;NS~"4H8Hl>*-"М/ [^ݻvZ^ѭ[7nf.\ޒw\gIDDD.:tRE~Y;1! ~i޼yɬY(((`1,""""ҘxIySO6LDRcz%z`4BN?f˲Xa,!N oKTnZ֭[˼yx7U3gNbYDDDD15hzzD7Iir1 AwOO7=Gu7?]t%{*eՁ.9\gnгϮTLgо}:/OzWz>0~qF&MeYgŊo]ԩӸp(,bÆ7lyXot5k7V\ʕxHJJ믿f7,ڵky]i+!""""uӨz'п˟>w5wa ĕR-c+++,VHULDO=k׽zG4<ݻBݞ<3l~ <iii޽q( W3g0a.HGcZ>zm8q"f,14&]tmv,{[2#o',H~Z5[E'w#ZPu\\^ZU?|c8ݻ8a"AΝܹsy饗С/ݻw<11m)iU?b[l23ϬRK- E.""" w]wEż%x<ǑD.!(Ćg(HĎ#un:~?sᡇ{~Ϳ{N;-R'e1a̛7EҥKOؾ};<SN4OMV{zaEnu,Q2DDDD6nt3 3h. E3^Ko픮 fVZs.$ٛE-trE=qydee|>dܸqX/oEQ\\LQQ_|v=_Rf,^4#.d'S\\OL`Kk]ĬG[@CCԃ7[c5+]3."O+Jq`3b^:N~nVs >-Z0+Yn .?pm-\ T6rH_g~G^oy|rU8p ?*WDGJDDD$: ]_$7Ko M 8x ]n[pz>Y3rHf6‹?2bLªU+9x0Fzz: 1c*RcɒҪUk.bH_a,b%9r$^㭷⣏>fk^aбS'Fn QujXhc(i]DYML ;v䂑(,,2ۏ֑v= ,$/cξ,(^2MO0rX`Hz|lpT]J^Vӷ߀Hf2vENcaG^|>͛7o.Pyp8Ox"""""rE4ZH;aH5n#/o NN!s:lٲAl|faʕq{#69N>?VЦuKl6%O""""5Wz/Yݻ7:va|7n$77^'Z'C-999|ƎKDRSSIKk9ለ4iJl6^\n')--mD8x۶a3l8 3ȏZ>-B!?}"7v\"r%%%ѻX0';$&^SQq]t4C1 `&63ؒĤHsd&geZoMňT^eaYʜD~>?rJDDDDjzJe ǥ4~J4H8H}XX0ذojq(q8 A@!\6 a`3(( '߼e @^M5.PtBV笠T0lNiV(6[ HDDDDfYz| {(((P3PJ_epx8 Tvgt;TZg3$eqJ.ҥKYYrø{уG_B#:>=zpj׮EG_:StїEʊ8kWz{=U/}>+t4zWϞt4_ ?oާ}?h&ӳ>dwkl33ΞAGtx<oϟY|9&M`3tRL$=;vlgٲwprrr"c7u'O~KЬY3&L#9L0ɓ~?/Gs{[Uڕ@aa!Gl4`8\.WjTyrsFΝ#:o`\E0x)@|`,+DNSAgұcGVYæ͛ҥ k֬\GF*':LyzޫWOy6O?|U99XX,^~[.]ʹGηFDzofϜ K#/=Ӳxn/ĉ>lzޛ'<έR]i8ۍam}ust8Ա~\L)hw=~0 ði !_!f`ᬵkg~3s}W~۔__vcݻ#n'oXx1-[K./O>ɒ%KN~b7敏7|*?Ӗ-[صs'Tw@Uڕ;h4hpzzHLLĕ O`ٺt,xp)~ |BR UW^b挙Iaa!3K.ñ۬.@ R7!!nݺk.nʺu:tCa͚5ڵ;wЭ[7^7kߪ4G|舜HTt vpy$J5˗aFjX6Ხ]38kFYf :irYC, !+k:v}S~:edaz͝˅]TΗ_~ @FFg,ˢ}lruV޲˫_2~DDDD#N'tpzC%6;x>@ٜ}Iy!>?vffʮ[;v~wqYYY;><2337n\6~a re1!S`@Qc]~]'ɬO(..?'їbY{OLȷ\GcxH88:'J.x CJ%D$qI^&<ܵLZgjݞ9h:t? йs}qpdͺ5λ<5_ʮt֝T, %5ʆ~M71oDz0.idYFbpF, ɂXF#Dʏ˰0,#H|Y בnn*)?Qs~+G)h`+,kp`,8#,"(ߖFxTǖrf\1~O= 1F\쏜)vq̕cH#+n*M1vt{Ÿ͕Whpyx֯$GwyS<2TZir±V^*w𧡁Cdp:g0*HhނvѦWs<OِQ[{Xj´?>GF )SXj%cHOOg\1fL͓霑<Ri!Cذ~=;w&yrEy}k[oG}ּ< àcN})7xu[oSyKp89r$͛KbbϺİ~ LًJPϨ{51"(k+(8G^U\J\ʿGS'jP*W1UY>|UkSG5թP^Z3&jݪ Ia_6%RވGP˗*_:UBydH+Q^1:ʫÊq[JdU*=&֚WT[=~UĴu ;v䂑(,,2ۏȑ#8]..ݮ,,8p oIl$x|>{6u&4'"--fIIJJ{oV)((`G3y9rINDDDD~,}ŗ|ŗU{5\}"zqmmY ZEI/̐!g$=7| :NϺ8Nlٌݮ""""'49p`?{|#='N Ϝ9ӦuKRSӰٔ@T'Sl6^>5޽{ӡcG7n$77^&Z| ʎ:>8HqIMDRSSHKkכIDDDfvܜƎKD3C\|}`Y&'abR<v=6t'.]bALSIӉdX;f%oII1ϯEDDDDN4),($-5 ˤ,2=N"--‚BLӌjU#N"""""'i|~XN; >4cQމe V0Cfl6COՀĩh:\-[LKv/oF\XNm=4>`GɁ ӛ@\j* Z`s9 ADDDD*7Yiֆմڴ4W_%ӯE=n; 2}tYz5pޡ ઱c۷oCap'3 PTDXqhoޥ3mJj$w3!Aɓ'ӧsw0l~wmZp)x_t<zCp_=ϯUVU*lX yK?ScJ,߸s:t?mэ~p.~u/%ֳ;^i{#F_̩3UWDDDD1Ś8mZKKt2 _IW^xV?$[R f9iY&v Fnn.[{fذshժP;w|R}0ژ8U )ڻk ).TT~1}&_~5r};.]$""""?URdnIC#孜.Nx-$8;1(;``@nW}}0ukߞM%55-2ppJΜҥ3]w]T(dg$/TFFgrƏLb^x>3݃O>"^,2ڵk(hӺ ^8Ĩ_cS0HɁ옷Y~B`L `̤ysփ-tHDDDD~b̛Hkۖ_N>ny+, ~{f؀ 5Lx w||}h&>RRb+,>oKTnZ֭[˼yx7p:K ^]y7nK/nҐ]/| v;{w}w|64M6i٢Æ ? XRR›d߿EݹjU5,,:u*_|%;v == .8cp$5]U]y죏fʤ2o< B!gMٟ}LӤG\{՜u֐FY~N}Gkщk_|=kVDZwd[ۻ(}߹1 rje%ѣbu+^ie^zHۦT;;*^PVZyA˸9!E(TRlA]ZZ;?y~xC}ܹ}O/F~V1rd#Gj1<S1?Bi wެ[6v@Xz꩚wFll, _ayNM&֨6l}-[m۶;6:7o",<{\l6>?kF#񤥥>nn"&䔚fSdf")){׿. ++V\rssIOKg嵂'g-]'ul6('k7  dB!AKQWoJ$ض%n^h w𠴤jwC53 ^G}DB^xw"ܹ399yu>tDڶaYV%/֯_ϙ3gغe+ӦMoO`Μ90\4rssپm;w&++ ׯ_Uo%6v-ߝ>ݻ5Rnn.V߿ݞ2N͍Y3g<`nn:.\!>~{_!B8[NJҸ:7U_ UAwkSOеmk't!--ǿf̘N־ $%%o9AFF:G!??Hvгt*nC9p}&iٲ%˖/Gm+" VˤIpr~uNZ k׮h4u7"=x-~ ZhZK'xw8vX=HUnj vEvv6]t!*: Ĥ$͎}jgԩ#_O>S2cchZ/3a„\ڷ'/74lzthߡV[&ҒU\ԡ}.^ĉ 2e:uj !Bpj똦(/,U t{J//VS更pkJw}f˖8pÇnݺF];ѣ|F̧}( ؑQF2yd4j5T.߲u+ܽs6m2bpfΚYޢB||<in(ATҾ}{ØPXqҺjY#//ŋX,< Dj{| &?;֮%22ĮSv1aѢEz UVX,~' qqqyq‹wf$PU( ǚ ~N0也ߔp!?)..f͚c]KJt\dm,YI/B!c:ƢOG 3^^5(;vU1ZB{"Tm8܏Z&443gԹhxc1ӗ>}#00@cϯUbATrӧM#<" &NHbb"FfMAA)**Uva\!!a/˖-kTdgԹ?p`Ǔg]z0nܸC…I`ϞԳgرqwebB!?˫NEFRkP7n),+JֳqFf̘Ayy76S܄'kcװ~N 35uϙ3ۿsgQZZRח :VYEB^ wܥukoBbpqq!&f9w&1):Yvܐ2^h]C1Wܰ!je˖{+^ROKlB!t>>ͶDe0\VOYgnGLܺ>>͵>(U*ݹsv 4 %W e fOǻGwbU!Bf61t>>>T޻kwE*/]ڹ5$R)jtz=mp[TVCݡb͛M*J3̣Mzj !B[T*\1>dBB. & ! εQT;s]GTR]g?cmw?>(*.B!ĿR;:7G&/7 ẘsCݽQS[nߦ2p==~jZ_Z=zzprL!BEV;wrZ1ׯߠDsӵU?׷ݽENPR$I8 v;lWzc zLQFt:]ؠ( VJ,Vkٽuai٢%ڶfʕ8+'O{^ Aw %.Ve"JepD ]w"!)V k} Yfv7 k7sTԶ\m@.BZt(._r*\i,KT ф^GVawPQQAaQ!E8 }֗ʪUn:R h2S3E\E'N#,ְ%zG.E㋶>P$ѠFr؜[LKM%==ͨwR2=v @P(x~V[#WrHs* Iܝ@c&o@ /|JHsg;:dYz,}1cCe˖6p9[---}2}t 222:+1c}%--F6B&:*FhOBBxeU hjAQ6+IIzHLH@ӹ}Vk$-7!)1Tb(mwDt:v)t s8m9JJR͇%Cw_ݑe. ^%ZUߦ4x$IE$׷) Ut6T?\(\8LNExNg+]k"NTFRRRHIIAAQHII{L4=:>nltzt::h:u-B&M=7EQHMMo}DEE˻7Y/IGlE;02ՏqFt88ë&)))T[ yeIɌ.W`2p±xb:jvnma˱ːǑ8J/NxPdP vNU˖LXV**+0-X-, 6 Q#NT媛Aoh4b42ӛ$I4oޜ\ΕF@PQD"T)0CjS.Q}>@xOT/ rw9i 'O]ON-#,bOۑe FYÙpn06l999xȠngU=( iii 0.ty'ѽ{@B r}NKKcْ=ÚU+ԱW^Ϛ?QYVJjj{;h׮-O|׮[׮VkՏ?p|ڪ)<{Wȡ><`}6)#Ж>ղBO櫞Wuסz3VDz¹yTxν @rrۙv~6 Ѷm[E^Ƒ#GPN:Tcd!99nݺp&++***]v)Ǩ8蓞bc 2?]H_CQI vlvz7M,N.p(d8y'ǭWM΀wqr3'0.v$c%r-9Z2%݅ԯd0ƣMFGCTRΧ͈pXQ9rĉk(sN>zr*Lb-73l0Mn=nYOaو#x-{%Kһo?ZAősq&3xwxٴhu ˿U~-[Һm;/^›>멙lظ?+.SV^Ɓq8۷qn56m‚|jوbƍ<<r}]"rr*0pCSyhNElL I^@ }2QQQκl6VXS,_=za0HIIX;Ynٲe\{L0e˖aM4!::K,IF+ Նmےє9oCA`-a!dD!K:Yd2yW]DI: }+|ZVkdP8sa)Co \(Eӛ/Hh"I`L@E50My6| /+, gΞl~>114ImB\bu:-[$F+.3g# O>5V|84}Oڿ_?KJx;k|甕o"/y핹ѣշEy>[Нv1\cƎeСL6>?+/ p/_c>n!I_56^}5 y P‘e|@W< Z"'P73*O rmO.YO  'IHLH`PMyq}v(//gۗkҦM5k>eo2d{!CtRƎu.x"؜%PVSSY[ztlAXQ6PΏt޳%lJ1VH pI|n'[l`U,?.DPí%9*Ad0%:Û39JU II4zZ56<:w&}Ī% '$$+9U}_\Q!gN$))B9RN{3XVV^M޽0\>f _|hM=HMM RSS8Ξ=l7(ڱT9 "kkSxsi F=يlņ`@pTTj=i)!IRFVtX1QdېihCJT2|KH=-wFJAљ$[ `c }a.e ؠl2lEQ/(4 bWTprssUuB%66B'?9ڵk߫s$$$ЬYj=o/2M3HT_|bXe @~~>M6$_IZ^&Mg^wX8|H@gX(H\lNEmƩT.\"|g@{ͫgSct*W~:SJSHJJBT$I*++=z4[fTVVCCiiiڵ EqNjYVZlIZZsNkdb+qIy3So%yIػ hBc44zAwTc; ?4%6N!،LC2DEBLkN Qo|XGj=>$\ cRJHqM > %5JJ'n(i=QRtFI%-JRv})QduGIҤsB+SRQUUtFNis+dYEhf39s˫ 5;ǁ)z%iK.駞"%9f͜o7-[:e w_Tt۷&M̬Yl6wmm8s zsdoyINJb}//Xyyr|x O=9e_Σ( _>.ͮ]._V׷}ZEu;jXVG(iպ\Cr*|}߇4yͧƩwUhT@dީ0 $%%ט/&粭EEE[vJKKݻ7%%%^ƯJqqq G[G)mgΜa۶m>X| fҳ\3t(sHBB=" _;1.jG{ąWȓ]&&H14%QJ>}dR 鴉kNkC +8Dw/?d=L)(uw:-QBTjv ΑLᨇhEBJPddd` 0KyioϥP1:шaīC+ɲx-,\Ts N7(،}iЋK;U x Oo<~*svF'QΑ|T/ν)Ř^\ bmGXrRRiѢfEɓi&>0h\ӥsϕ wVT oBƵkK֛ e`kBnm֦\2';kaG PM~?ʧ+_8ejoWDeɫ^h%%:vpWc3"!>Ν:R^V ---[ҷo_ZjELL eeeqF=JA鸸8ٳ':tpݻwcN8AiDUl3s}lNBb %El?rP6bLHtT/&{r/O{'U:%zh5qI&;h!c T/$0Ƣh|Ir7@# mఀ؜op8H Hz苬P0Ģb,* \;GJs1# N ׄӲrdGмy3V'1!Ɠb'd5mRDEE1k|gmJĩ ꟡ ݄ Nmm|LW(v::YVQT嫫"ޞ]+%9_G=}ιKN]Oʙg#Gi׶ P^^ɓ'oTTTP\\lNUQQÇ),,d WXV]a`MIlƾ3ݎ$MQR1tƲ΄De7̢?s2" [ۀd0&8#1(zl`@U8GfpX}ǟdQt`vڨ[RE>TlgeeJO8v9LeYy IhѢfKl6Pڔ:xx<&0Gv;ʙpa),*b6= {x(;FoBkgHšT,I :UNdy˒$K5J͛k"anwxMB N"9Ӵ IDAT 颒POC)M'o+HE&&$`2TTTpԩ\hTTTr)222–~˲@АQXF*j[6#5Ƒ YDT8#s(ϑH  8?R9:SlV+U/k(BɹsTVEnTEQ(++fU9!IP+k(/r}Pp_#u" S9N U:]x9x|}a|88W3+W_΁Y'y>e&j5.\{ $"'*ՑEP5x(D||}J8q-+ s R>C T3x&.Zavkv RpJAI-UEkFRZ>ȥQ j?$F@D]@ɹhUĹ$pQUµTp_V>z'j΁ nBm C >إ9ܛ$*nhQuō}??Gq m ^N>"&Gz;?/A]IwΞ![5>G_6]6N4-ǎ\grf~ѣGѫ<ܳTTTP"UkE!;7.( Tٯ{-]tvo;ѣn=Tӣ3ѹSLNǎTU՝#YbȐdgwa!ӛoǎՐ[nf68bccf3.Cۧyŝ6d0OJQA.}}7݈baFΨѣӛO>wM?>}zufcKy7tϛ7lV+[6oۧѿ?N={0{iJJr}(@aA~;z{}wJо3o߿˗/Kп?n=' >~XA׮n[6of괩ۇۦݻC@_XPSٳwuj%; ?Oݹj][ks53LSG:ٮ 'lIPe9sb0)//痟ױxr_xꩧHMM^?p//[3Ç7@QtUǨ\OΟ۶m?dW̝;qƱr*ƌnv##Go-685:* ,ddepB`۷}=t/~C?œ_r~ի_~Wb 2 ?~<׬eTԆ,Pg.W^}wdfe``j>VYˠAxTVbҁQeS8%lj69:4!B8 Gv'k׮㶩SIOO禛n>^H#~۰nxt}]pÆ g*Ob5#;k=z*?En8.h5 +`nf3&^htb|A ٵkz&**{mQ٠ZGG}Ttß4h >(=F֬^Ӧ4=ɓ'W{dSMb; !!+ǎ%cjoqͷ sNzM\?>>W^}<֮]O?dmS1c'JީS4 66.]ֵNNӦM}wtHMM#Lĉ}zwMts$$Ij;O'g8vvc?Ujkƍck;v,WzZT;oqqq[iMmx4~x0cr͸b'΍G(>פq:oΟwx;h4ՑkNAAjBvJ²(:SF:jH y-/Mut APIv;~g- i)*=ozG+ЯOVZͯBvHOO_dgweC9}4Eieddpux7;w.|J-˲sӆsG՚<)Ns5)_8gdZ(..Df̘uOJJJp8(.%%%aszzUJ'`Ĉ7nLkl]5]=O?46V'`jՒBfFOwy_{E!:&-[g>wCe硫O! W Osϑ_XɷK/]G_}폎f۶puz]U!ZEq6EhF։`m0G1|ZURaLפ:%3329|8p(יڻ8q 6+_~'**L^.]nhٲ_/_NlB塇Xn׾ݻ;UKɂs2=ϧt$tTuN( N呒Ľ߾}1Lڵ˫Luyo0t0{_$~\\'~Bsswȟ6VyH)MZ EOhe{l񲡎WkS%:kMlbSÙV'cmSꪫټe3>uVcsqwsYƏGn]Lĉ4i<&K-hѢ%:֭[}zÇɮҥ lB65\Q?;iuI+~. W^u%~ܧﺋ#Gs/K@V @N7n{I=mT{QyN*.baNfSRr2gYfY6EtR&;;#Fw=}GrrW} /N.E $&%3ctf| kjo?}zo3`qtfΜIt~a~!;o3vo5]۸qlhY.0ۦN%xQ:m 0flܴ~-c„ ϿUiws3l09\<ݛzfVYO57b?NiӦ 6Ï,( tꫮb2} /jG#ۦݻO4xC ip"GQnHA , ɨ+~a 4 ÅZ>ޥl#z\@U]5HF]6K=hm!/P (8w^#<FmBr8Nw!tPk(v :әtU]6AWyj, @ q8PB1(QIT#@ /JTUCr]#@ ӡ @ @ Mʡ@ @pQp8=zA 0cc\(@ ?{O>D}!Ic> Eq"F(@ eK?7|?,) Eg@R올Ťl@ bu?`zХK>C6o쿐s:a"$VyC@ Ag׮]{n݆"f= YB @ FuGBUG'$b;m@  Qs$aILYv-+\ @ @ID:x@ @ P$& ʓ(@ FIqq1ǎX6II>k dlÎhd]6y G1Ťl@ {JKJ0LD$Y|:v3rbQj׃X6V @ hX*+h4"ɲӡ@t(fnw`Y 1PzN@ F`0`0],u(`zNFIH!AI@ AcTs9|p5S@ AA QƀF(@ @ؐ},hU^R8F(C!@ B@Q0 @ @:zG?[iɒ%~Ӯ.EH"]t.E ^X%IR M}f,+K@ F=rxFec- eXFo(HɆKŲ@ @= p}7e/XC>"]t.EH"]_L I8CH$)[|!O@ !Of/ @ HLbś@ Apl>w;'eX6V nyn IDAT@ \(xN) @ @a;bX@ @{e].B8@  T{-@  k:9U,YĽEJ~}o j \Q{iL_c@ 1*BBkQPws@ _'b꿾,3d:2339q .dݺu!IOO祗^"11ѫğgIKKرc,X_Uj@p&WM#һwoV^ͽڵk뮻ٳgHrt:=-ڟ̜9s0|GL2~ѣGkY @ .BE -K,P}_N4hl6駟zZjŽ+3g~![lh42o<3f _=ΝcٲeZ HMMe׮]K,_믧Kzj7x^{={m{$}rWɲeXOr0n8Yp!/ ##믿ۓÇYp!7ntu+h42|p /_ΪUZ?8'OiӦlذ /\s _~%_|-B$Ə֭[U)))aL:kۙ;w{߾}xgT@矚]v-={dҥtؑ,͛/4_^gذa\uU$$$`M&>5G0/ >'Ar(ĤlA5j&M?gѢE?F=;;)SsY1cƸ}w^/`ذa 8nV$IbŊC/STTĉ9s&}?֭cРAnb]֝>`&Ly(..fȲҥK5z Nɓ5m`_0^~O>@ ⢢1bXA0~x,XOqq1ǎ_ӿx~+WңGg|ʕ^y,X޽{ٿ? .d^?<999_бcGSCuﯺu8p |9p@~gw!Cؽ{7'NO>o߾5|'l޼'NϺĐFf͈bǎ<۷/}c߾},\~yعs'|gG$9iqHIIa`uڵ+}wqK,aС :TSӾ۶mclٲ;vФI遮|  ؿ?{a…5J٧D v| A]"Iqq$4I${FF7oXfܸqѫW/~' l^z%<t>p:uro֬'NSN4k IBµ:˾2<9r: I6@nC۶m~A`a9viߒM&`>~:ubΜ9^5S{}"P;>G 2)  \Ix_)oQQХKSΜ9CVVof/<;@jp=ITcu-[{97_ԩS̛7pvFԩSU;{_ٻw*jͥK.^mֹsg=|n֭1G8K;Դo8> ۽{w j٧-O}@QFI 'M¡d˖-\} 7ndҤIХK&M䕾xb&MĨQHHHYf^y, Nbܹ<^OW9Ibp7z4i:tp_ޝDAAtkB/B]P 8Cj*MF݉k׮̚5Kٳgӿ!66'N.i߾='NdÆ cɒ%? &ʵ^˸qꫯjgzρl2NJ>}{L""Fi>x$Iq\ly[kb#[|| [kooGcy=p$iOS3z--hocl {l_L@_|S7|2ADDDDDQnsC!`/ #'l"""""2cT[|;]%O*@½ǧFĎ"ՐwN0?kҀBD~󨗏m(&CN,L(lzـ{Wnn.\hաCg͛: JKKQ__hu8DN3OSFnEKDl?d̘1*F}]G/2p磠<ۊϞO0K,-[g[K(j߱m6\tTw}K,~̙t:c ې$ Ǐn| h47|o+۷4`ڴiعs' %%* 6-ckR\\'|'MbYcl_Nj?ј;w.233ԄdT*_W;|0^~eH}a:'ƍ{-'/a+^xرcܐlwYj?'['"%%ׯG}}/0U2>ɓ'kPřI%!!RRRL QDc̙صko˪.U>+_J+(**DZj*lܸw;#"kR݆Bldgg… {Nx'aÆV+ף 8pۇrTTT@!**ʮt%^u۷GASSnܸ 6˗qet:ɓ'ꘘ|ײw^9s555裏L;}+9j?eeeڶ|r/lOD_JW~oԿȹspyٳgQZZ@?>Q?c!/ ,\d]~]^wÆ xW֭[صkΜ9#k}j$yߛĉJWb̘16"'~%WQQPe.\@ZZT*&O I_.\pN~O?wvԟ8^.bt=!!!ĉqˍ?555vo_Կokg+|'WTT'$$Dv|r?g"""'Nd|WB#(($ W^~/L۾mQr|-[]YYi׶E3~ub|'JwFq]|Ah7Br$oK//_|E`AբƍÎ;̖ygq9>I&x{{Ν;v͛zNfwg///7+_`` ͖qtuttqqq$IÍ7ST7n`׿#VԟsY}IGcc# %JСCXt)Z[[Q\\{>a+NNokg+^qQ|rʿzjaڵ4ON3>Z#w]$IN e4t)Э#Xz^/XnOOOxyyK/n߾"552AAAO:eW:^{5 :Ԯ}/1rȩ?[iiiѿhӷ.y6P DOj Q^^ ypB!++5'OĊ+܌Њ`?>t:T*ś,ѣAll,ϟoz =@NNj5/^ 7777 HOOkZRRRt|א$ -2^_k+7]ԩSX`z~~y9s&/_jTr$&&b۶mEVV"""z,>|w=QF9XVg͉'сtB"<<ܮ2bŊhll4=In|¢ELi_rGk*S\brڗUDf͗_~ wVu,/㋣DO)?J9_Y)#|iJ@۽g߫n_m-}sk gFtt48mJGll ]֮]SNI]3w7|_Jw]zǏ7ݡR I*TTL~^GKK+>cDc۞hpSa) Q?珯폆YfСCӝ9s$"%{Z|9>SZƷ~k|D4@2>qH=OFN(%V(O޾|X|9Ν;g#Az __^fn|iZQ䉈hq%Oa~ޠi' ʮK~~G:DDDDD0 5C1 ψUCz92"""""0Bu`iBɈ.={6֮]Ԙnv(ݙq%GEB|rڗ[M6 zVsʕ+/Qnn.oߎ9s:#KlgM?՟=hw$c5(mS?f$%%!00Gƕ+WPRR"}}9Yャ}˵kкD4 7Q0>oqB1vg]f:CgFM(1w\dff PTszai``[TTǏcժUظq#ܹwyEEE1sLڵ x{,3w\޽7oބFZ֭[OM6jK.ի͖8q"RRR~zכ>wFiӦaΝT*>|ش%jrOHH0呒" oo_%OD$~9g|Jۯ=k_x1JJJ駟 HLL4M(\=~ʉ_]qjDԷfo˞v <kلbڴiسgPSS{"22RqAsgϢ?uo>Lvv6.\xQUU8pfQQQXl֬Yc6>Dd?˗qet: _cc#s%w]gkkjJY:HMM1pToԯ3Ǐ}_=U o{N>ssĉ;0 -- 'O'&M?vΞ=^{ C(/t޳n\ԩS7oBCC37ph;J㷶/n߾"55Ǻzؼy3-[fvvFnFNrڗ~EWZ?헔@ 00P(..]QtVUW9aaah4}O.GǏ׭[(^^^iwW3..|xA"zX}ʓ5N‚ nTׯ:oκq)뗞3gb娮ƾ}zl?>t:T*U_El?c7o[,OɁZŋME0 ~///hZ(7o.\:deeYF¢ELmؓ-ڗڇ(ZJGG`0 ==p!?~\vEY[㌧8)q$&&b۶mEVV"""z-O.GǏZA(//GFFF\5~* t^v5j(9> P?K, h?سgFtt4򗿸:LHIIᅬǥo_} ,Jk׮ũS T׮^c wwwT*H *狕Ҋv=ϘITu}"GKعs#;X|j~mGD3OKHDvC1\o|6|8vX_DdI4p=O"r pĉ[%/>'Oy"""""" """""r'DDDDD0%HD{?u DDDDD4@ot """"H }  07e?|BDDDDD)ORK TU}  0f~P P,q!"""":ڠ$>o߁7;"""""a-Xh|'RkmoADDDDD -P8 """""qBADDDDD㄂ 9 """""r'DDDDD0N(aP8 """""qBADDDDD㄂ 9 """""r'DDDDD0N(aP8 """""qBADDDDD㄂kj@b@3DDDDD0\l޼͛7u;?7u@xzz$("""""سÇ_ÇcJ[oQFŋغu+zlg„ Xd lقj$IĬY0vXȑ#b3f ѣGʕ+t())ٳy\l߾śt:<9wLd<(..N3`~l{ß9®3ǎCll,GO>6mBzz:~,]6&Nw}ofe9::tXf &O_ײc[x1 %%_З愄޽ӟ0i$7{lS<]?ܹs{n{hkkZ6KUrODDDDlvM(PZZ?8<ׯ_*4446K²e˰fכM6 {AYYjjjw^DFFʎO<1l0bժUw^9s555裏ٸp~Gdgg3Kկh3u:tW|`?j5BBBI`4͖3gZ[['N#..쳎qmذ 0~xܺu v™3g,./Iϟ?osq% 5[N6'gΜ  PVVV:7;v0[fڵkQYYׯΞ=\zՁbxxx_DjjiB???444,nڗtu耛Ɉ mٜ ___ܾ}--- Ejjjez=jkkyf,[ aĤIݺu<==党SzII 4 F0h4ʧ4..]BBBZON~nn.-KDDDDNc k2220o<,\uuuq@R:t-–-[t&a̙X|9o>kZj,](//GFF)HLLĶmP[[,DDD޾@Vcpss}?utDDDDDy=fu֖ދ+8~JIRAR|Rz=ZZZޮ36Ҧtv >P8 """""qBADDDDD㄂6`& ]Opu,`_RzqR*sNw Wns0n|'?r%Q,Q/^>""kBrJ$&&}. MW^~G~/ɣ^"$$: gdM(`ܹ5j'ܹsåQo: gYyyyXp!֭[4֭[eYf>s@/ n-SLArr2|ICӡڔz FŋuV455c۶mtヒ%K|;`dd$f͚c"??G^1g@㳕!C0c 1bg'|8{,tYem_N!!!ELL ߿VJv_Iʧ4\\jVnn. 1uT!88ƍCff&_QYw}]&*?`{|S:>ZL/d|տE#jD?f$%%!00Gƕ+WPRRb;[l_+W_g_~IIIsQPP*_?ƍO?SNɮ?@<=O0K,-[dOg?oHJJBss3W_î|:Y ۑ_ذaYzBBM;wRRRRpa;w\޽7oބFZ֭[MӧOǦMZKb'O"664Caaih̝;hjjBrr2T*dg+LeLII1g+^xرcܐlÇ/H%ھ(h4`ƛoiׄBN;Z9#>[Xj6n܈;wwAQQSw%Qt|_lq~Ok'())~6 11QBl_9Q\>l1c>c ې$ GU>QsD˙_Gnn.Fl_'"%%ׯG}}8~X*ǝOg0#"">`\jqʔ)f5;77:>_nn144o????Oˏ9g=aݻ$c0a)O1$$l?Pv|977׬go|r{,Ç7ݻc`_b>}/۶m_|QV;pԯ|Jۇ}+?778bCu:POk1um_J򴵾OrU-j?ظ`cxxqȑFIzu;ڊKI}}Sڏ+?cܽ{ݮ_Qƨ(={Lu>=\?voWwc֞>c1o^|#0y>3~x\A 8sw Zݖ$Id ___ӿVHd6z*z= IpUSzxx8t(Ο?osQ|CBB']QQa{~>|0&N7ʎ[}Qcƌخ[֯|ΈVV?477sEC5[t|rF?Ji->Q6l+4?n®]aJo_T?"_t_!!!+#kk+GZVگaΜ9hmmEDDN8s8qm98ok#jDD"33@$_Djj Gkk"JڟoÖ… 4ONmQrqww̙3tR۰U+g|Xz5vZTVVN-I>,h4"00j=G0h4ge ۷҂PXkBcBQPP4L<4i>Ct6^{ C|D>} Z˗1||v'ھ(B !!#FŁZɭkDɩ?[Ƨ4꿗.]BBB>//꟎./t|ruqVV?׭[(^^^;GEDŕC ((tӧeODNQr/g쟄VگAף7oƲeLgםU>[.7N;CqQ mwm8pضmjkkge ̛7 .D]]sϙ-SUUez+WҺ~)9s&/_j 'ؿ?ϟNJ%:Q|O8Z=9|0RRRw.?z(jjj盞0k''QEz@Vcpss3Rh_D$?KOѱlG>EDůjM7ףODnut"quXbMO)[>㯨)?$aXfl՟¢EeODɓXb/R0Ǭ.{PGll,>裾h_WǺu:~Iz˵Wp1x{{* J%Abz]3f (l8'Yf}ןsuqBA&Z---v?O&coΜ9}Ѡ/w-挈h=z4޽a %OMMM(,,DSSeM($IBdd$f͚c"??G^7-z FŋuV455ƌ$bѸr t:JJJdoߖt)\[u7a,Y[lAuuS'k+,,ԩS`7(**;1k,Z_T\\x'Q\\ Ng9/*E#%K6m2mկNDO)O4~Ewssôi xLJi|rn'ؾ};̙t:[sNYƴl\-P IDATrzDQ"::sEffi"RgZfشiVtR^xbO?E[[hlߖV|]&N_v_DNXj6n܈;wwAQQ0m4ܹJÇZ_NΝݻw͛h4Pغu+yoh}9ET;wbկ~{ms O)%O4~E叏̙3k.6]i|"rOBB&JHBB4 rrr~x{{74¯>`}|VZ/c!99GE+d|{$lg~1qI&e 6=iĈ… ehӦMÞ={PVVݻfˬ_UUUhhhlJO< 6 Xj]WV|e˖a͚5f+g'_ܹs8<ٳ(--?Dvv6._˗/C矗egg… {ήS>[D{.6n܈tcÆ w6DVa~CSJItvo>7[Wi|βw^9s555裏L+":ۇ#G 7n ̖Q~lEE.]Ng.~]Er|V|그&Msr uׇ&?&8:::LCV#$$$ Fєa+HKKq-ڵthJ:tڊ8q,Mi|rinn񷇇 88)חSK.nhh]+!|)_yy9n޼ ш˗/W[ڟRJڟh-[]YYikB0_d̘1²(irok|VZ!!!OL0KS$g}9>a+>[{ARa0$ /q…+#Ρmijj7ܹcٳgWZ\o(++VE]]ƍ;vkkk /"554/WGGz ֢`ڵkQYYׯ.(//dz>sQ^^.{}9Zem(_||<1c LigMw|C.*ŋdZ> 96ܼy8~ݱ}[/++Qɩ_WF@a1>+UF\\ Ip H49MgϞkC}^PP4L<4i>CS/n߾"55lu!** >>>􄗗jjjdo_K.!!!f^Zl޼˖-3Ni|rW Zt_./RSSelݺ1KwSO4~E?u͛P<3x7)"FABBF,]T}[?}44 ZmkW#GDXX4uS:>그W_}NDNߏCARjt3sL,_fOypB!++IVk0/WNNj5/^ 777S+--šCh"eJ'G=zCa뻺|-ѣGM:?~-7(_DntG'?D0 ~///hZ_jJ 667=I.Qٳ}K?q:::___hZחm۶YYY~kU_T%%%HOO_ Ih"7<0Ǭ.{=o:tș]ǎPT$T* *+uJףzL1Aan< F˗/oC""" "G7|>mmm/pرWpBAD'N8R""<8 """""qBADDDDD㄂ 9 """""r'DDDDD0N(aP8 """""qBADDDDD㄂ 9 """""r'DDDDD0N(aP8 """""qBADDDDDsڄ"77__|q:3-Ξz>UG"+NP̞=gvY}]G}?-rur-lDWPKK/x7PӣmQ/=PDEEQQQ!,I&=lܿ_ֺcƌARR1zh\r:%%%wwwc֬Y?hooߔ)S'|t6୷¨QpElݺMMMضm.] ヒ%K$IBdd$f͚c"??G^[_,ʕ+m/~aa!N<cܸqDQQ 3fW_ň#o>YqY*X?9WB}g_%SN_9#77۷oǜ9sNJS?J_rud(/$ܹs((((gUVkϜ1~*`{|!oߎ$477#//_}:::d+_i_[PL:Eee%NӧOZw())~6 11a0m4ܹJÇˎoܹؽ{7n޼ FZ[ҧOM6jK.ի'ODll [\\ MFGGcܹDSSR'+G)**DZj*lܸw;#" ǎ;dq6+rhhJڧ(W>NII1PJ[?JWim1c>c ې$ G ޿Y~Wj(>lOsqJWZ>WD]>>􄗗jjjL%%%h4 D`` j5g}6ZZZt}a񅭠iiiQw}V ZS`ix>S*TDܧ;@. w<,Yn Wvwf~73DDDD H:/ vy"""""j$I5<Q.O[(YӯnWH鲅eYW )]V(ZEoZ]Zvy""""") """""  ^CADDDDD 64vԊܨOsYfÆ ށGDpn" nc6vԊpiZ\-رc!FxNBNg|"=Cg{- [K_ˍ|ݍїOKoذ3g ѣobŊXp!FXt)KQ](ABQS ]_/&"A}K6p@G?6mڄ3fO?c=8{,:v`T={&V`0BDlvfjjjNp:o^DY I Fvlf㵦 4hkYYYOt:yKxǑ\ΝV/cl۶ͧ5G+7`=GS~h}=jjj 0sLf̟??`Lį?<Ә5kV.?z-PTTc"//:u}a$IH1Gą|_VdYĂhڷC.] fVW0 4)q?~<}](㏽ӌ?o6󑙙 &7 ==ݛǓO>h1b,^OBElڴIWիj*DGGG8עwz`GO> *}`3sN,]555֭z!o;wy'?BQ<[n\>=ků5>RZM_Ik/^ ,СCx*?Nzl߾;v,֮]3.55g=Mo ;UU1ydV(TT#] 8y.^ 6<ݝ=Hi (# EshNc?b;8r`ٲe͛7-** IIIСΝ;c߾}!̊+pQw6Phx}?zi~Swv5'_UU7xosAuuu,Ip/o/cbbZ刍E^^ :;tTرOD7&˅r' v`N'TO d2AD\՚RBzׯ|>\{0˗/#..QV!1r-8~cЫW/󧤤`׮]#ָ/H/RZ":X+ѣχ ZB[ӦMnYtt4JKKqYnÞ={ n6tؑ-Dh\.' ,k`;Y!IRȅ-wիq @=z]v޽l0`@3ơ#X%%%˗{ww[`Gɲs!-- 'O HKKC^^\PPw}`61zhL<[tYݺu` ׊_k|?Pii)Q^N|j'=ߨQ`Zxegg7ZXn,X{?C=]:Cqq1,  bŋÎZwy:ra25lL2GTTW^yk#(;w"33ݻwG1a#33鈉A0k֬FK_+HƗ޽{#33g|O|ƗI&a۶mƣ>;w. XDEEfdffGBΡVZ#{nw}0F8E~\\&O 7ɓhBe,ZSN~Sb̘1HHH1c0uTdeeT8z{bϞ=ӧ['Ei<վzjL03f̀$IgLcFFy;w+V9@5V ͛( ~i'|͛7>|8&M L񑤯'5kࡇŸgÀ#~z?;v܉~۷o >}Z>„ 0k,ѣhW_}_(++CVV>sjHi}jEj*L4 +W( "TOZؼy3;غu+O?СCسgn;`'@AA-[opYL&Μ9&"f8AMeEqDDz4݈(S'O( Ν?:IDATAٷq5|Qkdۗlٲa8 [lnƍe˖b;5ۿڎ+W`eݻ7,Yu]C P:tCjj'bϞ}ExеkWyx ֭[͆WAUU%EQ?:V+֭[rvDDDDDt}a2nnσU˗qIs?BADt ")ZtO)2.'n} d S1ێlú]<9ItnC~aw9szX'JOT)<Ս3.fY"Q@4UNCw]v~)JARnE ;wi0*"cg~V63T(tþ=[1,qno{;$~B "~9]UTTW@UO(P /@(@MF&nUPHl LeȲ}5.J%"ʥ2 NEJRh)mS}n7HmZ+s㔒;%W @Qͧq,v}Fɨk%8,5558PNԬzұ@\PxU$ v9h9 *n7!POGD|~s|X.:IE|l.W]BUu ֟X lR"wfvpBQ Y;9t3b-p.(1Pl=?hmzadž=]ZtIEV( TnNr)(VP蒑%JFU.On E*D()+3;} P x)J() J j/㗎.% __ڈn15dY2o"6XXdn€ā1EhذؾF1ӈ4k_SG(Zړ"CQTȊ|?Jͽ@[ɭf!TZM-Vr?aW(r(b{nN^8o\ٰBWnuv稶JR u@O[qN8ܸСüSOė_~Q:(1غe+>{|Mc@F_Dn1u?Mxp]1} _`?SMÿs/#y͛1nx~\Z.O1\Y1j]Xv-22~?7--a@DDͅNW B 42efKzU(kQЮC_cSEqCQ!ty`QL0TȆjX-FIGq  ~#ᑔ_!-q R)Tc pч̢Eѿx% Q|$*++swx?[{Ә꫘2e 6n܈#+P ??oڴIuЯO?̛7ga;udNGmyoߎ#`4 "?K"!./е\zC `0rX~= Ej]kDD-)g+S]YYrmn7N'\N'\n7dv9ݟ*Qq/V7!c`7tvAz e#,fv& |\&Ep;od$&36s38Z wڅG~qx ։ӹ\. ?cԨ;a6_77|[yƣ&!.>L}/;~e6qBzzCcݺ+EQ<9̜={\}PTu銢v\.Ǖʄ PXPrނDikk?+]1dES:'6cSޝVʶ|2&pS>Ni j򎻐ϝGBRF(B$% wy'yWqCp`**ʐ{< Ð;xӪ]6mPRRkB_kY %%>1P3DDb-eKxiVU@vk `gx+uVN7ʂgr,vŝ_X{$cG7uE;hclhG5PpҹX';A_}*DAt$J~a6m݊/2`V"+>EQԆig}r` 1N|Kl5҆d4y]~$+ AQˤW\PϠ*ʄ[v{n3{M<)W3$ P[#Dx"VbC୘ xC(8`BbEChl6R"be+TR10wvVpcccq%ӧO cxaXpѠ蹾@KNN+ݮKϟ?iii_>=}4mيWT\AP|mt-W[1\,.F||uG8Qˣ*D~$|n7d UB( $I)z}(%lAee%>X;’Gii){=|>,>8Apǐ;pI8xÆ #"֮^*Y?4Pre֬Cee%V\]7@DD-N8j U TT%&[oPv=|< B(.jCeU23'".>.h$6kcdG8S|EgFU I ztG\\<7 Qu3xn,[yEd}kzIHHHW 13b(믿_=<>d xM> /;7]ތ9'J"$ggbܹXR-f :b\d4qK[it-W[UUѳwO<Èp""jj@R=nnϟM]nFvr:5d2m6,\҆{U9>u ۷`ٳyHOGiyOkgJyC`0ҥxf3X;&1}4dNn{aP$QDt[lEjjG aw""k$rz0&A9}B!"V كM&@via1[t9p8w>Kil(JEO+gh4gŇ>!`g]n76l؀cǎΑ#5ǘH[(ZpHj4PvXѯ_?tYwpE 58u؇ 1Vy̜9/1f}`,&?5+$=سg~aZw8~h뼵v#"jY"-u+4'-0S?M:bAuel8S =ߍ0πi9~h9̠sY5}Ix{x;M [gCYNi50X}&>[;'|oySw=)gzO;P _G A??`ikl:=ۢ>9Hִf -@l}e}G_D)vkS۷~z%mw76_w7}"H7VʪJTEဪ*pBADDDDDqL'UIENDB`luckybackup-0.5.0/manual/data/popup_ProfileExport.png0000666000175000017500000012407011176022561022327 0ustar luckybluckybPNG  IHDRz< { pHYs+ IDATx}y`]U77͜4MBZZ E  >|)(3>EQg}Q@P&LL-m!MMx{poҤ k~k} ?ئ̜%X;֎cX;֎ݹuL8W73;֎cX;֎%zlZ n'Z\T=#fs&dLHrFpggǀ=FqaʒvkH!dg2bnIN\$NJ͆ڌ!RYH٨ Kq˄}npKZ4$Mn${d?\at嚨4wǔp B4 Kl+AjƲ)b< :AN6D72ɀ$΁+ŴP.F!'(zy{HW ,4}UKTe,2;fI JtסR;E8 k.o.̹Ksi6Vi1EaeR-0R46L#+;Jq@86!.HTQ,1^@KX%ؙjbL\ F9S*'cD7 Q0^eh Jba,<@/Bpr`1 3yo EfyLsL F飌.SuK+oP[ZA6lVI)U 0PBA)6!pM_s@1dsʇ}ϺU0VT 4 J$$Ǣ:*/jT *EZhj2ƕ>iMy@D^G.kESfIg\4#J(-Na2_GsROr\i lNSfkwY?8}|6>/5S4s̲>썰"{yHGrI[dI~votV&=JtVřN|>=@a}߾tRmYh>-#2Trg"¾o]26ڼOɆBT FPZmahq#}%0Ep0Ӡv†1%p 4U!-d4goQd]0;5yąLj˂-_>8|nUiԿy( F#ˑb 7$)e3}k(3[]0 Cbj]:纀T0.cTx 䃴3h;P*8AXUx u# y IHœI)= F4,>[/ASh%ʰfk$VAJXxB⏌ț6K4X}bz,?8W hfdoj lAljtv)Ue$'5Yd 2NYQ ad- \S@5(䈧8z3ҔILDBrx9s.JK@:Z0d?ņVKT \so`Y_2>zig7f߻[<ֆ|wr #tf#HLH2c bx m%eT !L]Ztq.%̼{3ݻCVՍZ5>ZI'qA2s.-Ͽ8+Q=7Wꬪm~CWl@VXΌ>N@bԶ () _rzto_2'YC'% $縖RkqDٕˁ֗̽<@&]L/$j$: 5H D Ơ,t|C8˧Sur,xi?Vzx$[i\=&rՔ՗NU>($D SFno(δx 78BE-hMe3b1\1$$Jbڮ Pk$%tSAxH6 Fq]-1\+} JpJ`tqˁOm8NHS>h)`9Dh2=pFK>5#kJh1c aVNҮ,R\zX8\9N5sfZ dMDoW :6yg ^~zsfEqhjM`{g6ʉs9''@DHolWoZ\@Q,-̺ڰmoU=M{W%z:"PŌ wp۫7vڢ`89$+2aRL.< \{{{zs3FO^.Xyk~v';]8|hnizBClʨ?#漱gO-"64:LgΪR_T u[^+/h^hp3T,V؆;bܦƾ?W1zBmwC-q5cn|6(ULr=׷j`q%RG_9vǫS5&ҝ>Z,h^ت%m݉\4d|#LMv%ѐ/z=?9l&yCp7#{K"sp&~+ 7|^j)$zY|]Y𬹕D\󭽽J0@$~%2\*_F>&ʢ/TRҕW8 0p7Ú7QI DY = h[@!0SeT`ؑ0+"n_9ȕ:q(ΞgG2CüM!&E(+uZZx{'t 0 !1X>'EERERG *r F1p^]~ YKK_AA$e#ʛPY< ^ysoǡDhc- \|u;wn c^;kG{2n~ˁ-?aascWY;/N]Yh0yRQ<8ɠfajq`ڀ}ZC,^i{תxsX$d MOolHdr gv\ 6R3dθIê'R&cO @Y,pxu lUzȵg턏5 ˔G 7 W8W68&tA#A,aj I*4PİVa 7-A "\+V¦8`L뒔[M $5@r,Fc >0v}WQ*&PіD޹J ծ*NDTbM·S}6JSPaDq4+ItKJf/=fǯ))wӎCvrV݉ܶ~&%Qc &yWwv/_1t`lUxsc I9e}[VbXhx037lkBЛ8z;4`rA޴7 ^&Pe뇼  T,}`-Ia8^f@ 4Ld ñΧ( p6Z  ycOK_aU u!.K7ީmQۜXxl%lP- Ff leGYmdgɻΩFT",θEr IDATm-(rL4J1 "9wQoǁ9 PkqL]=JU:X,:a =ﲯٲ~ŒS DU@ p.UWImfcf} >e܃WVzWGK*~\UdtEXzٹSţP@7+'4NX޽O'O=}7e [ ; G|`Y|qŋO(-gʝՕzrO-]W9atщK7=Б䬉uSW s0yT9g\I2chꧧ(壼ե,%Lث>qѢZԒQϯnlOQE^:?eW̘;ٕL>1&՟y?G}\ui^ޗDWl)eo;ଊS㱰cĺ\80k6}@b̊c}V{rOц]7@=Җm 3xĈgpCƴ:|T(0|C%F@K@>+!9`a# *4QKLgd{nJAc |Q@e:<(o0嬜Jxj 4S9:^opXȚ=ՔMeHaDnZH j WYsFPnoJ'(̀WX\Zd\ )5T(35LucP,#ߞnݿ}̄ř;ivuw!Zr'ʹZW397dIS1z Z#=#_YtgH4ꄥ3rBJ1-gF,^]3vZizW\Y& #ǖ3ַ9Uu~}}j/ G_m欏, ־>ҝnN]>sv噳+N'RC/l߷qO_'W/Q% @6kFO9>^mЋ~5.XP=5Μ]i0ܕlhO߭mNe-&k Bi%3{\1,^><ԛm׷DCTXA57sCʚ׃[bSFE7湦iz7{yJJ ʢz$M y2:9gΚy ɣ;Ys(qsw4%&<%^7puy- +P p3gsg{ۭ}^^c@[ 9Zh5aI(TEq㜡씐TU>#w80ȘHh- 55y4>wcvʪ3]ə1, _*-Op tpLjȪ-h ǴW C Gc\e- 44?#HsRRz kUbUCvqXG:g)^4":k@v"1EQS.i}hi))43|PtwS{w_oG.5RO^vg_">&fG݃]PT"GDĴ\M)Lͤ//)XiYfʜN<{FnrKI7d9rnm^-YK. EŅT_[?qx聯֍18CN"1+(_F tas O0G{=4 P:RZpф-?HXd@6^DM>)p~,4- ڤ%"Fڊ W<ܡ}P8J-4!ø!%&U()9Qx|3Y=)Qyf  k(cj%4gdg7P x( 4Ruz^ }^m(;F}^L;c?y̅kEFu(x:hT?hnA\\WWUX&2b%LaXj5+-.LthLf  ;3 Lؒmzw&ɥA1*Β0\f5d%NkJC1kYw&r=}2z!fDD/:hbS!0C-7K-݃30ϚcY/5mo5|c5hQY:m_srrO1I s*caIKzr$<9 6 aDgq;q89R\jF2MUiC3&`(&Qiٜ=0嫊- --i$& Is!*`G܌Ob>K@_<Hw%.CkKxԈ| D,!1`!4IAii8c$nHH0lyC9%V0h5Jvd~g ]R}UCb6| W`-A*0wcL/jˌ۔䃱PiQZ*Er\KC X*YGy -3 6(K[D`dpJUh':zB`(\Nt֛Cp ܄L}pIeq: 4.CM46|f\ d}]o$8{j?AJb9ᅸ s֜;ަ0D>X$ nHXUXPP)K4+|Vc^a%p#3!QmVG=LQM)!QO#1j( | mҶbpZ0ʃjUlM O7`i# t\p)DQdv |ƹ-` BAT~4hGƍ.XTX(1pY7* F_Sb [)3o; (}̶ ҰDhVMN M + 'C(K~9RKk9P("$e3T'Jri4 #pQi0vN!M4i&3F}\/&nßL&cђHQ ߑ7]Phoaf+%w`[OvNK5˓v U|מ ހ=G㐣@>Y| m;3-\ Wuld譇 p'Hg8dֈH2`YBgZd,LqReZ--k Aeueiр zs9x ǽDxr} R@hOZ6Y$ѫ1&@0#9`6ՑR?ir.DS0y$N1\.,CBzC( !890J#dFk*/Wū̠ 1C4 @ /JT;bB)ˉNܕ@hږjY4' 9ȪLyzBptn;Pq;3Ƙ+/ԃt!h ,*ńxro:Әe`C_;c&dYʶgk$Z=!'ǨeF)6$@zЦ2g.KszA ,]5ĶA njz0zB~ [ R[ q$ `]1̘x2ͤ4PN̆M$tȅ))A)5[91̌)S+ !# S8-fs;>*AҐNNSr,0vh ̜|R.;uP4S gbH'qk GWJBpŐ+XH}[Sїjp@(ޠVJJq8A끆GkPZI]A-:eԾ\UCQ]U;eQ&> { ֍q̒>pA:2{@C` e#ؤA;ҵs\IyE.9 Ycܡ@[8jg7iZ,P/fN@ /Fސs_3fkn95,A)8?R+#t| WC(i4(xxO95+5S-7c߮ݘ鷻/>՝jӤh}xe#?R4Wf{~ԩq_p+xn :?|[[(O\uvb$fj>MB>ͱ}TEų?sݾgMGCvK)/x}I)+%LB 2yĚq{ouq !hl]V vm 婙=d3琀Wgw?&J=k8"_ G&Nij 6߇nBoK;"+vG5R0)ӈu 1;:Ghu ?B'Gt%xJ$SR Luڝ!`6ϼ}ԥe-A)Ѐ=tnA/Ө94xЫ !u|苓cM-i7R7o /Day~+.J]Fbq^P T%.|D^@CoC+w6B>.Q_[w;K7 Ӫ)Ȫ-BV"1x:H3RjᱧW6ݒ' օBAݹҤtab2//@s0thxoʀi#S|\4`h "/U\鬣*tpb8- S-X$ƣMTse u,hB^+ Ye (#L;?]ͨJ {=AB74q)xB/x:(@vtC\3uFp/1<'$owCS;(rh@&=[-Dޜn` =(0a4tu,ֱ 45YKDnI\KoQDTnR4DXH' ]g@GY$Гh!Cg,DPτՁ9do}DQΛ?U]e%`nSvcz&S^rGt9IZ %吆.aWSEӣC" `W4{" v4%qLdAг^GLa}sCS^/4u#3sդ-d]! C/8Afc>'}*Βϴ !?cK>!@Ge?.<;P,mᓻ0Xr^vyꩰ6X@?uet֎6c'뎃>:䩼-&%jț·:N[yv 2sWCSDu a04 bnXu27:I4_Z?%GN{#ޢA2A)EQ5r8/-WSeĶ<tjӱޡ+hW^0`Y_$ux:4#2_Z'*& 0)Iސ(ΰv--s>tkSa; ۤHb [J:eOWǔ-Pcy%Ώ^ц>wm!̞::آR0]JXwnpzr8/$9jr/+9WcMw>qG[s^iEG=y7I|sWp7w]uty!tP o!ą0Dq\uǶL> 1i=І3G:a Ss$c 8Vj-/oz!N8{I#83B^}VO >Q(99l IDATR5Mw a$[dRȪS+9Nr>WɫC{_=ږ[Z[FFB'Hle[Oqx;rT*UU]]ZZX;֎AZwwwG{{4|C`TRܰ@J/sex3VRo6*tD8Ltwu76T*D"MMd$9Zv nr{Ǜ900fX;֎AZ,VT\\sҒyb*apÃz!+z^t? ~qU}GՇi7CRdQQQuuuш]Trܾ_[___MMed˱vkd.F+++;::wE|zD-_͙Zad#8(&]U>:FG #Hh%i=SNM&{vkGe2銊=w׆޼uR͔ b!*j0^Ț;:::eUU@ ߞ+PVڲKfv4mqh7Ll6qOO|y{|#6٭[vk׮-[dui pcp;x㜧i˲卶}yaՔફ3Wڱq[J艼[@^:poF榏lniD"~L6 .Y$ !mF3omY0t0\gjnХQ>} _~y^p9sObg-_><~e?̳vDrooC fc55͙3@,^/2?boo\7]|dnoOwD>v?p`zXN^y(7UWZ\r%csQjFvm{pRd |o9cF2Xli] dGE,#Ԅ_??Hu_W8pZ_o(f.s꘏ͬ]5פSh4ȪP49s.hhׯyцaX̙}L^ltd߿dɒ4yppʱC$ϵ:(YQ>~e  zDC||M9?|Οt<5/ @*cgMozH1:8+I!s:kg9c*v-bE|2S-ږX,6wT* ؋/t盆@ӟ^! ,˜Pq3n #엷x[[oly ]~- ܜ1ݝ~6l]?˟\P*=<, Y3Í0vT*U]][o[#n+Wt\꫿~6G gRwz|޼yЇW?db߸ַtZZZgΜ94l3g΃>x饗.Yn>ыxC@r?6Mm"]ݝ'L8xԩSWz8w>SO=ϭ޼̙3/_Wu-]l_5t4L4I\ɝ?9묳Νp^Ǡ6?mtc}.1c yuzhq~5_ƛ8j4-ZqӦ|4tǏN>y̙3/`sk#Zϟ?{~^)z@0 cU8< ]`<8իW|~M^xiӖ-;}8xUW/}IW7O\tj5ϼu`}ݨb3g/=y[Wn>r63s9+ǃAe[:)+,8pq²ZZZ Ø?~Ii4-Օ˙V\ΘZSG8YwM'fnAg'^E-^goom~H5{;d ˇ&{ X>""`!\qOW\!F;PCoG'\xoo_bcǺOVUV[~Y__iwggy{λf͚uTNsIf$4$ºkO;4LӌD}'x+_~믻Ϗ>o;}ٲ^}U>ڵ/\3o}[g}sk|/;(UU+Wlhy}38NƏ>5}}'?Vu:~W[n[Å\{w%WֿfϚo~7W7lx|OE/7M / 0 q8On2YwV[B"X/}K]t[ouUWox/?oYhtLWʳwx'˲.b:9.XOn45fJ KRuœ._xiZ4MnHpo݈l&ihl[. .>O>TWW3KJJ\*j 9{S U8ywף_}nӣi3^W5hI'Z|@/nk4\zI _ 0P(D7`Z#{]r?/_sp֭>;sW=جٳ'?ݿw\0|>g>sTTTL2Pӡys]tn;7`(/7ƚu [/d}>'?q)9s;s|9--5ϕbrXl3zH8+Wj˖-sa0~tMMԏ.|4|3N?N}>׾U>+V^Ģ'W|qSL1Ms_| _`KKv(uwUWR`0v'ओNZb#<r tI^khTo0M+'g? a;#7( t[F.K>9[_B-ZF;jQ``sh3N̎mw7r5 k\IbR.m]wnMϬOa>F~1A jj@9CpO}SW+**`C8с۶ѣ 6l< i>]D̃W}Ocn5 \nƍ?x˫í/]TܛL&g͙DFrO}ݷ?8jf6Ϡqֱc:4ǟx#H@ <묳?>_r>S?w?'?ĉoiӦ9ب}c>+*jjk`T}}6<8<=Ɋ͘9Sh1cCCCc,O\ xP8|%w}wqGm]y睷jժp>:qi4MAsG Vy¥ɥ;Z3~ iQz_s93NR)˲rXURR"z˲,xeSۿ~GW\Ǐ_زZ 3R_6zPjgteI' @ gW6gG_   &dL<wk+9!yʪ}}UWUy0ݽw[n'?sͳP[R(G oY3~jKcyMu~uJ>ڵX̟}sϯ~Yg=˲?xmmO}zmMM> -\d߻^6_kjj3>բ_ҡ?ڹsxlq.1Y5K,ug$k˖5m|3L6믽~iO۵s׆W_[yg2qqǛ#njj2-sЊJƌ^< [leN_3ή1Dկ޽?>$NΞ;'g?]q fgWO?3LJioG=s3>L&dԦ޺;9|peJ,Yܝf^z??\P8T|k~1|;~Yfe2ǙLf֬Ywdž0Oxἱ 7'z?}Wvgc*&s0,QcGjںD"L&t&\dx7ne] ,}D" eYGk>H3EpXE~lE_Y >7kXgR9YRdFdM09',:H!=ď\q\7|{}}5qe@ 8V\Up*8:]߷u:=(ֺ[o*ukkEd 2.4!@9Px=ir玒W>{/i]Љ'96r\z>iI&cXYY?444-5>X[ϟ?oi.]t ,kkcm۶o7OTcmet wϏe˖~oktÇ-X0_.W4ꫯ  ;;i=3ڵ 7on3zt GÆEM:ؽ[7WWUo%"\FU+W-ZyvzBnSUbme~QF~&k+Ur7;g*.I |χ+T h"EӚ"jrw6<|+Âr޽K.4EQִo^ FP&Pe0-YkV1;_7TK!]N|DYxf G&J W(B;Ww*4fo!-? ^e 0DhEwz7Ra !ߨQzIѤޣGEM7t_ ;wwޗ_~YB333_~o6 k ӭ|~0`2R2_+NV1c;7J_6mUÅ*ʫ MX,v&[=xRB,۪4mccsM{{{TRu b~H\x-GtF;O!/.𙤦fex{y5jq2s{͸)r7x`YRK>90j0R~[7oعsg6n0a„K{oJY`'fݽsg޽{#ܸqcǍ#do7m_!{wPppD)fqY B++:::FDD,Z`mG(Vk.?ߧo_DV.[.薢iP`g'w*,,iZjмY3M\# RqKZnrWb7ovtt9?/<<=X٩s*{%CC tܙr…8.n333v#6mJٵk-rTٶڗ?4irСsw?`|;uSKeM>M.Wlv7F%Q-rnZL%WEi̬͛7Mw5cCZncgo/ !rB.WZyJT)jF*h"006OYoǚ𡂻g2=g8̞=Eqqq!t!000 ӳC5^|5ZHru}U7q7|Ç[v: -BRSS322o?BA׮]Bv}/wAu%5դqSSS{mtQ ܅s=0V"9۾)ӝ@˚S91,1yn1jozokO_BVVSVfҽMoiYr\TjF0 ˲ ܽ{{gΞa 8p*z5.nMڅpՓLa63 ,..o]/G5k^PyvY27i\. _g~ճW巒6w7/\hQfxEz]gbke2E @ܢq4(IIIݺuJJJJP9pec[Djj?bqԿk>ށ-NXe?9CQMQEq1kkk{̙pKu҂2;uXW%^fKܗ,m``yb)!D"8[[25e-z\>-3^f(***((X zX qJ,-4(|C&_E}(jڴiuZ||}q$Px6mF) ĭ塼<塼<xv:f7$;WDz- +PcbyybA:I~\mKq˛o{©~Ֆ -`q˗TT9bw``S?6X'Ϝ12:&f۶taڴr Ax}-øe*ܡ{6 ƿ6|劋E ֭/_u4f儐8ns:vH*(*m|F|*q[~kb?2mtXloo߿?m׭[{7q""#WFz:!$>nthW:^"Jhb+]m*ՖiZW[=*BE>/g쨲ًn֬Y ǧ>pS _VVvر7|\O *YA%srr*ﳮ}>q\\m۶F?~_:th5魫wٽ{wEVVVvvvݺu?pCZ"}CM{p_tϊ2C n~Օ+>m괟?y2J[JλܼyCa -aLvDb~~k]:jڴZzȐ'N4q֭ߏ=_wtt~+jP=?[Ma{TpBÇjha'O9|X.D"WWsU9}wڥR)'$\zr1aF>ؿL&h9jJTdK5} 2h j+H_e\Y4irС-^*߿/m֭߯]\wymk׮mڤ?ܺukBm[~Hkwފ3`@gӦNܱs]=g/*h"NS(ZBȬ~.dff5k֬if %%%%S*3xI&+9o&:uO>9CQW̙3ᵻ)Fd'>dwxveW> ,K,%HĂ.9T)ӕa|˼WXXgRSS5#Gw/$4T)myJ,+/<(??g >>>uqky/CyJ4nxuꊠ={ӥ*9L__$BeT~`4Sxw[!nxw[!nx8l=Kي-Cΰm_಄5Y=²%ƶhȞW71ִZCFb /^"`t ;-Cq ;-Cq ;-Cq ;-Cq ;-BX|elV,?ífFhto& -Cq JX gJat ?-Cq ;-Cq ;-Cq ;@\*',[VX9~5s[nM V ^TDw[!nx[ٷ`\[!nxw[!nxw[UM,Zrq ;2Ao5 4(ݚCPuU6Bq2f#X[[uG5j1[Ga ee,Nh`toMInF" dĭ90*i\Ƃ6Bqg&@4JEÛճ@V&@V7B@ܚC"u१w)-Lֿg2N Pl-?p0W"-J<x njpBYBjWq9QРSzoq ;-Cq ;- 52u)[U7-0Cq ;-Cq ;-đe[_U\%,kBzپ1/5oUx[!nxw[!nxw[!nx'4ل[8>{4l[[84(ct ;-Cq ;-3U]JԆt)j\x РsmmCu^LULw[!nx;3JX ׮`t ;-Cq ;- Kr1PCfE%xQu[!nxw[L*Ob aMhVj Р<ۯfbt ;-Cq ;-Cq ;-Cq ;-3wkZۆUUWnJrpt[uyzU_m,|P_n1hPVw IDAT[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[!nxw[U;n%Th|hI$IKV{Vh"TNXXu(~;iZˋ2_eYv>M(^yF:]6ԑղ՝qK quu+))Ѫfj.n2EE |ѫG9o>[xFYmv jY[OQNd9q˲La'ؘ1EWe]%/85А)rRi޼-GT*]k_9-Cq ;Lnry]VIllMijZZ] h͝bY6%~Fƣ2BSeg>k魹77G,m#|0LQhh4ϣt35Fvvv6;;;ggZm4nZbBΒj߾V\\]o߾egggƗ[DbƦZVTjZV[_ӖZeYn3͈[]9p`L[Z)++٩ZdZe8p̛ôF_-߬iv!p2c [5bO߾ee/_7m۶3{T*7`6//5kuG!͛.Z4r(XJ&u|tѲ˒d2g^=ǿ?3fLݴE`?K i޽zP(^iގ0>]}\9rzzzXs5P2`P$i1?sҤI}3vlrdg?xI j*nw[7D!Cu-{\n[5l*Y;HMM;_1;0ԩ²'Ϝ12:&f۶taڴr uk[[~׮]קkkΝ#=zujӺUrrі-<تe`70ځSҡC{oɓ&)Xdqa͚6iӺՖᆱW\yo/O:ڔүU@?_}z8q`۹CsoSʯmpPJJo8qcwCѤλRi6٫7ꚵk"""ڷos.'a7a®]r歑#Gm۶.ռc5MKd3gdbN3wNAAAa ;w:x5BeN?lu߬ZZ[Km\*mȮ;&Oo*YWTTTH۶mQâv~ʃ˗DFF:gFlrBHLLL\ܳ9w]ǎ-*,vƾq+V,?{>}fT԰Դ -zrssnj?35СіBw?|rssٳg=|-xB|\sg^խҌF_׍6msR~(~C*Ə?q ߹}j_uqvټysrrrll_gge1paդ Bڶ-~t„ zYyyuq;}ƌz ˷9mtt4Mݻuoղ3h#ƎKQTcGǀ9aÆyzzBZjrᄐ֭Z4ݳgOBHǏWaQQ͛77ovqgiӧb{{9nn׮oܸ;-"2_eBGnj  J$7 T:~S4ݿDv'$?%%%55o߾ѣ+jIQ(ӦőĖ-[P(4hPhvz{}??BHvb;q?%!D o߾<).ߓ-[WRR"rs1>~74((x;vl_W, hGQ|(6 K!AAAAsfNMMgtՄݻw>|X& E¼\FD LH84O5kaټܼ޽zqKS(Bkڱmf;84n\-1]Z ܴac3[l!d1e޺j)aYV>ǎL]111ӦM 5z]Fz '{ 9z-G3tyͭ`T|= ~ͱ㞀BHk]L?=%1zJJ{E[R6_pcǔuh@kҤBw۴iSw#>co;B\x{n3:Rjյ׮$'W9<&~~~Z־8ֺ%$ܿo+M .BN:uuBHDD䓂+V(ʂ۷q)Y`{vMԹZ^tItLn ,\@&]{1RRRoߦT*U*eREnֶm[[_5gZ+߁}y !7nܸs6!$+33000 @gOzz:{1qJy̙{1O<9r\.D\cv'UU Sv_*e|2ӏ\|y={,i޼y&MF{LѲ,iժFf͚#Fp իwZjڞ={JJ|ŋI5[ q+J׮]{_#### ܱ}E*+%׿L9v &eg^~SKO0WϞwe˖\gLJجiaa7P*Y$Ɇ-\nJttLNNΠAum}hHqo`AΝWjoo#G7kjJz1rO|g''-[>mjk]/[M9jB5썾}rrr:uS9::iO|JnoiL^^[~v7nz1)ɔSѺ*aR"ZܼysDD̙ۯg&|Bի't۶퉉':wԥKM6RVB-ZȽӻeU !dzo+z,ѣ&-ͱwYfŗ\;d}_:uͳ2JwnLK{ev&--_DLVhj{@$؞>NN EʑH$666VVVfˠiZ"X[[[jx9-XR͓^ICq ;-CUVjj;PD"MӸc|M nMho#KɓG"P("5밤8&aT.oߡV7'CF,5%>>k{ɓ̌G|$2׿ 0eZhxD"y`nX0L7 G%UjO]\\ 9Kۍ@LR\\]o߾egggaLQVXWr۪iZRjY-(V˲,˽ۆ0,QWr;,++s2,/q-X#F`겺;kn޼Y<2e,5y>j.GtܹMVm߶eۙ3ݟxQGKCaO߾ee/+X7m۶3{T*y9d?nN߯Asaz9|qZq޳ 1}W E5rt cg5jԈd>tС"_Kd۷P* 4#rƦ־C&n۾(`Y¾ۜ׻wXí2`rM-YPHtj֙ʔ===%Ġ#c*;Vs}{ bY6+;O?]v͂ [JJd>>>kkBH޽ VWo߹x!i9k׭MK}(gny7mxxƍO^RL{z$l܍77nX,=<<;iƍYVhbnUzHiǐI&wرpc7ze˖c;wܹswl=ܹ^r٫׮ >M6{9|0KHҦ|Sf%[#Gl۶m/&]*QCXB>cTL;w^]mРv*S*k8x:_~eѡ!GINN^nmii_5xl̙}9S̝SPPpē;w:/g`3g8dy\[^d>\uB~ڳw"#O?Xd񢅋qܹ~~~6}f''i xYf)믑ղgϞо#aI>z,SZmkk|%,Ʉ"a^N. <3Xu^^n^^^o͡B?f<~w۽[GRTjkW>}~-++ NNF{ny{~ڣV._rرB ̬,FC Vk4[^w$0r7?7vr(!!SÍ;99S}egݾuһw'6lTTO i7 EQ̙ۿھZ^ͺaQ WJJQVvUV 4%$;;yM6efff2Z3[ndRYi\=t.=ӳW윭۶Ԫ /|jKx*>h`!!!*j**$$dմ@ߌ':viU*Ubb;,Y?N8UB>|h0խMP%%%Mx74<ƭT*]v_0prQÆoc88?kۘ *qC\'8qnLeJԄ9ef3 %s˦fs/lŁ1p vl1"?NVJ[=4|wO{޼pن Cjܸq۷o?gVYnݺ'SS}ԒRo~r1{akfe zɒ%o=50B>믾ViSly5o]?$&&APTf9M]w~2̶m*ZEvsFυҧRSӦO/*,;wnYY)Eݾ|>'_;ҬW^h ryTƐjUqIIIx7oOaVgǎ>risIBAFi4fsǏϞ5+svfGɆs~~S6OgΜ3k?xu_XٵkN#]2pGQJ޸qd2k::NmRQQbkw-/"q#g8u]~V0zZ[[r\uuug$3dznxByLp O}zTի//],v[V[0:DRQQ*|lFyBoٲe;w;[A%%%)).0lG)JJzQq'ϝ;wF9y`*((idMGa 9sh4 }ŊW_xaq^^^kkVןWU74ri- (JOO{㍕z>++bk[`NBTbZtԿu5yfqƁڃ;>*\WWWggguuuuU Bܲ彪&iBs~&9}M[XXDnMG}yvf߯,,457ֲ\#;5!831)qLBK`[/_ST\O eUc<֭k&$L % c%b3g`wA[n Dҭ\.?P ${ \݉UDJtloMM>[ bMUzI$݆K&O^!3YJdzQґ 2h|lq^~V(U8)~Z7GQtDaEM󱱱^GVO>;^IT*n_-ҭEiڮ/>|ʔxB!Ç1SL%?%mmm&Oj#[Io-m@XQvR+Z| :.~2 6 Ei4G8at8aqJbǁ@ZSRr 9@Qq˲ToL& ()9/t{oBy?9k6cHx-̵I)C XCrHAk -@0Z\3#Z\>r[{H[5Pn;3ԇ1aT5`M#V7D, .[$53` &β7ekLPɕX}TƯ`ʻaB4ֆ@`)XcG f6Xh]0-<KqpHtЙ6+ Ū h`H"4*쿒PVfm8 h0+^pO7fľҺDvd鍥ɃBXyQ&OD ф[\A]`4!a|nr]6H ̸t:j'܌f<Մ谁H@˥Jg!Z+"eNh 'ʣl<J l!TM Lƣpˆ-W6 @QP/rţV8[7+녮0qgAHX"bViETe<^S奌;+dM.7'.R– R$A%72X\2!XO%T#s%cy#Hʦ |ʐpFU1bĈ@vzl>HCu e)p1J+)>NYIՠZ2b ^)+͡JI!&!@D Ahg/;f$yvhes\0@TiD[LUJ"TV*PUaތdƓF&yP^Ӡ4uԹi!Z("DA"D"Q! Q:R@ 0Mڼ(Mʱ*(VR/)G uDyS8eA1TOW&MjbJ(&Kiw9uAR^* 5 AZuA6phxhyiDM Bm"&Au 4ry\{s>|?Ĕ[Kr=SP[:@f!x08–eKfudX^h͓bb+:JB&7.^z^ֽd8 "Q4JUPyKU^V,#tPD@L;tnuׄYm~sb8(Beӹ#B^vHw8L)E0džxO#;~*<*-kZMeA@1*wDlϣISiXZ;|(Ku SP~Aܦ@AAqZp #7L=_FW'RV( AkA4Q6@ay gG8@IZQ 5iX[NMoՎ}{ %]:iZNGʚ DޝS5wf._\_az %!uEےZ pǧ*Kmt[N#,,fo  +tG8@ DZTc bb_Gd4ZA_J{}E A+., Nvˎ[|a=|t=T_XI=A`8l7;T!5`)j(xc?*YT5,ٸU8dU7b3V/<[b0/IZ: A)YxpkD(Sf!V095-a<%5LV $ RFf  d\noUu%s-_)>r'XSydxwj[{ױ- 4MQmU?o޽ȎŅeGˎv3ڽr DIW@ջ_Ǵᆲ_ZVqn') ~|OA-pBƝ6<'G t͎{aQc 0cҹEpX;Je|ؿSbf5;.9m4lݞJL .1r]{ 6{ { fLj=zB65EC m髨 -Xrk099KRQ`²BTԆ/&[h_R\jdj2-QP{f"N11zep:4PȰ_rwBGCDC/P+VPugP"P. gICT{%"PBbbhTI_yU!ueYcZiKIVh'PFx 3C4#/uՕݓ=pG^vu(LC}.[Sx6hB~y|p?!%kG9kmeq3R)|'vӦ9jW.g$ 4<'eŷv $OZ갉vIqD]C1D &=7ӿnٶR 3]nmsխLWAYΉC'mƽj .moڥyM[W%\ kvh"הܬ~yɅ=ABaw@IUp2ӸmI5f$ }܃:eIpx?4bIdc5u4Ϸy1nHdE3*Y8YRXXb@Jj^c?{71>ܸ|vJ) @M&{.0.כ@4Z[Qo6P$; zRZ"d c#A@ ^F/ @ ߎ6oA֗V|Jn?XSsn$W;P݇e:f T8i`&P 9owp:Ƀ2.ѺreR..`ڰ q$3ѓ-g5H߼jbJt\98 eաEJ QNߢGrDD &Z3Hdch'v1)0a2,o`v4z0F#uEX?Ws0@y&8r{Y Ay-쇇^T,!-MU!31D*E(ւ-CRsUW0Vd-_@1*jj%uw!ʫ= cމ]Zk8XY򺍺ҵ^ u F]-|m fiyL#IE4 |)z!5SR=$@:'L =Ib7jG 瞗wUZx‹6.N[T> Nݒڥ9|έٺ!>h)Q2Ѻeێ ؿs"Eҫ}3ꃦ gZQPְ"5V}"˟cnhմN8`RX5N2DI+]PLL|H(4\ƍx-<2or nה!daLzXBeOa'Dl"l<"ToԉyM_)6(%*P,DrJvz{p=-GnOyU'8lɭs?!+o޸ƺZwYQoU9M0jFꂽpTH}sԤĴto\i1>-gu%&2D#hep*DaČDw^I}vȱ;&Zŵ)n?X}*8,'2#*~`s3}VV:dfkBa>ǜN=pit͎+Y]t:h C uWPnm:d]UUֆ|WyUIe#R But;B[o !:!ȈsRhm$@IED͐D'z %`KMBxYC'2JSݲAZf )XFb5غkPEa޻]B"E %( Zeo\hQaBbp~o΅S x}sxa-UV$"ǎJz# d"knDٗ(t<@"ZheByXb),Mx<'5uXY^"U)ef#w($+62P~LT(=4om S1TXl N#87q;A A#fy(ÞZ-XF+ |\4e$'g/^ee'"(!g<A ՙF9Z"jACWTW^" BbS_ZW|(pqך#0@RuY}޾o]K 840 *Dy4'>%a8(8r v`m,O'ƻ msz|}.G=Wb hiTD!غƉ;%5|hc*Y @A&$7k#HHP%BuAMuc ;Cp}b"a^UDn!JK†G{Em%@0؂Q,<[OGI]-ul)J,:ѯ,H4GGτz 1ȈXJ)7!K-Lq˴Oֱ EP@ #GϦ$R@ps*DW{UԐK e7.PZbI.7Y[Q}!Z q,ݗwěHpyu4)Ȳ6{6.)<>#Hݾ@;8ԉxt bD7pTznxb"<>w?@qC/A8Ove<) ќe|BT"{ބU"7#a%'<ވhPqe09 s\/D! s6RfV3PYRUn4.s,蒋NYn_+!j euGƮF!c*D>+EdKg; |zp&""SD.`;ڹ&ylG#bq$?XX_ 5"5prDs(`[z ) Հ" 8ٙ@fDؘނ S NP,ڧxjHŶUbS ٔD@1#D>~? _am"y ! Qy\+cSt+UK' @GG+%TOĞ, b̕wPT5ы) dw|RD@oMh50PM(4  Qpkdb ( ,#!R P!El@R0(E02BD(O–.{BeȷW] KgrT jsfَtN*t"TD29`,LȭX!5LGA8kV})0Jj. ܍?Q?LdH g`۔U<,\7_|,q!ʈZ4DrjC:% 0QB 30(ړV(A63.<$2M!EbXh8RXz&Njz D Q~;y1lv&G<⢓Jǽam-K-bjOȳc<@ԁx 7w(# ~P:Qn(6S9ӑ'JCDtL!%k #StV01;qd j¬U0:U TG hL`mG[rQ%]z!9jSxVCI2#%IY;sLD yQÐ2.YS"ş`aK7OG C躸ze0½cOs T`}#bENp 8e]c6M@&7g|4Ō({sF$X׏EMjV|G%4g\qB )Rax o4>MzjqPؾtግ7MF(jJ !"' 5QÚ&OT43;|:<;8=,(jI?LiId`ҴqݱRQ!("C+qJ'm72Z[kOP/kDmTÌ:S#[_&9+4Q@c`] veb*t։b)w<'e9&l(\?Ϊf#:>>D6mQT3-݄>Yc% ĨE6VيMȲi+촏vFUrRD>HP j8R(>Mϰն=R# O]FcPu:Df!GOrP j# 6ٹ.+Qj߉ &9lf@=bHճ.Yb uPm"ZVMΑa\[@r"Q5 0+UAj*HҧsFɦBќq&xugѣkK&q1 /DaA~$J u6ՈB}P%Udn%FUK#DM\:lLKRv%5+5/=3U%<+vsݶOX)ѳ:t)Ίɽf-6E,=) peCiI d$_جD8oJՊ"IŤ\P[ۺpꉚZd0"Rb`MY5l&?4A]ֲ-SW膏ًl=K2]Ӊl:4X|M"D;V2/QAk7'6E:{:ix%Ճe4p 9)isbWDzז?TJMWT|6]5ԘE_3MꂽrG6!&i%T1*jf|YIYAkrʷ$Q8Uu5Xf-(SY Tw D:ES DBgLrd^gzs #4тg]a|i)Q gOLm#8 ]S TeKWYpRAdY3s>Y-{U;M87@(m^"V HX,re) E'TZC B[T,`GvZ VOSKRI`R㣌o`;EsE,-PitCiΡv7"*gɐ r͌)peL(@dA2&[ZbTs<2CBu5e:*q݌vĞX؈z hW5EE@4q(E k7tLZKBDIE{WPH+4b͗,"U):d&,APKqe|li0>GK"n4m,kMGb@dcNUpbJ+DE j`=b]Y"L-EVdH`lU5NS[2kN@taBtЌ~RM`u̦4?d 'uSOO q$2UG#XFN-YS9Ȗ wQ&1ZF"M7vVml`I}tli =T]~w&"-zc=K)E ʠ@Gajfkfklzna Ktj*R/؆84DH+";w+B&։L,[5O1nkDJOe4Y<- u51-"ZZNZ&B(?ki"blAyϦf(= oZu)@9 %૳lm|f4AF,(DG;ɪE_ė[k CX5@SVnQM9EkUFI GGxAt q^tK*B[]2t<ϣBuvV䫌QPWiYS<Ȗ:V'c[JQ_WJƈ_S?^BOD@1zT}D_zuz`]QYrvֹ4M6mѢE쯨g'm42DפrHt`1c 6hϞ= 'ehɼW^wyg%&H(Ŋ^z͘1)B\e{s ]lk훦OӧO0jJaɓ'>q;*/+ӧό:SNF{WPX>"RM1R6tB0a 'j{oCm.Pg%6>CpϞ=JKK#y8b݆ iL ~;?nȣ1dƧ#6Պ BRm'6O_'qDŎLlRE=Go9<_Kd@w@w[b]3=N:_*৉h6nTUU#|GP,,(9r䲥K/5jջvrssvf_L4iСқO0`I#u6l8iҤN>X<0`qc??rssUVV+}I&̘1>D?ۗMDҔ)S***߷oߣG@`⤉Nsѝ:vؽkW$OQy_>?[\ohhXx%K[ƌ׫n;︣Ta -f7lٳgEE孷r嗯ZG~'mߡG7,ݸq㢅`͚o۶]s tD}͚w^XYYǛnd̥k֬;n6& &ꛦt%;nx]7;1Mje/+vZ- .[Ynny&]G}'mg۵k??Shq57M1(JJ))WNۧOdLڂ+ 55o?_|S/3gov/7v,Xٛ?ц۶'>|;(++y(/+;92vX4;%ᛦ8￿w>MYfueӦM|-.駟:x0Ob.㿿>/==}֬Y Qmow>r_k[}%++&;wwr~@i6lXNNϖ 1Gp'\+WlݺUW]r7~OϷh" *++.[ZPXеKݻY!{hhh\.ʯW4?lj1E O@|W٭[Rr8a<2F<8w˦Mjͪ7Mߺu3"ݼic\+i9?poܵyGI$k ˯ξꪫNg~O0'bpʯ:v8˜NrE| 0W ><''gٲRh~e8aۥKp?WC,[TXpvx=&Ld7N믿֥:aO[RX">v4B`С999-[H2K.67B*~煅L?o{饗tkkΧ~zȐ!7r 9} D.e-z?Ϛ5_^U[[jj]W\Y[[{o-_nƌ;{٭O-tb?r_:555Թ38=r.c444Kv_|ŋ\;/jΜYm6m۬2Dڥ>;^zŎ:}=ݻwg+pCq8ng^ =zELv_Ν;7ömoX#M^?//u}߼iӽGy.\P[SpKLz7irFDB,-)n-O67@B+ʳZМ<@IIIIIرcbVſ3U&ɱc J=M'#3cۖp8rrrTʺF6m֯ 1Tʼn eKPЫwQqQ.뭰v]]]zG x‚/>"++~WVTgu**KMxbx_~evHa~b8~ϟv<^/Mi(ldi~HLL a7z~晍7ʡ-Z֛o}^{CRSS ño_`~{":OiR?.6Om9C e@:uowfILz-;dA=أ^}z D 3<أ'O|(^}//>|؈#^{5BDA xÆ >|w @5f#0xƍ;nݻ#%%KcΚ5W^r _yϗ/>|ȑ#_{5H̝yh˭r=~o/]u|E_qٳ)=vz 7>㏇BNc%SN:wѣ~ɒ%ڵ{8̌gy:xgwٮm[ֳ{>|իf~G:c^ڧo'@aaz~/]t9o>6|g۵5'jVY~8և(wi ޝ|!Z$/{wg޳o%2ۊ-;]r"#IaM.;ȑ'Nܴie3T_ lmNp-7USN^zw>mگN5=nGLbBUUUoK/ԲDo|^Il4!X>G{Jn{Q0B6G,k,whOL?p,\hPF4@,JdXsˈF;ȿj&l9Q?q;"jjtBDG{2_ΪNǂ ~>3/5upº8#QوjHɤdcoOed([*k==G'<A3KM)xOѰ[ǣrus !Me0 L&D&3A j4=ԌSA{S՘d2U#MlɔV8oo$)jxb;;b ƣlGZjlc"B5VOw4FlSc;F?/X_L:l'1Mp?tLb,E1Q)ViyBFZ<{%u׈fctѴ0TUfq5iliV2 GK%տO?6 =li^Cu_} m'eP18RJBs&3 K]ϞWXϏn? p5ׄ`(:;;9)]- een]2֒~TэA>&gOIW\>Y߶#-Y1Mwi։8'$$&%ؾ->p8by_7A觠Fz\~7i8k,3*pw㈴g^pءm۶iUs1aתuvAĖf翈lx][X݀0wv(Q FB}6JiUeeZZY8P(^UY)}%F?=j4-DH(RSnQllhl 㼱(ViyY< ; rvqJNGϚuC|3nMN^={xÍ믻n?"gH*f(:Xu9NN3g;vҥK/d ;O :t!' 7''O6'MuUcOfGf|1:d*rvbt*".x'}jzժիWϜ5 v|)Szu%Yg/p`^&O:{xR`mW\19''gԨ:q,+u:TS:tЧz'<WUYy lܸ[s=7Oxt۷o'Oqr? BEy7pزeSO=u˖3y j4-wbo̕+W;xP/b#Gٳŋ/.(,ֽ{=Oi3g7 .ǿX";;{׺ 8i҇~xjZ(RmΜMq׌|_f=-..5r$kP__ߧon{ԩxGA.dmVvخM۵kמtqSϛ2|>_ 1=3#3Gwfۚ{AG :Ga33)V222Zj4-Oyȑ`0q5k֖/Ytgr.3gڴq7|#F,*,? W^M< q3JujBDk6rbGo񯧞z򩧞2 o>7?~;wOpZgYKvHd%<~bRR?r-7`RR⫯{233~}|qSXt:0UWwak_xeVNv;һOH19 5,%ŀݺ5ծݻOt5u.cL'3gŀlvݵkWӝ:nԹĸg6vZ|.FXfjivOnU{ ΍>w!^󬛋޷o/=6E)Ѵ yHfoV뫫TJ瓻\Cŕ^W7Lpƹ |[6mI().. -?rjnޜ{Dy R hZ@휻J׽zp|熋Y ˶YcvDgã HLL's=;?tpVfFbbb hZb@bo]Kk7xowUKs z7zdRz[nM ȑ={5EqqVZeeyޖ忚b@Ӓ.ue&87VԚ-Nhom ڶMKM?kO~㉅3-K1iaHt':k[^{q?n0 zϞ p !$ೀb@DE̶cIx2F1(F1:(Fgb@S hbqMb3N1Qbt)41Q8pyQbLp0ͳ(Fd+*BzI"1Q~2iyE'x#פ )1Q~d; 6W+h(F?*tv$h`!9NAQb3&b;eo%c!s/F1綻t>rX$esU[IENDB`luckybackup-0.5.0/manual/data/eMailTest.png0000666000175000017500000007276111531022122020166 0ustar luckybluckybPNG  IHDR3SXtsBIT|d pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup <2>?v IDATxw|Ɵ@z% : Ej]"*  ]i t7Ы.BJ$!6Wv|܇;;3;ͶMkn7@B@ED`2dD]Z`uW#*f ): )ykѯqk,Z]Jհ6B2qipdcߪ wwA*>:mu}\̈1%F/΄0kqᚗkݸdbg6\G`bb`|LGNZ\f0K Kk1|Xl}>ږtQ/N|9 yyWA)w zԓKE9 hiq%D ϒkݘ8"@/C6 Wш/U 8 +2_|!@"C"jA:erd2N3/n/0u癦L&Caa!{HRH$M lLf\c͜mgU/KӋJZ:1UNfY932˴(΂Y&XLBvvdJpssΘg&hkK QXTԶ/WW=mSjjdpMNA^^.bi"W//))jLbl:=#UVeEJJ 5k> eErR1ԙBQ3aa03III36`'g'^~MD.+7rw3(+[0ռ0[0]avOIH$BzFׯ\BΥ fgggÝUN2֚męKLLDΝII&l ܩ# %%iBB:vxKjxxxIӦOСCix}; YoC{&t lܰ߇P(DӦ0qDDEuմ0p90LR8S_|uS=B`` 4Tu3Y{{fvz:g/7~#@T\ ovl,YhB ~r8e׷o !OEq| wfWg@"hu!eLԮ] bRyI$b"2ԪU )))djlق:Զ q-ug(NorE"!1|P=z`=9F򅰽TZ/8~Q445ۇ͛7!HP\\k׮bQ8r0@^ V8Ob:zoaA&!99kTg^ݺEիLfL^5T{SRRPVMNuMx- ԙdRRNmnڵk&BFi6-@B9". ŋaڴiլ_8dIQR%AqRKT, R,24Nq\ǘ ,3>r(="00b2nmD9fӧ̈u];1c<) ֭;`ʕ 6oބ^={`߾}yW]>ƪC 8Xk7,j/^";'.DbB~֘drLU׺ڦk'gm#Ά/cvϸ3ڟOe˖iinXQ8BM"@{:t(zJ*A(^?9WDR5ddh2MR.#''[\R" ''rX8m_ í"11! aefd 4*BCj&$$GzuQf 8ׯ]e_1|0 6W._FuP58V\>5Vi1""h߾= QGRRCyN<Vڰa=rYqF' \h1&|v0Cps.BBBukjיuٽZ+ ̜9 Ŗ-M6g& PreԩS!8~(o~~ul۷B@tt4 ^={hl[ζe4p,bY%~TofűƲzq+ Fb52dT[~ނ.]0bH1U&fUL.L&^` 0/:_5={%r Rz9s O61ccN\G֖I!1M.^%99pqvƀp]Du/OOdeeiLg/jo|9^N(!Vy(n Ejñ];|Bxi-Ԕly Zh' ]6v܉̌ /:^o|fʕؿ8˗/ay,>#(g-PH ʮ ˗򂫫+aooBB5!PF --|BN΁PA%%%Yk;;;dgg++= k0U@*xXupZu,jSWرFAP=`#%9Y;3~ǎE6m8::w>z}r{nZ?v ݻwwyCD꟔U]vQQ@1x#5%Ek6vsƺP}hX(e_HLH+>11b蕑J?klݺ0n8,^ !*\sb֭xSN:KIu{ P˰YiƖBxFԺu"--MܥzLuttȘ* 䤥LbȐرc'rdS@!W )9~TVm̘5 O$fzd8r;?>|=ƍ'C,}"^鰷w?6mP $$|R;@ lRyF[nRD%99:⟘N(CrTXo|Yw:>qjN̫iYYY8{?fTA[nի% oݻ5={½R%UTA*U5jٳx!;۷oCqq1|}}ѡCSr~֫Wp<l4C]_U MӕJ_.]6~'ܾs?HMM%ߢelTY$a1غu+dw%Z;{ڶ1cp+a䈑Fg ƌ1=vĂ-kfq&@wL}6똚B15 j# h 5%FvVz6] ?;jլU?pwwW75@y*￟a˞hf r8yw ?H(?`'pprD*5rttΎ2F^F2\v(2O8ؗlա/^V^qyy1ݸGt‚jB yC as۷ocfa˜5ڴ bԹv58Yu9 6z>c_(jiCll,͛3;=x 3fĝvzyXڇwrΟ;GGGڵcƌQݻwwww|''&w@6m HX,O#I3Qjk.b7'\kgg_T fS |dΘ_j |2^իx@B=/K$> H j>c))Hx$1;#3d \ K;+7-hl)2"A}pV͚A0"xQVM{uS+ǐhР\\\lr0+2:x(c4k0Vg`=d2ۋ&XzU޽j*Nh uU˖-GǎK`Ѣ!P2d:tdن^aAfb@xÇXgPΚУGOaT"nݺ"dX|:tx Iooko{ФIS,VAmfb,X?o{ً:ByCFL ,o^߇0|l '''(t%3`fbYĚwqqA@@bcc!Pf fL @{LIhذGW=m5RD6 t멋 mP H 5 %"KuIKKC|Bv콁WUw*\3|t * PӔi2Ydxp}h~ P^hܸ1BCCh\S p&b>}.]:~6m*<{<'QXXz"YunPMJpi'OYϓ  /[0<}3;;-7B'Onݻcsb۶z@`` ѣGw Ebb":uT>/%%hӦ-&MdRRDt?V:N> W1_q޽ 3g0Z.9%Fo~>.&nMck14[j[`d2!)) wCfʹ ܺyM 4$AAAW7{7o#<<!bw(U*uׯMj5H.GH@HMMH$3^2PreO/Y+2hqQꙤEEE9sΝ;ǜDi `ѢE8}b1ڶmyFP(0Ruc@ o{\/rJ$lyyyh4T') ɐJ.E= [`>b4m&9Djj*=?@WYYXpV/X5kBhǏFݳg7r _cƌ/X+Y4;uGGG 4G#a…0KAAs!ORd#P֪ʋQ7T&C^^222:/(S+W ???TRS @5P\\ gg;Qe6dگ9z~`ׯQq1]\wUTvw73LS<;'9WRR P^ QTT갘+`gggZPnu ̌C3rNZ3{67e5?KP(ƹpͫiO<׸x-ég{%~vũ#S'BL=@ K~B@\muzPRZwp(/ն}Ps2=C+V&7?ԝo>Kf5W[,-C rM\RQ^1.8צR hjm3wC.pLl&e2 .&/Ԅ.bNs,\ciQ!LNOAqqv0/~1cʨ.֑j#;+1w`ʧ2O1-slH%vXr*X>ªc|3[̳Gv,1`k<9cVUԌW +Zr̡Ksf֊in&.yfi2𹰆yqԳyS=ʰ1XDrkc5Tzu"N^{#innJϤ魙pלli)[iibYa'bߝbM qkYyTy \Oi=z/#K2q+db~e+B!UTn,76L搬hX7e UFW+gr+gkRe874rvq1sU4bY17#wF͓=:ht>2:>oB,ԕ< IDATKL->eV)Wrj'eoQ}J}DZ^(i+8 f1KVZlXckq83c|&DG5^9Jv-sjq2w}w29oB#2ҍeŵ~C9 j3Mr 'Ч=0hr49,4<r1'^9>uaʉcNf!qC KXCj3c>yΔSfFrd3s9 hюjK̪-mt~rn|Y< J#]So2/x3@ij`-ǡ r,ud-kjpx^LTsaYr2JafiM>9,?iA%aϐm\,}-crg)\#,4Su0^gk,_s0U(9kR9i)7lBqAwW*}^k\5LYu< B`dhem`zeonNz,Քi)y`U0g,偄W2j]Ҝ:+g:@*e[ JgdXe.vWDO.4, 6\-K0܆IM6wO0o;X0XYٜ,.l8<5/d1W3s(5JGhn͊u |4KPj4: <0Pm=Fb:L,k[,MSf!ΌØ9Z4ll̛7(Z~L4(禩ZR5Jk%ZZ(Kon =4(j301Bf|ΒecR4JU$Tz"PYW+3F/ZSD*=b&r&j*`3k,Fj-Zވi-x\9kG+Vf7L:ȯČ2Zyy5g4Y}[Gj%:Ojr+WɲcZuhQ3C +6LZPK/2WtYSqMS5 fg͟Q50FCè-=]#ڜr!Vf)G#c`ۡFYK+Qxxc7FTTW;~K޸cEƍ1CRKY㴴4|'hݺĉ߹URSE"8jgeeiӧ74]OTy5_겺/>lmA[/<^sکOԢ:SϜl3G J[SzQ3͌ ƢQ#}:}ٺaaWAS!bQU+)c Yݪիp%I&]yfE*7n͛pm&,,4c5t=NF=M1Z`ҲH2Lf`lMMf`QR9,i!77Ο3B\[{u+]g 7U[PJ Jfo[Hɛɪo$x-kmmzyu(ó舷:tg]| NNN4Kٳ8r CgΞő#GxIwww=M氄9Di5ӧqa4iͩ+öf5Zz鴙k_qzrȗ󳨮luFXYʭhX40wlt-7CΝ0wl|R/6k< oaÆZ\͛70ݑhڴ Znɓ&"--MK*e2'ss[etop}qiߜV0F6s+bOo-m>/&B>+>>ÇCzF ]QEv+hS۷Ξ=hDŸ|24\nZ_0BV޽ٳMרv9l/uBR1o<;Gٳq寿0P^]8AAAc?ûD?o>~ݲaaa }Q@͛1uT9 6`Xt)v D?|>ǎa+9LX5`5ط?̝Ǐ1mg=`DŽ?dq0b<_QZ&|8wnd_aܸq8vΝW`9ܶUJST xԟK{aNYg 9ba^{`99D_aQӵeUiZEEEX;xzzP\p!t࣏>bЮM[?wƍUk жm[,\~~~zgKʜsѺ5jH.^sguփ#nzL 6@$aÆ hժ I$$$V?vŌh۶-g_|?4nzO>XnV^͛Vݻq-LA~>ڵm_Gdzg WkTn7H$7U+e4ilǦ?cÆPo<W_#""R5.^3gM8@5࢒57!>UƔ +1l<iY"]$,6[7oAPcN>|k.zl"UnLE5x5g1xrXiA^Z樟Ƴ}jabY")) ]Fi 111Q>!@OhgNA R)ڵk<-fƽweܥ sht͚5z^Mgä8BdggC.W@(,Uf&<<<8K(^?s,ܽ{˗@>ZjGeW# 2Bvݺq,yk}փgY[aހ OJXJw#oSV4pln!J}6gNƄ  k(x}{ {`@, F m6(,,癓b'OD C֠İy=tNgrp;ڶEaa!.\b'ѲeKP-3X.@ah:CWϤ8/]ܹs0šÇe˖tmW.y_Md$r^z}卧ObΜ9֭v5qD\xg?__ixOy:$k^[`l1bNjŦ₭nŏ?gèR O?+Wf-FQ\zAo+Wsp1T^#FD 1l0ܽ{"XUC}lq#o߆‚4l?mڄkn%XrEIը#FQF:t(ܹHL< /ɓѐH%;wa ضm+ ѰaCl2\`G JSemX AnN),,,zPtH+JNԥՌb# eaV nހ{CaalmjvR7T}YAs(R&E Yv04:3t)~^b!e5:"LL:|(3ՙ UU˪b~x~3`Lfjo,4`rfjT6)OUٱp0c)oطё{PR~]V5X5YMϸ|5F&4)Z [zόח.Ly2j>PӤSn]11/6sck)^(M+}|!R4srr _ VrR5jNC~+yyys|||nq(k"TmŅ:/+4kT1[{%gO>EXXڵooBP(6+WS4m"L(R BPloŏsqq@ BPgҋ,] BP#PӤP( #4) B5M BP8BMBP(=ʋ>BP(BJ^@g Bp&BP(IP( G,~"ꬦ5BP( :iR( j Bp&BP(IP( GiR( j Bp&BP(ٳ³( B%XYtIP( GiR( = B ܯiR( j Bp&BP(IP( GiR( j Bp&BP( YXƷ~_ﲮFP&2Bn)JńnѴp 5jԄ=-( ;xB}"Mae] bD zNBĉسgOYWBSlnqqq;v ԩ?4mŋA,31bcQUѣ{7\tIKG}nhDFFPP :v{… ݻZX(FU(عc鍚5a!4pW/իawՖ:d0BC"j0ƍFK?@NN>> ԇ/֩&L@FFVܓ'O0yD4jAhP&OTO^[~-ĔO'[ M%''<3IbB^[TWrMrm&2ԯWnՒ:u<:t Jŋo/ҷOrEr]{nRv-ҲE ɉ'ӧO޽{IP`^||< J5mB;F^|8~<&>^Z7d`,e;oo/v$&&9|ԯW 2y^-=h '2$%%Æƍ o P(Ąxr.7'4'~1"׮]ZdɷOD$M|ȕ+rtԉ1Y^YbrE_߻w/`3g|A ~i-ZuptVG&o/?hk6IڵH$b=sC?_UVtEV,_N~[-{ R1i2/Zgի\2ڶm, ݻ76mޤټy o777@͵b<=!HRvwYYv*RRR?dms˖-C*2/]O//8e{ݻ֠O8t ڵmAoB>}ѹKt׮AP^ݺiZm囷4>G BaæUC uChh^'_֋wrrbVqttԊ1ϜIϟcʔO_5j@8...ZvZﳲXZgkڵh޼9;ukb uk/,2 Xx1F@@{ko) /^AP@(,'s:u ///z///[V1n`ѫwof^`Ο?[尳+1̌Lՙ '''|(**kװi&L:T^O>E߾ QPʕ+S\jlXsP(MlzlTT7 Zׯ[I'Bs(((@tt4^,#hۮʚ;wdZH'%<5* 8{ L"С֫4 ۵;o B\]]ѥkW̘1L̀!HazǏ;o}+׶Z;/)41OGMI_Ƕm[13gԩS4Ls$''c?۲zء#Μ9iӦcǎPTT(..+gYęӧ1iDL6 >>ؽk^x۩cG`caXp!ƏݺuGQQ!mۆ>}01&O'~ҥK"11֮EHh(ƌ+'׶Z;/){M ĩgdɷǍAXX,|Zh,[6lX|4m Dxxe-6l܈yƟu?DfХsgĠcǎqi|t ~E"}Ŝ9bccC,Y' @];w'}`Ѣ󈮮8~wX~v턧' 9sÃWNmv^69R(!y@MrIHHDjaY BؒĄx<5k4[}BP(\IP( GiR( j Bp&BP(IP( GiR( j Bp˜fxk-̴Cιڈb,Z6@ ~mxPZj!>>hY BXÇյ ^x#G!9%'OFVV6zW2[oaԩ?w^~stwhԨ+!$4puL:ǣguz~?>0̙֮3(g{.VZ#f͚:d0bJHH@^=6bǶm[y[M.]i_eeOdyzx"+;hY BXӜ? ifx{BBB?aضu>0s,\t sf //O,\ѣYuk׮ 'GGocY T?^ IDATolhٲ%qb,[Ю]{eLVx(k֬aΧXEEE8pZjē'{.v}MT"k\: BkנP(Pn])6mFNȑ]6V\ @`q.^OOODDhfի\2ڶm, ݻ76m,t"<вeK>Zɵ\qP}AJpT RYGP(cSӔdƢŋY2U#::tUꐕUCp^^BCb<<=[{>悟/ͅ<;;^^( b>,ϒOzx)fB+WPNfÇ-Z`Mի7ڷoo~T"+ ’SO>;wЩSgxyyիLtxi7233 agg,~vs~p?~e &OS( Vz@ D"뵖?v =$)) OQQ8z8֫O>٪ `Pr:DEuC~~>.^|4q" 9:wDGG3b19JvBaa!Ξ=,H$8tYJ=ceffԹ3/- B ;;fbb"P"Sy;{mHLLĺksΣRJ߿=•"00{ݻuCTT @6HHH@+׮]Cз_?Ӈ~/^@nQŘ8i2BCC_0嗳SDu \>C@@v܁[7o"I7"kd2L6 >>ؽkLݸ[}%l;vcBƎy'N?DFO?"7'/]ٟBIIY^9s|'ÃJT;J8u$=z? +V,}rjDnP ֭͛7ǖFvv6f̘ Vnݺk׮B*bswwǠAo˗طw/8\̘9 SL@ 'z/^8~nzlيѪ\2/^`Ϟ=OhC sgqi/P^E;~X Wސd8x?zub/"((FP(A/ &...iR( RL-zAl,= j@PP ztK.iŴ^}9< _o̙3[޽{ѢyssNxr߷0ޛ B)Xl<|={ݻXj5>5kb^ZPk1mgZWZ"S1Ç ō7s.PtBPR|ٲP\\=vZjGfڽVڵ˼ PZu>Çk3CP(74^ʕ+mv% B17bM6Z[j Bi@k'_֋}.뺻kwusz BizyyիL( bޫMU"hŽ7=CdddhOMMUsP( 忍4/hMΝQPPhfX,#Gж]![%&&2 pU-=r\'~;??'O⭷޲j BTT,Ls̙R &Mk֬owyO|:w¯޽{QuQM4 'NZdɷ5سg"L:j9:uFK( R,Ma>jժ?lwذa= ѴY38xMc"33OG@@35s/#GC,O>̺c/K4nFݺu#6>bEP(2s "YYHL|PԫI$$$ UVP(JHJJB5*_\\!!1z BwރH$IP(1\\\ФI8mD`̙+jP( ?@7A.*P( F}xWm4) B103sxӤP( $J'>M S( bk,Ow݃iR( b 4 obóm"#m޸ٚri!URӧ̎+"~}ӏ?jb)SaԻ"%%j9zn39b~ư:lLw~lۃۃp߯!زe DF 05Ĭ3.c~uZ+8(gºãJig8qƼZGD`7@.c9bly>-׸#r;jޏeGjhqq1͛x{@pnnn׿?6mW۸u7on0rVX_d_(O5aooz ~lwX|9>d"z쁧Ob%ASppp},GEuۇϛ9,8ٯ?_V~'IZwY ? V1n9ŰwAo3߾ ZƓ'OxŕU@x//oS2e g~~~Ǐ[%. &O!k|;;;^mÇg<{w-J]pWѷ,o[+`]AjݭXk낶jmAZq*+**E (K 9H$e^\əsda朙/MB^qqqؿoEB ,[Lv͓J4Uu9ֲ xlt6VҹF~~Bكc ZXcH$%%5ZP(DӘ`t_+++ʽ6L1?+AhmZ7nܐcNrm֭8SSpѢFU}[`7n `*:tpzסRa~|Əh#&&f8x0F!e}K5D*b`an{;[xOBFYuqv>lN>-+ceil5vW331wޱll>zΜ9# 6R\\kΰ0G0cts٦kHMMXimvm޻ //Oy?m6bic߯/ll1t\| IIIXr\?bnHp)mW]v= fj888`Ȑ Tk=yy5{Яw'KHTcQX(?aEXhcbкuk?TYYYT{m 1Pffd # ߿GjJ <=[j)x"󰵳$"44L cƸҥK-8tvRm4dӰgn̚=qGi&={sdeݦBCsc'ysegggc1/O? w'W~y3r㏢J,/,^0$'`֭HLw,kmc<==U-2(--egd۷oM0XjJ 373efΐM[jUOލE(F]!n`u=߿P܂Ϟ5drՕɜ3 YYY\sC{lښիY[{;T=LK/bog2{\uֻ.ʍq-n})13SvY4D†timc͜ڳ ٴ'N(ke3gȕ6-Y[Y^Ϙ> .-ց&'Ԅ1Yg)964lWweds7fۦ5KKKe_vo̸ŽoV+**d/e+L{+5%R<8˗/ɽv.6F!::sL4t {[Tj;RazDٴYgGBΝΝ7רLu}7xoʔVӧOEKN" 6zzzr}HRDc6}RhчM"))ɸsqzu@зo?>dj e|><<66H󰰰@\|<>Z,^P__͟O6nTKpe 1*/P^xuv[xD"ic+W!nqrh#55ҦoOI`۷na?ڵCΝaccSok}}>z2^ail\J="{ƯŎlݲvv!KnQŗN$ջ\ffrmW(_[\TsT*ەC;V_\&}AC<7n#Jq9tA|QQ,,,dݻ33y1,[Q =ZNm9s7å0dnߺ}\a?M[b衶6ߎ<==\b܎Q"Q!R)g9HOOǰaeӾ߻"]`g>}|mV>@/Ѱop 4}/Ag欙(-5k~χym&&&jiC("0(3fDYYRSRu7jCݦbjjC"m+Q(9ڵk1fΚ%wVtt4l3k"b1عSnÇ1y°ߞ9ǏSh)7/$ 9X{>077ĉmEE?@:.6VR?vMU"yÇǏq1ٴJz\*T4'Mc 1r$/^Ye馌tsÓ'Op 4Xnu[e?GU5] S\\ .`gg T_G-`sq]t͛7#"vv:u\M>Aɣ2jȨHbz`Sl~X*y)KfcmFrcOn~:Heʽ6]W]]v`oaɩ= fWȑ#}(fcmlٌF6 d{jPm1ի'`={tg[laQQQ ݻ,$$u؁YZoH٨{œyM$l7^Q[CXTTBBS{Gfia v]|$Xݙ6Rn(c%'g]0+K 0U6ƍ,((99gVl1sTH$lm_߷slBBF"36+V(Lu=k&srjl۰3fvR(jX{f}٦*tR` e =Fq=׬|WTTx">(h:6 ''vvvչyٛ Gc'4 ﳳ96HLѾ}{r{x7~/__yA:-,Z@ B4Tb"0lȿi:ׂhCU|'!|f4B^JYYYC6m4N X-{ڝ٬|Z%'l.DJJ 2wn3D,A [z۷:? 蘃QիVi: D"~4v>MB!-Sf}5}dBisI!Q$B8I!pBfYv zMWxҸ<,- y573ŀҰrDoҵꍫ];Gt*>ۼ۶m;[v NH@>}[~ !jsU^u7֔C嗟Q^^0_Ox75 !D]^>͸8<TWUyX5!4i254_mп__Xc!|1mZ۠;w&Jc;XqEVn#nj-\vm e<s3S\BxU*b,?]t9:vӧuϙn] ]:wBWX響)uΡ-{,- le͊~ (LqC'XYZgX~*++*e]p2T,0s YD(7d`LpW!7VyEi~y3r㏢J,/,^0$'`֭HLWZk֮E޽'7oCvBJjlG0|plkkkswܼm[A`hh$c [o!-- "Q!LMp1hii]xRRR`lb>P!|W“'Oud̶ض};vƂ e7}m뀄 prràW[|Ǐc?ܹsT{ce Э;Mͷ//())_`hhOqjm"$O7on=---i{&Z&ƨst'E"RRqdggѣ͊](m(NJ²eˑ;w-[pyLB||<\]]abjT< Oq>bFxeԔHRtر:._$E%)Ceӧall~MåJ.ĮS/~طT*ELL4&xyA__@$ͩJ{{#yzZoܹ!8<ڵkN;7nP19c>|ӧкuk 6 m:̙3>bΞ=k);""u#bG\]6ajju[k===Z|?hPfcr%{no`֭(,|_aoVH{e061VnB^UNhTsssxM(!UTTckVZa8xt4#o4'Mc 1r$/^e>/bNy>ɓv/H9͛i?FJr\]nnPZZIIrw؉9gC*p*u]p]ό2s D#G ..~~~ G,@@@uBRNnqYXXbڴinc萡8q"0tP?Ğ=QVV(//oVV\2 <0h`?+{(+x||}nZLQF v OOF2ߜ`bpܽ{]qM숈N:033GVVKl! B~iE#!7̘1b0q*u]p]ό2sDEFB$W̰Cagg=U~BH&6}?o]%i~Xj%?©C|իF 4*ƌE s.079b044D߾|^a"xCo^XZ\Ǒ#駈=}o˗+}˖b…8t *ŕ & .矱`|XYY022‡O/kkkpծ/Q\\ {{{oAAAp]\bW3\bE4h^TWff*++Wz+{*W ;[[8w٬@!Gc'4!-ڕ˻*aiei9###?^ӡڠ}/|fȮe&x4 YE;WZ4:K5\BhśBǘz+@}BG/B!Dq #MB!+JBG4 !(iB!Q$B8I!p$j!=ڤ$Pϣ,!%MB!#JBG4 !(iB!Q$B84 !jsUΒ&!=[5tzBሒ&!%MB!#JBG4 !(iB!=NS!fO!hYtI!pFIBሒ&!%MB!#JBG4 !(iB!Q$B8I!pDIBሒ&!%MB!#JBG4 !(iB!Q$B8I!pDIBሒ&!%MB!#JBG4 !(iB!Q$B8I!pDIBሒ&!%MB!#JBG4 !(iB!Q$B8jvB*#B!䅐J%6As+061AEE._<B!Cyy]WPǏC hvuBZUWWCOO:::ͮK-YN(B(la/!Ғ@ B!#JBG4 !(iB!Q$B8I!pDVB1 HP-t(ZZZ%MBQj0`g&&O2<ݜ (*.۹%MBQDqz@*J,tH#CC8;---AIBI8::A"9$$ F+V&!4T*035JLI233040DzR$fJC\U% bHRJofZ>Xz5`1aagJ2O?a5kc,D%MBQqzADyOn#V.^B7e@%NBrr2ݱp"x<|||PPPm۶"h<&,/\r=zD{GG.߿ %5MfϢS.a㟫8]}:}tuhMk0)S@[[qdY:# |{0l۴A^=L0pao# zxz`ʔ^OFIBԈZI&ʼn8 I6H,uyC%EHgi01;@נz/] tֵ2FС233L},WeGn]Ů]ÖceرUq a jfׯ__7n{J,!GD/2? F]f2#YC_b>b505l ѲR(suTt_ :::2J1h l%s._}B!ƌÇZܐ000Q[ѣ2(iB:)9H\C.nqWtꎸpZp&tzp~+&АSRZ|&˕Pn)xX\AAW({ʕb]ݻwē''z!_p"&MT*Ell,ƌ=]]%Gir&!GgoĽ.yc;B“w%yЮօcg,v0kxTR>,Bt@pv޻s-[ .@ NNNDvv>ukD\{aG<R&!*[ۻ"~:"/PnP/BDznX{) K()){4XF" +twV6/[&{ c -BZZ>sŖ-[Щcg0~B$*đ#hzV~]S4 !DT9 GOPhAK Q'̳]=@WkΟ;K0clxjbс%Bgz:++SSSq6cSjN ז0~$ ?LլuI4 !DjTH m75K0*5Nm!UNOOt vµk֭]:w(Qr,Kk_?_8;;c˖-}c b b?erѣ݇bL0A塤I!ՒAma/Ix  l۶ xw}vg:233gL<<Ö[e#lc.9yc5Ɗ+!H1'ɓå8p=b;?b?a8[6OG<6YBiԕ0@OO T[:< 1j(Š4 !D ́5bMbܾ}]Px 2܄z)iBH3|Rz:LLL Ja֭ŋ1AAA*?S BK.B#OBԢ waC8;;^!Ralb6SUUԧI!j"|/_F)镢gSSSC(X4 !D |> #Ԇ񛨨tH]]]C#T:P$5xB#t($M& ZABȫE;w"H%K!I|uܹByIR%R BZ?v IDATx=w`E)/FBIBSz6, 5= *wVcA;$@BH3|E`0x#G@"l%Qəp"u8(g6@P"%#+2|+D!G~s*@kr[Χq&ݦ5kKƮ>wź6mdg*9PXXܱSFzfݩ!dƸ*/BB${{(j A;s^$I BV)ks(`&HM@*="$"]G-I-(5M95DV00.>pbv*Kmcqc"%eePB5ȁB( E ̮@ 8QvbmUU%zsEr ?0';N6Ćj5]ߔ$) UWU~@H$вcD.Lb9h\ebmvVȯ F 8+hakGe ~S#ŒUGH[#A-Y$@(TWW>TRLJ[ul5:  jjC O" veNA%&&|~:d:t('ܦ(юbZ~#G**+jk^_T3:::11EVvlL 0#0Ygpu1; 툆T0Da)U ΥjIjT ,.ސ\]6(  Cg cd9yr:za۝^!Q_D J$I:{;WSSv1(W\\VEE-2[ȲlB>3jD1ORE^E})A_ E!ʆNx\!vJ;%_E3g}BS墕#+Yb4`l*p S۶m EEEYYٲ,8qW"7+،Ý7I$I:{L=XPX n!+8%AHހ1|egdYqv*Z>%:ї$C6mسgo]\U]]VvbΝׯ<۹c 0Ɣ?S:__ք+%ct8W /<43]1qB~tBmȫqL= 1g`"0!$ B/{c1<b53&19FHTp::8!!1%5N,Swڭ]vHλFBxUt/ضdTGŢue@?l9LO[,Sn #i׭9L#XB0ljZ^2...5-M,+&N6iڱcWvN-g6v2>?!)ӍB*nS[?fu111wl޼yٲe[o%+<"xeJ+Un?FUUU\yU{ί]W*QQQHMMͧ~zVnjt:RĄ,17x+,<}G~xe4o_\~O:v(T!䛯z /ޣǃ…Gd5 € ntGWϴTqO60&PɓIJ ǎkX8v(-ޭ;eIheĈ%"p6b3-EdVלw^?jn͚5mVo_سgψ#\.WZZ{ڟ|k1cǎif嗟~˥KsĔUVN姦O)j_4}騬|y _Ν9Crq݋/ϿK?u@QZb9ׯjek ,^^†TU.4j3,DTs !N?>tS&1@zٳg/Y$%%IHaZ@}0m\+Q09HRMmH cǎ%+׭+..~衇nMdg0$x曽B_ !*/fΌg4OMݻ+-]߾6]M D .$Ic 0cw1C$S1_}YZZ W_KvZhu]#~{{w5--- nVzWnn#G!ǎ?`<9d͛7!_~EIIK3fy3gΝ;wc΅ ?9rc?] `;p7_my5ڵkoŋGGGϚ5G=zB6nذh¾W\׿8Α׏=ztAA!f.Ḱ1%@*+ihm5Շ!e_ 5H 8--ʫq=kٳzdʠP: JFqt1%.W 7Z,< qcƛn,F%# z0lBn}>_u IHB NHIK er%Uvj^KFFAA IR >fb6w߳Y LNXW`߾}Эk7@)S&Oǎ>XiiB@HAAa֭W\yng#e'˞x|`{ݳgOUUUrr2ݳztS,;.&M;wstҧ׺~{e]fZ)Uߙ;W_#=zС+//ުUkzaQ{JRb'đ#GxcN8nu:8vЫJHdatl(n$:eGom,W_+^xÆoe_;B!_ň0 kX3) llΜ9Ž{Yfͼy>B@UQ:#)؄^~]Qɓ^fu?,y~?77WQTXBnw+.vDbf&`"Y].0rH-X6p@3gJJJXf/̛7z du#5ŷmXĻҭ%Ӽw駟9o>c=7=TZ lvӧKJJ h#W̙sM7fgpl @0Q=::rzcqwq 7?Ѓ-z'&3St2$---**]RRH2ÆufƘrʩcW~9K31sXiGzkuUՂ>;G8&eΩcņ=QŘ̹vY-ܹsΝ:uo?7x|m@0Ȁ(]1X~jv);;YfYYYf B.]DEE YⳲKJbYƲ,2a8ecC!qYىԸP(D3!@ll,Zj]%n-++{'7б0>aB~A^<̗_y۶m[N@.]N:cv:I=QV裏z-~62xǟx2 <ӄar;{q ~];}ݲ}S'Oy7:4|ذ+}>tٲ x3g̘9O֧wn!`FBxn]Wq=n} ~ `  BPHP($a +BaXC! aY4iҼw;n Wv8g>! B3܋ xѹsNN7,66֬U{};{UEV J@ ]^{ǙY  ۶r₁R&Z:vخ]˗/_޻woZxe~#O?O-ˣ,??ƍpС3fj#G\h֭[|AGG+itx1 SDqKa bMRDIC.ZNIj_a` 09 hw֜SlA0pqnlpѢf͚曯?1)l߾re@KOTԡ菓9bPm'OU,_/OHW^ݶKtv"tyԆOy睮8u!I l6þx zCmظSK aT]Q$B wlwڴi#Ç(+Km\6? 4ms,`M 鮤xMm+&vi QIRZm/TH+V,/,(r:Ԉӧ޽+ʗ% " v˥]@ @999999lmBjG~oweXWj;B0PFfFfL:6Lf1'';'', 2hI޵[7eEtBͅ\dsl!lV9>l8stэ&}Bmki &Oj%M^ C2 Zde9}U,O ,[,b^4+D .&En,((lۑ$_F  !rkH_mSűJ\ݻu2thj\1p-Ox<1ݻk?^8&6mܼܛo5111}>c{Ws QQQscY> 'rƬMg(ެB9%N1Q$17ޘHecc!E U!ʸ`rbsFGˆ "7J_D: uuFEqXjqxt @Xw?LfЅ)ܑBї(Uwp{<111ƀ?a`55TԡI~J>) ڬY8z..&@GtL Ʋ>닎r8!x |h:r}k4>Mv~yT-$l#gjQA*6pj" M%ǰfBs9[s{eDr!(ȝ+Yk6[TT,LR#D)0%Z>c$rlcPU BNeq1"w4 >R.jJìRkW@ՐkEI"12FjEW:qC,0X6(}!t(ȌX"0!/|~+G#M,+1a]x !"3z_Wi 0m3c OV>\#@R<+^\ "SsKA3J1^@LCXjTby0 CJU@ $ЈHPjT5FH/hhAC-5T 1u1¶f=@QᮚkO !r(C BevpB2Ml6wS#Mn%Te (<Ǡp۞"rDXU@,@x zw^C, #h#W1:H*-C%3Vbȉ k]κŀ&&KDEsE̽ F'MO(-r9Y|f꽠z E@m=ub£)AYmD(S U_*H}V@ވrL'H IDATdjB ǜ+TuH}CǍ_wD=!զc @%ߗ@] ~#<, Ml0f~ 1eK0` )b$cƴԙbf C$h]̨-CP@ͧk.¢6Lg`~%!hyD@R& 3wLt H#b,VFƛ0a Λ=GrKcv]@δA~x 0&Hq%4m 1)RǬ@Sl֪‹"=6+k,1MĥHuh2KNf$sJC (bDEhju$hDN3ڎ)&)Q'FL ãKfjUB`hMn^nS@78BBbO!m5ʍ3AWqXMN2ihU犈w(\< qPS#^emA!1`**ɒ_֚jy(HDȀR;@Q(jg"?⽊DA3$ GtDgc  F`TSR3VfQɐ! 2J1omS8Sh fhN($Q PZS Яt֭m`}ǣ!kĤ) ؘ$WLjjq-w n!$7Y &,!#v$~ L7w#_6'OINNƹy!G !&)$/Od e^4dZgH<Љ?"CMCkڑe"`JU1;L0EPXQE)RС-$ztr52P1ObؿG'߿a+Ѯ վWף(dؚ*%&Do<~zKSʏAhCu>}Q+\w&RZqn"p=|[†(SYU14'Bak?g]& 7J-{ޛ>e0;LL Deh1VQ$ Mkxlo}qޚ!}m[e$; W3noZ6;zvөef l1+?"QÇ_|}ނ3?[W_MɧGZZnpj7Q%otZueҤ-^5vHWQ)* N!B_~mˉDH1 JOTGYtG;G۩3t>FJ&^fmC__Vƒ$ش _쾺[a#i?$i~_^z`3);e>y~"BN}`rk`矏߰׿%|K=#dI67X_x!~C裘-⋮yb{/v曷oL&cL "&~FٙGaOW5^0LLB!>} ^Bcac)>EUST| ) |Yl/ )}|~qUu@PE&o5y͢ugWtg[uoPExq%bL.7 Nx|eۋ/vɩSvoWwMmggMro_e=}oq>LKCFp:d5e 5FNWpg(ACF(k2Y 8ϙjF#+n1!v a+V ft0(1r 0)b&/3k4;:1Cyߛھ#&՞e'j37DGo9N }`=tmdH7B0woorRH}uc\˯1V|3(K R(trap4"%Do r`7jxqZeHA}!#)D_2rDf(hsk CkSuA)*::2|ґB/޻09p5Qv8~KTOjh*K; KF/]}y/-jQucO>Q,9Aٱ_G__ofz[7_qs07#xyذ4h.UH› ⩘VGiKb2E7FDw#oS0 ˪^( '%bV_jeUL;Gz N"PlEN^K@$ Zkd[Qv ?x@(T:Q X x@M* "sj RۣɘK5F*x"a,:0"myq$rn nLl4ÊwhAWGD]2ENk2T$d`u]>\bAB$$,WMW+ _bI,R].ɹV6+/׊<ʽ,z8čN1F:fyfC1LWnwMDC *sE^^U+b$@§hl,J}m_|\ߛ37^ D{!'1vgDgQLts?لc!@Hzb7X Ybd,,=ڡX|sn2~15;Ţm1v y5#a! 2^% MLGx⭉%78_ =Or5E>)䈁6VX` @ Yk?u5E]b`1 %)hp; tSO~ D/`27ֿ}I0$AеN VBxa=.i ||N/X7Ϧ+Fw ;>{f9`f70*U@ UVTuܩ]۶PWWwEE---MJL/C իV#;;[Wظ;x$-=sbwf۾m!{n~m۳gOѾ}6oޒբW^bcc;uLNX:$_ѬY3^tDgϞ 7o}|wH]y 5:D5kOرcviUS 5-eػ;w=55ǎ0v={4k UUUmڜSo]l#GLLL?ZsСwNLz꺺/"Lz ?>QV6mڴǞx7 Μ={ĉ;w6~ԩ~ ?[8]B~ټ?Ϳ3g~G4ܺ}ۿf̨u׾+/8C}YPRzh]w*?UZZ:vܸں:و6lD1s믿AƍqӦO<ȣt+G{쫯r=_?p?#k,{7o,ٻw,-۶58ϧ%~{Ӧ_o"\cM8r=N}evms{OIܺuK&N|ǣ!#ʹs8CtMryz [dګ@HUe+ +**Ι8mcǎ9´>FTM14c%׏9k֬;O8XRbB9+zN ׬Y3iҤ[;x𠒒޽z%v^j_Tz+**ݛyaվ:_xJ#G^-\㩩It8tSRRz9yiy۲CTaгg]wvҡj EEN6SRZr@=ծݻՏ{xiӦ`0tvATy=#yO+yoqtsǎӧl80o|=ArrrrXR(ĸP({Z;cE` H^oyiZƍp(ްGINJM7Mw`(dۍ~wjz6v!H5ZnCʈdv+>6یq {Y͒Mi C#y%oqpUWe˗ 4j*brLC?C0!===>!"Y5X /X0׏Ϟ{z=dV|/Ϟ= {=]^޺uk >XۓG 0IDATs:w<~ٻwnD[nUݷ,u~V,_I3f˗+ ;vܻoovVvrH~~6ݴzP5H^ciA#\}+Vؾc_^O5S`{+sYcǍkmg J4yʔ8̄zOh֬YI_{x8p}oꨨ;wnٺڴkk2gm<tлw\RRCGc8~)܈2ӧLe=tȐ+Wf))p8O^Mês'|k׮~{~~mҍi;hH橩 c>999 f6DEE&M4x@8iM6$ ޵'.>e˜s޾~ݮ])C7S'ԩSmḾ%Y)))w̤.uuut3Ȳzigᄑ6m6fv#ZtOk>#l"ysZ1޻w‚UUF8Β$=zt~}[n:S?:M4/7Ͻ֡:, Wsܷzo7`ol|,ׇBAzO{u@ih{p/O%+j]1oh {O(Ҍs^hY׎mlvKEUM((/Yۯojɲ9K99e'NS@ 1Dd!52.={ 札.o߮E\lB(C~5LsEANjۣkkkuuuQQQTu'|RWW79󟁈4 LoӺPx:jjN\{o>//ҟV]6_|7 .4.vHNi qD-݅d؝1A۰c뽣vlQݻwk9ӒK|՗w9Y@ڴi}>üZv AM xrhK#[]6{5vIkVUo„Ç{99DƸ;pf̘DE2Mr~_7۴бwң('ǿ'N=z4..mv$!QQ闖  !?l6"hD$Ipg[]ֳCetuS "7M4{  347b.lm֋UجƜ~@K^^y`ЀtЋ6[^7D$-z8e{w{%#^h6.|y zggEmD$1~I'sn]\~I"HHlgvȬSYu9?NLHlywG!"9شEں ySa!-Bv"_DE D DA#s &4"4"4"4"4"4"{"~qd='8'sdYpD r#@pdfdJ˗-_juC@CcbʥKJp:>]YDx"cG%$%s]n!CZ%%&]h #TTV8pLLJ% !=zЋ@~ۥ}vNfxF)[5Z9Xܨ2ͳ1rՋitHxx|B6syTj@+IݳG &9]0/u0T d^˜NF,p&F%0 xʥ-12L TO^I; i')K|pqKl]קgj29WGInYɓ'OAwl~ކL&r޽Ǐfdd͛ׯDRy4,\A3H520$s*է܁5#IҘz@z ;z""b6D{2$:"jLQfcV"l;tMeViR.bUbaրgXc?QH$̱ٙiP5jL*K-_F1S/ʈ5ca LxNTLbN%gꌊi3/1|=a,Zh%Q./zm5f0=E(O tDL/3cXm6U𴘝3$%''޹s;%IZZn$;o VXZKdee%f!Mt2$nh؄A U4 c2% A*>D^Ub0U$]BQ4ʎ9A-4|g;dRarv;&dJR<΀N5#LD [Bv;]YP*FќJLHS@/t[bAI<׾ (ۆ1M[MhqSYUP%P̀Z?d J)[ BSbğJ`U{Я>S*{9!֣rDLFwhtuLNPce#*O/Bv&Y,ĄB,o&ǖVкMܢ ժUGfl&:е䮘MO$`nOɐjժ@荛@1#@k2KhG**FΆϦdFQdY%Р|UY"08mFfU+5\`@3\_%2p"N3{iJD]BvyWfʗ+׽{ψ;֬{W\/^ڳ{G~~$0huЧJ ĠJT?4Z3we^m$R?\"(ad؁f'肚4tfq;5̏IRFa da:k ;5ÅG|N>c0y$.>>ȑ*Wm~ܹs>kGt@o٥k:uyujIKKKJNJyɓĔ)III?ù$ⴠ!D & SkdbIKt&A;S,&ICNf@NQj$JЪL*U@ɓ0p0H.@]ZT;.{q"<"B"&A I!ǎSAYs*f͚GظqÌ3WT+|@5h%Ƙv6|xߠX`eW,?p`"E\1 0[kᗻtܺukwwޝXoyRl}-[;E ]R\ti7xI>w!!.^v"Vb7J,]|=>x[n;k|^6->>~uP\9bO7b6<:`I?~aСW^ Zcǎ-[|rdap*z/ ڎ?v-n)U d !9_nXܹs֬AQ#O>}ژ[>|x]K{11;vxܹϝS4E ׯ5?x}=pa==mYYO_oݰt"6$7=}SfWe7J$yzfeThu%w (=~뻹]zeXJJaC/^PfE*Z3gknߺUJxӧ׶];9^^^G!rZZBCC?; ZFנA77+W.=}t!ؼK'=D}GcխWoIʕ7Fgi/dXnܸѽG;fcgϞ 6ԫb믿vɓ~ڵk/]߿0:{~駺uY,3gܵl,\ >>ݺ}XXM8qΜ9+ɳ`Ν;-?UV -Z̏0`~ۿo7̙3'x*ТE ܾ]tI'6lvW K;Ad_ݻad ̟?/))rEFEM0ϛ5{XRFY,K\b_Q^_WP!""bܸΟ?olJѣ֯Шq tLJL,ZXƭ[7ҬZB5& ##O>֭}}|v͖;_I 3fԮL 4lؠ!-~3f{<ݻvl-[|kNޮm;2hl6ߏ#\tW[< IeԮ@ 6T2 47s,OOOI5hL7X┩Snj=i$̜3wn=rVXI9y֩=ӸQFc+IbC ;;?|CJB+UZnuqZy4hy:tʕ+߿OJ1}F`J$UTiZs1",\Xn]0猙RglNcǎac͜5J*PrYj.5׫<K/^x1g,SLXXX^*UThѺ~c8:gT3+tu-%ISScIy|5`SsG>^F$#P=#EM#1ɬ1<єi'LbҔNJi)a:#f]H\AW߃j!iN` ?מJ(1x/FޫW/rE ݻw_n-QhdInA-~ٿ:{l&M>#n`MeV/OOO'Kzݺ6oѢ-VZ2qBo_}ۭdIC L Z-fOjk͏k<=6UZVo|5W8 I 3i$v-xUrȼyܹvSmSMOPbb׮[n:ݷv䘕:6zjlO0x`lɓ===t$M]lY"PlYxSGCiaڴ;vˋ~aIoߺu Yhє:t@ 3m4gL[._CB-\8u괎;2#yˌAZZڿ~ႅ'۶i r {vիWqI.a6ogvRr#yp/WM{2z6M{Fδlr OʖԪUf6cc$pJ*/YA9s7/^}͙={]v9s?1[W"Ԥ䤧)O5ύ%%%eܘs "$/#A%rDSHИIR"H&uIւrhKOn8A1E?$rr֦PXj2}n+ snL1^.D,Z0S*2u"IjyYqjT񣤤iS+W5r^'=?ђ%KuF aW܏ & ¥KmӮpzJr nYjsx'NYקBÈ 9 (zwFFGR2#7Sf<|e ݯP!IR T,xZV7{$׎n`6Wz -PP޼yV͚zJf0g=zbʢE(mڵk=#""jԨQ6$H" YnmtL }V .R$ܸK$]|_DEE1IO]ڵb=SYf۸ 6E IDAT Ԯ]{c}nӦM С0k>A}=z駟*VOk޾}ÇcbϝM,ߩS'$SI~G{ !ǡ$IBhٲe4iN8bk'$P@񡡡u!JHD,׎BMHL t %f2+1ŽwA!喑*Uk3XgBh<%$$GDJEFDiNrw‹gpR:fܨg=yepnFPnݽ{=|022"a_Y~ٳv^ye߾Y3l ϟ_=I|hu㴒 >c%Dː ٝ˅T+$•^5+J@"bP,DU@o/QH Pe0΄i.Fx$5m֛ ,a___z6כ53ɓ~o߾]u%z\TRx;v.\$ٳg6m 쒊/я\Æwۆ -[O JD$I)fv(ͽhѢu)SL…K.홿C կ_/fаfe)]LxdP㊗(V`_+W>MM5ͧN?a-ТE ;f̉322,KN@ʕqM…>Wzlݲsv9JHHXh ͛=&&oyǏ̴X,.]**UZf-6OzFGGnCbXN:5nx&Ot]6ydx7dMd1wq#vww+:B=ztiiiujyEM@rr2}Sju7.\ݻ#**JUmusZZZZz͛@GA!$1cF߼u3+++===4ڵk;w_.]too)SM:-o޼K.to1oJKOz}5::VZl _~ű#Gpx!/K,yb<~ȑ#<<=P|q4x7`W޽eݽ]ڤIp 뢕 u?~[&Lo6mJ9Lu"p}7ݻ+ƏMڱ@f0nػwX-[7o3Z uï_fZҮ]*8w5Ν:nԧO֩۲e˷z m:vzYYYYYYVbfٜ&#==U?N qܦe@t|qI s?R JL+ғFJ:I"Q`^FF^ȠՔ._;Ғی sf93333Qjܚ͙6333#Üi133qbX,rclX,VXd-35VbɲbmYYYYY6 ʭ3K}a5?mxB6͎fou!2_<-5uȐ!LzJzժ޽zLI!??K쒊1&6W2Kv= bŊ.c.~ݾi˹_^u+ۤ~֠^ˇgnRjħLx(X0&&Ϳlʧfѣmڴ-^/XlٲeK5ŰJ:VݷoP||߲e˫WN?˗======CBu8>APP#F^+$=~8ooN%~?իB11}`/_QZ5I-]TW^$9Q`-[,YRy---19铔G鱔rnIʓdW΍9D$4>7M+lj*0$y$rI6|KwuA(VI$\uRN$]-τd$.:4r,(GpIR=d)$Kubf1h{$-b d2p$" |PS#xHkuSyӄT+|lBØB~˼ hژZݽӖ K(냼Q ~*T UxˇGZFҥ<=qe- 7nhڴy`@ɔV/#66w-[TYi0rxցA,]F28Jr n%<|$yyyyyy`̴@/ {^_5}䜓DJSZdDi,OGh,S# lcij2^-3g2UֺwkК-!ka1uq| -WqZT&.uq޼-8?*6x_b$shðjrV讧m$W.PE*Uח\Pmk'<1_S@/.ȳO/3S?4aЅ4'T:d(BϺBlP IGaȖ@Lh( "cj7bfjy3]/Q6CxIoKL~ {[0f]}NO'W()u[:(te. 244fJ IOIl֚K 3pв)gPhQw*iƚew5Pc@&w7w&QڃBNGOniuUHN(j΋GT/KZRJBl ]t c(}1r5 Sp.8N y KJ׺#x$8v8TV!{NbR"*r1q{QNy eg*Ic%W1cQ]BD$"wD-9JJZ9'09r,"j + ܤcDH'`g?'JUuĥe{I-f!U4AHn˛êXŕL;|KtC 5hM?GT0wTtw#NH$GIE]:2ၞ-Pq!s: =OOFR<# {SJe*}Ŵ8~& jҬbfob*Jـ6avvAc! RTa],\F$/W˨l$IZB & !OFpr l̡[}A^Ekh4P j~&[5fqvҠ6-#UkPMa첬9ֽ (:@UVTO2Z P*yR_ IwE+ŧ(SבHm&gp=hl%;:iSAS2%2=F4=-L,BN iN*C)gfriѷ+e!*Vk̥M<56jdn턈#>)A|Ř 3; 0~Lo ;t?#rF֍.22|{|EbE@#$ˀp{IBiCsc8 5hwidGiipPR.B-VrcĠU R+>QW"KU9Y)..\TJeĘ.!%Zn(Aש20$A)."X%8wʻګ̰9tkT8 d/>{>R xIevF(fdE.V3Ivic +نeӂKUDI?<^HqC2#3 jJ ,l?f`F%zLse-K˨%$LvtV)![N)*8?D^%v{UW5R40bizU!k:/%94 Q^9GMe|z2rNdsi`n`VHQڌCTp<Ad Ĉn!aphRop$LUj126]jK/5{8:Ke2A~0u1d%IR^K1mH"zƪ+=1ż8-]NsM2cn'Y ΅ fzN@/yK:;ttVaqj.00b]Uf&SI%i~A15$ qټg/){"ܾГ5h>ҴRzcrg9\j553Cr3Fŷݎ78 !2NP+ LB'&լ5hCdzxnȞm9޲ԁ8:;t8a+EF*j'a "J+,A!&⼫ F4NocTW Ɨzƙ;l@zI1i ̕JE3ff r ]fԣ$ jo8ŻNe RB,&#mB3G٩/۳؉*;dO)rJ7kU0gGzmO- J^ˋ]㸗^$u>3 UX`LNX*CE˜h { IDATΘ1‚ <2e-=0`XPcBFF=fFe @Jvr9Sh^Cېާ<Jrb4hZҢhLW,5rc+[q\1^ nd|RoPGT"`TH7EҵO nϢ3ehb]:T iۚb<'GW͝[R:I_m䄍E^xbw$Kԋ !y##}k-J|sƭEG>Ë_rSohؘU|˟V~cru9rbIxOn&xi_W(_~jsԘ['53|k:@5k!E@SȆ}rGS#Bgс&暏Ѝe^.hR1o5!Ѡ5Jᴁq"o\t`$s6*jZD -ğf2uj?|_hl_z!8lawwqDac&._ʍ[e_y' o믦޸ë"##O֭'?&=; LnnW^ nnߜHLL8pMtaRR3fm6& gff}WϢ9 `ٖ/_aʪ\~WR%sf+Ze}!1gϞ'O+W++_~UGݻ]wsSSIhK=fhvV\OV ܥ ={.3 7$ژK Au ==ƯzzzLu6.f0!7* Sdl<<<<<36&Y,eeWy.\'ڗ ;o6l]ü̿EX[6}}˖/ر+VZ5~Xrѣ#G9r3,6j<7H.KlE'@߳jN0HHH6mQ1eԫWow?^#Gtj٦MH&$&?:|Ϯ\ +W s1 ZsBb:9U\9{PW.;>thϞ=2E 3;SLMII:dp*WhBHJJׯo2+Ww?:l ˕+[קDGGӱ[WPd 42yrJJ iZZڨ#+W ,^e͛5+Pt@͚-^j%ذE %5vI'啒%W(_KN3PEc} ̓'O5gϙ.jfL4Dnnn%K4y nf9Ax]^M$,<شi=r믾zE۷_O2l .|2ϟ7/ WtAH{K.9z!4hm۶Ȉŋ}ƌcؾVŊ]殝;ǎ7}ƌf'1'GWЂݻ,z̝'O#F@jj*r-&Y^yOOϚ5 ƍ`m۶-XG:uVZ 0{7|SϪm۶Y;v/_|um[=Ky "E˖?wݺu׬]Ӻ$$$(/͛cccfsXX؆۵m,:w FڹcGzzzzz3z4t9 ~ȑ#iiiD;y51ugϞ͖rȑ޽>Ư>ĉf_Y& 6<""f2ŋccc5jxzÅ)..L:`H[{˗/\m۶sʕnՒܖ,YraнG+W 2gb8st߾AtoѿgT 9B^{| >|0Wдi1o/+Vظq;~Ǎ߽G%o$wwq'ƟmڶkZr^ݦn9>i| J߾} WPutq=>ۻm۶v燣~a~o%Jȓ'OժU?`m۾8z^^^y^I~ݲc^~ )Sv,pQ{>޽tժW5[,[⤇Ŋ-! lL@@@@@@@߄`c&7!ؘ wDե <Ê1 C.˿ϡHa@/f)S^y^e"P%um d .]!T&O[2eE cE9E;w,X0MVEvՠ>/^4;V\OsW˅۷ a^{pE/^U%nݲw^rscVu„CBBiƀg"UT=f'߿?nQ#G3V \e6w:g~FTJJ!+/WrE@RRb~}˖)]r!v755uذʗ+WLO?cl߯X|ɒ%6h0e䔔&ӴQ#GVXXQ=-… 7kV:TR͛5[xj%Jaxߖғqe`ZZڤJ+/ץsi*!Y[Gѽ{ Kj׶ͱc|P+W6u*M \ 28cQQ~ҳl+1bxZZp1cVZXlae˖6|xCX`u7}iL8SO>&%K:u ᜆ֭ۧ^… ._LBfϙӫWo:I6m͠%K9z!4hm۶26WZu Ԡuh6vr)&I&nZDq> Gr%$&i::oߠ;v竗;+>#g:uڵk{n"M40!1co5oG*p kL0իgKfCYdڽ xyzLn&$IXҒ$ ,kjSҺub^E嵱J*xѢgTa3܋8h >d2!?[w2e-Z~ڸq۶eʔ]acXxDC5j͛ͣ5\v߷כ/WX~)__ߕQёQ+V9qĊHB|qES ?Lw*Cb_rcNVuŌEgM8\*?{1N.^(..\ٻ/4q- &N=jt՟~rym,!1Ǎ58uL@@@>\VmHJJZ /_Ȩh:ɯ[[8PHȇv\S۴nu֫WdzڵjVP᯳爆_~w ߬Y׃Wuؑn۶u5k:|fy|zuܻweVkfƍ_%ݕ],'O+V(UԥWTY$&&TZ;*: blx w^s`xϸMow~|BN r qƎ3q7?&zW/ k}^{5 ** BCCUK C߾Vݽ Z۴i w1Nc898p`gΜQ|5k֨Y31ŷl˗/ۺekX݌ 0!IUcէp"o]+ w7 ..]r…C/+L^zWVmΝǏw*l4ܜ?>}O7oޜe\s64dɒ#F8Sɓ'M4ڵbaRՋV={1+|K7h~g3C@@@@;/#}0~X>O%빕ӧSlٲv rPVt c``g.6\?o޼m۶6Cիz/Ϳ#&$GDfr rQ!n|]X8* Cr4mڴm۶n*W š=*^4v .XϏ3ZnAA}G6oe66_߮mleѹsg5z;ӷѣsιUNnGIOOOKKg66_??8ySBļ򊎊/eVbo. f9z2,S@@@@EB%9g2u~c=._reʕжmʱr*[$%K:lt+ 0`Μ9ݷoo?BB!^O[&Mvٱրh?UzhU.V mֈ`ڴi? &kRJUvzNܹsgϞ}keRRTLLH:thn^.`0,-----2J5={gefO0aO566?^SSkd'Ot/ΔW#.9{:qB#7fVT|zUE)iDL> .͞gmm ȐݻwdQ!!NfdAiiiii)Q@SS3vMlիu$++z%9dff@DwR-ErssW\))=5x`O/vr2rBB|kkqBH.266O>u}z]VV"] y4/oFNkӧ{vR SI$&'$ܩ4+,*kgw֭۶IM 7mS[i/Us1FcbcU+#| |f̨HV#Gjkﴵݹs'dY466R֭#B<&I~e{^~A#)7/؄ڹBCC|>qqtYȸg!R@(| eK3zѣG3|6GF@zZrpk CC-QQp."@bb?pݽW^ z)5I~(&:ҥ#GT(TsZ[[y< kP$K`UU|>?X0~uuu^.b 2˗/O*.*zI[[[SSÇỈ˗/ K.EDD)7WɟXY23 ||}EJ^r O3B)W ./8{bѢrpp ⻣cɓӧM%6[:;;o%BzU'k-] $EEERyzzIFrgJ7`2 ~YXTlhhlkg陗`VVVN9RWWW]](`Μ3آcbӧ{ffh[իׂ J^rtP<!5h<^]}>7! =lɒk֮ zC ϖjjjٺjjjj4v/|g|W)Jr.u?~|q zE |r|ߨ>Lmj..[BH>썡N߶}{wW!R{c=/F!B!C!NC!NC!Njo_ߏ޽x֮1xS[NbI=!*#eCky*k5vl`_|ٽ5Q;Zmܾ}{ǎnS&W"#7544ek-0Ke:$׮]L9hࠠ+W"$&X,q6}!{WB'N@|B+jj#ˏuVVͮy̓ILKKUtID7N83} ]:::IIIs%CtttZ[[Bn cc-E?r?4u ,,,#"N(++KWW7%%n#'%%UWW7+3bljjw߭\zѲlYq\#ncII̶։+KfȮ?o1s P.+Ii)u#V@Yo LyDwR@hX$''MMINNaa"344$$4zѲ.Z\CCCKKkQ[@KKXL?PDl|?%^ٳeLMM̟ff@~LGF~䉉1s@~ղ@IsB<ooEE9rzUE)i CV™> .͞gmm*}-6CD%,ϟܹ𫯾e'328TjBpqppzzRWW{‚\]]]950Gyyyr8bć?DQ$GB.BGed2uOCQJݻ|}gutt422JNNF9d2(Svv+WJJO }싋gճcݻwYYYll ^Mkzy{7r^>}@ س{7BeIFNReݿ 솻__t6ߩk4xzzJ=fllXstxݭ[o&Rf{.cjj_iͻq&I(#&2c4NƪV Ԕ !ᄺիV -$Ā@CG%%H84m lvy .ܺuk4jn0rM8ή; 44O>qqtYRxR(w@|2==l>}F=z1cӒ.'/1ZCCpKT?S>P[ikkX"_~P\T}ő#GCO>y5ѷo? \TP_PCÆ,ƍ0ErWCC Wa}}=7 7~ԜUFQ$G x<^ ?~lgoOܶZ*r/^!B^xA{|rQQ19JI~$˽r׭;x55ڦcffٝ ©guT#?|իW{C7pE;7l(ay*G1fI~\._vJ3~Øco\^ZZzŋ/ZXXL$nv<9) ܩ}rNr%eikk_SAaTVVJ-xv2?TSS TTTI*eE%''-QQL&* ȑ#M9+ʢB+#+iӴNlΒq`=11dRћ$!>4b1!r|||`eʓ'd죧gΜ!i&4455˗lyfϞURRBO)t7S.Ɨ/_xxw7 !1#]D˗KU(#uDݼy3| 9s>:HJ ;ogX<bؾDo)TdLߜ涶O,\0/Tnn۳gOe(zaDDD)=WɟXY23 ||}EJ})<)RB譡rGUp\_plŢE_D|wtt[@BCCھ {DKIB.LKOq*a455 [zuJj =Qmڽ{Q\BMƔ}~q-oޱc۔?Nj<`mdf>/+/dk׮&Li4fdpPЕ+WDSIHbh8"wQjާ !Ї p+k8{"["#o޼y!ɘiiJ.5fCCCCCÉǣcbO!KGG'))iܹdHbbNkkR@!>x["<"t{tuuSRR6rRRRuuu23Y,X̦+-+ͦ͑g5r6lkk[nXLOOs>^Bá¿u]1G_&RSSz{dfhh0fk<}T,.rŊC?П/)) <Ȍi4ԩSJՍ]_?\cAfaa\.W,eU3YZZJݛ aa455'99@ZjXPEJ_Ph"sss --aÇGm ---b1BaRr"xgBB 23551^03=z$ɓ'&UWWvuqիV54xό[$D#u2:pҡC t'bWWWw)(999";vH"tppXXD+W}@ س{7޵ᘚ4rrrnܸ)GNR*Qd'ծ^*|el$!::/-)6GFšhfn`\p֭[fϦhTp766p8vP8p`?˗/e!Օ 7mS[i/^[BzGB}*o}c ww^z1 kk@VVh̨}/G044ϟXnnnDnbkk1z-[Q!IDmy9hii!w"ۗ.]:dȐe!!T!Iss{%w@ұcę%6#ȨQ3 #FXOrr~zz:3+3~̘1rSxub/]8rȃ+UaBHeoL7`䮆OxDT}˭qƑ!Ə`\.ŋ:::Dȋ/pbs=/_.**>GI1 яrWouF۴Y|xlX;'Oh4;{{SS3(yF3aaa☘he˖M588 ?2r TB!ռ-19@tp֬Y-D[R!TWWՑSuuuD8qgb ܲT=z888O>*==]7~ߞ;G|Q0f ϗŋ'ODrɌڰЂ¢N6B!$KTF:]F#UrRSNmR5111 2\%*Qaccd}ȑĦ`eQ! ѕpiSMS6g3B)BXXݻ'&&,Y*zSjW?.}!"uOo9s \~ɍ/_x555 nr"5455˗TM່˗/ K.+d[:X%*|||`,X۷㍲rz ̚雓Ӓ juuu w w{lEHDDLe:++VqqVfhZٳgr\~:c!:yR4R3O>m*? ZqqK|Tοy}?c%ieiS&!nnnlv=%ۢ0 .Ď$IrvqΞ5_|쬰JUCŒ\]VO_JСCCCg h4ZhhhpPP[[AAtJWWqQQqk󒞞V-B7{6l奧':q_{y{0 ---KK9Y6OOOmm޽{G(U}},777==E*d[:X%_r%d0L&sʕ⺢ Rvv?ɤ:::XY-Y2 N/+:&&`Μ>}踻gffF^z-XP, W׉ O//=}}:nll}ǎNoB!$qROpxܤOΝ]W':vhHȲ%KYB}Ħz~~F"<{wvvmooXe1{?@-!Boe ("osqqIRB zt{{m۷wwEBN1y#z}c!B {c!B {c!B {c!B݉@}1/<o;ZmBF:ql_ߏϑDpER6Ϊ۩"#7544ekwz)b>Bu{cBf$UGR}%2ͮlvȠR!; IDATJojD*#sgGxyyuFH⢢,]]ݔԻT]]ݬLUC!?"N?@(&%KII~R^&XRR?xh۩S]䜗˗/ƺ8;3Fz{ٳ%,6f :du;)S23443z5k>}Jeϟ7Ę9xYXX(UXITh$T@hX$''MMINNaa0gBB 23551^03=z$ɓ'&UWWj =\.wUlm >df3#??O"Bk@=AxO̝bo[45K.h\߯/~mF #'7ZrP  !$xxxdgg6nW_P(\&2;'WWWѣG&Np8.77\}o;$ʶQ~p8{S7nL!CWȖ?аޢE'32~]ܻ{kxxxOǜVA@!ׯ_UygM5u<]]]M 55u55FSS{5E!H>__<>٥bY:ylF͚=./?s…[n͚=&QM/oFNkӧ{v&v?-cX={ܶmn4ezxxy.~@r1"HbbzzI|Bb͝ZNӽ¢vvnھm޵ᘚ4rrrnܸ)T(FIhjjSSS2NwD[rM8ή; 44O> qqtY(T%:]F$ TSaڨ0B666PPOG0d[6`=11dR%ۢ?J9}8B}%1]]]v]vݞ={J@Lijiijj/V,B==8s m*ԩS!!nW? ZqqK|#5ejkkLv%Bz9y*LB&Q… Ǭ 'gg9m! jA 4-4448( mQx̋^UB}dlL驭ݻwo?6l#K FRrʚk qppHP$86B!ԝDo_ߏ%$7߆ U(!BSOGOԲSm;vlw2T}τ 3ڌ  r ҥK+/=jC./?# y֎$&X"B.כX᢫Gx3/UƏW*fCCCCCÉǣcbOnS&{ϢBVq_zzze4g\2$11AGGUf BHf*> wاKk8]&>|%ͦ͑g5r6lkk[naر;wr^ٙ7'ɬ<==ϝ;[_WGl>z0''˫3BʓT:TnoLRjjTo ƌv͚O?]j([[Cwȟq\Ӳl)ҒbEkhhhii >!N-^aQX;[nm߶M M5r Ȯ)TYňN=vFtb[ 4tt_ZR?lsh4ڬٳ3.\u֬ٳiBktzc ww^z1 kk@VV b/]8rȃw]r6B0<-O.&999>0lb2]"?>ODG/_P(9ɧN=uڴ(B!aX`"KNNnll|%ǫIpwS!ٳg:-t:3gI.͛+W̙3gQ4koNNNKKs[[ӧOKJJ.vV?%*/fnn۳gϮ6B!y k-]MdX\TT\T$jRGG̓'OJlJ\ԗ <RSSSSS文TZDe 'RM2X&,be~]7l/•+V\;B!M7ƍ=m```0,-- TDF>N766 ۾ckÆ^^zzzrk\TMMkE9~L&N|bedӧ,,,PBu{qWg/yC !Bs Muu|]]]M 55u55FSS{5EgNNmmmhĤ WD!zDbJBw+Zh]QB!E;H$*B!B!B!B!Dn-B!ћXGlm=]O{ O+BuV67!ix;''%7k2`찰o544dſt#GJKK9ƞ={ڎ2~ڵNSSc/^U-.zժQ23"Dd9;g1sihhȳg$˯0ٳgKYl4:tu넯K%.rŊC?П/)) <Ȍi4ԩSI6P|>'L` d 8aݻR;T%6>}lAfCٵk'<|WLCR() aa455'99@Zj$9d01p2B~AE544 u+qΔGD|giiI.Z*˗bc]LLSr]?32 rԫB:ŋ6. .!]BpqppzzXKK\]]]uE'327<~I꣇?!S?o+LᑝMFظiW_}Tnnnkͳ%fVTtttLIMc0 +/J&y0 s玫W!Q[.XP$gu]uuuVVVDȍ7&|ِ!C+J%K --{y<^]]޽{92om@:Yƒ K5<~Ѥ8 o,B#~ptbS]]@WWWSCCMM]MF^ ihϞ'MrjkkXӸ^ILLOO366OHSiWXT<֭[%~ۨ6ߩk4w?Pwy}33"Z߿vݯ/HN:lUUU?i"k]T\izr`d6066O>u}z]VVC(Xƒ+Ξkx1=rD٣$GSS!w"{#F@CG%%HyJu*<qqX,VϞ=m9M9z]BNnލ7T!:ylLabmK.ؐF|:|РA_Z9ڌ{dɮ+ b4%5-}ĉDŚ5W JJZZ?ѩg7(CRR>y|^zMNE'LqqMNFHOO  >SVIK\rdH=Bkoo燐~zq%[GИ3g~Ԥrd$ɺh&\^;S,ώo߾6i$"yqQٳBX7T3?. i'u ?~L233;xаא4Ѐ7m"B?n4RDA?PWWWD|v]mmmro[[[LLtZjZMM5CCizX$xzv嚚q+/ޘd9J s\3{Y[W/?mzzڒoioo߳w̙rWou.]ZhѦc{c.Zi4ŋu=zEV o !uL.z1u..*/644 @Q0 r]1Xfի*E| FV;=ێ%9 !r$xq{{{֭bУG NVd]!纫Bͽ1⹳S$Pv`mmmww*(,JWccc8w"S*rIIN;ub6p9RyXeuʅAL!wѕZ%DG/_P(9#~ǺR/Z8k9v\@EERQ.L5BJQ _}޸EKWSSBg*))immr]t:.3g>cvX,֎@.+Ҷh-QQ_~(aLߜ涶O,\0U_UE ̚5 "Ï=/.?:\w/_.] oAB!} i/CC_νo ⤖%kDNF~y[Z'|=y<:t> K e,`.\0~h4 [ xCJj \vQ`</8t8^V??HV=}, ȿE f]vsp 9Fwݛo! #cn@^h)nM600`0ZZZyK8奧OӍMBCöAڰa}۷_fouuu6l{ ?oݻtLX LKOq*a455 [z5*VraۿbJ&`0L投+cIPd2t'VVK,=}슩@E+ 05k'TGG!s榣7w޼zZrB>!Hءz1 ?s>?'rrzg;z4$dÉc#BݗcsNX]]PxR|l ̟7<ӧii?z!BD urrrrr^{HzUBplLܱcI'NիCCleOdt*B!9plLkw!B C!NC!Nta6B! !BuzcB P~%~}?}ئ :=÷ [vL޿cO+BJNCE괱1}Ogq6T{5vl`_|陿 EFnekkhh062r3`G@!ԛXB{߼' >!ՕNEA_gee-7o}lAfCٵk'<|WLC ǴT 䤩9)4, RSTNd]cT˗/ƺ8;3Fh;uy IDATz{|Ν;&N448q„ݻw 2 51fdrW!P7x]O=\(NK %) %ՕZ9.Zx2#C,~sCJF#rss%I #'7Z47l2M+YUAs£$J5PNF_vqU2$j ( !.=uʊqƄ?2dHyYՒt<$Yטƒ K5piH8p*TWW/**PSSWSh45WCZ4ګ%|g'Q,il tILLOO366OHSiWXT<֭[۷mSyq;uOOOՑ?*?ZUUկO4rp/oFNkӧ{v/\`7_cr*Z(YGIJ5P̃+Ξkx1=r)籩 LMM;ZG$SxX={n۶?n7rsr=<< 66O>u}z]VV#Zi],/ӔwM*F!=ޗ{xWccb䌻nS&_t)ƆL4 :w:fݻw]]'8~hggOv]ȉF&%%;Jx5T?O,-utt JUQRC ;,֧[,-,$CzQWϦXC~A3y燐~Ւt<$Y'NA8aU1130ׯ6}:4|Pt9gԴI&ɋfϞ4Bycc1Mw(e7ƍ0EtDmħAarIQQ[SPn*jf[[۞='Mh4#AsXO>y5ַo?hmmUԏX ;j壏J !L󨭭 /^ CDjI:A Td50y@77w-(rqƑ1ǍO!xPCu e7Oe]\UV'$/^lhhX[[ځ Fz͚kV|9(XJ]]U~!T YsYmh``uuudW-I#Hu:bJ)PK4BuD7,--2ɥ1TX[[} $d(F$_sAs˝ںg㚺? R XY`ZTp}Fkx(KUpWE"Z@B~ܒƌ}|J=랻{SQUUR}27!֭[;GPK΍ƨf LBb #J+GGG4g8oB>0=&[RR"233V " i|>XXZ8<c4̐qNvYUTUTl+q_A*>>֯[,ׯ[@u$A  `NPС_z%\2vh>>>f>yP( ǏׇK15 vD"zjPPjsɜBHzw?o6zʊyؾ]mYUX2T}7dVNԚhjn1N3iMWU5Vdڐ 1_s},К#(ap HSz)psBҢ] 022M ,&$"hC#Ry/abR{ jeGyhkk+LLL4i='Nxy{[ZY|3f[YdR/ooKKKYԴf͚~[BBs l%+ ;=^ ?{m;7ܓ%,#iffff]v =pqDd䂅 E&&&M5[h+UTTѣi#!U!BȧჍ5vi1B!PQQэ77F!Z255!BȠ7\B!|w*P#z!B LLM[ҝJB!RS)B!sP=SI!O3lUEB!ejjq:!Xf(wӧOŜ>}5LH$Z~]_>sw?ݣ3pJ <}1bu֏5Jd\߽{OVk9">|X7L(Vl! w6Zܩ|?@RŹ͙j&%&FGGW^ȑr ^ztTTrrRL^i?z #yyy]x!C/bbb3 _ߡ.ƹիWs\*BÜ0.8|ӌWB!X?5J6mճ}Z6N <}LS|M:w.]dgg3_gΜ $d >}:Knwп__Z6-[4#VHH_b@oN]oߺ6+M1!M66|'MMMCL8cKHQ7oB:.|YA;ԅ5GbN1_djjjjjʼ B*7`v'NBPxر9AA||}8Ο?/@0Cb&&9ٳf}W vD"z9s &_گ_/6MNJULZ F斔Dy>|XJJ 36j'k.Tk^!|||_.99Y$%''_P&#Ν;' @>}oZ[[v,_ի<+_ժUi!}_Fb7q⤄ 'LP ڵNd>w-f>{O>N3@dѸˀ_ʿx3fL8Q*~;q/73nؾ})jKJLLJLT RQM1j璔^!ʤӷӧ?7SߊSzZ:u͛R5Nn`!W_ی#"#,\شY3ccc͚-\HxdR/ooKKK0Қ5kLMMk֬%$|o 1r{TTb6mQرҪ ҥ"8V 4i$ .>'-|3׭_b,1ًBm+Ķ;=^ ?{mK;iie,7n$;;;ٞ>u 9aZ#B!/^qqq, leWӧN]B!T AOe&%'U^kcbH,ѽT*Xcׯ?_ !B*[䓢B!N:]N!B狏~>p$BщLg=oB!D޹SUwB!D?ttLd_OE!BPSI!O>Sg J净>CY !|UYwe2TX-k5XUVW~?kVvlhoxZy8qqC}}7rNƍ*ȸ9~XƍzzzF B}c*8d6WϜINJڹkcǎ*IIIIIIYl7|/H.^5rd\YB!DU={BK !:nxͼΧuҵt~GXv o?yzfƄ _өSH$}z_yII^zYB!DWbX,ްa}=յWg7ˇ1wnkwj^]wgϖ肂 ԯ0v蜜ujrK}ڵ߿VÏ|=pSvvڷq7o0 -\خm[;/63$>>NSݘl g=sKJJJmڷOoG{zu8P{Z|񢮝uj?}TVBЩa/7{9cFrtwj`ڶӧc֭+\\\BnyE-Z<ݻ޼yo&Mlj=քBыJS)Cn߾u3gGM ?_|oظVZTIcc驜>})gO8wϞf͒G޿P(pvvVL&ۻSG۷nװK׮:yG9j1""™{0rH21u;w7~qΝztr'/]޽Ν;'& a"O",]ܕ!B>*.ŋ-^֭"ybҥkW;o^rʕ+...`I"&7f{}ofڷ?tvvvYYY3g`NEOT "#"e2YAAAdd߿2ڿoߔɓKKKW^=t0EGlРAC>߰a˜vvv77lNk׮Ul% !P1'ggg' 1_y<޽> `>{ aJOOOsZGGGy3|XJJP(,,,df|Z6l9AA|X,r1U3)GŽ2gF ⾲k,X<oUFh޼93HL6]`*Eر!B><^qqQvVz5?t2Mh |}|.\HWֵk#Q'O={b1N?Ngw* pS|]JYKKKyHddĤ,Zxڴw& G/U={B|||hi*!HS}-T&ut퐛+5jw _|٫g.1/uKw+kkII~RTq)?t8gϞ׉~{;E:բEKB!: =ehh\zuc##C30gHK>"K ފ_uWlpߠƌ#"#,\شY3ccc͚-\HdR/ooKKKYԴf͚~[BBW#GZXXGEE+vi@5ƎVV.]yĤI&q A IDAT8mieg̘nz]^@ 8vd?2iffֵkU=yLj#uUTTѣz^{8qVVVV8y2Ji :99 ,--+F!PccCN:uw]!R%|jccUׯ?}ׅB!Je*K>]o~... !B>[oo ԩu]B!|>!B<1B!!B>QoB!D7F!O#B'B!!BzcB!D1B!}!B>QoB!D7F!O#B'B!!BzcB!D1B!}!B>QoB!D7F!O#B'B!!BzcB!D1B!}!B>QoB!D7ѫec]Zߵr>@T͖PB#q<ׯsпv-E"ъ۵mkggۮm+bՂqҿ:kq@hbxrr2j?TW~?kVvlhoxZy8qqC}}7rNƍ*ȸ9~XƍzzzFprTvSr Gٶmzĉׯ_WI7oިecݮm ̓R@ҹ{If>d\߽{OVk9">|xQfffBbx~+6WϜINJڹkcǎ*IIIIIIYl7|/H.^5rWDD*w.>{+~}ѣG?%$d!L;Ϟ= {!D`l#9s~=ի9Wnޑ#իWJNNV ?c>{Axzxr u/_!x7;֥K%Ea5nfz鍛&L~Z&ӧON"Hz%&%y}*{E~~sg?[)\kjӦͲ+/\WnJJPTO?㰟>#}W!D.Z]۶v_4lPgH|||ixtjζC?.^Rfp`7nO?d2Rh,Χ͙3I&jFD1sf޽{=cLG{@$%9SMgKk?2pa#G$b((( ްAcnjYv-z/_T;:ש],-̲ط&ܕRm[޾^ݯTOeŋv_ԩSZ B l"yb0';{QN ̜9}>_n]@u+#0/Znv''}7iظeVGs1#1p ]MU|™ &8;;4k|?.~~DX|!=W_ug^W17oɖH$o߾MMM9bL6i)'D,~0k`Oo*0u#GzrÆ;wo& WԹSǺvn.s?55ifЭ[zꅅ1Bvʽ'M+'''/o{(F޿P(tsssvvV i4۽{zJ*r)B"qP(,..NK;?jH.iYY[{zzIңǎ}~@k/_ o޼9:iܷ##@ :t_~ǥ?_ߡLD&|cllSYÞ=ϝ;qejDPhI>#+EEEMVZ,1H$TXlyq $f>|&1ɵcǻw[V1'O\|9_?b 9=$??@!g&\b˗} u+cN1x<ް䤥|ݻw 8{q yqyyy61c;wY())ٱ};in8M[ŭ[;ϱ۷%''WVmu37/tLJƌ q={v`fipcpp^^^ Fsw[MhRls8~Efujj٢yɓs[|9!33@ PgK/r)*f-Z0hvPӦMn0Iu%5%eX5OHLMMmrYDBH)..q8\ٻZjicmbR пյk#X[vh|ȸ|}쩍}=y|&3kײWL&IRk:kC&MD˗/wjܸ\J,))iܨխ ]#kAմSX[ee=д.jsHJJ$9ccmեs'С6Vd;zCrZ7-R3 :ѣ{wk#r߯K];wƍ6Vn3ܩFgFDײN@H4wNL>6Vv_̝$ujײ0!@:YʪT*ӻD"T{%f...%9lbbN3_}f9 ~_8;?}[CE8v4ıOGdŜb8vvn==EBBz{wz-wп__W3-!!ԓo޲3B _|جyEРAC׎Oww5s߯F `䈑3dS:e ;꧟~ܹsg.]KwsN~%BKD۷D"YtByk׮qG4aƓf?qEwZpT>#k t+YH$Tfƭ}C'Mlgg5s SRMlmm<,{TJ W_~%sVZ#0Baaa?r9ҥkW;o^rʕ+...`Iui,;\xEFDdssAe߷oɥVf& !xC |~Æ 7 c"ܰ;]>UtXnJsՕ歳;ss]ݷ@3VZըQgiBH婰7\/ gdddd2 Sz׃N3I, .ڴi !!^|nݺ7n`mM1OuҘ 255555eޅta4 0o޼|iSaT[ˆSŹWXk΍Ɣ#*kkK/FD~=h9 Tmdv![̚L&[bŘ1cjz*SX޶m[Lc+bo7.nm7,r$B*JƆ5</ `~aaa%%%"(33s}n3pXn]rrH$JNN^n9bĹsB!tݧ֜\kkkW׎ WzG}"OO={iJ^N3"c׭9jԺuV=<9.U3`RRZZZC"##&M`Ӧ3UEm o8-}-؋H$~Ç1+-ҚVm2k\XܨQ +^={ܘC޻5$?}r|>ᰞ={2_'~ѣn333>uE VAmͨ8&vqqaV)OH4K@ (>K|gaF SWnldd``h`x i%oEbq+Y8oP1ccO3f\ҥ"8V 4i$ .>cK,iEն;=^ ?{m;iie,7n$Ů&ObKHȈ#-,,ݣ/ڴi FcǎSJ7玽@p8lڬY׮]CV-7jh%gheeffffii9j-!,z}XZYZZY?(yW ͛,\$02O`}C>ooo̾ltizNB2UMu>K Q1cc;t``S-G}ׅZfn֬J*OG96Fׯ_;~ 7aZlY) xhyO/nHB|~@!|x,N:]N!UB-OQzc>z(A_ !м1B!}!B>QoB!D7F!O_o9zϜTh ®zcЅ?\~ۀk٨m 隃w?Υqc;;.;mڴQ\,**ھm6n: ճys^mՉ:mـJ͛7,=׫kgg۶MI'^~])aFƺ4n\C7U]zYڷkggEF~~+ѺwBQRaWuU#U zV5%7<=Bb6s3+-#:Uywe#"%b1ᖐ0_cccƏH$ R`^^^W.{!T}H9s~=<A~ pR'.^ջ9,**bbNNN6oq3#/qvΣ_ϝ_re9քe͝;JmڴY|EyMII*J'&ӧON"Hz%&%yy{uC7n?>w>KK<B4~#CBuФs999ZZhQN'R(:80g\]b8'Mgӧ_zRv˗^yyy/?׵|՞=ϝ;wL"v,Dn޼ P&0)1 ߔ+H@X~B>CsR~9QukHzzŶf<ٺm[͚5ϝ;ukTLLJ˿q3c!dƍk `'g(UXC<l @hhddILrݻ֮:b>Cܺ>YniӳHN1wn imw';88oEkyyy7`򏉍sw]ZN{%}ìE jڴ8W׮[.))| fQff&:̝Tѡϐ.^^͛6hѲ<.B U⼱H+W̕ 2"%][ledddggr*.qBԪU @RbbȖ-W^iݺ={YL`y]XxgN;ԔJ*nڴWϞjX;;53Z"!!~Ŋ;ut}떦"(`ׯ_wi̙L;wWqe=zTujKH3{ؼe W_}uرnݺL6@j8|MO8;{s.ah䣚9h>w7ovZM(0;-Zؽ{עtLLL /]}H$K.Zzdd)Slf|B>CUŋ-^֭ ?Gӷ͌[N<.++k"07jԨeK!(4Wz@A'_~ׯ3.];~";+V^r3]\\|Eqnp*EYo,]D"w b7ͻvw~ Z1aÆ|>aÆ\vM>s#M}YO=Pך/ gdddN۷UM4pss˸T]ݸquE/W,ڵ@>}8&v͚r']a/=- #8l|TWsUT_}ĜDceOMbČMLsgNj >,%%E(23|=C⣸( `~aaa%%%"(33s}nX.Fq9P('~-*0֭ X35j7nC.Q'Oʿ>{B$\<ɩk׮G#Ԧ7v̩S!`XH/bN]ʔ0Kϟcvef:pbAKԩp%h~) IDAT@ ص{7Y;wF>(',]rպ pSogg'y˗z zرc111PiLJjZ 7 Ҕ***Ņ:o}33SZh=Oaem6E!U.%Kzy{[ZZdll`¦͚4mlETk֬255Yq /ooK++>8cu׫FS[tYc &M'ҵ\=vJ ۏ7LbbW|Bp+.>^׋eӦMzۺuի֫WoȑΧhm-!!#F033swwrnVVVQQnnnfffF 0aB` K+jժ 6lK%Uྡ1~|>˦MN]16o^p;.>A+߻!sSaccrE% !ulB!!BzcB!TNN>XE% !|\hlB!D7F!O#B'B!!BzcB!D1B!}B!p"$%%%% e?OdL&+G#BѮP( LM͌M&!BXYYH -----dR)Y$ݾ}P*rϟB!JR}{Wcc#:yBaY7F!L"-115eabf*-ѭƠ!B2v`a3<7F!‰ޘ#BᄽehhXl˗B!s!Bީ4!BHerҀTB!T&-i!BHb7fH!B*!0zB!riyzcB!7F!Oƨ7F!R7F!R/r&#Bx<ϼ!B';B!T346F!Iii)ؘT*-_#BᤒzctB!R46F!R!BHebycB!K&Jj,7F! ݩ$B'fB!Oi)۝J)2#BD˼N%!B'1B!}1B!}b_g*ilB!J!B'1ݩ$BT~!B*ؘW|ilB!D+oX\TLT\l((8!B0440V===HmXtf:wN%!BfƯ^8vD3v%!B311135(%W6L 351@"b]s{cLU%V*GʯLeВϐj~%ccKT}gsY+M.x<ÙbD"#ϣ7VemqlIźR?B t&=] WE:ցnV" r'##c] g˪8 !X \Rۧxه$A;sWp%" e:l*CNƽ `2FIt6-Zz}P{qzU!9 d2&ii)/) 퍅= p-x@ h(j*[S9* iH%3 h $*y 0Oe%O&7&U`|Xf@ Q!I0h5~@,u-8*V. /U0o*1`xq  JCAC<ڪ q9_Lh -[e[k`rVik0@.Ѵ!~Xsy*hN*G(j@Zi'QGe~Tkp;rtK@75<຺ u=UU=mp b|go 54 T,okJf&&Zf#+egeqOp[QCW-{'TRwro5@ 8 GPC[r īD`EՙUUv B P+ph\,q߯٫B} v=*Ch L djim pW@E+4s/Z]֤5OnB`aY 9s] -[k}ʷ0۶V֔K,:a?>u` V]r|gpph={kG5t\D@:m5IϞ5oѢmvUָK6m^<{S46 \:(Fe!S->@~-ykp[ylLmVMq;A`$M!o@kS`y{\X,{ @Md @֢@eԥ[+p VC*q Un2T8֩ڊ o-@fߐ | J*ũYC}WUJO-nњ)́3m;-Km5G{]W(nrT,Bi'Q¥Հ1x`5X@y[^TC%\@7|)+W b|goMh~ J1իשST&Jej~܀g`dll`{Ia[e9oPA1sS[I!вsuRـf@.Lb0WPTL/ 堊{ƤZB+Nb ӓBV@u Z.G%/O[wϤt}@VV,a*gu퍱T"). h[{+/z4άl6̀w+7rՖ6\ך&RT;_mrGD ֖ jo CFq,BSk[s95P ;Pap p>T%W WgoMhwWXvmޘSqw*Y6D7K@ <&rLΑT$j~.;pWY ߝRg*ӖbV\6ĨJr38%P٭]aI{gTI&e*$^0v6( J+Kk|ޝ7Q-m#m@+Z* oVEwVIη't]6{: p `O:V7WrpHݳ#gr0OCMeLD[>0ttsND;`ɇ|SslOheGK@նx xG #`'0f{N#@챭[@wz zpS@o@0^M P 26| <* Hַ$@G5 S^0Q'lb䭢񸵟I=v*+vq $} >g\>Vp{/ v14!SNr׮]=gΦ͛LZQYyZ!79?o!>Z l|ܟ3/Ο97xCƟV=7F!tP_y>11q% ,ˮr {?3SB!)MO>cFLtt\|?ݷo_RRweҹ1B!Yfsff&qw3v,S#76E!SMRѻWJ55hJR 7=>!Bdx׭B*(++*nՋ7˺A1B!jj|)B!'B!'B!'B!'B!ȵiM6;>Bof^ITB!RWW,e bگ }o:ݻwCOV;7f uk2SfL)sg&hyS[:>-H!.Q̗ԇ z d7rCf!%{CMQ| J:q; kZ-Z~91y9Y²Z~OsJGг'N1F} -j3`"#GX8SZnzL;vF?7/8?s`JP‚vZuo_-\ʱTJxp/B񅼮f7t -Ki&`-^z-?/}㹨EqUVVe nW- t޽X)߁_ LafЩ1@/4ʌV/|r呟+aU6:geOY]8NA²XxѮx?+QQQ223z;wmo6676v:|gg>PYQqZփ2LGa~ߚ@||Q>2ya#oа+v]VVj7y!CJm4ݯT]nF[Z@DD8ƞ}oII^s.^?~d7v֬Y۷mKHLܺu #G,8{GF]| 7LiABqINrĒKUbJHYl=W|ENju5wdZ9lܹ"'M:41}}28FQ(Z,1LsMOCvvNjj`gxal{ sMKKgpO?]} 66l۶m[SSLjϳ--vڴiZx@c'?~ܞ9??/??g#=ӭ%?;e>|g:t"R*5̽E8ҥߺuVSS f)d9w~`6?ȈIO<6y_/8{vǶm`mgv-9ypZB\ܽoTʫ}֤LUB0\yiY}=%Pp`$ӻ,e3f:tȞrcǎ69;XK[-fsq\nvN}}CllRxYTPXiӦ7FEE^1C^~/fƍiiiQQѫ>ĉ~݀*((裏<lXȺu795k8~xPP322222-[x5k{xOd,VScctllXQ<#J IDAT7 -Xܷo?wG3$3FLfF^Ф.]jm}[]v twlllӅErsssrݱd}֭$?O1b HKMs"^=x?<#3OW|*{ ^j\W+-JDDDTjFS[[òBSF]VZZZZƲxR.ju3gPx ;&NXTTV\\w;m*l-H!.gŏ_Ag DZ`7SRƎo03;*/Rb9uN}R)c.b),(-+- 1*z]S8pqAwr̙3Ǝ\o&,MM2{l׭0vHEE iС."䔹?+_r^n˵JT?s V0zES3j1Wjw,1!A,-$$da_C_@^Rm*ӵ !ԂiRŋ~hkbPZ걧TN{XztYj*"<P|GW\ 7w(**ٳx>wﱽ? ::"MOHHIMMKLLp?l~ )iǎ'O(((hhh3fi ?ś??ٿ/@||w1N3׮8{&߱:6iФCwO~.Z*]N F^.ypy*l*YU@P*YU 7UJ?ް ^^.//[l٢E -[fϥP(Appv !%yգGKj :[[/;'o_|wx0y{9w.LbY633+%e!!C?qD<3\|8r|3al? 55m Ǝ+Uȑ#$$ܹd2L۷: @Jobddd>s9=RVk獩2 Z6 MX`=Ǐo322rSO9.l?{_}5.cbbv3˲ݻw0ĔN'~5k㧃 zb$1ytnnڵk׮] )ic iЯ֮559G૯aZmBϞ'Lذ{0vXe3 A0gg soUh[o}a Wa1_&Nx F;%YfAVw5/ZkKt9K=$AsEDGZ)jJn<)7lJª#ѷ))b+//.V,]ʪW^UIL!xݝv@JlsN~w<-:5?6&hT*9.ڪ_ 0f* EP"xZV7tKyc.T)z)5Ff[JBZmXB/Z0Pike }0ƛFoNI~PuL.Q7"e;x3STFǰU@nn.@T:"),,P${ iFv߂uҝx4P(P?6y1.;33**ShoFSW_ !ĥݻ\a|N[|O%+W{{\||K$FѹsaRґiABqwGt1qތx+-+rJ}}}%hҥRutdrZB\ݑ/ݩOP* Äf/J NtnґiABqwG>v^SP(zNsHP(vtX2[B\ԧ'\PWN䣽B:%}G3E!B!B!B!B!B!B!B!B!B!B!Bڇd!Bڅd2LJFB!tz};0 B!c2:]]]rm-#Bi \12%/۶oU NAB!\G ,,,L({Uݻgegs_[[ץKB!sb&4,d6ed:Sl\7po׽IENDB`luckybackup-0.5.0/manual/data/eMailDialog.png0000666000175000017500000015514011530661311020447 0ustar luckybluckybPNG  IHDR!3 pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup - emailbF$ IDATxw|TUƿ3It ^R`@BSPlk[ݪ(]R]ueQH!I2c2S3̼sgTaEYy*("( .]Ec˛JbЀAOBBB+gaaEgh;=>Ca#38i ڂ3=33-ढ़^9H`0`4INL"??_h4/t/oE$0x`tGgm;Evb 3\)@~>DDi7,H稔/*`[]c4=5Pxl3=EʮV]Dc+v%vR[%v>]{ _'=Vb69ZyFC}‹JMbbNL\\\IY'ZCPpј'L[}CTʧo9x @e?"|@+-.܅X_PP*S R>pES]E^l-dYFȲu( p{ 8,dYF~cccѽ:a2\zd1p@F?̬AɆ@3$ѬSЀbj҂ !111:,YPFYs(S`t{S7l0GzM$z= f, --4Bu҇`Hzf3VVhO>$f;95 gnf*;&&8m,MM)+/sϥK~F*:v՛0I $0KZu'%!f'((([744PQQANv6:=Ԝ"0 t437۰GJc9v&e4>m퇸=a]ӥHpAPm6}8~8]tKW}BG!668î=UǏSPP@׮]=>ohhHE9mܪ6ܴ)(([7dk~5]tAd>d[yͿO8!T}#ۿ|ḲGNtq>Z1*!F)..FVc2\2U*III׏;vG|| C(iKTn;҃8r;q3f4rhe@[p*ΝT*sӫWQ#9xUU8:7Nt& .8Vu>Jb(i6ER_Wb>dׇcǎѿD>}ؽ{>ȱ* jO~صsq?}}Ɲ'0~qWȑ#Yb40MX,fl6a4$+}Iq<9Ѹ+ ‡m0'lpux_Tu[2h Ǽ{cVx _y.ƗEn^W_>*۩ h˶;?B!*ITTTЫWO>?^ϹOU1>ՋM{*w^w>TTT`s߮k}Z_f666xnllq[R9P,S*c]nYfc?,Fzq>?<`CՑ F,fχ`%HmmK7"++ x"@L`{Skcǎk|[r ];l_};g]sхزew<DIq?ϱZ2⋓xׂ>ϧ|q#~h44pr4p~GkVfate¸lټ#'N쳋x~2L&\0/nܜl5ܜl?\wo-q/;mv#I/ak0t~).pyy 6~~(!/7J0˙{\Y|@8 7LA|,;d!%Qs}lxu#+Vpч>8- ;$tΝC׶+wbb"uu4s;^[=]I$p-ZMt3gd$%%Vh4dft30 vn`[X_WGNv6X,֖rssGzq9`l@('P 0|$Y0w\=mނdr؜8qkŊ.X+Wh3mo?M?c97?Y#;3Eg޽ٓ˯S,ד>pMMM.z˲Lo2}4yZ^5bǎ,XO<_| : }Pqq SSZs%VCZiعI3K"m`yYYN$&%b0eFl\wQdį8[ND:SN䰹Ys#e3frKq뭷Q i-Ϳ 9E` ~)kW_uСRϬ39u~"uz?޽{Ӷm:7ϣ`͚|cvʊ+xO6K=OZj*۷og%t:xumۆxG?Ɠ n~}#4sPOo,Z[=b1ƍye+\=j,imm,ƽz*JKx1L}$''pB!/][n˖.o{/B{\7D]˧NaiȲ~Hll,mn?dh U|U`sϡdqqԐa^vR4nEVł,ɘϿ+568!AP}fNjm!Bpabo^e޽2|pG?`@zIL6d§j+WreS=g|QFzwVxʍ77ψs؎nݐd{'x휗X;}6t'''#ɲ8o;ќ<̹Z"̎9TOo y*~gXX>+˨sgZ>A`<~ۭu],\O<g_+@M>,YwyBzUW^*k6-t:9\~-.bP'?}~.Lyuo_1vNcz:!ChݛQ8Es>Xw1SS}m;xJBR,^p~y篑$gf*F=!)%jò C^SM'hmi!زe3ΛΝ;63gb,Y%YfQu˟ջ7%%.񒒓̛wOyHNOO(Lzj"BHOOGa0jԶMaOL&={9h4Q[WZr>uš4 sz?(oh<q;<ػ瑒{ƲuV!Cضmk|e/~zf͚®;y//'`ƌ'ÇQ j.Vz~’%m2C̝{=+_zs޿9v_g.d"Ŏ6ݷVXp<^z&\8Ku /殻q'N[R<󧍼jbbbfAtV@VV&]&eReMCY>|8 ^h4jSb6|űyh^y?;pQ*C>Ns{.ncN)(3W7/qc <ӛs绎#2Fׂ\;<*V҃9txEwX(8t`=g4<#d>mE؄ڞ[&O`q`Ky>ZzbqyxknVZ-tVz*@ЧO\mֽzryݳWOk!|CSs1eV}N 8;+N~}{uC@n^/瑏-F&%%~ޫ>b6h&wpeK`">>]͛ˈrMW谨ot#>ch4icU$7/93-mZ!91{ҥkUjv 6)w %~/Pc7Ry>^֖VnvCf0!w_MVvl߱![n,Z ee >~駟/,A]m- o:pÇk..5}"VIo|_oG\|%,_<[l /a|d>y]444xm#|س{7W_} 3gWܿywK,AЃƲf+T*/;^ꇭ[8ڊmԏ xo/`|vJ^OÌRȤs|ҹs>?j,qrb"{[722PԶ J&33yyfo䒖kعARIn'78t 'rA;3rH[[9qX$+O={ҵk~Tʌ3=|[WIc~ G\uV[N5S-b_1U'$QUUΝ;I%лw/MzP1Z-II۷Dqq1yyh4~GNJ|aO(~ǵ&c~m.r.ljƶXe VZF$XjG?kIxX|9/"^|Z-|$I"&&ƶGQThZGix:{j5*1mm P՘M&Ǝ8~U[%cɽ@RJB8,sv;.BQ{~[>x~>|cի_}Z,z {N@{,fM{rs}fڎnGmNUU;wB{^Lf3EE^VGF NQm ҹHNґLaoe:~̮Czj4ncW#[-\;gye#=9VILL$>>^ϗ_~EfF&HO 6FCm]9;ӫW/gP؆B]|`\$IVIbm$I', 8]jw=oU$V%˒e$"t҅drrrHCծ=UUz=h$!>|WSpt349zd瓔LNv}gEjں:4j5)YC/B(@eFj5J>-3A!].G F?h8#; ,C08MFAG~;ss_$hHpE<`u-Yd$;.Γ y,&&l&臐6B6nFCbb":a~6NN!< [{mySwqo>^<|{ACE:)]B.~vh%e3w<({=Eߏ>߼ v(HCVӡkU?oJ-'7 +F$ PyB) bע% 6 A)DžO(BObrDRprbg8Ov|17XOr9?ǫ'p8r+TT8vD!pZp;R/ q#uPX l܀{}E *7EN"i+!+kqOpTZEp ~~ioΓq*.B vDfNy Gd2U\$m9g}M1* ۋ4¹d i!Glvv'^")B@G"LC @Pj1􌂏q{_^p gF@,@C;q4BN| b*A#lTQ{Zp#R+J,pWqv_qqmO .%'HApDA-Ե pOv|t$=DFwf}`G DrA$ P8QCOгNB- ^NAy+ԑ"23;IwfN#vlm|_9v@|^d*o{}=~P98~mݔp*>CwȻ+ .y|"~N+ݑ|uΘh;/\;B@8=\%8N/)-\cϿ wArp2v9vrtW&G|ãgI$d(nf[P,:J|wCۋ\ ,`?W DJq*c?<ŀJa IDAT"K|n~}y)uW?ݗ\xr{:y"tKZ#ΰ|^8D/v \,P85 tᆶb^D/r'c=) 'E7 JiH҇j@@P[‡G)H\K0w'WT7T?o8﷏43x "ϙ"s׀'|^#Pu}!,Tb>_nCqu|[G;/;&< cFB#s*3<]pvvp[1 ^^(mGA'"!1À__t: Nu#臎pƙR oG|o瑾|,b'M8TAu,63p!~da,˴҂}s3Jbb" $%%LLL;KΜ~@#U8(9:pW18"┡O#K wp!"z&g ڽ0 466b0lR!2jj0LFj5YYt֍KG5@1g_yq!:?G(ni>; =ǗVfN8UHINFqJK8|1$%%)=DBؽkjB FZZZ{hC;6Cw(#ސݍ[.NQ~(EC A8=1vD] Qv?øTKP__O^Ozz:fw@G+szT2 3# Vs+c-\>u*EEEb_8Fn~Xq8SaT:o~U _m:N9C!җ"Q4y -xP]]$c~ٺ41J m:xX4V u\hӐiHd#F0XٽgGe̙5 Ft}#ZXC8>f H_ px>?MN!eў"8y9 -RRR_s8q:t)1JZЪAX-eMm *m*duē=W[o0z莙 h~[Q#rŁN^gψ9ʌ <8Q~xXP__,)-tB461!b1)4h"5-~bj>#--F*#(N{U :⠍0}/As^uQ@tgA(?rȯL&[ZuE bE'%-UG.]l 8 x41t+HERݖoQl޲\oy$yU.OXX_5yF;\pʢ !:/ڔ~9fPfqځ; ׎~ @MM-:ͷ?w]8 &#BA-R\GAlR1 Fd"HzhG#IҢQد75uTWVkرc'cǎAVG"A_E)##\E4[8?7[>(海]NktH=JQS2f: V۳ĆCIj-AQѧg2Çw##;vq& $K#>9>dJUU;wv!pQJ\a@38h'A|N~ZШ#G/{ PQ?0ZדW7#* {1TZ`d=czSwm`Ԗj@ҤNL*yэҲ㤦RUu~n{L A. ? l v&66#߷ugO:oGC`h *?oxȟ_{5Ԑg}q@P,ކO?@p^ێсDAXZ[[h4XrsP4RjrsIJM%,ڞtB~?-D#M1ZPiQɍ@PilԤGD(8.8=)HN~bI3ct (._Y38ɓ&f-]ʤI0bJ~XI?(mXXlw}gҤ1bpƯˌPR1YydI!4 bT?~<,;2uJJ0ak֬v|>q%2|0 ϥ] @EEEEXVfK2q%S\\ĕW^bRTd&:FQQ!vƯ>}%%Ō3+#2#.:J y5!Z9P\\ݻ7~ƎÊˑe٫vYb9$QSS[,xJJOĜ9s`ܸxaK[ǥNf."xugcĎ'NPRRLII12uc{cXxjp +4h _t;'E.0ȲDyQHJҡi7YX$ZLdeIRpr`cSkK+B x<'&TŒ)Z[[ilj 'z* h4:ldYfΜk:~?@s-Gwؽb+^XAllsѣGo>w̆,NJ+Xb9qq̝;1\Azz:}eΝ~>|˲eXz,͟OVV&O>__|yPW_3H%?o=f>7.26˽yٳgٳIOKʽsn66.]ʚU\ݹ_W_x?*ʳ G׶ZzcJv>Z-/[ƚ5kG?d߿?1_~> ̘1 |I6mK.o Ǝ{r{]vnj_|ΣiӧK`3ڵ.vǫk().f˖-{VQ?%fĤ$HH#V} >^C|B kdb)YV7[/?JeD\|,w>uuu\|E]sxYXXU?=7#FЃOS5 <oAt,x{ǃտ9Ƴxs^獵kfpjmmC,b\[;.B^}nFm3 6m:ֽ˽K||{wn׾wfj233y?y|6_hxE}Mi+V"=wq."aVł$I5qN6q14Z &Z1$$Xi04ڒ2 G6@ $mVtU*$IIIgSR/.](&_*$̡fb2J/W_~~>* !;bS]]M^xݷ_?DoBBD`!6l8:uGk㵣K.Ao9mm1sFX寍z6ѹG}kC! ==dZގmNHII g޼{  nfzh?&:@qQ1ٰcmV]>_iitуpu Ġ8Vj%>>fVz41d ي$i ,0[XE  ,5Vx ׁZ  ؾH65l0Pk477)==͏H:WpsvOø:x {X,AO\ixHHHp9nin&55VFVH3---hZmmێ?6ù?@N>&֭㺹sIn[lƴh4^E4xӦM?OT*UPXujmm%&U}~E>Bzzz} ֶ/L1[%sL$=jsT GQjAL&PjB}Cq8(ޮzSx<,YLB mٳ)/+wrعfϙCyy+vXy&Mo~.'ٿwL&^~!C pʗWb2ذahF,6:s+mR o֊}*+8q]yKFCyY>T:W19ܲs]&w~ucۥ/9oǎ 6$1:` ^^>' at:*++DK.NԓBl`AC1QH:PkQ5l@m F 1fkH|HÇ=ޯ :Q8t)S.L@ǂ@g5C\ֶ݅t7tlcV2^~C)r˗bRZW 7G}RMKKb[3z `=zֽ1[̴߅뮽~ihh#G2fXLj0?] ѣ=ѣG;JSSS;vz}$ӣGx=LrTkf͚`}md3f, YPXTă.`Q456ҫOoƌKnnG˘1c1ʹxuߟF vgϞ3x F8-tڵ+س_~/mē?,(*,dr#6 8#F83f,ulj,&$YضS}g޽a\{um#hchmieᤥy:ec=qx'ݧOA- deeq٥b4HJNfl[QGem{=~}2f?+,,dkjlwތn;ƄM8ދ=ٺu+[neiO'frAESj69AQSoF+VHKёJVt2ӵdBV̴Hi$Arw(N9Ζ|饗RQQۃw> e At|+֭_NJ^ r1LfpQ#KV$S_~&iht#&0hA%W9DLV+8RKb@3*a[ Xu{+c42xY# Qu?{Z?bD(kiiiQV^N\-[j[dcrA/ԙhK&>#u x5XkX -H bA1l۾} & ׯ_نPNYHΛw38]"*QvPRR];VQ~xwһwOTH,G crP6C]raǑFHʄȀ U͡cٽ\ZbIG"((-"ƍv苨xGExH Fsak-F{07hbXۀU߂%&)"+,j=w魯- ̜93QDў8UBt\ qQ瀝ѿ&MoN}u)۾Wӫo8f0k5zg9Scm_+*@![uT?JͱO0a&O|_^" ň oQDNc#Y4֕QvP"5= -bDXAj&J`1  a,41.1{QDEQD-4>T6l@KK j&0XdC24 [% 1Bb0RWs jaiL81*QDEQDAD۷y 2Νo})("("4[K멭֖X,ǓK~#S?("(Z8#999 ~QDEQDq :Ԏ"("!fxEQDEQ"("!@QDEQ -"(g ("(~B`ZZ-!h菀E 0PWWϞ=XĠVkBRs9|=jPTTHzzbX,&sHII26456r8ZmD4,ZvA}IKK;DEQD

?W7OP4ߔɸQD $%&eфbF0L,{}~Nmmbh4!rQ8X٠|/ŋp{|%n=g-G cnjJ Jw4NNr%n IDATU>[?DqC\i o^'x'q_%~RQtʏEKQ8蚖3F#'L 33畕Gӧ/UǎDaaaP<ؿϕ *hny|N~˲Z/.`\0gcF{hDkw?mfaJKyG1Ln?$ >ɑ#Ge{0|222gqL6={P\\F#̚u5sUl?tbf3VfϞM7={ fκɓ'crml,ݻusgA|AaNJ+xh䮻~Q{Ѩ5X,ftOJ?Ľ?ͼyٿynqE^oFc)ϨNzlnLY]%MQO_!OfoXJNѠPMIdft}(;|X]{qB|K~f͜!V,ޑ_yEdftrx͵HEE~^9coI͛j{_}BM6]B\\v7l\8J`zP3bxG֭[ij. t/ >II|_<mP/oBkW^yE1T#, !;fؼys<8a6ŗ_|P'?L:Q 7s~3q4d^l(P,--ڵ&L~m~ڶӦRJ3gbӦM8`II1d0A=3rK,\$Vrk{ K>&m]},Oh4j}p\~\tх7<#lGQa ՗_r1cЭ[7L&})p* JͿ"ChHMMe`[rˤw¼yd̐xGY[,X yo_=ӧw/^}ճ*n0}3JCˎ)S0u|iW>܂ݿNҸ !>>[k.Lf3Ç۞(~NF/m3:N9r-[8ME;0;'++\/{9ضcڛvu @}%pZk.fbI:l߾BZv  )))0?V_ 'G[j5KdW~T*^ZC7XyRRRhǎj;KVcx~]d\9IKK˦0~ZZZÏ9CRѣGFN ?*1ee̝;+Iv|o'GQu8yUƒdc)K/U1ޟõ]Ǜo%11k\\X4{>C}C'"M';eN[wΘ 4t:C aG(++nseXVf3 ǍDK޽;֭Zr Ȳba5vU|j2|P̙s- zL2gZ4̚9>/ץ]__|ё߲K8+i$PAAz -Ы]AP|)Ez/JS)b+bA^EHrw}H\ڥ@~}۝(9 AoJ*UX~`z9®];ٳ\tjDDDyX `Μ:th@0qbk=j:?zž{359qfΚEtiƺs P>~}+3iڬ)G(B^ׯݸ}w6Ǐv:CB˵n\i͜5^x^OҥyW\zbYx5'>LP iߡch4fW`?ۈ~G͚5s|ެēL3idz쁇]ng ΟQkY{>ӦMߏVg)n{\rJOf{=r^___իG!%Kf9-B*/ۍ||Jϲ|໔}l3yLj k׮Qw9RIB#>c4t AUU"## Y"g8M>n\7oޤdɒsw矎PBO ,[\ȍ)!DcTՌ/sm/ϯDk(]\qkBGl&"9WX} ~'''*T@tt4}w zu.[(ӛ2}l륗^dulۺg +t K)ñU% !x{yWyo|?%Kr)lBΝ QT8n&! t:wMg(b޻7?cӣgcRZ~l͍mѻO&O˗=ztN."I@BFL:8p0۷oӶ];FuőAaX9S\sG}D:wʫfB%! ^c޼8x qqq\p07oNYf & ڵkiժZi͆ 0F>C"#梁l"2LoUUڵ&) QI@BQg2e*ϧA9*VHxx8o5(h׮&zkz-""iDpp0ŋOuք_=8.tL0!CԦ /<&8E!D)5jP_0.9h4re׃B!CQ4s#T(_^xr˖/wSB!DaU[ !±ߪy^!EB"(E%HB@!( BARB! P!x8*5B!D$!rlBQٌ`D̉Y>NՂV E#DBR@bBn{,N1??DT j@MDh$@ ?|䪪(uTTwn%GkLbBNŅ=&/lDR%G2p01oP*&ND˷M&112gYdg=sH6֣{WΟ?/Zzu0y$kēc;UNQpyőO}f3 HBBfVaѲeK\\\rv"Pi~Сh,{8&ᙈ`ӧ3 ӷ__^xy5k[S~\7S)U|Y~|׭#|F8׬v׭[˔)Sߠ...֤lXQ)yOa^{<=(6m*gϞEӾC,TRIbm)ڷNqWWW5kW_~E޽%]ok׶߯D w&$$lgh4RS9GXQwS>0rH9tB%ۯ_̙3j4FJ)CXXzӧS/o1ukr^FDDDТysڶmˑ#Gزe %W,D>>gϞYfɣiǪkճ+Yb_P"|___ykL>ub6]\0$KЩs'|R۷o3c xSLԠK޴iSZ4o'/ڦMpTi_d WuSLڵkz*T^999;[ i5A ~ &&ʕ_~8x]VLL ɴ2 Q>>}G{ <͚fƌU5g3{ߏ\^C`kY8G ’E|TIoE>.\HtT[?J.|רf3*_~%]t{Lrݻwcg>YobhZ~l\\jZƅ~%R^x1ʗ>caڴ6(,_:JlL sKƍL?Je9yN29|Mv§~Xv-ccmn?5J~" 34c;TV-o'x'w,輓%W`n5[ccbذn=͛7ge˖tRjeg#]d^8{3uپ}fbvh7_ɳ93呬0p ]ҧo?붣Gr9u5jٙ'Nh$ 1ի/VI-22VZYعk'_؁N?SRٜA=ucGlllGaz_~6뻹Ԗ~Ӹqc5jĨ~9 {猍Sk???6yۓӔ aƏ{}z'q(!ooi.prr^ݺLf_^ZdVeڵo@Չ̓|U*^^ 89sܩݝ֮B:4LQtʎ/͕]P1_x%;ڵk9pSNӋ_U+W( &LJY10Yf_k4Rv2%&$uqq~l,Qޛ͕+W9v(|Ǻxe9תj?u%n|1&&&j1y-9?w]*?ۮ]NHVҲ'nU@,#n{M( j/Tl`Ql0ރk%>>luVX@LTo{쵆ؾݻбc,|%u~k߾*ULl6/ѨQ7cX)sbu1 $dznZZha3e˖ŋf3FDBCB6;\pʕLsPgPf.]믿6k5ZC5?$]}ZjƍI40$$ч>|Vf~~,?$| d 6+rͳ=͉͘4EQ,C e8k&_wbmcFd4ҡCvƳ>KPkxoojբzjg#K,yŅ̱~)O:ջ7 9oO;!E:l $:*:91 & -[_~t:=3lpwK¸qO?Dm7sN6]wӮ}iߟaÇ3x:w̝;w).>CO$2*v:ڥ ?7euv׃d{/yɔp򙗷ʹ$_Nvlϫ ͪ[JZ5 sH"0L\vDGGaVȥK lXa2MVB2FPFMQ, Ν;(` [? .bʕ6p qr?NZ9# shڤ)%|} Ey)~'ׂ.S~" Ud@_UADU4Z-.]L2 >3.]Dբ*󛪪83~Dbc1*Rx3LO&M MzuNΣ+p%>8;;g7^#}N:Ere(E2ofJtTTҫœ\]Rr^?$:Eߟ2Msz|zSha)Ӵ1(Z m*FjVQ`^ IDATfVwOjx-;,]vΝ̙F#!o"hu:.IgjqEھ?$<ݹ|]ơPZ/]N+yNdVU4njg)oY*Jfsƣ`RT)E᯳g8zh!sw߿$%K9H&M 3ja2Q6= qWreÿQ ץt@-..H騪jiHvL,(mQ{xMquu WKsE&$qrwBzx.Igݼ=.8ʢsqA$ ;!}4nU\\pvq+ZmR'@PEd7R"9$MEQ1#$ ;,O5I*~E!ainsaMT]*Ϯ !&P,X8sB!R[HjZ f cZ!ɣGh!Xl(BSf ǥ̀(BhN1d.(mHJ:!y@)K27?ECb<(B%4T;!QS !>Gsӓ@!)!EB"H B!D$!r\b20V!(tz=:ΡO9`41 x@󊊬e-kYZֲ ::;n^w}!#L&ߏr ܋뀤 !Ņ *q_s/NCjbcb+ѐR!IQ|J[xzy:Nk@a@bb"QQTRȨHN,B҅ s@*\?`670 J!PU Ͽ# !EB"H BBo L׮ݬ= F#&!")QܺyW/' :9Y֧w :B,̮{hҴ),xbA'A  X{;7z{eK1f+FDD[&((~Vb p/diݪ5 hZ4onޭ[WN5j@rU*={su}w6ZH23f zޚ>}rEozիW:d .ח 68`HH_$SpA^Z!D )j\.B:< ԨQoooԭSڭ+{a劕T:˗/gE.S:Kʺس{-[dEL:%oҙ󉎎fmhڬ1K-a,^7|EKll,̙Ò%ٰa=SMBBGݯ@BoKԭS׺-*2z8tnjnĊ+2=G͚5jxxxP~=෣qyfY>'BdÇy)Vo&:T)BEQp-_\roXr4\.]F||ÂN!%5B!DTS+!y1J BQI@!(2ul@!Kj.N>LjB"H B!D$!BQI@!]HB6}ڵggY f}AݺZd)ָrgQb.܌RR,l""""lFӣjQUEQd-kYLF4“OV`Vh͂ڏֲt"N^=Xr%#F ()d=k6lۓ'Q~]\]]8qB|x~+="##9y4UUۻ#($"""ϓԪgk[7nPBEnݼ SJOsZ 6 SO>|Hwej֬IJqss+! z-.]vamƍx{[j֭_1c۷0k,f3W`qp=f̘ITtz=>>|W0lƍ\ٲ<‹۷ׯ3(L&#JfQlQ^Q4 -GA'EQxxxPly^b{[QTTHjBH+S'LHh('J+SDt)i;T\`Μ9>OVW^`,ZzupHB>}hѲ&Mf۶LjɝC dI٦h߮m̺IdxpK/QLTd_􋛫[;w+k?Wؐ셏eר6l?hwڴiMJyMwӧy\"~%l؀c063<2K1lЂNJFL&SA'C{D5go̟?Cmvώ/vмy ZlͶS.OG~[׮(IztΑ :D;v|W8Sl?1f̘Av j/?K ;9 8~M>=v:,Yćn[r#FHnƍL4ٌ'1g8;pcF|^} -Z 4l{I ߿NQv{sׯP߬,Y x7 :)YּY3"## :@3ܣ( e˖ߏS3spj-[Ƽ2]19)1E>;9*Y+任jjv=Ǽ>,[TKf'D;tOfE|2/__l!CPMc2d(пof=Ν; ~ck>cxjUJ*EfMf\OV(]LA'%Ξ=SIJIը uA/uUEU-%5kʺu0L 6nHhٲ%׭d2a2X~cRݪeKV^d"6&Æo,[TK'D$2tG0n\v-[iO?̒%Yz5f҉d8K'ҵKxF W?Wѣ'^ݻ1WʭwU*W;=s#GOBaÇѦMC2v6}Y3gruΛ]Xr%op4 K.rsvcnT,Yl6suիWѶm;4iʴiS9899Sti<==>ҥKx\\]Igذ4oт\t L*Oex]WJhh( :::ujҤ)&Gb4xlYygz=zлWOf;g}Kޛ={pvrϟO?ߏ| ș3g|/*6^={}E!fq_Ih4ߔ#GW^Eh3vt?~ׇTqtG}={iٲ -ҥKanBFo ~=oc֭,YpaƎ'nbŊу -ӫW/k\AAmٷo?*cZ }qr^4zq 9!>>eKܳ{7}c={mۿ`|~iILL &&'Obٻw/_~fTRcQY6Ͽ'OT6/DhZ6~ _͟[j9>9R:{P;m۶([,C | j[~Fgc7{ߚfeݽ֥ntʁoܩ3/KY3ٵk'vdƌ'3uv͖[hժŊ_XK+yALK;w~ðaj |)Hر-ZЪUkm۞֭ӃN$$u"9r$U5jjno S\"Ibbb8t %KrG_~Eʕ+OJTXCáClSgKs$usqq`Qt:yΞ=k=fݳʕ*( %49sZX|9aah4xzzRt/bŊJ61|8ϟ?xy_we4n'' gԨc֩S iy8h$@&w9vtDL&3k.9:.^'d7vEQUUi5hZl~_3p>4Ջ۶q/"Zn=69DZ͍RJaLYO1͸݁zn߾W_}e G۷yꩧ{.oߢRJ;{2eX˪իx"GȮ߰dbHL&S|Xә2N:Iʖ-7oJ:*-ŋR7{Id&4#ޝ5[DF7.`Sh}!gu.tɌN$q)kux8;;sIm X~5?ݻ@ժ`\ޞ<׮ХKWÎ/wXn=M4n bԮ Xn۵eoPUysҵ[Wq$$SdI Z*weĈgi;4Lԫ[UUׯ?3gqMڷo… yeɒtuI+ԺMyDLt4z`ǎ6㰗:u̢&ŋ'md|;i~,gpQ4䟾ZժY~:bw5!ɷ@FDN"?~>O-z{xzyLQ痟\9xݬX@%U}Ҷm[&L@PP[|||z*۶meʕ|v#ux{dZj[&y˖.q,񐋻?m~U {vn@?ggn߾g53͛5knTV=OΑ֤I`>|5 P?-[4|ׯ/O+VߎRBy6l@ř܂NxsΙ8P&G!&&W.[n}̱z˯/ZlE˖f͚|sWA'C<wnj= q(½H!&Ʉ[TfЯ_VXh@!D2k5ٛwҥK\B.j,HMe=:U۷o3\~ ^OmƗQǏxb LF#ݣw^ ̚.Çc޼F{=Hҥ5jT+r;8BaL`BHHf0۬wߥjժ|'[//U۰q!C6nqa,\ ,-X__LBH~]>1lߞfe@!DP1gޭ?8Lذ1رE2t0~=:D=شiS2 73<<‡}78sL=1.?O#zzz< "C l5ܹXzD3D`2e>`FFMiޢ wA;+W|rܾsg'lG[\Ҽ. MB!2CNfe92ћB-MfF#֭GF~8}%Mʗ/IU)'BUUZl51L0|p6wlj?`0RBaGV:z(MM9H^}U^uƌ͸qaDEEѩsݻ 2 7viԨzkI3hق޽zsYFhszMgҹCՕ8%Ո(5jP۵QFWRACbce2 !x?Slj_)EÓ:Bٲ9 (..C?bUR Bqqq @:9sٌNGբ*Zֲ.bkUUCV^ ///B%򌫫+ G^dd$Nz'eL!UDD'OV͚f-fF"/]|ZjQRe :9BBN˥˗l%&"FQ4-[۽nEʕʕ+v%WKA! ܼy3;tdmgΜaFL&Sd_ǎW7ܹO^r a̟o-&>!+Y͠&GCʙa[PU˺ֱhB>#U+W3lTOtTTd_ |{⦅i)#5j`׮ݜO{}I!Oƹ|ŁTP[7opizHڴnEXX& IDATO=iPK. **6oNHݩ_.KXZzm۶IL6АуÆfw駩iӚm8|3w@V-iҸ16Сٜi 22گ/C ҽ[7.\`޽{_z]Чw/ _ _kܯ OT˄xTl޼7a}A mi^8xCj%Tۋeȡt ?RJ-*̄q)ϛO81cʕc|q#>>> i Sܣxi*2K/sϱg^;pٳg3mTRf-}o)=={پm|y3 .bf'-߰gnǂ9{,۶ի<:۷W_}cd>{~ǖ[Yx1[F1;|0cnjO7QbEiO)$4W0l0Əg31cmtg-W6_xNStL'D;DA5$M nYv=.䣵kVZðaí]]\?nLɒ x`a̛;!mۏ_~IVh/v?3]tAQE{OʖE:m<V^eܸ0,okʫ:N:hZ<==iܤ KN5TJ͚5|$$$_jbrơht2Nj>Pt7Թ3;p3}111wv@ɒ%9x{c/"ʕRJYf͛[GFf]:7nb[f0]MZ'nM ˗El9ԩc.r޼y^D:]BCghvMt7^~}cp'ZlEll,!Fhx(I?]ő`0pmz)R}~-*UĹg)SLxHL4YǾ>ϗr^ǏW_O۷5Lbb"ZZXIf4qvv&!!!BS qtĭxH))j5jT0111GvΛFQxٽkڷKh(Ox իtރ~r }4-&RJ3j_\SL k3YTҔI߬iSoXd`0iެ5ܩS̊#G0hRJ֯_XY|u*E :$$SdI Z*weĈKjI_~z$<{Ŋ#00ϓ$ϟ?O݈OZ̝ۓ's5/3'O`۶ο=iO>fI`yL29uԙE `20L,^ءMX :3thRIM%J iw|| )uܙ5kְo>Zh΂4y2˖/`ԩtԉ9۳_\T%0agѣGih4>#G^cРA= PiѢ936H?,l,QфҥkW̉&¬a_zebb偙f S癧ճ[ɉWA4lPO/{ÃL طo?sg!lтʕзo&N|JjV8|jb-Xx ۶mv@}fѢ>WN]zEظ0t:&OWԯW[nb$V-lBxpܽK@4iïy&Æ2o\ ~#/;ܑw;ic]xIZ ԭ[P+A||qww`޽ /cSRƝa{zYacοCp`Znê+xuk߁: ٽk'DDDЮ}vڙ*|nٺu /]v矎&-W|r%''GvSEQ#lr9kZܳw/+VtEBF Bfӷ/m۶7r-ts~sgoO̬3k,[ƍt~T3gě̚~3ҲE ֬DlL G`f;J 8gggn߼Qjf&M l؀R%i٢9'/vP~N,'X~;J iذŋgs8uB\bb"wnnL|oIM[wě1Kn_Ξ=0bpLF!]է5sNَ&G\\\< x{{SW77Z.DQhܹuw#puuI5>|Z^ޜOY{2ZArt q.(et؂N0Ll BR(\\"#J82ʣZ$Cjc?t&aXEB}B;,Cl")!Ș1 ѓ@N+w4J"!xt$=/@BXR "C ixH@!D0d<xhI@!D|ls;ϭΜ9#+Zl9M4eڴwGÆk!!PՌGx]v gumWaa4>z-  Džt H!Bb20L9:^ӡ2GINTP[7opi<\rH 4 l7F'^I*TPDD3͠jI{( h*Fժϴhd2QxzZι"#quzzY:fT͛oذQW7l؈;bJ4q7q(W83 q;Цu+~W.\?l6S|491ac(xY^zUv 74-&RJ1r"zҥK?tѝ5ktR LF#""իϿ.!3M'k]Bɓ'U){zfd2S5kHBB|[X1U?O=4 ~С ̟IJg*,ͅ_.8K5+Um?gCSK͑einIĽ@;pC@_{<9<..m٢^̝=EYT&ٱcGL!*WbVPs#(h&sff4h؈ XȄ6m:=ǧ)Om;ڵK$nՈq\ wШq#ڷoov PÃ&{H-mRzOOqLuܙ:;ͳSΜ>CfΚeJ[̡xuJz^:.]Nǧ|±cW_ 4+$+F5xpqu%..%mr SԸ>"H=nnnܼq=ôDGӸFBn\#,< ;Fc<.}/h4YJ\ٲ9sOY`V `3K :]e6"viC|}ٱbr"mTqwi34h'O>|x۠RVzgF(9|mgD0 Sj,3d66.Ḻ8g9n>QꕒŋY.;ux Cspp6:шVEי 11;{ej$gϞgϞj777,(y1:~y2 ױa"k֬aԨ&h3vL׷?1Xy{r* {RӴ)QQQ] R]ȟB % T@j꺻g{h+nܸ@MԬ0lp%vt:dW\*Vh4V|m۶ۧ:;"s6^c{J|y7kp~1Wuء}tgLtut,αc^+VO?4TK-]DDdd?1 Ay&:` ׮ELRř#FCҹ3!!!RJeN~oӧw/b ̧)Mx3pS|{4Bd(,~D9SˉֱN=8Ͻ < d\m/< cԨѴО $Kˢ Y`>_Y?s)l5j̗_|A.]xN2mt1sfs%&:w>:};端dⅬ_#G`ش;^vÆO߾ٻ-ϲKy Gaql-+Vk׮ܹtqܲe3ݻw7\YAt˯f̞=ӧeб#˗`Q?qbiO_1c{˯b_'KZcPJ?p-J@e]6m5Y]4Xc4j'#;n7!,?5 #-CilVd_5r$&sD:thO-0p6 1bDlllRMS)_͛77=%,ap\x֭ZºuR-\ZLbbb8{ :udɒ8xp6uTUVBŊV ?W~kZ8w>V^޽{Y`>wٮCF|||hԨ1}I77fff~(.^dܸgNN~fz 0֭ZZ9( JsA0'(p+\}zu_MV4߄kfJ~R߳~^HZ}y4Ls),]ROeuL`FtɶKoOqMO?O?v :T޳\tket.ةٳgMy07>޽;۶n]hޢvvvϊ+Fb(Q]urq8}zbMTX>}2iǦmS%IRVpQ߆?3]_/A M9,ɐbX\E%vlY1W/%X4OX'9#^9aj귰`|O"?r ŀ&b0ҥ ޯ=< "baa`omwvlk%ﰒ0 ֭/~͛=6!x8_%O\988`iiIpp0[~$ְaC6oիWڥ3qOPl|><=]zwʎv$kLst:^;ǎѱcGTڵ 늢diKm۶az&jψ`0Mn]ٱcG4ۦM/^de˖Ҷmtˊ2EQm˳vS 9QݺҲEK,,,uV`ff:xڵٲeK?i>czuiԨ!-ZwҤsnw<=o00k4iWFEaY<*=}u&Y\:`5f4gguTT5Ÿ 74pS{Fg~IT5kTDV7k0y5qTd'Kqqq4oޜ=/6t߿ό|ΒWg4ӧ>t0Nz7oҤiSbcbQ(:,{+U/Plr,Y[;;<[ и(?~h?EΨTj;:rʕU:]3>/,,kkk^:g“O^X( qqql=K-{!eQ=yKΟ~(FEGÇ}?cՅV_ks}iԩS ?߼q)XZZz1Ӵ :u?)xkmo۶W=Ou̲|ٚ?6oL)z`DDDҨQc~ݝW-"/_A&M1`\"ӓ#Gw5^8gg'cbB%^课*Ok6/o*_Qt <%,189en F)]T/Yeaaεk!5-v7,Zcڵ+_4WJv}s|6Q` 6чY3ąP +++"u (h 6֙ЩjlpNXXXbRff}iӶMm!Kʚ%KREN<|lmqqu+VV$ܮ][F0{*VN93ѭ;M2u*;Kה$)_ռ26֨ѣҬu|9rO13c?O@aieرcӿ2o$ng U`0p-5&**⥚ X!DJ(i 84A~WHS8::ra`*={rj BE!EB!D$BQ<9(^H._ 07H(T*ygy.bϊPjժQx$[VJ_&*䢢s%jԬUdBApjըCg͛7^*U`ccB%J@Qs-$ڵ%($(Tj˻aooUB k]O-[Сl1wz=l!W,L/(0ҥ^aȑ]L+L_/leJ S=sST~뵦X#FHs|y2M|òeKYp~a~W% @R4s< rtNF@hʗð0.]DbŨ\R^ʕ]\G-R_^/?y/^P/73fdifϙ%anܼ|" ǝ;BҧO4l:ߗ^:j۷osm:uL=3w.̛;'''{yӶm[ L?rʥ/QG`)Yƌ9ѲEsN'uVj0`@Xt|?c9Y5ڸ8FM-y?ׯΝZCHHׯ_cA 6 н[W6~8ӣGO=2g\*UJ=Klf͘0a<7_h4RJUf͞+j=  ***+q˼jtؑpa;v qqqh:Fw>}4j z'bnnN]ѽ3gͦ|#;~`DFEbiak 6n,yIy2˗/su Dǎ#/ّ'}ڶmØciޏ`*U/+JbϿ_bccYx1ƚU+4i/7}Η+Wg||0<>CV\ '> '''v-7g)ӛy槺i=Om׎O3g61Cm;tygVpuuۍpFǾ>ջm[w6h?`ΜM]|:t+5zOǎJ*Z•LO "*Űӷ/{c߳lR x޽zW_ DEEشyi_ׯz$7w븳u66~#Y^ZZњ[v7~Iyu"`tz-ʔ)CPLDzǝ,X3aÆӡ\5:ZjƆ͛3h`6lH_gazjԨFOOO\]]MkI~zԭ[luH7۴%$$ى'gbɇxxx`ffFS3gd: ҡCGZjI˖hּ9SLEFXbxy'_]T)>}n>>>4jԘ}dTJ`LT HV-3?^^ޘ3gԩ3%KC,኿XƍéSy߿?z$/'wٳQ.]4mpʗ/VVBUyT*ʖ-˙gQkkk-Zc72l:vh_{?~3ִ5kƌܾ}r!6lȼsh4tjz,,,t<2[-scaalۤ JJu?GNT*V^͵k8vwv˖-eo?KKKZm/f&Lb0RF1*I=@Ϟ=?3+W 44KKT뗙z$gaa.:]¿2]޳>C!*O8|0m|HJ$x =ƞ=x7R`0е[w|?GYN{ǟ~^ײTv3K ci~f5/Ol @4lؐ͛6pUvLV7o.hwʎ;R#z<ϯ=K .Y_={<ҒQ !DVYpi7jdU9j(}=F1 VTV5^fffÄԹ3Æ g옱YKSۗ+cz{wUQ#t܅^аa|ۥY~j< BLll;iݫ'uێ,ƍLeC^6[lI_֭xqeϚ=Hqӣ.f'蘛3idwJz]},]֭Sݝ^={dR.]^nw5jH-ݻwۧW}HG׮WcgHgGZ2#/YY2x@Zh nݦ7Qɚ`_9zp~W Ffͱ~ae8z 6ݻw3t`]5">}ʡXBiJ|ǏS }p?&RRqtrÔ+W6۷Ǫիe9铬}K}Q||<I"LpɉBBDW͕J.XԪU~ޕ" Obc}pXeiQ%@!gee@Td$1'H`0"L"! }B"I!@!($B! B"H!aJC!D<,Y#b\1 kT*Egy `cc˫_xbyETTcٙewu%B0k!A(  *O1GB歛-W֭!2i_qkz )[ŋd 22;wna1(x$(*Nȇ/g''bMc0jԮ]x6.[eQF-Ο;JED' )kk_66馉tr Q%[x ˔#666P$ !K">>h\K痿h$5ðZjg4qqv_CѼ&OZlBٲe+W0.Y:/̯+ixb#yh4աRUjYe>Sz2@]]F9ﯘAxxxmtz=qZF1wO< ֭[ςz:{_|%#FȋPQE!مɓ't@ªfiiUGf27m'< BCP|p%+Fʕxp\]=6/e+@JzQ#GNz.hV^E5Xz .У{||EQ|m۶[ x;[~ѧGy%Igz8PxqBCCMUoXѣSM;uTn޾ZV.|SKy{.Fn 珓>d֬Yܿws sʹr*pa6o‚w^XkZϗ-e lCYl) .»7666̙37k-\Ė￧k׮ 4s0u|Y( _c{Ԥkxqn<Ԩ"0.QP~Xe5],OZڶmرckGpp0+U%մ7bUtܙ9sӿvY__Ȭٳ;oUT_zjE7Zsz=w͛ 7n܀}^ԫW///NdzO\\[TҘQn\i{UV{=sgg'W5"E۳h>%hOfGawnB"oaeY~jFe}Q'ZB=|V".O#F0w\{]oA=NZ&m۶e3<5kfz>wltJJ[8qsgʗ/O2eIbccϓ4irVVI jʜ;wO34mKӭkWztƉ'x1[2{;oM޽x 0.+ܽ{gK,fH#xݡtܙ<( JsA0U7p'Vks\}WWWn|àC6\g/˓@RQlYΝ;G]Yh +ŋYd)mROT1>É)RKhQLS]j ԧl #GzױM,na>7L>c` "fQJ?p-J@?6oM_~GN^fXצ8~"Ooٓ.;ѧo_NWWdɒб#˗`Q?qbQR5s]E)u q ӽ~ f]*o#@>|tITJ<?n~o`0ذq#M5iڄMmh4Y~)-Zrۿ CZXxԭG:jقO0kd{yycaamSɀٿo_QRԨ*1}^R}?_#ӦOK70w\t>S.i44o̔իʥSoF=)OIJZ-*!Ӌ888O?SreBCCS$T**Vȱch&OĮ]0_~@\떖hB HEޞ>:g(tO1ˇ΢\r).oh WIPYh/{Gt~i-V3fH3{{{N콑# nn哝R¨M6,^Yfc4Yl)m۶Զ~~~̛7E)ݻue!ӧYV/Dk|qA/ٖm۶ѷo_6lXO! Ř~TwؽlWN]=ĝM,,,P_bA "Ǟ~}{N2k"#[O )neu:qQhْ޽{>oݺ?~QUOՑ#Ghݪ%jOh׶ i`)ݡp]-[u"3ňqpQk9Zo;ө/fzH @'k׮]ߢb=93ay玎Z&Ϧ}vۤ畫Vgjۼu߾}۷otW̫* cE=*Uoj!D4j ׯ_thenaεkWѨKQ$xζm BJVcmcj[XR08Ο;鶘(:9^޲B(4 vv/pjHBg~V;{;e)"In!Kʚ%JV d+[;;\\\quu:k)^AϯWBƍWil/^JpƗիgp3O6͙ӧiݺUt`n888`iiSqⲕ66XZZeznQgq-/Sxqt:{a/VڥOӦsi>(^V* ++k,-=/ivOQtn( Q]cee:u"8V0rrnW4ꀢI:f<]ijz{/-[Ś5?~OfL'NE!C0jh&L@n]wt:>}4j z'fsuqߗ lkAj~i`4<nݺUTɏ !DQHB,]>}믻ٷgfz: sVsuu-peUfV0awinѣ\xq-89:]RUqi*T1c9ᣏ>L)SٻgAfցr|B}QF EiG-cnSV˪̬V rBdܳ(4@e00 DG?g9cǎ{ر#UTaڄ&g{GDD(i?@Lt4ݻueǎtgN~).vLn݁eFz=K/ $($(jլAWJRR%.Y̪khӶ-A3gҿ?<=ҽ[WZhn/^\ W˪V5k6ԩNSx|yK!! ᣪY2x@Zh nݦ7b4s";B]í\9jr!2 u6+V˵DINkwluj̬XԎRl/;, . D2?uV\2ܹsxxzQk k 8aÆqΝB"`1 {U"BIV^˯ٶu+|i/!(S""E86 FXbxy{PT)>} ۵k"(K.F$.8_~ҸP4V@y*X-#EaE@!2% @:>) + QZ(RlzOyo777g\:Ke4^^^^ۗ}&{e!^ !iNB!2 # BMQFH@#B4) R1I+=(Y5_HR0jZΙӧ3_fV SQEs ,[ ;b( В*]L~W!8hK~W$3+ Q["[ j'{}9~?|Ҵ7 ,,,m߻No/ZnE&levݻq BCC3,#ITT.Φ?ڥ Ʋex{-[4ϗM.-8s坷ߦO^ėbC!2MI `"H tIDATH} ~E^ydg J*Z•Tɓشi3wƒ8~xlڼ6m~aiiFk6ou'L0Zjsa~۳g[2Z03+fY4#*UAE.[EԽV=7罗7fff)^߿ unknnNiժ%-[YL25úe4m@jݳ S^ b@+ffVCe$^v\&@=3'h41 )*UWs5]?IJeKٽtLh4ZmmPnJ/jBdHt(@e0R<2W6mXxNDzeKi۶me{EQݻA3 QXZZ ֭ߧW;__V,_hD׳dbg]03Z Q" ) RLtR͚=Hqӣ.fI5AՓumG``P077gt֕^#,, ;{5q)V̬TJ(NAFVk*e`0pm{y!F1(#5ʕf-"/֭TX!k/[[;ݽCeij'g>Lre3=jjiB6%t,|$Bqr@!D:ŀ%(l$B&@-H!iS@% % BCI$(t$B&Y @!D:Б@!DTr/$B6gQhH "J6!H8 P:>!Ht,PZEƊ]Q`U\U$)Ja "mH@#Bt-J!iy / BM.$B>U~W@!H(Ea`fnF||<XD!߅/GAJUU+ xr% q JJ%Jƈ !Da@f,T*0P%NϜ32ZBQQJ .x Gu2z=j ŨVN\ 4 EŘY!^:I3IuVgT0* j&W˕NIID! w @P)(\hrJ((*B!^EIThLhu @`4w5Y`0(XQ ]ʷI,*W#>ސ,pܹsOPFu*VE.2ǣ( nn C^9`0,ȋSn\b/bQ.Ω~rL[T@{Uxbbbpuq!."{믻tqUFժUqh4¹s˵)9)="O]޶aQ8,JJy ̄u/Ra{^=7^ wQu +q}vP9}4۷СÄa4s\V^?Zt?Gb9)Gx\8ӎNb=_g/Er]u+Hh8 ݽk=X ndݜv4(N>ŻCGzz=7lGl޼G{NY.8TuL0c#nFSV>>DDDG2~8/_}̼dug>|?"666FшN={#:)vvvۛ]W"g5$S3uff {p5+oSbt˚;wt +++ JXX .`i:ܺu r GǶ~.K1d$VKQGFxđxy $4e߲3m2V650͛L``}O<:;I~Iʕu6=BףRLEQ\2ݺu3]>x@ԙx|ݻѨzJ)͇~9k|͛BeȐ!:}r*\\\Bsҥ~w3f*s.@s/phO`oaO'oһq,K|g)ҴjݚÇ' =z)Oa՜| ϯ=={`ԩ?СCy~nkLt1KP >GR.jlܬAٳ(8::vժUi>|h$\BΝ0`&NwtҕPĺu޻z~9{{{Z*qqq(j#!Gx>[Pi*ut0VN?W2c{ŋ%ЦMtLӦMi͸q}Y?"}Kaqxձ&^qm8DګXۀIoM2? *H}82hQԨQˣ( ,Сs.]hڷ*R͍Gδ 9*'NXݾͻ#~?x{(qq333>|kB<`>|$㝔ÆP2eʠj mEQpuueԨ^ɓ'z.76N}.N?\ zt:,psehײU/{{{Y * ---Mi>?7nr_|M6e{#_=JF\\ɽxͱJxGX`ELhvf_!gA|}ӹsg.h٪5^^4yy/;OVh̀C{iф{8wwﮬ HjcchF4igڌ8v;V`Ru:SvDcPѱjI&01 )wy<./0ww8{9՘T3qDf9WmtjvS|p`zϬ\cc'9'BMu5|o.]JZZ*'Nd߾:PZZ'OEb, S'(hm!œ8f,@Q1_X.__ɉ'x<\.+cmf&O>~/6Ówb`2|cN4 l4 X: n֍[,b9TjVQM*vK^ qc׭[MH;EQHOOgMf6+hjj¦idgec R#}B =w0!$ا?rsv5j\o!xV_l߾^5YYOB^ޛR[[į0\7l`ժUXTHsRYyJbB%%|mc@Ƣr9W+p+,ƤP]$]糺[@WQR63f+m{cWvQZZ$mfHaϸqml|ٳ–-[yљ֚?JIHJ0~l)s^dܮ[*3n躎fd2q<ŎCk`N㜬;vۧӧ>4E1trˆ@BPsR4⑸'K{{Ƨ7X~n Sbt5kPΜAxpꞜ-7L.Rw@S c{U WUщz4E3榶[#?vQ Vі> H~o}DFb1ϠyWQ֮k+Ln7ʬYU=2_g%W3g( ƹ jv^F#}ɋh?) RBYτaUH;{={c"aB $֞/lӿK͗/(U[lӦs 8uy^| բu[HZl&(($%&=aBI-yggq~js3>n/R\R&(H"#pR`b=y?*jXՅ>*/sZ6FDD8IÏ>?Oac!!ai! zf ?+ LUV n/adi8vl6M zf ?+mimoOQ)B I6PIbz~OHB %Р|kۇB!?Mk&U !,jKB!fE֦B! w\B!CA}v EfBe`B1 %jBNuK`d3B!D@viiiŵk_B! ]43cǕC>B1y,..^a)RگwޑAB1Bt}׋n'!a*=:22^0<3i!!!i!Bpr9vƛ ttHMK5*U|/BQQQ-ǹKb&IENDB`luckybackup-0.5.0/manual/data/menuToolbars.png0000666000175000017500000006001711344740203020751 0ustar luckybluckybPNG  IHDRzb pHYsMĶZ IDATx]w`s˥ W i T}"(@z@b HoB IH( %  5$@rF(13o޼y32h 䁥D$MƘOͭ=2#JDc ~4@U1;BNh5d_~P)*w0翲s672 @e0dcPHJh@ fh> 0 zq\R/ )U'(mk0ƈRhRKC.,@#~:Z6\21T"ƠĄe.HJ 'lO)*77F5nҲA=z"!WZ*wRZ3H&N"UCFӐT1ޔRP$ EO-?Fm+]@'z Y2N80dm!ő9ƮnMxPEBb)єK1Ƣ(+COxRCDV N'CE0i"b ;&t@ZB I+NKҲ5MPSDW 5]PLTPhOM*i ,@ Hf5T _c覑0SY.^LR&q]~ȵ,ԩ8 s a"VG$vj2(yʊ0NH$08SXS#GM&)b%鑹р4V3shP# YWbE UĂ* AgNbZ$ SAad*necIDs#Rdd°LHa0UJQoJcv1ugṭai eeDs7cOEEO zCHnj>yDFsRImjժ\:uNZliә&_d abt5PLfح"+fR2Ku%Q!0`Its "jF&7aT6fcM($ўRHu6'zV HF!JI)$ bר;EbcZ.;r{]tmڵjLZkT"|D3aָRqO$kwkp7Q BY`0XJ@ӓ'PTG삊b0BaA.%G.Aea "pʼn]@rRU~TE?TTKvi816iXPBPvI0n4O1-g8;x'0)}Jia1/TJ&!D%rģ*\  QG]tx}lfQMNNۣUVu*UoPjq:s\Gvv6XٖlXm$cZB'%v_悕 %-U$Obt%8,u>DPl %%uQak`9#Lt睘MOiF':GJރ )ǩ'RyKe0͜Yz޽?_~-Wk08X,|JB|<ȐRfM^(Yzfl6 $fm9Tkx -rJK ϗW",8"@H̷SxJ+|.$,X%B,5Jm|)i26А L\1ql FVɲ-vX\˴T*eH,E>>Fa!-H ]1!3:*NIIoݺUde /e˖-[(7_S 00U\58U2дYZ=7@J- e#]'P`#)ȱ'dPv2 an3(uuED9aF/Ne4Ұ2?P)X~]҆+y׵b rle#(yQuERV~ĐhFlI& W @|aZNAB9/1&~)u  s\c Ht|a Dr%"AT4Nxayog'Bhe8,P*尠P[,ZouI6&$(foDjs6 HbY\dW?J')zĊ;fRS=mbn( ,25픗UwKH!-}*^Af "o MP6LF] ϕUdݤ`J/3vJ+AjG*Xh[h!6W婽.XDZjdX.i Q RލUEqL0eJSѬXb%˅E6 % C)^Rd&S&z5LQ!؛3ls̬?,-%-1L-؍tlE-%e1|-F%$Y*~ I LD,.dC!yˑ,<,JiXJ ``5/N~&@n!*"zCr".HLSy KpEU= 0!m'F-+6#C#SJc>S5'(_&~m}0i?(ThO)hkR!!U-%,DAH*CnifzVXR A"dў/$1=f@u.mŏXsHz ZB 1jS͔> AEsviwqޯ(S\Pr _%Q&CwqcNѕYRҡ`kԬ #ZMD*66H P pd1IJ$5@Du 9ֆ5EaQl!3Gzŗ 1YSn8vhmFX,dU6=@: y%*SUKAܑ1(a J.=R?}gJ)'_bfS|gB ~(Qk\102B+ڜĻ~=95{~f㿝N6I4(x4 Ys S6 8SQ={:__3\R>mԨ!$$$R_\ct$6RFB}c"WcWHaEnlf.XF)7뼸dPز*rwK@sWURM$K)NTD27??~IKҥw/i!E#-"F/N])׸q#m4l14K3R#;Xu/0 HK)Rrf*Rz|cߊUM yn*t]$ژhTHT\TPS"zg*::f̙ݷDXcfw%0C d,KR#5"DGeD攋K?f.omkW%|RG"XJkO3XvaeiG>JϹ'7xXV57+㸖-[~+U:~{hQ$ ^5-=\t~(E@@IM/_FB^}+ NBH,D_̑-hbInHmoxE!wijCܤ +ŋoߡ}s%^Lm 4E}kgb"VX馍,Yuܣ[>x̟7nӧO v䓾o#,VUG߽{ۻ^}i٢-9A0C\JQ.KGm߾mӦϟXWxW %iG=g{9kժĉ_VTKL₋&ZhzLܔOSr?u> eA <{|R%ƈ51 S ˫=.RKߺ#W2y!Iʍ76lx<6v??H#$$$:luח.SϿٳ73S*Ə?;Γ'O>g͞uߗ/;n]+ .\fz={vĉii>ZESև^eaJWJ΋p_)yD6HBU-xy ]ȍ[$;&SZ$ŭ(H+KQӀhD@JUwڵٳZli6߸q(bϼW'nh4֩]I P ѣ*Vh6׮]ӏ;#GWdW.v%K@\l[Ο?_N)_XmQb@6m!!!;w.VԠAy!w^q9)|ӨQ#͔)~(&?- Rl 8iBRV kȈ~d/a0QbLAƓ4uhc?1E ?>FdP#d_<Kn8`Z[aZBZL5 nq\jjj36lt}p\kիWJ/V?u4jؐP0z䨹;~cVX”'=A>x ܤI0P=)) xƍERӦhqJ*+/"H6):1R*2! ރ_ T$/[(VJ¨<"g/9|&K)d=k`0TZjժM_|ÏW!_n_+O<uƍ.Z' po8a2,qx81Sr='wvѬP!^!B{إ!_mɀ/&-~ObJsx-ZD?pBDc<7Y"H%rso#PԹGIN^y)-J/ULai޲KSo˖N.n]k^!]bq~~`OUlիa̛Fbv̿Mȧ_l6nժuV{{;/^H׆lĘ]֙ݰqS:utr -:mӦ  +Wfva6) !KѦ,,) ;Mg@tćT%VCX\D{ &bRwx;%8g|${(KQKt9?ҵX  $"~n6Gw691Q}7~kRvHpaܹPbEzwo۷o펴ݻv6aOS, (& -[,INNv:KH'NZ董wgtB ѣFn۾ƍNf]|eㆍ|3fHLTKDŽ]1ѶF1QK' GJQ“/#DKZɤ"]%,( j0Rt#z#I]%%4r U0H.BD6O L+]h&g w@|UshOOKK8x> Çn:tγgfff *4n  8>>>++4R11W(QDȼti//m۾=hcNJ ̙mێGʔ)۩czJ j>`G4%Bh]:wYnӧ322TܬY}y3s̹ؿpjˉΊPPynh `b&\Z){$X"pY D/M #g)7IRWEJUTЇCOW_,kl;]D2 %Edq&@׮@굫5xw?ܸ9=/U6Vv`_| :u\<FG%#1AՊvG8bEAVDUu)*\wL^4,E9y(!r[d9Lxh1mժ];vmv[܋!`:U{]̻)r(Ȋe`eOLFӴ T'ƂA|u:L-U0P)Ĭhn٭ * K4QܨMPVZ9W*SޏjmRUMU _1ʆ0'ak50m[l=D^ JK$RYn2&X:I6-%u(+J}=|+Bj5bɭ ɒa[*  ѣR%K懛'ފFx/?ՁόhdW -($MO0ߌjU(M`q`$, w키^+bBP%J,eي6 !d6+v,QbQOTfiRs==8VVvO.dָn.9g (^~֭z-))?c͚5.^4{[n_ ڵ8233C6n4iDKgϞըaC7QmtڵkZrI)ѕտ_ߐy _NrڴiJU=|'0g@ VSdIQܹsݻϝ;d2UTiӗz~=888l M4ӧ].xկ_CT(å Q#GvǧSǎ#F=!Pȑ#իk2׫7z8*8;_5v&L2F3jԋMbJ, Ǐ߰aٳg֭sجoƢŋ˔)s֭oLqvq%߿XX2ezyntGwyÇ߽t:-˅ ֯_퓉'N=&<<<O?-ӧݚ?0bThѲتU+@ L7jnܼ m޲4˽ӱc̞3ѣG]*U׮] `7d+VXmF|||ژzm֭};Et:GٳAAAÆ kݦmPrNNغ}ۓB[}edܝ?~hhoֱc|V}7#:vaCPQ.?~͛0NI1%1kĉ""Ү_eWXC1Y;o/^xPP}z_tYCZ}tϐ!C,VK@Ͷ[={bŊV*U4h4k֨QFZlXŸFG,X`=YYYqq'4 4tǦMϟ?g?:lXbhGϚ5s߾}fo3f l$}r ;PRJOehhhRRcժv}Vz^=h-4m"@%MQw*W|c۷w>v( ʗ}/lּby_OD5mڴnۦA|GGGY槟xH ,6wʖ)۳W/ɔ;w#F[O|5yRCn1_}ծ];IJj[Q+VUߟ3j? 4(?u#n>|q$%)|RQQ.3ygnSxɒ(jZ#E,y)t5,]$y.-[2M&[7o.\9u܉VbDl\\\DD`h֬1c=w0-ek4B y`|Rn; uI߲y];+UO fM^x~ ޾sgG4x0l߶O'O:y"޽{!!.2E W^uD\``9sccf͞pUW5z(M~PX7qXlęf5TZuL2͛EGL6Oo٢ry3}ccuGR/9I_J^޹-թo߱Kr熶lޔߡC֫ 5_)-qY9$e_hM7ys6lР9s^};F,8*UÆ]ylGiKs.믻u07yWv5P&?(Ŕiƌl~(55!TRΝ;ѧW-&~/p:';z4B(66d2jz?ݺmُ-[KN⦅6-[Uzv:y#-GFDGI9f\rA1ч#5wѫeֹbg>xPT|ѬysOғ`Ȑ!rׯӧkJ*%?֯_o%z 0d|tp=)NIpOPÇeahR:v:o~u٫{ضŗ^z{O <[ǣc^;EfE1t tҙC}'OiRKq%NJz. /^Ae>>rşe=|swժu~eKmӺdI-jf(U$_HOjׯP[0wPVzrRRTTT׮]IbddT^# < }}$l#À1+C5x"L2e?@_O% y˫`._]^~퍛6^qtlWlڸE5m6۵k)3gO 1cFo߱͛Nn_zTŋ@llla{3fػwbX,{fΜ =zti3aXg߻y: 0LPt oױ/Cf D&Eƍ{Oנݻٳg׬YfԩSsk|*xy}}0Y.Cy䉉ӛ7o (&?P67FTVnwTg Hl( KOMb)o%UV8D2mvj(Wʕ+w ;܃M&SJ^jkF8p@[lv:;u4v Ps4/'Nԩӆ322*WܬY_]DeV'NĀc>xcIqIM߲޵k+WBUU٣ǐ!CL&27li󼼼^F@9L"a€ 9 s~\;q B\+|  aBb8)B.5^z;v\h4>z95xQ.@+FCPca a 8 |\<0Wo !r*EXg72g BeqQ7N' )`@F_$W'hq%xSI%EB:` F|b:tS:tQL: :tǎ_n]||[ΰa7oތi;~>>}^}zpظX//Ν;;] a9h ?۽}ێ V-\P=fw 7.X୾}ǍW+vi0nܸ?شikzj+A7-: ~~c15/!!1 գiM VUʖ+ﭷ ៎{.Ocǎ #[Sٻ{uLL/OPl6 o46&RwٴfyҥKNjԨ`?ڵjΜzU6lλC:\,ƒSWޓrV֣gM#O1g}|Q#+J/8p0=ln԰ᠷo>o$ N;7o~WN͔{?@~`Ν|_V߽{rJ˗/_|+W3)}={TPqaaa?_|yʕt 6mz```3SL%|^w7'شi~`p:Ǝ?ٳ,f;q"yn1?'''l6͖hQF9~;wZo[O6uU_Os:=:zq㕪C%w5ʖ !>)_TXۛʕ+|n(/4h`2_h`„KS4pm0}ڴ7zyի[wԩNW ~ޯ/ZL2o0m7C5Pf jRD ~k9roʔ)틉?O%Vk>yD``̙3""##"#g̘i;wl޲9**j};_LxС+Vt9?MĢS999['lϵk)Vwcj֨,Y|q4 &M4@[/^C s)&w6|O_bn9ҤiSmrio^gϞٓ_֫իzyН0yd~/ a0yҤʧt c!e!ZV޽{gtEp˿FΝkʚ5kj1>rhdd͚5Ci|&M{][II'Ĥԭ+^b'Ӊßn&44ۛ7IDATc'N۷ZjW\Iu<нfooׯϙ;7W۶i !!!Νs:Ν?>CSzuXrfKMK 'Yh 7_|k[999vڵk۶m>\2O4'رy+T;g(rwӶ];&pTT-EDLpurRy:Uԯ/)]q>o< ḣJ)gc-:܃wD=_JZP2$EN,P~=#|!\GAN:n;Fgc~m菺<Ξ;REs7:txLx ^|6:tСA77:txLSbUp$&-񯛛"Ɯf7 a΀ `,Q@77E qŨϰ3(V, ;QFFFҥ`:tMQt}rSS-]&o;uxЁow}{;=3dk̻+&Xv={]K*UvB]9997lܵ{+W1/k'nK8O0!++kĈnEc}1U2*nΙA2e{UH/cǝ:u\111?h4:?ѣ'OE;_ɓ'.ЯxUR!9n/ˮ^+IWq]JegS'>vm@TTԼ];dȐu=zo1;v;wի$0>7`Ӧu噼 #__aAukJERlޔ֭Wٳ⋮tڵ&@؞kn8޽{/^d25nh4=a_Wy]_CEÑ1ёK~ bG:k~oߖ- ٔh'ݺ}rN4L6wE-[(DYu<MCNe˕m,6؎m}||Zij ?8j޹s@77 ҥ|2|dٲev[\_>rYUVtb(ZZDDFjp?nov +dQL>80 SDCRA^xծ0w޼XVպ߾y!$Gn##1̤Ih&;vlNNiӷmB3Xrh2bTo ޮcg?__9ผ<ߦM&%D>})S謗6п?`ܯ_ظ3gL`^<}Ez(a6hؚk۶nfbN=ʿ8e˖~J+feeşWO;tsS0jY̦2m{i#-- &L,X1(^xwh/X,K,:|lѭOؼeKxxDZZ*TTKNoop8lذF}5k.y1X~{y6nؠ(\tf-Sm6 YsDVڲ%KxQ1ƟyΝ:M[E\&?ݴqnݼ˯O:ծ]O>D^F[*6mmoQQ= ݱisrrvرkիWﭾolR|M#ݺ֭[~^8"2lգЏ>eXVXumwz_6ڌH77E IYM{fݑ[JNu+tGh^=4(CBBcU[t2_ vS$&&˗/?0h4Lu{^W\y葿d4h1 ')7nذqCFq&!ꕫ:vȈW+7r\iCOl}'~fBΙ{"-NO;q$$$$$$q3g0ž;gh]kY[l7x 9t(6Dl܉C=O-Slmc\M{ꝷ+GCg͙sA)ȸ˷lԻo>>}-ŊM4qӦ6mˉŊ"ШaCHJJ3g9+_qg=IIШQC5!ɅzP  *lXn-| W^u0~8Xj8[j` ˠ6?PSц ܹSB~q- ̿|*]m[.]4km[x(mN;f?klۺemZՎ+vt-[Xر7={h3zt{–-[A/io׮]gϞղeK|ƍCs煌7~}rQ+T4̓k׮`ȑ;tԱ#pqFp|' g|R2|ɓZjo4ԮդIu0OӬyzv-`xᩩikˊ<=#GWdjPh{I[\Ub&ѣFv-00d25hPo9S8x f2v옊+w WSR%Jcׯ_խ;m(LbE-gGW\ٴ{^io&ǥ&9aK.-_NU^?(QXV455ZH7mժ`0 !>tR;tXHN`0r{+0v8yVzz:9:'Vj֬ΐ!%WPS͛7q#5j,1y7ΕH|PUkqq-[ktb5%Jծ͘5#G+*U8Ε t麗x65 UV٣nj89AլQVz/]KMB/5}ŋo޼QF _Yx^ fggg=|t:3333~(ϭ 0ȳWm 6l۷#C cܾ}eJW=!!}ʕX:ر$GF`M5m6mt:mIV,[D^?Bx{\iU?e]zQ|yH 4m.8rZbU\Cfm6#?˲eW,Ysޯ[YYY?Ә1c=OÇ=zs_u="#>tڵ>1mm[0`-22~Ǖ+W@Z^{uŲ._+w^w7fK\u8>}}0s1 K- =+ Lׯ+7hIL֭K`,&::on:lՈ7gƆƆF}I <#JHL'Scjk 7/Ϗd.Z(//**.r0?ܹl6;%% $---tJ_^ dŴ\YYGG@%KL*9s&TWU677-X'2NvB/uDGʕ RT*mONwP9`h'Oћvu7H`00X pLL c2A899GɴΊxVVVL&%$geeP\`BoۛX,vvv99NNNA09sDF>|T ]1֘/qgeHHjN3rgvvvB$  2}wl_ʀn\bb|vv(#_-s ƬYݰ\c(D8nkk _Gs $Ϸ;lRbnwt$[֣{FR__=~me655}vPnU."B;xǏB5vqVTL йk_IxQwG+**Vp]rfslګ!5?6ELIXd Ã)$J% FxʭӶ ѱlҥ 666MMM^^^aa‘ү 7kjjJKJSR/^&kOgcc4e],6pAwz&n6$0<ٯV_ߘ(~K}ߙr0##G  )i2É̢[oM i#7j`7 Şi))r|]cd>?udݲNcWg'jk'7mh4I[SZ 3x7L.IkjussD"9F uu2gguכI+/ >Ǵji檡‰u7MEŸj>&}vA`e+?/1_9$~1'kJGd0H'7״+*aЁDh'*EK N MZT&ҮC'BJk8̖[ijkfϽt3 6QG}1'NF\=WYj|vٺi3xrN?LKF)Y1jͺ R;1᧜Z O '}fí}5sFƤ$2<xbOg.xBU'$,Doݏ@o&3fnD`KPh?M=C,PQM'ə7LoʿE:2!܋^`9iC]-mCk)/H)BvPEL4ݡ.n!}kjt4(2]wdDA܃ڪ:fM< S絬 >.6Gt ;9TXQ)B4*+t_92ƑN7EjKz8DbQ]R =W+GPew()Z]4AuX4-ml %2h6B܋pWEO%RꚔ#6X]ӻ̝oj3O]=bh3^y=U a6DŗjX/OPL >u|܂"I6]t꥘)Fוۆd] gΠMQ wд6C-Y>k_rX?-JcE}=i։nsۢ9/|111\A 1rxuϸRۺ^y!Cp?w95TЌce$F2j`1葔ppkΙ"]v6uvH>=%bu ysPrW}>:ż!$2׹auQ)aHz7.}ƗeDÐ߇ ?ZgC os5uxF;2ٵ}KH|Ggb7UYv6 jQ [3@TWl`f#c,Vnghsˊcͻ.;"Gq/ʡW_H$8;1d3b0k_>2X;eOd.bV-.f.3Y`|;|ƾ |An k".%jHM \L FxM\0IfW |;wzÅ,2Gr 6a]` *lxJTRV 5Ź PP E=Xϊ.a7ŢA^sѿ/\Al57xYE1Z"}[N\\]ӝ]%<(zօ yG|~ˏ?gOǞ {ާ15"SuͿo#>!)OYXk7 mP3ғ3IE*-ǽ U?jcR^`"ڨKoa5ZGL(͢jAUdȪKz:ncnA$ܳA'l\ {ְ+ %i6)8ɰeu}b d"`"bEGi1qf 7>YG?`Fѱ-}a0ᤰFڷ#xy6~;3qPP_C3ĿPA=x,]Q$#Re|cEx@d+3:moCvmN&RպߞTr`D<7 60? nl@S>bͮ l]vʆS7s}bqk @@;L7,KbR㑈"@NBh =zUaq7e@"]S@ϓ$rs:lEO 0Mg< d&2\&fCx0{N>k)9l v:,x1B0Zk#$0an^K^1s":##Љ DhI ǬU;q3~<eơEpT8T/!{F* "[>>O|wgwP#䌂9Guwg4EVLw $'~S* F(65GOlB:~vQnұe9O91#bF$THg/ȯΓm%$i¡x|EQ->)g1Tޚ)KvA5UD3],;]k[cuق y ߝ Ɨ(r|>CWA$P p#ѴPvڏ8u)pc e؁LJu(h,ӋkI4VkU(EMFuE̙bHpp۽n,T?-(Ml `覠)Btxn t YQ~*X"#bjop-ڌ=t4s"kt8QmP rm'+ﰽM+$H`{gn7,2U $QƯj.e9=.;n߯Mf 7? .DrǗ 50ywv7]57s\̟bKZ,o2 ?t|)w.c~YM"bqby7pe܀)щ Br&;[/1 ݇+RABfq׳]vݏo7 +BiX1&Ċ RL)TRM-ϔ3Z^B%\)+^S͵Z[ͷbK-jkwyN^w1#4(Fό3<ˬ; +*vQqwuv‰'lN9ӿ\\z/4ҵTr^W>%{re2R|O;W~}]L3a+gnzIar0KO?=,W?^^әC:O#m$J[Yx%y !!1V͚DݟaF(v}¬QMVf+=n]4j3nۖy6'6R1uo54),┕/k~=iKF3+ZٍhFm"5(׵Zz~? g֗]xx.s^ƘTQ#uFbbScF @UG7="m}[N LyVLex}ﲷ6\Y9T~~~bˡ}R<'}: yt`QCBz&'a%|Wn\f'ha L\+&ü$w|@+4$`HEF8U$#0ZBj{ٝ&h2BhgyKǩC%'ǚe׸;쓹nHkUe 9fvaX*͕Sc3u.kɿdJcO7|kfpI.J%ekadQHHq3A'Bf6$挸5kW3!dg-ixVק4_{5] :%:5~;, ˀ)챳-Ȧb8kc>勵$ӌx3T'e/"kB53ئ3`ACpҁ><>6a LvhH([G~Ÿe}|~doq9-`^j]>4M(UJOkuZ gβss4chЩXVrug̎Z?)(i0ϔϧq>_?]!Uy vt.C!:b&hr60yaɣx$21{ѱĆa1oPA]/oag7`f'r ,;5 7x6?wa֫nlްK3.-2Sɻ" SSn~~m`YN 9`uH*lbsv(c|Vx*BB4' P` docNB $52:F15g,n5;!qY +, cEok) r@eLux3ЗAK$Y+Pq:3cd; `10a3n2<Fٹ(,dfX9|^b4|8ff6F yMDZ`wH_;7Tr];@3W3e: {`ica"`4S` j rM# (R8i܅W^`,=_(/`S!3M&pb?Lf?sÐqka[l7E Z)e +'LgR v k\e A=\l~nON#uǤGƗ2Má,eV`أmѣcT4dVX3LgP#yCo0"F]:Rb\;GDfbcoc$ fTgEr0OQ-%藍yAT܂."D`LSdLztjP<ݷLED:QѮ& _p#螌JDZo ž}P Ҷ;&"r3(["yJ96WPENBXУk"Lm2%cvaˤKKHe5jI^%شQ`‚r/g iVos^lUX\k(,x("a CFg` 'oL n&M;غ7wh B;/]`cQDRUEr3$8EFn䌶r 7eQ6RNR@' E \2(02,ʊ FLC!@gƒ30fd7ݸ&Yӝ*y2Ǵ"ՎK@ uv4~ح2 Px ut .d|-c3%U̮ {(oTĮT`X؆w$: +lDeKaCkHq`/4(iTV})xg` F1`'.[#EѲAN$ʥ!,K_)@8`:H D:m(E3a fܐ3- ReJӉT8-reUjFgĘA%dc/sv,Jp_\ɜskY8jB0e&cb<^Pd"T[YwY$!3ap} c8Bi ǀJȌܘG&JeyO }$95#EA`}/X!NĪ&[hDF(%]8 Bd-R{De9@^IMXE9ʖoКN+h K+z y-qA[x1 Q = ZmG+)R2v  9Xn*R፼!X@Y*w.5Q(`m|6*AArhv35Kgu*I#N7# cs~74 @9wDf}2m-`(jhK.v e- cR g*آ1 #@ 򯣁fQHe*) 90Ʉax|A uHU8QIw;d1u,aliPƄc G;M PJd0&f (D c0^RK(6>6;Հ=!Π,NXO~Ie;c=g} d]Ǽ 7I}1P{-xN\aԙ܂Z 俇1ɛ9T8 XnG},?tlX(PYsNޙs|w4K  4gXff[̛|-$Ju_%I2\:X.»rWXdy+aKO@hإL#U3+glLQ$A7Vi2L- k$M7a̤:7Kv2ȔUdyFE\| |m_S0ZRcL#rZ(F.{>fjAL1"\ u?s5M>M,[+wJws󮎪E,d9 }4Nƛmևl X'6[GeqxL!/cvՋ(R ֡l؍GF>Z x$4Z"U=;Bક|) j l++r>{B`8jy”!w̑V D G yq" :r P,S@s;Q@ C'̎=<2(-+ʈgۢ6Ҙws et1XJ &F%*bNʺ=n1#PyL+P'j aaI+cјَ e9'J@@!:1q̘x592} N̆:uGÚ[#Bp?p <TH8:d:!_&u$3 6 1ldSt? 40k1:&LE9'S]5gZt3bpI5Q̦X)$(PX V w3ӪU) n{yC @ xbm gJeY~KGrxB Kv,Ă)`m>Iw?z\7+CP,@0Yݮ+K6:ݵ Ƞ=`J{va:mS9YdDD1>ʺ5Fj.*f3i *&mqT|Dc0`V:D`}֯aH$PkB&@p9\7{Ѕ)U G\@&cku1{ciB ɲI':Д@#C 䖩`Q֨%  V vu"l?5:+Ucg6+ɉ ]Xx Tڐ5' cC^hp6Gs(CQnX7l1"%j#O@ U`_B_ÙPBsT8]x~ <,8[0=MY6 |/ /)sbQ Ŋ+{+۰Y&_a8Wй/ZG] L*f0>Hm* ;+:@; G$ ]ۢggyՠ<ϭK %伌ߊv@!7J &:uؤ+[ҙ;u2(ئk љ֞V7 ҹg9y7YAu\놞ka7KVC^?' qNVfk@*a+Y;tzDߌ'0uF{^] Vd`4N ̑A*K>:XjqC pȤο\ƈ7uCfEGG!cea!^wtFVW/ u<): + BCc2^ 1q(i~:rc‚1$X V*7P^?ȢgqS@kX%GS@"Umtjq9%6,r!b}{7E/rk'CݶŇ֕xO,ϨAwD$j n @.'k<.W(257u|5&q,yyShd<ʵh~DWVi=H;IIJ_^KZ/;"W(j0Ekz!.yzlkcp^ d%ܤnuq]qʃC)gq5/AKo mJtI11NB[{&{'6mnb H t#e{CT,,9\H!": jx [pO:ޕqX͒uXXYlVI$qz,(=<F:Pe^mWl͕{Td#t뙩%dsl!9:QNP7]i 2t 2fc-H,3Ǵ++Hg*;j52jnGN cmy$^t;&ʣ3*3B"ҖZWφOY!<[A(aŞ)E҆UΛ}7? k^oy,E+rm/qG#7}fw Lj8ȎÌp<"9;z] jxvV޽BgG`k jV}G+[6)ar{ĉ_m6vgV\ 8gup=)̈́eB[z_*XrMG=:eP69ׁCB!WS :Q $WX#"ۗ+b_Р{9W yl -OC:.A1by,+OY.U!w&qq-B}09 DM{)9raPv떧ȴ.B| RЂSo:X l;j)Tڼy^܀Rgxܸ:nWfdM%ʘ(0 cn-N-j z'rP杨esaߣs_|`+J~%Efyf>bJN6F0^(0h M6X@@B:I'`zj06P>[ ag_J1+,Ǥ$:PUuE=(ֳ2Eщ1ž [0:=+` 5-.\QebCfZ;ތw:;0-(TH4m)rA'8r3ە*ʞQq`A=9ozٵC?;q//R\`0t;TdB~]\2xy+ԬlJk$A:kJ}'i3mkU^ӛ_|tӡxsP0)Y 1<ؒ{]aB W2:_s&Vv TL2̳Ed\Ӕf)3;4uĂHČ ̂rr(i}(fހŠ{P%W 3(́@A!':`PI_Ĩ&*GQr:k+Es0%Vq=&EnXU$cmֲ脡c q?jwO .fV/B2`-ɕjdu zU[rD2အ[% ~(j`Dwvȴ يa˪ZM{K](,Cd+INlWlPAb^nA|uԱYDHhrَH5d `ś:FAj5%'S'`Y)zxEtRX2v?@(Wp9ެd˷7%Z?.%q/ooJeUb)I:P5r\/T3>²ro= *a`QK#8MCn(Z6)o%Wq,[')מDFa?H'0z]?5ݘr] 3g`[3ʥs1E7@[ʛ 7tx@-Qmhռ:Vd8Lx'ťpݣᣢ/OU+,-=_$*sa'#JY7""Y%߯/HD贈*{uĬw?dSmYU2|vMw1M;'gd\2?S1x>:^FT9. pU@灻Jc2M'QNv(-'JA1;\tgRW1ŁQٔTUj9z_:gUv~WGīoVD|Z*FOEac=2⭽*.e+<3*lꎦ)'6biig>88֟rU5o|W4WO~6櫓ٜNgsj:ͩ~6櫓 Ngsj:ͩ~6{b0EefoUXmYpq`rb.*<ܠѧaA &6,k \a@ QRUuS< ;!|K%95 cR? azrhU@ L-,Õ ( :rum(e.Gvu_Y{ܘn;\ֈkߊc㉧@P`x;X%$譒N%pT-vku<`}[@a]u~U!^q0FCT Oe,8|tDw+n.PC`eg}uUE?W![^⺭P'm)uP`>|$ɷ}W"Qe¾ͼ SEX@P] 22T&u'hHEU+^S >opZ?gyS'unڭuQwf^èIFr ;o<4t'$bCVZU>,6TT=/UAEFegiAmy59uT%OEVe3/S6`(P0$N2Hv͕S$TZYxh`rQI,R #\i~Fހ茮뛷cu^G\{|i^n e<4:K4:K4:K4:K4:K]Wwgsi?K]\|u6櫻4_ͥ.l.ߚhsŧ@oVLJP Nu&f %g^<$}2 wXpFi^e (RA)pPHkkYr> YJvfzU7=*pVo +b8p$Sk8 )iHq^--0ԝ, ?K4BA´Oc 3X[(*ƩOCk:O,fW5 @v~+ߣ6 Y-1K;eF#LP9U հ3ƥgI:@)*2P;*Z&J>UGt8VUQ0(§ըF['b N*:P}T%#ּUߍ/C]b:S~滴 ͹Զ rG?*1Ȟs+SRASE5vP J7('dKq.7J4,zqZc덽^G5Y*m)K)[Rb"!R |{/=][D- lwtr9ߌR8*y]7@),~ %:N֡u!65tMQ[{r(t1.FvB{Lhdv=n=%){h$Z(^|m T`Wk_@-)LAm5@FE РkF9͜nydU>PҕL>me_֩pUQAlmyzէ*%fU QBzQ=a~ÍJiΫ}BؠTȦMP@| A)QS  TjY?L}Q5#~ObCS73-ҖLL(H\Mx=Ue-5|3eUFErP`+:C)*5QIla \(eZ Bs!2 QF[oe:;GLUQ~`%ѻ2}u>DO4 ߡUT)E͇HmueZ)rW̢RTlnU/]t*.4Q$PUp0*aY}يÃvEV TAyvΛKFQ/Y̦t&A3jV缡4UOX¼7f4"Cy½"GXϥ|؛ps _~OBljعZ~}݀1eGJU ;%ՍҫP~]r߮+?7WϟG?i~}HwS#ͿKsw zni] ͿKs=4.Aυ%w zni]T|mpEXJ}b`:jPNoƤ*ݝs%W%YPO? K>|0*pLw2]᡾$`|LYyA< Sd_N,`2!ƼR$Tg^nW@V}3x$7.o.T.UMzB-&[5A39^:jab-u )&PU#C=a{kZu^W GC*m7p5l 5}T]޼g+ h0s"F UWՕ;+QUu=Q!jUܣC 30"Ω`=p.*q梒jzvYy(YTͪ:VzU.<\H%lܦh\SOo#mMسavn-z,j{ C} 8%eN-eUWRUH5[ Qш)t+NUǓDq Tvu(J!A $`,ds(.*1z-(ߋUo|KzKNAE6q5g]IDc5=5U[#fs'kU-SռaDUxjeНgB톺E1GY/R:*[E,'%jQ}!OD%E;_SZ -b3uj@:NBmHQTP8*z]!&<Ϋ$NQSQ)w sۦEAU?&UaEg U)#HɣQkh" vznP:Pe]͝PI:tWUL1WVSEEY'6RhS3:(A#e ƩzYǩBtgNJf{U,0.ʓ(ؑ:;#yz TZE澅oUKV+ _Ti˂?QB>+ LU(3T|աW"G#tU تJ^0hiª3vfxsɰKU4C-T1 L0H 7O'쎭씷W/}{K^iҷW42?^iex71~71~71~71~zzzzw\i]=WWiϕUU3$ ہoD/F/7Sgܷ^+L1.'#pꈁ^Ts2?5P൒\}}Wm͟¯okvrϬY?f/ Ku_چy6 br@mJ_m/1;"u+`u8?ҟީXϋRhn0SY\G֋czɧ8n QjK#M(|-x]W9 [T5u5@AxՈl LP;,ϗTM>n?[5~>j4 X+>duv2yBNUd+=tnџ[Cx(5U5sa˃[6~ Z7nS=in4[նP 㽏Vr&eS~о*"*XTIAH`nzfaTHMLzlMUW(>4ì=[|5L⹊؃R\Z&B j WTAu--Ճ ꆁĜ\tYePhԲUon|Q:TgRƫQR6&Is^.E^:r&}~bӜo=U}V Y)!wQȆڂ98ncT-N\蔠4ю(Elב̍$륥|T>ɃJ[($/n?Uaw%_JvϙMƆ}F]? Ypdv 9jmTڲ}&"sGƽ*i@}l)74ҫwH}yQ&]SoIK6ފ7t+oЁf\ub갢?r2/ABʓnhfY-cKn:SUîknS85i\Xפsa1_υ|MZ>5i\Xפsa1_υ|MZ>5i\Xפsa1_υ|EZ_z&[@9g Ije?#'كI'gJY|#eF*@ES[Teu6R䭴sݸÈ;"{\ ɨ: LQQoj1yh;q::&=:ٯPu(uZXRJ^= LD @TPwfF J@&J=G#uUPC]'dNmj:[dU]5 I^ /+[jo4bPDns)R4ffT*-iDS{FܑUQSkn/5˭VL-w4᪷wn<= ҩU=_>YuҲoY(}mXBPRo-sJ S ) [oH(kƹ cvx%#D[L5}H߃EK{ Ż#Egg?=!b?&?>;؜}J|r*]mFWj*0&$cu3J5uCg[ zAx֛g,d5sUqMpj ,T9m:U1 ˭`[s@}a"pI@olapyy".JX@R̐1'EMIegWsVc7[ Pjb{Fm&2VjT{5P̩j{+kGMТBDQ[%LtoK"kI-*%P nȾI2+.ޝ4vQ;ZUa,$-n\*ն1DR_;f)X@øS|[U;JEm&*[ߩ' 4+&1T`&nRPJˣ'NXaX0ê}q*_wG %FO~=RIqqEP qX0W ՁIAOQq1" DZKPEش[U3R#iQ>SSˉA-U+NDji$n'"+Ba]Y5:Cy ɯz"}j71ji4Ӣ| ȟ+)O:+p@T2`b"c-$: <w,5PMkr*`@g[jNT몺,9n*  k\qߚHnúBNQ*p|VLZij(/YRkF{ &x+ (z+򠀏V S)UB^ak7SMOϒEur%Kl_i1RB 7R_:+6VE(K:A!נӦ6F}FI)Ƥ,PBPu̓*2ssu@gA? y8HQTR;zaӺlŨRdOViglDS` C{:Sv"j^6UP.MpoeѮG[` iwܾ6K0v79(Htो۰Wa :īS|ȹ ѫ|HV{!ȱD,˪ x"1eLړ:8nQCn兓 H^$ >:; |۹? |>~ `5U_UߍXRsUU(ȶUMIfd D:Hto^}.2^uTgUVrrfS >RsUn֪vJa5^( gQ<@ XUl- \<(`y#.MTSn6Сl! $ESY[ Su#$흜2mQwl'CBWum۴+#xkpAWՖ( W\ȢnMg`@4=c vGa}[0݌&xuE+BRUh%tDj|cI;bJCRs0xL>|Ģ,ƪsjjr_U!WJx~_D[Jգ:4$LȟWG0b4'`pK!'ؼh>_plէ9ݙ涒#A?OõHKG([%?z hRKdf,?ca T1lw\SePXs}c̫U(_:?_}ǹcm#Oc̿. oocMwf׼?E $g+?%GUkGcI'57nHP')iNEC]T0YhY7-c,;2NSU˯:''LgpŹ~488K \Io˷oJ\_}V_~y?mi;j kQnUm ϩ8,q`]çGi2Ën$e ٍ )-?eF/\]N|96ns[oh湁y湁y湁y湁y湁yyIyyIyyIyyIyyIy5|yM5ۼm^S666666s>߿|>n;wg;ǩ c:4 o^B_?g~vwٿϙwse8' sP8\(Iإ!^n@+l hmEyGTVʳܥt"d?{>P,Si>]1 D]nS74]UīPǢYSw+$wr)NQ-=䞪\v:z e:'A;jAGs]c)T]IyQF͟dϼOH#]psֹ}8s7TJC._bW[~wk/ӕ \qēb} tI v Aճ]S,-.I8,Քq)fA/NWq;+V=q{YGE? F#ؚ@ZXM`ޢOU apeԨHn=ME"8kz)jv_ |CK=;o@۩]KIFe[iQ Q*9 QO#gn$*8b8'Whɟ8DJiUK=ESd6 (7)LqR:aO=eZE-(_-IP$^(x-K T?^n8TuZXbS]ύSa)BMHs˥O]cB~F[򌼓$tQS[zz^ЋԢ`ٹ6:=+Ņxژ8~â\JcTk5K(n<}CRA'zەyc6@Lpi.+iyNwyPAEtq#Evf\~qK5M~1N jTNj G-L1s,92C LLͽ%䝇2IO9H*@I|Պ+JAdh:}C+A!,,ux)79$-VMeh-ٟ1x78Ô]!̹"FGm!K2I-Za`Lr5%H\L"iFLt@Q 5/ A)/5tj7< 1+pP*A.56x5@vsqg,f(vT*ՎiN|r<[ 8h^~)ytĭC6I1BCUjwP*̃D_N{E,dDJ1(RNV*CW| T f|m ps)E=c'*F.D=Q?3pM讎d*? QQ!IhD24kHFG!WPP\xETL] RQk&A9HfРH@qd-DQe!BxU-WL\8ڄEvΠ8-GazSo8 Pek`钣P {ۼL_߇ 6^3^ LJ4Q{L2' H혌Ueʟ̉Eqŧ۟hʭ:JB E`wMUP( %:R2 BUfSfykh0ˤ S8Uo61)S!9Rz)CDvJ{cHQفӕKg7q 6ɋl,*5E#msVz}{[ L#`psilE;x%/[J`2 8lTI"6s 4(YNv;MZ<.![ ]1-8t]fz-AڦSc-\KoȦR(K mJb]z9,qvSyeWp8Fq #UH*y$988D9j0t:unH:f)iJ2e*rH~@;r bs z H'v0(]|K5 y )m1̧QFN0Z{CObZ2RXFMmTEܟyRr..7/E݃륀0f|g` !زePZ+(Bs4J/i3y6䰽"uyR y _|ƔzʡA)>}hxF%TJ*V&tIO}0extQ&&V*oySAn_W0kx; d'Gȧ4{s~m#3>mEM뛔ҀNxҫ%F]b+ RƯ ;џk} L!T>FNnwQ) aYCQ'=pF9v&0 2€5SW{J?p擺^.eXfLOdf*p$ݿ^1~~ٝaKc~;Aiv]y4/߻n>5w& cII)+(=i.#4dPI/ 1h(^םV @K}n)9;ߎEݯ/x{nI|v7`90bu;ʍ 6{_? 0v@8vvVXFIyO(g銃\ #{U#{UL<Wˬiȷ 0hO`^6?myEy~ly~ly~Lkb?6kb?&`57ؠ 0ؠ 0ؠ 0ؠ 0ؠwlwl;6v tvttt;| ?T6(+SY^V~N< N E>[zI?Tk%5KPy P|a,E|qe'o?Nqt~Î84z ra޼BޠD/xaQؕ//^OIw wiTXtXML:com.adobe.xmp He;sBIT|dzTXtTitlex I,V((/H-*L-.N.IzTXtSoftwarexKLNU033PPL*KW(K-*S0331QU*KU02Q0204P IDATxwx׀-Fz D * *MEXAR`DitEzBB 5l$ K&>ͳfgܙ9sܹsGu  E  $  $  $  hE(X,f8J%! ɡ }fTj5!z}dee(h&APzPnJ*GhX̤~FRSz]t:ªV𡃸h bBkCٌl& 7wwm@ZZjzqn\i`41䈢PA@`Ixzz͕s5L+[]I- ԬǓt223E.rv8R_7GJB9oޒ̌ E愷9 WvAPpZlNڭ )Tv89LII&0(j%3#]4z;U *^ףl̙ZlA(AFӲc.V CՊI> Ra_XQ7q1X%HVddfZ' UNzG*(Uu]v+} 5jcɡbmdbQf(ɘMvŚH}mѣ]nx.GH> R׎&vUl뤾Gb-\Ώr>RTeO>̹"6'V*x];Z_1<= j5s>ۇgc?J+W.ʛ+8O> 8ua|=k\*nf- CDvz[O}}{:Xn=7'YD˖-ٳ'>>>nWL&~[6l"8$ڶgbb"Y8d xqq`?TGի'~/#6.{ٳl637w.qqtx=Mn|w\x*aaԫW;*}t֕A( 1!|#Gs'Y/n:6}r6s=^QF 81DbR6طoÇK˖-=za93}4jԨP\^~>Mի햟>}oYÇZ,lMFe9|7xuȫ .&L|=w.FWSf v_~ɕ˗y+p,3gl>2bxzx%YN\\O? UTa„ ԬYD>cҥ?[sS`#oG&}_MllժWg;o΂9qӸ zJ|nEaop۶<"8x`[obLi|PYtx#ZV6azN>MFz:zWlK#׳e틂Rh=yYVZ;ly Ggĕ<֯[(<AZ5 `<_=^Gtt+c~ɓ1qѢͰt@bJʢvE|ԫWAN3wG@Ybda1|Q9V~TJ,م 9_!##qc?]儆2aك5O>?p777~t:M7!/D[Y?-t>cV=Qk8t f6w>DFDݫ"ªϳcN-J0tZ'T+, ++Q#F~_nnҸ Qm7`7o@հ{w:-+G)zUqr=Ǿe}̞=OOOvSGQV:^E_?,";;q>Iۤ) ̙3R9v˂BB0̶e`0Тe+; ):ٹk'...ۖ99hѢ'O-P=RyJEQzh4ty zmg g~LÆжCL)M77 …8x`hQf[q:1FMIM%Y3^ W> (G:+ #>>www\op``'N#b#$$sϣV徎CY~_JsV>G@Ybda/OT! O,( /i[QEgʟ&&GЪUe===㺱7vr>\t l`Kll\XX"2-WuoSZ"znOvy76l3f|AʕdK[:;ߜ׵wFuCm7ފaph0}yC KwAv\rϯ,:m/]ħNd߾}jTL:u $66>Q_Q!!w?LfSO"']8OPp3elْ;_"z6FEѥE#[Z(M,)&?*MUCnJU;t}$%%ѢysА?NVmpq:jeRhQ_QhrS'pBDZVi޼3e,FxH*Fgy5kХ5S0x-}Gb1QVV!stj[`D`|;MQ6l7m [obUp68@6B_.^hۦI&L&viWŋ834jMX`9~cNjժi[ruȲDttm1Ȗh7n}IR $&$2eT~&O0&Lqgږ%_¿kѼF[ٖefdcN;9Gm4z4^ )wQ AAA{̚=رXb%͵6Muh"ΛNj/ חF1{,q 4;zѠA.\ȨF+3z4aaat֭VթK'ŋ֕>q)[- {+NիנYӦlݶe,˝R$obUXjhذ!k.AGŅȈHtN:[ W|}ݟ`HʢUwDp$~}_^O- 9hٖӧOs:R>G#1јXn<HQiSRS|L9F8x 6*aWouڅh/_NFfCLL ˖/'44NvDG:>̙3phтK.qFZjI~ }پ};>SOu'(8C~z^W7+ oL}|Xj f~&ϩS'0qm#ҦMe=lmIח_dzU`cI]WfuU>>t'N@R֛o;7|_f4jTIɓ'FrT7mxx8?}իMcAo9#Ѯ][-[Ɗ+~zF-X0Zj`ăwDp$~}&&$j.B}ìZտ~z#밎nQs8#J}$SSXpmM6GQ~k''SLal߾x{{ӥk{9\4oUͪU{n}h֬)/ܙ3g':z III[oHG:G̙3x"5kbҤɄUО /cԨiӦM29k&+Φn|>iիW/JZ7SB0WA׮]YpGfT;OR͚x癿`>+WK'T:=W̝;ʕЭ[7Tj5ӦN2s,-\ĦMȠut؉SR鱘@믿;7z7zn|%V0`^駟# =Sct: d#+̖]xe }!ӧ ,Niha[ ~׷_}˖/-[ڴ LpH0晧zc>1ȶo&^^^l۶?*у:uЯ_?=4c>Q_QNN:ƍ{A'ӴYStzfxyy1zZp; Ggy .Sn=*WM40:5Q?Ht4&?* ޙ)f3gbhٲ'Ot )w>/"l3ZM͚ٱcU>~crrrMPk4xyzIdggb 7o&6.BpHFн{w`wZ^ Y<*P=FQGocfQQDI8;٣={p1CS-rCh:窺&1/#%9dJ*Hs$9tA~/Sޔ 3>֣#(NbsnF!)8Z׎'NNwثżV綫XF|֣$HޅI1CSpNZ-& $}B5`4搝јjjʠ,D1 bsnOu)ZmO+7#))?<<=EBžRmWqgE!ZJ= '%䤳{ٮbB5IOK%\hNkC >@$PpssF=r777۫(,=HO#55U&Tx$qL?'AGjj 0x<=r; xxx!AAधCZZ[rVǘ-  w &c6FCAAAPAAPAA(VTPZXVf3RjRRG TlW`, (o%?jԬEzQPL,ed2d^x"""hݺ5=z`ܹdfewNxx {ys+ʞ5{M;VA!m,Bbg뎴w7BET=T&7w^裶wlTTÇ/r+"fHjtW zªٳ1tGrr2C_{G#R IDATKq8p_~%kVf̙KE]fΘCm';2˗/Xy&m#Pv]T*HOOh4bXZX,h5Ԫ]ʈ#t+V`;n,[믿ιx l?䓝ͤIDقp%%QGV+iT^HNv(l6Sz JrڽM1 WIg'q16n("wȧGDEEm6Q ܁)7Gd'm/]ľc̝5'N$%%5khGy'?+ªV9-#G2o\=JZZժU=裨T*\݉*iшF'==:,QkFzAZ^~,[?;ŋ2e G`0pMy7TRr֭[Lj#xGof͚^JgW_g sμKh;YX²e-?q$fd}X,"""puu-Pfz.sN-+n(| DTT>O~ٹHsqq̘9N:u:54hP}GL4 ̴;n,111|MƙjժŘ1cHIMe̙=v *7ߖ(wV'N$=- @{aaT\f=ݻIOO-/Y܌(ELp`vĉm imr $$$Z0nXה{͙ӧ2d]QIHh}ݻf͚ } ?s"g[DLJ@de 4~={0i$/EDDºuÓ'NpI}8:*iqqqFÀ Fjܵs| V_ՕaÆҥ?vZ;sT SFu8q"/" x/CI8qqqaذaz.jr _ϟYK/EY7̣={tL2z'Q#F0`:C^}5k~Ǝ1ԩS7os̡QF֛T\'N0}t^: \pW%>>>`6پ}-pGE*y{{s{ϧ`Xj4sۭ5kҥK, WfKg XFjJ_US믿0899+* 1݊EomKҊ`0)H~c;rJyDZZ]{(JÇ1 4oNn7\?wٙf͚ٖt:oY|Q׎/zY>p|0ZMjUߠ!!9s\-FÈH&L̬,vMT6ڵ+T>>x؜AjjmիOL*X9ƻ2U*D16'jپ};[~bZ!>>VSR2Ǐ#!1shciP<,X+W.vzBBBiҸIuT!!aZ:{,ǎE!̴의do>>\|sЊ|q>LdD$...vzݳU*K(7X;t?=zzbv|x"Np%;v,7cƎCz>81/ٲbw*eJ*qO{Xjڕ/T[)))v뒯wWӮʥ$ɛdϏ7n]S3ϠRvNJ;׮cx{yb?o={^Wl-]H̬,"",sܹ3͛7mV{s#wFO̟Ϙ1c U^R͵ W\ؑvr< 999l-?k߾=0{C:k׭W~z\B?B{ 41L֬YceL&6l`[ iÌ vpCw:7C~n݊b!,,ի{urǽؾ'<ba2 ڵjw?8p(7j5.^F~z@$G{5hpuu%ϝ#0(shAd{IǹsqdffPCʧcǎ,Z~ZJhtݸfϚEݺuE.-UTQF,YIIItz30`ь9>>KHh(co1xBhߡwŸqcIY7<<.h͛3f N˛իWvݔ"=z`,^t۔?.J*#4(׫G=XxyfƍGLL ~~X .]l~hѢQQQ7Z1[4$9,mF2es{ ۷+G[׮,]iSq9’غvjiREaԩ9Pܮ]`ddd0xquuaoپm|G[}CW|ٷw/MU`(J[Z''ٿ?!!!(m _ggAg8q$~ @7Mbb"/GBP`.؇3}Kޒsڶ}~~~thAZ A;R wIrJ2/]!55L,V gg<<< Ǎp66ĄDF}}zK Aʉ9_'999dgئL0z 2 0U|g:x^{I An2VprPt57XEAV=_L.(AP= AJB-*AA$9AA$9AA$9AA$9AA$9AAʄLe# w `X0M `uBєi2'ggid? oToo;۵NMZ:it[~ٌd" OOɄV{8;ǤA ElF oj^i{x, ԭWՊd  J9z0nnnLϿid֡}8 AB8jS)W=x)))/EOzzA!X,VTP(VhDRb<^779L=zfOw'~=ªSԄ P!P\:[]̵=x1LrqqqbFMFEQ3>>>aZ;\H{mwG[VÝ 8&MDUMFAJ=xVNF} ZEQTw) ʊb -2JsZxZ1zdch$bDz)o%Q $ Pּ"/Y0Zx2''':2r!Ƚ=m&dd5cE-u¡TS W,([N5vyIr( w{(ZqKrǠ7itjJKUS7999\|L w''N:-j ΈIsRl,9IAOUF5zZ^GwM W3NZ-jTXMeKp),Z3*=*b9aH5 ;Ǔp`%TNԫՀ5kYjeŊ,?NZj*^FMXXUǙK!'ɡ  E&9*#i  #d8NKZM*j2UF…{(I8vǘn$b $'0ѻЩ8YuMΥ{\M6?`s111|׶mg|YYY+Z4o@-䓜RIr( BIyU'' ZK W?Ie-~┨"Jpx˶;%QQr.iE[ jE&K%w4ӀΠI p/Vȑ#HNNf{cDo `p}ٖ999ѪUKQ;UPAn09T^VAEӢ;fZXԸdɱ8QS ʄVqCC>W7W}8q iScbDQPe .<ϟ?ϰasNj55jԠQFٶMMMPٕW9M$ pɡJ%jjh4T*vVcV^']J&i!=_PTy M8ʢhU8lNiy7?AW beΝ|2S:u^`ZPrELf;ƞpX v $V6vSFtT*L&)W0ARIC9ՂbT !230śy@b̽~Eo~xS't:'PϭFz=m#۲lڸyt6olG+IA_*999$1==ӧOW9(~sZ`Awb-~I5t:j'Znu9bmhMrr K)uNcࠁlظw{Oۇ+~%5-զOa;#7PA_ l뉋\\m{mW's!W>IAފbXƎQ6~zjT΋ѨaCx KăTT%?Wsz*i׮ݞ|c먜$  ءѨ9CP`5kּt:ΜF6 wvϡ=$ɾEqQ1r$#ZC%I5O?m_G$9*AAT*..9|ooo:=&l9Jʡq@jmg+uû (srh6D{ BdOQQW.ʴS'OrcF+[J5&ZEI}7"Qճ-K9+A*NǹGirO23j/[}H?sɖDW eN{cF&a}V:A;ՊdܡXNf)V@MVv5gWWWzC 1RqBt:s6\La`:tK>c,A*M<j(1Y3 eRng׭K*aRaBN<ɱeP1uj)}Aᮧ4 ލbw;^P.ɡ  -TlJ3\ACAA)BŷfKr( wa E          7-9 ̙3zQ /) PûPZf  aE_%44!Ӧc1[Di  HrXQ"##C! $!<<( Bvh߮=Cٳ6̌/fЩS'ZjE^ٴis]?oԩv k߾=[浡C9wζjxbyZjœݺ?`8޻7|p.\CxDDDбcG{}1[,zꩧ:uX  wwr0/߿?k֬a?~w}϶~YlGeplT*:'XAA*trXjU޶t Է-h4ׯLJNN&y5jdQFDEEqE۷o:?wwwѣ8q"mZ&"2HAA$9, ޳|T*UE%X,EM&iiMy?Q,G<<< U|_uΝ;cưC{F0ZGA M}Z8`(Ջ_( l{r.9v>>>vp!m70uB?'̔ScvɰbKABpSʩT*^|E>)Cߏ~[E||<}|{e(ZaժU$&%k4>ߗ >!ǘMP` k׮gǮ6?>f:u=|9k6{A.].'3z4<iӦ6___{~)4h % $ѳgOf͚IRRf挙ԨQ;o{GxuƏoջ?,"!!y7Ox5j.\Hll, 'qvvΰa=oHr( ȝ?̙ZlKZV  BEF͎Z5 V+oHAAIE  $  $  $  $  $  $  Q7\rG"OQooo.7+KISRR8x*Ur*=AA('9p MOEb`6DyBOF]|ܴLL UT!""R. ̖-ќ=+g61L:H w))$%%C-ݍRIU*|}}E p%-5XBff&ujb2EqB\]]Q6G FssCgg Ѹ   \\\IOO#0(Ղb bXѠ% 0x<=ZO+co GUpX PXbAQȧȏbLJ4,VMg#LZټy3?|-k,'MY{k j%;ۈdG>}LfFR$5Ԝ{Eq%M'"@BGi#xWzmW,X+N@īRlHP-e?5Hɞ=3{.y83svW|%\.SNa/||-""rEζm6se <Ѿ}{ȹK쬜V5<0ƎЇr]woLOKa+^-^={rb֯_M7HbBu1x 8y>:*-[O訊ŝ OʆZn)x֫WIЮ];ڴmK&M8e;wҶm3RJ>cu’oG:uزe ]\KPP/IhP>cO³XJعc˖""riDVs䬌fڵkb|*?Gߡiӆ>D^~yQc{ӷtԉ?Zk{ԨQ爈Udy[n dIAF&'=eY2)sqۋvv۝DbbsΡYFW 33Çӹ5ԭ[ͮᇇQl\AJro6l@5k[iҤ1M6eȐ{ٳgHOEI4l؀oUW{Xغuzn:<Ҵ|.a'+WnӾC٭{wfL)@VvM&(ps$ɞ'.'\nfkj`*.7Ruҽ% SZly|8y-~GO߽2z4yyynfͮ=x7x7 m۶̚5|m#3g+FQ*$<,,\.׹dffz5ݻii\ޭl8 8qS6q {\g լf"|Z0ۭ|-YLǂX)ڮm[zV0 N:xuyoؠqp`6Ν;=ekVf)3LtsS=e}oajՊ;w_ygb~̞5uzEEEןӿѣ+>|~4h/dYCDD.px7"*أ-~W$J$UDyOwGQ>ur-a0fyqwzOM/`,MZ79%B^{UvErJJګrW?:㺗]vF.V~m{~_ -FS%x9<(M7Ă ?~<4i҄[2aHNN>~=c jA1|۷o'2"ӧ7'7kjiب'O!66ƍ{=_@\PDDDvx&6NfV+ƍ>`7KX`aaa 0A{N閴#%ډ*U0e^&M ?ӏ?܅|>)7Smá)m6]DNveVHHOYufIHH(y-9r$"'fXtq^3xX,Ue=u:9\]n_~oH(""RN>>>4nؔ.K7ӆb&==*|}mm߆Rr 瑶c 6jռ"""t9ٞ/Jvb5L~zBCCl84H#%ח֭@lžmÕA8)/q1g  Yxuj&&6N(lݲ6IPP$:EX, q{spg' ̯]DDD.DE-R~DGGc2ٴVM(MTdi80 b;,rظy]^ՠ)7ᣉ5˻ȅ0Jױl&88͗ʡC)n' ^S+vX,bӤa3&3kX&;~׭QVlw= YYg1L~lg"l9L&SC'Fn73SQf=Z4Mחswz)> r~4\<2rxYn@Dx$m[ud3Kn1ů oC7dڕlKJrٖԯf{=PJ fMnA4!E84^s7cW;'Gӻ{_B7# ?ϿiԪQ &^-$kӇIDD.(¡k vl/r:>☳?SGV#y[65Vv=NEO9,?'vlnNzw9|K:%'""RiP.p6ҌCށٱ+5؞b_ d(Eǭ;b!_V= cn7l[6cgȌr^3 ˅ST&%<\w##ǟo ĵuf̙7 .pX]%'""Rѕutp8&8$D(>tL|||Z5F'A:|i3pA"-uֲy&zvK 99:;nH=g[o :""Re#rG:uq8ԁRL@@ 5ٰ~O+wQǿX~`j$vUc:Cg7-]Ba~Yc6lZ/""^YF%JUngb) V'J>ng^8cOWْ[?,?,9z"""]iVvRn(E"}urV2[6o"0(|¡¢BH9|m8EX}|J" p8p(gp:(((:s7jk jEDDrr6jZώW^oͶǾSǎl۶`߾}_2}Rdw5_p8t!HдQS\Ӄ۶%3ͮr^CqRհZ-o&.ׯW8<Bk{ڞTgFΆl6L&fG{ly/ِ>ٳ)((R9a+ie l6c6ٷov1 T ёꫯͥO>[PDDDr8ڵϏLql6n7R@g~-~'vEpP۴~*UxmڴW^y_Eǎ G̶IIIvZ1|E2Wfff#hvuSbcEf<v]ݻe-7#"<듌 N_bZ^m+,**͆."l6ܹsݻwc~UVLe}\}_`m\}_֮~1cƐɓҟoTr\AU>/ 1r#=]M:ٴi~_Ly$&&i͘1cӖUP毞9̙=Zjѽ{w֩{UDDr8`#& 0س'ÇbZ_bnSRg?O^ 77wǾGDDqq9V-[2ed2||{}5k@IIIa{0VǧVZs1)Gͨѣ;[蓒~ 'i_|13M4?O? j[ED䬧 sGJ~~lvj֬#Gزu+5 ܄FBK~~>Er۫V0 Z*uցal2iSOвe 6G</pnݱ{U6mЭ[7vMann.ՊdB, ٌ3k|\tЁ뮻γt֍Wao_׷%S=HKyG; )O=$=OQ^}fϚEҩc}/Z,֎iĚ5yw{l۞ƼdK.ײo^a)1l |%Νw-J3g6Lr^y,_#*[>S toݻwg)<̟ʃ>Pֿ |-111,[>R􍈈(prZfl6ql4b˅bd2:>ͩ]0 ƌU>o<RSS1 vSXXE=urssYͷ cبeQQQ pVO+?hּ9)}0z(>Gxeh-[ ={bڴi:t^~ҽ{ϐŋI7sfoomiĈ>| '@y뭷W}C vMXFcN瞣skUKŋ3~g^|%nVVʄhvuS)aKnU/'}Gz@W`َWoDDBTgA~`2!((;wMAApd2Kjϛn0~xrssiҤ [ne„ Ǒa t}O<͛T99gs8' UVa ZlAJJ ]ד:?W߈9OŹ0""n؀Q]ggsgsHp!!!OʸqX,X@XX `bL:{y9BINIg`5{Ò%K0LtA,ND99X,g7oALL 3gLgXݻw{PlR*TnzfկOoȽ;!!!K%3:YP>Vϻv~ĩߓ3鄑/W^sywTVUW]uV(oDDDN.;2dC 9m(|by޼y^ծU?:^g5gl6s}~yuˌ3Y:d3J\Mv^3!!+WzibCGaĉ^{aNvr, IDAT>>)ɞ`c#'N> 9-__i۷;k{&< 4i҄?ݻwӯؿ?seȽyWW>ULf1&sz}@f͜Çi٢%6m#!!o ֮BK,+>}2Cl߾ɓ'r0m۶k.F2C4x0wq;w~?1ǰm6^~y$fx@\)Ʉf+=Rp/pÀ3hEsPv0rK 1j\ӹ3 6Gx 0 \.NC!Rv8l̙;&ϒ{$O?GN C5}maVZEƍYy{]ΨѯвEsfL X9NQQCÇ/VkY9kxa; d߾g|H-Cǎ}S]7lb[ne=pEzT M4aQ8fjѝ3njӉciӚ>)^e_m۶!\ө#~mFԭW}?4.6ճ'+W,<4ڷ'6rÆСCa)s\.yyy$$? GQ-ŖkrQ\.Wcgez3iڵkGmiܤ g|Dp8pYФm`XxǨ]~-G"'g/4ҫڵ'% 0nl6]v#003f⩻~:6_Ͽ}k7p =8j潱c?|FqO;wm6gJ*|tڅ%:uz yscӬysmK/H>sv,DD;r$*Uq]e/ˍ+QUړAHHf3ڵbx~>s˗/vӢe˳oyChusZ%aXX|9EEEIII^zL8 ={bڴi:tC_|t5yQϷlْMګ0nR; Ç{?s=z?3DIHO+.]wv$.z9;$k???Ϥ?> v3ctzꅿWݮݺz~k:3g2;##0w"hwޝgi{ŧ~B˖-HIIzҾCbc!""gvSPP0qqt0*AAA $؋-c_=mVKuwW\5tfԨټys͛ &&3brv̀mJ˼WTGvAddDDDۏaddfiG2* ;t؁fW7-vbYAx8<_K+|ydQ.V9ﯯ|Kypǎl޼T7@X,%t޽q\\ٸn[2s <)?a"FLJ׵fc߾̘>x5k^m^lLժUK=;wiӦ0]OIhJe_̀7/ؼy |U6th\-w0?Iޣ\k?6h)R7,&&63֍۷o/W׺M YpW믿ƿ242UVeĈ'ׯ?.T-nysze˖G򟧟஻Cǎ1kLOYAAfͤU2oի'a@=x!$$%3kL }1c(q^{#F Y[nylټGyӼy gu,DD j)(pO s|060&mNl|M'$a?i^o&MӴiS ={x#=['ѰanFV^y~{cILL`֭^:tu {2331|8;_Cݺuhj~xڇ?9bWz .[n4n|oovA_shJ۾̀cӢEsrrr]eVHHq|vMWλr3[l&==x~WlIQQ99LVf vĄ+ߗCݚ_?َ#F%; i>㶯ܙ۷S~=ЇMaa6/C=BZ5ו<أkמ?x;{nyljbҤ,^sPfMK֭ SNO2/55kkNzM\\,<<5k ##g}ٳf)iͬO=SLreG{3c jժuNO& Ʋˈ+R aCYGO>x"ի:CDD.r)4ȇ6g.*i1(r8F<+4rZBfhF=W5nL:233y?й5őLLL ?gWF&//#_w^hќ1cPZ5x <^%۶mvb/3d}z a88 ͫy`惀&CounNdRiؠh԰>%&$sNOٚkl$%%y&DTOY߾}oX|9ZbWyOUVaIZؾu֝QrW_)3cŊ|(?Ư QDDφo"7.a vtbD?Fl?9?~8ϡpx^ǒA9328,III8/],X0^nrJ ګ޽;\a3ƫ|޼yyr#غm,'g֮Kp? ~uon:PDDDf8伍 dz nwGK%믿|̚EhQ^JLc`ҤS|'O'9UFrrJ[Vƍ|o`0`:W)))ݻ_}kFjtMf{9z'~xʦN:|ǧ=mOCs(""r(nbc./SEDD*BPPAA,^:k@u{[qF"#" RPDD"blfӦ?X7u@TT4Q~eZWPDD1cV9ugf/imC d2aa\R#QPDD "lDDDDDPDDDDEDDDDPDDDDEDDDLtHd. ӡΐb) """pMpH:D9|YYb-)T ./rrmey3f L<ɫKNtVX|,+;UWӹsg~_ѯL{ 6졿qdEDD4rXl2ݙ|<ڬ`]ѩa?US~}L3t| qqq$O?Yѣcȗݻ-Z4g̘1TV7x0m۶̚5YwY\yԨQ0xݱQ^]|||eȑdee1eS[oI~~>*]דmƛoXWMnF@@?0p,[Fqrrr0 ŋcXh߾W?>tڕn&ڶm?C9m:,2#|9Յ46-{BMn>Zc<3l xʂh԰WĄD<׬^f#))Sf6tM'6[)۷/YYYX ;YSgժUARVԪYӳju֝r-[?W7m)e^]|}hۮ-˖. =- >~Z#}MӦM =e?bT*ǻ|o-ݐ"""R!aF(bb@>+̌{:r <Qum6۟m:~?nj5Y{*ʞ,OY֭\23f̤e˖̞5FLddDv\[vؑa,]*UвeKbbbY|9Zbŏ<ȣUf{R1/*\Bpp`B~;֪ `9vbhaԏSxdPrKyPt:X,jY{ ԳZ$Nf >̙ڥ :qqw:t@@@g[.~իط/Ág<ڱ3\MJjbaXG/['⇥Kqѱc]V;M:,""rò_c74:c-ށl7?Գѷ׵TRa4oIII8/)+((`\juSR(,,^e]$x5Z `̘1^; 55Ю]{ Yh,77%|[ruf|/h0hԊ;v0i$JNߏ'>_jPDDBϽg1} +joUȷZdd2i01,iT#x4E_͈#ؾ};L>99 ^WOFͮna\jV+?3 }T}fsP7\Jᐿw ϖ+,lEx?km{'3utJ*L::0id^z%l6;~.䓗>F Smj2n8 yXp! `)S%-L:$5uc}:ڵ'??5kRre ߟ ܏ȡ)m6]ęNveVHHOYufIHH(y-9r$et|>ƭu0 nnq0l2㼮ԱX?z贲%j1qKFal:DtZYDD"X̤{ֶkՃ/&6Ҷob)[ȡHXfIDATa2cbpc__ X~1c2>+T Yxuj&&6N#lݲ6IPPל """ݏhLf36ʕSn+Ӻ """l&88͗ʡS?l6{N)+T@& ^5*\@T4(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(¡(\N9r9#e-K0پm+fEDDM^^>aa 8nđ#GZ=tfSgH v ޸""""%CQ8CQ8CQ8I3Y_8?6rZX, d2O?ԟrpLfԮMJp!֯_Ou*SDDbpA֮]ǕW'8$t/Y}X,LP)tտի9X,lOOWjӉ **Ld";+2qayw*c6!((H!""rî;JUrG:uq\X0 g!;(X!׽󼿿? 5ٰ~X,sOnQѣGJn+uCCzzzr???VJ>}۷?2 λG/NVv6*W&''gy?tz't EDDɀ\wG]*.Hrbfܻ¬?ߟÅ?R KIjMa0B֞ BBJiYV>r$*8p90FGGQQU8r$T7x`r=С}{ȑ#7oFxYhAAAۇĒPjO<έyܢy3"*|vyS N_bZV\:\n7T r4 ع窉e"9Ǫ-y|s5ȴk~{s\ULnn..ur4(FwtV2[6o"0(*VsNnfLu]wA۷0j(x.v.^{ h>Xv?WO$/ 3gljժEݩ[%"ޙEY=3 ۰+hP]-,HuӋfu{\*wek2r-e."Xf9:93v}s~j@ DjJsQy2*teTPZGnZ $e(%kvwl_9sHOOIqy/*RP՜h4w d2cNض teeT*:?3fL'yzN~HTT...ɓYw֭҅۰efVXANNίC[ 88$}w>Znm%`=ٳ: |wMJ&hOhh(K,Сo,̚OJKKٸiKe˖Xaٰ~SN>[oSRRB޵czD&qacфqfT*PaO())5A?S\]]2Q2OAqtޝ.Yl)|vym۶e}ݻסz˒ŋ`-DFF#?L߾}8wC|:tR]Gr<@ Ьt#Ȍ\)usm< Z 9_ÐITU9_Gwsag}lX̙;777?Nbb" ڱ_Fi/ҢE 555h4M|}(,,W^o!J iAXx85kFvv%ii)>>>Rl޼or#jSwzDFZL] me%O8J T!CHNJ[HҥUmےsǎl6!}:7ntBӧO3Ջh4r BBj9sc̞3~}Z-j'HR^^Qc4tӂyyyɍ`M"Fx]#I~_ϯpzitү^9uőLfUݝ 4hi衻vzѬLmZdcǎ /^ĐGu֖c]v#00$F#opD@}rήvwzb]E۹) P):N_e3&2 t)&=RcX͛R)* )#JKҲeKrrrTTTЯ_bbb &pVxzdee~zc}l6X]w3ax%P}€-°Ç[^?&sFrEuĂV˕+W~e<=<^CRZZʠAy':z8~~:D` 0Y4433doLp&/Y\._T*ɘ8ի$'%܂Z϶i7{nO=&dg_p;]@ 8,|(#l>׾?HP'p6)C>o'{梠*=[d4"%KjF5oƤO̍dLX|}}Ynss-鱱efϙöϷ֛o1o\:l/ќ3w\v-[5j5^ ..VٳYj &LLMn[1b$SLq}dӇ*nMznMG&a0̟UzRRã'%9\cnIzOZw%^a{n7\ 'ZmRh֬f̷~Dsbbb1l߾={⩧jP}m>t¦hSO{}8`@z=;w찤{nڹ C2dh!Sp Et 󣹷!^:˃ YlӳoyFcm7wVH||<CM qVkֲk.t:={bذ&l|qߎ{ЧwFK=eT/"iF 7?ư5%UOii)ݻu租~bժ eO]a=ƁxxٿR^QGނ'EE71#;v0~\<'LEs޲zG'|kcP"""Xz56h[b*P)Ulذ^H=mᔩSپ &N|sGġvEPP$*1#5}0ͤҧ g%two/ >^x{{ѸdyG&5P&M7f2LFJ 3ѕ릲(w"BVeu}X;( ㉏31#ޱemݴbCvJUUwmMW{kf*+*x? kCPrv֔|||[\SN/Pp>yҪUkƌT*eM3Tٟ7^gkJ yyy ᭷޶$elXMzŤ^"9e/!&6ӦyE_̄dggөS']ڵkv#Շ~~~|g/˗-#)SJKK#7Vjȼ^]-(J˻d_2CLuʵkwFW ͧGdJ%5vBv˩2Tq6ۧn+Aӑ#QQrጻH~~>twW'cCn;,\ 1Q(8;mC^RqR>W9R '-qrro̡L&CѠѸw.dfDb'3=|FFQw҈γw61 @ ÷q.gg5gNAoУP(H$H$j>>Zݐ[} %g쬶kH*vy Οw| ~~ڼM>cEDu7CT/=KJO@W~xm:Z2J% Zå[il?sl˔ fh "7'B nݤy:rɜf3}gKd@爼T n3K n w[bHS"# qp$p4*ڕwQVTޑ䨼Smq] j#4+^ûu\PAqi `%RWQyGdEJ؇;-Xd.zYp< G#G%۸(o6st.OPdfe Z-}&Ṵ̆jrrrˣQ@`x{{w@rW3>-9{cWBSYp8;h1gq[WdYdm,t=1TT䐓ORx{{V),,$00@VCT)T*; ("wNpko<||}umRQPXH$noooPdff֍ y$rs .%Ш?A IIIjj-[b{FF7n ,, BDu$}9,T8ȸɠƓR`㈬AA2}TL2ftZ4)睽v(NNIjժ4WivPUn;.P ܾ~(>Zkժ)(ȧ),, FMtt4$N9gs-NSt󱐗~I*UG0%vБ8/s~"hӺ,oi#} HuV LޑsئC^R?E׊6}̙=Ν/Νce#qՈ[ʸ*[(wZ]NmIܵj&>!& ؜JHՒj ر#@zz ~>ѳwظBxm.4J!hlLPヿ?iii'{#_تK:"\ԑ#.Zw,Rm) i 20ȗ*WsK"o0DءȎ[Y1@-4-*T`G3y9cL]GGƙgtc_@@ؗttL}ψ# ci܁K;5J.m;'7K" x` 睘w rK,ԩS̟5>>>HVjBBIՓ 0nݺQtiJ%^^^TPaаmn{)bk^ѐAxHT*\"""HOOGr1GY]g:Ug;b"W6;>WV2n R U##Iʕ ۪VjDTdZƪO˖-c 8Çgh˗/S)"JFCzz wr-M҂o.Wmq۷ӲcYa[(;,x1l޼3fRXp!?#?ބ;7ĚhIfgܹ @Vq ZDR3DM@]XO)Z-y।0rOFFb"@rsj5x)P$@;:ck]ϬLGD¦~Zci˶)}{ +K7drD+-Oj-^6̤,=#_WDV3gܢ]/qٳg8{ ~~ 6̬Xx1'OOXj_IHNN~Сع +;wp]ɡK]7Ȝ9s3gNuV6oٌ][n0axVXnq#/kׯ1wWا BBB}6ʗ'((={Jn/w]퇡C~i_KtRGŦ}{EVjyrKd%n*%Aľ4-Zj3W̝Cfz_|%JB0yd >}$n[l믿2S>t 3fLGгgOSss.I8qaFzʼnǹ6R"Yܼ\un%)gy2O7޸ɺ9s}Tv}+࿍IMÜ۽BxjmB&?\ѢRQ5Vy0 IǮ:I,##EY[~XؖF"(b ,E˖=z+W1dP6nhйt2/\@T~9J.OmX^`3eT^u]pe
oz<ӫΟpFK/6cbg^>t O\uʗʕr>t r[s/Z >}l‹ZxUʉ'L1׏s!7oÉ-18}M['l]t~ذaeIcQG\QXhM^%+Q*sA^|o ,1דjǚ=FJ Y[:=$C  UϚ-ZZ1)d߽{Ƒ}?ׯ nS;O&h^|%~'f̸͚UEZkܖ@zZ:~~՛NҩӔ/WTSBjnlLK>jո[F(^rmڔhJkG\Ŋܭ]U&dD'lYxK.YvE_=/2?FmE5n!X!8#Yl gesMwQ֦ /EW^a„ cvtQkE Vˌٳw/cbrt&|_|2}īZ3ӍAPB ҭڶmѴkA?xwycGB*V7Nر}GLL Z+Z؊y|9}:w'|Jj|:jբ]vT*6FKACA5y'[l3fw>`Șc?EtD%ɼXL zy~8=Gƾ:=s/YV>kIdV2x@nınz L)ɚ n;!>%Kyf\rZkO?q;%o'UBfϚEljb[Þ=0y$6 mm.[(P Ԉ lndʗ+G@@yyyx{{ Z%j_P@{Λ*!--wXˋ4ݳnJ.A"61 $/ 37I稞Q}爼1`Vw yYs~2t(>}H'"<˾}طo>>>ѓ>}ZhoԭhZUeAf͚&SMz/_l:&M;'56iʟ;wr̳?ժU7t|G!hǎ+Ww˚ݞǏa{e޽г3ϱ"O:8kѠq-AnRWVu|caBl\DVok0??dggrb+J1ѣjܸ@B|<ѵxox]b:f{Owx)Io߰ 7ʺuKy˯K[?LKʕLr;.EXX6nLժUX"!Y]/hZ7kՋ1J8v(~ M>e>>:t J. þ\o0;fNBMmFFzinc쫗/s_o] cnRIP=r]r6n??\M~'fdqqGPM`ioW{/6t^Zv^[ChԠ飑zf///*VHDDW]%""9; t` ]LdQ@e "n>q%㬞Y";"Os$;&ysL S<ooo6nȼT!--իW3-:΅ %=-ݻw3vvirҢEK= @ ֥Z;{CҤICasgi)fKh֬˖-7ܽ{ҥKÝL1G)EO~̍-T7-APlܰya}?Xip&⪮2:6<-oG;ns![c Wקo?]jmu3UdָZοMmqmcD^{G|B<ӴbH &9):Y=J%͠>99ǒuq9ΡwYo:v!''K~!mCjt^NjjW^#(8|[tP0]BFf&a[r]IdqMYI+WVtڳ!orVUW8qǎj*fϚeخ*,ARJ\pvf\z,ݪUZUT̘1???n޼Mk6mǎf55,u7<.[4wbcc9}M޽{0`SEm @碅7ofʝ2V |ʕ:I!t xpcJBNJJ͛9sMRD+ẖiа!U##,g^ 1_મ]=g앰իWyݰ矱o5r >r ( n)'M`մnFΕ+WxHkfm:<9JEn]`t-Z$67J\B"k|}Q( b6mڰjꢩ{|f>XO?ڶm˪U-u ^a"[ 0`@^xA( 8qE>бlY]g25jy&OY&&c_rr2GQFDVJ%O,1NJJƍ9sfVՆ U-%0svvY3K#hа!V87`:;..u6pyrsQ*ѢE ٓ0˅|VHu_E"%%,ߟʕ*Lhh(2Jw&XqEe.c}VYv 9994jԘoq㈏gtL ;w9c&;vl'55 }xjdegi&:ïDJNEF>>> < C.]É%@d嚗|36oLZZ׏e U[>RɢE߲n:.]01󹰰d>TPJEffyi:,KZۦ ]h\u%w"RdffLVv6 Gʕ  "4,2Ecq59%,Ϗʕ+LXѸW:fK lq'&&k1n[{;6ZMZZiii2e\mT-3Fˋ|VCK݂O9 x-pHO¾Jҕl{m2V0 j{L|||]Uiuu)\T*TW)RxyyP(jExPmWl-aӧqzUC'VGՠRM:EQn&oooEަl,ѭdJ--jʂ RyO2џ> 2 py[)lWZ-{j$=mlvDCf7npƞ㺖E$bh}=;P8죎?n:aIqK@wKw :RݷB7¹Gh)LJ\PTb7Fr%+f0k҅)INJhy!Rn=I"'=Ί&,W/~S@aaZQ /eN ZwHhP2/4nS(BL Lm086*5`y|21[DyDȖ6cEzt%uEc'Ŝ>lqdŝst5Ruya|VNCm.6\\Q XvVDp="TK1)ăɺvDjmŦ^aCض́J[Ct7?3ŔxߕtvYŽ]Q}zl5sm 6\{[OH"[uS!=̖)^O1鄞>cWDtt%K8~mw{O_iled0}ΗغNtNwǮ q#}k8LtɞC?sw0B];>a5>@V'sTP,EyU}AwQ}k'}['I=9 y'Qܩ֮ՕE^W͒G{:ܸ82Z m꾬mw( ܛlHMS hSd|݌}}he;}E96[1;XJP~~zS baʾx2SATܸx$쏋bYJ;H-̍5},a'cw&sL7␝.w#ǃXCAμ>(]ph89tRݡ쌤i(kEbcXv2csvC7tĒU;`}>X% %1"n:EA_a4X;R'69DKp\1.;|y-Ǧi$>9 IvD.Z⁌8oA]e&]W*)ݜ ׽= E#{hp'O);6/`G\O$w"mj[Ztb=PsNߔ hCVwk;wEy-Y]`_r%vB0rN 5唢CTE":nt%qBb&m'y= O(?rԏPn;l )/5;Xm!|RXײiW gORw&me\H+ ٴ8+C8*;б)<p B^0 ^[~0wȆ`)A`ɷ\{ Xx-lرnCINT'nvRy; րAOИ nQ w,yƞtm8dG$ؑa[<`3;c+_ r w3% `O+=|Yg`΃x7zW֥pɎe)SY0VTJ(;Hf+{{7>逋c*J-w߮^SS\:+` Opc5ܟuqGRv̳;E\ x@. >pcvƑ)* 6A*ŽӃlzGC߁iؠe˖w؃"##Cq #3ǏBPPʈXQ(kl7^V%bw}}+x`:N^wa{Ar4yQʸk+UUFʕ!C 2do#<<^FGuK3 +J#C 2dGŊP*\M\nw2dȐ!C6 pH 2dȐ!>7keȐ!C 2^LR\!C 2dn]]yZ3wb>D̘9ZCZZ*11OǗw2a̙|\n܌5gPm/_oDբVIKOcK{=m<ۧoUa!)o~ϿB]\+̡yE Ghh(gΜfE[,oLQ7NVV!!! Z *V aԨ&e}EٲeyM^m\wsԫ_jA۷;ӥ%}^z1cҹ+/K^^q?( ʗ/o2)裏-[Zr%jբO?0ug-[D&<<>ؤl޼XE1An3iٲeʔ*O?Ȯ]IJJ$77rѣ{AV?ULY4lg Y‹|w8pAh׶-cƎ%((޹nR.?Ovv6QQQ 4ݻK2׏89LX+W&=#ípyN8Afͨ]vږa7o&++!C+䶳???f̜E֭Xf|)BBB8}\[nȑ#t4VZss!n߾MHHa[BBw歷ӣG.Yo<;$==_͵*/ŋᅨdgghs+~Xedfw^223HLL`Mߟ[NFFo7|ce^y%vMrJ yy=wɓ&Y'Z-i[]v^WZEg{Sv-BUpU+WoаA}*W͙9cjZS'yg֭]Cjscnjs߼y3?ޞZ5ٳO>tDكׯqqGZԩ]_~$֮]CH [ւӯ4vRP._=1b>öya<ڸ5ӻW/;fKAA'MɎYM0v233 2S|ʨG;w%f W7$#]z0|ICQԫ#EZjz$&&2wiӺ+EP#1umw5}5kp!|unz<7aNPV-կv;a *Uejp]C/Og& _EӇ=Fdd$+~XaETcǎlڸCW\ *5j>fڴiԨQ5k,Oj= x' e={`ӦM }n({1ld挙5ѣ 52~Ow_E;:6g<̙3hϜ9M}iܸ1?Ncx8IIhK?)Sf:nl޼l?7mb̻Э[wJ.ͺƹg9m\KmG)ڳwUu11pM:tx}{2YW(On]97oGWbbbزe311-t4'O/dbe3ЬysYzj&2ٰ]z8nxv:u.y )oӭܹc}Qm0glƌˀiԸd_[b?~ǺTZd?܁4?C \2k˺ ʕ+Q>(JqygK#yZA7CgMcժU2ׯ_חFA;p̝CRx7)[, F ,41YAaP(̞3*DGGӻwo4 Dz-\S!Of@Jm]ٳ0^Jǎ=g.UTYf\v}5LV5pm////sѷo_ׯO?'NGg떭̞=Kɴl 1s ~[tB͚55s&ߟ^{Kffa~ta)RQJjժ`N2~O>ڵ>K-[֤)S#GGvR q7?s rsskNݾ=:=Rc,@׮8s4aptC_ t7_ e;#m1a_[ժUsx柳Ǻ&++%K..(k̛ I.c uH\~o~WsÊ Yx !a'~Ǔ&i&/Vsܹc;,4̰ t҆ qڵk>ϊs/\`-]ձ&y嗘=k:tM|n\3رDرcDQL'XYx≎wmڶ5P(hhc-?Lnw:u!.Aٲe C AղvzM@@U[Rѕz;v ??{+ruуF޽z|2ڴiM߾}y^t|Ig75ח:Hnwafhz89 4r7ɩS'j/n#1mOs=֥ 11  J s*JmZ2G(}Qʕ+#@U8w,NrJ5ndV:֭clb0^/z?Cn@>}ٲu+'Oǟ~ٻ 9b$Ow[;Hl] bvŞ={ ͭ[֛ٳRIڵiҴ)UU3jz +V0aÆ*ÌѳhW.V;DHHw$>82ﴽLkVd5 2%!!QJ W 1)iب!oĂ j\vb6Ogddn-v5^^JI*2e_n}6 tG-c8ڞ9{K͛7L!JJBшwn&88آT2wFM2S'OTN2ǎc۶ 0ZjˆxnPQX^}U|3A8R'2dP*o0پ|rC`B㑺uILJbeѭZf"?$$ӧʘw,%Z4C٨Ggf{6L!M>pUƵk,ʕ+:u]=ϤҶMkFzMo6thwmfmgrr2U{DbB5kFK3AR* 8Ν۬]jժӲe+zRQgUB-$~T*2d(/"999,^c41BBB}6jdld {-|bY&ǎ3CѰo>wJősǺ=ٳ7oҥ˽LQddUN>ERRaVFիWM·AvB~%5d&7nHNN,1C׫?`ذabSOB+x|駺ԫz(]ݹs/oo6lHÆ Uj 2$m=At c/Z#Z?NAA ܹsx{HϏʕ+3qG>|Kg3ܹ6m4Aƍ8pnܹZT*CٓO=Eaa!ׯ3~:ڶmwOcGz ҳgO&|0$y=~+lݲP( z |g&k֬_> h6ꋔs˕9m!''ɓtn;[yw 9 Oyf}o brbcci٪_W?O?ՂϏ>}r9B رWMo[6Rڰa?c 充-s>ۋ˗Ç&0fXX|yL6dZ |gM3h|7oq&k#ؑM72z(|Iպ 0//???<[l7é^=ʕ|8#g+Ʈf)%::Jq"w,[>@RR 5b ԩS f޸qkNR\j;a^{ض BI=dΝL:\4iʆgtk(JV,_Ɵ;wOcnjqM!Wæ73wmu aث2v8uz "rxGu= 7aaat#I Mdذq#-]ʺضmTV?o"f0Ѫe+Mxx8vŋظakJzT.#F4uկW twIFGGnZLbku_(ӅN\|yw@UX2P;w.۷LRV>t0K.eHzxŗ0~<ӗgN?Cʹgo,N/rZ~ЫWoIJGU4UVzu[=Aש)V+jOu\| !!!G7b… 0m%]/2c]RC}IF .?>_iׯ-m}WF7[c1i1Z|?wZ**T(hժZ9B;)jNۓapz~]!ã-H3p`yZJPUdHիWg1-kdȸ!P$rp#)Thܐ3牨[]q;FFVv6q7ؘN>Egz1[w/zɐaO2Wp<zqQsș2dȐ!CC9!C 2db$]v]wܡbŊqM2<9427SN@֐ƾy$$&)I߼I}6Ow? ˗.b ֯_ϪUQFnTG_2wvwP\y^5Z&=#bF6[Ƙ?> .ܹ2OqIٔ!Ó'QLƽI%KHOOV+:|+^Io 2#Y~FO% ϝ;۷o3e}d{?Kxr뷺7)믿aR6n{K̛;vaÆndž 7'۸lʐI d&eW27rssi׮mۖʰΝ;ː!C3f ͛7tATݺu9we˔u65 ___sҥ\8l0h=w>ׯqqq9rDREˌRAFf6wØ4n(5=jW.е[7nӚΝ;v(nl߾lWE79N]:qF4lV{l{Kڦ bB@@Ov0l۽{y m9sDFVAtDt͚& ĉ&z?ݻӬiS -t?u`Ҥv /?݈cԨi߮6n!C9q⤉oڴ-ZдI=* A ))~HΝW.Z`ر$&&ڬy,p66sgyiР> ~OR2b~/;gwuV :.;G˖[ܩ}͌/Ϯ]U* xzxw+WAŋ6|o0bz?ۛzIj7ѽ;gϞa֬?~+WqO;6.#G2p VZomVƎy ;tRt̒%Ky7ر};L`ի ߟ3gN3i+Y9SdTks'Jen8l^lB*U?x7]jc)T|?yo8Mod̻pBKb<-Uhެa$m6Ozz/`SZ5U]ٷo֭[nlظ, &J$F7Q^=-\1lsqqqٳ "Ѯ];NjqFűdE3ph/G`… Kyyy,ZV-[ڬU+˥3ȹRzY $;;a{ ȁ(Cݝmc)T|㍷b1|'|ŗ)LffSNEʰa%]}`1c4֣;˗-ĉ$%%?h[:K&5#<#!&׮]tPgڽpjcҥ&޽˨QX`۴c-8q"=r7pv2p:y ???ڴmkbkԨQ dӶm;|}}EO*2A-L7ρ잨^^^t֍ݺj8|0[maҤIUj umv^BAΝؼie0#:Ii'N m۶ٳg|{ƍM*Ul4ݞ_Wҵ[WzIקmv( u߿?x1CYRhӦIpI[I(W2{m,&Ndڴ|;99)SRZUj_$!s&RLgXl9K_.Ql9 2&CCuW5),,̻@߁yٷo=cuMJJ 7T*Y& 6J*\zs=:*Tv]_ϧS΢\kkV#wPPIY IjӇÇ\:utS :uNGs>˖/uMR-BCB,Vlyn$[ؒ껿I6TCsmeʔ5)*e"S^]oβeXhUVeY4jH;++PDVj"I*V=gl^K=Ϥtx盌*ƍgbw?{D?pm=(QdIʆVEW( PQQP dY%-mRW@KAGf)(Ǩ*O\a<={~ zUj,iiEIGKN;991wRaaaQ-I23ii7{o*aaa|>{ݺ5k@\.ã.WK~6m}7ҳG?Y81+; KKK2 Ɲ|=wwwk xyy߳77|L&c'h٪5~vv$''i 8LJ\EcGf8͘}ə3ѱS'Eq1||}T^we׏^~<ď?G}Ħ͛J]4Z\bP:Sj0i>۫L9}l̘m{h/ȧSD]b- 4N;{WYY Aq-ٳmMIbckkK֥NOOʕ+Gǻ謄W5&&O j5߿AJ;XJ? O?vi,--ޭJ33$239p $mيgΥK2m4{(psu 8yk\/TFî;صk'W˘}E/^dPf 6w];[ֱp:HAxW 1Wڥ3ƽERҵ2ա}34T?-+3}3(Wܣ9+1p oϘ:+*@U3cijlla|RL^nNk8sS t/(AtW̞o"0_ۛUdggiL4 sVC0k֬e87mnධhBCCiڴ :uҗoݦ5ϵ!-- ף]ǰoɟL~]'=͛?~BdI@W^~cG=GxxeQ_}Y8::~h4ʽ ӛ{`),[JRRD&իЯcфOtt4NNlu#))79r\Ec3FcAصs'?#xQQY#^^^ w߹㸳P}7~<sz2~;QG'tSMK-ddfZ}LM%㤥g]Sgw:DDgt֝Ν;Wz93f&cׂN;ECO03gr5.ΠGZ<ա(/aҥVVV0zhW155՗'8ٳ?c0 zͩS' lnWkNWO?~OS.3c ^|%>`:=A$Yp <L'|rW=-ZNRR4fժUijbKumαcHOOޞQF_֭cѢŬ'rsŸUhР\Ec3Fc ?#˖/cߟصs 8ѣ`iiYvnqٻkࠁ ~:7n݊wޙXY~=˖.eǎdffѩS'1c }*էXZzx611ёVZ3|0 7v{y̘1\KLdߟ!SN~Ό٦ǫ ܡ&{T)==eg>8vyϲe4mڔիW5dbwp1ڥ+1sڠ|XX6l ""̌ 5{3Y=o222giӦEA$2 ss5aggJ ê6ݻwA9ffJ9~zu $]Q/ܪ7>~Ne\*kWHⲔPIjHlABVFqNNc"e&A~ErSH'<˝\i+8I&//-[ᅮ@FFxz֣{t22K|7W5j,\OQˑUNM֧]YOA_B233iĎ|)Zd7n^F|ܛdggyӆ9u3 % vOOޞKF!&==zsӓINNرCRRy11\|:v(QOYz P1EmjWYdeNFfYl9 Y]7LMX(e8ژ$75LnB`Vf󂃃ׯ7VXΥK[ߗݺ 4 OOO6n@LL /"Ǐ,YYY4lЀޣqc?#*UQ{CCةSΜ9MpP?|}i؏7nj&aؘFx'7ۋ>{s 2Z>kx{ѳgbb9y$/Li԰!Æ %11`&[ĽM11W>wsI'5=**QoMqFϛ,mك͛6ɦMqrt`Mwm9L۳Qם.;_c)I$%bS|͋w26@㌉i!i_GCF>64{zDz+x6mؽ{7Fח{O6'3 '$$`Bt:& B:uٴygϞe߾};vR\lْ(oP* 2[[~'Xp!zD0|: 2[[[V'OBiڤ=DAAAݫ#xG|7(LL˯z*P|<X{w{}qptf 3Qoo>(J7ѣXKǎG||}ر}[ͷ~Wow iպu//Ѝg}g~)|*Ym̝;UB Gl˖3<~ݸ@|}}b|>_'##5k,M:d5'M2>/IOOg tXԶM( Ž1H0 iӦYqZw>lذtl_Gۜ׮]ӿ>q*J ޣ;fƺKEe5jDvvǑ$'6A״IY3gN]:qj SeoTڷch عs'lڴ}5~Eҥ+acP)£E$L,Iתn\6}%s]הT¦WQj tŗj.̍Nƍn݊N:j9<ǏˡC9u|,^[5 PԞ")9,/s5355xnw[#hz{o ꗛ74C9/iBnoquq \_2w~+9FƆg.5FWW7sՕzurF5ԌyңgO4hײe+<<<ؼi# , 01xmkkKvVSNj$IٺQY[[;,.K!b"rD QIHAN!f<*Oě.TLntBFFSN_6l(K,!$$'Oěu͢$Z?.Z/̌ Bdd$Y$ŋcgoSO>ɉs疺. m\¥K(/uGts'&&$yƮ48qBvNСCHԧDIYYY˝ ===Р]TTgΜ6㚵ܸq6[1ض}~;r^~ŋrM7ų϶+d<<<##/]z x$ 3kgXeu>ӱYV' thS0ZfPPPRiVIU%p(.eᤋF~>8z~zɍrrn] Ke+__ӧ_z5k՗_7)))(nK4hV߿5?Q.CN(((`˖iEIoM&A$>37n$87BH}J\tI?-%:O6(\vXh!okЩT*;v˗,TAh^yR۶'&&ra5 h %tSY6I͛PQE>4i:tf͚|Vfoh(:v-'NĎDFF5kH~&Tz1ul̲KȠu\pe˖A*\>}3x!d#5VW)SkNFzc?aaϼR5lp6lX̙ U+Kmeh P)U^B^^GϯMG\̓CGu*\ 66 l, g'{mD$pvzՋӧN}Μ9Ù3g*ӬY3F 7n_,X@FFӧO7(۽[7ڷo=x`5kVbtssc⤉̙=8&7bͱ0a3gj\Ǐ7(VT QPPÇo2sLV\InNO=4[lI9=effƶ;Xh!- k#F0iһX[[W>dO?ȑr-y`ccþgزy3qqqxy{x 8u+ .\Dǎ?n6o_z&.m۶-s˖3mbbbh޼9|Lcuo #F6mmÆ DDDG=OѻwQ84Ńyyy[>22vZY<ټ|-/rm#C@p^j\zWW\'++33SF}(U*IJ*jX2\r)rss&7BDFF~XͼsIn eC&7:\OmP)h*ԴaQGG'6%r:uxG^^Hnj˗cܹX`ܼ\) dP7ãMEEEFq1g'gJMlJVӼy3T*HnQUܸM 3mT=~W Џ>,PNGTF^mQԸ"˹p"'H( \\\qqvFWzyn)TY]#jdB֭[_!tzY8Ӄ\. {;r_j JU9=3+?Le)G''qFJ26A\ZsssJG dTjJU%pERBըJT HPx?ZaFAOUƹ38:9?wAѢViެ貔HnAAx$EÓFAG . ޕ]8s# #E$7  Ꮟ ` ѱ4ǫeZ- %DKOO'9)SS3LLu^:37B%e2<<.n$]K6g]8+W` Z>,]vXkKdee/΄w XPS{oopmgAUg ^WƝuVTmlj8~}[ϱPtdffbogN7LtȺtSk:9cL:у91sSt:dff+,,uR*#R-tJKlڸv֍\<==vjPƼfmQ*rA߃~/gE\w__L74 $& Fvܬtr2߬gr9[bZ)aVdgVl1VC^^Ra!h45;wTHNGNN.aGawqFl*PN6m*@\byb 11\|:v(ZOUZA߃&ӯn(sUz}?@Zz;?+Vq]&IӦ:y+++1~e͏?_ILL '';;;zt7ǠP(*XK"IOO÷/ݻu'((moE-Kpp0?~w4hЀzUi=ˎ;`ZA9u< 6Xd+G$Id$ǐGFf6jGyr)ӃIE (di52Q(Jr#7vU?n{aÇT*sNIJN&'7s|G|X`_}h4 csh1DE]&*2WJi9C!))7`\ ²e˸xBuDV˖Ja_:t'!!lΜ>ٳ2eJKy֔t`ZIÇѵKg|ٳ11ќ;tG]~)&MHzzQ389:0bk<ټ>^ݛ'NT.w+`1V\S#q.<~$I";_"6>Oo'ۼKp'SnAa>Θbu\̟7N71-⩧ $$sh4m@'3 m8&#n߶ {{{ޝދnnnU,}sbJ222 YuϘ|cC^^fb]̘ 'wb/~#_㚵8::J9yd]??o@~}??x=AA4oޜ~\PQ}!˖-+I׸pfX[[嗙7w.1J%cǎԔ=IK -&&RI~~>o}v\Oaᢅh 6n"?h,7Űҵ z"--M6uxo3\y9Baa!Z.u}̳-[yu&/_̟Ç|dddfOE%_ӴIcVfI̟73m۶sѹs'"J(q#:t`Eԭ[gyh o)1j[E3,\?Br񗤧~:t,jЦM[ aGPPP/NPPM6eڟPTeֵ<|~~~ڹ `Ŋ:t;JE۶m^+FiРK%?f~)|*m̝;UB*TU2dh9tSEb.q??GPq.<~$IBRZ*aa۠.ʆvhZ)i5o iB ױmnsSSp ::(ڑ+u qpۛh6o-i؏.]2fX\#@Ѹw'|Gl۶#Gذn=QQTi1]IV>[r![ M۶e~.j@ޢE 25"66FHM3gNM6yJ{&7>(W!&6sgϲg_ҥ+m:qj ةSݵ͠~}JPeow2O6i}z!$d["((^zӡcǻT/k?Ud_OiN8J'r=zljErc? 16sG$L,Iתn\6H\Ңo\w]2SNd|>*3St:v5s(NnTkhu: @r+ȿuL4T~_~% 05-+?|ƾ9N5*n]'w#Asp(j'|~*/ޚ74C9/ߒ/;R( j4lll|RZt)--- WW׻k3z@.ӰaCziyzrҥ ͭk[[[*˗ptt4>,1o\zipD J ȝ=Hm9s̟۶7߰x"n2~i}SE1&>!W *{ؘK I0uг>vY\>BD2B3"BdyUĿ7u]Pʿ\^yFJ-ٸq#4+Džqne;YXXW_r-)?Cﯿ!33}ǒ; W}bh_$$&sqBMƸKxzz~,jhSKgfʕ+\t鞍+s4___N8AnݱOt:tH+ɉׯj &LXi~k,`ЧOiSCcꗜud%+-OOO:~8sA׬ƍi݊qoŶ;C-]ʤs>ǁ768:8N3=11njL]Tc<\~~9΅Ǐ$IY;u,餞:89X`nD *lm-0{VEu1 c|d *W_}_@)))(LLߟ j7ݴiӆAÌO>aϞ=k9s(ǎ? a'0` o-ȯGnK$zI oܸ~lTt_ //];wdff\DZ_~/LO}c귽;}1>|ؠ݂z];ٽ0Eر_* www>`:ǎcy%m+n?+rӧn]ݶ.{n5us:ЧOo$I‚={2i$vv^JUtCu⎝:QPP-زe3mڴP]Tc<\~XxI:I,L xƒM\("WSxӴQS~vttdY#G;rĠo?ܼy_|#G2r*W^СCHIJeXl]eb\i&LJqłddd0}tݻu}Upaj_۶`ѢwlތIb]|Ņ={Y`7JFFݻ`AL8/\'GGvhذ!czzmZs1U˖3mbbbh޼9|Y6cեKWlll~>l[6o&../oo/mB…رǍc- ?V>o#G"ygV fl޲FnIrVboh(NNδoߞ?(80dzߑ2sLV\InNO=4[lI[i˫Ki*{ؘ˜ ?t"*:TnrS4u^M6(͔h4\,E <@=8::,Q]ɍIɭ+Z_^xxF!gf VVVXYYwo(Q|k$bNXYY@t`?Rq#kkP5L)PAG:)SR$sENܸnx?'7UI*\x48:8I+;8Vą_z=xa! 23ptX[[T`oGn^^ BRaaaR*'^Ň)8s#TJt@ ƒMbnn^d2T*5Jd5:HnJS)*yiAR JU  \.Ғ:u0lp:vPmgɓw_BVpqM6k.jԭ[.]0p j}ً/0p }(N[boo_a6co~G7jCoek }On2qusGSPFc%)M$pqu#Z66y!C*jsLȑ#9rdeR,c899[6--qo͹px峨*Μ9w};XԩS;;{j!X[[/`R:/+V $$v(wybQ{'Ad֬]p=%Lm4p...QG\pu~ԦDZvܨ/Z۷"o[+1Z3WV87/+,$33&MFDgV=.`ieB~66 yuco|r>M7pec̙3 y8NpL0JO?W_1ydBBB011ɉo$!Ck`׮]vzb[haoAx ΍7h٪;vBVqr4YǮXbjdX$U_v͚Z5kزe3666[ u۷_Uê¸qnB (h {w󗙑m(+@*,TJiӦ!IZVݻCݳÇQ?ٜS(|6x`Ahhh(<|Ƕmj;޲e˸qӦMeW_11>ŗ_-͛,^ìՙ ĺ򲳳ygZ;{?Xl)O? ?&MhBrZcIFcƌ,_TlOiߠ=j0=>.iӦѣG9 Ν;gzG3&77r% Ql#Q(o+WЭ[7ZjE߾}Y|9Z(:ݻҥ :t3$%'٬xiժ]v>"))IBQԹ3>,}-]g%66(j_7fe)ocǎӢE &N%PXXطޢUV\x/^.EF2a:t@v>}:e,YŒ3{?|FJoܹ cƌ.w_ն"ԩ]Zо}{k:,"ضmѵJ' ^~oĉ=s}5k̞37:̘15S> +b|.];W!uD =f ΆÇe:͙'ʕ+?~<Ξe[D+Æ 0z1f-2tgǎ/9ɓiذQ_oYbcc>l#3ydf9YYlܸѨQyAY{c(ٽ2.I^smjب!sջlR$/%3:Э[7{}RRRMKַo>^y:vȈ# (((` 4mҫwo>s2339"42%e%u""޽wwwtcSǝ cʕ,X٪Waaaٳ֖RXD͍sC ѣ2{*e}lnnNV֭ZK,!'79sЪukW^aٲ̝3רoߞ@֬]Cn/PA\rkkk,ԩFwQm~.tSP ]PA(HabA@A "(M:?+Ch 7\%\ Kr!w?yg}w)WXt: -[if*N>m6^[ ‚ ??fΘAٸq#G$11-[2ehРawXJ Lmoo2{ǎ3o<{1}={ү_-r$|rꫯL=CuauTTR%2ə.] Ngknءc}Լ\r}o>իKZд4o|fpN4qsI͛Gbb~n,[ {ϵkXhޞ,XoVZŨѣYjתS8x cǎI&ܾs~Gb\:=j4/^|S'O/S1}t_V TP6n`ĈԪYu[ooO~qYKS^]ϟZG חٳ?fDEG3w\/p eVTTѢ^yٳx\X)SP*Th*.ecdmI-sw&9YCܩ..˻wfm3cL\]$ '::wwwŋh4=dб{v+|8q"s>+r{zESZmSޭŋhZZliv~ر¶mȲL==sp[48REΎOᥗ_f„ TV>erKQ?@ӦMMj5[ȹ)əgzfm>|>}`4ٽg7]v[ɪի8t ĉy%+^Oʼ0 x.-;W5j??0]A~ԬYѣGs~X> 'OСCh44k JބGD룏?gϞ=WM-qhkXWq4>]θ㏳`WfR,mX+HW/@1ĉۈk{n:ʟVrafΚ+'Od( &}!5kմzڸ%DFFi:WcDv*]vk׮Fn\Sط}9ĠA6hhvS2tlΰB^@]ws]ظ7wFN]h٪UСٱ5N8i:.JϚtDq4>ǍKRb"-[47 m̙3,Y?X&7{AѦ\˂ ѓcGrMOQjF#N->E|:~ktݝ8$I2-5h 3(oY ďW_KDDx8m=mR2wa4ͺo߾͕+iG?/^Cf /Iɓ^3g̘9]ZG_nY]Ew=9z vZڷokY.Eɯ $FXXXbiXcb33}J^zO?qnwJ_4nbQ~5NYTx<^6d\΍[s6huszxxp7h&MNkQ[v.cf=C6 mb0x7iڬuڵk$޽ kptt4+Q($,, JUq)P/ͧF2ctڵBQL{KZz: ~ `6UVdeeo>ӹ KӦU|bRɤdvn 6{]HKO}snz9;f>dƌ֥KdYfҥfw{oqrr{n>55? dTlZ*(鋈`ΜOiݦ ԨQS +mai~OÇMRSS9vhr2*xFz$I:t<ӻWy9T*iޢqcǎnzO߽ ɘcً#DE:J}xb<ܹ_U"~9)(m:f2-hY(J:3>#5kY\С}zeu/ SJjj*/]?кUKonՒ=/>cFq¨1oޗ%(RFIB/I[ L =-5TVȷKۥ_3qDۗ`f̘a湏|m$̚5e˖iFFE|BG _CWAz9у=onݺtܹPb̘1x{{3u-[Ǝ;vlΨQqrrAQ? 5k0cLo¯2{,l_ZlIjj*f"hWk֬a2~EԩS9tU2 >$1e S&OFV3kL&$0{,S 凥͋#GɌ3 d ?]ےX[`UӰaC֭[Ott4{.T^ݺu%֭hذZ 8xNcǨ[C=f4,@N?~,1V~^ڼ¦VFRJ;w֙Y0Vq~nj 6._׬)6ycz}Sc111'}$IZޓAJ_?E/Y3f =~ld7c:goox75r$/2-Z@Qs9~G<ݙ;wnn¯ҥ߲w1=L:>}>ޞϏ?ȑ#Gٷw/ 4Q#Gf~M2w>^:Æ # ryڶmѣѣ(J:vh¦/00sg1cLӈ:u2jh.]ʆ 1p y-?,o^xyyUvޝ"Бg[֭gUݛ?f͚م]Zݻ7di<^6*V$&&?B@mٲ%`֬Yj݊$6ol ?8uwHKMӓM6c02xz>0o<&}8vmGЮ ڷoouF6C1k,BCCP[rh+W!8*SN[ntر+.Ka ?OIs,=B͇LOH',,j )r_:7$˝;iFYPvdfdr˫BN%æ͛Xm{XqȲ-tesY0>[lf!%شDR₋3^Y܍k׹|*"q"XC@PO< IDAT$L<7.=zC6,Q\V뀷7 :}{TɛJ+Ֆ9_~%Ο>}xur2^k~iDP8&]ō͝R+OwҭA F[f fѢG2͘1/` ]iH2($I"!>m L^"s Z֪y pjnl+/OORt: 27(`0E%oo\]JBDtT$j6f¶IIDGMvPW7aIRR1VMQ=K$4 @e23m-RPJprrf\tgggT*գNRbfFRMA;0Jb*(QZVEMJo*% (Za4QCtTnn=$+&6JHҎQ2Ql (XoB+XTlHF#:w22eٖI2kWqvqE,c؅mM $Y7ҍz,lF#z}&YYYȲ\dC3_&<.z5YL؊,Cz}&Ĺ)NN2(+QvDU" 3/8qDoťԋWPWWKƭP*%~LI%:[(}˩=T[ 4.]"tSv` PŧrhNdž hڬUϟ?%p֭B/+WY kF`O?5\ &d +Qrюʞʤ[.;sMsGQl%..//BQck`4RX7$33kְe_`jUzk#_,:. Vlbl"rE*jI־C\ڛcWϪ4m޼[p cN5 *XGAY{]rgsCq/O^Iy!FF+?qS?._.T{FŚ5"lN!(ˬ R-8AY%c; b, R!FX:ϑjժS6o-vJ._,%(Is7>/3m۶ٓ Z3{vCu^~%][pi$Pţ2wH?D$JjW/&seuOLt4#5-}иq#~G< CC}9[c!)9zobp_U廨ۑSȪ u D{Z"oY&mڶeڵL2 7+R _ɧƶīqtP 퇨pVSdD(>s=*A|r|Rn݊^/6VX;枞Α5&v0!]yF~s˃:KF h}iӦ̜9BaJBq'4տBЮ +/ 4n҄Z5kklptPj Rb|%{5 3fa~P FesCe۷ӧOөc'ޫ_ ߬i3>'O"66|-j}oh S@nn~=@!6-0R=J*6nDezM&MR k֮h4ʕ+5'|ƍdw˾Vܸq쾤$ɜOjM2d0͞jF:iҤ1ÇJH-}ݺvV\|W 'uVĘɸy[" :uEEFF2eduJ@@=ZhODDUWޱ<'>L~ 2AQ QوZ%a}j,iI $Tq:*xtRdYfޗs4iնb:ujsMjժOf[m YS (a? v i 7xh0|oR8@:poFZ5ٱc{.zbذ6כ{Ua)%*%BuǑ^":a!$pnz"/'%X׷nGo\1,,Pv`lջM<<7hU>؛YQ6q&UJQ(<s\o޺ /<υ 6} .DeӹRشiٽAv?̒%K8z='u9{,Fzlx u7~w5  1vxVzd|'ܹs޽{q_ӧu:bx牋8w-Ł> RR!CoD%IJT (Td)1$M|㵕wlX"ogPU|}ؽgcǎnK=ٸtuwV?z=l:ϼkQIrL| n3 'C@@|xzzS۷CyWhР>~j{ٹK\Lիz+>ը_Zur!h$(s5ntD8pkgޙ9?V` QzS4 ca)u|y-%o.ufOeYo5>Umzf_+yS n孷2O,nk׬I&f , Ehْp-88}lٲ'mZq-4jԈYI@۶m'T=˫QF|\GѱcGj֬ɱ8v)\@Ybm۵y(*N?NFFsAӱeU_Цuk֮Y_(sWJ Z"Q8, %F232ҹy;%_Y-KU^qիW7ɱnKAݛ=Z& RA=, 3r"R(4 Sֹ@9!!UTҥK\rW^y:uejhѳ'۶m#)) WWWmۆ]v=Wc%\Cjp9S|} ^N=ft+c OiJnß,ٙ׫gƷsP4W}ެ=o>pY&B#iKMla <{Ӧ@vJ|عs'?pttSO򡶷uV\ 6{9x 'mڴۜ:yfL2DN8ɝ;\|G[VФqcsU|e:w9Z-mڴ1 = ̙3ȲL6m,/,[O)ߛfV۶JWɨ2H#.MG $$%HzH e`*߱Ryڭ8^7^ލؙidB3n5:0SMEl ^* ! aH{mڢḫ[~eo~ hdǎzR"EE vDI8GF^oq}z df+R\ڞ'AIbŇ MmƲ8|]5kK]w*q׭o 1c u6 l:NNNb \v`Ӧʹnݚ[hճ)LLL 'N䯿BTRf 6l/7oUNnnnfTf2CBC7R?26 2+"˲E km[qZT Ȇt2.)x4LJJdHix**߱Ryڭ'|гDܡ{ jARIP!ޠfJC&vg{lSj5^BfffP_xN7K.ԨQtR}6})UTfߏ'ɀK=R؞ؿ& BC1H{ u~\wqVV .Oܹs-EQ- kmMM_4 3PJY((tV˜݄8L4* W'\4 hR硲la9JQYjbK{,;e֌0;Qۡ.v*1(i*5'Qd]*/_"""y$0:t+%K%!.<ӛ̪իM9-էBO߾,\N||;v׏'xD#G[((Ih5W.Yd""#i8^WGP߳O?az$իVmv:w,˥[^d}PjgKɲq&%nn  .ee#5 5p˞$nٴ Vkzjzŵ`Ξ=k:ߡCG222ft:<+ ##Z@xx 0~Yٳ[Nd*m4rewZɡC- \G}R[Ȳ… رÇsNi鯼cmytgK IB;Rޞ|h⛊ѐ!+41qEDTتzr[j+hfDz,[l ltٛǒ|=8(P_AhufW&0۶m'--:ұZۻLxgΰzj)2}E$#G"-q pϱ d6 @Qjx }:/3u]NZn;Yrٌ\ukٶ};O6mJˆD~2)w;gOcPDt)K(e";?%Cy=d  ի7Z6p{uױ~z5jرcؿ}׮]1wmJ.^zj4y ֬Y?M65޺uk˔ɓi۶-I߰!{tjqeop`&N+?Nd-=aNNN ~y0vj*t:͚5ƍ^jժ^W54G`t'=+?R֓j@dTѨS( zd)ɨѧ[m+(zu_cKmRyUpe&MDϞҥvk)un 7T: +S!Ɵ^CQ˚B0ݻ?3+ݻwqf#""XkգkxЋض}_}:rVJƍ_o߾vTǺv*RqhЦTHRvh?ݻd.>WIhL 5g^}U>s6nD'D9{˗/͂~nE=̂( jTΗ?bIFƁqME54o_yڲu+z7LÆ VAAA|0q"..xyyn:st))tԙ3k\q=gN3cL<<<8xF1 ri~r3a8qF-ZĮ]DFFY׿,cgg?9tvӓ^zƙ>[XςO87M4DDž/G }3)3gJɆLF4v>OX,R[T޸㉌СC( :wdZMBөR GcՅ:kggǢE 3f Æ c萡l Fgp端._+JfΘ _`iXb}ާO>|27oNʕKιRvU1Է+2G6Ξ _@{|H\xΞ¥`;P7ndٳ;w?GquqyD2 $E\\Vn # !!jݚ].F ZaC$Pd(Ew. q(J]\?V،Lqضd4X+I5xa#e$!#ِc:#_|A}cgAN[=;>2F4b ==5kְk.BBB$ wΰaU؊(tgFg*KVȼpu.NnjE'[!#KBǨ+*OE,cBB}KJ (-JAFG0CXD"=>5id owOJ(.#F0bĈbZ+VG, ֠nhWpsC>Ր'OFegB&Ὲ͝JIhh>>dd_l)bH$PՄܺJUrЗe. ݔXP$jM};!qDFFoy^ּGE_Xر6un \x www-)(Ej .^.eh]ɶG}cn;АY -|;{gcX]ފGðsR8s~թ_G-_Ε+TP:\].~'"(\~+W;.K<7x}^cq`RZ(Jsi[TɛJ+:<;f}5Smfleg[՛G餤;7JWWW45 '''4m$uae [٣bބ>J'%]l)BVFyB(N̓.;؎MQAN/Tv&¶ 젴!ߥ@F87@ ¹@P΍@ rpn@ +s#\QdF`4Jő@ aF VSx΍zD@ B!2z݋WFHIIήD@PN0 888V]q,Mhhލ$@PdوR:@ łQ2$1X A@(Fs#| IJ zn@ FL @ $Rg)@ ( @ (/H$ @ (?F@PHOOh417@ >霿p 1YJ AF + @ (j$#LգN@ դ=Dd١<Ӑ'O rthR8Fn`[3Y x@ x(ZAV7IDATrc[ :ڎAIENDB`luckybackup-0.5.0/manual/data/InfoWindow_Refresh.png0000666000175000017500000001524311176022226022042 0ustar luckybluckybPNG  IHDRE5 pHYs+UIDATxwXSg;SEPpZYVuZ:VUpQ\W-K2T$DZBđuHs?s24P[_""n@g3`t{@A1Qmmlɯ3dϯ{3` yl<6@ g3P{=uV/oZN]\\-::232||}U;e7oRjD"ٷoWW?.-\CǏ>U3`7ots[`A}||Μ9CD^555._KDQ{Olʹ4^?=rE""Gs}DTys}|}=BCC%)ShU{}Q\|\rfӛ̯f͘1:ŋ{ts?eΜ}&$K o@@۔^|sX_ 2f̘ĤիC۷zץegϮ`:w>v)fDo?aÏƏֵ]H(Y,[ODF&%%z9WڀY&9 X|ʔԤdMMMk{}Q 4j yl3r%%%DdogGD LLL$\r ,0ɓKJJs"l„!D4v'G'^***^ݻwbD֭-H$K3Kޤ8;WTTܸy#)9իWS:hjj??9zӀS)ˑHojj*~2DB6e>_Օ$JM 7͛ڽ굫I]]PSSrT) Ev]_~9ޢE)͛7 <+!" P(rW\IOՔY\㵫W8wr".΍ԱSGXs׮Ԕx9 y"NNgNj*P}P3ѓ'F|i|B±cG8s"\GN(6{^!!!p!q8x)v+me` ᨟V_"; g3` yl<6@ g|EUVVVVf͚)>*j@QgO*,,435ltԼi֬zP@[ E3qҬY3m)26xwycdJ΀QvvgT2#V;ԨZffӤF;FIxBB l'N/3D$ F˗wj"=yy|Ѣݻu9thm۶SK+H-.*262^KsС!f#G|-)жM_^^P_*8244>#.úuZ>~Ѣ5աVYĉH"r@O dYY?nٳ_zj}[nS\,?iRrG֬ tUTT=z$9%RՈdА,]:zB%Kzߠ^zM8ɰU{Iݹsdž ѣѩS'(=--##ϟk454=zȢ'u }ڵkv6}qqqDt/DtFjffEEeLػw7vС(+-=jdvvv`PX,NMMaԌ`ּs޽h|~JJJ.]8h O/ӧO dwޝ9cݦ͛3?`+ر,,,Idbr}]]ݿ+222??t 듓7mڬȅJ9u;s挹q55\]{ ʜO4-^D[[SN!C?~***f̜y9ӧ[N217qҤv/Y#scJJL7w ԩSDMDAAo5kƍ_ZZzק8udQѓI&Y߾S'OQdd$8|w28sLiiĉ6l.]2{ `޽{{$[rS'O>~xڴڴy?47's ω;=z OJym6~}{pp/xX ;tpص{O||{/>KIbѣg*R:2XXZJ,((PD"QqQxΝ;Y‚NOZZړ)A~>uMzbqJJ2@?ܜhWH闓QqqS<|V\aldhmŋ99 HOOʺiffֽ̑LHP̎ҿ?ttt/^|5kMADQF΁Tnߡ=󫣣Nxɒo.u6`@78i<Ɵ.^dnnc[N:d\S}/LF_322%7'ظՌ;vgb~yr9{&DtUH%1"u=Zt sspƍCJnH%:L1lذsc~XGDA!Dz@Hi D Icǎ޽+Vz9zޘcII~y311yӧq3-=2**88իaa <{okkkccS[[{訨r V^}ŋܹsg=Ykiiegg~=ߴꪋ/>|hذar%]vÁƥl5"صkgUUUuuUBB53EDDĦ~\&tDnhhȼɶFQ~|5kqm۶͛7W֌R"QQ6l`H} 000 $' ##|}}ϟ?ٹ 2:YG6D"ю;u.^0)1ʊԭ{vZwww"͓YAΓ|"2{ttg9~%r>-YjEǏ?^vz>&:ܼ֖ߖ5rsr\\*֊~o-:uZ!BAACCoN@H655y\ Uჲj'8xԨۆ Ν=p۫]`/ZŇ,,,ttt\{ծF+\p...cƎUQN<337W닍</1IާԥF+XrŊM%^  yl.l̷#JS|7ղoiS~""~wWvQ&NR§jQSCSCCwWvQ&NR§jMKw2 cܹ__o{;۹sfFƞ?dĉU/O%%٢tuѩe6hYO>پ};UVV OHM ryVN"eeeϜtqΝ;~V ?:uNFjQMtR u(_VB}<=ӻ{\ҩS-ZJ()+)g$"7}Csg:[y={wt::ltj /+sQOOτx";g+W$I||?j>`%ҝu[laھ}Ǔ2))+)q~|왞=\5k6htgk#m>sƗ\.M6 _{.E5ssr2jΛ;gD/hŋq\/t(sܜ 7ZpsUS#""K}G5Ytvvu>7O}vj]jM<3`gj5 3` =GdaA55o{Vh77:tMv{ȳ hjJK{XR-GGZN6gϞ ~f`-YVdhHOSCt)ݹC4lXドh24$҅_MA$矿GN 4|8[UHC44dlzQYE8@Ե+С^MÇG66t˗x倫*+[Ib1?ONF;vХK>`Z= JMѭ.5o.cԋ_*/ HSbb裏h "AŅ""/NA<C-[3eeQVjߞF "2\\dtK::2@#K>Oj*=~`GG:v.^$уՎ --'dnH-Z:'{}[|HD;ME^^T]M4j5졘F浴$==^;?۽{tˆ] JK(62ё#9iheK7nЯ'^\ر#>!ATt<=JzzO˗HXo6mD;v(>L'}k6t׷@<z<6@ g3` yl<6@ g3` yl<6@ g3` yl<6@ g3` yl<6@ g3` yl<6@ g3` yl<6@ g3` yl /ϴkkY7RZP-Vd0_cYIɭ\.ݩHjŊgD%jʰ*P3heXUYFL"TUV4647EUT+fh1޴% gxl @Sʳ@Sʳ66g3`7@IENDB`luckybackup-0.5.0/manual/data/menuSettings.png0000666000175000017500000000732311344505562020774 0ustar luckybluckybPNG  IHDRD'b}* pHYsMĶZIDATx\{TgH@TA{᪊`ªXoRE^%h[h?*ww(Ohk#!q5`RE!d$\y!g=;{ٳϞ Ys3ѡjÙIS*\Y1Ro‚  t:ɚJd77/O^Z1kU'&B|>_(M.T*S~D1V^^^}*Jk8:9=*=hoozcY(c݄=F,{zcBA  !r  @@Q a pyONvww6~ga=w3f-cI'>D0twu#&*d?0X'_gff ,9?_]]-J[Z$}ŗf eH$y&MZ޽F&UGL6 *+20v^^wG;vd\LϿw)㢍АbbRSSס.aKKKAPPPbb [_$ DRT)S <\d RSRjuS` ryڎ%'ۢ?wݬVTe8qb A/8o-}}:**0RgUԪjo~tzʕ00ߧkFy/'&# X?ѪjdK34=Ad"##:ԂGi~,L&Cy{{VEEU&l߶ɓevnP?ֿK[6mBUUr9 CBb֯^7z>|(;'租yxLY*~ ^yeZhr,@-rOkO/! 0k~ @ rd60vrcgiXt6 =6g\O R5^dbObvF:ߺuZ'%tf:Gp8pJ(CǵkVb ڡw)aءa[ĉ\.xB}"zF0#D`#r ^0Xl42j yOnmJĩt[@gb<+v0p:aYcz=Ơz1mc 0IPFA`We"zV(E:5"}dP,ǵyBA I^@ØqzrN ȀkX5<킼#Fc(nOg?j`gC8 A  'L>===Q8XY.J5̙ᄏ~޼Eo=r$ɓ<%RϞ;1eJ5BAuue>Vc-(rߔ8qB Pt!ϻrET޽;֗mQxř˖-jϟ7P(._ڵh'{ϞFPLNKKiii&+h8PXXxSNkl<} ц ۷;] a8 ~8O,n7ӗLغu+H&cm69oG֭%%֭/̞p^=?0=SX*?77%&.YX(p|}%$X,k x(tӋ TƒnEg tr,~(@ *ݻλKn33R /ꁁs2)6OIMp Ѽ{KL֢mT ,CkHDRB z4|4UHLHW_}ԩS55#)RԄǑW՝us]*uuugϜaWc|B"Wx"Ky<>kmi9xА/ ]IIIuuuZȑ#&#Uu嗗Xa[Պј;o9.BaDDĞ=4АPG>_ DFFm d85Wƛ&9;;Wc?cǎELNE-X0˗/okmDa-r%O?;wqKMk[|:l;?Y[S300[TT9Dq(q[z z:ֶ$Nch\uo~F$>;*sQXغu+W0 #$$$$$τOTʎGkyF >'g1 ;FD@CCX1aqKZg̞5_uGcsێ'BϚee双v fΜi1>IENDB`luckybackup-0.5.0/manual/data/manage_delete.png0000666000175000017500000012650311352707104021056 0ustar luckybluckybPNG  IHDRLLt pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&&tEXtTitleluckyBackup - manage backup <2>?52 IDATx]wEү~meXpE‚dtzgTTLOpY "xT8OAI KX23 8u:S]]]]Hv+.:묳}>_45 8"[ۊRX b1rQFzܰRBh!R@;=Ļӣ ͱtU;R4!z9Td}}Ԧ3lpՄĚN̒d"SII-CP媗ŨjW۴aμMnj`MX"k%:WdL>XMԋ8V(j+L*Fck,ɦ4N$n>Qp@恓իov[oժU}{F".N#cgn%QOwiYC89x(,WX:^%X_ecb IuQk-!<@" ]jM:Y [|[֖EYҔjH9Wb!JVY0Q`۪WyCDm֔s蔶jPTٰcۅS(ͷ$wǮ(.UQJjUa44TUUeHOO'Hr[NU!C0!쯔̹RV]U=@TP ꦄ8) ǏnʝG*٣#oKTTjEwhHn(iBڋB{0^8.YA\B }4͙p_rGq̨H|iPq*Q4N87)~UU)))Ijy_pp2B);|9 VWW%'''%%S;,PﱝTc21hWONN`PQܦ1UBЎ⃥*˫kRRSSS7m,---"D呱ZyH(I0[%&I3קj/<"jx@li 6m_Шu5B*h»ə!ޒ@T(RbHnKuja}H )5!hB)PjSai\qm03:%4v'H3XjߜIa|`Mm~͏OMMeJ0߂+eǡPx۶JB5MKK7 ۋ%!YY5.Pt)Q{m>b B~?Fqc/QX 8qؿnڍ7VVV-5%%^6:vl$RC9lU0U;E PEZWæ6%Gӹ~MtLEY.q0yOր4|UA&JE (Xu:F);;>]mkbI 1ע TSi?T٬.kek;LPzh\|ldp腀l3#K í-t [O yuA.FX+>o=k֬q񐹹ͣ2|[*ifHPEɇ}MF"aȴ1k `=?;thڤi8&(0CI #P(o^UJ)J/%Օhɝ&|| ۶m]byAƍw޽i 6ᄶ'vצ-5 )!vΝ`͚NfCKԱ[eCD a:b23۵o%G=ƨ]` _*}Vel/B猍KCJ ;>.YKz t!'xz|\(޾DH3(NSABY&c.; TA2ъ+OdwHLHԩ-گ_?ic0 2a@JNHIU%|A<`'@h^! i8*8g6K e]vŇ9#Dy֥ xm➪9j`m|lxR=c90xC-ڍ12B"/x쥁z"p¡ҥ?-]ou饗1OOڀ*l-mo.XGPDAܜ h6adxD~67#azMf_zҥ?nPد_!KJJrrrfgwuSa3a#~7Fxp)/++eBن 4lعsM6q!9D^2.$nԨD[*9yo>dJHH(qZ TKWLfVh44> ]#;vWJOGJmXOv,Zc~a>X&v nذ`%\ҽ{w#UjknٲiӦHخKX=2dV,%$7k__.`͚ ~}uS6(1Ǒ-8xl炚LX 'RieC2ӹY`1 51D1 `1-j?EmLJMet{ͧ?*XsO?88p.@- .uJ_v;cZ:{Epӏ?-= `onIBpqcKJJ* @Z G6]&0^Dx @'ND8 `ŗ\|>ku]X|0y_}YTTtz7s‹/LcyJ ж lXH#GMzҺk !kݺ­d8Jnz{ׯONN>Ӈ?h~~Q#ׯ_~E>2d!9ssآE.o @iI+Wi䚫;|>s"s6l~C~?g˦M=-tyMCn6غ}~ݻ3N=W6m37|Μ M\f !WOwnqq1_x^ݻe^6qS۶|+~駟V I>/|֙ K >[]ůV#0@ @ ~|`'>HG|}>'GȁkӖyȒ={:w|N:/?iذaSOcY\|Cb7 p7۬i3 >_/-_)BD_mcQ%cpim۶㼻gȐYűcƌ7v73K`.@+p#g_'$$0mР*tU{s{!y/+-+))\TKfeefrcN8FHqZVV6hmXbŰ+֬Yk/{= 57n\V9pઇ>˯G͘W]uDݻwOjْ_)߹4;ooa6 G|>_W:bćMC k/τܱ@ (++4idw[0niȸcǎհaC#i)a[3v%_gHޗcۤn[+*=͛Kw,ݱtOz6?ﴎpW4W^^YO{+*%&%#MhKLxD)5sse˖X?KeeCn`]|G[sjq=dIZZkwоC;ҹSs|8ujRRaW !}q~~A~~U?c5j rs;+V)S}p ڵZnW`3u?餹n]y_v?C[zUm{\VݓN:i7<pݻ/\uO 5k&n,}6c[l)Z~gO>innO/X믫nu(|3f*ںmK  ?1>>y7|ݺu`M__p'ڪR믕qp敿‹/VVVK,ѱ@ :G_Si¯9GC`hۊo+޾i󖙳fiXw^ |O/ذai'}QZzе^3o޼nݺ͞=+uk޴zx}` So-\7x5zA,>'8!C>;u뼇wϞ=!77kԬ+**(mڤͷ:skܹ7ҳg'8=dB(ap8 UVVVTTTUWWVTTWT&+,/dU찲ꪪʚjƦ`MM& B!~( p("EÑH$Dh0EѨ%M)^AEBJ{vZ/++jDH$Ÿ'~SHVfԈo; &7!bzw.’%Q#J|Yi_󕕗%%%e!My3<㽉'7A*3Aǘ} p -b WUU$vڗ_~ #G޽;+}iO= O~ƍ{QA!)t F)3 I&wu稑(0ǿ{}7lؐbB!>2!҄Wk'O~ dq_ ('Iu1h?-]tgq(1{4:n ^'55$ FYWsgpCnX{z&;v CꚄD.6)1iҤ FTp8 v'Zx? `߿:t@A|wܾy̧~:1) 3\s5;n9׿RSSg͜ W^u%Ɔuy{}'Mz']q駞9ks$aر#3ۆnڴ)++瞓!k6[<-Zy (wdv`aWڶi0R,}Bvyohw߾}7|sǎ..(ys(O׬Y}M7ٳM6ޟܨqc(^\<ΙvȪ_/ @m+Vy?/mǺ] ƛ} _it;p~#gSuOM8B|@ @|1M!V/ }>!kk:g{UF$ `.R! SHM01!\?paѣF/ie;[SHBb8υk v?]^ 3zy _$Ns &,]'7Pj5{ `r9JizVV27~fPZ{wRSWwh  YPJ7h@VQCpp dg{?DG–T믿b ޳ ?K׮?@!:/NY( `c&:w[I# ݟ`[755KN`5o=ET~io/%%C ú޼e h ;͛7g{P@i`˖-m۴1Me k5W_Q헚ZYYٱC{.';;dڵݺuHkW]uc3 255r ٙEEL=M+x|ovƌϾ/<嗻x\x0毿^xaUUUzq֫Wg';v|sa-))%} [hٺuW_ü=/WQ_.ʽ.'"U*j٤=a-aDG7xW1 yLɃ6du 3e6o~-hԈD Td玜&eG"Rr#W]U W\y`vOAvvM֢">)^>h&{k6\1KOɽP/#yj'%'m>j߫~}WU]] \aڷo?e뮽fKQ7sS^^ |дc?VXXD6m?g[,`ު=33m%N&3e~{^zs?wک&z-UUU_v#ܘA駟ϭ^SO}˖-5rTНNp8 +++JKmrr]Ey߮oeEEEUeeEyyuǮҼAg׼WW]UUS]]mݖwj;sAB`( B9vgN'#푅Hĺgޕ3gao;_FCnbQ$RY^~wVWWh4F"4-ٵ3qe@.tֿn}ĉ70Xpvn?E A%,_=G#Q\_~Y* /Z4`y9Mr55Qy1cƌ :b odv]>P^6Xv F{w|1_؆cN!Y2[nzh9*C~~SnT+XX_<)(XO)**33=`060`pѢEפip(hP@!-=}۶>_) 27ۤI`vg۶m_HNPi@#Ys zpܷovvC68Lgg7 /0༜j4869|>_hdٻ~X$1kI]sv omܽlZ򤴔dMMu:%/9mh^^{4ɉX_! bdС>B>9cݩ))]t8︝7GOӧI_͟_TwͷP%7jѢԩԮ]4[old~iSzpkcc9GGgy&}5~(ks[^h>@ _}>sXienfLo~w_ `AtvF7v…  77wS 3+Uj}1&'Gkd>/ BmڴzP 3EfzfΚ8qylF;wrm Zh1mkfW_uN; OVRRڭ[obcƏl޽{\* -/R~w' Քbΰv0OPJٺm늕+|ҥ|>rUnnvYM- _Co&h[i_tćrC נؖ $ʶiG툍>HMMDVxѷ:vfE^`!@ 0姤r!II`YoGB C͓NcB,88MԴ482!LA>S|56K0gl" {yJƎק9|JkOx *+Kj W.Ij6o)8Q%^qY;&2$z1HA@\'rFbIK~UC=HxaJjj pp_q%$$pHuU6LᴴZj>TIJL>:z`g;?鉱# =d=9Q$9p}>_L:DJJJJMKԈF^pjjJRR2*+*C.nZ ;wzPge<3O?=myO=縛p cbA`Æ:hgNh߾d#hMevgx,/ يc+1/^h„+WD"5:7 ҵKٽrT ZTSR"dƏxHKDV- j0L<%jQij Du04Кql!M*U.Bc_vESΞ؇h9A=g U=$!:&UQbbbjZVTWU]ľ 31))YHUeb<@ eIIIi.CRƵ9w͸$lˤD!$7i5/9C:BRZ1Y91IRxuB"<73< a~;M\U l24(]@),r.&{!wl֡K*N_ANԨqc4 C蜚cuh@ V%$&B!0o^"PjJ$^A gf- |Sb.{|Ň7",BلZ`d!VEp-QQYRA|鈅h8s%#9k|s#$G - !&pGXKTĖ3Uhņs&@4B),ȯPS 4DQ+c%B,d.4# V{$(myxKF Rykݿg7 1وcǀڶE &HB=q80 ߏ !Op< sF_H}${\ uv jx4W)$JN.S*ytlSi. plAfVH%>)7uRȡ]JJEݴjB)5 |GgrJEceO*!!o C?rR((?phf@.69u[V-qʂc-/S^7HQmNj9^EzՒ;wڟTyGBE}*nfRJLZԨ]P .e{]ms&ҁfQ}ɠl֩A*F-i*.oqb+v88O!b.'_'5>SUe;o!@@X3T.q%9ZQ.%{˰<._X ~wu:aƱ Oγkg)E6 u1N+k muI-r_꺌jִ(,X[*(6JÁ&i([Ԅj4~.&RNne &ї6QśsPd@n!fc% U/1Ԃ+K@#w t4ꈶZjT%TӅ$6nCa9LZ ΑM bwb3U(Fvjs{Ød-=S0yT%XbӀ1&l haK`F] t'Rcە` DU a%H+ ,kF@> i!8zW0gKóLT+T#V^w[$BB+#K6jrpC씃ex="޴l 1jE#A|bʻex bP:n<CB|r '/q~be #Ay)1-FSjɰ'Y8j5 x!(i=ŌaϒLZyrMK4xlyq h 󖗨(-xP%8@ lwY@ZS)an -), :J]`?P玅f8(R!舃#mOuҜPCBܖ̏{4@ D;N-v)1 GPb6-]NRE<ϲ\h`Oqb'G0)ڕȐ&HB:bVv2WuJ# 㺊T$*iGC\ K JcJS'_6px\Y%[yq< (pP~CWl/;OnIS@.m#0e`%+""#*1{}| #3P N $vvج>GH |z ʪPBLQj_k K$XD=Sփ5 T5߭O(d#;nb- ب݋JB|ivMxipqZL)Ƽ93K7PɕűCT0W"![a+PzH6CXx5} L0'px<_=1=E-eɢ 2dk\Tu(?d)3upX!'bM3#1vD7g>;X&_NRҀ-Oq[IX$@CD$d;fq@E+qDk+]䝌|ȃK|_ sX6 N _3kT4sRׅZKƶ5JRJ3ж8՛8*}'DRʫk_I{B }_1$@aفafĉZs[!Ф"n"l$x$ۀb^QX\Hv6ZXZXmNB+ȹ2h]lY0d˺xvX7Z!Fhbc[懞]ѭ†pjhf$B;1D_g4MeqsJj~ I]`ܒph@*Ze\zf֣280L,nȋQ)2ĉ@`'v|#B"0gf,沵-قpv'ki[]W6mI,9cz8C<)d;O bXh'&1NɜsцUNuX3G0aQţ uQTUatvNw#[15EC:#um6q=C~u\`f)qRpځ&c)E"?b. \Z52ٜv@\dym: 䲸I sq#6m@8Yj_:Nm.#=/v )faİ2ԞV!;5Sّ&FݷB/bVsdž9X{D ):%@|W_ܤ Uj9tt͵$(CJ:LM;V Y1&_$MQ-mX)m[Bj;2m$3c>kڷQ-gAF3 )>E&aY)Ņąx139NQp6%8`W I B6wZSrD{i1) ǪZ%jpQOjF'A-1=QE`~ܶm\b\cc#Li *$͎ A4w~DZ,iU[sc~.Yy!l--(.2V[zew$y3+cY)A=(!rG" V 60ɰgM2[TAGNY(GqZ!2 \}_˰ IDATĂ=Zvzͪ{1LL'QFu݊M"*umB53JEyGS^i $3S]!MZRE[n @tfWn&wق% @mTf[ Ju6-DE8] ڇ i,EE SI`hP|b䅄}%'>8F~>TeSP8m×/ƣZ3ܒ4u!2@&j' WX@0H*BE UTk(b%|OGбM@J` }U[ҩd?'i G)FX?zDHSsAxNMVCҴpsL;ʕaҬylNA4/#AMDSK99tzI+\|G"պNy$\j]Sx^j6S3n⥡2щrƜ)kzs;⧒O6Δ~!nrH$ 6j8++ jǿ(jbr`'?hBxG28§z£o˱@ii={-եN4-//бc8.=t9F(VfWH, ѓ!ɳ[qD>N>tYHL9nF %PTRN-ѣ0 k PR2CNSUva g8cex,+ϯWmu൫S^^~\NN$)/+m{GbSmy ƜAm)a \v]\iw'өOJ1=yvJ,+4R͇ir[&W\;jA<5[<>;¥235no^wQ1(6hРu4T6Ü?$0)  3@sS/^d© @ nQJ_h|_ZR!7պA4.@8aYMbCX_S-igT^ՒZ)唢b$!8fI>,887j7hb8.~ wOTbvΚ֔.-D n֞\ҍ1ЭP.[q? W ǬN WnvT!ꪪ ?7zRZSS h;]$-!#ʅq@8w_e(^ 9 ϔ%1Kn7@Z*i(Є % $4cEpb:c\"Uܖ}@Qgk{"Y=%UT  JCt*;KXsjvS9Aqb:h25555H-ï)MC"QSA xm}J.0AG2vY H'5 NK{ 6 sbZ EԀ9,38Ḍ7FSьuSTs$F.סRMyjutO R0K~*I3D :p6mo)*LԶvj5!Ae%M9B@KI0j!Wժ+pME'ss8XY!4AW)!PM*s=J`+Q*k(‰BTwBz_J*/f{6֓gc*ieS힡0!5?* mP^,A H3e*qOT] (%g:1e9'OlY@XGDkr\3vZ`_kM?E |F]IcʜR*#@vB/XB{.]lw7o|-|T*]]3K:%Vɏ)BN6_ ! /jWLyQ v~ܣ$>@(*֏k!B ux')-!}AT[ ĩ-D شYK.d'Ю݁NjX̞3{РAҳ]?bĈҲ2wڴ٣K.W !3ڳR- ٳ'4;w/dmv)=u;k z9|0y_vIݻu;qРA~hVg:?a<۵oߎOK`jVPC-;29&muV{"S]&Ou?^fN>"Ph$"Ȧ͛O;wM0C~OM|a/^|cfqm/9:q1 ;vh $ ,a]vi@)}Ν#ЦMtD8;"Tc_@)}(V+*1Q}rrr>1~VtJHH?ԩ;n~d/ VEf%KuP詧+qgE3ffeejʦ![fr'Z-(A_SȅǟZ3<lܸc333%< ñS!Tnڐ3?<[ar;C٨:dغu+'̝;YQ,]lժ?I';n$|ZW|\kqƍ}<_W}frKJJ&Nzs?_~]ͷcN?=̳K_]~s믿QxׯJV*vA8ͫڒ2cǂ)VdU־G 1Nƣ#OZ;;b7??8tO:?p<#TVV>d:}IHHHܩ W%Lӧ^FF+?'JFFFBBBN^ `>ŮPYoOm$R [ۆj6<%8d$~bw$] =]yԐv1P cfu.@zC1>I5'ǑRX `-@i!HOKc6lRsNН3ֶL=z{b0L3{NQіưo~nQsN_axd𴴴q֭[V[+Jqqq0aYxZ :6նԑGsNj7EZ<<z[*iAssE*_ghѲ g8VŽ{+uW^}eB!U gP1 f.Dj[ߖ>NZ6)rҤQG׫9=ώj@ON-0i1;¸&T9bm % 1MM봺fpc%m۶]fͬsڶm+#=l~5kP+Y|駝f/] ssY3fk~gWVVrJO^U|\$G}x^| /b555oР!PaJղeмys5 biKӘI$M݊-&y''{ڻ 3{~Ǯ ԠR09NunHedRRlB;w5kW\qÆ \X^s->Y3gڵ+ B-ӧOkEHR[gB[l~23`emu^#U³СCP_~vםX>h4ӧMc&ckjmOCjsk J yDjd#((c*L#|Z M^:b:T.:ڪvAۤIz;+3I8u# p?kW_x`v.?][qy\}?r@3\p]w>l\-{1ǜ40#^~'kjj^ŗ\vکSL2cRa|uZ ~GJL2y؀ 3/-ryr_Pv{d׃bpG>B:.DžIII?vg}օ]+>c9磏?_87o޳g/Ti~=#e?TZVFDԡVOV8t[qiw~MbFF8:l7|50괳W/iFGyѱG j˶ܼsQS]}$ FSg} ?3*22h<#<:_8tp¡P X8CBeyGA't8ɱ]P(gT R#<ȣc{rG?4#<7<#Y:B_<3$JGyG6 BGyGW=?zGy舀qyG @syG3dtGyG,yOWzGyt_<#q+=#<:f?E'i{+GyQm<#<:f/GyG:yGyG, \~4U''1F͎jtN#|J"$!?!!?!ez-#RԬ j)R}j[ٍi7Ni@>WWwQ{8bTTcݯ`7j,)&j4&FXb{%1{+H1Ă"cqwgg޼fn.%x(<HKg >)j8Ski ??ɗdjni,u֙p/T@J>Ax FQ>zUb'QKe!l$'fAb +SBdFy1#>>>#+V,'L:^B[e GS}1[ >B~*kWt6{7@W36 n }_'hiNKHY4wi$aPTq/mUShZ A/[<S5t33=ٍ 9ay@LTp9gcYQeen=R#ba(0*iPED!r^B-gj\D]v4h{v9Ѩ۶j4Q?زeKqӸaB;vw&*U*tyrO;jǟ|"HM۶mڶ-0Q,YtY@0t7|34##}…"Dbq~~G䒮 &B5/xBH[;_ɶzPj r'hj@T;1{<6rfd93v. D1"KNWG˽lZkutss+ fUp[3l9yr@\6 \7NC2GK;Ӳ e;Gq.1ůa7ƷhPЏ>ezR<*'-\ԡ3`{;R(JN+X(P*u<()(!Z4 Z&GCgh%a.;nzZmMT*iMU-޼I;rhŊ׬YuٳgUZ4sOK :0 IK~[ĹӺS$2 e əUXb'xO{+鵬LYcLTȉb`^gٱ3Ⱜ{;R([h0:#Z:M{{4tVUTt1@3PR~|//P %BX *B:r/P( ._NBo欙gG`鲥:t=BAݺu-[OZDR 63v=|݄otjy{:$O)oTs}4a ii dz [>MKM/_$H;^OLnGf;Cˣ \sWxؒdR+Zs*luoCJEfpn< !DFP*B) F04ʛQ%$|OQ|SQ< |*0 %ƻh޺ukФ'*˙ XzWt山1˖-ڭkO6e޽4ôn:)լY-c5]0>cR T6QӶăP9PjH $3>ܥICىD epeʣ7^"SLG,0ŎO4㶶&smP|Myy9rVvEYط9˺!%"38a)-2|5W0,2IC:M=Q):Hgx £ OF |y|œ(>%PyB>yلf"11X|w1F8i^Cl6Zkď;!Cۇ֬Y+H߿pOOaÇ;o|Lx~˞㈄dΔ?/1n난.0t"#i2`wEQYT'hCrXnLaƋəri;eFqBdfOB"B<% #DS1<_1xJx|'⃐GO yO)BP)_[59|.]A6Z2-BQ!bVF[n?pf͚emL4i?yfU[Mj@q|WemX'Z QHg}J%b7mlGi›B~B*&2IZp%b@ {qWR9lYjՙZֽ )it3GS9[\*+M)Rʽ(ǧ~Ze|}^, W2x&U{9L4^+IQ<ʍhϟ9r_ܿwL2g8X,̝;׬7DG_7~Foe]b^ l͓/_/%@rs*8uoCJE2 Mo#ƖQ2_ @! P@CֲLu-QX;Q$TʂW8ƊcEt;V'qf&gřSs (Ci)-2-Ϻ#B=Ձ\-Lp,˽!"y38%jr))P9&[)*(q/,ꊵ i%P~i?XLJ[# _*\).7{NQ=-T H$H"#/WVU p;θBE9rFZ Fa[" 2UP]Bad]1D6*Zx"AP4#w"ʕ| AQtӕ%?| ABEAJ-ARwIA)$NrCJ |WqS5DA EѼ4AA cP#A)b:Erem@ ;EQ=䇌! RH 9N/5F0%#A u-xMA)|;:q HIIBdGr H Z6z^^paP~Ba =AඑX.տwZ_ѸKDƬӿ^DAJ!(*ڼa mԧۄHL`6AMAR;+4oŒإ+ctpS-oмg ŭ R$yIٚ5DU*n^nD[ljTW,n]A++4jupw!8K R)gWRˋ]l   Z0! Cz  Ay B`Ԋ\!PE1jK((b)etO(0I  P` (Ca@~a@u!`|,(z'!BCT)B Y)M2K iYf)@A0U[mP2X [Fޠ( ?G?^6R@i ʐq418`EQaɌ2U-bŐ DTC ћ @X( QAw@Q`^z&8ؐUfOaKoU K rI!?xXX;f[,2Ѵ{)6.P zU&ڙmZ?h)M;?, ?wa?Hf(B fL1/\WBvSlmju? ZWn^+ M rว" \yA-C8 |  Rj Z0!  r H Rjq>9A)HA)`CAJ-+{ 4_٨q#/nE K*ٍ䧶R(xu!ncx. o)ϮdcGp௿]v]h[Q^j_.*M55Z5ݜY;v@2i1$ӕ`#7n߸qclZNrfΜq9PT7m,7+y6M[[<χa௿婩|xm'c6Sni,E]\|9Pdqtԗ]*f3^z/SҾU2ͦPIɂ?>k&ǎbXEPt%q* S}3җ-[ jbS:wckעOtNۼy3{(ُiiG8z|Ž{@ 7p+٪U> kn%<[Rg-{pjiL}(%*ENJؾs~ذѓp5jhR=L Kz-?X*`L+ң=7M9k8r85pxFOw햱ۛYMgKgU3x;~\Z6mTyx<+}ê쨽wg7ܻr"Y k޾=I*U\Jj5*uXaNDB͜=;a~S.g ƿ7J%ɢиqƍuѣ0tlҥ ~~~ӧO78>}zU$ClD_<>^?(Hg:ed,//[&dyy1}SRRm!ŊMjR)@tYm'?pAF4Y0?k׼Y^ @?#0,XѰyxpo4pѢ>}DBZRoؐfYW3AߏGG۴V=Z,ejR)JIݺr վΪdJEgrr!}1H=D*}+Rio۷OJzR'޼"FF2T:P-]fcʨF dj@@( NwOn|B ܹ#d&M4 v:,{Wә}[6_nC!GF;vp>}ʿz]ۯiG;jظ>TJtiPv霯ڗJ,O@^ Zz8%E0{M9* U s%:YZZr۶mf:-_| 5B!HBtjeO^eZɕ1pᅴc1 Hm)|Я^/_ߺ%z}+Qaj'a`zu5Gzܺ%z󆗘(LL'32}4n~fvyG=p]O)uKh{@h5O?ۼ-k,C[Z(Ps+Wr߷;jĈ_}9'?={vqC;<]9sN:I$\ޫw e4irΝGtF29#W~H@ez̘'^PHo{=jdvPHt3g.ZPٙcfW б6nj^@).,Z>czfժ:T Ѝ!{6]EE۶]Y-Qmkk-K*0PPPC.wϙ:5J@@uff.X`o}RiP_#>||-KO'aGÇRέQC+ʔaZPOu@CҍqRR724N{IH\cdK%˖{^=|XάYdJ-,Ta7&'&>)J,bL&Qj"la;8+BC=G2*M+{䊅sg_ n4.JOJb#9AԂ#9䝧׽7 Rj Z0! 1>_SL^C|HA1 5N$6HA)`CAJ-AR 9A"A]4| Ւİ2A)<LJAԂAA)`CAJ-AR 9AԂAA)`CAJ-AR 9AR'NOAANO! nDAw|38 _9A-B  &`CAJ-AR 9A"\= "LAR 9AԂAA)`CAJ-AR 9Aʏ  l8wخ R)[4 8   |38 RjkrE !?*ͦPmB `8L/0ڕ"D(B,x}(8C=;XdHBPz 9 Q"ɶAB(A6>˃m5TAc)BG(JlqH%%2d3gPP!P )>?Pa&C 1nRͦPFE(b[/EKg0eP%(ӣ2ldh 3XlhWN V2m 7 512XbhNbn9Gfmt5-t$¦fre.#605ٮ&BُqL~5ٲkf6Scm'9.`4ٮ&r?%4Ƚm7  \x Z0!  r H Rj Z0! ,# Ӡ#9ҬYf͚E6ObobWOI%q$nт_fL\D$qt~1f#dG8_Kϝ/Y"xsgLqEP9{ =Mrr IDAT,;'M:Jʷw,Po'&VReԩ P>\I>It1ݘX ;wfMm͚ ߱NuI%=~s=g~w[J)B}?#, ի^6%z҃Ob_؟9in]uyH -=%%M| -J c H $NWbbaǣt:q|B|-ݼ)uKSJ2e2'Mod5k&~k㦬?h# #G/z2l:nXݸqֈ18Θѣ/_>yj jV}'J=>8`@,\\kxV[vѢEs/Z̙ӹW^e;t{wUju?:v VĢP(.[zY0-Z駟Cx%Ƹa'9ݒϞ-_ڵk|>SNOci M{>y0Lz ]vU܈1fQ?ZvaK+K6ClK7F\$9mjtٲ4^V]M:R*VM]ʚ:uDnU-[ee];>?㏁_M{ؙ` OfϘ2gygΠ/m屏C ؍cG 6?`k#:Ąk׿h4#G5f.G^^n}FiGqMu9}.!d̙Ɣ-[D^aFLzE3f+:|;v."9B홙ÇO}=|pfzig}]+b-nStc^rŘ!66&66Ʋ_zufƌ}eChe&o-\(p$NW ;K^Sh8:L/S aPoO-K+ >Kۊ>U&.]x^]$ UVUaYg/zի/?kl6}qq^^^ .x1 ׯ]sN:m۶5***4,kn:n֭fy޻~QQQ˗/?+Wn~>|qTѣ͛7GEEmڴ? ի-vI\}떭^UT5gƍ<4淪k-b-nSڵʕ+3f8}tTTԆ ڷoo&Ǝ… r^e_+36}Clu.qOξ͆te9B`nQ5ok@✪E >~3`>\UVVi3m}qƤVs!'i3+C]bhooS Ə1zth?^^^^^^󽽼0u]zH$I]'OOP-Y8vP +WnpFYiS6oT(Ek) :-XgϞ)LES&OWP _ɓ blw [8^s!₩9 g1JB/LKo MSNۧP hؠKM%?6ed@jŊΝ:9|vr 8I1~L]Ǒ%rL/EGMT͛a&V;wԑMQv22;vj"k8Q#O=^k9.f_OO~z:] mѸqF$hӶivB )k4cO$''T*6MzY&M>x b)q|{7i Ϟ=;.Ϊmig}].WF[oJeHH{;gϞf ׁV8l}E(ANS6⧥ŽrrtU*~=mjGdaaW(!Ap xUj67_~!TJϟ/;a"Tz٣^-{p[e+;rs׮\ΎM@zԨ$VZniVY6 Vk"HLwW"7YsK٧M0JzN|.zM(JmXo` [mx}RT*NZd |a76Oՠ gZ4ŋd\DbH$z hү_?;vаTMk4vha*Zdɭ[t:]BB_@meڏsٸnFHvf,Z0>RsZʈߔ={tŋ=z4++K޼yskbh={D]זV8l}ҟ}_J(0ݕ>0uFի5d~eS{o۞3h#Wֈ}98ի̜o?-ܹ0w9͚7m1pKqqS >i& /?+Ν]vڵBBܜd:w ݶm/իםwv3glsjjCڸWW_}nYfgΜp󢭆ƥv3*<p._c*U+T`TiR1Q ]Ӵ{?r پc $/K^:@m͚'xC9cҤ'N^SD"ѯ5jT5E"X,Q?n:!>={<2OޱCD"?Ѽy\9q~SN˗bzj>lMh޼{%JCB-Pn};vflaKfx!IRoo}Λg>tߪbV[oJ@f͚1cFJM6Yb/r1+oܸc׵%a#JzjX0:ɓ':vRUE HwD":\PP5x[*%w$   Rj ZJJA"CAiPJAԂAA)`CAJ-F<}uj_1.=E$[ XdjU1swS:9KY}SJ\/.JӐO yw%z'4KWSNe[i-Wg;hR !2 j%t$gIzz:kpK& .@kf&X0f:oP(,YrYDq#G47a:r]Z]_ǎi_% .XVaKyV}ǎ'N&''@*ݻ8pG2#"VZu̙ܫWϟ;ls 5䫯233ҥK"蓏?aW^ݵsWxV[vWfN33<`ˇv2m˖={0L-~ vTޣ0aQRޣP(<j^vW(s^J?hzaaOWA۵momtvR7>v C ޸qcرFz4MۿɓO<͕H$AAA͛5ڵKZiƣGYN+HT\f͚}ʕ*[tukO8soa78 )RV,_}=uiBBT%w ȹYg?T*զ͛˕/!dY'9Slٺ522rÆ 2UXhF1..֘r]n:n=sƌ V5;>}ڵ7oNsJƍ+V'Fe,7Gq:-wpj̙Fϟx;qǎUСɓ'O81p@c'O4X ӧO:kW]z^tcǍb@s=:=,ݡ]vqh-\ɽW'LhfL޷o_KQ+Vؽgq7//֭[nڴy3bb5ͳgϞ={v͛6e=gΙ3gn`Þ9l4#G232h׼$Bp=:Mm~7t_|ǎ?|]ںuѣ7:**cθX// DDDDDD,X0_._޻~˗y&m}.'x) /IN:mۺ5Ю]t[rq wmm9*v2͛6E]iFWlEO>ŽJۿ?0q G]yӦ:X͹k+Wxxx̘>Q/ogC!NVO0Kwhetg tK/7NG ,Xh(`K/^xq?\(c~3uZz9aaW\9}#F@^^?lɓ'vv*[ܾd3:{7waOؼyKZZZJ7mzXށ MRReD2o'lÇ`Ѣ!!<==AE ٳgR%'NSv!zHݺv>C ӡ#<#SLQe{7ÞNM2-^^)S&s֩yI2]Yz v׷ (Jv0bx*,INJ6mۘ&kIز4iĪ5uZMQjizǏHNNR/}*gZ5n8IcxG~5k8}zfݧM:cK.E^/\/KԬU2'{%$C f˸,KٳxxxYav}Qݻ%Iʕkر{fBqσssrt4m<7^ze:n`Þshܨ1ɶK Ƿpؾ}Bӹ H8ekر,Q^7.Z-hջG_~b+pK׮·? zZLl̙ӧ̛?)* lt70*uk~SZO:uΝ?رA_;vk׮b1UbD"#EDW8(: vHQ!f>DUV-11qΝիW碀5V |pK:w2egMKRgؔPX`AVd2BСi~N+wKLlҰ  !\Ti>=T(zH$nlwXܶ]۶<{wݳ{]p['8ˎ2`3Lz\ ?~ӦM={ևv>^@PDFFN>>4zh63{0mIRbUs)$[Wܻ%#{RRR\|| êx:{+ hѴ@ pa%+<>ه~ bbb C8g0nܸаԗ֨5Iɇ\smn]%Ϝ>TJթ~Y t́\e{%;r4+3K޼0iDvQfgp/wK/>bq4Mϙ3Ct|F|~AQZĸz>ߛDF* OΝ `CsڪdK'sV;ÞЦuXdIDVx;1>܍BaKHW+yEa`شiӳgvիE};ٳg9sԡGFFO6M m|Ъչ'N&i,CN[;ԊjPo~c-_G5kZRǎjڠ ݣLS;t`yfreGZl ' ПfՋ/RTaÿ7o{ez>}L5iܘ]aF{w>?~<سGۚ[M.2Xs3[=᫯鐯Imڴy)wtf]e!@ϥ\xФq=?*"=E"Ѻkwu$*Wan\>WHM DE] !!~SNL38tZQhP+b /h5-Z7ۋJE_^z /d_۞{ccbsssuڅ]lf@ XjծݻŽ''%yur wC¾]vk!++*UdF2RpkV\R)k [l?~"66&)9YxzʪU޽}16i$5&7;44ʕѣo3XlK'[?XreLL б÷ t\.w!4P< ӕJJ~ q``&55~B1A)b4M| qΥQRXEA'`om^C9A(0oi EQ<0JA@\z O0! o6ܸĕ_JA)zA Rj Z0!  r Hť' ؆BӴV-nEPSe/9wZ Dh:R%_2ŭK1,@ ]^r .R)?vZi:Ohܤv" y<^|\Ã[̓^r ..E8CmV Jt*u)hN"TJym5z)q dg+[VR>IQ+W[rgLa w}pu% aZj#ZN VIDATV1 cy]j!nOxIxWT=U*'ɄϓT~%5jg-Do !:)ct|ŵ5k\N5qH7[ƍV`LϺr>s*# ^I ӝpAwCIWϿ:;"C3Hp&Nr}w@fnS&NּxɦgG][H?pԙwطBAAPtewla<(xKqJTׯnT?T|q%*cb?eԼeEc]+q3:'ӗ*O&F=߆2BXzɓ'SS_ zHkլfiظw>DFFn޴9&F[> _,[*ƍŋIsǖK^e\yg~lP>w> K[6Ŷt۶>|G ü~~ӱc'擸sfH|9d;C{KLR+Vصk?f~(RfpA܃N{I]45q)8a6}Ɣtu&BYAmxJ<-3&q{ժU2҅B={׫G;uxY Bѹ3,ᬗ?~豃ff[KU^vdU Z.]d.>ҹӧyfΚ5x !&L8z١5k޽(ܡ?KP%*NW"R<ɺ'eW'"__`S24,{֫_ahk^NR?0y-g-{5w 'pk׭Rڵk ,/K͛>c޼1ߢe 5./%))ST0 #;sPy1t2GԪYM)S (Jv׎wg}j /ګrq3\NލoZkN= u 'u)ۗ6݅kÓOo~SMM7Ij4fU%B89WKzue @y37Cn 5{u}Rbd;sjΆ„A& aaC `h=z)MWr^^SN{r#;u8e}@bb"a ]nC+_n -E9p<'svQ<W/P CQxaKBժӖ\Ib#Gޱ}Rk`Cx({0"A^eg:VKWe_E##/+JBqY0]]fR(J%bYJʬY8i)ꭡ~6mO=h=Uʖ6KxR)n1[cUH>`ܟ8ho5 ~Nh4O<ٻgπ JA܌3?n=/7_uCD`~/3.^xEӔ]e[hyĉ!Cwkԩ#GofX⦝8yI yL.K 9\ Lرff4b1ƣ04("BTԕiӦ)O#ɭ۷o6ed^p$ !\@ ]>UCDDĽ͛t#*}7籇O֥kWom˄O`m߮G DEhGEQwԃ7=ͨD_01^%6Y=ѱ~ +C޷Ο;gm.^{6P-L~ph߭x>ҩ3}dRf2N:'Ou"5o\?::iOL~yc73=SS\NJǏ>|ҥgϞl%^{n)7.!h=ښ|4f[kJ*z'q^UUOZH` y{M5t׿Br|»bdR 4Md]Q|:J@ܽ & ?~?v/6h?IWԡ(9QTǍJ%채FjEURi Pr!3j&jKPg_M#m1&=HUU۶x~d$Y'c۶Zʃjic,!ZV*>onnmm將˲\.H>7K+%(J2JjS ð,0kK+6@4M0:@ʹSHB^'AJMtD%,JY (9@dQrȢE"D% uc z\- *{04㓓dR) Ar]4Ri[yǹtp;s5{u)snm㘦J"^./WD.% oRʌEf[iR XIENDB`luckybackup-0.5.0/manual/data/menuTask.png0000666000175000017500000005164111344740106020073 0ustar luckybluckybPNG  IHDR#% pHYsMĶZ IDATx]w\{n 5vŮQcb7֘DcM-1&n", TQDz\w{{{{v~9;͛ٷoξE23f0At)ǒcAN.j>3xDLU' a1 !Mlr2fR9Èˀ#6VSDKj Aa/GH5ELa5D:a!^_e3Y2FԂk*t841N0fZ$X24$$է@q]L)RxEhra:Mtvz0y9q&EZD%̔a ņ ڴi ű:P`gפY8hPx L^5 ׸"A׫u%5GFҴ #BrY4`E7@.LG= ScRR|ZVGE݈ɞ6uo,FUѯeϨChO!Ctd>st$ M9@ru6$-ٝs hXNL1 3R}GAƎǎ)K4/C3kiSR|Jef7dm&3!-1 2`$=՟SDFQM;zv[l{x劕> ^xq-:wus`'NRP(tww>|)S|>^P(>|TZݲUӦǬx;z}Bڶmg-[>r8SA;-ZaÆ8OBJFT(FPR.W*jZ!W+ZRj\!WB.+F^YQrZ-U*fN+E FƔ1JPR.r劫ۮ]6l8aD??ӧO?|ŗ@V=x 4lЀ?r0PIII۶mS5| N>Eb"A 6vnl,og4pʱ`|"322Qܣ'N֫WL&H@x<0;#П٢醙,u6xR0:zB0ؘ֭ZsgZ`A[l{gM6[BԥL @,/Z8~)$i1Ru-CCxboӧnGGGvڃ  n啜ܲef͘Aua׮o֫WoTZYY٥KgJZZjȓ]<\.JxNܣGtiii54pXJX,mll .2|h«&wynC.΄4iB7ndzfRRW_MD N>ռYs01ā[C-LT*ӶmFү_Ǐ/Yg?|>i|Cn񜜜w=} PxիW[r_{xx\>cr7kg&Iyb%Jfl&Ah6Fܔ !{zF3&Qِ0$+3앖6c\Eɓ>|(D"իa9O L>c޼yxN7J_ ﯿ]9P`kk{IW770=Xtg榉@s JUPq&̺KBrw% "jM.2J ސfS{`323g̘mΟ|M8Ç*j䈑63B,{x >|xβe|հ0R٨iS}}} z;;cG>|˩)E˖ӧMsfo֬Y?+J[n=q9sfSn޼Ϟ?GĻSRC|h\P(5f\P(nZ.Wj޷"Vtڐ2va6-CxZzg @|?tffСCP=uTӦ,!e7`b=@2hpI.1Pl0>x>7QSS/AY%]jӺ5^z7m}/WT [cp6 \ViQ_zz"*3 _a w8 |i~:1|^jH]zL, dnj)w9(Ybǧի,~SƁ+)gȻ,|;0&:yW%e[W1;nq_eac( Pb.薪1_̘!8 }A d#xbF:@wr ͌QkF}-M7sS|6ƢI0{(^1[k!"fL I6FZmffFE]lWV׮]t(sjs`mi#/Q2"Fud$l6(ӥ3dl =T_ݔEi ouruhES7<=ޯ8(/&Oj{Tg{dX=+SЈd23v $78$޵RRP*[cL)9*Lj;sLeRcFzHu! 0 p6 bln4U տ?V1xCHҒw LжmqAlF_LIQ3Q wi6]$hժeV- iPz"}k]͢PPqI A0'IMyԬ@pPYj@  q=~{۵ooy[>|l&;z B9Ի*ۺu+{l @V-|ER`D L x"[Lz\e j~)I W.ʺp… `K7detBlf՟r: E Qg])|Ę 4??yuk/_"HF|?g(==mӦw>/^O=իy9bUV'Mճ 'Hj*A gϞ{,AP8akkKwu0 Ý6nr2]tYx+ΗPnF͠EN$mJK.#O&[ni{dd^hbc>[UV4f䔕yĉ/nj`_Pp~Qu5lҰ0P(4~x().:uj~s犋 YK.9h^dɒ YHOOj|\ aaaO<9s欝 'J2Aq~ 6,`2w/?|`4͙gwߝ9}mޭۧ7oEXBKTCY;իaC/Y!՜;w.(8m۶7nܼ?ڵo")i޽@2>LeB~~ŋo߾q<ԯ_c?rhRRQ ðp[?z츏%0)e>GL!ZnզM֭[ -3g]]ݶoq1'Nl׾/ك3^ybbb=ꖛ>258R^Y\*╉?`0;Jz~^^BN:?Eps?{qceK^vmݺu|`_{^=Fw^zK$А&LPTymӦ>}X[[ -Zlm\z6/RD"5kLN_KjJ(nzԮ]:(Q- #N?RuAΞ; 7oGC$6o|pe#w~E6m~Y ¯$Pz VI*I+wj(;.,,<33xR\[~Y1}Ux9?ދl%s_:v{% 0 0]|-T|HD$K}Ν;OԨx»Çbbc"#߾cvCpEJeaQ!f`|>ӳg.]::, }Fc̟|&ϣQb|\ߺwv[ݿwҥ+;~"6L4ì oEM.ePdƔC\"JK`x WԻD71Ja~7_B_r,Q&Ʊbq.]v_L8)))<~~ ӧz2ame gSUFW3WWה.]9(4O}6mZ}=Hّ]0GD)1 Տ& Æ *{}x{Mā*X#MPjx/[q"BH(l7_cbc \}|>7f(y֐0qē'O&''.w`qh4Jz̙ {1Jٳ']I|FynZ2ٳo݊啕Á4D0;􌝠abqјs!BvvFQ*)gN4i k>~DV?[n[OKIa ;1肙(%սhx \?}/0Fo޼j.e't֍a(ٻwΝJrĈUǏ?dxf#Fx˖-֡SNW._9s&~CSU´iS&y={JKKt~ƍ7n,1Y|ʍ\#?v2A''<yN Cf̘N7xUѳ pjiG5-?ЭۧbʧϢE ɥ7֭-wrr;f̼y?ҙ|3g`?O8YU?>qMb@>>ݻ}wttbs1G,Yワj1eV j=zJ$kk#G,Y} WWgX·QGX]"ٳ?y4<ǎsT)#!{u#GJ}9x$EMڒ+Pq"x$ 9~"1$C6#=-AoZV&UM_ْ=`W0(&bZS,7c 5fƛ:x> O~|J*// ܼyf[[b1ćƓA @M9'!I +?6mq-4"{.ջբ(}ûČĔD4۸%JxŴP'(R0Z,X i2sLL7Lyͦ)t~~3MA 8֭B"Q&M2up(x<^EEEZZV]vEEENNJS%> "srj98@(9;9q  Jrvvׯ_^^i3(V{xd2ARdRorӯd}Á 8V8CMN-q3シ;0TA5|Kb\Pv=0ѫbyzN R|`(zjH$8G|hLrPTrcnjW.V]H,EU&Bۉ\*o:uJ8}*qP5T@ $ZR_ III11[x-p0K6~8(Y+ b@H2C TJ%V6/ *`J"[x6hS0r(X3O%%%ӦOϝ=[\TDnlfvw+wۇ&5|Z,߶UqEQYy)Y$" l32Q*dA P(rsst>,Sɻq惒{OK<~Y[2+1C* 5yeLBBB^zJ$~6|xyyyhHA~ .]ڪUKPЦMK&Ke.FyP((V֩<ϗ mv6.$"!Oj IDATh@-W 3SNQ#1c9rS#F3fdd@ǎ;v$s0K+'ī mTVV65[Z ”"繹ҙ<,..f̘IΏ{ XO@T',! Bet_C 1'd93"%)jf @ `vb>}ӧOt)%''ߏkW(Q(^8`S<qXPEv"[[[H\Ͼ~[WPTAA</((ٙ2dpPPOK޽z'''_v ͚5{ڵFp@*V4Z"H}HppyEE] Νt) )S:99O4ۻɓ76Z6K)4TjZT×GI/|(w^Rn߰"`HHHH߾}-Xp~IGES}ڈ î]~hGGGRHG''.] {9ov7A-ƶk׮Y_uSVUx so}sQCj8PO 1 BsQCjgڷoORׄ   8?8:thޑv5lԨQpСw.7/;8̛ӹsS)EAϝ,AT:;9w̙xi ""rӦB)SNZ\\aƨHX@n0u~{"DO$9bH$"r0 [tYpH0A~Q"-[qOؾݭ^x)8;=T*ٳcbb?fTԟv;7444$8x⤉MhhHyyWZ( lZ[Yr@xT*0 -,+,Pke6;DG<CnWƓ+).cNHϟ Wu…%Ibbo6=|`߾s@P=wy;9r s }ј[[[??=z@DD޻w)_M|@BA8KaPO'/L43<8UEVEӜ⬼ʼ|UAA4eWvСC};w\͗,6=lܸw^y7ld&˖-m!O/uLpHe2L&4h/@'oowwd]mڶmРAAV2 T"%(h xu<+' "~%RᆳSG^}FQU8|P`]@@\ǺJa+l2;D նAkٕ9hl:&&&::z ZvD'5 ϧXXφ& B0 d T>(YhLhǟ FYʌ-ׯ?t"I/7>ƣGQQ>~ЧO˗.=|ERRee#diې;pĘ֩+uvNb'GQ(svrvvv֩q8vܸ >yٳxΗ_s\U5J*%5왳SNedb6gAv˗.WV++塡֯_"|>s :} 1(D*Nס@ ,Zxvlޫg:u|g N忾V&Lu#66fr~ǎǏ@vԩ~. ik66'uܹo~6"z-^(b/n8Իv}CjВ/bsxx )+wP)4.X#*DSh5 BsQCB5 BFSQQ$"b{{1TҕP#Q egТE+wwqqRSM{ޟMUC˱cǎfgei}Gu,tBBRHxT,L:M*WJ/^1ҰRT.WCvPl˗`˖-ݺw;> TBk윌 Jeo_C2 a 1зOdfd%%%ׯ۷:"WEEEгgON@<)JiI[}{yzzDݸ!HPMJJjٲZC ͬo 00PV6b` uZ}رKii1x㱹 +3s[ܹ`J:uwLx"( ࢽQիC*ʓ'OzxxX8>,`հ%%^^^Ϟ=߰qJ$AA|:pұc J3;w&&>W*J21;~{Z_*|ʉ'TVV{whkk[r>K$Dҟ wy9\]] 66(cڴpcǏIͮRP`teIR D\VR1d`{6>"\ XzIΝeP-<<5l~f#'zc!ܹ$onҥEoQߥV `^;j8PXCg9(_b*00?t9aa(s1p:C?Ø1rJqF00N,A I9+pJlYC,E &W9A>Id.g(4[8# wgz&_ 񏰃@b.äBsF·P)4N9(̡ͤ&j8йK]:Ix]c{B\P(0LTUjLdV |gA=Wvm:UV't޾gO?6l{Ȩjc=P>o٭QFQ(ŋd̑VAaEǓh^&%LJ:{wZ;:6oi޼kc*(4VVVF HD3FpGGiӧuűn]FËA'[*06&)ٙ -BP(0Lb&7/&$$߿IA 4 ?od׮]۱}GXp3!!JS޽Njmm޾s'>zV4i2k7:yycHTťP~zN9s&-Yaaa[nv|y?sqalR]՞>}:888%%ð-ZN8r={] -[3nln=|4sf5+oUPhye۷9̘W.YmfǯJDa؊+B/9Gy={G;qqq?4o޽͚,i!$Ɍ3|}oݺE(X|9#>M8|䈝-{-F`Y=Kӫ׬ zݻwޥQYxJF|fyW9}rv6uk*z֮% ٫eӦ^+%yIҕ+kRWfA III0}t:evvhNr)==MPEEE,MY%uU8ڵkgHoYYYfk@=Eq(؛^xoܼq捽muIWZ%~ߺu7 h_)+3o{y޿s-H 2ͲyB"ֵ<){ vz;wcĄ] XnݿKP(P( ,oUPh(֯A4@A|3~={vloPU5l4!董 `]tC&@,OˡP(]t%2%B(..II/>xsκtW=GDF 0RΆlg={c߷.WȧLbv4;=Ǻ ;8ؓsJJJԮg/rxS~-?ukSrԲ &q{jb7tSv[7oI)ʩ[rpQCB)g9(TaPlj ̰]~yxְ&Zj X$C UOMo@@ I@$F%B <B*}Ᵹ#!C 0iyXTjZBcgi%nj277=7ۆV ~=zҋr@ԪE~>~`mSJ$#Fݫk%3}!?^ L+4O hEqy^J T|FHdV v.**ZzgωF1BHx,aoZ_}KÛ+$rTNZ(/((UV٫r;kS:hVXE:uƏױCڵkkܼO.]z_~e<z9Ngv+^d~sJX'Wgp@yTjrydD$oԨ+s+$x}V{;vj@^{Hwgݳ72*"b^z˗Jn:>tܸD\X?Q՞Uvm< Γvv3 H+Gq@$5mdĈ?Ĕjַo#F1 L 2BgɓeZQQ1ccY2 3_h5OȿaWߦ=jX}xF+TQ0\\ňRzD|5ymoѤ8WmڴZx8}̙mݲct2ӄ_~u-L5a O !BeGFBh4Ly\*ze?&r_{k֬&t5be`-KLL̊+jy_0iF`su$=4dcd]`]Fϝ{vuVfR,,,73zTXyx%H$BOl՘UljJ')㾶A ~E=>ztQ#11]pDt\r,Q&_|I&@hqdH$ѳG~A{w9[V,wҥk._~ńpB%''߽{GCЖ;wnE,Uwt}_n:xen;>?҉, bXMzpWRy-% {p/3D陛Cs4JJO p!{Ç +_jU*ufffHp BH(l kxG.<-g w_ .טXB!W(nG>_.d޽?R( "zğ;w@>_gA}`Yc~ 6m pT̯C  RVM+w ?ͨʊ \#ɭOBp+WJ|bǎU/.\زe #wǛ7oZ?/m&**?  4oKKεj2't͔#G{'RnӺآWwt/F=ءRF}>ry^I&5hР6R(z.Mj5-N-+x[¹o6VuU֭;ںVy+S e2Y]U*RшbW7ݺݷuɎ=&NTݪe+RYQQV[g7N۶˓J%={q'O"iٲenn^II }#<'c/⹸8&%%Rl۴i-+JJKӰCz&>ht!|~޽RIiiiEE@ pwwQgG,hTo{G}`Yj$E2w [#ϑv , RSSP`R)E:EN@}R#afgeeFGh(`4,PhL $g  _n(-)?ϟ҄Z,9px0BjΎ&Z&˵ny 6c%e?:4jJi[ s bDe`:'@ `z7\]!6ZQ T6~__iZPP  ŗx7` a.Jv#VC@ȫm(<;Cj\ C @1!Q0to%PtL 5(]Jp[3:Tt2]L w< C~#?2! Ax?M!ŕGc IBD@Lb >F@[2.AX8Ez C L3?cʏ#!)B6 MIfƁÇ ·P)4N9(p ͡FSh5 }jQX$J|FQ* \`AQnݻ-G -W(uEEEyyR)?_aÆܙ?>OA :d l%(tAa]Z( 9ٹ3~# }FFZ=''v>$(($Bx-?0h]*-)=-#جȫ򊢒Ҳܼ܂¢⢢⢢¢¢Z[X\L^=KKJ"#q#*FTիW]l:-#EB/(a(Z-Ĥڟx2dhHhhPH3 $4TV2kAݻNzHV7ix_{wH˗.mٲ%<<\$|6l~C+ܽR},>|8frʨ(]ƈȄg 6CjeWh4ZV5jFѨjF(e;coAAdg?xA1ݧ¯];wO?Fsq Maa]z/F@pp%Տ=ZXXgkޓbŋ._rqaАkݦCw[ݺwۯ_3xРK,ԩӧn߹#|, vك3"2r]bم!#99ݻ]\9rZ^Yack_\T$He2Jf-ɬd66y9...f[|P(lݪzI.]Zlm>}X(  m٢Ţ ͏xM,\T,E$ Eb;[LV_WV*WIT #խu6a׮!ҦmWWW:V=qKi }KQC]V Jثggg@6m>m۶%MJJ_Ϥ ;Cjϖ-[*رcJ=h&kd͛7nՊ] :ڑض};ʮ*lZ!ׯ__G݌+ڶ EeZӼI3O?Mm46t`B!ˇݟvȤ5vSX|>cɒ%߉ވTB((`d8,@ Lȴ5yN%T+ܿ&qئQchwrڙoo߾۶m7jΝ;[YYUVV8ΰWwqqIKK{[7c{șiذaBBCC^%X"{}Q0jޏm߶|rҥ$bB,..oSI/>x0ԫWW9X-tey͊ =|T&zѣ?2x៥4!JDEiZJ~…oZmZZƍQÆH5h@زek``PYYZ~䉟ќ/q\Vz͚ . CJeFfMEںeK|SF$>~֭S6 ݪU+׮7OWf%U*U"WB(AaBjp]:w*O8!RhFFƌ3 w?1Q\a xsb&a4jrX\7[/D蚈$[{j^m0U(LKC*&X43au]a&$˼y"r_566k?R6*++{{{o{Ozaʫ.sjj5}k~KG+(Xoʕ+b VǸl޾?_V0Mƙ){TρGzcwaP__uu~Z|tlKK[DQJKSӨPQqcp`p||U_׿]TTx֯[OT477\yp>Ƹ=n[~<ҴꪱΛ8 ۶ar-m]]M>=M] aUEӴ!C7fedX0B͡&==/.^{k|Jt[W9]ι !?)1o(眛i24i~w0V(M%%G1ƘVmc `Ʈ ڵaVMq}£9y|y'Jhnj *i3cIJRcJ,%!axpj?tIJFGG332K.Xx$iwsc@=;$I#!ģAբB8[lYVf +% Ji(޷2::=yTBnnW;+"SZ]B9T0FIY<M1sx1䤦1tTai)LX>wv=!m-H!2Mi0߅C/AVW"fښ:5gO;~lX/ruTIENDB`luckybackup-0.5.0/manual/data/Message_OperaionPropertiesSpecifyFollowing.png0000666000175000017500000005175611134631454027016 0ustar luckybluckybPNG  IHDR@9n pHYs+ IDATx}w|TEm77E@j !&$t < ( (}񑢏N *= ulyrn"* ;3gΜ9g̽AyWs6FitkN)`.&wuE4Ҩ>;EG-5UF/*2TV8d .xa9s#@0Bz7BޮU)_0`@0 @aHn R~|@1 " l|LC26)yX!I-EbU$f.+ILxe ؍O 'fpxwY ̯6aL?c6' Vy9V0#(nj]+6/oVSoׁA_0|‚b[=Q` 3mG|K A!̐5@[X l ɤQ.BL75 |Fd H&2H渡q عUA5K| a P\C !,cޡ2U);b0CP8;`A]ʀLTR@f ;%&:J+uBQQ -T充VnGtqC #S-djЪ}drgqYDtqC'UX]TŹ4y DuB-cc_iF)(/ DCfXs_S8J ?K'>O&7 a@𦌖{E(ƠbJ ?Sƭ!}E6ä.CZ׀UWܮahQDn1}^U-S@H#Љkp1!Eb1Abۈp0BH3ڋm mե9sg-W]N3PQ}7cQ] H; *$  b.X@qGC(|E TuPIʃNzL/`ynZ3E[#Wq,Lr8c[6" S] #%6)ƘqqF|1 rcX`h+B n"s*0Ƙ ? A>tAm@@).bBj>_,WYC&E7W} X&,D'a5(˂0rR aj0;.4;ί2Ȧ:T[j/^=|hAYxPls eqx:qQ]']2/su: ! 6|x(8<ġ8łKfzQ$s~eE}9T?&J! sGGk1*ĦNca`p]Vbv1 ؁;0 Ae$wrH`@a Nfp˜a^K YjVf3ɜ3 lMee m㤫8\?nIUUt](bC$~1L `%lކ. h \x>y. Mӡ-mNAAXIjټiJRѓ8'6Gzڎb0r刮wA*-.aљ$t| .@vtY E Qd.Z}#`AS6181`I`Pug|!+-2+`k٧]xv}څ'X`q0l$L mtG\i͵r;\BJ Z y#v ]hPxClߤAd 9V(@11+!%iHbNT[mቱ'sjlv[сຸ0`m \V"*:~E^=yQ]ˆŃB`Xtc|6j!L-B5Ȁ&md4w6'}ΛM>ϥ5z$D]v6V_]lScIm#ܜ=*)ylo/k] -BwbgQ~ۆJ.7*1jǺŀGfib ۯ}Df!~>RQ}Á+ _cҾ`qNk^zIz;6̱>hxYAmlӑKUb}#ҏPB2A= O޺ba:|Ѽ⡉1m-[w[M} RٱPRk(z=]$TNuQ}|O H`å;4 u9x\/`.t8q~" :iwGd,s%HeWXM K3 !PZ-ءGs 8|EnNUVf).sg@ hfbGVE% Jebٕֈ/W'dNVJɳ/|^.\fc`1g-q׎^̽R7G YCx ! 2D,S@ (Ki'"Ix}5kt̚f|\͛7=>Y%Ij'acΕ? M=]aeRzI[u' XNjnWw"b4Ec pw` ?8V+ְ=a[v6*ZjENVc,6Ȥ6f] I.vuHƀuP^grk `4:`fD "- CE3_llOX(vP *ck29]>STpbwvhqor¡WPa@2Uv o]ƀ.c P\iG6^-qE$ XY㨴8ܿ erAn9n!By Vþf: .PmfTb1%3a3L qL}/BL٠$HA 0q#xfJN˩ N_d,24iӱAj4zss =c;o\<#Fݼ\MU6G%9h6ze 0:ӣjYC2`m.U8jԩY%+}R&|[][d|j19 zl(`{ylqF`DJ>Fz @#>CӐ_.}]>9%6"uZL/f TeffS(9\WKm- j,ΎB\2)!".o*#-u,L)n1bqDjZ2 Wd`V؎_"sVXa;v{G 2Ka@ 3ɕŮ&RƧ NYd@ 1!S akQ 3[LɱDN ))63@mO22Op!]HSco K; DHBU :E?~mhp0}EVYeIbV E`#1rm >:^]5v,WDTU8lA쳖 =&]D$5N6<2@`8]uO.C*k!>]l.I>ޒ-:]=Ktf!,VkP k]4u@}\٫5@ $d2V[]dNu6úFTյe(B`vFj5ڶqpj϶T8 1"КK`2ұfze!,+"KϻkjGAU|Z ZJb|k.XfDz=Z՚DʩfG4*)՚Jksy5f bEwppE qEP)LSFD$Skw;h`N3pgHV5)lȈLk W\ہ9efA^^=@|#@Qy+&L$5P  ݸꪯwpeu8@ `7BI`c0X%!_æC$I:"YpBl ʬO%i,^mܶ:3o`Ǩeo*rx \Xi?zC֍OfWUX\~'stN] } (ts[Sƿ|s!sa,WkF m_-Hmrۏ XLǯT8Agsk)Ohvw#ɭ|xl#;Sq肙>#RAmϻ m/Og+FujrSb aI*%"6,.c*{e2~:cA7t*Uv%KchPq5.v%GN]2]ri <S: ž*^X_bA9O*f2[?r$ =y^%vf;GAYjkϞ: 6~RSsԉUU6{#4gΜ؄96ceי}?׺G;$)Md˜mtz#0![m R b! NQ)ms\d-sD+@Lv&Itce rV=# ÈM ̲*حy mKm_hQA`CQ yr`c{ϔ3)`v M?܈L's~H`sQpLuM3rI5*>J5j@bִ2~ F#Y s @G 2!eiyC9uG/ ,!jbn$RSsɖw fsZbg2rǦ^jh)8[ZE@g Rm`!Zyp&BH锄&I eqHC$Ds>OHFZ{qgVY,bQLV&dHmKy:z(k}}CAѸᕕX +1Z!31Yd@ ,~QB y#$uD7sTѯWp.0 UȄ&d@Dm.Ag h#T dՊ"X>/Wd .'cj {\er$ȹ$Q/ᦴLo1'ϮbM cl}k/\ !! >>^é$ IתZ \* >zCc% (A""ccl,@L c%NM1d:.VA@L,m)dRΣa\2 aIF) +W!\tTfi&v|-Qj0Xf(YaĒb }28VڵU#TX~).Mð0P*F2ȈJ2ZlC h@=$6sU0Py)'dpX@S4y40,$֦T(&`NR83Aੜ]SE ܀duCgs1:&FHyy'/E5n ZuXN4B@UY~E~#'B#bÂrLo@ԇc0LMwc:AŞ x4JJ;HR3 Sl#JV XM Ariba%D@ h*TYEx؂TJD{NXnuG=rF"&:0,aT ϊ!Cb2O0S91S|9NrR|PU" 0L!jZ%VA1&j(5GKz٠Õ56 5lܼwU;:_UkWB"$@`clpdԯ^ahjޡe~Af=c>,i9`DPlF оH tUĝ pNcIs!/d `C⛐lxA x LxmzGfO)p;0J@?SSڨf!VUU$V"Q@ V$ a5 }e¤S0ȈoٓTY8KU j[EFJ+5sj*k͟@w^t} _ gWXIWt8bG겶D> IDAT!z,fi1,ϗ3HfbG,/,,R=qF" q12)kaXE [c_'"!Rȃ@9PezbGo0d }]JKDI% dz]ldDE%2c\'# 2Y"% H2`8B,OmA(X1"LwV6Q$XSf˜Kn#1wNFH0$+: >{ւAN/wneW;p 1@,PHf^^twj?ʫӡ+$-] Lk? 0\ra5J~=0 P*C ,bU/:aъՅ[~Wxw|Sݠ 2RF'OY,ЭZՄZޘ9ZO$TAB^/`3wz/iukj˜hݦ@qJafv 5L> 3b ]I6="e"p+Nz6 c%d@ד8o6>y!. Qh^Q T'-c,.+uz)%InU<lDXļy,ggPbwU.&EVuXm@H$B=m1> *z_]v_'Xsn{8 \1OQFyeU Ϣ/wV扎cO~~>>)#}!4H͙`:UO  dc)"hQ boŬ,gEfZ*pPV 5_`R*%80JbFOc(n͋cR7 x+8ʶB!LX9WE%Dk"+&8aCGPٍy59Y!Q w`O{!#[j z !}TbrFj_Bn}ZBcǎ(11'r %&&][wiWJt^1IG!Y]]+))LY ;'')2 ]n*C{ALٹOMM=s挌qIiiNf?gѢw;wyfu5:]$;wOjvvNbb"cAH))?b|KZصk׃>D !$NhtBҿPZh aYd*L͜`mѬYWZۣGUϐԩSo۾mUV ٳgі0C*uP/J=:FgF̙3IW,?rbnAs<ώ;VX޿Q>xg]8kL7Gc{J;22_<XOzșuP걈]+\yZ(<+~Ìa0cf|'Oԩ'N֭ېCׯ@ ׭_?t谄O?dY^lY~tG/(ec| &tu!6lZtY>}}؝g~뭷wާO>XO<9ᇻt6x 3bĈc>r̕o&~aʔӧO߶momW&$$TTT&ԓO<䤟}ݿjbbٳg\Nɓ?P.] n:@S>/ӷo{9rdΝ "nwQ#GvyС[\ZKڷofZرcNNo1.))ۧϏ?0`@n^}u؞6(!!a̙/† xXDs9֭[>}>CbpO:u%--u0S>/d,x}GNHH6lXz6 PPXؿ{Ν;y䄇Ne֯sФ>}|'も=z8}ƌӵkÇoM'9rd׮ ƍ;rp= ]K׭KKKKLL2el&[o@iiijj JNNkN v1dĤٳg4mƍ`ѻ&N{PE:`l6M%I1UUU>̠Av=k >|rϘ1}߾}ʕ+KJJn388}"wV?>B[n_ܹ388OE\?cǎK~[nzMKʚ=kւo>ի9ӧO{{2xȋS_p8F,^$..~eӷoҖ-[CCCĨxFFF\A׮0:u ݻ3l4iҠ={̞o}!q,-ׯ_AA)S&N޽{_|Yg?w&z)S-99pСC~AC15yNɄn۶m%_r֭ia}}}_|ᅇ5uW_{sWxyɓ33 K/9. ɓoִiwޝ=iϞ,77G׻v>x˗_}ӧڵy;32ȝM{'DnP Ydj ūwgǍ3u:dSLo4ht|%I"lvռyot:xWoݺ}$HFIh7|t_4Iz;v[g||c MߚثWo;nl@@n`E;v;gΜiݺ͛{1Vbjmyڠ77iҤzcwK6dЭ[v=Y1ޙq1ٳg}l:zh7ۆ  k:|x츱,Dt>Sz).E5UoJ399&Nf"aFS&t;;nt IOەC;2ڵk78- !һwGeۧOa2Ů_^55CoMرTھرclܡC>mؘ5kִkn4HIIݫm[z cǎ p8^2//߳P7 пW01?NOԤmzlŅ1ԤI+VpBv|jRm1XNOۨq=YϟOKKM%''¸xvS>brNի׶)dMlYnId 3ba{;,m6[rU$sd 2Ҹ.+߰AqI {:xƸ@䶻ڴu_СO>~W<0xE%@Dx),(31!&6r  Sl$QF{),*<Aً1%eq%Hh1d $EGEcKJ^\R_8/BҰ+BI&  y!"" řJ<&քn aaa8GwDxDΝ=r-?/Oo0oMOO׿={Ws;u4rHպfӧmذkuq:v9bj]vi/UGaauѹs{(kA~`.^c+Ə@=AM},]jk0I&W8Q4E` 2"s_<^sr31`9h<~ߘ˽j7a%#O;Fer 1)q2tIHG;(,( #kh '[M z3_P]:cn4vyd D 1 W_3ř""9Χ, u 8';;2" '. ?/g2 |bܸ^5}?yrUNܻ۵N8<̘{,,(W9`oҳ'6lp8N>3a /ZV߀˵z*/tN1.kI$@fykjj>jMrĉ70…ܽ;++n}CPp0iYɇ _}{Q"6_lba )=SN?aqԩzŋ ݧc6np33wѿ~@z}ر6_ةB(Kk$w.HLܙw^/S\\_`ŊC~Yj`7l`O>?^};vl v=33sGƎ~6!Li25f߯>rի (A޽;qFÞ?5_~{q8_}?UekzFF믿>soj{j~vi>())!N޷woVLweDaawh΍|Gu0`@hhQ#Sz<|njp87|bÆ k曤E檪~<0~!HS>'""GKL[ha~~~Ӧ]OϞ~. ]^AN{ѥKlْ6$CC/^pᢹsFFFV(,,Rŋ.z}2ݺuFעET2Sy ygҥϙk2Ν۲e+xy.oҬ٢ C]pW-ZTZR4|p/;s欙ϛWQQ1m۵tiǏ'u-~^(ub?lo@Y_vH}6Nߞ7_|EְP6T}Lxv~SqvvNիIݓÇ͚jBjhUPTl (;''/771|Ytȍ'-V ](7]Erώ5ꮻZco>MAWܫO!BUVȨ ws^?A `L߀ZcҤIO=n`yi}]'V%1y { <߫RZ=/4~mA"Fu'V]Wjy,g=h3z-k8n#uu=_h^y?NWGl?O^%7G !5N5|_ B<=5[߅F e/ƒ۔3IDATm$4#O3ڽS,7klQC(.dɒVZ`]oit H׻U_|ٳg X̙gL]х@8cڊ@ tcC袢o?aÆ^b?|ɬ&?`;={쟚駟ӧyݻw>bI;֯[׫W .߰ag-)-}go?>rO?;{Fھm;8p C ٳs\.n>`}~7-JMMMMMݴiis,itu={4hР{dYfݺu۵ky`@-[}իWoKsxWyFEe];W 447ޘ6}ZVV; ~ч%%%~dDwڕwTXX8mK=Ν;Ly~9Ο|of533<ƶ @YYشi3>`ؘ-[L0?ƢFp=piIYWR\AAAOMz߯w3&}̬۵ko۶ vK/Mk۶MhhuRRBW$]vm6m =Rz앾m8{'y55n=oӇzH. z~$%tM@]cHE7v8<"7(,,lܨ y6nh޽Ņ.\6l)lݻwra ;weu^ZVǿ5+)_FFFuPO~~~6AOR]cHE76 }; ڷ/11^oO?<\YYXXr:dFG#:ulRrs~^@JӷmK [^qxX'M&gH1 uC6ccy~ҍ cbb&M4}ƌ:?/t˖-&=58ml^⃚GYz=RO`Uj֬?#F7ټE7~B .|͋?ٵ[ע"[Y{;hPHHȑ#z1yCǎO>E6jؐ`˖}zH۝m@eF4IFt3BE={$'kYY4=PFҬZF1RGitKzSit`4Kc$2JMM;wNyYmdȐ!~= &W~[7|襗^ڲiӦ,^\R\̳: W23Wyitp`@@hXhl۶… 2vf3g}))#FڸiȲ|HIyjoM<l` JK۰q{3o<ތ 75{r4rHku?@ܷczH[n/)1UUU?o-:r޽{ҷ[e˖EDDҮ bSfѣիVefeJޚ⋻wZ0G\RZzaa3|۷O&Sf-jk׮]rJT[[Uߵ{w6m^HN3gGlSWV&bwopEEyHphqqхGA m6{bRRɏ?}t6m<ňflظq]:Q$#>íM4wP7,=Z?&;쎎;.Y W;v8|p9s}0Ƴp1]a o۶}?(44OyKzx e&S6o@4X[kUUUfٳgL7ܣ'7mp8Μ=c^xi߾}g/($ žm{GVZvbq8^y[6;={ڵ=\QkM>3ưg0ŒS`͚}1cĉ5aȐ!wqoǎs%-taOg ~L9 "%m=|[,v\\%휕`km_† W;[J42!H{-FZPt+Ŏlthp:؋ޯSZW F#w<-J2|{ؐ1ᄿ[[4t#{z&- _϶mƎkۦM6tڵkeL./XoF>}ss~Ynm|[oO5uSׯߐ>ᇗ.Y2g˲W_\zU 6htBt-*((XpW՛5 :rۓv.W^>}엫 Р7 ];w6lذW^ba-''oKO|~/n hna|oƸ 4(,,$k%%ǎe@kpyyy$ݱS˗O1_,-)fW_zI߁z앝%^t)++_j?uԈQ:nq:t6},k2Vkq)S<ܳ_|ܫEE֭{ᇇѡCGG1,z7z>߀,O״}G6lo~^8?IޤMӦBLPGvֱQR W Lt q^T=A8[n˛*Vhsl} 4yv=6v\.'T*5˲r\`u%0](L~?8/@@!;ȸ`uFϳ`u¶NcDbUhdh=}UӘc%=~Q#"Ct `R&ˏ{{!9-jwW9e28ăH"Jdջyu'GKde  *'2vŗRUHa'2p, +Fd %١NY2Zȷ} )x`IDѐ LC 0 `C 0 dι5@/8p?uY[ I;z\T{8h w?]/]$7mt?OYwDt3sg6xD#pׯq-Y_+:Psi|sIENDB`luckybackup-0.5.0/manual/data/menuProfile.png0000666000175000017500000005362111530663250020572 0ustar luckybluckybPNG  IHDRiL1 pHYs+ IDATxw`%B: -BhI4{oRnA"M@)T N(Hrm~lr9݅"covPVf&B" -P{zC9U Z! U)'KYL,ImI7pQ B(J=)lrVBHXq*E>φfId:u>:x>(G-!eHSVݻ{j2` kjB!\XlB ipῥ'hVlG^ߧo?gI= 8hݺ!·' V"Cqĉ'য়~:q}{=x0aBNO8믿U3OwO>zضB5s8Ն;L<+wXvyڵj ̈́I<MӍ7cYz*fUR>*Z .n,S`0OP*0~V<.mVxIW5_r ⅅ|]Mr=H%aÆƶxٳٓ8"Ŏb~lmOԩ[ܱ3<<|Za&=k&̜9NڎB֮[ס]BMj2~'/}ѧOo{Ӧ}#0L˗/۴qӎov,XgΜ?'TS !~f{bb7x=-6L1WޫWO zݻ1`M3mf˖-}nխWO?۰qSxD8e˖n޼e]->_xe~խWnF Ӧgڵo*\Hbb+xkgaQ H׫EP$ſ5\.'''uʕ7n$U]L\?ܲuKvvkׄDRٹsZǵ4q` u֫\SNT1bĈyZӦO͎goݼ9o\!O8 jٲDDDlcǏ}8y֯bqqmbcc'Mz:+˲QQ0gϜu9 */VUV3v̘!ʴi"I ~8s *> .V+J]L;׷}-faC!bŊ;rm_n[~lɓ'^z?ű1~ov//J*#-vJ&I $ MB:Bʕ+8z۾عc}61R_}uQeb ˲2ip׃a=JYL̾c9ay[hg,f Ν{7V=1fYk.޽$O#dVٳWX(;)T(͛7i&q}бCM7,k2G˯ڋt:)Vǎ>3eY/e.]2ej^Y>u:e} رM ?t۷WhR.ez&qQFsc?XCdYvQиI 9t1N:~ΣF:N*fddP5%yرc:uO2՞aF=XpQЁŋ]vKb6q^h1|,tܩgR֭[KܾC^_^lێL2EvоW$!Snx dzp45yd;vqqq}z;%$$SND&kRI4а]ѴiS~pW~zab Z&_$yy|ٲ׭3_}ef%αzs-d8Ξ {S8$)?_``y6t2ҥϦRt]pK.I֭MVBr44r2O>ݼy2@l6h:aT[H$ZRz,{2){Tr8 @7P$I ڼ yr]^Ų/"(!sO3!(pT,(nbT/뙊~IJ=- H/x.P\J"UB>YYYzuZF"eclh 2 {*V͢&<c\REBXEj_,", Pe""cI&)J!3y.oeeJ)Y*5-d \Ⱦݗ ds\xh?PKۖ>P͙ܰ[z1.;"ku=0ˋ2(?D7\ycֆӆS3[ Sl7F,KRYx^^^۶mk)UsJ>Xvg֭[ L]Zւ/qLyקLݣRVW}- ѵz^rf|*uS~y߹skХ94!/^6t:ݼsg͚kWq,;۾6o-ʶ&KC=fV(ssrTкU`ԸR&?qP1:2Vnl汃s{Y30 JU&;#Gtjd`سgl޼6nԸqcl~=%3L˖n޴y玝 .~D|˗-_vMy^4hPYxqǟ+|W-ZUlݿꏩ>"itw˓}ɸLatWs ̳gSx?}Y3;v%\GKjg4k֜(  Ml6ҵ+ԩ[W=%rl#F[=5ver>Ԥb6O^%8-y74X=?Z=jNv~'Vr %0a)5vUZZbԎ(ئ(;͌\h۾ذ~$Q|M½(:yjDZ2WkQ}n3o}wxaVI3PXLg-@gݻ?ùsv !ԣG^za2{YIfN?4oDN9f3< \+fsLnn;-ިQC{nWځEG79c<6Qahe<,8!5i:v֬Y`D;| 釛<{=\C>}?{ /8zHi9}mc+V %'7"7n9RaڎթD"ju.]^(p6-ulHHhYΝyqd''oKd``༹s X,\CF'R&Σ$y2cT@H$2c[ܨ^!5J y*@l+WR3ƍ?qƎ]h2r(=z>°aÆ:d@:v@6jH ,QFBl.ƷYzʕPx {UXbw<+P*O|)9 r?`*TJIiZ*WE)hJ19d`0̘>WϤU>Zc^o17 Em۶Wz]Mz҄m>}P0 Y>fcK/vO߾LxO>HLL&T\O)H$<L2IG"t>*UJJʭ[//$4[l'NltcTPTEegW(aӌ(͚5;xgjk׮ҌST&S4~S*D( .X[׭6#EsuV͚obۗU*WGƍ{7}VfwqG=EQM49~x߾}ݺ],$jJ=)+W1,"/.*M˄1ҹ9-}~Pee~dnRQ A_z(BAU %լw]$e\r|%/Q kRTT}.41?IieKJ^_l-Qd"HR aE$"(d3x\D5X\+EDe2x <\k-(uje;w06<@X~c 0E!RF # _!D _TPB BeS&eo߼IRTV|}ȿ(#A! aPA)_1+=ҺE^*LvT&}3<Ͽ$ Dx,"_5u:\&1ƀqFÜǏA"Ir*#GSJgq&"=PajOaoaV! k$6<}T* T%$ހ1vљڵS0 6oٰ~òeKTEXP> "33SPr\a7V;wxVYߊIKaTOӴRd8e2Nt?,TD[BoIQ-vewNLUiaYF7vڥW$![ܹ[FuYYYىT FΞ(P'wTҟͅ&I!aZ:$J%L*l$!\yީ~ "*ʘo>{͛75k:tKD![&Ç>IĻ._C6l@B0pWA8*A@ac@c&R)W(x!_ ax _hڮcu0.V>#3]WpIoI_\Bt{/;i&SDL"^CT&!FL\d:~*_OU-E#{ɳ7V3ȿwQӽ}3VPQ;w-Μ_~*mQK"/9k}ֳgmLr?LggϜZʓF*5'Vmku%%D;ߗv,V]^aX-ӉRj|V+#3DW)L"5߾P%='kZ!pA/C'N5g,_o/X4h֭[J !/26eS }/iO,M& }ԇ۷9C(J.e7oعkS(ݻwZD {*U/Ytɭ0.ݹs!eVwZ|HeBޟ4I")Xtŋ`رk׮e"SaU$\4jF3 Y!yjj8{=zX|a߾} NwM:>@eE;=R<|x?U2竳f`:ܹso^xgp "3ygA5o IDAT$Oc96@^JM5zL柊B1`1 R]+8,.x_'1_0snJ =w  %x (H/tPoyЇfBȂO/0dBMG$** UxnOWѯgUҋ[[?a ž6E?Ho\dov쪤H11IkCݙHy[&!*Ik$5(Ƙ8XeY+ē8Zy?=%>> U~9y7k߾ F#AN]|L&+gEEN9={fŶj_h9WXꫯmڴѵ;.4_ڻwn7礙3 mŋ-ݻwJpx 0w<((3;.3i4@I6Vg0Mz`,fcVlb zhMFri1?09yOZ|90<Zli0`yBF_NgO_lٚk`yyyZEӧMԩSNNk%NypL #1:WbkJ8wH ׬ (J?@Jʹ$x7;*d+ywʃ1 8+#S6 y@& 6M>` "9]8>%K?|ul͛6c/\8ꫯKQUիWWE["T*EQZ600Оѣ l4(M;hѢŗ_})tsZmbw-ǂ\iif9 ÕT^O(00nݺ.9y[$ujK$l9m4}ȑ.]8r1˱4͖1L0Ο i߾}۶J|I}B$IFFD $Ef>>*lMT12w"C`N$I[ol4Ͱ *UjUÆ xrYI ?KI('Z& *U BDSMcJB.eYbQ hpbB<ߏn!Zm&Ə.^]BԩRd ҉w~~),a8I 2y7[J٨@@2s##Ǐ_zxH59x3LVI$|=V.]\pI&%E^,ʼH??_? s|U"6,/9X\i)5De2x QDL"^͊(&RnDp~ҒL&L]bsO4~j_q)#LVMI3|ΥoԴ~"ړK!ěGw'a2˲<ϓe}p2!{ %8y$ɼ<є}j.AyE0 #6*+SO9Ϫ +Rb_^0 O[om .? 컴緬~^(ԪIh>FJ0ƩR3oa¥r‰o|\sg'\`S,~{i+PZ_aY#'נo,Zk~H#wt޽[u!Ç= ;'O8>222//ի332yTҸu:]}ڵOI9'GKlI*JRDq᛫l]&i0w7($bwe*cݻw;x`hݱcq0ƻvni)WL/En(xH_ūdתZMdJ0Q_^DWm%J2 Krܹ>r佱c`FaРYn܄%ĵ6l۷s\/<Ai9}~j˙ Wl^DTDvX?lW6X4u d޾}#G?uq?l6J|ӘV("C۵RpXwsS*{jR[^:u`1,aVgʕOQu9Vk0KFd $˃Gݜ81(q Ik$5De./.c ƀ/0_(/r>60.'/ȋ dHt| GZ ;v%F7MgG:dev|c5P~ej?GMG( ~E^(\.e`@Hpa9GDKPDL"^CT&!*Ik$5De2x*A"'-"/10-DsGTWx"/eS&պowzh->Vj3 Aj֭߰VѣG8M^^,tƍ4~E= `%5 -l6oذa%֯ONN|%-Yҵ[M6._l=Vwg@ӧ4puNrʊ#7o޼uU1[l|g+q2Y,Ӧ3 aÆPfDia^+׷Tj(W\U(Vk 컜ڵhϿ_tq/RURUV@ٳ1v }[gϜ>3vagR}z9>uS(ӼYSҚO@TTT @))cWznSKӦM ,,˶Ǖ2͙;{}]XXAiIM/+gW\H@u2sNC+vm&44sJuٳj&N(r\ʔEU/hF Th}w+Y7ЬY3>|xҥ'ܽgʕ+Ik>?__se$A@cG9Wܕ+Wccc#""RAҢ%?|Coۻw/ءéS?ޡcGbc[oy&M"""VcŶb`[^ٵsgt%kXҲiX}0];V-iGl%C)&mcNeٽ{p/ZgϞt`9-Xuq1b#6l' Nivm6n8r4--M|6lQBOmtƭ]vlqݞFjXҲ/qTɺQ5vӧ4#Ǝ%|4 '((ƍz@TT_7 پNٰ)zz׆}KbޠM3kҸү_7x]$gj&n0&.i'2:X5&)###O $2L*||n$_rܛSIE\&5De2x QDHyqo(H/- <1uPFQPxcނq1.Yx4Eq%:[(]J[҂LP赴0^h@GD%Bdqb: ]c:\1Foďuu^p,F/#p1zE Ik$5De2x OΒ$8H:mqϲz"/)F~/\9cLQ{&%ͦ|ݳ n?@˟B|S>]phӏ𤉾B0zOJs%P2ܯi 'm|DdIqi*:PpjC-""-a9"l gB L 63!r&D>,^x^i11P]T\$?O8ozZrtTݗ1NdxgxSG=MjP4@" /Z?ĭ0ze VB5fф.292qR|'$Qn"jW~9,$I)kƬ66BlTڬkpH@h@$WFz4%&%i;,Iv̙8bꌴ/x8d}oqwM%-VRgV}I EIwXƓ8&IO/x%&]nwnBF48'YB&}Q3+? 0ն%KY|Y}ٽ{|( ,|`E UjW͉Cܴ se鱛LF -ctرcBb(JZI;;:Rw20'hѢM2 r3jJ^ؼ|>h>R銢̳:?l9$sEeP\GG@Z[x܎ ;ܠeK͛7711* }dDϟp܏pgp(d2 $V(\`%]KTT7ݸץ/iZ,YRQQnP-0ys/6㜙"̱ŷ] qYBTlႼ ,#n7ϛKKK_3%/.^ [DAR&'(ȮvB]9s䍍ňuL]ld+9:>gn7g}ejɭ*i|>˹XVE)"==Зޏ )=\EC Vk:(63!r&D@΄hj+qu^>Nԕ{_'{2ڷ7 oQA鯇9YoF0F=@ɷOw o;}zК!i܀YA4zuqF PoːH5z0ы;М 63!r&D@΄ì\.`ppaV#k"rqk4($A$AN@&'ď.b<̙:kNn' B" 1C꒮^Uq H).nF܄دq6p(apK瞉YY`c ;I:z Iùg}nE>e˖MMk P ᧺z -~%'eaq Xz9?jfW\Umh L(:;Sq:"f8mF>7<᠜N!K6oY>zgvo~5@ uOȩS'ako?d[m] Ą'ϝ</̽hl LpN'Fwn8yb-E D~3Ka!βxCTV\ؽg5>P U+Wy&2O{27^ ,QQ?8qۦlrfaadڿo+jkj6n(m 70zҫ򍍘`x?cuϜ)*****eQQQeezX|||zj*Ea)2C Ȳ(zH&IkHWPx$Io0pNOUU0 A0 cX:;뎜6m?1i/VvŲVw2NQpe9^ cY_[0`Y`gSdd[;I};Ed7j2YuݳVHu!I2;;-===E+W0Ro~VWW?dEVI lM3=$]17iiN\qիT~WCi8.2Vܻgs+&%'C㶥DөEQܾ}gAY)?j׮wĆICb0۴u+{Dڮ]7lGSazlɇH$)YSvѣK.=rHvNv\|\Ya㏯fv仼k^pag59ss=o߾~덉%%!qh49=q<_(x9O`bKJ(jLlFܤzc.:]ԩchVEe7A&YHZC$5`iU>{G&%Α~ #AL;&޹tk b?.^8 tyX,Ol6[Llby+[WB"6J!`N'DsĉKd9Mz$RŸuw۷ǥ:KDd3|7s}OSH "^?P_Xz~+!BLğR)q1 ò0-J{M4iiwf޲e#SN|衧|ĉ=!ukׅb#/w#66f۟%%/]tɒfVVV?p ::ʕRuGi&׼&T,g?{Z;v>>B477ő3Gs;v^3/oz"Z]wSp0U"<Ϗ5ݭ[?o Z[ uHO]護7,(طo_RAH2e[N93}߾!a={ΙfHN V]jkSSS 1޿oUmb9zfH$111]3# Ŋ+M&޽0DΛ?nϟ7oSOכ322ou~vm6{LlA?6JX,w :nnn9j4ƘdZh4׾|W][ZZzv+ʘ;| 듮<[9fk'aSYXz_w]\hDs~&Bg鈎14i{GntGKn0݁1&8|dk{1GS9µ4ԇOlcl;0&u }^<Fs xFS*(|a<8pmӦM[~s,--@kb׻z*3|XjϟmVWqZdɚ#3z/O(;2,'''##ԩ?޼y5o0 3tP! 4ob诰^[)nt0èQ NlQQѪUvw}p1vDCrш*X9 X`7TOgn{ظ®qqqx,Řd|hCkC_eJU<ϣ޳ ϬފkGiӦ?87qr'''wss36lؐv}yyGQ([ly#)Sh}+B6$ 6w цhCB!!&1!61a>ӑѨ?/G|xҤI۶O"w(o/,,0a›oYv 6-+k+2avnΞiilxv>vy(PTTΜ:񴎓tQQǏ :HWG w{KPKxaL2?"q2S JNUd8Nb-)2WrСDZ]]kbRb\^^RAVh!Cbccm?bpQ(*J.P(r2xp£t@9~OR*N*N W$'pRiz^'X8&luLZzk8yii'$PkHqz}CٛtשcBmhyflR499k>_Änk(J1hL..޽2S Wӫ1pbJpد^2x//`[׊[+r Ӧ=rB#2njxA BO ox5j /o<@JB« .^{f!1o%CoHؙ3VѨPCv.vo9 m?8NV|'vs?+8ydVvرc_{mך#FS e޳[X?я_IGЯ, O<ɕbcQ.]~m."&իW[&}:%%e۶m[6o]0?oΞU>nWXۇ\RykjǦ?|uFzig%۷O?xץar++x|c"{֬7@~~` H][RGUUe37WOѮ'>W2C6 &WB$׎A:NN][9Isr,pǎ[cA NX-U%.}]7nN sXhk0cǎg ~֛UV+*+K\cK8LVDz_lsƌښڼAժUj_ qk ,BB K^`p^ tjDLUՆN" !uYC}J<``3LsR CBR.+ >,\_= , F$'s1ZQ(*J&bJ1k}P+z,2 BvݺxԛXWv_C!@0 ӫb[~W2"7!@K7/x?S]8QQi!{\uE1B}Ȃ ӫwy8ӫk$!=jgs0Zd# ]M]7TBˣȝYܫRUP] UHݪ(UP] UP] UP] UU2*N*N*N*N*N'81E!IENDB`luckybackup-0.5.0/manual/data/InfoWindow_TaskCritical.png0000666000175000017500000002762211176021632023025 0ustar luckybluckybPNG  IHDRCu8J pHYs+ IDATxwXWoE-RQ2Uںkvhu:jUV@hp 2 1yb 99yr!m!,BlBl\aBqrt-u+χBQCaRhK,B!?zBfBfBfBfBfBfBfBfh7nKkeQF׷l蒒~dfd޾޲!TvM- aB]6nkoӵgǎ1,!ozNFߺׯ߷~r AAuuu/\H< HܨQѴ[o{^:0((!~liXx#MAvPXT!+W 3glv=)%=VE*76o<{  }_~a͢g)iePBZdMS^QbR[[ۍ6Xv-wG;iҤ)7VXٵ{//Tٳm_xnݯӦN?RRR+L*N@A<{yo@p괴)=+(H@hțfzzzz̜ceeu)2 5sfii M{w仆&Op?`@Wתښv 8ƍ|+SSR{{z)f) nB4d_ǷO}}?6mܡCݺ֭[Ǝ--+ lK4' pwrgYYYŞ=ӭ@ u3--)9IAMAv2/_ߺ|r##+W}z!F'zzz?)9966Q<={վ]..FFF.J{ ر{b)Ni!y7\wr*UOByVBfBfBfBfBfBfBfBfBfBfBfVQuuuUeekB!RN& 32UkYz_[_z:66]fS硉;YFff KK###U6FB!Exq~v⠸_/))ڢB!ʝL8^XXhcmw|뛚tnBr)ɴ T|BiYZZZѻ !h6!h6L:K [֠̚)֏(rZ"N@#4iS?ZP6 ; 8'5mDأ޼8pdB!Jsw6c *\x]s z D}<:iRw0v.SQG74E6Zs„BQO?&0`Љ Fw-[סKݺnݲEAVV+mȐCb0۶mp#8wcyCcxZ <pT=/ xuV]& O~ZkH!e,)}EsfZ]q._]<477߳w7BCB$dee8,I'yyyI.؎:y/|{Q}ʣ]ܗچjG!Ɍ={ړSDxxxp͛6IZW@{'=>=k2FvқR<]3pa4BH QbQ;HJ /,4$55U֭[CP@ ȰDOm`dOa= lGj %c*{X0ڔ(BZzmgϺKѣo޴{^GGG>}٬zP(8HþĬ?t;!0Ъ@G:gÐ`?A9* ~g52' ;BH.^  400^[[[OO/;;SN󝝝ߟS__/ـ1c;*oX;vDyֽ$s *sPx`XlE'.OGSD=^c7o=fLUU__ߠ//$.]i8... LJNf.ga<<R`=>2rH>WsYG+8Lil fj\#dhzb)!fcM-ɥ#NȪs:wFB͇$?XvO"h'#h'#h'#h'#h'#r'~\VV&ݥ>e|͍;cjKKK=-ZJbɓ#!EPo'ᘚpLM>}VXQSWk:IQQ++5kJ5sLZWޫŇJV^M*.#MYIB4ڕ6;ͭ&--mEII1Mة҄-R>׿[o߹ ^TeiJAԾ׾}{??<֦υ DW|@nN8/KQwu;\v-(0k3&&ZOecm5ct~u5ɔ:tb"޽;zԻ6Ns~ Y}{h(@У{k׮A^Qyxxe7vڴVxqZqyѣG}shxo^э.\m3铧K--E*++.Χ7µG[JEXXX8v+.קhAuəbPk5 'NpIngFf֮{..??gދY/ի+,,2e f6,==]jvUUU11ѩi7=z]YY=ȼzZhhe%vѢX.\h߾}޽L}كıo\nܹs?pӌ1ϛa/Z`aaijj*gqӉ=ft]]x#;СCFQ]]-vUqF*$!p233KKKKHH`lɱ>8.=QGǛ<.>}!??۶m>>ZPP=/?cNJ.X1c† ?{׮Ϟ? ,,+RQOپ=NzTw ڵ{7=}͛6שَׯ_˛>cO?OQ(>+)rc;J 'N:UjN$(//ӹ-\ <|KD+ퟶdݧr&"5#W|}bQQԴOWBS*,,,hog_PP oLb+kkihiiK4 ;88(./+zzzÆ >~رcݯ_+ 8:::L9tutx1e˖ZZ;t\[[#Q|]]vjkk?3Ƿ=NP'H􍋳 bƎn|).M'RUyӄl8wwE|dɀ +,,S=zu444}#Z=nT|Ec+Iifdeee vF+ݯd;w<{%v7^Rsmmm47aaat| BU2aTK"""&?r񌍍]]U-J ڤ#"":(ZzM:vݱ#Kf=E}7XZZ2vqeqǚ7]tYzMQQђ%l/DJmo̙ɭqG3˛7mD+**D߈6\$qFyh3Rq% !ͧNV[S+**.]J;ft^dfdDEm55ϗ9RYY#[Vq ɺ)=88Q~ ϝ; ݾuK^Kمg>_\4*jTۻve$ڱ#J6 }R:/!CX[[3ݺw0qwJNN23={vƍSLNIIJ6իW?`b99:L9yn/>|QKaCp8M6~<{ִiScck$vUqF*$!BNoϛ;7$$tlccCGvprte*2@Jv[vibcϟU^J'bbbuYb+k׮]L$.'NOŬƍ(((o+XbuI(.HhhSm޼)//go.}q{E KqK.G?[jՀFqppعs1cG###Gv…͛7gʕ͟`͚ڵuu=^.'f?^|O?$ԩSN:M2OKKQQ\.wϞ:WjY,;N 9t萾UY4 6T$4Ulco|;5k:TIqSС۷Gɓ'@mmWogϞe|VbMz+pyyqqFĶu.oZ>>>NNII" چ@ ?bENNNmvwj_Rxا3.R2.xvg`џHZ> 7{/p#ډ=, !hLGÀ }K j`<M0å(Fmv, 3a7F ;Yn ؿ/]?wS!g:8^_2| H :ӾJbeO\?P[.7䬵/&lwX/:czBBhNVo/)n|cԠ*avD}-^^t[^ ?qJaM\q²-iVN?HR1=B({n_M"1x'" %+1Ck?>%WQPT,(HXrbo~3:'2('DcAI1IBy~6OÁ(V2m!?+}!Ji/BF$ ΆBH[L(@V߄Byv2=S*jlE !PUB!v2B!v2B!vܜ s~\VVU"qn=☚*D/4i1uG !o"5vQ䘚H}}4VVk֮566V:l]]ԤHi˖znjkm^Bڎ]ܷ@}}=O̱o BRY9&r15l---:::{^՗xzO?&0`Љ RÎ1OÇ,[ԯCݻuݺeB3>L۶mjk+ntAϟ?0OOOWZb VPXv(ꔤngai+U*vyiȫ;J!yLJ@ 8wܩ?۽{wrr$^Lt srWYcff.8._>bss={fdfڽgpwu+WJ ;( @Fgbbr:4K.uA5*xڡ (y#n/G 津©iQZZZ?Zb:vkgg/ٳgqqq=5y7\+;aݺ)1lUO'~Ղ^) x DU1<:SU1-R< U1n(Y)KT;>A1@'f$r Hƴ m_\Eapsڲᬆ Ԗg8IDATNis Bik-.|zffQ;HJ /,4$55U8[n @@ o@YQ^.;NΝ ׫WGݪ"CU)F*ng{GقBpj!(!~Zn%%% L[[[OO/;;SN󝝝ߟS__/oehhhwĉH<( i>SAiii5wJVb{}cL;4!c:ODnIʆU#n B՟8x[OWk+mk*f#߼y1cxyye+W5d&lfw)̑_Y%V,@ڢ 3,%%kkk6xe`5<vZP`ײgLL1UdbN|:1qw=][kgg''#KU"eM<ࠠ#EC ݻ]vM2(@ Xn7xeʂ(>j&:jjLGk&N n Kc٣#/Cٓr Ґĉ^<^x`GDʷ Ɨ]yk.Ԋ%6ဪrVQW9 gϤ}0}Iʲrw2 $q1>S}M- G?Mz#n _6sƌ^cNv[{YZZ7)s''Ǎ6 Ʊq-~Y3x=݊BaZZׅBamm[B0??-q>֭/**>)' ##=|% _nanؽm.۶m󫓒x]:_rEޘLG21k %%%s,--˪U|>4!&PllXX(3g|xK%e˖SSz5sP(<~x qH-KTVV8p9qjJDQc[PP`kc}xElld2}Y9Hƒ~23ceee/^edz򋬬ݺKHH3t%ZִY-9G_Y2Α17ez0.GG(~7SNB033ki)#/S1BnL3>>uɽI([{E6;vSTi3!!YlvppǑ8㘙0Wwu89s>aXGל\'Od{ [[)S;nܾ{卩t$o73]]ݓ'O1!!Ù7qpUy wnnN"ޓ! 9)  t)Y~R--E7СX[/5Ƹ<2fXmmpwJ0`<:j̲4-O[zĉp%ʷ< gel5omY-+KsS=죆qyްalaa-_*l+-R6pXUUK~EEESپz;vD-OK-wssS<֭[(//dl_XX`go/Te:hii 1αAr7l𘘘f?~oF,@_ ]l0r/]bdnjSS Pv{ZY[7m:**.) xt|2r[4cc#FFFn6|TuGJ5< v@vV+,K4GiM -zԀiy=RD>(/DWā)Zߟm>²ѣޥ,xʕ+~dzg]%>={"#1O^>`LUr7oE -,,Tunrsr,--n.xj#(=jIg KGG4dLqҥcFkHx8cߒ#G*++utt6U:kkk#Ys޽݃o[M ܹsPq֌Q}}BBBKW3/.~]j][[|qr ܶmk~*@*/ZTQQqʕ5ZfQz{IOxnߺԤ;C0O&8@ 󟏿[U.^<(E3fRkVwZZDQø)۹tbbZj@i0.3aǎ*P+7CQø) .[Ѵi xiy$`\L4y "##-*m~߼v5kֶu"W*7'˫wAf9*TIU](ϟ?/..^7h!D9@ -rrrjt!͡YBڌtiQuTՅBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfSoNP_ʲ!BFFFi+O([Z޹}ͦgoB^z~u5JX/PRN Զ\zBZZZ3s~uҖJv2PȯjHr#BTeҝLD! zBfBfBf{u*B!iwG0B!iw2'G6̃BizBfBfBfk|m!:v?CuٸRIENDB`luckybackup-0.5.0/manual/data/eMailMessage.png0000666000175000017500000024721311531203472020640 0ustar luckybluckybPNG  IHDRusBIT|d pHYsMĶZtEXtDescriptionWindow Class: kmail("tEXtTitle"luckyBackup report" ? KMail9 IDATxwxTU?S2 IH'P P`YյeW*(*HDHE @Bzz?&3rgNMs23WιwfZYdN?+2h4H @ hT-)QB}w)/*8%IH-C8{uJO)GOxS@X AkGVR1M?rwPZ|շAɍ$'$PWW`@|A kG_1PeZ],c?x}6mexO(iowĬl D$'>V?BsrO6-+Dsύ) SJN#>>>f⨨x@p*"IO HƊ'}mO@r ' ?X*lmL1L6W5XA߈X/KgB$z=X늪J2L&,M ,3jxbbbJd2QWWGCChZF#XjuX  UYm"+PAVrX*g[᪞ o'?\lZMkD5VXl\"B(dՊ,Q ڄSCiZ--HE,`Q DGP@TL,5u4J+#}*5ZVQ$I`0pΝ;Ӯ];+++9TXHFF:. Ak$4 Į-8jWeyխ}+fcly[i[7m'[!B"ZcN+ے8"db))D!@JV|L&QZ*ՔҨSVUKi=Y/V'?3ݟy|:foh4*@$9vgqqqqz` >>3zF@ h];ь$<#i&!QltDΝ(((s߶:wHNcOǼt໽}O[nyrLna2֭s4SM~~>9Ydg#F$¼r{v|2t-'Sa|rsv/k:nzx͡Cn#G'+$C.yrqLK>:бcqA;)CQa H;jADd ©5* 'K1Zb` USZYOUl^ h_TڣBC:tFvd2Q\\L>XLLfm5 {~SN>} +$?cUV O!?ڪjS*2 sHDEEk׬a5[?+}aƑR`$WaKСCw?QXǏ/ࡇD$Ǝ{oC 8ϕeϲ(5 by9Bv̅&wApڲ$~NM©5ߒ$@LU]-?8BeV̀ hܔF;u9[Ɯ }YS}&ezjѪu^;"I$&%!Y$^1鈋7!.aBNDE FV]6S̊@9įG^!/[{m]hFGySRRK/&dW(6U(smZ`:d!!ȊAJp, $%+bTN[6n9w˿̫&--'NnoT롴qShʯ6 eL P|'>..d}2?eo{sNxcbh$'IOBQ̓7w:sO**AjUuF*_f3dS__hדMee%fgO <_(CrȤ6Љm*F\mL=&::.]NK. .5,--Str[o^={Э\yD6m9I>b1駟uFO:u?v.:ګ:4 :CrIxM9b+ʉѽrsuFO+*b7Dn]ҹ_ƍdfGqvlgwĉdgep5st֕oEEE1ٟOVV&YYك.xHh7^sΡCn?^_~23`WѩcݺmÇ;]JxqxM^^9ONuu='Kك9\zŜ8~rAxG\c?]K_XC"+KC:ج\3zc^usuuJB>-=WVFa(\bS$+Q%i(ǏI7?~/ ś>b =g_=/ }F<ҥK5kF9sg#cEZ!!:Kn*];eLT|%Ab"m:ҢVLIDCCh^t[ .>-&lRoيHlYx2r=\Q 4׭K U2Kʫtoۺo%pF^n~=Ϙg3b. 7K[8p ;vIoh~X,Mݖ(gݏ|d wuSj,dQ&L@Ey-[Yt<-}~ʚ <x9'pu֑AMM | ߭XIZjG{G*++hhl$)) OΝkoS\\+/̡C[n>rX_ogURVvK/#G>|zUVd7r9%&%Nii))$&&s%''~,& ՞D,O6Q:۶mĉdSQ^ƍh4n',Yw\MM -h619H@}CۺnWaj#k'D$<I 8uP^y**y牊l6O7 e'}`ƌL>Y^l6se_wfV&-f+_(:r޾=55Պ}{JLH.9FA4*355Xz(-XItNӃ:cbK0LL&f mCcyb@ :Q=Nm2+lޚלbbb}ז.]Os^z%.\ bcbxvcƒBYY_= Y* LTEFݻ=QdҌ%,;Y̛_ =c&zT*XK EXbg@?B/SM7wCӻ#>í^.h:oNs999,f $`|th䭷l6su׿=￧`1{픿XD'NoWrc1ILLd:LJEɓoK. 6 Xh1ai{`:^l2}{cXHLJrAV\ CSs_r _|1.[&S 6 $ `d2a2`l:b6Sx};x :m9v옻(Irp nݻSzDоF/s~y_nݏ 駟Ԕ_A$ʑ"L")ˎ;شXQQ s iF23L&:v?vIHq1mc1[ e#!!B[O5o0_|f'0 b%]=Bj5?[Gqq1?[Gzz: ti/Ǟ>pƣm$,?l݄@ 9S9 ļy_3i|TUURR E߇lC9B׮xG9x (seᢅ,Z ,XW\6J_ob+JKKIHL 6VMlt4r Nnw5+%pj]F $&$mVc0 NAw{.Zc$&$8\ ETfo6YyptٖIv:TVVիٷof&L OJv믿qHw)))$ڵkic?naړO駟@zz:#F`q7;T ߳>,fSl78m̮B~p|hV{RH.<;;m]vuNR9E[8@op8}qy>A_/2YK%;ӟycT hiS1\vNfԩ|٧>=\l_=џ2Ǥ';%1|ڶ*,!b8?4ʊ |r*+)/+[C} ? 4Ç ٿ}w%C YX/MYFٌN%%?NY噜ѩ%FK(COgL`A"-I'@QӾ}Y8x,j<&Ͼụ}44G@j0Tf9&TLʹ9Evak,9?j.Nmv;Lm`MII3Zw^K=X~رs9o͡k2e[~]OOڵֱ4jk Hu Eܛ]:1c y]&NI9cg:~Dvss޶j*㉊r/Z_~`۶mt5vrٲe w'VJY$foƀ29 qiw^lJ޽6[lOw FÙZ(=Y]AfMT97sSWg劕,X0O?ÇqIeN ^r)ׯ燦 ^r.[-^l]vY,>cdm$J4>lp.Dλ&s@ܛf >@zvB4xP n?XS}464pzڧs͵qbj*jH!69݇X0z%3zΣ7 #`0z1IX238YzVֶMؗ_@EEYz+6Mln}.Rs΄ܷ?>sQf<>\*ITc'OrrF&Ɔ$IdffZW/ٱc'=CvEcxfn[oZ3f,*Vz^ELL EEygi&MdoyGtJǎygg]w\Sfd׮]|9HV` ϳxbYfz**lCbiuS<䔴{Uvsؼ54nޫ汳ƶΛ,cdrNd9}F\{|a#y,R";ljcK If_.~o -<.bZN %NRRR仴Ǐ+ e(..fבȦiDJXbtJ}Jz /JEEEbnɩ>8M~\aEԴdO'{͛&;;ZƎ1< ARꫯ2d({*:b]oGmӹsV\Ill, / dɧ anv{aɒ%DEE9C\l, \r8م j'4-js3ec;wFon~ Ç~T* #Ig)**?t0*_~ᦛnf̙8p>d=6뱷q& 9?>X^*v>l'kF6Rv~o[N -,dFCaQ)5JdgkjHHLBRJ\|<3t'NP]Sb!'7D222HJJ"@ mN .h*D %GGR1v8-[Jcc#&*JfΘʕ+ :~.;cXai:W_}l!##ѣFjARUUergs4L_^KFFHI0[,L,O}Cg?'b}1n*e̘>)~N; fɒ%p _|?f \xjkjx)UTd-U/((G8q"-Bqcxftڵku ?@^^fW_}P\|&^y%<(:9#P[[ó~KxD*_9i4 dff*Zcia~ޥu*Z͖-[8y*f՟~Z\yo> үo?2c͘ӧOx=y]ҥ\w׳~z\88*I 6^X-_X«^,0ٳŨ5$222X,šh Xh$ ٌ^lݴR}.&H S-%hVRm&lkMT*bbbߥ&.^TWT*jT*L&޾o] U*/Iգ׎ IDAT8xUU:f<={+P)ymwPEGRemf\!jbjwl:gp?a}Ix3&{[}j}$rUshd29JVAl6cr'|OzW/3܍RҶ~Wըj,cCxn: z=}RǷ2Puժl")| ٷ PڂظXO:~ѯ_UJBբjkZ@ aYdT $I lÐLV*h9x_qRlx0^]lOk`Vfɖ$n?25HeO7Mv/w}<``&[Wyo*3 zGP$,2‡` 1Qht<7 8tJborW/sZUy'wWNzV--f1(IFcCףot[>*ۏ0U]y *иl nȄ%dV|x%ZȰZMBKX,h=CN ZťF}0{)ALVm=IOOwƍgqd=M<\})y>2TY_h"~f]`+"-\) *,@pN 5zi@ {,8VF*G@>wo~[#9d*O>BRU]C*B VX%^yi@ :Z}i[`.!j/>oKUv-;R1%B@ A0B%j5\mb; Hb/'@qJ_d~sdʳ6>q yG*"$zyDG0ڶH@  "%hAVdW^Z.ւ *Mo[ E/_>RK<9Nc+qb(抰*?rs*Wm= `%AnA X >bV U>JO?'0 ,UZ*Q.|ZR ƾ WFE,ƟH B Mв:'HQ Z <؃<6jMWJ{@ {-Is[R3Z@ru*W#,@ h4 YU Bj۽Ipp8*Q_Q)] pyJ9ϗ_x9g>mD.>=ws%AW_sf$/vx-L+P!2lQ=ؿۃп#! J ƒ0!b_8D-{ɡbG$L~.Fឿ[ c3h2,Fy|T,9Ocoe;4 џ`iO  4h\^k\--\C9`+@ h1ݻmQnm==rݻ7O?,޽{aFmkj߿?wyǜZ+nj/E L碱c߿?g_Œ3(>r$`rǹsmX>L{j>Jd~/3<3%ɾIgCR$gp>7eOyȃW,y{~Pmapyx={ˎSJ8> ̇b&5Jw3Cw@ ƒ,dONJԩ3Z-FK}Ə7kݺweO{yٲekO>gٲ 2D+1\9J$f8ݿ +[a-5p!n5jWMM_0e.O>[n~;kǢ'`n?lƎG}WWڱRr\`Qr'\q\/T>|]LNry))K@%Fc)־cpL |Srϼ'>$0qJ| @a_W_ &xlsa}m6nHee%III 6{op}K/}v$IbȑKqjؿlOx<ȣAq%0Y,] /鵥˖0aDٜlӧdb6lHTT˗/gʔ0enLJJjHm.}!˗/СCtʕ+9e+є7UUUꫬY$%%3t<0۷Wb`.ZHA~>ЧO~az X+yn9'N 5%ƍkn3zb߾}<ܳ<ڵk2;_Faa!| ;:Ac8*w-A 66歷ޢN;Cy8^e 5Ps0ra+М] ƟR\U@}Đw\ǔ5V>ӫu(}`lB*~@QpI|^A$Yؿ?]{ '?b˖nLyyNBn wA0wWm,XHNn./nI.ڵcԨQ]$͒%Ջ=zxW2ƣG;~mܸ͛6ٟ;QZΝ;`~yhXzF#c\PoO?'`ϛy'쾔= ~)*5/*_}?{_zﭷW_}}ǚ5k;?Xy?ѽ-Gr 5kk׮`04rǹSO=ŭ O<5m*8*wO޲[{ˆ ?awu'W@qu9ZrUA )_rs믋P4RgN V;( ρv OxD$D@ ~}a(oE^~z^5Tfӹ\h_(ƶm?oϙCCC>g@gs!~wY.]kfҥKr8~+իW۫[x]׿φ8p$qF׏_w젢T֮F#G :o_JŰaشJ۶ܮ7p#:~"/%mjkk:t(3f$##=СB}ٳ'|~#d^~U.xUUU~,۷/d媕||9?3;wO?!));~7|2Gi^yZZ_ONs /#?~i?d߅I}~˖),,?v>Cuodoy7mUIj-k?9\Lq :HΧ_~L<;ɝXŖ &nUs0@'!Wo!)D3\7t$%!Z A"(!둇q{NcmX,F!{E@:uM7ܮuz}p2dP2ev!k%DEEq%zU2:;M7r߽qaJJJxg㎿-\4v,.%EW0=iӦrtV\ȑ#O`dqٷ?~<_<ѣ/da sd(iVm۶RRRB~{kk3)D ?hZ.w1B~~>[neժzqڨ(&OѼ56ڧc4Qɾ ӦM}9 YuV.r^g;܋Ň+C?F \\o7ProeCj5?|τ Yv ӟTf̜I>}nw|G{v` 8Hq#G:m*[lAұcGvFff&TVV??XlTv Xݻӽ{w&O̙3BV򊉉qzQ7 }ixDZqzD%U [րͱ#)~ɷPŐ8:V-y̶&Z]q4,B]RUV#;Re!}ѱcG>̅qZ,~޲N;EJII$fCYɖY |b8y$ҧ1>l8͛6yf tiP6_φ15*,kYr%YFw^P}t\{uxM444}6>xj4.VqG{;v0k֋5~ +/̆ ֵ222ѣN -9P2{g.0h@:yyßqT"McXVVf|XI H Nl?B=+?/K&NXWlOlߊI_=ZppK--Xp% i^4'+pѢkyQ__O??g4Y2vɜnSNտ?k%|CNN ]utt9'o; 6EE|ۗ̐-_;ؠ4axnv$I"66aÇs]wSzFIݿFZZcǎXz5k֓%ۥp_|?>&?XF+Xd ]cc#.w>~%wgH]Y־X DjAw8@8,,,xz${\<;T+[qN^ fk+_pIiN+^0 g!# @ -^u˭j*f9cǏ3p@:G~HNn.^#r_k>_=u??mFjj ,ĉ^qAx ƌѣC 9s111tMNzyŸ1=j/" {u|Πsjlٲ=@HʨQxjJᅠtW+Дq;w~Qf![#O=5CPUYżysihhЄ Yl9 2'Ng\w\?ObBO租c裏K8ձ8*w&};{7>=ͥJWmY69+Y#Ǹ^$B?I G_`rlqBDR@b@ yi"εqll  o=UV`|˹{IJJ "?w{]ރ_@VV&y715 /??f̘w-`3zth/;"}r+dpɟ1> 1cݺw#--㬳u& 'VYYӛ=ey9r_inT*|_XFݴ~՗6>o^|E{/^LNӻwo&M_wʐy73g˗/gٲedggs]wbwl۶=} :]~}ͲolRHKK &++sǾVQ>Vgd2s h+]ትbhD^@ }<^S%±#O  UeeP_ҙm^/{EIk֬lRm?8^~k׮N M-S>~\(WBw+<1!;WNC,Y{ OE$XAˈHBqq-F@ppm1rH?|eEлwʬm!Ʊ5мJz#^RE.f$w^dsTxPL(P:dP8okvy̸]juӒ@pj',@ ZZ HݭPf*YaA5 U:@ "A|| @#(L/kA1[^6ڊeҪx::V;m(Z֒_kC ^%IĉtVkl vٟ}6Ed8)s31AvbkD@ Z#BAAz ZFT%" [e#JhD$d> r1m LU@ 3 0R0Nյ8#S-Cw"5 ^pZd0m(!c͌*bG[l/@ "„AVt*)xO K/R1Bq<9S+B7B ɟ!ɟhdPUYIN &&&Y : =e0L&jH"J%::iBq`0`X0Dih4$a6ٌbb!78t:ڵ KӖ.G]"&~U*=j/T7 F#Z$IT*_/63{RSQQ{~hZ_@ $ZmFNS][$Y$h4K}Z ju9(* шJ"5L~ MFFqqqTα 'b[/jkk)*:BEE-fmX'mZR%LjZ!j9dܷoF}Cڵc*) @ hiKDYy۷`!~%IVIh ɉqKJ"))1tj5FAf b#& *++)*:BffYY%Q򞪯gѢŜ,+#77 RSRi]$==Zڥ,=I=8t~Æҵkglèjl6V1LX,*++jc`U{$..ڰաTV/|Oj\| 3ဉkψNLL$CSt8?@ 4~f3 z,3'Yp)A<\zG8y]:-1^/۷{Z-:unbĉ>/۷/-K.t/ԪmO-f3^i$jjjbc1h \e5*ܜ*r_r\kۘ t-|kΝ;K{j?R|(]NNd2h(++#.62(@Xdee!I_wɆ<摖?t}2IX%Ib`2kqz4 MU\:u2b2  ϣߟOUU))tލt!~ZMlzq`[o:9ee<:uC\㏸ph:*q- ܵ˧bC$ F#Yii;qSUGA` IMIVUWrJ^~ebcckz*qinJFFGK>=UtѺYJ Zj5:V [)//ɓt(0ydfΘ]wEZ4OYf[0bҵ=oX엒F b>l]3|`vb~vݺwb6STTĆ 8Ytj{!7tڕܜoN^7P{Tl?@y<Џ5|rOf3_=Ν;S0;w!ʏs@X,8iIqoY̊H:hdKgPa!f҂nF>|8.WN֓\zE BzIǎRr8(jjjhhlĉRw:$QQѮ]KiFV5hOVap 7reõxYP~W^~#W^ f<ȎhhhyR.IFBϞ=8al S.^b]3Zqo3ʉ̛5L %)<"M}ԨQ+fZ8@?ڧSWW'ȠT>L9rԴ4N(%99ZGmmI<`d21yG8=9c&cǎsϑڷ~)w.]JJBV[¦ -۝"- jF5k&66Ae0 h5Z{\9YZʾ9b$i;ϛٹk':DNv";;'vz}v:ts|%\X{؏5ևuq1>3rM/v[n'S@8X :~X|5!T5_cse9s:mZ(S9] zIH]]f}]#h4ZIJJ!** Pa4hhHQ>BF]pgIAO]c#FɯڥЫW/o+^5lPȜ9oP]]d7:t(%%%kfˉn:'+11k… oh`glzEYY:hNR]U$IoOYYIII>,D}C$qQ8Q'<}qF^}U 򉉎2e :u_>}:vDpYgORPhvh4Fz=u\?lѿVk_=3<}R7bB{J8{HH@(HAp׶*w]ۺ V7TT*{5$g23#ɐ6)<̝s=sL2wƆh$)1^lŽ;8zV407`ɒݛk%x<ڵO>}z{<2vdy0.0L ƁL'ba…GP(`[o3`0ۅә1㿨56lH`` S5k'77z_~YEqq1z4{qFՍg)hXkcbm摗Bhv\ߣ kHNN/6ZM||B8/ɪ !8|$].,V V}o":~~DDDGdD8&S} JP"Ã))Ra'H> q8].:fq\gqAzFWX_Y?C|)8x{x!z6ldȐsr$%'T.UTP\ZJaa!G*l6. BF!*2Fү_? JJp{<(}v)))᫯b-}ݍֿ5-֬^oˎ ^,ՖF_0{p6m݆^wK/EL: *V,_γ<ۙ옓XW^yE￟?f^uV_,^>Rࢋ.s~yyߟ[bٴivV˪_Vyn\.Ny %+;'xc̘1_~YޚE(~q1/bW\.P( BATt4QѵbVDPe6P(ˣJBBBCw|}r-, x0(-+Gg}{~qcǢhlL:aÆQ;F]t."f̜Ѩ|tW_3^ۜg],XW望DP\;_]*v;ըU*Tj5hZ"""Z#O浰X,XV (8W^yFy?Gﷸ8֮[uL XVPޙF#$%%yg#>i]B-~~~M~|2'} S.r:$*" lVt:vN{rp=cHMMUCHH0%ŸNj5E%؝-2miWwsvQ4rbȯgm:-=n..S0&?ܐHhu!+o^N`P?6oŻ]}`ip98(Ȼ8n] …a2ؾ};?=Z9\OۅvΊ+9,HhuAK\.Tٳbݜ{dfen:bcw߽0I9$V7^cHz<;PF#XGOFFXVf3*B<f3?3. HMMm5O__WZ֬YúukyXb9/ryJo͵*--eƍ8L& "..솭 ٪f-[Jzz:}G߃ .ϯտFllO"'H>;22Z,yw4&M}n oZʻ|Wj,YA0&1g}t72{<n +8oxRSSE`Сl߾ݛNXh({!22Xt)/R/[6m.{<֯[G~=Bɓ藞N޽}.oWޫլ9̒Lk뼲bbk]hz>;0mE-mMdd$~~~[QHӧǎC~~ .$>>F _ѣFy̞=iS1ax]Z{DEE9ܧ x<^SFppՎjETrX,Zڵze˚o]\ ~.2yYf~WtO]6NQQѺr֬Ylh42dh4TF]Z@vV%%%MuVJ%qq-]GQ^^`>rrٶmPۭѣǐJLSVZ9'0 j5J?ZTDP=F#ZG׼/2~xW^G~8q"Y@{KXl_ϛ}K.֍]{uͧd ,Z`?xXr2W^9̟n+En۰XO?w{>Ѻ.d?m~&ΡؘL&#HÁτp8dfeSYYIEbweBP`@+Ym~6FsK/m1~-1Nў#Taht:qt:v!410{W`1t9UBZZ2Vt,*~eܹ  :m~ߘۇ[?RgY3- ##z]/͙3_nnN$_=3/E9l3zj.@C FNe@^\/cd=V[x'3%b ^ Z$" IDATzAA 4ߞU Àt|<ܳ}1|Lt>E-bo՝A+ͷ̳> ::eK6d\GSP[;#%N.jth4V+X,XF2`@6vZLFv͓O)WNv/8p ;˷z?;}"..4 l߾aٳg}/,,DVDpdfeQYYA0 ;O6oބi'80RvddBZZ;}{rMaaA9z>t8C|ʻ3۔Jl޲\.~&rscP@lٲۍh$//N>mOMvΝ;M4Д)Wh"~^&YL&oΜW\Nuu5_˗?ftGw!~Mƍ%OFY(--aiʧ+u]]!D@@?k6l܀$00шSMՠj;.Jyy)j  *᭹裏;V(/ !7>6Ö OЄ!zF&"5*[sM5 {i񣢢dy?jwޡH򗻹ƛw38r$8^6lX cԨѬ] /]eJ{uM5SF\BTVkpd.-SoP\\LBb"/7Χ_wZСC_W?/̋/~@TT_v9._w{8ߜ|3*W_yb=ks?QJ%QRYYJrVlcCP`Z9z(lV"#2e Ç;!_h}2O=nFÈyg<]ElFTz ##ݎ^W^ٳvfZսppA>ȑDEEYΔكb`0F1j5{.۶mc߾}3v +RSطv!CC|ʻRSS؞AM ??z.=z=f^Q`l6"ޏDr\T*\д$I0|'>F#>OfΜALL,^{-_'gէ!hF^A!wnľk;) &z5WZjD4K{| B-@ǟ0 /pր|=fƟ,UBeejs9N>%+Vf]8j, LAjÁ ΄FvtԠauٺm* .t>Sb܍%005cTT&o~bz;NMM JFC 617q'g:oR)yَeBRa4l}@zw{lD*]ok6ܡ=U+Wrj5Nh4bXdgg^ù꫉YN{yy=zV+;v젪nqǃBvӧObbb V9r'3b&c !<%n^{sqT)1d(VwlY=;]DkP'&+wq0pfo#{|.;|kQ9省#hFDɑ|I<{=zҸp:(Q]&H>Jz= q=9{3:AHk |TK``2A$3J4F% cKVVGUU0zn nocl_pwŒeK裏:~ȁxg1LTVVcSmջ * kNJUaZiUF!k{SDt|~o:z|}OST n7zv6J ٌNÁ^WMᢋ.g_a*^Ozz:vfy{bx8R()_'uQB֌*>)qĔBf<ϝϣNzk!DS1ЅХ'|ck]!DwyZTrTmG\MGzjRA`` VӉDRaZ1XV]Ȅ  {{ޏ_~ٳB|| O݀Yr$`*fm~װ>h#U~V!J%nOӹ]cÆ վB ҹ{ (0'zzx ^zeq:>z+Ivհe˛y*PhU(ԨB56\ʸ5ny\0XG_{S:}ZՊU;PwMMM,sz= bԨQjF{!NG^ZڝV뺀`g'@yy)~~ uqϮmv)//Co0׺BzGp}d2ߓ1qxZ F5pbzF@T" MdB/%=%?!j.UfpE,'&k +%8UD "Gk4Kf%QTjL:5ø/.R]3/T*U4T;}Mxx8ѬXN݀h")4 D+*B(ո)L\c̴Qw^Ldd$H`` !!!1h@> 3֎m]hj'᳢ _yں4-V˅JFT_raY)>ZLeE@{&>.;iZeeejs냽7(FҰnNGa"Դmu^Uס2DhiU9X^k:3Clp Fs|M~~8v4j zqհ|+,أ߇;TI1q s ^W?fn^SFNS];ϼǃVEK T>ȗ(!Ip:t>?p>.u<%Zh(/+#(8-T* JykTz]I'!B~~aOAnFԢc$uzkTz]I'!BY:Au!ԻJr? !BΒ@ xP)N3/h?yOuwѕ~B!%,!B!BqZ@B!B!8-+MB!B!ĩMҊ2vډl@PxYYYYYYYYYd_t|dUTT}v‰hB!B!m2m6 H@``$>>ˍlAǎ !B!BZvVflLFdo6T* h.B!B!~?T*U7Ln*++]쬅Щ !B!B^fYB!B!Bj$%B!B!N8MNNvPx<=ͤ !B!BњI+WĤIp 7Gx"K!B!BP ,`ٲL&~˖-P>B!B!'o_|gHKK>`MKYB!B!عk'ߞMbb?*z{0c 8Ю$%B!B!No}dgVSp/b0yO]tYfҺ^xX ?B!B!蜣%>n8hZq:.Z o͚jϱMcSvۺB!B!ovhxܮ1NZZl5B!B!g&W]+k%B!B!N B!B! d !B!Bӂ%B!B!jQZVǃBql P(???[[YB!B!q!JK˰mx<@HmV5*+D@B!B!89J%pɠh4xn7ǃvcعc' IOKk5S2c/x{&dDېfO$ˎkyNF 0M\zѕ|}y!B!ˍbaĉjnwZX*t:my+<EQ)UL~ݗ[|'Q=H֟{~i(B!B!DƕܸNt:= ͇Ary$^):kt6F0q] q\s՟0MͮB!Bә1:] f_껋)Ph8gP.t)=d;^B!B!N_ R []PT[ԥկof朒#-im ֥г&n\윬Vg["$8'@RQ]mמ9TPdr5v yY.vI Ɍ91z'EŅ2d:%i NĄ$<䇥Z-|>]&_zF|8=vܩ &ѧw_&f}˨2W5W{?}Ç"**Ñ<~[ )ɽݶ:>B!B!XUJe7.uFfN~w?ouWҫ8{АFi)IHJHOp֡fiux-t9fϾ]GRR X[NˈsGy>h^ɽ[E*Z-=zrõ7ٗ{r%nSocSj:l"tu)a4P;v |.wf`njo.x #no|\"q,_,9!B!k4dv>%[d, )?Oa@p%MST\wyz[5mڲwo`@ր~˛nhoK3lVcI.BPÒlܼ4/ B{Y'<;j·x{pƏ;̬CdfnGd&B!B!g,߻>)9r,/̬CtQ]u$'l2vn;ph?퓎F@֐֧&Odٳ3g+Wȧhrޑ\ree~4ul۪F<n1iuˎ]V PJR/^hG  gYBTQ]qrxxD/o]~'mk`X x*B!B|n;յfфLB5^]v8{ql۾O~mdܘ(PpVصo޶ټZT) `Ԉ1{pZ-Mw?^oK֯Fhʼn:ϖT vrMMwYѶ\ ^0lVz_԰.m6m6`B!B!ę$],ƌ3x'WnRpjgk)aA : |8F75c 2>Hrb S WJ u=xp\]ܖ  6wK.~icq)g֍<|{gCwCF:7.r: t:'WtL6^Z7pY\mU!B!8Sڵ=} 5F֔)SYvmw3j )] fM~YهY 뱣kͦ-T*x嵨 ȘQi~I.;ݰsټNyK.4(SaQA6\ͲRrdxyR];n]m~@ڰ[[-B!B3Q{+5uTxUN%#ǡh䲋lv6y'MP #L$.$u3FG WFwmTߒj{Ϯ|<>8cG߻owv{zah%h4'<[ Mp!aa0i;o[>]?n":~iu{ԿtL7k}pPA!Ll}.~;cPP0~&?B!B!>ܢ] F#׿Ň~wH7ҋ!#8wH s . mݶ?hׇ7?.e9k 5x9]NflaБǎQ+2W[mbĹ]=:oRmI^~ ;wCJ~QZNn%[gf}z%$8)c]a 2ڳ 1d𹄇Ep=7?s(e%1!y=vB!Bq*xڣ]-Fȑ#/8x/'úkXJJq\TVVqzfoշ_j>ms8\GR]@[}ۍaֻ3_VJ\n%,]#~4˻͘Nyz÷ع{vw4먪JL~Y3%\.l56̍)ӂE0wo]:rXvur8N혩A!B!8uu KQVV橪hxΩ7ʕ+(**⦛n"))3g;0gctPvtνw=oKԽ~r T,B!Bq*y덷9Zv+~X N͊v==<4_%,4&a"%qYODDDp뭷k..\8C: zNԛB!B!NGǓ"j.NiY M<%K0k,FlHǓ^ ~B!B!8ӜY RT<XV,YlHՖj7'p:XB!B!'UWYLZS IDATL2]=ӽ]Sҩ8թX&!B!u|WAYohSM:f#B!B!$ ߺ kOcd}-3"K!B!B4Yt,!B!B!k|[dHovwA!B!Bt1]"Y7n"!B!Bs9׷Y }dIB!B!B|Z ,!B!Bq"wB!B!]זV"K!B!Bt;i%B!B!N EB!B!^PJoi&M!B!B41EV}LؔP[lr.=!B!Bq;O`IB!B!BqBt`l|A{=mFMM )))vm <]B!B!g>Y'b}k˃>Ȏ;:t2B!B!ԱE|f^`ɧ~?Asi72 l 󅁍ZwT9v{묫"tuooyJYY6':!Z$!r=o-gNՕNr !B!ĩʧۑρm۶a28묳iJQF_*ֲ&F8nS`5\ċWdlWF.~c/{ l\T-B!B|o>4DEE5)D@@>P̠UzugRg'*W:JW抁0`PSeu㈕[vK)ws𨍯Lp0kOϢkB!BSocd2)//vT خӽ`kzGq-dYe|Npq zf^@ulR3:ş)22?@?'vS,uCøb`0& !B!N |Zx:sXt)WfԨQv~'Ycj|Myi4x03g[d }9{ETڇncǶ߂ xYf-n?gnʌ3ؽk7u]\q-\@o[]oW>\k/͌ZFa@ W #ѩ}Ini<%_Yr{<<2/%;+nH((wvYDh -/nӵ|E6* \3$kT/]UgV>[_eTݭn۞:+vʒ~QNUb}*Vw~9FW;n݃l˱xӾTC_f#ςB,UgJi%B!8u묅=z7>/bЧO^}Uz; [r#:O>Ѣ"֭_ b7#++Yfqك4hp?Ux'Xr%Æga²ymg\A8\ƿGְax?^@"5]vֶ4K ֍,Y?UqMinoƺf>X]$Ew]Yͻ7'1:şLYn{95n& d@W,N.Ŀ{?bQFmڠ"6>6~^kL\O{s{;6ïQ=OoM&&X+K y"o+|ͳ#_~m9B*f\ȐogOiKb`frsyV:X;yb~B!B| O'ծy'X`˖-c̙f1<vDGGD?{%&6{s﮻$00 &4J dI޴ƭ6n}tﶕKcV`t?/eλ ǛxjrAw>5rðP%~:%(/KkۃVUrð`¯Hpr̽Y_^GMMOº4xgmKcHW1kаeP "5_>6uktW~I& @V0"ŏ.=mmVmuV F(=> 2ֻФ@Vrx8Zﺮmm 9xzP+WWcs<}y "*S-w*O_-^wΗ; }x-Ѕ=a|<-U1"ş9KlS!B!NBۣ=:6i$5O۶y5h 43иCbB&ɛVT+[Ĭl>8̯j0SG7が| 9bc*ozCJlR"0hԟk*s`[c^ňd.Hm:~նҧU+sCy}Y.jCqt+طq a7mW~2~6soCڠKdP-vgժmޮmFh ^_GAϾ髝uyKm\缜fU9XŻ*Ys JuCB܎B!Ba vPwE}K>:Ymt<#=ǾTiR\76Oqz׿1ykw+v#\/Qkm9:O^NgKXUj[U$Ƿex>'4[KGe ibRzr5WguO[Pnh(3WR VmQuq3`SKX˸q"jx۲ky`vڀIǮɎmp{ju}U3Mcu\Wg㛬.:-,L-lAD A nQ!{Ie( euZw?ҤMӖ@|H{s{֛PZQuQXX0H.g˾8Fw*e5hNFgPMEgzZǞڀnmכz<®ĥ2Oؼl sgx;wNFgWiǛ1GҝNeAjLѝstgg6ȚDucdU5 brFA0E;_ԮY:Ѥ,T R281IfhSkNJ/yfqJ}W)x2PJa !B!DIeYhTW(/q@Ac o'l޼y>iPCB&$N9m&+hSWxEJxy*?IH+¾;?q Nj!H-+;%}Zl&z.zE3[fдCSosd豉ԙNۙinZl;Dl47^jZl?fAp^+6I2K_0j k=4"8X2CA͜^I深\j" `8߻/$M5ЇCӚ2{B!}O^U 8P|W !6& ˇ { ?cJNЈTfm58>8ҲԜǴx9Hc?!Usrܽ-1 3ԙoIRfm~p]{MJ`٣yW⳹LJb֨Հ%-ρ6K/ЧibZTs5s6\ux^Lo_ucGLFxmtG[KK_/h5WN|t Zk?hvM&'OífmΔp>Ĺ+9m4 lm Ӱ/"ﵩOhvP!BQ:.GVyҥ  fժt78>QisMwΔbu[Fw" y}B!DO`WPXX~Bx].Κ(,,AqwK,J8foʂu4wxI9iöIpB!T܊sE+lݼĤ$&M~˗/VѨը5j4j j&LIbnnt֝,\A..ͭBT5YjҲ:&c=:03a->zoD+9֒ 1onqz&*? -[G|y3 .eZmB!U, d Q4qB<ˎIUw󦉗-6m8-|Z]\ڊzV)B!U9Lj:YG{fʲ|s/ zȕ>Mr*7&kdhP)-dEZvkBNfEӫn"nfwo\Wyj/B!UIRR%ߢO sdcKtseh?ߩ:w~"B!w#4;)R)L!B!Bē,0qEAKSaض@SL˨L!B!BRLN^PO6&(Z(B!B!*)+4f@B!B!(wYB!B!UbEV``u*p$Δp.iiܜc={^Y礼T9t9/_XT >^41mY<\x xw1^_poA@VNȥ,zڰ`x٪bs=G:s乇yD?~T݊|q^Ye㩶o邽B!D%dB۫ڶu+/_ιsT(hذ#F ((Ȩk\ӖL㚶z'K;VTIy+OHӭo")Yy~4.=_Zaʪ(Ju-;vMכI-p)>.5l/OV3muN%agmc͜ܣN>'9X@ZԺUinw_amt}oeвA.uJA!785+֧%Q!qS2';v)U6Ɵ>_cۙ$EұCs[Rqv0,-hPÖam\y9y#I̡rnX+F}Ni‹K.y+NfWSQ?7XjTb@Kw-~w;]]SQחNݷ b4v pgӝ02rbXVK 5+yqoUt9,4u~/&1[_wo'kS֒ 72m ۫n@]wk΢<djQM>4]M#5S͘v K.lnLb6 wxT:CQ$bW7& tRݎ7Wtng?78r%%Sw]~v2EڊsF񨂀Gne.q<]7SrVÞ[X)ջfFl7-p<VVi !B+7 IDATa<"CUЮn͖I8^3zT#-K7='WaKH:8+tt`8sv~ݼAi?j1pWr"&J `(~/3Fbg>Rpu=~be[𩫣vMn䐑f$&<}]mP <>Djfl݉DҲtkDso;/LBz.}:shZЮNj, Zo]vRZ[BoS9Q N}Мh[u6;Ϧ׎4$bVKMjDHaemo\Rߦx?K+Y:?j1Y/2wRu5u/ii\[qc#,QYY?D_$JMj|=P9*n~=lץ:k_nh/ζJfG2uU'3LB!"sVd)'V._+ヷ&Lt2s-x7 =mpdZo:Yj^MUm{~~_dW3}!KYs2sh[ҴǼ ҂xo]>s,;V~}ޏۻSѪ\ s!?}-/#bV ՄN$fuE@M׸z;\5ƴ}rN_Kj'9w#F5lrxm;ZdG|tA9&̲,m-GA^`D{7.i޷: |Tmx٢T@}O> t>`zQpxFP)-\ϑii5Uqeg,XTY1?tk>^FǸuM}OTvՉ#ڻd?lBz,; ΙՎB!CF_Uڣ,_8 ?~\e˂l?C &(ŗ؛= (0_lΒ}qL\Et_d*YjoP jM8~Zŭ.X7!4D&5UVzs |\TL]]z:/Wg݉F366r"6)[]tji}M:W7WCtvWvJiV-Yq6W\eͱDWJAOZվ7 ]GaEWwՍG趙w]~v2%1ڊ74hRWEu ;ls@r۩$Nfd *K jvf#B!ĽdRvBs[qt,Ps'%xULUV 160mO-xi5SmXu8r{Ne_ӧ`jӳꖗf>坾ެ ͲC:ikikO'z5qϣVũshcIbz. sQ˿dW.J[Ű7"6`OZ/v/-NڼEyu+U_A`m];l,n烃%gdvΏ%?U~`&9WJ1]l-L$Yf[{Z J[][u-<Uk+n`c:tĕS:Uan}]HL%-Kmp6u~CY䋹J8\VR'Pt_UĵSZ~XG;͹wzZs6gSu>\ S)HČf&7"$oRGRFiqɾ4W]ݲcQe`]|;IFucܦ*}vœWrB!BQYT] r9~Lv͛1KDʛڱԙNۙ5ps}GjIH3KLl;Dl47^1jzmnKZ3[fдCSoNUֵ ꞽ`UTΔp2vEۏoE.ڕXIڕY֕mTj j=4"8X2CA9ױSYҷ Ŗr khkg~ nݩ=AxC7}}*Gs4?{/~w_0^y[iʣváiM=WXB!J2gka d 8P|W !6& ˇ {@r~GZ32x]QGAYq%>y|!nJ^67^*3~4^^z>M w .៳ \̻r[UJ4CZ`a]Lr n1\K!=;gY_[kjqkȽw 󈸙ɨ"ݺhkɚc E jWz9dL eU ЯKEl29yn0kC,uiY+ge_D*9yB#R!9sUS?1\[i }N}waœt+ Ѐe B!4SkȑDEERO> 6x^ҥ  fժt78>QiSV%y3 w`޶ۦ 7t24 >9/fkɄn%`!!ex>vL;\ 5Yҷ\AxLQ涩/wd?79Av8oJAfZߞ‚/LAL];kxga joΆs/ԳU)x籚EXPgJ8USޝ'rJ0|OeMҘ-y4J3 +8r%s(qޙʜXf4s.6 Ak錵R/ysE=ܾ޳& E/[TJ \;sעJ6V ew#ǔ y?&t5JvJzTcx,JclPuU(b|WO7ãsUS?1\[i,,~ΟqWTXи-VUNy0|nWY!B2#eqv&vAadd$k+Lݍ0+*uЀ&^ӥT@<﬉B\i<0FO{㘽)[+ ֽҐn9R$faۤF{8B!BTZ܊sEl۲Ĥ$Ox8j5FFAѠ䗩xyF]իV5Z(,5iYy| x`-Meݸ{n<|']T NdhI4~;p3W)qY -[G|y3 .eZmB!o2u 'h45"@'ݴ\C*ܾ7Ml!lMicǧOԢiwBg`+*Ƽ* !B!$ӓ /0hť ytg@_KTֹ+}:T;%oLѠRZPɊ…. J%Di烟5Bx'X!BݵP_~Ŗ;vbS.[2ϭ-],<ߩ:w~"B!(jŖ'B!B!zeZx'ro!B!BQL\jeB d !B!BrW9$%B!B!ʝB!B!D`jx w-,3RW@2 lml&((#GpW$&&0g̙3)⮱4aaagyu1%-1y,7ow1~JJ ]t)1?۷oՂJrr2ի{#ypss+cv-aUyyyx.\8/a eT;B!B!Ȫ ywot)SyD)n̓b eS3FaƌOl5:tW_~iyeo޽\pՙlق'N֔)\"ڷkgps!B!B7<؂Y:֖]1nKTV\8^0gg ͙ !B!2U@Zo޸>PL4={w^^uj5|-`J}Qgҥ |޽{ygݼߖVud=zzc…8Ws0֬Y]Μ9;9qQ/&2e ڵǽ ={}+W7?յ{;^9 q/QAR} GW_}EHH$$$_ /Psj\$B!BT52'UdY[[gfe/wplmmaȐmW\1} !v F/+Kب$[l`IK۵c⤉lܴI_w۶mL<jJʄWݽgaaa 2kkkyzӀv{Np.s`~FE˳8z5hҸq]a,[VZ3ejCw޽n:zIdd$?S _{;.B!BTU&R"Jl-,J4˗/~zc9|&6]/^ @ ;o󋌈ԗED\m[;h8s,ϝ… ֗(--4h}\kÇΦG;o+4UJJ 7{{{>}^CBBj֬KcDzmVvl^.$// YT!B!JLNn*m:Ъի럧0sLvaVⰢ2JH^"-Mɠ\x :uqq1j7..I&*YnƍVr M5gnܸ|@5ʭ]/oo |y@ff&s~899tB!BQ5T@V34e3Ƥ׮]kz䟝;?o@ ߿m۶'0}J۷JU.;;;;RRRHIIٹ ?cooOJJ I oԙ\Μ9AСC, <<< fǎlڼAw>j֬iܭ-[0ctfLnt\wnT`=&..7onܼ P!A9!B!+'mkaᘔqˤY /r׶e˖?nP^8_UEh4$%%cv/^/; m'8;;=EYXXWmx{{@Ddd* ??'t~G_hN: p ~ա"yϋN֗#G/pww#MN8gnp~.t~ztΩӧn$<<<[Ϗ'O2-\tV~ 3w%#AvZY&č7XT=ܱ#+VoVڴhт|w㝋Q&B!BTa+ۗߗ-`irj$&%y"MФI}_<> 1ݻv;Pm[oU6x`l‰'x饱ǚ5kƐ' >lܴÇØJ {FMJVw@!O0wIӦMJqA/e_>o  ٓ={k;tLJhƎ5|4hHNܟB!BQjYfܵPATy[[[6lĸƱl2<== +(]6N|>S(|`>(XZZB߾}Y2 Q!B!x%TUE||&>A/RV-nފ+`|}}Ydѱ+JV![ĽuNBߖ@r? !B!UJ`` M{12o'1)Þ$--U2KFQQkPk4h4ej5lظw77 "++WkжGZ(4_xf3B!B!9ĽUx]ÆxhB!B Ц! 9%Q(ձf޼ϱCB!B!ă$?Pu9dE( 7!!B!AfBd)Pg IDATL!B!BƓLZh|~1Z(B!B!ʝ^%B!B!D1ȃeҕ9RSB!B!@VpiL%B!B!`O2y`zcS.GVzF:u"00N:Ql=ZMw+"xO*orJ'HNNB!B! o-,aJ#+$d'dffB޽ >cR0tIoKٷ?4i҄Zŭ[ء#FR!B!PTZcR +''Ҥ+U km]v%7/[+puvرc }ۗO?bp%&&2{zA3f Ϝ)v̘>G:wW^,Xܼ<ܹ<#tڕo$NFN֭g!++ˠ~@xYB&00+W0~:uDݙ7o999&_SO }<ҹ3=k֬1nsrmٲ=D½{}v233ٳg۷oA4kޜ-[ԮB!B!-KK9b(*;'ӧOcgc坃Y9mQy&zzG}׳y&}^h?AY|9)ɼ q%}Yxx8c_|ߗ-ǠLa}6YR /O?jzj*_@쯿FIm_'44Tk9)Z0f/osҥX)?a|xb,Xɓ'9y$ii<=R.٦͛Yrzl°a?ٶm>,+W$++_~ѣGӫW2%B!BAP`ogGrR"7m"/OEqq& J+lmGa=aҬȊɓTsv]vi3'N 6&F_7,,uI/[)S e׮],s?Kff&W`޽1 VmذP6mʲeK9p +We˖^ƍ5s& 4Dii^MF}kakk3#Gjۼu󔑞@Nn* ;[[ BXX ";;[[[1b/"Zbر<3tޝ,hۤB!B! XT888憻;wP;ܹs4jخ]L6ߝW={v篿dMt2W҂\эgΝT,1Z[[3ydnYcܹsnGO>zGaҥбcG-ZD^^ ~>{5 !B!rPh4? ܹ3W\!**ʠ|׮]tر¶yjn + ,_M2eju9O?3qDq@UᭀuTA{@}27ܵңgO{}VXl,^z~/ BA6mmɅy^u)B!B!('%W7|M T3Zخ]; VeeffrAn8z(7oޤE/N=h͛79z(P].20RR9B';;cǘ:upRRy.]/&11}@Nze֫6x'7|;혥)i@`` 'dgguL6ӧʕ+Q*XYYRƆM6 yiwՏB!B!*'޽{>|8kiӆ#GT7mqo4h0'`6l(nnnlɿaIAAlܴӧ3ctϜ=Æ cݺuD\u=ft\9 9zN| &M4͒iԨ̚59s0gsƌc:00$ER +ܹsܾ};v˼S!B!Y;wӧ`tkk \vv6jtֽԺ={ɉ;vSަVZ($2/7ߤGϞڢR`ٌ0+׵￧o߾TV JEmQF9]锖|՗=ooJ%ժU#88/.SiРLw:5үj֬~)=z(5YXX0rY5SzVbSo5 b !B!aq[7o^xZ|O 88___,YBRRdĉݛoYz5!!!&o5pw3yB!B!oR݈ #* B`=U*٤M"**u][ UF-صkիW'77vڙӄB!B!ebV ,X=ڵƦ"%B!B!rdt Zݻ+nB!B!Bfv z4n+++ڷo_cB!B!-ZȨW_W_-A !B!BQ@1,hu޹B˗B!ʺx.&U\lJC !B!Bq?} !Fe B!B!B!B!B5Ŕ !B!BQ'I%+B!B!D 0'Wc\BUUy5uB!Ba d !B!BJ9(BBB*p8eí[Ғ,--qssҒtV B!BTa&t* BAjj*JFB )) RIrr2X[[cmmB!B!0C dY[[ (  yyy( ~:)))jlllP*M\5}_w_j\5mx/n%gbRhvp=ί?q+8ywy9ޱ=]Π z1賃Mņi{sዞXXuz* &nï=_ )=OǁR2r֋oײk` _oKgQņ5dlN;4!apQD{o>x1VflYqUbIȡ F5#ϥԱ51a{PtQr_1pVʒAmtSf%~31) :1Kmts91st~=/TX0? ml^8%C{3ͰUa4_eGα,4؄L]7m3>e)8Czv:x؏#B!SMj0.{Х3 B0//+++uGGGqqqֶv56/ά58iH3a9~%L zѤEC/:KXX@fvIaי86_C5 noހ6,4k}wi>ZuΠj\:_n$!-__nMAMN0^A6G|<> RatҲrnĤ{ +~Gnghx0cH#_+OxUҳ˄]LGA뙳x]~]e’l=|5>R2^۲`֦$${\""""""r}E'edXtrvvёTRSSIOO'554HKKի9rÇs9 <OrY(Ϯړ2?H{6`@~FTPΗ]L|2MDz!C竎rwfbw _;ΟG/S΅Mcڐڝ#Z ;uz!W2߽_s?[/Hޒ{5^e 8z̓q|&sS-܁K=J>'RdIJZ:}?܈h`lhڜ~Owgvu}>5zԔWf|)} ѽ/Ί1;pn {&`y2el:K2־՚ɚc,'E<ݝ}W oIs7$6uDh$%%qppL2@JǪᙫkԔU`ǽ~ evx" ~;Ztw5K_4ŧ 3 DcRͼnAV<Oۺya%&=^/8񳺒1/@WG=ظm-'hco NOf2%m `_nN|D9^2IJI#?X4-kU`V _?mb=WdJ$$ 4=]ܩB8VSȴW4  ed}:dO͟-׮4L-+sVFm$RRRpssٙ4RSS7JMMɉ RSSɰbҚ<ݙV?e4(KX/$ҷFˮE oǪ]t/WeCRJŶ='2T94籋>~='X/^ ҭό32+n[8Z{*ʷFRI6k+UoV=YD{a<9ys۲237`2gK4#LFasl=rgݧik}Y}/ʚZns1H>bFKwLRJQtiIKK#==tIOOё %%ŪD֥_qr9A, ^VPxv՘06db{)ep4קZ").1sObrKItE=X;~A*GOrNɖ/.B|lyJ浖qId)S *`ggGjj*)))YiiidddaNv#pq棹A9=؛ Y)]EƷj([gɀ]ˢ?N1gK4PPӍf5m+ȥ)7R1[%DNjGK.E@_ Z 3c rJE"6@Rlq]Mj~{;;|/$꣼%w sqI._zb*>o]~y2Yg/'~.qqwɼo/$ʖt5ͧ{s{k ~_JV|vYW!Ցm[x* S-gYETg/T\!M3>g?G^!6khcJ}d}<ݸt51 <bQS-%LȺW^bx}v{\DDDDDDJ6Μ93Ν;籛!>>#GPT)quu(UO+4yc5~Mcy,ZԬ@-okq[W!$J `vx[cnDE>b2?sы(^iwƅ[unP'^lŇ3k LB/_ʉz72x'Fc }:u+ӯ-;̘ VbtbYX><ț-̯wɠ23'{7>c_~A1wk4u,r-jV`H8[k{ߣt@!Vd{ȠRJTXOOOʕ+;eʔL2+Wbyud+YK`OhiT\VA=TXw=ݼrZEvfK=ZJe Ӳ2_\ҏR\hV<_n/y|\C?]x[-sݪUȦ1m@θ89б~E6ۖOҩ~Eۡ*icjwī'4A=[H#o tuY2ż<߱3oLjpqrف5+tX FS(*'{F?' IDATn5 t*nͺZcp_+GbHT,c%th \{ܞٳw/IIIf=c:v\tPYӃ;vXշJjdccu ٳ888舽=$$$`4 (Wmg۱ۙkb-.Ye$7׉ثT}a5ڏMDDDDDNHLy>t www{{;-J˶h4p#MLTt4ժV5IJJjjwS ,@JJ NNN֝&.1T>XovySHz|VW6_+?ʸ:׿ .*pedduGGGqrrZt&9_4e^aQrۻ]5ɓm:X5#Hɕ޽{5%r&u2hUR*UrפSUp|vy2F8;PEL>~jf(7?xkY2O"""""""Ť?Bqq1Yu !zvXt+]jPDDDDDD12m&%%YzҘՕ Y""""""""r{sqqPDDDDDDDDJ%DDDDDDDDDP"KDDDDDDDDJG'edn9|rSZ%""""""""%c?9S\y\OQI9~,iEJdHx !H pKY1o""""""""RhkJdHDJdHa٘MDDDDDDDDzO2Me#ddEYDDDDDDDDf9F[ EDDDDDDDDP"KDDDDDDDDJ%DDDDDDDDDP"KDDDDDDDDJ%DDDDDDDDDP"KDDDDDDDDJ%DDDDDDDDD(0Lpp0{&###>W6^Ç[ޟVrvve˖:L&MXM68q(M6ѪU+=8Y͛7bUVRRAAA7$8YnnnZھ};M6-DDDDDDDDD: 8@ll,7oUV Mx{{{nJJJ [nնB)m\lY~6mDŊIMMy7*63VdA]vrJ7oK#9gT:k8pH_ӧyԸ:}}xWrŘWRrV;z|[ٜjݺ5l޼m+LKKGpȑ2A_|2F GDDDDDDDD fs"bŊԭ['''ZhQ\]]ͫ\]]quuͳ_Lys1'-Z$>>|T8}6.Z̿g2ns """"""""rsX#kƍھ\m/2/ԩS4ְJժ|8iAmcqHII ((;;2XYz]:uZ5jpEsOTTڷ#ߏO>a>ĉhܸ>4iܘ\0y:^9F|͚CF 8qu*/<=hެio4/Oogi:W@222ruQ<=lǛߠNZUesʕ<#޽Xy嗨UǍGċ/@jW_zf |}}Z%z١(""""""w/Zx#|<?YI+:K/g2WXӇ[#NWw׮];v&MPfBQ38>>lkةEukн{w 3i3>/">>>׵{|ܪs9r 11ٽ{7V9ܧNeر;v!C 5JVF%KJJ JVv{<lιX&M @hl',%i.ZL #@:XŚ?>k׆ѤI6lȿgβ%b+[`ӦM4gEPsk۷^nKЯΗ]g`e%Ⱥv@hh(TTW i͛oݷ|ɓ>c=-V^mgߘOD:͒`̙3n&s÷p1tBBBL$RRRxeɒŴhђ9?-I/[w"i-^B ݻl}mӧ}4O4OS(A,Ӷ%/O|}ء=v\rڰ\z-WnѶtRƍO۶m1 36k … 6m:ёڵk_7ԳgOyDVFF˗/`0Ӧe#TT sQs{RR[#"aÆ@fb` l @3\?q<3n^W 2v8:w~@6m?ap~%.z֭K2eڰ0rJNNf/4mڔyk]v`0ĸW˖^vȔT J駟!&<;w*""""""rg+1Wj56 vAXթS9ФIc[x @fmUV#&<ӟ5< J*euyyG-^w9 `[عs'E[DDDDDDlFl~WB\mHʕh7ί-(jmq<Ꙓkۯ?Vb˹̫_y0O>ys2z[SegM4OO\<{,E=X;~A*T,hK\ [5~ӓX{o"]y\+?y7x|?az6_d9sh4ݭDȲ]ҥKpE .X/ j5׿s"qrM;w|,_4~y9|&y}<ܥ qqq,Z1,l-4nϔйxJ&TV!C_%bx$Lcě-q7by:άuQfΘg4KkS8x0ӧϠo߾xyyqyFY"""""""rcYy]֭h_f͚ENݺY]嚜##G0~8Ο?O>}-Ysd*>o\V'OеjzYOP [c9ަsϴ2U;nHF/HWZ@ >h<=w߽oߡڵ'G'F ;w{=95lMņr sssGH_|Ák[#EDDDDDDrY!=2ym1l޼wnj{Eg^9aaFΝ;ǻcAHk'.l>}嗙MO+,ZSvmv<gz1~:F#[xѹgZnzsg>~j>k/ȨQ#Brr2aak;]z~Pquy.Ǐv;w~08Ǝ/_f҇+W`$$$>FyFEDF#׭w3_3 l/O;HNNf̧[Vؘӧ-;qTO+kd]JJ ݻuel +g[שٓ[#rV~[khѼGI&Zf~fΜiގVrev펴؊c{Ǥg^,YC%gϙÃZg/hW,^Xv76uU:o?cѧ\rlظ ???ƍyw/ٴ9Zj1q~Ź:thЬysEN:3租x}X̘1=T}l߶ www{{;߸`YBh4p#7&99STZܾYNNN,Z_| ???^ceIrttd6lUTɉӥKV^+SLr*k׮~-WcȐxyyL=ǹ#$777 7fƌ;@f 2ٳooo^zeBgϱ?~Q|y AAAs+? 0T*d`0бc'>|:N:쌟Çɬ~O?A \\\ C|+D ts۳nzի_o%auX7zE-DGGʎ;|24k֌g}+RElϕ+WtK75tX:v/kfԩT\> )_UBjUͿׯ߀߼X]#믿&11wyTÇ'66+V8ErŅ;1租pvvX"kϞ=#BW%b={o7%""""""7Չ4ʕ+СC6iѣ)!s… (wo]<=8}tcQQQӿϩS{k\1owcy}rwTNJPׇ{aDEE{ ~)W_e݋țGLL /"֭7M7fԨ;wc;fUDDDDDD D }}a۶m{,_N:^FN8δo%m"bݝ~ۗ x޽{h-+/3qx:h$&& ЩcN}!DV7"#۰aͣ}lwΜ=?Gر? Ǜ~Μ9Cػo?9J>}H1yw̘ǚ5kؿ,^SYl9+TѣDDD:ڰ04jx?Fʕ+>Uh42壏h4__7jĉHNNRA֊={-WdEFFrE5nMp<{X&fl2qqq9 Ԯ_e_=gjb<y?Ԯ;ohkf}OpP>T=B ߫ӃdddzѣG I<_l/+W0x V {2r._lyEEEѡ};rʫݚ}~5kX,UĞˢt$%%GLy=5--]wipÆ -z۶oh1}:gѢ׍~""""""V`AA޽)>m/]˯ ՒX6O>aΝ,X\ nP eʔ!I.]D?M+6 8(?~68pNlٲ?mgHϐ/^D|||ލg_oTX)F#;v`ǎ3x^SZ=֭[:Y_v-ݻwwKa}9֬Y d&fLΎY*,ҋٳ;;;}l0ͳ&}ݗo .oA0qXy~?v̢}<@DzHq(Y}7Lu'N2idϘ^8W}\㘄e%預 {1租>u%Kݻ3gvǶ휋5ϭw#y޼ |<'jתe4x0/r)LVșVkq) :kSJbT"YŎ8ILy~\\\pww7 `ڴԫWGGGj׮_|y|⼌TfoֶW}vʖ-KƍhԨʕcmm]XٟXhx7j###/h۶-˳˗UnnnL[F\QGjS ,;::ZBR,322d޽?-vkZmԤI<TT}˖pRFtlCmˊDDls|b-|~-_K:xye JMM-=BB3{6C fѢ˸Qn]\]] 5#dI̜9 <|3tVm֬(,⡇xݾ}{ߗo`c[9ǻ| x?0}L7h` L||<>4ӧMÓ׆ yL[pqq!114dI9܎JĊcY[={N;Щc^}fLΡCl:o\4[N"+ki[aPpEvY MMO,eM5ʖ-k3g*swY IDAT <7776_Oys'?۷o/Tܫ ёysrUZݦn+Va*XnO,W<@W`Uy% khBBBprvf%Tp$~aM62e`nz]EDDDDDn  `0běDFFRZ5 g֬2Qs?gΞ++)9j֬ 7 g޸aW^ѣPfMs[T %h...?3} 틗.gě -7wB\\en [#{ .dKDj%:N{x5;v룏Ȳe˩\ &6%*U+r""""""7mȺr 3g]֯U;nxb\zZS.${/iiiZ+7UV31l@Yzw}+lgS5}7e*|nnn /bsֵÇ*N[US1ysjկV\8:v|-[039:t"""""" ؘӧ-;qX#((Ȧ^=͊_~jj!]3 P7jx?љXbE8dճ'[Fz+[")cӚwaf~Ït%WU~'0Oxrk[9--z"Z ]az ;ϛ7oz ///V ' '''UÇJbʖ8Yp!z <==ׯ .lZӉҥKСC-غ"KD,-]>[>W8߀ǎߚVDDDDDJ"rRƍǎ;4h 4ٳ|gL<*"\rO~ /grm۶7;;|+ɟM={PLzꅓ{/JԩS7*>JjUͿׯ߀̳ߚk6} d< lEDDDDDgSQ6m1ciӦܨD*бc'yy ortwkVg+"""""?Vd1uqFΝٳaĈ7*FF䞽:YDDDDDd)D=ݻ7IIIٳŋ3i$̙sbmkSO=ŰaŅf͚SOq`㊬Ν;3m4ƎK-HJJbŊiF'""""""""ؘׯvvv\p\]]iӦ C-^z_LVl×_~a/^A?ou˗/S/<XƥKW^bŊֹaS"ޞӿ܆6m7|muSN6uְ4^ZZm'O`i[-[qrr>[BDDDDDDDM׊*-v= g!--ͪ0t/_i'hߡ/}o͚5߿___>K7oy晧9z([ֹeSw94=_[ly+Vb ;ڰ0FM۶m1 nݚa `  3"""""""RJT"âujj*#GIUY>}.^{?jլNRR9F#S>fMqL8ǿ͘>~hb8p&PnkOfm-Re}аaCV`m΅[5zG? @bb"f} O2 0kb'kN,\}e˗ꛜ̠Aϓ|74iEOaJ*ţveє/_xNjc^Ǐhe.DDDDDDDƸ#47n$l:O˯0bě\MLdsNFE3dH^vmM4aƍ{,["ҼE 6mOsX{eKf 4iyX8y$>>Uu?-[`4 g҇Щs'&@DDDDDDDn;FVa 8/ggqՕq[Y(5#Fdڵ̟?[Bb]TVcǎJX֫WΝ,x"""""""rcش"+..)SгgOڷoO?~<.\QP_׆ J899Q|ytªk_xIY&}ၓ35jݱco}<{{{,\H^OOOǂ 4Dqbcc2NKtqb믳c D 8{,}5j`~AAA7%x}ؿ۶3coogh$F# WHI1Ҩqc>EժU,[϶{L2 '''^J*ũSx"""""""""g6m1ciӦ~5lJd1^x *0w\yyl|j=zw$%%g/^̤I3g΍QDDDDDDDDĶYO=Æ ###5kSO=oT|"""""""""+:w̴i;v,-Z ))+VЦM`c"_~ٱrJquuM6 :F'""""""""ؘȲ߿X_L읳ӌ5pӷ/|2V'Saq ҥKC+Rb<*qEDDDDDDaS"KAغ5| xwogn;yӧMcڵl؊-PDDDDDDDJ*u7پ} -u֤n5kְ>|}}/i޼9۷ogѣDDD +EDDDDDDDLlzjptt^6, FӶm[ [fkظao:uY:uEDDDDDDT"Y^xyzEcOx ))'иq#|}}hҸ1V0kC*<Ѓ :v^m^?~ԩ]w~h޸8uj¯/+WXu׳o^6lhVlZp_zԮ]{uCDDDDDDD|B[ҋٳ;;;} },jSl񾎝:zL,M<kz%BR' j[nu_[;lZjVhֺ'EQޓL! +7*yx*='P^=\h9~O+;~_ř;Ga58z9pta hٲA`~y P乼ϖJ*)=233?==PrԊ,cuN[INN;SHR̜9 7oprrӧ8aQcxr2T*vzSSSKSѣGzǵ߻pDDDDDDDW YƪW> $`Qlmmߖ,0۷K-4]p}7npaBCKSiӦ3gN~߸q^BfoӾEXX ?ӧzNrVZtdgg#p{ fϛ:?WW*t\v S&O*q=}@P:uJcjuǹsq ( aޏ?pYBB(&Z`ddݐV5ZcDFFѠA 6 uѵm׮QI8ei7}׶/lW8{ls>>>عk7 Yf5ƎSh  oL~g¢kөsg24WT*a+˴zb7?jn7n#G R5U""""""ׯ3$ $H~ϻB@z3( YG .nWd\χD"̙3bȑ{.Mf>KKKlÿ,,,QG#pN]Ȑ?MR>>>Xv")?~ 2 ܹ /}c:t`ee^~~XO%%HeVNNN077\.ǀeVH+/^hL0AIv˗/dž g/%cWdQW+,&2b@JJ ._'O8y䋎 хX㏸t憚5k QQQ"ٳg6mڶm KKKQDDDDDDDDD$um888CAF"""""""""S]ƩS0|x{{#55{AVVMQK*ZDDDDDDDDjn1ydt'Nٳ{na֬YׯZDDDDDDDDDWdc„ 5U>DDDDDDDDD"eb!\`!\`!\`!\`!\`! 322vZ=z ppp@푙{"44$"""""""WBVVVFh5 ZB||<,Y .vDDDDDDDDDn-ܵk"""0x`t]6fΜ {{ΑH\!+<<oP|||LQ>n-LII8Wbw$DDDDDDDDOH|)YrrrBTTbccw/@Y""""""""*,-Duk]vfDDDDDDDD"[n mېc۶m,sss̝;WѣGUO>Ahh(._\y+NT!+;;RC !C޾T#""""""""G֘1cx)))>ׯ_*i*dɘ6mN>(x9nƤ`xVE] s!܉{?uF};E6z/<[ ŝg]Y'.uGF*p)9AZ}] 1Xz("~>Θ=!*J-p=:džqҳ%:R k5@ FWbSn #de-qr(6 ?/bX|sרȽ *cmO ]q [N}]0H1i=u;z3-c ~  ~6+0le> 9k튟6bߔ{]e*TxO>ģ,:j7_|:ABm\nCDDDDDD_+d ]|;v?!?켍3wppkhjZq^2.OAtmMghU]Dœ}.D& Ҥ \pf_C IDATύۯ+MӬ8/YfɇH)0oz$dw,ky=5ߐ9=hZ#>,%zDq3&MwDty~ZU*R%`st29azW@F ˏDܽdVI^Pq꟧8Sf*1:)u4b,=tO[pş!8}'I2O0nM%GF98v3Aw,IfF84uK4SI>Y*EDDDDDDWpw1ZqŹtd+ |:`o|ҮQOFĢ.PoA1Z_+v%Maok( RYzak X:92Dʪ=! |1v+A k]/L}N8w/+<yCUNu+NH^~-;1Z9*5/>M'Ѷ AF2ƖmT+dS^ <$Jf~x6}Yz!mu,Y!끻)ut=2^'{_} gkzbLwOױ1o*Cpf[#xZ rx\zg$Angk4 _}R*iBֺ0MߴDsJ07CC7;Y>!ai.+H-157ÀFVQK8W'.]wWiJ觙MGxyt _vwna{XqSQw徦.M֢j p>2 RpA*\/Ivf[OŠiJo+l_Dd SMq= QB?UV I?7bo] flrz[o?sǚ,Q^i㵷w)Ͻ}Ij6܀noWZI^uz>_?m{Keͼ{\4@߹\Gl- iguXg>i/ )UȊƺup94hTb8HAҊAuNJVw fmmAʘxZ .R`l8/;y`ߥ8Ԑ·m,4)V2KFj[pߐg9zŊ4cUQjL%R3w׸֐N⟸tvFu+ٺJ-6[D/%^>MW6)""""""|D#>>-¡C#%%CERR "4vg۸""67^G|j6>j[]W16!MWc$}CŽ+l#샗5¿o6'j=0[81{vyhL^]bR,[ fvzO/\$^q7N-:J&m>c_ÁˏPz#\-OQ!V",>;4]  Bo$ ;G0~5o(/o!!M4cR^ >jr[$g`֛eCZ`+E*Bo$@T;=jsfv`He*¦PTPl=gc SFS\BFȵx[nW 4G&Up|ƛ.-6.MNP^Y3_} '{kH-ѭEUUd]c[`e!Au-fm1epX1 ^5+Cji+stĎ1VQqJr](Ks Oy{zf!z-TK̰okV-TjTºa> RqO$""""""2YBB(FPddݐLwO>ALL Juj5.]5j@&ڵk's' &ƿgsx4,$ff8?nOWB*#wOȀt~SqΞ9;;;XYYA"L EfyV( ?CN-xx/Xrqu"}-[;v GƁĆ*R3x4PN^vDZvKzZ͘4|Sc<(?{d 0aaaXr%ѬY3DGGcͨVzYyt>}} ʘѷ+?Gmݱpd{UϽ4.dIR/Xf ;{RJҥ >sR9 1]??֯6C]X!nƤ<'{뗝"G#=^%r,"""""""",""""""""*DUZ䲗/=ʮQB ,dQB ,dQB /;""*}=.4Qѩs-R뿨4OVcm=,K9Woc=4&Fyf>-[<ŃڳM6Ç1<[/m/Nx7oB~K&oCyѫ,"Wr'L6p#?͛ 666hݺ p#11ǏCŊ1o|TXBC`T | DDD6^af͏{{v_/ԮU.Тy3L< Ϟ=+ӧ7v,ԯWgt..EEVcĈoP׳f~=~)홒, 5n]O5 )))ƯT*1i:1w旭$|؞u0nXdee֭[p {=8eտ1cHOOǰ_Fu4jf̈́Rkٳg˫\\9s~@vv^06իо];8ãFut}m_ر:3bر[n>kdffVP`mgxhٳg* oNrv{޽{$>08bsվÇԱaGꝻs{~P(zq|+55ƏCzu!O"""$oBm' Qgjfff[jժDs cN(Jt+WFݡT*s.cii&""* nNDJLL3|޹9s~O ?DJr2,];EDDS PãJ% h۶-ƍ_qL47mٻeݺt<+++Q1L+W_`Wڵkpy]իWAj#̙k#<$BѹKx!^z| }#!!40/^VVV?~ ''{'uy>~ZgϜmann^l>Xxf͜ Ν;s!-- _ *j^$C ͙XJ t6oThD|

>_ kV@@۳=۳=k/v\aMx+ 7>F^dL 8x^ە+W ""k{/ݺuCzz:~^sy!0p;Zn 7A*5];wbՈym(իWNĊ P10qddfx ooo Elc8V[رcظaƨWƍǏ4!͚=bcc1epqq)vKkBb"N9' [K&p nם7Eu˨Z*v!:6oٳg|Mqcv_y#00.YBCCѡ}{xyQ#ۜE܏¹svڶm LgE6ϛ*Nr4j;vcǕ. )k?ٞٞKr'!!^r׮; %K.s,p'ez_|[  YYY†gjlll}qo 'N%e\w;o rpAݱ{\(4jؠ@YYYrBs-j _|^͛7 rw I#o [w<))IUAQ\&ܽ{W.33SpuqZh.1cж=~ӧOQpst]A.sl Ћi&A.suZ f~ĨQ]aD1Eb3\oBǺv͚"ޏkѳG#''Gء$ ?$ R Ә~1

_*^Bؾuk7ho¡u_} -l$_F~pYaU B+d8WL!,,LԱC7`Р؞ٞ>_h畔$^JpwsU"=zTZ.^([V8qVMA.sRg(>u޹c\ ;>66V]BB 9 jzOs*6+eɓt:(eŒE/f ڶϞ=SrS 9 cgL#ׯpDpy!##M؆L5Y 9 z,7VWd޺uK kmZ rc8q"Lڴ6311QhWQ]صsq}+k?ٞٞK{1\{' YwDB֦MW*˖ -7\ Rg{g{7_ +eBt WX*NrA.s[Q\Մ rGP(s-T*jq֮Z6CacccjUjzދ rpy؜VqzN"TwwӻFzz gΜ=/*^s)}(KL%1hg\(|@aL?E).~|ٕWQMa4c$e?Aƍ+eBHp͋b$N:%eB۶o0W\.v\گ+W.gA.ӬS9(k?ٞٞK{1\uOXje Y֮G+e/<ֻ022 nHM+ٓcڵk'\G U(puq%> B͚5ѵk7o^^^xOtOUiiis*Ud0-0H^3gaW_hn3t7mAx4lP2γ1b>AwcO?aAPEOm4f bsSRRRpmd1+U;wӘZ8t ȑ#GӦMr䨨90Ebc?.+*x4__mZ5jEq!Gm]|Oq%bۘϗKܼu rxRRzыa 7jGGG 6%.]V^.쉙EW\|NN\}wa}M6 K.1> 3rf+.f=~[AО=ѿǘͣG18x * ffH$fz@[BgB.]8.11-W;""n^!#￯/B'BȜ24n԰@;uBG ӧOu-,4MMMo}!@͋|)i7}߼i=g \IDAT؏Gqkr r *!!G>IQ~:-ے8}ٿX%%kDS:vG 7hzO311AQ#P` PTp(Jc |8鏡aee??ܽ{3xzO|nː[V^U[nd eQرCw<Fj`̩S5:wg迣mX[{ze&mۖ83""*T*nܸѣF:r8uo|III?w{]f **O_Xz"憔q`_!==ׯ]Ôɓ3ed jr ~ӾEXX ?51{ӵ2~֭\UV"==ܮfZ5E/J5ׯ{i~{0}ڴm{}@P:u ^%K~iZi}9x0~¤Iq dgg#55ǧ| ۷ѱ V P_ 7/ty 0 M0jzܤIS?Bcժ?nƏw GWWd R):w 7V|3w.f͚f͚p^CBS$""",""*¾R\}ח1xCEjjѱ,J!?""""""""" x r#?+Q""""""""R(V%.b,dѿ=c!ʅB YR5jտ jRBϙ%$ bfegC;;{9+NB*ZVS 0 >ؐJR =_dں@勈efDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.EDDDDDDDD YDDDDDDDDT.HAx9O NX* J """"""""*Z-@VsEmj,""""""""*j5o-$"""""""Osk+lST>ZB}jA`!ʮL Js!""""""""*Tff&^g2!Q f/;""""""""Bؠi&XXr,""""""""*233!J5{d%پ|t233uz)@rǼ*􈈈W , fKne iiO<.svC""""""""z9`amVXTD#ʳ(IENDB`luckybackup-0.5.0/manual/data/manage_logViewer2.png0000666000175000017500000024742711352706323021654 0ustar luckybluckybPNG  IHDRH pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&,tEXtTitleluckyBackup - tasks execution progressf$ IDATx]w|E.FK!ITDA (MlT;{KE@z MHi\13Kcw晙gy]Pdnݚ7ov O ? [q) V <!6rφX bX @.!gE[ PP.5C3%>+wqa4PȮ[Czn?x ;r=!?87l6?!A 9'-.EZUjIz& SIڳ3IbčR2UA TLB5*2VJ2O< )۸F hCN@ BH逋^l#PTJA\Nnij4ՄjJBe||s+6p8/xIA@Ӏ͕Zɍ b!> NQekDYURTX 9o$3QjN1%S~ن BFRSmڔyUR.V$f#NE!hT.%R*WvH)/J+~* MxIӮ)ο6h4 (%mGL*j7z{y#9k..\wsvŸѮyU-Gz2<ZC\uٵ x" |HNF@W/ wV2=dWK.5cC<5 Xő JnjR([HG) 3 8e *i㰮 TN!<Q)eNßfŘou8 O1U`+ׂM_m ē(fVTYԇsF_RAʇ 1T"n){,J4;ޑ ͋~A ['58%"bLmN[eD "&V橕8DyC'tX[OHr/W &=(_&<3t+K/-54!!@A}$ 3BhC1PLQ=A؉ω 8<~*(t0DG&ڽw_= ^ (>i5Rȧ^7[i))9=~LǸ___R34LT%9-5|p_??`/ʘ-^ay#Ta^!A?xpڵky+7oɀJ*W^\r6j iGFPnͫ ad9JtU4=aVH *>EP;21EDuI(oc!VxL9zNz8HcJ?q$eƒ!D[;@=XS2Bj UqH@;]X X}YSuK!b>O<Y֠ kȈpJלʚ{ 5rXGΘ1iii"#"^z]֫W!G]֭+P'@=HHOOOOKKHO/2N_8ot1WLp:&%&6QP:Y+DZ4N*TL, :Pj@:wVlK'HKzb >!zt:&:`SPfuYz<{xx}ko8 EF^7 'G=z@J;\p ._""dZǎssܸq6mر#{mеKW`l6[ff &&F7kVƂV5>>~ƌVm >ׯ/ޅ F`XƎ ĸ>>~K/m޴\r. _ܨJxr ۷oO6f 6 F~I?t--:Odɒ+~P|? B"33cw322|N΃=w;ztÆժW0+/-_lР`ٲqqqUV8{tMU999=ztu&Qٳof$ RHMM}}M6>|xD_R)S&#Fw$:9tvAWZE+he6nxСL%--Cw`gΜ=sW_~A׌h[w#G~K5`aG%EVZ|'EÇ=vT (((88F K:zU gZ,P; S!>|NV92 }-٩!,L sP9 }+0+.@`_I׵^b\n?jYAA@b\nnDxb!U NGDzTSLYO Xh[(0ʔ+WnĈfDǀ.\`Q#G;vwqES.KF/fߪUR%fjԫf{FȘ0{ j{z2uzǹށv|W&}6ߕmtѣV^b&"1}6j4i䘘D\p)Ӧaisrի7eJ+'$٥Kdd=zl͚_|)`Ƒ֖cܩ'W\YN@:Q kImwm߾#>׷6Ԣ /^k׮0@m-Z^ze˖)\h[(!4{?#?{8e\є_y@YSAj궙3K 򺟝]L͛˖}ysOymYV:h4ʕ޴x@n<?NTvmҸQƍ2w҆ вeɓxyy٥Kmܸ񫯾;;m*QFfݻwq%&iܹH'蠟S0iuߨQƍ_Wݻw ЪeSs1ř&Ā TT&oǏ|Rz57s%j\8{֬}3|AʕԭͶ+IKK{A[>}^+W\:,Nݺo} '1&+G ,\n3#*VFd2͈%OĎ:dr|Y3۷bccկuhҤiӦڷ!P!$pBa)+Uʕ*M4uVǎjccg]o>h#I6b'OT UT4irV-9BYfկ_ߩ #Gp*U@ժU|iֿ SMu+wfv,0wΜs68}lȄ}TZtovAᅬuŹŹukvAOvI|  1/1,I~kaJxo#f@2ڄ Ti112Hepa}>Z1PZ!;ek\ .N>$L9sI?p8bCR%-[v̞۷E/^駟&%m/^ csAѷo?,^іRӧ?8}K/ԭ{w\*㊦Ǎ6y{yyzyLGK~z&TI.SZ>adܺ/_ztqA (YjLf/{l\V_ OO/| )d9/z0*1pć ߎO8 ֭%uȑ#}}}'>]/_BEVV֚UXr劎; 0qw۷ogZ$gcjTn( > 7]1OAˢ@|u_4vp`.?%炸'?S?N曯o޼w5sۡC"̹?{ĉ<@.VSz4NA܉eee%&&VRWG.__^1ʕ+LNJ`M( $ʈ92ݡaK?{dTd"<A׫wތ䤬̬SN^z)tA߻w_FFFRR"ɝ6uJΝTRAAAժW0pp/*CU 2jY mK.]u"?A_䆈ɞPXIƇ0Ci"{9!ROj\XF7~r8DRΟO Ҫ)z͚RJ9Ü Xgh3õ?4p]vU L-]̶mBCCIիW6m{amaeK-]>ڭիϟݻ7]!BBB)'7{.]nݺQQQ^a 5l{dV-0 022*!)AQ{w˖+S2cآE'N|@V`1h4Z,K/~٧LU-[ߧw;wӳg/ظqömK.̜={6 o;_~%*BuV0oX.\駟MTb޽z&%K1/\0//l2cǎom6[BB·~͚5#}G#r +~)en޼ w$|_ݻmذ`0ԩSUV4orrQ6Zڪ5kCCCo߾ݣGw1w~uJ@ /L=6-??˖uxܝ/Ι3oΙ3ŋZlw-f_|ٲwiyo|ÇF|aÆb5ʖ- sfzd>3*6]G,@(B 7[6?q+Qr8W Ǝlx^iڈScoʌ;+#2n̘۷mV7ƌEkB{VZǟ|wj qW,YҮ۸_;v u~W[`Swڵk֭Su$W28inl2|!`{8//1i0?{ؐG>1"Id u@=~,h0DB!ps[juƸx:>>ܘFQ1v l}Ȑ!K,׷/v;ꁒAAL%)LZJeK?pDΝv{< ffd_u8?ozh6o-[Ao<)a>t. !2p ֨Q޽z^tС>>>x8p'|"رcu'/pjB(77>ܸk+O ZpQ5`޼yUT u@9A`@M˗/KɶF|E$Q{ R7`1;v5f-ZpBνyHNNۧwzzzpPВj֬ /P/-,\߿ߥK>?ok.55oݧZr"""wQdΝ;+};^֭[Ln|B"̌5k^ڶq:IOLLBU Ӿ}NHPP###h\"Bw0 w+2"B 7io׎WfΝ>oCe'ק*eggwxݔEHJJwljej=¹cidAnۚ[v={ >իW߿?99fըYs@L= DEEXb ?v&MKw;KgSQ*o׮W>x7+ xuVܿRrfYV5Cttʕp7-~fnҤɐ!CAe/~kիaCA8Ob7o ШqѣF:_4TWDZoG_/oz݁fsJ0zhRۺu7o|)RmDDī6L/h5k7-5w^oڴ6otԩ{6|8L-[,^ޤI;"o655~={]ջ_w^8o6}zHh֭[-ZtTp&M;vꄛ  eKٳ'11nתUC:n㦍~~~u׷ADHqcǎ|s۶m;oK.st0NHWΝx7nФi/2""=LDȈ;vΘ~1/g##q[[6o~SN:^Z}?S:D!e;w.?})))M?-lݸa~]A"""Z~mGau'N@^NNNFFFFfFFFFjjjfffzFzZjjFFFzfn A呂oH麗_c+'oBx-f!#,_U+{1CzMCk+:y. 1K':k:Ҝ1~F|y+n y˄ҌNt>,R)]?Ti^g[21=ɡ^s!SA`6R3!zu_̦gZ}•Mlt7QB( P>h[H((TQRyn*x"w޽};eJ+X*{7,/[0ՒJJ@tʥGW^322 O$ŔuW^iQReNg2 ݴmt86mzjD" !x1Pz VYQп(/ Z;+6[ BMF.;_(InzDC{z0C/K^-LɆO ?U9@{6q6D@RR2;]v&H>{?ݻK/Zr ժݻh"O<b";hIbUV=*.X`b-uǜ-qb@D>)dd@

;w6|]YJZFBBՂٵ [V2g\3, {B޽رrVeNTPRL  ̉/ %~ؽod$څ+_ >Ҳ6-@ٔ Νdc* }KuaxŲYR!:쌬ѯ_F^R{C{ƫZ8ʚ8Qt˗cbR)1p -²eek(ヒ;`c`oP|(՜\͛ 0n}V0gfFBƍCHT*dhwpج>/ď?Z{?#͝s =0s&l)MS }}|g#)!GEh}K]SXDyR f,[nHDDDD5Ԥ̟̈́]p2ѪzĤIt5W\j7oeyyzy+KPe$l?uQUm%lu#U۷uX[VtVLˍI""A?ky6٘jȹ6o;sV&DDtvhРA2 LHoE kƬy(!]kG߼yСC%]_Ld+> "[<=<=_}gǏpB x#<,Esoo߯o+?V4Ax{y/ fYr#GlӥsgͺsNO-;;W|f<3X盝-nب6-}Zz֙GQQ[ol.Š؁bbzb%ş|qLNZtuΏ? =}ҥ|[믝;wVke_ft~{Zt?*..w]vM|Z 3۷~çE f#lZb& <ЃgpP>Gà=uc:ERBٸK~Cυ=~.#iI3O]_XB~Ii,KO])B }3*`,$ihˠm8A%y_"^ 6(WiI>iC_?.PY<}`gb9uJǬ{)iI3ғY'-6BDD)'m޼Y޸qCvf0yҋ j?d(IOOKOO߶mU@)'c33}w۶mܴɩm?ʕ+M./_\xꩧA>mq{ݻw_}Uٗ^j>^{ƍ}9pƍ3hF?aΜ9dddƜ3ϟ\v햭qaaae޴7.]rbbo)HSRm[mM0ɓ^ܰaܯ_?AV) j8p~sjz6~pM7myf\*0ɗ-BrO ?t璸w7 o/3YrtL/xzc$gLMX;a展Fvv۶۬Yk) _:|뙭]w:KxO0)TOpQV[9w|GZ?Q5 'Nnw[\roYş5\$WWygyO湸$&&ܛ m/Z~}љ\-~{nN8߯a؋&VZi(\b%D2iK,s֭[oܴk}z׮oOQ\]]$$$())߶ R|',?_5o|j))ɦ'h#GӮ^~?K+2/99)n[@xx8= ϷwK/sMWWן;{.k֮2dh؆ l+kYl&lӼy.^pΝ>vYSn7QK{+oɨ%J;_mſo/☶c4:|~ΥRo'&~ƒ ]f̚9%oq/^7?IĚL .wfmu E>f~ۭg:;1֛o&&=,BeTX.'2cq7={()-K:wxכ5loO?VK~]# OwO۷Jmp٣qmqqG}Zý~U!yz8p+W<=ܻvlq _u3F,ܿ )˱O?-V;P,1bᰡCT.kՂ l_N| LO#NsJ n=|Ĉ&\M:`xp‘#u@딯]|*TPpຸq.>} kGtմ̜LkZ05wܱ_kf}VWiS,jY oyk˙-_|\7忰bjU*A5YuB*ʦ 7#o?}zꂂkn׫Wok/(((WP(ʕm+))ټy=rtٙ ?_OLL2^ZڬJ|}}$&&=ZaNgVG}70ãXze˞;w߭^M7еC\᢭E~u:ҿ.q;u/TXTWZ.Y<>ΚG/_OGvv[ʥK)mڔ+”UjM!QUkfruII -.θp-BCê@֭NH44F&O ++k7sssL2ŰM6F} W^073߿\#.n̛?7oee2ϸSö5oqyWngK!//O,)WRcǮXS2ϟ_vېt, 1cqxcug_ `rf5 B#QQN9jXheM r;<WC}^=(&r7 nՎ8b|xFN+ߜ]O|<WxFf"[e_| `Zi65-mj5DDMV3ޜ~F_5jiӧ[poN`㣪 <Ԙ˗_|Yժ3gohe{1///˖-ТEG}԰WL0aϞĢ"V{ƍ?O&A ҲeK_~9L&3)'FGh4Gr&d2ٹsg_yeތ79r\?񸕽n6}ښիj{YӾ\\\VG;w~Ԕ.3sQǏ9EO3a?8loziZ-˥R9>4)<`yM5*PʔJ\ι׿h|x/WSI*k0T-yÿ]sQӪSYsaOkZ05l񰸳q%%8r\%%)R]]Oxi|x(h-[8G+VcV""2Ukk7# e˖&M)xޟ;K嫢zG?x޽{??sϟO.1mCe/r{{??^{}UbS.Hf+#wvvbʊz//?W *,,|j̓;w0ew}7 P.}EŽ߾}ʔڵsttJnnn=zꫯ}=+D!Sč4v)eJLծyb?1_7bc9\uxnѣPy~~ȈrGw ^(Wþ6~moJn'WTQ^QSLM}!QJ?y zNb?`ciG3ϟ 1换̝Ӡ?3I_țǎiW}G-|;"ƃfܹo]y...&*^]Et1|ajS5&uMH*FiE/N6 p;"Ff7*&McvcW}}}~^LڥKNfem߾^￟<)kNg^}UcyڢGzt4xРWfo8TΘ]zt6}Xy[-Yᄈg5V5Kzݳgϼx@D @ ͩSlܰx<g}x]^^nܽݻ?ߘ8yR-[Dv[IǏ]s'N\~Uŋoٺu_}UffFmmwea΅3ң6clfmY3gcccWZ=ȑ#EEEEEENsժ|%{u6ddf&$&FFFv2m7zKD[S4W7lذ•+sֿAfVVRRRTTTlllZZرc(M6%$$Y4Ǎ7u괄#GqP\:wOIM-+9{ܡC%$$DFF&$$ :l9e)kh}쳏<4<`3MzYG_ˎ7ʃ8ѳG+7ʖ,]g@!M(D H7&"BPt n@!M(D H7&"BPt n@!M(D H7&"BPt n@!M(D H7&"BPt n@!M(D H7&"BPt n@!M(D H7&"BPt n@!M(D H7P3MРn(5448bc^>EnwU塈]|vk׮Un:"#Q Wi^QNj&"BWw3#3[RM%5n:{jqĽPt n@뚦y̘i~A#"3&قfO5㋯?Ī-{5ߛC .f~Aumִn_A3+mf+[E]5e5kuhA]׽6jyh4ugNq=4Эe5JzDmDm5-d\3y5_޶uwN4Ż񷎗58i~ꋦkSՀYOV= ښVh8MuiiVݯѴ$ᝪ}d7FA5Rx_MMt4s'ͬo7 bho_sD`W}Δrcy X'l{h[ܷdm\:s=|oD/hfm[lC?ҭt1i1 \4D1Lj}g& YBk4XCOP?"xi\7xj!"Jm^Цk¸$K\/ߍֵ_؂%zX;O~Aǯ]=(l4XO!*0",L*._ 5uvȵJm&}fzFn@!M(D H7&?mln:sxZZTˁ(u@`DhMT(x(H o'V(vHG.X?s4NH +$Z=2[`ޞ#Od#< IDATxu'xZ޾a߸"%Hʢ,M˲nkƶn4̧0=vnԲe %5%[D/  AbVUqYUx9P'kyYq#{C* """#NR3( z9rFlYF v3ݪz g^T+nԑ (""cr` R4ԈVT8zmM.{ݜWA/',1K҈FhDH#pRKQ  |1Fvhb O`Y@C-yӗʷN£Uk=7} nҼ0c $@Tk~F˃gT3`g>|BоT1ੁ R8&D-xg"fDhffjDfLh&oX CP3`Dh Oa*9Ǻ>A۝,OX_;r5p7|C?0síO9HDDLHHH5'b36Cr \3./ HNI )q.;5D"$@Q35D@l P?ݻDWwT@M1d \YmiZW<6`o96}R2L#FD"$FnDpHɐP̎ɴr"3inSNDg䐙ML  Pn fш\`q,0<^o>́mK3@J]r @?BȀ= Z b׮;*|?MPR&RA@6P)5dQ 8"EE&~`g#F[MHɑSSu:ηk$.joS\ۿ}5N1#e$&"Bnn4tddhX&Cgu(ڎ@ŊJF!P53P0@@%d@43dj`.@Fl"bt F "X<ޏs'lq/R@@"yCD ư2#Ue@l@STyn@g2?ut 12YtTU`f`FHL *as6ZܼPQy W_0wJٲ,|?ٙ9'`(5=" BՒ|\D$Z q%085Qܩn;o*<;bth<$fHLTdODιF'ƞhjA2 g$M~qR=۾2~_)Q4*  1Y6h(F013&̤)74OS3Oykv3 1Is>&e33L@Q`V4]T0&!rDtfG8Sp@r,:+V|ӧ7JƄ FLD[B & s.ϳ}ۭWNLz)FQy΋"d\@1!16+TLUOlGmBpL5Te6v ]@X{_ 2!qH3~DW?VL;cŝ{X|m8=;s 8)d;D.$%$3%B H04B4-3+#_ETͥ;n~}Fhq0ENLU,4PmlAwacg"D35T0q.?XvQ"AUUsU3T 2#FWU*":fd&PDU@F'9R A#|f294jPaH0 Ȇc5 jyBv 3S`r=R~=YQ|voAJ07A7|*RIIȬ@w#bsHl y&Zy_/WB sd~5+0P̈- ;vΧ DT@ ̚@h DL@@R$ k0""$)!}𽪞ݹsrq,#ruQ9 4 1Yc tkr]ݺO{uWo^_YVdgffjb&"dN1!oR Ah60cDD nT ՝3bKݢڸ=A!Ak͉R$SM>jrDf(89^k8kG/}t*I \p 2qUR[brr7}=KKK4RiaGQ`8rL-Ÿ'?qD@B [\8ǛUr!21j <:5 uiJN@ĂJ̵)wzܽ};g>"dIQbZrNoԃr;':N0XșT-- }g… >mgg=011n@DZYYYZy) AkȩT؅<4EKS^dN0v++obv9_dy`QQ DY[r^~ŷڙM=1GKWVOs,F]KO='^ێ9|;wՙ`fH)*j76y'~y˾%Xzu-m$(:$ 23># | \{8e͠I5q.XfαWUչw~/_9r侯Wv6*iaVLS{?gU7̔_3)&_ەTKe )U#?;@H`>2vvs_nQC(f5`j*!:LbiMԼP0?3ȳy*7A3Y̒ :gF5cd0#f:B9OԎ;/ddr0X >·o|xN7@TDŒ7?l FD޻f?8?rVոMMc#ֻɬ̔I~P [7|kYg4,#Œ)P))6d@漦DY$1Ԯ man>{?'gUo_}_C/)EdL}1oijhvTS*Z]Xk(ץ oar%t?{1 bC6Y9fDR@$F"QI)3E g Hs=yS⁃۶oxyO|_WJ0uāDp ڐu!55q{пx@ AcMPmBJE0|F5 fv +}h-޴Ϣfɱx5y@|"2{"H *g%H`ѶX,Nǭm3}^y ?j MUZ x̑ѡ5k4"@y‰hrNơנR`QWm vl. -"Ue4"Æ "! 5,"#2:lA5w3]C}񱗮 w\ -  H DTͬbvk3\Q*{Efu/YP^NH_e]&amU[Ϯc@9 Qȥ(#w~?Y?;pS+S0D٣@`0et ǘnx,3;ǁ Iip+}.TLM[/K-3#rRڱcwݚݽ՝J\mqˇ @L@ KI;eȅB "`P2".vw,3j,Ø4!qQDUNw,ALF[m1!09"Rs7,(dBҢLdJ&xi]ru릍mƈhz0MΫT {MNT/,m['u Rp3oAZ8FGΛ*nVڞhρBBFPuOЇs؈M0 *ek#IRE{1Z'϶oߖ,D 2 @ݹs3EP B0}iN[Ԋ$;TdnyE;]ATBDk,Ûn $ d3==h"$0(/,zf5\qO1`$s76!ad@䂈HT޸/饝I,͎nxEGRU=T1YZƉ#9Upx=4-P5Y2Ŕ;L,՞_bAd@e"4ݽY 7jN!j8DP@34Ci1TSP>KR %)$%NHHDbbphAR/#nTEUTwLj߹R""D mVXnfZmZg5  \g;9o, 눅03(ED0s,%&\Rm6NQD9DDI4?"&b#dYIJ@52iԡ(C$l̻fg1Ak9M[ijwٻ }?w0{38=CS2D 1=1 FUMb&&* T;1W+Vh(QaPyT!~hĻn4zSJW@L"c#0s>[E~PLkDD b XĚn|T'f``8MYN1dV191)GZ(GĪsY*25LL!˲e7T 22DH1"bf1UIQGچe]*JTC.Բ z}D$Z>|q GP0"J)1s%iEn) gReYVC^̒*3xF2T#I|hZfR\+u2 #\ܕ2jcpOh6M"3vKC3̇{o:;;;m1Dى|nn .-/*6"Y"KdQeY68#:6rW(Ϧ=suجcUo{hf(!GLٱ}ٟ9rd(u] xggUuyyߞSPLF>d/oO<)ՎpPtY=5?x|1(V9$2qԄuؒ!i9RPq?>.]1pb5  ҹpH ݛ^'?g鑿ru9E5C$3Fⅉy϶bڿU,Sfg`&Mٶq`c\E0jѸ`%piPWe]VW!;GSSs3V6{DNwe.E՘nQo\iɠXa@ P V1㐵'*^)rg$`.#r u_Æ '335޼3y@lt?c•w}TTTx? 秋3>X[Iamrȍy}njv;D.S)y@F0"\+m֋hV 40{~=w;whԴ'7xw!2;4*hMWvݟ➽DVcr19Qn}L:/:Eљ;'" "*1Іi>mVVB|c)R߄Kyʊ8ޠ* n[ehQyM#53BDő*z%!ikr{ޙ 8n-h\6PCm4 1y1ѠN{~J2j}ml/,_\gGKEٓ&38k Jb,( :W=65x6znD+#9khסVQS4F21bcu7PNU hdUV0Q_qFk7xcDq3yX&  >gfaմƭfLs3D.nƸuab@jiZp c9j7 ŠF+s a$$ bJi9\8K"U_A=@D&FGF p3+Q})mا F3 s .Y+R⁇VfNRt*d`nL54˘ aDTDI Đ:H k}ggS{܅3j }X+#gdFN` "hrS'r#rj-{] 8u;,֩""T Fv ]1̚64ĺX[JJV+o#?x +.?̳(Úhs{%[o5!0!QeݩɼuY ˘b$jXKR[n1v:ty[T!:O<ɷ^}L=sOp<X]̜DdQ*[S1l .8_TO+FhdDnw{UQL5]'5aXF3ޣ?okx]9p 7~c'O1!cQD8AĆMtձcOJ_(ZH <ch\XCc й^iE#^z_kמ/?~>Ds$fOԛ^䚯PT||@RqDd\h2 0-ݪ&(6*%~o?xm-Q͇gn9~yFDf6Kϯ#,xMX MzӴ#Р6 ?XlR"xÍՏ .G Ȥhfy>vc<{o;w(A#{v/ދwϟ?33f&"nc(̬k5u[xWVuC dF6$pL!`NMTDР631Ǚy>qkBs@伡T'=w}$yFM[ ""Œ(c #zi$1v3yӌ"g{nrз:`iBV+5t]FH Tڛ@UO7|ޏYfCxu׍XDq!ff\2`DkU!gjuy+~L8]}hW{,"fȦ؄AB@rW}}ݻtgFGF8)hl[)o~jY !+j0\Zi` Yw/Zmrrw_ RrPS!J4l͑>&hv*KS7 _tcwFML# ABIf/޷oi΅afMaf5;GD2S`"okx{eme3r9{ IDATq.{6]]c oL5<\#O9?)B%Q?7mӓ+7KM.(QC{f ܨI~xlEW9!!h7{824:*7C1$`Jxp϶ϼkoOhZB@$ICUS0a+) ξ}ct_߹MJfp5վg^ٶdXQ @#} 8bUUz $xWzηܮ?ߺeQ+;UZP\\*A{3٫/>cOSD]9bWוsn*2l0M"(Vm:vlPO{8N2 ݖv6wt6MoָИcWǪ(2|{CϾt=@E1LhI9$pߺw?{lyyynnviiID y0L)Y}ꕧ7̴':?>p#y OE{_n[dQ jj09D"8/{_<৿.@Bu֑S3Yͨ'{iay'KR3&60KATɷ]9ʣϖ넊NWKQEQLQc#i" rH ]ly{d_~={f7F5!; w·c49:sݟO߱kaqCmDr"W@,;玾fp~6[TZV$bDL]r/<~z?ï{Ca@KQJaLԔ쁚==vztWOY^\;1 T|] /O^&(S/X9[;SDE-̶ԶM*X%LL1&PZKS]?׿A kp[&7[LX W$PN^|ţFE33;lPbN㤧KxΫ!CQ7 V+q97A1V6$,s1V PKU5+HcGۏ|{w?~-ǿ}\){kIuf_7SؒȀz)Vvx\:{.&ڭ4Ք_9jr!g U΢_0 h):u]i sYW\~[|po/n"215/ِql O13jt͡ imo7k?>N&qR炧AjP|须63 4|m-~ShfGU6V7N={諯މ<[{nV{pRik 4MHypHKs0VQ,XR MŁNu./=z/} ݅cyyFq{AxJG?yxϙwښəpv߂olKkb];n:RFs9"c3#yuXxa400YߪύN)* 0"2`41i&iAk^zԙ WБYY]0 !RW>Cb 81v1>ovpnR,;xx}w9ѝʊ23"&`'!0d5Ǝ[ [%jfhm33AQz;;.<{*u qRr A2E3 !wy@% *[Ǔ3[\ھ؝jO͙FD ACBVQ4Q`&J493FktM 7&sԯۿsB}sDhؠd i'4TKVdImR`&k/Ǧ~<)ѵkK:LG 4S֜i5RRU#0{̜S}0>~bb`<(wM%XT*G6Pdܻ!73Rm̢!HaÉè:14-[=D#mMF+9TBPOTlڱ|"%;#2 Ɩ P fU,f:smq h!0hWۻH.r@54}mŐ**UeȷʠlܹzvwB LͳS#*hD3nj 6ߔbIo}B0QUIԶg1e [ΐ\+ b RWVlwPHr)i(u9yјʅ\p\5իPg+.?jm%I˲o<Fhl~c?~ޫi]jj[oNYC,Jg΅멷7ˤLchSC cRZM,ת 쬽/38dmqt-|5IjlN.Bfƫ & `3.{UX[\wM#wtEq$\6IENDB`luckybackup-0.5.0/manual/data/CommandLine_Profile_loaded.png0000666000175000017500000024201411135053122023447 0ustar luckybluckybPNG  IHDR$R pHYs+ IDATx]wU?e . HWT,FEQϨ1!D`l1$XbQE# ,ea e{ysKrG=s̙ssf} 0G'|'|)1*( {&#+P['|'|OX_MMu Nx3zkZ8Dַ-w$$Y`0q_'笙'v&4[JBm`bJ$BX,@UWH.=$A )PI?> ӜD4Rh*HjmP?!F`R %,]VP1hHQB"]Z0f/ 3\=biq C#5JRVIc2KZ.E426AjӖUM0 =(mht ):>  V͡ 5IRM;MK1zC "m{%1OHAz.EH 9i[o1!jHCv&İ(I' g7=х!H-|WssGQ#ɝn IUPe>t`A !OEڻt$CT&LN *Ke 6E%*qmYdqcт.!0TUк1-9:N#PV@pI&oDGQlģ+ݤ gxrid T,zP τԘT/-c*fɡ 편ZLIm*Xp9p4;AS SH59xBR=6VVJ qOmF:hҒfv &;jk a $t`@t&A%CBc7>)Xghcl.4.ONÈ`3dfV4 cVaGilPi!sFeMKƷdB4fmrHVG8yUT>ϖ.EWу7V@wwlMK9"a^Oj=o9K((d{'{K!(ch#1aDH`P!#%"2b@=ED@@c;k]/a3M*(X-kMrab ؜= _TJPlBI#a@COn.0MPI;@ŢݖPZB#@hk̠H.0 (kP[5dF3]ƔJT#HE < 8zA҆C vyhU `ìIg-J3:t1sЀ0W_AhzQ&PZIƈa)- B%=kNk̷b& c(fiڨK32rI :,+Z%-N@R&]E&dFqh(P "}Sǐ(%?ɜYk94tTczJC r|$=(iu,9+/YSE,-Udxjd]Bf ޹gf t`ܪT'?Yg2e- &ugMhjW' hǜP,&YU1MR)Kf.#!$fh<[ mA {cQ:X8z&@ܵ8:a)J3,Eh΅KO O,%ɣ]XJ&R,%"i=J xe/*Thv0*aZb235m qGYxKc91i1v) ĈJM;>#*tw :@FW(ÁERl!&bb4"':FF!Upt+k)1`4ƛ9M!_cqMmࡨ @Lk4j L~])Ad &FhOjY(yBPJ[WaPd菩*/E9BchW3©0:]Ga3^2*@J3x\}R~}ad6K0Ҙ-# I0Ay-sh' PV:XJںd#vK%Kq,ES݊Dr‘#z`%^Yd4 DJ(a#__Y ͤh?!)S^jLˊ\1FU{OS?:[ޟ:5<. @J ݄z(fn>{m Ͽ4AT`HBFZn{;U+!)I4bK HИT$tQom 4Y5MqP3 >RKSi &%-1aET̵{*D*Nu43`p-0~F=%InbØB.,M$AY{ p9Kf;& `C#3WmT=H`, +4e 3l| 6s\mJw%b#D0*u51`GU[]8pF"+Uu)ZJ|0"1r;">i o܊'"L!./myuٚNJ!$D@ 4hFn*"@T0Iٙ;ŰB+=KTTesSZN>]Uih[ DVk0;=4ud7n@N0*a( x|Ѣni<x<bX,X8ydY|~Ji))S%%p 'rn Q)@QA"N87u ђ^ tV5%\V5 qՕ2,ْbQ)C"08VB 41Ѕ%qzkS)RN$KZGP%0.HmP6gȵIGcPX), R'@E{G! 8aV Ψ(N)ERdb`i41@"BAݚ؇ `(zq?&1@}̄:l4Q{ae`%&>Hb(h  "C(KJGiLi]rCD Fhi1kRzR#wA9G_$@jf-0-DR)J$h$qO#dq$jJ^K9jѶ :}W!:RjKIi['Yj5E#V@@ hjjK){rHr<&]E\7m^ SAnβW|zLJ)eZZjFFzzFzzFzԔP8$ 5oi_VVgoɲ "} <*&6t\I؜tЕ))BJ0Z3O{+"{w T[c{g}2;MtKH6R cP%5Sƅ|a(`DJ[(". ^dL B0k%.D *8JIXjgkx ) ;()tEKl-vb+iI :4m ;nԟ?bjXacRѰ) Q(9eiI#)8"q[%Y@zV usahf<cFEp$[`HlCLЖ,,C=_8l3yR2QXZҖ+Mzhх%ƉVz@g9Ig̸ṯ,)§U0gFJHTF/L}°VW 98%g~zd.\|pQƾ՛*A$fO9ᐨm5* FLՕ_jɌ p }̸3snnnZe4F~XuEG / HpPԵhSQW$ei gfܚH2,8eخ1ZS.$>Pc)yLk/e2ҬuuغzzcA6.LTZE jİ!ͦ )04Ĉ`<I7t}IFCR (xӁGwLf@kS[ ƒ;/.G G5TX PB#!`|uHiI K' l+ L &~pļ ,Ȣ$~o(Ƀ/NԵNvKbKL%Fe^|\eT5 BaB赣CqWkWQb'IR ѓ&IRJB@pҶ(&ӽc+|LvmX 6U1vϮUo:z݋WXxgF~}:J&LBAջ/#<~7=ڣg_ƬLL:Wy̘ukOAN:v FM<{Û#X,fYR*=%0ľt[Cd]6O{{g椬&z5w-u蝟yL 5倢/v6.[;ӎ.,II"^n)2BiSB'-9(kSE44 Aذw5>37G m6g/+35À/v6-_;FII `[|^S-1s' [ajɁ%Y"+H,X./+|^YiA<+%ZbHAp( A 9&-)ao=K4 g6F DԾ<oo")"δ`7 ס#~3>TF\ 0hKLx( [fUdF%$H$T,Nz%&Z'RhT"$.u2@Z`YY5ϹQE Ђ4,p7N2 J4qH25@Qs!f\)"hϒ]ۧיǑ&E\rI\5BSVI h&)E{Rʰ >%K&PZ" m7J4fYRb꥟+\gg((jw͟ۆaI-Lԃy얌Լ܌}!3wDA/=SNӅeWVVnܸ1 J)#Ѩe& s4oVVZpņK? gk:$gpqf[kbA>Y=rI}S uEKTC{e-Q[SBYуrrS7W4%omOO m% Y PrPVnf蟟{}>/2RЧ{оY7qbö3ba}}_6|N˝OS qkay3m{h֔p{v(/+e}fާ !je. _l|zN!e̒ ;Mu4oy^ApW[) fʽ P W|0()b_eBԵECif7 [+z tr K1JNyLpR]zuyT: .uXj^ F[|Ҽ0]A!6 g}tNR*<%L@,aAh҈xLowe,IVDB)31 ?I(:=!ICCdEIO i `OI K؟EkHmCI_#pŒR'jӶm!Bm?EQPP3qM4,yIg\VqL<-qKFE-i q0ٽkɳw'yۯ>θ=1*r̘u~--Kν%ƪ>˲>xݪ,:쳭|?"Ke`VqǞQBjWSmW҃H,a29oEc G-Ѹ@RiXĤCU-TBZ @q~jZJ9bEoo,RrPfmclKe^^TD 350m+eU-4^R[R͑8EFy\zDbj)*ts!U{C y9rCyݯbei(-#;7Uw҉ 6NYC "01O܀:PjŵIqb #p3 Z.hEѴ#F#41ddKAI%a Se*$콡!`&M  e{ ąR@TcM=.>nNqRha _cϹL-R&!;#-%^9,}͍/z<%(stҹu+UL6}`wdXბJĤ! ٵ?dgٺo/\_GڀS@ZV,{bX4Tݭk@q~'eзG# 57R;W?A9\eA9gS~zJ,Yh[1 ^a-:娂m+=ahnw78!WWͱݎ94Օ}hI}1_zxbƴ5ǫe)BT2Rz票f,9VpX\i=M,7/0yHX4fZcZ@ =ecJbBB]2 P.u}|>Do),Ӛk\['H`,J#EAJ~>R_thvH0SAq-c} 6Xh)'J u+Hos @X =qX>N+?ޅe{UCK<1~i}QN*S흟Z[v|uоYhSݖv66G6N3/\qpH#҂ظ1vܐކhڦuP/fSF{ W yѤ↖wkĿ,oSzKTjI*eeC< eA$nU˾{ff ?Fׇ.^{ ~:e.^ a_ʊd|upRVÝgt@g@+O*Q1(ֆSrtw82*rk8hR pvLL-4$E2{I6@99;bTGlϰ9oP HꚁJ?ϲL 0s߄pv('0 wP8( 9a1RPQ@8)lܧ֊Y#)lRHRRkRSj){}sthdqw})ޒcq֨uґ=ADb#˷~`όf -~XY?] ˂O ֊=nI #dﮋ-Qk}Y}YU 'YX?0gqCrӃ+Y[^[]Yg. jZ' a*t.n Dug Mi?kn5 -;OzJGP 7UY[v[Va=P/. :!1G3jSp/jD`Bߦ֮q%͞Pj\`(qjȣQsJtT1ɌA*R0&o } +QӒUK7,,-BuGq\M1}]^5*'-zZdv&al*KP2(Y*V`*WZ t<)JI3Gjltmi6p E o4&߀͠K3 -GJ5NHkO2dsS,( 3BSJ&=H \K@@xD%g'$[Ȅ.)^3XV$@K4 c|̡@0|wM}ݞXs4^jP.+=@}l4jޱ/mDL%gUБ7򺇂"'ǘS.|丞l0[o9jvymDmp^=|yI'¾]լ`CK2R7.Ӊ=x]{@^A/mro61p>7lkx !i7 A@^F %5Ͳ5ƾ+A BFXtEcX}4kyBpϊ<,&dقK0!10;H3J 0x DHI!zA5:ABIvs!.*XyKcwql 8X9}+ꡘeN|Q?d ^sᅌsTµcЗE`t£/ 1U`\<hv5=wy5BDb'qJkFX~Gl;dW#5(Cqy43 <0NID4`ʌ4jT Jl6ffdӗ$)S i:{ gb3.x9$OOw0LO#飰@6Ϩ:S4[F{u9e6Tm䣁C$*"2ݛJ#;0%52NHnxlEZaŝo14$%-}%PO; v I{3)kX"` пW"%*祷m{`_ܩ`1ڱ H1CTlʱhvjHoT%US|ZƁ M_Q8NH4ۈ4z>0)alLB Z" !Žq9bAxAAL^L 6.4X טm fYfl=Dd"Ϋh.fʡg)[F'6$=i,:gS^;C(vc9RS-R3*!AC4)COƙ)<-}6-aKRFZ[Zk4bV<CԴ̜Դ6컄wG@q.󢔴CG}B/MJ -wc q "gp!6WtyV=٥\:Mtl$c\1x0BI/Vv@:Ā[gRo tЇTo$hEMIл {hi~E 9`I=e+BW 4 i"3$Xl2]`),+#_aC{ޮA<x֛L4klQzp v;),gL6]|PsB00aI-{`-D8zIm.YX\$Bb6y6XZ$зuh\@jrQܚm0gt(gVuϘNf 0ӕz!"%-=-J@0NM S99%LHdoE#x@N&9pZY@ 8@u[ Ws^JwH-$SVҜ$$/l B>X¢ƭ bRЋ,"tH+܄/\mҷB4r_ gg ,IjxR*!FBf!x&FI3ؐeIrPn2_*F/i} 뫌}0DfVVж7JTCoH/) A.eybb@༰c&>!ԏaBNN';WQK4.؛qsE??IcAT@$6D}D%!o@=* qe\ "qY2/Սc v)! G! IBJQRAO3,)l0ۦaA{ ,%!}Lz_KLnatL`SqS 8_geVF(\0xd~֣ei{mbp dE`!LϣKA bUZkMD w+PW3,9F,#z;+wAvSv}x$Sl an_4~ ݾݤ ǩB5,)8.FG&9JjӛF$iI6Q6dD. .BL,^8oRgxTC(qwqg_hiSvck27"y`&3Wp:ȊXlbh)a{u0= 6$MA4h5QI]LzҽqǤ@үa=Cuv BI%l5:o:$I~HYkP2O@MX;=%/9xdةa㔑NrvRZ(6rc[>fJ9l.%!^ m$0^Hqx HZ`_{w5&^S_]`&"x$-*m(kY~h#5>=|8h` ^1=R^ι2//q>ߧo{جw©ҧoG`֣Vudҏeqנ?ǻb=?rn.<,O+u+.ϺO.E)PuwTvB&n`rZ \!6#nN8l=,02e=MEkY@ y-(㖈Y58Clb}Z=NLPSK .KY(9,s|>ʹBvADMӋ܏xVCe>Sc=e^9+ St;kD.H˕bAQ!KZ@ s>[L\8 x1?%i5&m-: FEK"'u}@m24 Xp%y+s L2I"|/0/0ua kp@Vȕd*ޢCe話$ttMk4I9 "O'N}/) :y6w=+;#,iZ%bIx"˸ X#[Q>5ˮ$tܫ܆Cr*bt9YMuylɳ OֶrX B '9 z[wt׏$ ImSP,`l\L^a&+@\agBG>r%죨)pMm~;h;0h%7j? ۑrR"tS-Y<ް/#8%DW}wBuQ΅H}4xhچ6L&ϮDLQ$ICL$ $g6,!]\\$1~64,fo@Dzȉ ANĄ1x:=H=2f𖧶W6ݚ' <&;CꔛO",D}ޑ+x;O0ÇwL g]KIʁ HʊÇ@yyyi:X{m8;3NiBuP)5wFW}LITZQQ1d$#!nZeRH>ʎk}ap8[8@d*d4U3NcC9%Z`ptpf7rTb@"!ivx)а>軩gkܧ&N%r9f^ēOYZ_2;+k%s77r'|ҳrϞXlĈ#~=ztK.h\~?8s9g) Y^zƆ={0~օzQ>  ^;q;\}dO•.GB;v޼:0Ps ]v_ݑ4IJ\(pkMg)w{߯W\سg '̞}Q޽ Yx<>|x?=zD{ѣGn??;+vv@]-\*rktET}1g}nذaTs]qSIr҅х[iBP,V|g^B{!IDGʝreF!y&)+s"8-tKܽvOg)JtL$A(p{%?hҧI}>aCP(&NU%o.!B㜙w̙߯f}~Ν;O?.N+~>׽{m۶-Y˯vY X^{9# ų>7tPصkM7?)3uQsW20%m X쐊,¹s^Z/mݺd_~E= ^@?hY D0` l9BQ"F|roy*:@+JkQ"O>I( +*غ'`xI[~21F@soƍ9ӧN h./f?1F7o^ؖ%^Ӧlٲ67cO%/iɻ^u՟^|Z[[Gz oY^>~eo9qO;Fr)K,NSO=9~=sfLvܘc'M /ۦM IDAT\vQ#O-G7omSfԔL!D=wG|ɋ,Vl?sϝ9ҩ'd%%y~ykO}&/yםgy';?4m;z /<bgyرǽtqc׬YV55xqƎy9gb;\leYhl /%Æ&Nٰaù<~ڪիࢋf)SO^tٳS.]dWEСYR^Ÿ^9cT\zNr‘GΛ7דּ~d!oqǍ9g};-q%-3K T%n0s9#Fyꩧ\J28X^^^R2?<>f̱c϶t [TDžE.@r`65{|RociW)ǹ&&!٤u% \Nԇ0Cnm8;Κp/xqK]CcƵB6tOc+⤓\뮻U|w?+W\5eʔ}OEtI^ye~̜xc?Z֮YG}4rrr:$C(5kW]裏~g%74\z%F,^dIeoÆ]ugXj߶`O>ijx<^[[|[<#>J){<||{صK.9?XxI'swsw܊tMr;.cS~̝ 555W^ygzo_0^y3fXzϟO. XoޣqU?9s.:k]WUWU 9xy?w]r%j]Eь9y VCҜ]㰉%=5Dnl%w(, 9qm8l;I!< zBTO\ҭYBX꿋c}W\qyΫΊYY\pL0qذao-[??a'Ds٥G:t?}O;t8ts":묳O9ꂂ-*)~衇 7~?GR]fquBkNXtɼyM6w婩+y'??.p8F.`;OZVIII0<~ p䑥J=OBm̙37+>O<OA)eVvvmm˖M4!=~8b R!̑/u;aʔ%K'?ilj>m˯HKK{wegϚ5 &NXRRҥw`^A7@`K.!C+/YlРAz%K ;+vٛoN>Æf"+>I G32TU?{l4ieoy 'p9|0lذiӧ/Yѣݖ {IokO<@6 ʐzr2L|sv\3srR;te* 52'h)١ CL9O-9 /+²$Y+Bcp_9hNNNnuuOɡ#8sy݃D`_;:H***7nk6gΜW9N,ٻ}Z/{kg}vڟΉQRRRRRl7|=wS]]կw`08D֧O*[g}ӟzCcc0bE/0Ӱx⚽{r#݋{E"9sTUWۗ|Y>}W^ }ZjT,YoƆ|@P-^xBpUeU<js9۔|2x?/=S}NJT(>dy~e˖vM7_Wﮮ2E㏖#JK!q(˲+,*R# <K~x7}!C /)?~2xi)2u7aHW}x;<lkpA4+Z$<:?&c;@?Q[22Ł&HY$ZQOmB+p:'@`] jR$z((++#w\ukAAA[n%[ $=[oyHBnSOvمQ5?o/n3f̱Fz꩟g .jSN{͞5󥔅C {gQRb1"[‚¿Xn{'eѣGD~꩟lޢE.{(p*\TX4tذ}W "bN T%pWڍJ @%34v:A%."p@='KНNGKɑi싣;m҅ g! qiJ>wM'MڶuK/DȺukۓ#X4aF`6}՚k>/#P(%%cǎǽ⟎5ZZZnw]{u>CǏ'裏F"}KN&L3F#VZӦy}m_믟rʩ0`eY .,//,+QBkvͯ=w_Dh4?SM/t4YzE O6iĊ]~H+.Z8}tMӯǛ7mz啗!A_W5uOrrDiii^sM^+`_M˛CPݹ2^[[[Xݻ֭[L0&N~1]ʕ+`JJ#2;vDQ.nbql+De˖mS#QSQ$r|$I-'MZV_lD"ȚkVZ0{q/\SOkҺ=96h&1,K.8C6R+>pDc3| :nH̥A%^1O<]P}~>!gge=s8∋/s.wo,//{孷 E/DBsΙy}>swQGbc@>} әSB!C'6}uKKKϘq@ff;edd H?_yM7QZZYYn% fegx`(k9_SSS0#3&Iiii s9_~LRJZq7.|u?}ZJW(,*_QZ*P>@aQM7\ZZ\_]~ܑv#`>}wRSSOrbiiiYY]Դ;~uܹsF_}-C~|OwdHz=G޾5&)߶H>} ۟jO}~݄mKs$"S(ǹuMmhkOhl3ܞ3O<ѓ} FE,/?yק9xCdt &N%mVk$ ѵƇWpWp?d\J{ɧުPo^JŚ~ϧrj O>;L 9&Zqd~/%)N{[!o-QSSswm۶-[[6o6lZA:ߥDCc~-2 _b'Gպ?w+--Jԉ[WY8-!rfw (wG9Auͦ yv` bRM'w/O@m5~J$޷.XGIJ};e[c1IuR;}dXʟ~'qhGRƦٳgݻw ,ݻ+sfN%߰a#Ɗby[ HQⲵ)S0bQ RIE+ ߝdJ OJ"/0 V~y*,v<\7FfO>y>B4j&r2_ת-֤'v~PڡܘK=suhrl#O$%߼e-)q%SIRVm'\̒ >&  k]RAƖW.o!y"qc;k&6t%y:BCS K/ndr%JnJT!Gpf\&Q" &v3o3kG>͐c7|Xwp @ָO "#pk]v $W~KX q' Qhjytg0@]LTc%eb])۲d_ -y)B AY)+qTT-pfrg+fso؁}jscOq%6 7xsmײۑ@2OnIyD%D,;n/+מYDwY?%gc_geg'JIze9Nc"s1 1vOd?p?OIG6l5.u I-^Jh) sn A-]Wp]H9,Ft%%#I+ B{z`Wt|4L:,9;omlOȵO>}NEm; Q3Rf[$rwq?h1yƳAϒQaYD7NJR'*kx OPf'|O,F>鿗ڳ(V:YsGY Sui=0QCɟmu xHsH`Fxx0TFsZ!OS}|+rO>O>}TesE8%ڄO>O>SȎ'|'|/O>O>~|'|'O>j9UUK.}??;O>O>䠆]}ueUڹkmiiIR߇S>O>OO~r_v5ׄ 6x x<#>'|'|2;֬Y q_B{w}x+'|8 ㎾}~_~_+7nO---o.Y?GƏSVVV>ïڵ^ y`'q뭷5{֖.W[[ r/r/˿h4 K.[i.Z(=#}ʔ)+"RiI&͚5~_~_oذ:upiwxv.:,##Í kjjB_~_~RD@R~SkSJL|'|ɧ*O>O>_NI>O>O#[=O>O>_KMM ̬ GN)|'|鿛َ;Z#QaIIC)} 9LHO)|'|'ϿbWEe>YY B )|'|'hii޷w_ =*47gڹ@[>'|'|Hk$## 3#5ui|'|'iiIꤧgdAG|'|'>tgff>CIJ4tk&''gƍvBP=;.䮻ZbҥKsr~wyz(ar{/_|Nےjsݙ/C}pʧ뮻. s=+WB[oˎrsѣǓO>م_uUB~ yvѯے^JKK?#555߰ |oWo}>O?hw^{TSW? dHR2(ZS AljU]GqlR7}h],kRi0t*^ƖgDNK!\J.@ 82sHrkޟs紴EGG=^&Nq8p 666))'%%w8XI]/m5Cf`”L&BqQW^~D"1 555򠠠~;88_~ډJ@P---AAA999wy緿mKKKgg``>䞟T*%w{{mwMu8H]3gΔH$)))mY__ȑ~g|Æ uuuJV"H?cƌ۷oaK,ٲeb2eJUUULLL}}=uqx!^ or^OOG}aTJǎd 6⦦ qbfZ][[n:tť~f3] M" w9w\ժT*M]#>G&8?=|X&Q,JKKH$ l6;11љw 5k dɒ\Te9NjjjWWX,JBpxy楥}篿zRRÇ_xYYYfyٲeԫMMMT.BYp|yf%F71`Tq IDATfGR̛0ۤX/'!!78rȐruLq~j!1r-ZTVVf0Zӧ.]J߽{jCBB!>f۷\L/?hX,7oޜ6m!D"̜9l6߻wv~ABŋmqR._Lb3 jaFoxxxIII__h,++[t)֭kjjw}ŋzzz^JCJu``@ ~]jժ+WXVNweK|>?''GRYZxܹ^zϟ?o…nPQQ1qAKX\\\L:\/#w8nb Bȝ;wC sd0)5'@ `XjQRQ_! .ܴiԩSV+ !< UCz/ՋZL;]m__}prFH$"dddP?X,e;u?Rn;;`2abBf3Ԑ2CׯK]ٳgWWWD"ۙ7|3$$ V߶]r\jJc'jkky<ޫk.p_tn&z)//ŵ݅ri`E92D LKb׶e@,8u:#6?lLeYLLoݺ5lMWgG* *a r|Νv̤~˗{xxTUU [}___>>>z3t:ZVO:URRwtt8\/#.~B?mRcǎBbqvv5k+z]{&8?p 6ͱC}wihhx8P(NFp8OO{YV>EyΝhB~Eu7zxx<-r]+WD^^^֭?i(V7|[ZzL&XȔ)S֯_@J 0vBZ[[̙C֤2**j,ٿD>>>GGGGEE]p_~Y$qW_}:<>KNN lb ɤRqeTi4V) ]>Gy8)SXo͛7:gfB_B4MIIIVVJuX^^^jjez:\B\.D|>f ر!wy/KKKK]]3׎DǏ3Wv] X,EEEO>q5[n-,,rfkEWXV̑OC433͛^>7oNOO7 _u]]}kz>77wMMM7nt:O?lhhΖH$ԑagԩxF{0ЭWqKIIUWW;3okߥ~pNq~joi6MBs;$hǎN~~~;8d'8qi&;;ƍ'Od6qq21p3ؘXp CYYٓ}N'y2%=zԙY8x6*킱ɾ_~=k'~='_9MH܂t -p)p ) p ) pGtt4?hdX !GB;?̙3CR-\f(G9Qq)WT5%J~+חͦ=dXj3V6!d˗=/z}VXa2n޼9o޼7?O(G9QrRX)u)W$++o[2秝o<~b(G9QrWvzٳgn7r.n7|O|ے 0qst ):3> p ) p ) p˿n`}I) p ) p ) p ) p )-:C20lGpI5[N[N[N[N_M<&SnA:_YN[N[NwEp 0N[N[N[NINnݺcǎYw()<<^~CCØE3aaaoT*}OO _!?>F3AMX)믨oAak׮p֭ׯwT8p@lllRROJJp&S589RxիWtSN9sQP2|ɤP(=j4 !JR"x{{aTAAA999 KWaK,ٲeb2eJUUULLL}}}nn.8ۻwlXfZ]nUp>P/EFF jp{磏>2rҥK}!$>>>88x߾}~}9D7>,J#jbرc2ӥv!tq ;wΝ;j*={twwu:L4 3gNwwZ ̭Z,zk̙qqq333w100`;%&Hlvbb}k+W,//OJJd< M6%'' 7n$dZ-d2m[SS#Ν;|{d&W^vw'!ᤦvuubT! _ĥxzz.Xn>̛7/--?ד>|h(((0=:\_te˖Qur)vr87xȑ#n28 -..og͚]hQYY`jO^t~apprE7<]va;gϮ D1f/Z!!7 eMM st)//ŵLLLP3^kZ}}}!~~~Z*4P:l6S$222Jx~~~BZqqqg϶87lC:0t:ZVO:URRwttJﰝ\s]veff[ƾk˗{xxTUU 4gc!b8;;{͚5_}C; 01} CCCkpBaLL+WD"//uQjի2L Bbqdd$C޽{VGEEٿhBʈtsru`۷/99l6ÃXd2T*PYYxbm/QSqqO|| tȥq16uTw}wFKׯ_/((ؼyszz`[ojjvZiiifffaaa[[͛7{\QqNcX?ӈKII&60Ѱo`B)b~;w讯7nP_HB77>lk1}:ýM&ӝwV !pvxQ7>~[j;=c֭MӍbcc߿0fLv,دL&%%%c30xS۷o kƎmT_tttYYSүknݺ~ĉ*?~|111:ԩSgΜanE(ܹsܹVUTٳP(LII?dR(G&//]wBッG5{wFBHddd\\\@@^(--%xm۶{zz9rg0ۻwˆ JD"߿ƌo%4bɒ%[lX,SL%NGua9\_6\.裏>,J5 !D,;vL&uvvBBCC7l ? r+8]hQYY`jO^t31]|b0j5!dժUUUUW\Z:˄__𒒒>XVVtRВJ_n]SSӽ{ /^siӦu988T*[[[4߰a.q(|>?''GRYVܹs/˗?8… """9Nȶa<#dٳg !ZVT{0;##C,z@b|Rzttt )vڐBHDȠ~dXk``^Fu?RL&BúX,l6=<<9].q(gϮ D$WUU!!!Tx555h4\.z8n/C3#ۮQ7?K2?v!D,gggY櫯Z]]]???VK7Ͷ3˭RR;a3 /KKK333 n޼ 6oޜn0뺺:BH^^֭[ \FyZT:u(b ZyЯb)**JLLLMM=}'[_6z>77wMMM7nt:O?lhhΖH$ԑ]t\.|> I]0,VVV-?w-;$O>9qDuuЯMvv7N<\mbǍfLpO`ti,B1Y^x [D"QeeBxJ̚5kܹGg||D s9.WWܠG֏8D S# .x6$SnA:SnA:OnJݒx<6Xztk׮u/m^^ުUo'>>~⒒ g Gkܘa00S/★B OTSSsҥ >)999%%q<3ij>[QQQQQq?O/ѝc}2,##c|㱉X~=;SQQ6'|x8NoAak׮ۨu'o0,??貲>C)))oKߵ8o~{G??!^^^gt6)3]я?zꘘNwԩ3g0o/T9۶m[xxg}}#Gg ;wΝ;j*={twwfeeq8bBHeeeii)!$22R* B---AAA999իW_^" G/ SRRϟo2 C`o޽<(**r-6lS*%KlٲbL2*&&>77+yH:'tP$g̘qm./]wBッG xw~߶tvv w !ٳ3gܸq#aBݻ)8p~m޼ӧ͛7z~744tÆ b===+**er{~>l6Ӎ[~~RH$2 ץ>,J5 !D,;vL&uvvҍ/ffΜyʕ˗3CtyG̙ݭVb1s+wލ/..I$Ą6Hr87xȑ#ԾM&jL&lLf{={d2+Pz>//oӦM/ƍG~jjbIHHx뭷ȟ IDATfΜ/ H$k֬pRSSbT* ~^C`,K&1ۼy>_=))ÇMx? rwFbܼysڴiT]BV A\.wѢEeeeA՞>}zҥ=T|u555ݻwV988T*[[[4ݼ ɣB.^sU]"̜9l6߻wϙuaٗ_|b0j5Cߣ!,??p{/\m0***"""tjժ+WXVNwe[;|>?''GRY?~$\xѶw;w^|rB;7BHuuuttX,}񸺟d'Ξ=KioojJ3q:E;0. 5d2BNFFƣ_;Fk֬ꫯl>M%<W(V5..nljvuuBZ;ߺukؚtna'C1Ͷ7l___w!]YfQǢF_~uwUUUT2ʰ RaT*ÐrΝ;wڕiK7 Bt: 7!u5~^_]]|r*0nMp&wi>}:;;ܹM~GWd2X,]ϱ`jFj F p8OO{YV>OA^p8B0&&fs`o߾dgjN2eNr2ݼtKBZ[[̙C]#u7zxx<-bfyիWX_~Kڮaa{_~eHr_}՚0nQQQ/fX<r1*(..񉏏g7ʕ+E"׺ulnV?}!]O9|tttTTԅ ؆a?]gSKMM]l^JuB.hlN>s)))jk*߿C3gΜ3 /zJL:uYbZnhhpeyE7~ xJKK333 n޼i;s;/iiiNra^Ν{`a](Į.3t2loCCCvvD"ill0 6oޜn0뺺:z}nn]F7nHxqnb)**JLLLMM=}'>/W'ܸqCӱX~yCt;]gVVV-?-y<]<<<>'NTWWw,>ȍfLI{d2ݹ{wZ`j!9~L$UVV*_F1ӧB$ŋosMw?k֬sMD3?_btNXgg焺cʼn`0M{Ow8ƟtQgVqL`@: 6!8%==}C_锕Xd{5r'\;SnA:Sny\._v-ݫ[nekw⒒!\{?L7J&ؽ{G+++70xt {R/=oG&⒒6ݾ};06vZ//r&C=ommOɯrg>qoh?sN?~|111:ԩSgΜahl6SɓbX,C{.H?cƌ۷oB"##R@ P(P(ܹsܹsVRܳg톅BaJJM&B8z({~~RH$tm۶pOO#G؞ѻ{wիW_^" ,S\\L,--e.qrӠnqk!ȸ^_QQAm/\~ҥo>BHPPo/ P>k̙ݭVb;XdInnT*zWšLf{@Mll,IHHx792$3{TjjbIHHx뭷fΜg{)00033sǎSriii$111!!f'&&ڷr$LB^۴iSrr /qFBH[[L&+((P2L&r b344tϞ=2d2Ƈh];t̛7/--?ד>|>w>]:e%~7fq/^ziӘ+Bȝ;wpE V{K^r__𒒒>XVVtRe{˗ !AVBwBZmuuuHHF9h4Z,7o;>t\7fYjUUUՕ+WVN|Z~gO^VVf6o߾}s089>wYBH{{VU*JrQg!&ĊAyywFFX,-,,tŢBJ Wm)E__D b ///)!],\pӦMSNZ<vrӶeҸ1sߵkF֠3D]555cرcXf͚rooj"iZ۫/i\әfr 'x???_PXָٳgW?ŀ9QҸJwuRhKlP!|FC&Bh&m<,X@6V kq8Pcjʕ"kݺuTZzL&X>wjQQQj4PhKFpiF2**j,_Ƥjϟo_uΜ9ooo[;wDGGB|||l7נ\L4s'\.|> sϥP!^+mСCɟ}lV(_|Hxq0//o֭\.W0hJJJT*U[쓧?СCF̙3'Od.8eڡs͛7 zb%&&>}ĉ¶7ozyyQRSS-[l? +++ -O/??opxÍfLpktiH!<,ߴ_91NL:H2Y,--mCN[N[N[o`(&qt =H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -Hb@& qt MH$S[nݱcxGݻww#'׮];Qt*66_PF&,,O?uRMMͥK6x/?wDDS۷o kƎmT֭[ׯ_(pؤ$>4tXzիWtSN9sP2|ɤP(=j4 !JR"x{{aTAAA999 KWaK,ٲeb2eJUUULLL}}}nn.8ۻwlXfZ]nUp>P/EFF jp{磏>2rҥK}!$>>>88x߾}~}9D7>,J5 !D,;vL&uvv5ЯD"ٿ3n߾m[[BpΝsεZJrϞ=|:SsVaaabTŒ[o͜93..R```ff;R)U&Hlvbb}k+W,//OJJd< M6%'' 7n$dZ-d2wRMML&;wqٳG&LW^ye؁sXa%RiDDP(v`|H$`fG0o޼?_OJJz}#</++l63p}q8[[[-[FՉnjjbȥ]dInnT* aҭXo9rĖ;Thhhqqqmm7|S^^>k,&\E V=}ҥKm/R徾%%%}}}Flҥ,˗/S Z&|w%hꐐl*s?hX,7oޜ6mڰ9OgggRlmmh4~~~Î/Td?_~X,jժ+WXVNwe[;|>?''GRY <$;w^,_#ŋ]]]===W^{CA>@s!ddٳg !ZVT*J&ŢBJPl>>!!T92 ^^^TIGGǐ..\iӦSZV?ƩX,a[sX.NB1-ÎL"'NxjVV֮]f3|vvfϞ]]]&9b8pB|͐jZԌ_Y?D5μP;##C,ږ!SV#EwfJZ]]]???Vk{JrNg6_N~x~~~BZqqqg϶87lC:0t:ZVO:URRwttJﰝ\s]veff [ƾk˗{xxTUU a|î!뗡~c!b8;;{͚5_}k 0Jɖ9} CCCkpBaLLɋ+WD"//uQjի2L Bbqdd$C޽{VGEEٿhBm>8\cKNNv2x+V0L*a>TVVFEE-^bxpKTT\\OΙ3m_8Z_#s訨 .8S~ݣ뗡 4h4ZV\;}:tPrrg}f6 _|a{>''G$566?~*ۺukaa!h4^3nOєdeeT[n|߿C3gΜ77wMMM׮]+--,,,lkky󦗗57nt,맟~rK2;뗮s="L&Suu5 L,[7 !ւQl=??ou.dtWvv7f, n\o|6ctOOڃM&ݻUY!< +'f͚5w\g5:'`nyQ`do:XxJOO~8SnA:SnA:S\._v[\\\RRRQQ1߽{VZN7cJbcc_|1  2di|>Qlp>GS۷o kƎmT_tttYYSү'<WtN:s s+BpΝsεZJrϞ=핅BaJJM&B8z(x\~ҥo>ݻwx466B"##z}EEEii)!m۶-<<ӳȑ#?޽{jXz뭙3g9ʕ+˓d2ك!KKK_R5$IbbbBBNLLtv H/֬Y3$YdInnT*zWBupRSSbT* dy_Э/ (((0ͭ˖-^njjr)B… ?͛7X,L6l;vJ#6LVPPVe2L&uA7tOx 9NBCCkkkYf1288!wܡJrE V{K:˗ !AVBVZUUUuժ._L /))3eeeK.eXl>-T|u555ݻwϾŋ]]]===W^6ma\Ju``@ ;srrT*UQQj ϝ;K/Q^|/\m0***"""~~Ҹ9P9NfO={ޮjJ˽322bqmmmaa^,ʇ!*=!%~~~׮]R(!KnY,`pQDD^L&BúX,l6=<<9].q(gϮ D3bUUUofHH^MMm4 rz!N[*=<lQQQ/fX<zZzL&X9 xľ}9eʔן:uʙ !yЯV?}!ݺs(TT\\o+?|tttTTԅ xE"}Wkjj q\R$yyy[yMB[r\9N=kb::{.%%E LsQJNNfB/¶7ozyy1͛7 uB.hloԩN+juCC-ӭ :t_RTTz'NuGlz}nnӂ7nt,맟~А-H#@qDǏx߿C3gΜx?zfB'/&O>ĉOC67nܠ qCoqOw77>lk1}'&ti~Bx\WN!3nD )2k֬sMy%NFdSs\~ !AAAGrK1NL8`bSn\OQi'--mTV2>t -H܂t -H2֭[w1>֖Ǧ}K~yyyVr/.B߽{™e2p5~WM.] S:/Y(O?K555.]탛SRRG#|_~L1ۻwoEEEEEEiii^^ސ' a]d`9NoAak׮ۨu'o0,??貲>opwDLq]я?zꘘNwԩ3g0o/T9۶m[xxg}}#Gg ;wΝ;j*={twwfeeq8bBHeeeii)!$22R* B---AAA999իW_^" G/ SRRϟo2 C`o޽<(**r-6lS*%KlٲbL2*&&>77+yH:'tPBCC7l l6K.}w}BJD"noo?xN#49~u)~ÇKRFCǎdtFZfYo6mLeD3fܾ}۶GuM~Gkl ػ<MB4@B@XQx h-))uY} b:m] j/U)e*^hUB$ \~ќ#_s>'ys9!!SLjr愄GyzzrrrbbGrr2S_}۷3qmmm H* BVT wgǏߴiBX,K.e FcAAʕ+SRR&M/4͖[oM0!>>{,00%ŋ|~ZZZgg\.OJJ3gT*%q6q͜9w]jS(L6-==/xW֬YsMD"Qvv[V+weee]?)))t9!zy1Kcbb.^Ro<瞳ZLܹs󓒒Bc~m~ǐtj%%%_}Uyyĉ9xʬVkjjjr__߈^\VVh``@,QSS;v{l._d333>׷k."999/>xc?D6l(,,T*v=>>~~OOn$"???^N`!66ƍ6!q/󇏏h4Lh4k[noH2`H"3 L~1gqG5~XUU5|OOJoKxs>19}:::bbbgeʵZmmmBH$D$###E3f`>fnwvAIRǗ0|//ׯvXtL+V|T|i)))O,_|6!q?//Rv;G;ѳgx"r.&())IHH` [[[LBDΕh2L(.[1Gz[wcbbO8owƍ{>=9qyƫW:^X t:ǵƍKMMeTUU9_#|ƍǏo۶l6=zt߾}D'bGxxx?u:]iiivvFklltR۶mKIIϭVRܻwtcb̘1^jlm\CcpS__h… EEEV0L:wskF1??˖-/^<._, 5rsse2YCCݻByf۱cGrrrZZڑ#GCDljDt%q0pG0 /;;;`k?uD<^<==?={TUUv,D_! JFFh0:p-H܂t -H܂t -7[d իWsukwÇ_h_%ݸq㞏\ظqG+++_FJqч\xx듒^tkwB!KKK7cɒ%BM61߰aCkk맟~J~m5RRsN޽{ѢEaGhj2ɓfldz3l3\v-77"##$R裏RuNjjMo,JSSSOnXJΝ;joo>`0H$z#""oxFƍZBCCE"֭[-Z|rɤR|OII UTT8p{\ƙǬ488?lF'222>>>00h4>|^6yyyNo(!!!$$dD~۷o3 [}kBBBLեjrW0w$PtRPR) ǃ|~bb⫯};2lķzk„ EAAAYYYk׮wKOOONNNLLHNNvnmk֬Q(?3Ƃ+WL4_&6BQTTj Bpl7mڤP(,،TϴiӿW^ye͚57onMFFFsssBBBIIIDDmxNƏ_RRR]]W_O8q+8ydgggwwwmmرc+ @"jjj>T#f͚UVVf2z#GKϜ9300FDD沲(xٳg^JD&IӧHWUUff|=͐x.\XYYYSSc ٳgO?VVVfZ]VSSÔ'["joojZV{Y6"X,%V˽333ryuuuqqhd,Hx<FJW,{zzd2"dyŁ;1~FrsٜTqn":$b!"Vapsƌ׶lL+V|T|j2L(.[)j B"\.h{yy]~nh:N*:a9"oPQQ={l'/cӧOw:e"vThjj!"5 [})//O&b~ƍKMMeCTUUVٶmRRR>sժT*XTWW+v^X t:u:]iiivvFklltNnܸqm۶G۷c8~ckͅ VZa2:t9ff۱cGrrrZZڑ#GCD*..nkk|P(d*͛7h429]^vvv~j3[/)3G;PXX_8qbGå 7ڞ ǵbijn팕DI=>G)<㖞>!G܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -H܂t -tjk׮(+!!aƍf%"yq,qF}}fׯ_t"Jŵ#/ D?|':n5wr}t7ߜ3gyxx,Y$..F52/\0Qca֭qqqk֬k֬pF<\{E =zT:}tŢT*wi6PV{{{D"믿UWW}>7D[644,Zh&IR1egg|"8pEFF&%%I$RG3μ\5FcUU===+++M&w۷o766w ^iww7b,DbX}l6y׷k."999/>x0`č}L&S}}+|T*u>y`L& -[ƔkZB!HH.;p{yy]~nb,NJ/a>86~l))))^xŢh8CEEEttٳyGDMMM111D2lcΘ1ICfnǵSl۶-%%?ZJr޽Euuu2aLaAAիNUg:4;;[566:'O7n8~mfѣGGDyyy2L,{xx3w}q4~l̘1?fƍ>s@m<\phժU&СCΝsnh4oٲŋϟ?p@VVVqqq[[˗{\1\ίat`x?`+SD IDATN3l󮠠 --m޼yFq>y:nܸTVUU <p ςx17ܹs' 0<7JOOcR8nL|~GSo9scɒ%qqq6*G_LLLYYcޡR.\!'<<\{E =zTnݺSvZi&R455uETܹy|^^ީS"JHH ټy3ƍZBCCE"֭[(222>>>00h4>|D$^//۷yǎK/t9Z(߲e3>ڟNL2KՆrV|~bb⫯}v3l6[bb[o5a„Ĵ`5k(M_+k֬y&S3==?99911#99y p//H/^|G"2w$PtRm^N\4gTJ.;$l!oݺUTTdZ[[[^:o$[?bHc3ΟvEDr<''gDVj![Q|gff%{ƍ{.qs2 .Ũ[no$|Fj&Qחh4:ۍ*++0ab-DbX8f+8id;5c l6vZT__b >/Jccc'Z[[LBD@={6D[ZmmmBH$D$ao)))O,_|1/\ӧOw.dw.ɟJJJ|||Ǐ>q*yL&^|EJŜ{磢QGGGSSSLL <.?62u7n\jj*bUUm۶|VUTݻ)?p@VVVqqq[[˗B!w.\(**ZjUFFd:tйs爨`@}*3f?}Z6/ذsl;v$''9rdϞ=>旃h߲eŋӂ.]2 <tY__ST&''wvv^rQ'bGxxx?s΂yFJagϫG^vvv~j3[/)3G;$G'|gϞa999.]ڷowQs8tf[3aaX,McH5)P^pL&P*z'N:uo،n Q{/CGGǨ\m3Z%;wqKF1!yT)႓}nA:SnA:Sntj-L ݽ7߿ .t/."7P>|x00o *\T\\o #<)%%%55~<{y0W(+G9^̝;Q2QN|9sǒ%KlT566^pm/&&~4>{_yϞ="ɘo(LJ6w^hQll`ؿѣG[ ^~}HHHKK۷rHGDDxyym߾yT*]nԩSvZ޴iSWWWPPPvv6)))!QdddRRD"Q*嵴wuuѢE/_o2T*Ν;f0ڗJӧOX,Jicw1KΝSD4w^{f=uuu>!u9Na?^/^ۉ 4fƛ@ xw?C՚wԩoBBB6oLDjۻ>0 2wmC? ?NJJtD$wڥP(:::\ۍ7nݺ5sLI5fL&;RTHHȔ)SZmxx\.n%##9!!$""Qᑜ̔W_}ug\[[B(**j BP8>U*Bp<7mڤP(,ҥKBXPPrʔI&k?--f%&&[&L^/8 |}Dxb/l>)˓̙#J}\CrpCD3g|wWZ w;ӦMKOO/^y5kܼyӹ)H}֭"9AAAYYYk׮OJJb ]#dH񷶶^zu޼yҘ/2[uurgϞef_Ca1:?~|IIIuuW_}U^^>qD&~鰰2zڵ7""l6EEEx<"ŁDΡl6l˗/;)<}tss3a,f͚UVVf2z#G Βrrr_ٲe/^~c``@Vt:???q69p!'NtuuLÇϙ3l,\n G@Db877Wرn33g ɓ'{HcǞ{9;? eUWW3.(({ sc~ǐ}~-zZ}""Fü&"ǥ<d2 rooL\^]]]\\l47l6OOO3g\r̘1v]$]re-K$j94±^6Pt{Ϲfje0]6!q2"rN'hdk.W=y䪪pL6 ;{{{bjGlP㯬|7BCCݤR]˗h„ aaa?^f3O>$!G ;r`.5b!y]v\.YxK\M$mذPTɓ';Wd===v׷?7nhllgMq6px|}}?|||FdhG\{}}}^^޺u~,GH︗m???-~w\P7UUUd.b7foª]a36m}:::bbbgeʵZmmmBH$D$###E3f`>fnwvAIRǗ0|//ׯvXtL+V|T|i)))O,_|6!q?//Rv;G;ѳgx"r&())IHH` [[[LBDΕh2L(.[1Gzw΅ljDt񘘘'NpS^]]={ӧ3 Fp::5xiii3W^u._zuqq@ tkKǍYUU|7?m6|}Q^^L&wt9yR۶mKIIϭVRܻwtcb̘1^jlm\CcpS__h… EEEV0L:wskF1??˖-/^<._, 5rsse2YCCݻByf۱cGrrrZZڑ#GCDljDt%~G~swttr/60 /;;;`k?uD<^<==?={TUUv,D_))E{F}Q(r`]M|~<<<,Y" ٚشi8 6~\]#/oݻ-Zk0QV+QY*[nԩv]VoڴR455uETܹY{aaZnoo D_=""˫ngnܸ% 44T$mݺaѢE˗/7L*i?(((;;QEEŁeyyyJfx"##FÇewԩoBBB6oLDׯ iii}v?Sm]sGEѤIک)Stuuip\>͝;7???))I(.])TT w8>ꫯn߾niii6-11ޚ0aB||cQPPPVVڵk=<<[[`Ayy5k ?LDF`ʕ)))&Mz嗉MPiZBP(vq9~M6) 6#ol3mڴ/W^Yf͛7gܜPRR(g/lF_O өǗTWWW'NN<][[;vXb800YfL&^ȑ(3g 00徾f,**9r٫WdjDtf"UUU8{l._|a3~2 VVVvpaOYk׮0l>ɾozZV^s, srooL\^]]]\\l4*K$=DhRc#Ş2233rg2Bҭ[X̙3W\9f.\2ȭ| l6C7n.;txꩧH0/muwaJzPQ]v\.Yx*v__N"̗4Sn0V+s9Qff ވD 6*J?yd G8p9"oàh\.b.Б9MDbXD"X,DĶ_A-3f`fnd2ׯXKXP ,dBpٲeLVU(rydd$G|>v],GGG;/tRԑ ;1~ٳgx}s)SrGGGSSSLL 8n_<u~˓db#<d/;;;`k?uD(,,O81ځ҅mmτqb457 vj1'Jk<\' ^|oSnyT-==}CN[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[Nkx@iRҥK999իW?}K.'$$ aqqvw#[Ƕv?%Spݸq~w{lnii??;vlwT*/ B.{]#8cۏw{'`s!"%Kqs׮]۰aX,vT2 . Yxk {E =znZzo[llرcG"ڸqcKKK@@@hhH$ںukCCT*MMM>}bQ*;w4D1aTO?mݺ"##$R0HGDDxyym߾oE/_o2T*<88x!!!---o率>G<֭:unW՛6m"SN}7Dyf-񁁁F(gmll#λW IDATIII:r] EGG0v)Stuu_rx>>#|"*))ٹsgMMJRFzz@ HNN6ӟ 1-NXPP,J{w_~y޽DO?{hh͛O>[}6qqq|>?11q`` ,,8L6-==}˖-"hڴilqm?IkkիW͛w!"x(Rt >~DMDb92'H, Ghne9G [h4VUU͟?ӳd2q4|т} a2WXRill$0ӧ;JZmmmBH$D$###[|>v],GGG3;::bbbg厇>3f0ilkZ[[LBDѳgx"ȱe9G [.q񘘘'Nܳ7oNIIq~pt ~9mۖ[VR\!//O&bk2l6ێ;Ҏ9g"*((Xzuqq@ tǎgH.qN+--h4}}}i2fiii3brg3nܸT8VUUdee]|Y(2.\(**ZjUFFd:tйs8d[/[98.]d0x<C3fr~x_l%K.۷oť 7ڞ ,KSsؠmgD$xM >xL8qԩ>>xܹL}H񒑑1!/ N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[N[.ZxU(|Ǎr(G9Q>*.]/;;;`k?uDBP,QO{zz(G9QrJO.4lk{&,&bijn팕DI=.0077wܸq(G9QrR~EzX8:% u:Qr(Gf9:" p ) p ) p ) p ) x4^zڵr%%%~'x,Y~; 7ntSwH$oR(l~E*ԩS,"R(lKv>[oI$իW?999z~߾}566va`!Bpܹ999======|ŋtPV{{{D"믿UWW}>7D[644,Zh&IRܹl6egg|"8pEFF&%%I$RG9BJӧOX,Jiwuu0׭[7uTݮV7m5.9{񁁁FÎ[lyg].gk!y?j+HAPP͛77o X,́?Arrlӟ\XXhp999W^"FcAAAssT*}^~{)+ T*Jb9 $&& ϘEǏw,{キt&8>800^9ʹiӷlR[[+MX4w0LH$zwO> DH5L&3g ɓ'7""l6EEEx>~lqL~~~z-}}}v""\xrcPvF deh>//oݺuovVVf\>ܹ+VH$1c:`2L(.[9yjkkk D"!"\>~nKu:T*u$mL&S}}+|T*u>Ҍ3l6\;{{{O~Ϛ~"::z<O$EDDpTv'!!a0Qp);}ǩ_~cQ]]]nnL&kػ&|\HBL j-(Vk=VV9Zmݮj 'EAA*d-vEVEYWyP'^* l/©@ wr!3cYdrA̼?ddRQo>0---***++K*9s'xKKKNN^7 ]]]7ndԜ={633bd2n۶ի\C}gYe!6Mӏ?W_ vCUVܯ(slZwy"ȥ/> p 评n E8;S.A:S.A:S.A:S.A:S.͝;W1rjSb!eTTW' iӦ) Pr(G9`0 hJje[{PyJeq C 5JiG^;cڶ. Ec̴W^yj^~}K,h4o(G9Qr|P4VYqvl`XVݻ3STDx=F=(G9QrU>ЮUV:u{wUݾuk?dMkVx^sv4`pnEp ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) p ) l:`ㄇoڴkiTTի]/Bvvy6 saÆ=<G'gŋkjj_~Gm4Ϟ=駟}+**:2@}3g:thv]ppp|||dddE=nt:FcwC_N,.~K ,dyyyܱcGgg'lڴZ@@\.߾}{EE|MVk6z^"xyyeggBN>͎'W5*j͚5&Mbn˖-MMM<8ۍ/cw̜9sŊ4M{xx\pa…eeecrȑ|IdddKK !DݻW544819rd||1c{Ȗ;z|y`ީ1cL8988XdW^t̙27` ZmtttDDP(f'Og;+W~Pr\gddPE)**tgΜ]ql٢VuUWW޽;$$o`቟?NǟKBhXjUPPPXXm V^m4m~Ƈ5o޼+Wtb2Җ.]/YR[[222u:N\i\xD"Xlٮ]׶c7>O~H$qqq&22'?Jb޿\۷̙n8wܫW"x$&&޽{7<<<;;gp;Ըq㲳;7~x B Uz;w\ccc[[[iiQ!!!!999%77w֬Yꫯ^p tvv^tg-a ٱ/Z,_֫j>LQԽ{._gJӧO5ͭfͲ-=|ww7!ܹsl9.]tmBlnnn&|7w%ǓݭP(!wa?ѐϳ_>ngbߩS!>lmm &Rve[JZ"V !IIIl@ 02h4\rn &\Q2L4M' [g)J@=ll.!B!xƇ-iӦ-]tĈ [nǓ陔hlŐϵ_!4MB(bO]Ǯ .g@@; OxB >xjjjbߧ=>>nE~͍FcMM͋/XZZڟd())kw򔔔5k֬[nÆ CZ[[ !ލ}o0^%,vҳ坝E]r|ƍ酅 ÄM0 DNKh47o~׾KMdB(:Iˡ;_XmQL"… f@[[!DPP*JJ?>;wWS|CCCbZ~WxVnnn.--tJhBCCEO={3\.y٘͟ÝhdcccUUՒ%KD"ѳ>;}t'8l6[DR-\EyjLh"g|H$b޽{ (ٳg\ҢRloNӮSba?NvttL25_ٹsΞ=zd֭[cbbzWh9 Y wܙ;w.!륗^b=>;wW1</^ ˖-KJJ󞏴,TbG2##c剉fȑ#%%%=74L۶mz+WRRRjB Fgk׮ϫKJJ\233cbb8@QTaa_|a[TVVV+**?>vzuƍo555gϞ̴X,'O[;wx O`y-wQiiiQ999GǠi;>< {Pŋkjj_~Gm4Ϟ=駟}+**ywϜ9sС>#DEE͚5KV:u}P9 q3~ Gt:Fz0|xO}W_l042D2\x. &gBB d2Y^^O3gΌ߱cGIIWpp+pԍ7%ZOH7mmml" WÏ^/qJ}f(P J"D{+Ծ}ϟpC|cǎNoڴr@@\.߾}{EE|MVk6<JZfͤI۲eK;z{.--m,_d2qh4W^ݱcG[[8ss~;>g!֡d#G:urJV2 6%%믿>q!$<<|̘1[n} `q7GӉB]FګB؋I {U&!aީ1cL8988X-^jw̙3SSS###e2o&$$h興P͖O<9!!>{wV\yr^Ƞ(RTTPql٢VuUWW޽;$$S,:O>tTObx̘17o_khXjUPPPXXZNܬt:-劓x3O7lذzjhU/k޼yyyy+Wt}!d2-]4&&_d xbDlٲ]v;y}muuu]]]hh(ܹsM&Sc״i~._\ t:q5G?3g{֡L[._|̘1/322玷x `q7GӉB  vX,E"H,{x=$b+eOƍ]\\|رԭP({ڠs5665aXrssg͚%! ._0LggKz֒l0vݟ.^hXh~:[V :|0EQݻ|rANן>}5 JOk6[[[g͚eۤwʝ޸<3EUUU9:|ww7!ܹsl9OY.]}6!l6777B曻wBZ[[ D;wwB#ܹs?{^x׿uل@oo_uǮl6=z'?@ kew|mP\7o۷7MttmOǽuh禦&q-P("lI}}#UL6mҥ#F`/|ܺu};^^gRRF)..ʲƥ녧ϟwJϊowkWKKT*J\qsC쎏j !CdǧWw}g$G9wx:wBȽ;wCBBL&#M4040C!%f"H~|_(**OF_,--l2ú`UyyyJJʚ5k֭[a7Wkk+!ۻ67Zbɓqhoog~Grn !|^TV(---RiZy/wvvR~rƍ  0aOk]]]]{%h4͛7k_~eg7nk`` 4ay{{xyyL&ǹvlVjcxBt:ݭ[-Zt1Ƈ([s^p7GӍӧlV*m|(Z Hx<ܩ롡bXV+<+777t:RIh4?N>={3f\1?egg{yy;ƪ%KDg}vNqNTTԩS?nD1`6z-DR.\yƿERْ8 wܙ;w.!륗^o͛Ve2٢Er%Hb{Q(1~9NNʾ]Y,as_|֬Y>~jT_a8ŷomm2edg.lԩ;wܶm۲e؛4L8Ƚbzamݺ5&&'|st<:}ڈD"<"D"JD"y= xP(\lYRRRWWWoٕ%J[ZZl0VVVfdd,_<11l69r&)55u۶mW^rJJJZV(B088h4?,55uڵyuuuIII`9.D_?-)//f̘[BF?f̘h4sups ~GafOQ\Ԙ1c&NhxdW^t̙27` ZmtttDDP(f'Og;+W~Pr\gddPE)**tv({ܸq[ltVVu몫w)WTN't:\=qqq4MGDDZ*(((,,?6lXzh]gּyV\;BdJKK[tiLL?dBHmmNhnnt:Ζ[pO;/H$˖-۵k=޽squp(| EQ4ESޒ{+Ըq㲳;7~x @ `OvܹƶQFBCBBrrr:::,KnnYo$.\|20.]YKrr`ؽ{7cuEBzZmPPÇ)w˗ F#JOk6[[[g͚wwwBΝ;ǖ3ҥKo&fB7|s]BHkkkAAA@@=ogqpBwwB#ܹs?ᙇ3RUUUeo\k}xzp=yN.E C0 ES4MSE_ﳗؿw)BÇ[[[xf):,*!jĖ ,ɌFϕ+Wƙ0aBAAAppZ濲2L4MT*B``˛===.ۣT*ǰ c[ȅ}[JѡP(D"8%T1mڴK1a\~-'z))ciٲ}ѩ?uƚ_|?PRRR V)))k֬Yn݆ ^Jnlldp=-LJms/(qK.oܸ1==a &\lKh47o~׾K7癇UfPH-}hkk#(BRZ{sO〣UG`CStjZVhRV+EY,U(ops<믇bZ+\ZZJ%!DфN>={3f\1?egg{yy;ƪ%KDg}vNq#\^^[oI$JpBJϛ7OVdEkjiiƍ=gfffZ,'O%%%܌㐐0MxQmf@~xJ%Rl:e2;tS\fKgG4MѴ" ac%SbB>y>]py}{NEm@xڼ8y MݖnJVRfZqo?!. }=#&M"2{o5TJJ_} ㄇm޼ҨaÆ}.…+ /R]ն~zlXhmjO|ZO{Rϕ^pԏcY/ϚewׯS/)//W/o=h4={O?VnQTT$`^w=s̡C5k,Zrԩ6?_###^Nhrrr\ c':u0?:~-!D(.X@&D9sf||;JJJnܸ1(juuuu"D7ikkwg/Cށ6X|=)Ii' Ծ}ϟpCsɠpz힊w]c ǎnݺ[תUZ-OLvȑ^z,V;|;w7n D"m{ɓ:4c @0lذ3g6mW\>&**jՏԻ}vD" lbwVD_يK3f'X,޻w W۴iRJڱcGDDDE "HRooo 3g裏<==>Rϵ;v\R$7ö\#!$88rz՜9s !**33sٲeM4ѣG ֟:گ+V|D ;VT:/C ~qh|%C_^_gO w<*+N:YuV\n:u{+pZP¸q㲳;7~x @ 3ܹsmmmF"x{{tttX,Yfҫz…˗/3 yҥ$'' ݻwƣ/Z,_֫j>LQԽ{._gtOYG*N>=77l67]tۄFn<~>7Wzq/_NO]wz /:uֺ:l"9ޖfYVHDQՄ$\ fLf4}||\b7΄  j5s4M'f [g7կ~5nܸ7RųR``[nS__oxO## G~65|pc{?:k^M6mҥ#F`F.ߺuˉN+//3))Igeeɂ;>n<6 IDAT~>7zsˍztb~:4j`JQQQBƚ_|?PRRRmV)))k֬Yn݆ z> Z[[ !ލN9aŊ'Oo!a[;}||ؖyC! T*ٯ:g+\qBa&L`[&BaϹu_]]]{%h4͛7k_~_y5>rAz]rz>zrb~gׅy0XT롡bXV+<+777t:F.:}ٳkr<$$Ķ?egg{yyy]UUUK,D>ӝ✨S~Ӽl.//뭷$JZpa'h|吆;w̝;eι---*'J"{1 P(fϞs֎)S DNʾ]Y,azPWkr;n9T]NOpW5O{rEPlٲ+---***++K*9s-X|ybbl>rHIII M&Sjjmۮ^zʕZP(Bapph{155uڵyuuuIII`9.D_?-)//f񑑑?NoH@W^>|iq%/^8|>`ʕƍ݄' PIF#EQ744i-ZΟ?7jfhϞ=i 3LG=|phRtmmm;w(*%%믿>q!$<<|̘1[n%iZOOχر#G3fLuuo4mT*qM6mT]] ˷o^QQS~T)SXB8GԔ%Wvv6!l\{Ⲳ]vuuu9GRYfҤI mٲ;7'sVm۶cVUU8GWy` ީk׮M0?C[9s"X;w8848=Oup} ,8{lkk?g}V8mr^_nEQӦM[t#nbWr8&L(((Ve{P(" !oSSgV__ߟGJ@ aARٖL&E"OpZMIJJb+fL&cO)?!$//3))Igee6w G[gW\q':n8z?@pC:"/_0a;::?\C<7nLOO/,,d&,,l„ n򔔔5k֬[nÆ 4MB(Æ >;tvv\lkk#( [Jj:Y.v0wcc#D{ $%%y?!k޽Fy^{/t(&?Ġxy1:n8zw8NsžgM3v$D"\+XV Hb{Q(g϶|ٳgϘ1C 򞗙);;+<<-|ĉ !2o>X,555}zu ۛzeeeFFf#GJJJzF3L۶mz+W>aÆׯϸb%''ꊊ}72---..nΜ9&v#ykFa6 qyp@XqBB3m4ӏ?W_ vC`p\_[;60Vݻ3ST?xlN?F! xRKNKNKNKNKNKNKNKNKNKNKNKNKNKNKNKNKNKNKNaÆ )Yar0ŰGʑN"k4hiGEo@"|:;; Y,xi{ )Ba(R)z/5Mv7D:On GNg5lذ?՘-5Mxxxggckyf7qN@Yx˿7R_СCNDn#O?钒:~9Z/\#S~~K ,dyyy<\VZT*ٳ/7onmm=x7n v֞9 Y?vآEFſ&)p}͟?…:y$]2l̙7onooooo?qkƦSuuuZÇ;v`/E{/$$D,ڵiӦj__߀\}Zl6ٳbzD啝M9}Ç !J5J;eZXX!9)99]͚5&Mbn˖-MMMN3O{z闣Un#Jׯ_ֶsNG;5eUNWАā?7ʸ7f̘'655577k4rE"޿W,ۖnذaF122-LHHjB0::gy\R}wɔtҘ~ɒ%ZNܬt:-(**tgΜyqqq4MGDDZ*(((,,̶hܸq[ltV7` /^,H"""-[k׮Grjk֭111:ZO L_zw[2[+6v~;)>؜7/-*++KNNVc ҢRiKKK{{jiiƍ=gfffZ,'O(LIIQ B(իWB233cbb8@QTaa_|߯ѣG*JZPPNMӻw߿?O{x헣rq0L۶mz+WG㳅#F}'G`ޅx<z7kۺ,!1un~j?BR~ʇbKNN'!!aO8;StG0̡Cǹ6>L-m(eŊl={%k1|d2ْ"ڵĉ'Nٳxb<o |oΟ߼ys]mݞ{3{6pv ?~vguww[>K!?d2YZZڈg!5jǎ LƳ>. p )tp u:㓯;4Q(,ǝ=sFVߦs,h|Ry^!# 0GԉFQNϑDQ{ xSf${ЕI';9Uc4jjZѨT*Z?]]]VfqVA #}7g⢙3sr'OrO=:`qM윜]v_jCi/O>YeWuuӳ]fncef-[xUU9{6%5pyjdcӳss_y^\z5.vE8rp㦍9999+@.t~9@v)QV\%$JΝ++[ѩٳ=ee jip X^V|ZjZ]}ʕz!.wַ͏䓟~圓"JLLd6WTTv㏝Q%%O}Sɸx {oHŷb9r>2ge~{9o_=_&2_nu8v]EA͚r6loQ^^n;a-w1!00/5kSSƌsܦ7~o}c**%%5../]vaSjzX2$8d⤉Dj\ڵoؠh&T˗/_pᤉFADYY>ܔ݇8??݌3X/;7.>~Qszw.1VSnD0M%Bcc,3]]],%kFIDAT,qB "SN HoMf/.~8Un矖,^O7bĈ#mP.QŎ6dDŏB!)eU$r'Y[R ' 8C)=Inas9]ǟt;Qts" @ SC@H8\2 2-}Wnyy ѣ{tıhelER[`۱  vGԔq8'׉XXO ePXDIY\ܽˤXt8AIDUF%Ԃ``^9fN(YņZY**ײ!PqOF)<:)+Ea(bT˥Jjyx9:)hh *ALJ|׉yP* jEv_5ȩtb{Zpm[8p͘:O>ib*pH!|D2|>+ۢt,oj1H%+%cDng5vb,*Z`zW,_pS rHJ_BLq}lj9V[#x\]eh:H[1܋5a$o:!R+RaذN wE@zי袊R-Xjmp9dאWhYNH"hjjc,Dk3T'-'f3|G-MXZuK;50uJd9P`0طOSFg2|D0LZDO>/ٽpp8ҥKfVVVAAaYYIЊ h_%aUy$ (={1و" B&I3j/zZ+eXn+a):plPc=Wz&|'p a)\KI q-7?!PIH8>Ar0{,RR&w, 2 f %:qA<%hmO`%Vh$}jM!@;.da6GdXt\XXT^3++0 _IGV]vIB hd7CQHdk.v?E\ݻw7*KCE"˯"sζ{kmܰ/jicեKn^^Eŀw#HhD[߭!ODe^.pjHl*N6rBCrDVhR\*n- |v\ 0s*sx!n9(mKr#Ѐ%-5ǸGgPpkjbI 1⨋l*cWg3tJkekL,6F` Q+z T*a53K{\l )V6NdH=ɤu 8x: ҽ;"̔x#R*B~Cá7:)3hevz-]}B!_Ji8XH8/9G_ B.;VZQSkIgޣn 6|ÇNqjŀڍؔܠr5jVi![L.EqP <!N> 6m5umrN 2{EW-KC1Qȁ@yeͩm2PZ\RR\\Y($tcv3?EmLJMeԅFRjǠ `w?8 [ UŚGyYҌuWm<8_;uSNu577YzW H:Jǎ?} {޽G" ~aȟyWj !G޿~{}?b__Z* 2]O?ŋ볳sƎs-`a7VϞ=ڲeK8޸yg_ݺ]|^{-{p%O=ŋd7[o0m?TV.:+M;HT)6z Әng*/2hZ ICYUy>QfPУd̺%5g"i& Q[I{ŊeK,]983N~ GHf:· 7ncr2 u 6nk{>L(**2cr&+!76Nx`ӗd5 '!+*+G?#!˺肈TNQ~i͚5 ss;n0g~g?A׮]9Tu&VxWZ~ڋӧkEWX ն-uuuSN7hh1׭mii)/dRs8y%KWz˙}_}VǷl#믿}Z:p~p}ҥK_k' x7xCm~{<_Bԫ/uG~tɒ7xO{\z٥3U+WZwr(Bs,Zh;/ٓ[{yp[j휜 7f@YrܴpnLD{21SD{`i G#vjcJp3;Pkk+LSԣP2W@Z3H0p!T_o>"brsg/ ̅ݻ֜/|͢F_{_s-7 XBz알FTpsf޽-أR~>3?ߟ$յG] GVTZZ˖-;?`U>1G䜦TY4E[AVVs}4Ҭ<0xn›6Up5{|rL)Vy9ƙ>NC&/)+1K9 F)]%f[Жީu4}=Ipw )g?`oj26kVЊ]vȷUb_x8}<gBd#RBۨ=" )?O|t@P݇|#P|BLCx}aXL&q0g F웙W\~a'xrY/.X,4fd}xC&':gƹ%%%XX\ #?F͘qN^^~45H&99 |U ͋F"= I$6:B$!7/%4%5@5Gǒ2ef~K/:uzaQQ[8̡*8鬅Usj}>r ޾OWu5,3p>Yݿ TTW mz4ig~6a„#Ȋ+ƍ_ֽ,[sG~/ҦM!nj~^^^@GъWG/wwܹ IDAT}]{,<2JLZqqo=sO>Y{n(//;v܅^(cӭ/UV$͚=^X]v@Ϟ=ǎwwSy^ƃ>|yaN>G?Oo)jceݟwκ:SJiϞ=g=tƂ &zm=ŇAD;<]GiniﭶnHުή(#+ֽUೞWG Kjެk[r[>Q+BE!}?WsAjB"H޽'MO'L~,F#8&SkbK{ q`'i:aHw/.dBNN쭸($Ɔw;nvc`o}Df pWf„%u.hkk]r%S&4v2to;`0r޽7zm֪ms iݾfqnvֵO.$+;jEdࡽz ClYEg9y@D"> ֭ YEʖK̊ HDXUS24jq&sO'4 >Un$r>ZJ'sjU Ol2]9 uD`D6; u S;G:k/|*5}:w9tQZ^պPmH56qg22t1 j͢2x^={B!6hɁ@4F+KVaP,$ шH8NLSdegQU ٳW($@%t|(:s=DUB9Q5W& ce՜=VcUعsλ]Wd^~ޘ1c?R_19P%Kl߾H99p8׿߸q cX8V>|8T[G9"TŎG9M-h5КlZq? ^:d .'-5# Eq8HZuG\l/0Xe$Gb&ǖOkq ;M834ЛR)Fš}JMfS Ct"Z Smxf{jR_ȫD\ae&TIY9xW1A-`6q[`_SAyZ!~BA\\In._טSX)6yn(#-c Ax,`(GIH$mbZSX4ł`(cBx$f͌)FcXnkBXAxPǠ 0eBX8*pJNN$Ji$v" m! T'Cfઐ_7$J5/5ZYZ P 2~ ^'Qfo$'9"lUMp(PIN8os TlEFNKj[鰲(O8*& x Dk9.{VCPt>(Ĺ0÷>h85T4BtܐoRs/>K%@ui҄R.Pj?p.6='!0\wdϝ6"FQ ep[#Bl$Ji$:?[+)/ɧxBĐZE<[-c8;ydo )<@|~ PeOH #;ݥ (ӂI@(5m)A>j>O qJyd䢬7vݢ"#kOdP[y#TW aih"J J:ޱBC -*S`WԂG ͏Hȣ)d]>V3m̵FᬀD !oPJ̄P >Pjd ^3b #BF H& K GlꁶxïGeC9kl`в7:g|lM!KqJ,C6綵M pZVy^E_NzVy24$A,w7h;ު,R{%[^D|{yRJTxдⱇr9WI+ٹЗZ,hUyFK ݨJ{F~iY]8t8/fK 帕$A>nU*Y$BQPP(?'Z ">Zt @N?QfodgpdGʫֳtIZJ9H}YrXΰoeR6vkTk,GcmyNu $-T+Hbv\`. n8[I`)hOG)H(::gP|F qN;{8CRW,/|cd+D) )LhZT0jka+'iBQ`gvQA&# vQ-o/ D.#Gl#єw ) qԶc}541ln9E 7X1Q˜D᝱GdWaQK,{pMMnv— |9(*.b&SN_N(U1_PIL]y}4 7`|/n-O~&,pho/]PnJQхJUz8*WQ)n:mUWjm(Wڣ&:.V,GMMg^X d+A*f{jBdn@l՞)`N .̾ S[ۙoݏacqA0:m.nN%AI:MN@x)ui!SeçiRJ D۽H;Geh!ڧ0w-ᨹ`%ةxa?!Yy,} 2&&I;@ͤr'MP#gXף%? $ꤝV\$+(6,'ln֢勓*Sp WM( #HΚD@b J:-&:I@"Z),a2vN>lmS exE B3[>D  h(τ-JD3G hH\*"nP>cĴG#m$tB'11ne_DY[Np%/qSBx4SzشZ*b2GXyu>ٴ:cm% E! İ{*4NI@Vh+EJ|rP& d2 lI!&Th.ᨽpFS*Պ+ 6 JOE_x⅌5ln#u.AhUibB)*}i%ӣDΥV]C{s[)@!U4 z9΢5WSjZhw C*/8D(MJѠ)` :9X.FZwI0sAk!h^ԽĆ"2Xr?0c3.h*ZAS%nQV:ąUuW,iv qJhoXbrd>nଘ `']щ~K#dZ&1')9_Bm /[Iz.!qMT]u14-}ڣL})Rxt,ihwI m3:m㨕K71#0"8T$(ҪUrʉ^٪MUH %S@{ªDB(GvK0bPtb6bG Y%4+B,U8iNj_DIK1;%`oxIډM@mcR:Оz2^1k8%R*@h N)SXlf+ q)X1## ZT똘/;=쀖5hV W[L*}e`_9Xtp+ur@Z!Yp#]&t ^ƭ\֥/ )Ȫ9v>=vҪcCAuG uScCI5u:ɔ~U|QnQTQ׻l.g(uAG꒘jqb5MhG玦WM9}`U"A]U}BǭZaY@, ˅h Q RK:" pK bq:a4.浣vhΤNQ^$D%RBNq-r\NQj +:;=k\7@NbaCR*=sG&~qTsz8\]uK:U/8!Kd}ݹL"lSGqpnaɤ"NmBDž=njSm&[ < ~"c]bPJUOgKRI,qX.\7r')/%)Ǯ5cI$NmyʨF%ٛfD"v--NBN<G'6577nhBK;؂h[YS֣cI05ADT__ @&Z2lii4xH"ojj@LJFuq}_$ɔ y`\ If/%{Sbu hlRd[hUmIVU8JKSl& w%W͛gaRj.S2lnjxIdҰ_"iQڶNˁj,4ޭgju&_(RLu%+_jO:---DsssOrZ\@,"A,J].:ڴ ^i#-ŏi_H#?G>p':ǖԤ])@UZ[9EEM 8eN --%]&V猭\ ӼPב`\M87- it*w..+GwJO}Ux)//k顃H|YDJ&MMMEEEp[{vJl*S@|vJ6|SR lB`-%μf$eC ̇";5AМvaK# f O/QJ&^1JX?"D&6:34&:^e*8 4dpccaaa$Xiy5H̼\ogBqxYQ$T45L,]]d9" aZȂƀצ֔^hAW/%z(Zt8" [<,` L)P8V\\ԔL&V&ҝ(H$8q:I"S{(XTѓYÊTԁpKg4@ 'hO3QΚP"n٪U bqk?쒺`:e4 ^X4 ɹPÈñhFG}`d1״D_;/*%pX MR^E''fࡄM`rhfT]b/]t+jR,D"r]t V`o*UFY9 SZ@ˡ!}ƙ ke~-p {`&ol@W{BBrmAk%E:UMݡnE. COXהgd =A_NAm4d[jM*xQ=l \@: 8 %rh. B|3%I]/hju WJϨ͠Ȩi.98"V-j-z{C3,8*xD|UȊԾ`bZ6(ʵ:dc+%-UiGm3Ct"_m2Ojy$֚IUC N> -QU:ɬ A#~M @MqrUv: y!+( QN~:9 Ul5-rۍI&w?IWsO .z"L&j#sy<*V!hQXڷ77-6C~PK4"UD!G2CF*ʋqP5:O56^0dȴ]89Fv=+:%VT.8ʪYBBr4d`ظ}:eqx<`%C׶TN)LC:X:"D莻^@+`5^7eIl| J ;3H~Mk,ܼ tl΄ϺGEu#(VM%͝ Y<8`T(VXSԅRJ%L kd 5':jsc Y !7?=W_EzP /[ZAHJ>P:hPSIVZőT%/ROPjJRsrndTKN6݅DVJ!Δ |3u뮻.77W0_|a~/@gU+codz{m۬ݐ+W=?~---oW|>L6;PQX+W#qѲneSNrs[ڂk`{spiI^j_ohkk{'CЈïɓny_;b/߾}[֕W\^ K?W^a35dȐ[nO|zQ# }LS~~$N[O@aw9yvܱ=\O~rݢEl z Vkk۷/L?=9>cpO[x֭[|>ߨQF:-/Zh~acǏ3޴iƍmt(rGCd7pv Ė-[N?}|$KT/\UVugǼ;(/?Oj5`_#''ǥ)gOxaYYnA~>(~322^CU *.4u7Wo2X)S,\7{y"R gƎgj'x-6C?@jUmm/0 VUS)^s5+V,ƍ 3N%Qo&)^uHB΅ۣΚ@e dr-ƎFcDIbmyUiTGғS*^3X׿[y3'M1v̀Evjֲ}m۾L1cU%'5l0ΟQmmlQQE] ]dddLhO{,#L2%777##cС~0G2Ç32Fqw?1s~B!_ZZ:} j1yVS'b#;]M.sht1knH&ܹoDC8=ǛB7,ƌDE)mվ{/ZEOG4h(IHpm0ida2emVjHȓ˯@ZTR[uႩ 7:өJ-3f; {Vm>8.cN{ûA _7gΜ}uuD"m߾}֬Y]v{jݺx<^UUu䳦@8P( }=wK rr@)u ߾50JpWa߾D2iۗ]tBMm8?ɵ}i= !g;p8?y:_NCPhw+3%i:Pjbޅu.//w*Z(3uS~[c)H& O;LÇWSSjF2llXVVvq ,XIƍtU#{ X-<\~;ƚ_:a,8|\d%Kpݴiӄ.@ 3וW\ߋV\q?BƎsW'W*sn}d7RFՕ+Z4 iz%.ӨJzu}۷Q &YXZ4)Y5_qTp=*նک$5sW.q ǚLv?q?{z)3߯ՅaBH^^^yyAߋķlH$lyėL_ڻOXRW:%NΉQ⻜QSCwjc 3### |fxM޹Ѝ(MHӝ<ȝ uxI/[K%5iKP-`)WP$iHtY: 5ık= hFdOlV#)ݝV:%ytLɃUND҆B脸ļV[MT}GQ{),Ʀ#}d.ȣK&:=[G_ rT .P v6<6a5U[pLy Nlr٪x\iㆍ'Y<:ĿO RAK:ڧ?~Y^Ϸ=ZQDiVӑC GiB(-u<{A=/w^GyGFzGyQyGyiGyGuyGyGFzGyQyGyiGyGuA{{/#<ȣ/[#<ȣN#鼣:uFyщBa{ArZneyGyiުGy JZjUsK @z;/5rTqqQϚyG'"544,,ڵg^[!V.?n\aaaJ`#QtjeyGyi$P(tYS͛[YbtJB79пbӊ}/VY=m4Xnݮ]71`Wo gZ:mԨ-[6_nȑ> èZW#Gdyt“zGLJt;w\v3f嬮ӦMׯ(]v:}lۺ{ذakQN޽;2c]}>_vvIn>VU[ Μ4iȐ!>sMs %]ȑ#d-ݻw/++sju7@G_]U<ɓϟcǎ;v,_ӧ())Q9:gRZZ|vڵbr().=z42 cm/6665& V._~˨Fܵkڵ kY:=ұUj#GGh"A`v6y)Gy{ꪫwڹw͛7755}'_|q$I~"HFFF,cx糵kJm 8!pѣGYu޵+##c¢>}v|Ba=i_\MD"ͻv?>Pindu)ۭ4WπR.<@ Я_~9꥗zAwD*,,?EڢE脉gi/^WNA:WGZ7o)RVo- >l…;n|,JiKk={kj_n۶N2 c7Q1XI--͟ ?i?=dbH?##UW۫Hd޽=zpA}ܹdgtɝh+B$j:_I[_SU3=/pӮvյ T>t1u^SGwQYY9suֵ3梋.U|zonҎ{d2dd󳲳@"h;r1gff1'OAp ׯ?v]5追N`Ν;wĥ+k4`u ?^,YGO_`E{ݫm[۱sݻ,\`g[̙.+%Fȑ,oƈ#|>nzJq!;-7lek>i#/>gz,M&Q#Yx!uO@(Y||ݻwΜ9sbч|=gTvQJR"hk +#ŢHV=#=XZzOA{{XЅ\n={b$:c_ap$BѣǠOEG"ee/PU->}&;w}~O0a̙\?Unmll|]KKO=5{h4>RBC=:x΄D$r5s7|*om~.LbAL=z3}?Kqz7 cwqG޽[Z+U[m=xY;fIJS)HV HĵS eܜ'dzOGNjpr֣Gyym{,S?ctrE񏙙3fp~SG|W_5yd@t/9(UTr&0ZZZzǝ6H4Izܽ{W~~Vu ٽ?>|N_JbzO~akk+cx<+w|Er\ %RHP ! =ؑ HQUQ~bE*ER!A*@pkI.'}gfv);C5zzzN>m޼t:]%>= ƕ+Wiko?nT*=}B*QէU]1ao$PGX"B#._s n֍CMu#G^{5KKK=֬XkrNMV"I[+x 冼*( ϑ! ikuh^|a޽,2B̞̚5YCrݧt?t'ﶌiaaA}}}|\rΜ>W^?n֍PUg 6 IDAT&DDžKKKUq9'/';=-MUVVVBa֗͸_n?iA>[gQM@rp8gԩk׭sg[]Ò!C|njبj:_|.((( ߘ!zȊ+-[sSrB0ay0]'B`%qЌd \ F9rHRYVVo͛67b#F=8\s֬Y5£Ejot CT*P0 4r\uZNIU0" lACBM2WҲR=%8 /oidԈ>ck[/;pH$zm6&sѨP{f@;aV i@R}|||||F=lTԛFڣU֞>KWD"{x0 E8nP`=>e &i|ppH@`@fFfRR2 z9_r1 U$`ڴ`8AXYYu~z*aYZ@ab! mR(Ԃ`YZ2h[,@ѡ6fSSܚxyyyN8pV^^ׯ_6mcBU1 h4jmmYC̿p!C|}Hw@Pkjh4B0"pss+--lvWa1 #B}IrHiiL&wYzxxxhH~񋜜\q@S1{lXbߧO) LVV^~ys37uV\ʕH Uu`B0b` X4uo.5w>**Y,׌VU7/6v#&oi )))Vﴩ`_\xQ, 1_|LnxcpeGiM#@/3B;;y޽#F3nI S=mrrrrrr4)C3{lաE_Ck?D s̉|kݧSڻ:c0!PTW[[[]U*}>|tFUUT"ܵbhEo;wRevddDuuUW#aGy%gnnoܸ>P 7oA{0 [hG}T*͟G=@ LP: @廹U%~v_htzQFf\;=rٳo.//qpintU\>g?Zڒ'e>YqGjBP݃Gԟ <.6;+ `N:;+[riE`ei|m[ c„ Wzg GI[O5@onkk#AہΝ/++0L L>mtM_<\,‚+ߠ#T fBnll˖?7m({3Z$e25%7wK$+-`pP)R$n;apAK8wt~٢BŠJO/Au. 7ww J*_O__w `YIޝ_ fG@.e/&^j=dg|\@AԆ,Q]O2>aXEyeqaŔJuu MLŅiTikkp1wlX;q*,mٮAÆV5 h4.ښP*iT*uvvp8h@@Xhϓ5xmn;[[O[ȈZJʠ.6nλ La\.b؈bTq*d2l6ͦlhAo A jTn5Yۅbd7pL$J%F2  BRy<U-OHPLBEEw@e@F /^811^\._RtBR{n NkjndCP\4XWBHd2Y\|{%4mȐ!ό|mZd\~=++M2zϞ=[^Q! E]}sg5d\rT1'RT ȈRisK 4Ke2hll$+i_~@PH$ܼ\=h\AUa2 44t4)=3/[S="0V,'&%gfeN0Q]is3).UՊK]]]CCKmm-A|>V!hhlWgAJcΜ9\7VrNNNAA0?c aN*0l6*+*LG~v 冏 : c]]])z7RNNPP50rHLW nɷh#F/_M2KV  >v앫W+*+*R,Ijq<;'B E"kK{3B!;kjjI55HPVmNy\ %M;Pbݹp̟-66_֪9)9);;[C':4V{ ƫmjj|4h 077vΞ`hDPC) ]]1J Cw a6wWTM%zܪG@? D =sUUr\.aaX@N"J%PT*v #cJOZqrrpss777{89;w)vB}s4@ʊʊ /oo򋳋K{gNM.]ݣŘ2CkZJO58;R%A9mKK3}Oºt"aaal,d֧ ]3aZvﺗ8K$GGk6[U*BaǠA PخqJ&2Loo" _~q<<<ޖr;ѣ&[ ""Bkm&MW1[J d B=bdzR)ĉ5ǎ}uLKKA|SqUUoU hLlҴ4UHaaAqib_t<% |:oF}}=yx--\5CR(NbbJ 55555UWOz%=@ L)DvvR%u|RH$Һ沥Kয়~ ;viW>wj(8u]]~DŽĴGٽ~geg6GGGo7}ͷXXXDGPPcd40hXX ii0a~$Og}:v :ؘ+((ص{wjZ`:r?7oqqtWXA3´ҭ8aii) U預+:::Tbyvb*++/|sf!W'O͛###y<Fݼy3\rxɟ֭2%p8] ]yhŠ񶶶}@vvwo5FS[`Æ Ç_v1[ȑ#t:s,]_[ӰD޻gi1e'0ARBz[0NIR]@(ʲ}{e˗_} EEE0wo3dž"""x=] }knܱc?h`"#FBF-!EFFFiӰD޻gi13b1`DD,NRJʫ;p=[2wTM zʕ~qQt O0Qg=@ L)[Q:{@eMPkjkTL<x4 g;O8p{ toe OϢ&o޼^ 1bEFFFFFƛEOS[nnniiiG&CR_*(ȏmw5 { 0-=hjk̲2BQUYLV=s9vh{2T.ɻG@A 6sgNU2 'eBฮԩQƍ/^Db⅘/7~ SF=1_gCƯX<)1I,::n^*).[/Q9_~QOi0QM_nZ}Ӄ hzÖJxJgţuh;C3*$bMr eϿ^nXBBB\xb0++̼nƥjzxppܹsui!OHHHHHP0~1"xϟ?_YY$""UL9nݺЩszMu=@ zax\[[L0'G'Q4::33K x\z>|))Jf gA5kDFF쬬*6"xČ?# 6]CS cΝϟP^Va@0my隓igÇvS&OYl"ڷwߦ޺u`??Tuw h۷o?xgʨTСC,+&zA &6Ӣ@P+- vhX(VTVVWUzz{ 8bJ%FRbIaa~Yi 0LcsBL/;~M`aXEYEqa3ŔHuu ML:ٹ7@*\hnnjk£ qIEpkk*B4675g(J*rllml8K"@ ̀eۻ{xhm%~'y*;;,--GI! 4@I}+99I}gbb]cy'O>嶵ݸqxcj"UssSYy:jii~ .Ţ `„ nt:]P۷'IhOOg44Gxx %igРWPX Jqox"6.>޽\.KǩNZQuT*JRva͞5._8_U]EW^V!TCQk@ VQQQ]]qϯ+..~~~Fwvq)w3ҷ^x ;!^^^ 6n՘?>@ \,!=읫^(ljTTNnNaaqk bgo@PiӦ>0Ϸ8gp {܌&= =#Z*cdž sצDÐӧݩd<.'((PZ􉣵>z ]l)S Bq4,,C(d] @ L&É4P%w箷G BQZZ;dHSΐŋwlG309acy@7ZsT }]ɻ߽(\1FY&@ "G} Q(:YU88؋bK>!3苰9B:(ꓶ Q~A߳ IDAT*qd\3rGaXP~r AJR@өT*Z\ @ LrfBJeVVVhaq[[[LI^9 Lo3xzAnP*B___R)ur>>޽T7$6>x~5F`ޞRgޙ@5[57۝JV+cccٴ5$/ohhhhhHJLܻwϏ۶΢@ [5+Jekk_XDBL*-..`G.S&555߷w>q1@ [5+H2@rDJKpqq1e .,*,aS-'|-^9yX,Suf[wuH$spt5k3]S]tY[ɷP>a*K N?"((mԩ λnᇸCٽ>rׯ_=6vJ[Ff&o&!11!1oHII9x0Z%o&9rDB8r,|uicf455>s:)9ypiU:`vuOњ5 SRDG?^9"#!jWD߄0=,, 241jڵ#GtԩSi󦈈Gц իp9d'/N~V]/\@2ypL= 2dMMMvj]]]@`ָ3֭uw`XK,R=g0wz|(6S]߱~XTT,YSSdDDf@PVkѰ-z3)11::zƌpAx]GSUmƛ1`@򋍍 b]с=k׮O~Www-[ >~ĉ**Vw ,гzḫO0222=<<-fHPwܸ}.tܹr*:wy䵫W""55wd0~ 11ey1u cr\.'bO#W \] bL{ @m]v @A557ݸq{+.)nkkZ@}\Jܒ3J 9fmllZZZA|%ggsΑݞv^1+~c*uF5uT///.KPh4fz[(8cB  (ι@ h >zN'0J%YBP*6P(jP({X#Fzk#(0S1kJ_F,(?i[b{X#I B  (J_bcENТ&  %f2Za@gT[?Vy@ 8~" *V-J_d2 X#XEnЭ^{ #p#C  pBB¬1<pAP0Da:=@;U*JƄf"f AUK{@7 z L ANA um*٣L:J+ݸ@ VQ%0k <zP8z_ 0_RNYBœ1c LvanRg+,,$zbggZNvJm?PTT4{k I666OоD-nX$Kjs:"a]"d+ݖbܜt*2;K&#wkmm]|͛qD(9}sgSmmmJ7lؐ. ryuuK.Blak~~D"JV֥_&\ۋRT*-.._=BwDr)uӧH$a|QTNd2YrR=, oX6h/Rd۶?mkk{< OiEA~FcϘ کBΝƏx>?cŋ1ZUݾuݭElkkX=V|Sp #-g2fͺrСMMM{vVVOVKRgG{p{;Ȉ򰣣Y*牞`YΙ=uj(/_0S٩2G8;y{yK.]4&hk(kUyC7&l0j6lcکڂBtϣ>Fk5::o ̘֯ gt:9sҥ.~PP *..ٺ}Ŋ?++ &~UgSRRf6BEhiiy555كMMW|r7nܸAH'RĀdXr1o8-Q4Fb[=N.V'..V}!tmСW}yիVi42qcBy\.JAb_p>V^5,|:7l7|= tp,Ś8a|/^cAyK/!ׯ]6LW>$%&&%&˫ǹqhjRQYx8z0sIIVVVUV^QV^,--wU]CCC}Rʪe˗{ﭤP(!$%FG8qCǁ{5uW^3?lݪN#ٵׯx[((,=!fԩbϟ;gBܵk{=سgL&# ]wW__pژ<<555?mUGzJJJCcI8 8ߺ {p50ƀf̸zZuMmVv΋/$g?TSSE̅wU1&{e5/]>}zW3 談V2`(u)1Y4=]ià˄ [уgZ,yylǡj++. L(Wsa``aII1,ZhѪόں: G7EEEEK`p豣0o\#6Cj&gwyyy> 'N[^|%.r_zo7mOk b} !dtؽgOTTϧwgH=l7  2Ǐ7h4>?rܸz2p̙g}6$$DM71#Fl޼T-u-"3<4&G=;  !!>Y $%&ʭ>Vuw -[[䩘 9L %z_wHKK طfя!`[:bM(()%>|'KTV7Zݹ[jzLO [c(-@??└ܼFD W(_~92"v7446dt[|geeuMs>32/7@_ϮUq35Ҽ IDATBˍڒ]qj%NQ(J# 'WZ/M ohw̞OBCCJeUUUbBÇ_1Aeee}V[[Μ9377gU2lJTiۏëKz u־bX$`>q!ׯ]P(/J?Zםegg^&OFL&#[EEEvvvo.ZD22GΝG&۩a؁gd~ @dLfEy/7_>eJTQQzάZJ]f._bȑAӗh4aݸ-~ 8Fc `?ʤ<̒ϲ쬭-96J7Ni.UKK_o) #""⽕+OЍ=uTnnTK`@ 9qF}GP(C̞=ѵ%HOKooo' cۏ?=vҥO<鵙$C|} H.e0t{ҥ._hћcƌy뭥ݳd99ٻwzݶs9YYY~mo@TTK\r͛+Wjt2ׯ'Z0 {-]T*Z`tpР}...\rlmUkAaT:t0r~<x. ?~sF;{RUL2E}޵W]~uD )4_],vsX`ŧ[Ymxv6|{{{+GL2םcgM6h48m9s|/5۰ cץP2;3 1}UGȑ#5^j<~Ν8q0oW^yeeZ|7QQSߗDR===GڬFڹhѢښ2ԩSݴk:~~yرb*|/| ֯_Hwxw{˦FR-J Я4|AA,`ET)ҥZZHF: n| kfSɓg2s̙3͙93΢E`=}mS7m[6l5NNN7[rP>f)S^6> ŵ{#?5<3##440^ f ߰XӧOyf͚O ;;;9rteϟ'LC[lILLd>/%K?fCDV;HEnNnΎR@`x<᪢(f#_0n]L._b˗ع300 (ph;;o_l:P][}7?ZZ4tLHR }`Vk>'LKw_۰i#>jh?a 6 wyr8x^m ^V0qږbii..DD"HLl46/2jޡ5@=:\ntt5k ?Bf!+^}dB0pUBf=dOAD!VB!B UBfq!u떢,EQT[HĒ988vw !H22z[r"#3+""^*mmu6VBP\\ܭ[P$jmU*X\\Tl0"#ẹI$vؖD"qssa[ Uz$b/m=P(&(Jt:x<iU-;vi11]kt[Qι#V(**ڳ{/<Azo__''')kkkJKy\.{;^>^[R\RW_j\[``KG˄C^qF^^^CCD" bxYUUo޳'66ҭ+} BRN,GJ$bcцU:\!?sLU(NW[[[[[eZpڰr<55vĈLU+V|V投+\NhIfB-@O*lbBGD"o_[iVH^OTT! IT44ܻ{킎. JK x<ވ==**)+1$ 3fܶmV- ΰKL&ssuU0zVusuȐJ̻*B)//W&988;3lChhqb$nrJ=z0(kR+l_]PW[WGD" E_2%9ZqI1EQ^8e+/|ZJQqAS_}itְWsܐQM l1[[nUVV$x] ޳Nc^ *M!9a_|E@`Hد럝0tL@TT/FEE%'' 'O䲀yns]]Scǎcu$VHQ(A5$̛8v`bcNeTD0<4ԖөSkkk 6%55>>$fWh4NjPt=VK\.̌GfM`;_QZRz26VZCBbbn^.Ƣ:Lt5MFFfNnUZ(->_VvGQYU&=!z}nnq⼼\ ||}Z;v4{&02JJIIɓdA/M 5@lbr=Lf^/VHuujC֭{w >PZVzʕwoݺ4LR)J?񄓳sMMMή_\..992=#O>fzX'g皚ڄBѧ9Ԍ9{jĩRi?"f;;;<K$0h+.VJ,a,6Du5+Fr8Ri)!C89;lX< z TUVT6*J74(]]][3&&&&&F Wz}LRTxDDxx8Si2Y}Ȱb*0Nصtf{tE< w"ԕx ֦ff-}'N4nd+ ¢=<  avJK[rx]T*u;#"oe  [Y ,'0ptA]f&F?fP{2m:=sm?<;aXl wM&3{옰ΛU:3<+مlX4a!dgĈ}zvttp8\.ѩO#o/Fr|~Hp?(M~G'l6utp}ܘ Оx >r}}}GmxSK8pxAAOvX__=1,%n\OS44B9Pޠ&6sBݫooo\U_}euuoLV|ucoo___cfffdd۷ыlUVB3bX4(Jo]pa萡*eBNOO|ݍ~S+JmM*BU딴mQNoaL׳X1(>teR9;9fe% %P(l3s !H AvA-]O%B(03dbD"Phb.Uz$8;(*>'IRR9:6h&Uz$EBV+m(i\.o-]UzTAfqEP'"B6a! !`XE!l*B!d3VB!B UBfEQz^ٰ4!PxQYV z__''gr@!:ښ.kk YG+U>}iJ+r@!:'4,"zjD,քUBhjjX!4oiI[}զ#:քU pz|ÇkVq~+ӧo_z"5%"}bo=ZΞ9KOd!, "c !dVѣpџt@mzj0'ڵ;vٷcʔIӧM7ts>4wss?g,??w-9ys홧}m@ `9i !!a_׋=zL4iԨQMW'OW2.< gݷ.++oԩS9׮]5jeeeeNھ}{`@[w˯ׯmڸ~7G(O?_92+\yiK|QWk6+ՅP7ؠGEjJ^O&~]K/Λ7w^RNj'Ozʙ7_lb]9SRܱ300]?nnXta:oݺ+!C9zQ! Zrr 4]]uyV2cҥC i11Ҳ2O?]ܳݹ\ٳג˖x=z̿k U}իZ z_,ilv3 Bkk[5ҧ(zX"Aϡ('ϓA֪iL^ "##鉂͙ޢ|zbMS5',Sݧϫjw95{6='fM0!7'w9k. (ðx#G*++&L0wܣMnGȲNyqΝKߴ|sK.k׮) ߢßkz}```߾}G!fX kCDaa#drVi!kxJ>F&$gϜ eT|M*B!d3VB!BL+,Qsl&ڵSBY5*B!d3VB!B UBf0"B6a! !ʹQx{B5 {!`XE!l*B!d,j IDAT3VB!BLFD&7Tl6bQ7w$ID {{{G@ۇUBq#BW___PXhgggۜmՊ>>>bB6T*ܹ"4=}oU(yyyIRBلT*򪩮yζ$JBmpM,BOTV?[v%>kgՅqws㱑#ߢE [·T v g{}6Z;ZmUUՍ7o矟={R2>ĺ!ŴGX(Gg`hb*+ݸ#GfΘNdԵ?<=jի!!!aaa-185;ܹss+8(W^>ob$I.[/2zH:m۶89b۷Ϛ5j5rޯjpٿgf&OzP/O/M|8%''s"\]"# 9N0hFFQ D߯ߏ?@5n0k.C>{睷 nQ՟~_߾>^ظaC-[LhOcF7W/Bu61d[޻OV{:.t\\K`4͂=˯ 6L$[pر3gɎ;FOL>QK+/g999-}`߾}'O$ϟwCښϟ?ĉ?3;v܆ ?@bbB ޽ E_7F}wɒ[ ?Z͛?2) $]!h4EEEE:{{L|b&??Ŋm˶lbS._Ѵ!A{V91h醻%ITGGǟ~vAaIiCƎl^xѠ _z.\P(@՞P8iF\t*tٝ񡡡ef+naD֭a,$$$t|ٝ!!!p:"{%&&ŋ)ۥK` ) ϝ;_RZxzoRt:~q3nvNe@.Wt-71544t|<]u.]lݻw?sqIiqIٳ>du^1^ T ?FDD͓bXjhٿ_JB'عi⒒<}ҥC=L *<@bB\.g}!׮w|>W/֮gݻ׊9d2z%_˨(>vݗ] trr˗.A'J˗t:˗9:z@-~ڰpP`BzNQQQKcRO򊗗uvv~q{yϺ^U]S>>"H$GD,Xt"!$Y{G{Yݺu5zO3a„{m9t>~7L>i>ц9E{W[[KOwvvvӭgԨQT*SSS/_o\xzj*=xQ h t-Ia(ڱ}/

>9h4ٮ/$$$ܼyѢ p\)V{q |'-݊E{wYzw>mp$&fH$;t30}vWZ蝄j 4N2}a5}~...**3#?r C!: 7nw2EQXzj4=z'蓷޳72W]]ݤ&6j@}},//i+ owhvk_'苵-mŰt<>~߶ /gGi 1)̎?޼Q>t@r?n'Lٳw߭윂¢͛_2l¢ENm}lnݺ6nh4YYYK{QK#''8իWES?<!yao53##??׷o߾f/\+Vt?eX_~՞={'LGgޖuss`@@R| Ϙa3W_}jUPP{wz>}C~ۺ>l6{˖_6ӰaÜ8СC7nڴy c\.mgʤ0^x???ŋn}||޽~???ѪU_>t|…K"z'+WbD}]Fn@hѣϾ ~jf]RRvfau{a"ښNΖJyP(۟=s& ĩ6Z|bq\ГE|#:\ şvԘKc*tzB@'IBrhh5VEfnMLj`NM>`9=0ikEEQI-quV,EQ$I6x R"pzm߱ŵ˂BfEQ@Ql˻`EoblRs : _KB#f8)J'Ylv{fH꾦KyL&zB!d[$Id2>2)l*= jkޞ*B}!ɔ \.@FR uC+*I&^pMg#BَabIwV[Bӡ(H+.a(}X&[E!R`gV9l6Iw"BEIq$0} ER$F!QERx?UkN;#B]VbQ$EQUBuEERT; Y:WqqB.(NfXԓEUBu9p8tmX,( !PF?I$0~b8"rX,$6M-=!zQzFUB]dM!PWDY{ ! !`XE!l*B!d3VB!)K@Q^t6,CY+s0osҬ&ʰJ999YCWR[[SVRr\MAm1m΃Jurrnu55e7֬*UHRRȡw"9NGۜF9J 4Hahҭ ? P׫P "oiICGۜF9+ ju;a'PhunqX%IR&* YK77̌ Tʶfa,mVZ+tZtIZ Q:h$IvtYRi6+ZӤb EYbʛ% "#"ܬ/C]ښmN 0ÚҔY|w7KMbZRȂՊZ+na]NwBBZZZCC=dׯEEE 2Y]=$rU:w.ycA'ro[\T~G3g݂5-[;cU~gp[60%swߘӣL8|ѣG23e\.ϯ_ػwofisL*55UF[t?~'ϧ(JTTT$%%%&&66 @ЫWf>\+ !dhj]_S JN;xӔ(88bz;o߾{3g4*-ڵsKϛ7?11qm׮%kڰY@aaḱc|p!Ɇ h8؊`f+RyahIG] =ǃǯYZ۩HeyA߿?==w߾}...L.< kT'4M~}G+O8)L3'b玝ϿMdTT9=b^ݸNTkz毄\'O,zAP%z~Ȑ!۶mKMMyz8oѢ6NQx#Gmٲܹwﶳ[tE:.))))))''FR 0}SȗdQN} sj45_}c|74f{b8X$hѢؓ3fLw(HLL\pV]z)SfϚeH:޳'"<<[1cǞ8~].\hHgnJ5zԨ3;˴1_in^`[L/R{w P"3>Efѣo8;bKubŋOZ<<=O:n W\re ;kE޶wX9::s\6].ZAmuï[) fϼgݺsrr`޽G۰qk2228з_M6@)));f  ZBȆng)wdb9zN櫼5~:uUʗ>C ;asC5]4p@hթIoO߾}{BBD"Yz˗w=z(`аVUm?55#*(Z١#\VDbO59::ԴmG {ov䈑vvR.7ɓ') \]]¹dE`B" aA픪vHRZm/%vZ:uKSҖ2o:4]do oݴqqOn}XpG %%^3|!GѪU&Oqtt{ mѰ[u'͝E)T@UePZtus`XEz  ` ;;&Mzi;wP>ZxΞ=w{av#B0T+nUe{8Gx`ꊽT"ME6 Rd:ggFdzJ޻J$͛7ǰHoݶȡ#'VUW̟?/…~8E6xشBXZZ|T @_$jevw@6TZW[[__g& -{wz3T*ς5rdt*NjW]]jz=[(t4IC Z]V&I/BEUUUR]KBN z7l5{gqq˙hXd!F| x:Z^j21;WNwGT#^i'$$;\xK/@$I*]vkne?WDGӷOĤׯ_Sm0o]\;<]@+L9{ꏅ[1['46h Zs|/:((Bz7ծ*Ww7Z$I`3Ϥ>|Vs4B`K[o>ʢHɊ6Xjc ,0Nd֥:QJ"'`s9"{ߎcg61cF ?J*rÏ`̘эZ˗t[ΑÇ 3_իWy_ݶu+̙3lO9ZK*|UT Q=" *fz٪r?5&6dNhN``ğk3݂:iE޶Crqqq*^:J(TTr<66 oQSN キt=LulP X鶆 {*444!!!66c„ {khnPR"]\]t¨G'WZ%ȸJ^l&/bϞae'g;:Nܾ}{=*IU߿N^onUoA>;vX^/ AjF#O`7>r33222\]9aEȦiliҭ9 , Xlvzz˗ȡH$nB˂PmN#L4I*-Jy<YBP"B<P[6&mVZ٤[9bD"P6m1mVuZ٤ 'mY~B!pB UBf0"B6a! !`XE!l*B!d3VB!BJ'0"BRnܸAז zB=D"Q(6l/O/DEB!V*J$ o+%gkB!S3J*.s|>W ٷ#+B!MjH$~GgǾ}r:yrw>ggg' E"QG!xiZN>;vz[P*DDDrM7bh4 J*)$YcN}ꗏ8mKVNf:ĺMl#ocJW&bj62a&-m 9_XVEQRRByR}BV^z, 8륶Eyqj`.^@xD̬,Z%4oX(+/ty8I)P^ZNtD0'Vz$ Vټ}Ïݘ#G8}&hȱnìɰ9H57V=;G!'nռWYF.mNź f֎8Db:C֭]W-Z㕳e,!Mc~/Bkml֦q~}fS^VFnn.m:׎uJ N-Шd 0:LNR/6u9u'cPK&88F28y$mR`4j NcU*-[4mZZr52X"L n b"vt?"2*[ @Jxk}q/AȳzYt 1s͚7Gbc)))SiTqB#2؀h_fLUvv6ZWk|7ۗ~:uRhּ9*+Wm)= ͆],lj[ם6QOQQSFCxx8-+̔B c,^+oﻟ2fϚEIh؀[+$-ZDjj1x 9xС<^~yo,[FMzHAxwF <8i%^ɤnşMٳ' 6SN[FӻS?>n]KL4ѴȬ֬KZg6π,yhݪ%C#kʐ!Cλdn?7$a4yIi݊ 8z]xH懳}.ד</-/؀h+ЌHD~~>6U"P^Vmƫ0x%9iâXn7ͬln 󉊊h?̜12S;Z>ǔɓ/iGFRBl (h#sd|"##P*TJխ}#;ҮYټvdҐ4FQZZNs(-)~`4dkue]ɱwl<9Z] ƺÛxX}I,[M3z0xe+޻$%%t̝3Yd1-[$#v~7zIvΞ%c| :^ӑ`gc?ΦMxltڕ))|ݷL8sgܹ|Z7k!v)ׯ;P\\N֭yԫWΪU,Zց1O?x+'.Y}H-cu<εo[6y;r.su 7d ㌓xOpP޳xcz 4h3iҴ)Cn~Mv2+~ >r/^8|Wcg1|0V\86h@aAy  o5ϙ3}fٔ`|=.h7hЀ[2wbOX]%aӱi3/\^]w`p>tIi=14Z4Ml-m0)--mydff:, JVϑ.MQw K:ڰ{yM.s&%/%8I'9aIxv酰Pw΢E/SZVƱcGo$8s -Z`hт2dffCne~Q\ŋЬysO6n- bbbwz ء=[{ӧHLLd̛;۷;c0`1j1rde*8hт&X?v ^P3M~ƺ ënv8 FJKJ+NKii vb=vt:J*+exe߆XqQ^{u"""h4L6(.\h.--`m`Lfݰa˖.eʕ̜9`஻ﲩەFJl#شy CbalJpp0lMڥ.V;CJ$v|(8yͯJ8*8s爋!ԯO 7d-^Gc4jua'gd8\&7^Mf9[RюpgoyɓOquYֱ6֟ww 7W=_ $>#>#ڵk m:DJJ ii]\No$%'c0HNnm#L߱'2ҥ+hZh,㓒14nĤttMǎNDz޴76Ǖرd׃;|12yzWWqZS1|:]﹗[zވbRzt:g L2 gsϢxYIXw1zv[~믿κuIIIy VPqIϮvZpvkЯ?|ymFjDY:Xf !!S^^ZǓy4KH|dm nؐ6m4++  :Qy9nNz<0hJ$Gxc09n۪IDFץfËxKx3fb׮]vmoW_d nFv|=۶mGǟvYGfdv^5{qz())&** .8,(?,,/Rvmm Zϟ7iI*(T:3Ӯ]{6lPѐ~ݍBϘ`l}fxLgLp~M5"ynݍW;Aq\:%âj"YrE?1c5Zj8wc=(\nkגĉǩ[.7mf[j;%I⥗^~ۙ0~<3fL'@Rֶ>JgoDժEt⛤t BùGn6chFz[[hեJΝibdVVT_P`pX/h9BQUܱN˃=vuy#oۑ9i4^ܹuǛe;>^$n5Vi6by\߳'(I߰L!2"K1h`Nu NGnNj0a$qJR^r%{a-ųqf=kf?wδM2( K/fݷyAӱcGWD#c5F%0JiiiKRf޽j>BBB}3 Z4I_0ڮ ERq؈ukҷ_?Z_}5F#?(Zi3gΠk.s=w#aZz?doҴIc&?8 BilY$O@PP'?H$^^{ڱG%$$'οWɩ$1LHlpi1.?. qEϣ\ HU|'dbvQ6ڈx`F$@Y1^oUx%k̨T*/^ؑ|ڿ(Ъ^sGr2+˦3NqCNY}j]wt4{hw֝/~V!q.?/w^6uhU\|]:ѦCg8t$34KǶl K|s߿!>>{b&HFPXP@ڵ)//`4>8z!))ZOmt/9L'ӌNswK;#SZ)...]0=z[ЩS':uLnn.aat,XHHH[fA4iڔظ8nDLZGDsyBࡇp]w!IGޱc1Xa+VKoߞE//"=w#IzRݧ7\Ndd$Ç;Э[7NƔMjL+*upMNpa,&gzk/ynM~Tb[y L7j4Pv-*][ mǫcǩS.6B@FF[rI5ڵkl7BqVΌkMV-)-+ٳFJJK0JFZNA[^ΑǨ]%m;gRI'0bH o~bӨЫw+:o@HH t:#.F=kVOttn0Ѽy3.YEѐJ;4&~iL^yns=0) )D/XPԤh`0Vh4T* BP`4iMaLX1++>֋Cx ;*J GBD$ z=F*rsϢ2Xi)JSB$I6ac>h6ZJU{FѲ My 5|`&lBd=@NN#4,f͚t:m݌Wfu^ONN'4,XjmBg^]l7>tVKj6ԯ__ڬ۰o۱ՏKHN5{bѐԪ nIddx#3[h4r2;M%-z(*=9yy|ͷtЁfM6#pi*_c"I-FjEXyU{y.۲& " m;nrٞL$c`z2W 曘Yc2 n?́u$IB"{шV븠 \hF >sm1( f(| 5O#bFRYƫ,lΝ;Rh4s,}:vEN+ټi iii|KiެiP7}dČҎJ`ГǷۿ}4mڔxjd2ٸq u" 1tڅ!9]=KqqNP%E||111͈]GqgL>8&6Gz$L/}ɳx۷q'O˸v۶zs)h#Ӎ"VLg?(*/]_ī]{$mmp-/:yMH hI:`08],SJm`0p]T̩S')+/',4FDEEO|d6i8gg-Kh>{⢊mR(!Ȩ(∎6-nz'Č^Oaa*իKZ|`6JF5" (* ATɉ̓5V1q1<sq2dP\d`xnۻoߧ>a20Sw".W ,̃<g)--`4R*+ƫPʝy[.5k+ymMi g-zkmMReCck !Qw?%RG83cŀ[]cSg5Z|x<1%ZD];U#'$߮%=eccINض_hX2@o>>DtUz. Tl~Uy1X" I`-EXAXXeiUXY-f灼B;,0Km"IOc!`*Zu%Z ~_|poW6׮n9ެt^E.8 d5|ɕb]g-.,!B}܀MIHW^ WBN"Q%@9f%/ڑCv=9m Ӷxt3$f9Wڒ1OuۼJ0'Z^D#P U8sfRl]}4n /%PU~34zT<_ox_kJfH4&^GqSr͝9!ǒINxVɥn?' /?r")rXׁ:Ŭe#8Q nUS:WY?CRT1 ff_8%6xz_g[y*Ir3-Vm{gy˓0K/}vL@VQ:f5*-ߗbm/&5P&$ZW1S ȘDSZr9eJE;ns|9$c2mPjjR亚Ԭ{bADF2ה¼TyFU͞ n.'#b0$f.c"问ztO1s2/'mlP*rL/+⩆=^rSomb& ͇S+l]Gʘ ѭUeHtai1/M<@\obR5+Z<0_ڹ"(^ZeUfe^FČ! ; Vb@ յ֪̜X*avo}K2 M|’ʬ8 [zz,GQg&n"^hH."O IDAT6he:{%k.9:kRs%_1'Եuu8bAr |{v22954jx7+R Sd*My.}:kDU Ot #bbH~YbV4@l<7euXI]++nR[  \/ViNrvJ*Rm\iXRd*C}jʙ!7&P)*Kۗu#Vy^zī*mҒc]/.wW?hb]RkB|uyܕ y9}1YM3C೹Ŭt둾?L q>TMT SImtb1`@)/L_\ĚќT?|Y\o5|2*NjqU61mVYCqUV֕lFx[IKaBUgH s4{bF@ G>gFŮ8FןYqh"^jZc\JWrY jѮlR m\&ĚOqq1`%Il[%+__lm75s^՟KQѓ8H{tUJ믤gHڦRvm߆_ԋ%))jRQ '.ک}PTowemQxepoN֞NulΕ8RTTğ5;S_Z~$''W!@ ./ԏ'"b WF eHzP`oCAhh߅@  %""o @ x鲹@ #IU 3$@ j@ v!@PC"کX*=@py#/ fH@ T;@ v!@PC"1-jnREn%%B9tшZFR!I B|8iiis/iiiTwۘ|bյ<ԏg[8xm5tt:z|g}nWs+j.QQQDDDTI[VDQxg9w.({={wЬYs&MP%xnٓ .΢E/%w ˝+rLaa!?$WѰEԿ?iiiԿ?~-pi;nK. 8o.gQt҅Ac֗_|ڵ+ws7iMiii >>%%%LJJ |g-{233 ^Maj5;v P5O I4~i֮sxoŊ|34L@˶4hi8U"1)ӧSPPȋ/={;o.z0>5%''ӰaCVVVM_2x׍7о];%2ӻ=Omv#c4/\`zuyhd&La8vl}f{}z3}49#%˗أXڶ2]5}42F //gr=ws =y}ƍK^^Eg\#~]/ү__rss=N޽XMhޭ)[lu)Nƌ̙3t;s7͛wr!o}{>G^ \\ц䙧&22%.qہ38(Ν: 2m LO? ~;7`ܹdddЬY3Ku&j*/YǏ?$[Yt}2!IJlĒ%xeNz;^zg}ƒ7IN{ooa1Mvbԩ|g4im Cn^0s F᫯iFȚky}2_#FuV~:222tY]Sk֮#66}͛aP\\9Yv۷ò7jџ>}m۶c?ͷQn=}ޭ;+V`|m{&O~ѣF>… |zl{wA{9r~kC=ѾWWU6g֬<̚5!cȑNc*V*MͼGTYb?n2&7+rN}9j2V?w߳jջ|wN>;0t0a׌ڷ@ӦM=n[9fN:R!G4TVV@-hܤ ;wkeΝ,^򪃎yS׎;X (;;~};dȭۇ>}rc^̛4 䎻>V\  @),,tٶݻAN}ܒSv=7=jڥϐ=ܞ^ \bYz~Alb/ {~tܙ]vG;TJ%L66~ӌ9e˖_eYԪU[Wޔph4ZrO1 6[<~¨Q-1Jet:BBBh4T*\a~_PXÒ9_XH޽t3zySnfzB;Vqq~gߗ|gɘ:;=ږˑ^|ѬY3Ξ=KHHl֫Vj; 5oܡ~w}4{@P1_}+iӧ:8u2ynݻshٲ%%&P\RBbblÙ2e0hZrQڷo/ĉ[i޼9~ҟ:֭] ѣG1|[l%K;g9gMHH` 65lڴ O>=+f%ۆ}l|){WB$Ib,]e|̀iۦu$I=Ͽ@ٳ[doc4t,ԛ=eРAz9-[z[+mr+'^ \\$22{Z }4O4Jh'1ڷo/wEk:1r}z!88lZƛlܸ3Y ԽpSΌQ̞3#֙<"h߮ׯg}Xz78窮[${7ϋ/-tОNtĠK/ g;ء=b/Qxsm.Vʮg{VK:zѣecםgnݺo_9<@.Ux6'#GRYs?~ VGVl^?q"VZQVVK_gHLlDz|G<㤧{޽z:u6y)ՇG=~zuɫ{l999<7OUw ʣwrhʲM[6o[/j&5ǐ4i"7N;,,3fڼ?losNtɧ\W8Ch$I7ƛ/\Y}/|oaaK`nzU !\"šMw!ny=CU>.A}/*@A9 }Lݺu)..dvu#4,-UR@Ѻuk~u] Ծ`0PVVJ|[j60$50 _UN'<<\̐ 44_C"5$@ j@ v,lu@ qx@ W 1@ ._$g3$@ aH@ T;@ včj0$u]@ 2 j5 E\aHj(:NK &P(ijxY6p6ݽgbbbjܹӧM[OS -@p%"0]53$'M{ԫ[9sjӧQQQlܸB5kx饗Xl)//zL9s }a_:5fͦU˖u]aFF Ǝ| Ivv6>YSTTDVV0u4^|5T*ڶmuM1yjBBB8p `ҷ_?=b˙3gP(ԯ_ӧNRy*j +MY6/?֭K.u0%1aysGz:? >ׯ $''ӰaC /H~㕗jirw3~x9¬YOQѠhy`pÍݻw1w\Vz|+ŋt܉ÇТEsN gyƍ;IZZcǎ%##tXe$I"//yO#;+ HӦ͘7oգ@W+|3v拭_P\\ЯkƳ>JB0!YO͒dŋ 6Ԣ}pQ=N7w}=:l(vf֬8}A4mb:rikfz?ح\}{ cwVT*]cǎN??s͕ڽgPn{ e鲥dge /ڌEYY|b&-[駟ĝZ+8p _o,\4{l&=zm[UVx&O~<~'v֯_ҥK=I@iѢ9۷c7sHUdĈ[͛73o<-zɒ;m4ƍyXj%̝;+Vhi˾m7Wxm.KX}q7psȿHYIl޼?u0{,y{v".>N_SXl)o6/^O?^{{|r,~<<3~x زe 3fdu3 -FbĈߵKWj5EEEJIIaٖ_bjзL}KHH@΀>|IzzMVd֬Y1z4?\~=Q ֵX_XXHDdK-gYKnǾ>kCviINJb޼={ ,䩧b…2vTP(4p o+YIrr2SRlbJ2eR*`괩6))m~<G$?}Q^qM3/Cdd$!!!?Hė_~aK$IbÆ\W1[b ˗OqQ7N:HD^xg;޻ IܶonYy=|NGqQ?۶mSn~{I22l0z)ϝߧoV^`@ղUtz=:lݺ>qs宾ۘgtqjh4˭FII njo߾LGU!fHhР\ӑƜYp?l2ƌ櫯b9PqNrRÇ m#3S9vٜfΜIJJ O͚CS&..;}ɓh( gΜYpBb*fH$I] СCѤISkEEE >D{]{Ç';;~qQĘ;XfPի?ԩӤiM!t:233鞞NqQQ:.C B^/+ ""y.edggӴiS|u oXa!&5g|L}|Fu܉Ν;HjZ=@ 5# 77F3qLkT2wy=7T(U*N8A ,:k @ \1s1xx3Tгy{+WhkJ%aVW}zu]@ `JٿII({0$PN*kKRETT$ۿVIhӌxY#'^˶_śkɟ);,Nᔮ~V  #"TAQKuze9Cm|ԫWǏ3bH֮Yɓyg;df 661cF1jhFAff&{`ƌ|wٳÇIHH!!!l)mڰ~:}rrsi֬)O>:t/d[ͥuJkf͚M-ekOKK#99;vp7HjJĚ{gNr΄h2)B֍ZJA^Ghq*QjzjDQ4l j6N>Mr,[/`z)  e%[Σ6:wLiڬ;/(18̙3jݳ鑞#PZZ*LÆ };vpC t]Gff&~iԔm#5I(Hd*m)ϻ'xoӧyF[K/K~~>[䮻⯿NP)U;v'3v}L4SN3Q)UtZ%&2uru5o֔s_}hLyx }^l6u*Y ?OnnK^} mcʕn?cP*,_͚5sI &CS8ZD6*/&LutHKZZ8]Dd+#b^\CҰayg%| O}~}RZZҥKYi$)kצqdfpГ֗feeТ4LFF|)M6 24^}uIEطomRSmv֝?̊+Y`>=͛7?5z _}M72p@֬]KL G>|… pjub҃s|߰7x2k.M'~F&M1b[nE3YpudddX7|}ǴiS}I t$IB TDPZ-Reea>,SZ2Zԋ*'T1*SƎGZ1,^-Zt:7Ϸ~Ό3 .u[|W:N=VyyQo}[o RIdDSGRk$n:vSXXȎ;X [;~}t JELL =zРAL{7<ԩ[rԮg0t0afR{wiӦ4oтMsNZv%Z  CxG|I $IBQ PS*BsP+4iT 8u#4i1esaBvͦM)**BqA @vmh4|WdggӦM ;vLoI5-[hOlgZlEqI A 399(5|pLSwn5%Xfb|fz!1c8pvO<3&<Fh4ZbO /ܹ<>lڸmWޖec0mne&@ $SumB9MhK/Ֆ<>ݖ)X8~'Nht4$cKHH?G^֭ƍ\&Lc`դ3k, ݮùxEqƴl¦Qw&4Դ(6ٻ(>߽\ Bh;D)RTRbDHQ(4*M4)" H1sIGIsϑݙsN5lHݷj'N$88KqlFFDDD999،ygOlX,/^ij>:uܹslճ[n1WWWZ-Ν`Mдiӌ>=!!!<֘jժɼy|0q"7oЭs޽۶f\O?zjHkk ȲzM"! %*;Aհp"-\Hdd$~QI"PV+~=.hLbBV=G/rD)q ܴx9+>>x{c0V3K# d2rJZ̒|/rI܉DxTɲdbM,ZAxTJZU!@RL:큯'nnԁ5n"Pnϵ\x^b^FI#P* RIhh(eb2pvRZ>$%%Ѩ3:͎V!4 "|M:Q!)Lܥ5jpD e_ji p؉B:R``˞_r!|2!!w/j0~AZ^^^F_'g"AnLtT4Ft''gʔ)$)x"~?Uz=~\4#B +=ꜝ$xJ:AX6t:]ZH +//p痳3:''lﭕp+ZHJ1''\AIsje77$)HzAA(RV(p="]tjAD}9ITHAA(v)))X,@THAA(ԯ_?oB" B]lİ_AA`~S/%. PrR/lAA(Y_y0  z@~^wj-bccp"JRDe$I]wvvfaP_9 IϹs^% PBbcc9{-ɲff(_JJBNw?ETHJ0ԭKʕt% PB|}}QT\ ~zyjbZ(S777 -4 ϭ[7Q5"]F(a:B" Pҡ %`0P4f#%%5kc1LYN'2̈́=.Ϳծj^BǪssH *Uvmi4N'*# Z)qqqӴIIFʔfpVF[#ݹERb"I0wR9. вv +˭܊ #nH^}pRJ4rl/{$#ĺq0GpG㇇Ci3#=/OO._^o@TY*Hkh)aAAAvqqv 2zv,;oȑG;w.ݻw',,'O4A8&3%Ö́*"rl؛I6&dL1nӁN3ZuZ?TɌȲB"pjh |m /2ڶٳ ^'E~bxPQVV[ޜ։f+2#ˠ~v;׸}ܰg^(PV.' go7UjWq)K6 ycHmڵeC믘;g?39nݢFL>իUCe.Y 1ԪU SjU^{5x}{^}52Z6VBH5jO>$fO|/&:&/OOƌK6mrL`],_P|||۷7{G旕  TUV7t:g)5X-Z*X!?e.72񷮒p: I\̑@.',;ar^ *fɘR kE$]:ixyyq9u$L\tw'99'l2*UH8w,fK/Æ~z.[)r3zhXt)߭xl̙3'49„㉍[n89;'ظace%00߁iYJE JMFVs-F3p4 UV !!véf 1 4ÆO" UT9s%yg8& aCiߡg`ȑ|~Cr߉Ro WJeD^xڬD݉b9T\?o֮С٫We-=zz`weѣGjǘ9k>>>T6kזgNrsl,mE,X%5ץd\]@eLZ%j4k{TǝЈDΊ|VD{)P-$&z\ @.] by\ƓOߟ-?@^/k.OY.]$ѣgOQM4lH UbEBs̯={ZkPz]ٲy3;vd |BOKmy7ӻ_\o%>>իV0z(ԩ_˞xyygoѢ}%v;5kSN1v/{x5jdy7Kٻ7mbE$''paFɷ뾣RJQ]Yd)C e1F>>6ld_Xh1Oor3/߰F3Uo_}wDex{eʖ<<=ȶ"Ged+7bdZ ʣBgCBU\]Zm0~nzeI=ƒ%KX,4nԘ(..L;pYFA;1<ԩSشi泠̝˩Sh߮7e;ޥ?סQF(J~ ʖ-KJJpGp9݌y<=RsݳiӦg^c]V{2<"""8_өsg:w;Ç皎hsǁW~FKGnZl @fyo_ utW.]i۶ mڴUL4emyK^g+Үmc1S[r['-C?WJr3݃l+ <|dYFM ךq醬L!j,{CȵxaIf`k2l#j27޽;2Q11$h4 Ħ7qe*5zVޑ. VtRf͚)Se/:;;~:/x9ϱ޸q8|re2.74ԭʕ+yٿ?4l؀<n5Ypa҇`IWWW~y;UTR Bj}ݝ;ѺS$%%ѵKq8I5}>3gz ,v+#*8k\9Eʥ($FŅ;DD%F2p9t֪Dr~h< leV|JիG}Pռ?q",]7 I۵GT2fX7o<88#ݗ_~FCpRR-nŊc)S&ǃR/tԉ.]pM ,=4鋋 V"88 & I1rLNN&.6rSN̝;͆11^={uV:t%Kp8XVSI:vCA׮]Z*W6˲m,["t*TE>l(| Z yFӳg/FͪUyDz`kn0kLʔ-Ê_#XMN/b6qrvfڴinqf>V$7c}̜5ѣF !X̜5;XNSyӶ"Gve%E2n%Tzʎ^gw7WaM_!;))yNP9sy<=$c~^^^F_'g"AnLtT4Gv8[6Ñ%IBV#)DIAJ_O[,fI’h72(ZMF* BI) bb4}2w:G\==F6[ꏡEDAAEV!f3/{(lZ[2 v~ry`H oZ(T*qFAxhrE* R,HT*eYf"I j֨{KUHV+:;wxyfƤ_qms::ooD+ PܹTQ'G={zuV ['30x 7oN-x?< sNXVl6Cs XOG&B" R,>eY~o0PB*'U,VkJOm0&Aݖ)l߾Ço>xMOS~f9OFIn]ٻw/? 6b^ʢE ٷo`۷o}[X C}HLL|dsvvf{Zz]>P.]_iӦhтQGU1dW'-Ea0ܹs-8֬Y͖-[pqqaw߱e,3 Zwh^[DRL)L:e˖q!|kVThZ OoO~[F ,[h1o:v ҥ K,E`0dlt7¢zOTRfBKGp0fh<{Ġ3eʔ-O Z/,vFn/|vŲKiԨ|Zj1<:TC!v;̝˗)W-ZxRM6cㆍDEE3c "_!; Ș1cvޡoW_s.x{;jӧU֌=@^ʇ}lb@?Ӯ];ڵmoǏ|( l6+eʖV9s .l`Zz1`ϘLC`V+g2{EFFf;֭?_v7fS(c,cWTT}!7oFV h4vޝ2ʮL2n/kݺ5ĉlxx󲽤ׯ_?ۗa{t!,iذCʖ-?qoo/N {b9[t֍5krĀӧ:tdʕ1yd&?7|k׮e|v7 П_|9iӦѣGOڷoOTT4FO޼ ;hL'Ev{)?o6HFѣ1fΚ]ne޷"od弗YTKz=gD9sqvv˯,sR-$۷z WW׌ζ[QTL<WÁ$3MB\.z=QFgգ{Gzᅌt:$p?ˋ$>7? 7߮[q7nJJH:87ct=W_}ŭ۷tRN~$q‹/3r\OGaȑ=Yݺl)^y^X"s ׯω'0aB !I/`lذ> 3a*U1]=G`tJ8ȑ#3Hiۆ'|cǎ1k,.ZHRR}ח .yf5o@ ?~<'q8tW*WY5{ӦMcܹ{oo> l1seFx'/_|_k"!C2OR2(#Fcʗk^X,>c:K.Awn%/'kY#-V8v߿;)))5nq{o,6^XyTnmy૯ѶSJ 44sKb"IJ11c$ $4pє+W˖aJI?@IG~6 O4CS!VZ͝;pݾ}s?ȑ#XN1ɓ@j fpp0|0?J/='((~ӧǛg_H56<, ZC~ d'11֭[gfL?RY;6_Ũѣ9x׬zjYݪu-9p3&'Ofi~4$ѡC|MJ%Fc">; Dz bݹ>$$'[rT#d"|9DY:SF f̜{cp>xO>nKjbZ(S777@Be$I;sMj j8VPľV":+/Qq+$6djԬad2uB\\\Xu.}IrA*1}]ZOuf,;-/SG$#ec۰KDDGQiY^fDׯ,"#pss/鐄BlbT~KED= ʸ4,\Q?l6Je?(oF&/l1+*% )FVHv; ԮE)Zk#k߁_ ?̞ɜs[n5S{\rn (ʒI($9wr+`Nk :%^J7оK|a?ÆRR"Ioa-[9F@SlŲk/nݦ!Y@< v[7'p`6X-Ȳ\%S b(v%C dC.<+/ՊdpكkvYfu-.Z'zW0E)6RF(g%_b;J|{~}mfʑ^eX͜_Dyј""2;rKxl֎񧸎v#qi,`؂q+y} _D~η7DY\N!)\FMFcR?ڴiÑgPR +.ї}MevF4Ad(%Do?i]la5!948`ljB߮\R{A{łj-J:Syyj*Do[CKT)9q/5kԠn:\p!:*߶,b4;0<Dؐ7I LϮ 8AN2\?x]vf4_c_lWuW\gcl׃s/Pv%>ƫ$lR2g$ +޳| nd|<+2Ыxy{s)7nui1JɋPo_Il8rpw6۱aY) ح.HNNlS+vrrbԩ-G^:o,؊VǘcuCTI“7l7gG=n|O3~V|%Vu~ zqF<_y{r4"¯ZCGt ׯ#։Cב#ywĻ̘9-[˄ 5j$K,}e̻~(kP鹮!1 ڋXZAECCnLp`^F>b3UTR6ШQl(q %/h %"A X@L9dҎj”la9}N*jJ:uBO=z% 4caSPl{xjWc^seĈwys g)1P:w\2h,ǣ%m;ۑJJR//8t;O.Ǽ}2QGѺuk6m:&L 99gg/hFtњ)W?DV+qAcUi>ۼV+'OO>o֛of:9rILb9sm>6 {zj|T\+Vě 4=7I10;p]F̜{f-^i:/^^,Ǒ^!)>$fB{adTF81,v=_}Clfs\Ӿ|)&uÃgȲ̤IQ&~7m#yٶukF-[нG/_N=ذa#[~I&1{L;BV-XKGM=شy3_}_~{.%KHHHuWi(ng/*"!&Jb6-%XDLĸ(b"&'"[$bNJʵ<>vS'ONf 3ftUi՘~:{Cʄ 2>ݧWN:hZN>NlP~}ϟϯ/>'2mڴ,S\9f3,>Yᇭ[U&'ϤIdgdᆭFjF!͊ŜLTr"1nv+0nݚm^Ϥgƽp ._~UZwE%Eqy5.'ťVHG` fMx $ġ/ξ*u\s29T*iԸ1gϞsO=~~~4hРȏ#BRj/ȲLCNAX:dY[|[xlfONU;`pdɓ'Q*xK,AQx &ODB$:wsݞCvL>}Qq{F!򻯵`$bb(T:;j1XLF_b'b`NJ&^fu9ndFrhӶ-;ubÆ=&*_p)#ӕ;Rb?kjeJ5Rmpr5b֬|ƽ5WgŊ/T21111׭SΝ:3eTƍ:Nڜ;{&kZ,r5_r-_CgwoukAd$SR%H2;w;'SvLTn٦ݬi3Ly|2g}Q#Gsb9ܛFqC]p”dD![8G"&KՈl 9$TR] N K:lhS ݽjYSae"2&۷i%N4If$:'-qq:xx ͝Kȑx]ATx}8"(JBCC/S\45k20kwGB@"YoVݗS_<\/7Z+(CIZ2e1uBb@[O ov3QHƻRTԟ},)n-<[!@KSCBB6l={jJ#? 媫[y(@Aj멕4J2w.Rq(s0jQ( ΙFj(ǪTc۟HDDJORx~jSL;w P+}MPеuUl9z:8lze+hָ [֡G=bb)tRSȗǪUc??_媭_w?Ml JB?'"s.Qބ *?Mx8QA\R ׳Sg(ZiO3xrjpOF|=FFlA72M?v*++U^OI‹/TMJn^gͦ_ ١0A5i:MW*2q[ѝhAm`r8>D mHDm9܁4$hHbM&aHm m2}(uЛ1咕I0YJ}2eSWwN'-|ZvO<)tN8xfs I`()$W#iQGB2F?R4FV Gmm %VUNH|X‘l" IKP&ɠubM<؎ScIR=<;b\Ka!O M&cnjv;w:sLţVTwamcж}$Za25k'Nb͚p/'UC$A)<799% UXKD E2$1S!DŽD'ɴC"m3X$ ¾OxbOSSǏǞ]ڸ_1$m*W.Awܶ4>*oe^JuU/!QS]]VZ{w{;<{1z{zqt.8[*++V\q\7̬Y3(g[qyw\*+QGݾ{7|Qv{XU.[p!TUUrOpĬVĬD( wL2ʊrNظq=܃,?8&''N+-:<ӉNJJ<~ϒ%RSS%\[nA{=nFdYs%{n=[`63{x3 0ee!t_qj7Z&p;b,RQ~p766RP ;'~EAGPDT5>exm*K6B2Q}H.Yꏀ ^`ƌL>۷۝sY466C9UQ8y?oϚ5˃VKoJe /Tʂ c李?/"3fm[_ϙgg}?< zZ^{m $Jnii`ĉ\vL8~/5Rزy3>*?翨fv-,{3L>[歷ތgOՠWUUOpۭp'G%?!dO&'_O֟!2oˉNJ+x8̳pll6[P L,|m!qP?__\xq-Z\l|Q~inFTY^w"CβoNȼۘL&l}} 뎚\|l J_jz,U%;7LǞ=ҿiJKzQƈ4ۍBNW:̰]nœI#pj%z1e4hJ}H۶0aD.?ᏸ‹p:67ofԩt\6~L87zN; JKK{qe{]}N8{s|g,\ ̿m fɸn~sv;`E8.ZEa̘a*˂dZZs̱??̘15S 2?O7ȲdOElٲd='"23f$! D`uuuokd"Ly2>IE9ۍ{}~sNv[vv1aO;$q]\qe\uUsϽu\.~SuN'vRGW^eԩL8SO9$8묳NYYY̛7_^ *t WD"jrq}1Lft;`e JJJIi)*rG%M-++>}zĠ,I$r?е"./ I$DB~V#!{-@O3tYl>rsX ^[gs_3Kyk.* KnnV~eq#\s͵A}TBdtvuua2" 0.dYywU+Y2=8:z=cƌa-F32L"QS&)L>bƐ{~p'gn\{@iPݽ=_9ɓyeo"-*/255l߾"^{ ~ʹu}5ks٥r sM7tC5Lqsx|әhz*G}4qG}1eBr tƎWc6܋,a+vۦ( ML+NkTe!S.E}L^^lUV͞% Βg2}tz!֯[q)ۜ~A4na㰅 8tp!;knv?6lu_e΁F3<Ò%"1}te443},σ{+\uēN %ygV>Ofǎtww3ffϞ ҥK7^{olBC}@Rw>n";1D#1LQcO?MM;5b{Iwoo/翰`eZ[Z0|Mfsĩ5@wh~LUu5-͸\.vQPe_30Oj*xMJKJy7нgOX<խ2In ^@ii gϢѣƘSL=sey:rrYz5fa6⋕>V{IF>?ķETrD-]&\@vB^K ^QU9ȣ8#SS/wx9C9T(n;~%Ay~9S\tETWU/G \rɥXVn6ƍJVV_l0g?eLm ~[T. ̭PuoA^tX{8^^viTUMB|"ĕ"C@ⵏ$p 1&_ =tzyy|嚈 ?{V"//{"{uYw>/sG#Bt$/7>z\umܱ#fn3cVUz=yy^ʯCq6uu?ws_VIc7V)9쒰X deFr=?ɞSm)| 1c z}Vz$EŔS__OEe}Hfgyfjj(.*B#H_%P=:W2>۱5}˘r!2"ƶY.#_2Gir?JO]2"⯭7qsnCUU~b볡0e4x-:; I[ne܃5=*n Y馛pnV|r㏱r*F MAwWW^y%]]]a}NSOeƍuٜqƙɟ]eqyݾs[nAUUƌmߎ‡-G$,?Np0e^yu>0;5{r+Fdz׹`ܸqj~<8.T&O?;WnBǂTeK<^ m$:fdȖ{***oh<(pM;v_fgyjjk).=mHTv\ςtWWP\\$"u3uU=1rSYY gnwywhogӦTWPIw i^駟ykSт>3fc6itEIUK1/0CF})2mmm_k ӳ'hAh$''-[t8>}:eeee)1JX.Y;!sY %so ؋)o t:$P_yWl6S3L$ YQ9uz=$K:ŏ?O< 'F^((htzhtEϒ(9^Bf_B_Ftރ}GPu+v#tȲ}JIr1)Ia`+|\D:_N w>EQ}o,AMr$xMEnI(2h''2m[b@Yiiܳ}qmX,qtǵHTUmbfPo@V<ݛ7p:>mZnW'@_RZreڴ EqQ.S'duf6n^6lco'(n{.G> bÿUXbdSYQ)//jd,*f2l7r$1"- )ʲۻ:Z& V ɻ=גfM}9 ~/ ˲?{W ('qe={;;WHbKTGg~&NS;`\t*LʧR!Y2ՆTL(dUR"F*j`2SYUńX'I#˫׊uʨq-Rn 6ÿ Ezu}?(8aVZ^zcc#_}q҉'RZ~znvEOo:ʪ*rsr(--%???jr4TejF*rjb$6EZnY@TyHVoOo/r8H"8E2dKJFBz4N&R(įd冪JK&(sN*Vfv F0a'Jrrs)-) Ar3vIGg'zg ۻ=W7 t:X,2u2:*IZ`%!r jh$,A64JBk#i}ILH9RNRb@LSgID\W&"ʦ3v47&=,O"IJ&Mѝ0G,= ?%Qsh XKJJ())I*Fד]Uۜ¡WrN77| ,&C|ot"rHXſ HFM6=dl|+PƅNGPff! ) V'l||'+,<=c'IZ* @<ݪOo /c& S ITH)&$ frP"ߜVvM5q0Dz$t!D@`s8Ld,I`MgJ%k2"|:v5l$RIwPZ Q΄P&қj’fe—t%#CLUPdS%x'pH!H؇)t ùR4)I'i3n ˈ#$hIghDK٨4w@mjzN.5bϓfIS&$#tI\,M&71[:@Qu#XO_"EH"zc*HP$cQBNYđcO]hb3YAJ"ҵ=/ IDAT )'P}T+,VSRĘJHBHvQ8DO^zx3a &Z#HB&Hn%Q72>1 tjV#\F\L6CTHx#$Lw(#䠓,)*૥>-^y2&;X ErQBsFLr#cIGGV:YPZRQՈ)uA E:|' W,R)kWdIIf!IZ'd-U *CHA%Y&|;@2h PiM6tpHHO4!zH avJvTYRuC@Dԥ2цH(\t7ߌUUY',ji{0 D?eek66M8t,/)ݻT&'ȧbgOz> Q_wtDUDD*Uc=c8OϰZN D"Ӻ`$C#͓ _`a,,c`M[-hn?${ԴEeLqۗDŷtOJw" l ؖzbDcp#􀚰יLLh@mw<ÖkT^+W2۴ɿ?( :*T'hk^v<('Ă:O:M7oo{E*/BeG`PqE=dL pqܽ ݇T9,+xM%~O=;~it1QL΁>t*|_v_h^|嗡Z2︾p=,9{c=U$cn =x|؄;Ļ 7&%Ps5V*/%K^yӷ+.GoP}aK_?ϟ21{Ӎr)>oK=^u%,+;)i_9IPZѾ}N/ /R2YȰྥGM|Rᙶ0PzY6Q^g7+MR+ƯDpzV-<,hoF2uXa7 , [uTW'ћHAO![qEWgk1:ѣ#,x=~Ͻø[o@GerHi'}fQU0O_'B7TVdKJP覟S")Z&dSߙUfjvfl߄Ht6'-c,מ=JJpz積!TQ}Xi{%a,.am/D9ė~}m UQI[{ ^;ƒ--8w{WSyzZu%>}6ѵb_5;̪DsE;vpo0GyL8ZZp H2>jr. c.+܌s%qjmL!Uu܆jQMd}3 AlNd~E~O=l睛^ߔݍΏ>b9ƓqŶ;R[ˁmw܉K:z ފWg'ߎ Xjkx}dѐ@cc~:;|ObTUyM1&\mDx5oZ[pnǵn 2iW\Ml.v|!k:߶Shz d޾=k`L  EM|LJ~~|G |UMY#HoI4H0-݄}"l,?%^hj;fh_C?h~$/Mע2-ɧ0RsT^yUXHbtf ?f3=`*.,do5rOS,8?̺N_3Y [>,+3ʄ_](Ak=Cϖ񵫾:TY}2|si)_OՕWM{vhcTzy4ykր$w /Bo\U<*.be>;`:yrogt~raԱ](JM5^}7;y&$H8&Daf*̛!/ !~HgLW/2~pAD;6\ˑIX&`ea]]L]x[D!f^߇* cX#߂}2tN DzDj7Icףcǃ0&xL:}42Db?$5UЩ`~d΋$@ډHy|liT^NOJ 7$A#:!N qhH.% zcpp_f֛$CYgQzY4rK=#iE" aCv[N鈗|x ~9oR#&|x۲P SaPn@! AT<p$e6|qg\8HH^ Dr!HaxuA,FBH Z# ;P IH*6`31H&Egg'ׯxϩ>3LY|/3 ?4zf),," EjmWW_ѣ- 1$Q;f$q-֮ٳgSPPnn x`0b0 _zx>iW.mFmm-fI%@ |X՗l۾9glrp8]JJC]}fݘf;TKɅNQ콕@ R\\̾}bq1qd\.^>Se99 鯘H[CVv6%mG@bMooţKp98A CQU ?F~T;2*E%ti /l@  kdYf߾&NBoOg! g#/7tngoWEEE`p8(,,d[C=yuuD%azF%`;2 z z=,0(x'݁,+t)&޷Fc@ dEQ!f шN'* *RҥKޮCKĴ@ F ^n෸ʅOoh۵CEr!K.vj{֊NGlzTE-Ftt` I:JGftII>Tm # @  V.VZQXPH~~YYY( 8F#.nIà׳rJ;z;::ٰa" qc1qDv;_~%~t:9޳flە U.$IU"!}=\N\..7paٰl(lB77A2=Q [njZZ/0ak׮%?7`ݺuQgr!i|EX\`Đ8N26@VV&, zg17V^e/e{*ZSzڒ@ *c>5cgL;`x%w^Z0͘&'F h2Gkog'ͣͺP2oo`i(B}C=@;KZuQAUZI(++DٞkH.@0bPMDuANA>TVVRYY̙3M4)L]k"a YQ6UųBׇ@ `أiߊ5;{pDB NGv[R_@vN.}}b;7' ϴH͎Ao ;;3=`ɢzƎN~Dr!a^'77>Y)cnj»As^CFGq;C\e ;)--'777ۭ/H骸@ @+X,Y!!i'6m4wrs(+%+ @  {t:&FoK Vl,+Dr!$IXYX,lD$͒ ""P-rW@ \@ \@ Д5⮨@  ` *@ 4E-"nC``0hzH.@0"p\8JJ<Ɇ$I9nޅdh4j^B ۍǤISp]K Vq'y&rs0O Dr!aOooKpΌهrt0k~8tȠ=mS$@ ȲLOOL'cD(-+fzjvu1{J2bsp8(,,ܼ* @  kEnw`QU%cES&O|f͚dBU>Hvvh\[ `hőh$pI.Eso'L&(**h4yn䣏>O`umBuU5s>XS{E"*@ 1draGΝQXXHcc#UȲL[[ۍR=g9Ρxt*)N\DK #UQ3CQQyp I\ 3f;×?P_xQ2s QA@BQUm?~noՊZ`w8x_bL(,,@BGo_/6c0~v;k~֋J0k  v/~[?:.'̘1]8vfϙ@kkXpAJc IDB #+¾n;w.۶m YttuwS_E-yg eeezȡ̞5 7**_}%9qy&j-vZs9#9|L&O=P ˍDUUUU +ɅC TH<(rՉagK]FUm|r%U,ZS@~~H`4U4 EU0MȲ*޳jT_MM-w vSo賢*dggE8]NCiYiZ}"@ 1-b롵UV7|Hpf3:Xk|$$0QՁ ,$dYhEe%-)P5.B #53%a|Ws1nrrr),(_mץ%%3}4TUa[%BYi۷70m4E>n2KKٺu+.EpDr!((JjATUUvoc lذLsMjMz5 OG\@0Q\8N>Szݲq\8fɈAo@ylNv6 ,z;޽C9-uPkVL?^o;v ]] 1c?avkfEU%rrr5sf~da)lJoo&Oᛯh7$I vkpWԀz@ I; Kr**}}}Ȋ Nҡ . {EɌlFף7q9](bKla9|7v^퍌;߶3f2w\FMGG}ƍ/$77uWk?o5U5YI&!IMM;1sk֬n7 ;Ӧ=rr!C _"K.TErrpntŊhh4tȊ*(U/Qtm&c`2Q%ݡD$@ 1𸈖dcb05sVX;UU0տh42k̈:|̚5+h[,ɠB #\oh=ڞ*AoŚ=ԮdeP_WN=E|ʅ@ 5:,+u[P_@VN>P`fnktDr!a^'//|'7Js*z¶())#//ۭH.@0X$ ڥ\J))-~*"GӑddT(C~j%;+ ŊѽӾ@ cŒlE-G+$I'isaq@ n%Ih [cj6? YYN*Ik.}W&ۃ()*5Ԯ4$j,hC@8.,Q$X,X,-T @ y @ " @ " @ " @ " @ " @ )TUvvT+ CF T,p\8KJ<Ɇ$IY|xA8#ٹ9}(*./3<s={'LOWp7i5=KkQFqM7kOZr%7knƖ[+¯g'dܸx≬[ {}ȲN;6~_%aFw~*cNAhzoȇ~fCW_Y1Go })S qۭ2v86nȿO~+y.t߽w^=8t)˖ʝwEn^s/m-]{J^xExO8cڶ`옱y3SYYk<6}:'MW^i`}?NVV |ɧqo'=vO $N@r:Րgo?j<'LiSA0־hP]U>|Gg ȁ@aa!cǎ.544p ظ=GAee%^{eƔ)SyGU| ݒ&B@4^"H HHQ:4+U7,JSP%Bzɒ%̛gޙ9{ϝv!2gk=?? !C[[[4\v ~ O+MbJ(G@$'0tw^R@FF-LP$Qd\aؒYڼՖ`o@ZZJqxiιk"< anc;Sa;o;v `]ܹȁCMKQq\?H||<M_AC+23طQQQS~HMMBiA׮őJ͚5ٷw^{=l5̙3:g,gP}߱L6m͛A60;Fٳ."<,:"IwBVӮ}{qkkkBv/ 6JŇ~HnJ[T\a̛?P??>>>ԫW,añaڵlقiSA&1vXիO ӦOe,_-[ ڥ+ I&ѢEsKmrCV裏hժ% 88jLrT*Uw[`ӛRO kuYMw߅ ppGӕyA%%%\A0E 77WwaÆ4k֌lmmi>;!CXhlv3)t E&8p2PhޞmCHNAMF8p 9zӱCGjժE۷...܄;wP(iݦ57ۑ#ܺ} ۵cSV-[rM %OkǬYP 0ѣǘt(E] HMM%3#:u (W 32 q88أP(J$rXOF H;%zQ"A:H6kJzZ:yu@ (>}_@rVV>u oo/,,,J$gϾXR @ ([>#—k$;; ΅@T&A"@ ʔ2ڡS*@ K @ e碤+H%)OD@ "fec@PB A" @ ep.@ )¹@P:$Izz]@ (OJ J%2bV6NCVZkIdS|O)> 99xT*$Az`0Q& c:uqll4(S(FDυHMMzu7 tbHD VJkupppeC'yv&%9@22D@ T:'G'aEPOgN4;t䫐fߕJ%M4eYV//>͛!5-4t_חpΜv @fNk:vk׸vzTFYL,ի'g޽ם@$b0 v.ʘ hѳ$x2<}I^GGG#ΛVt?2{R]<2K(,tW 9v666888[#[wܩ}.\\}H{ VYr!S322=k-Z4׷6-Z4g}dee)2 _0}߽{7]vn:mۖ/\`( K,I`իˀxb*"<|%..h h*|-I!** Je״iS5j/ǎcwHLC}bѢElݲ7NNN=e ;w`t:ywߝNm۶]O ==@ۼ}|pw/B ̸GޛDLl,&'++˔͛pV\IP l4zIdd$ΞE$v~jժѲe+SL:k.O?~I&i߾=ƌF.ӹS';ݻw1 ؿ [|&-7'88"=p`? ?X=:v$**T? /@1w\,,,y9ǟ|$I/op- gƍEOO=7fͬ"}سw/?xuaQH|-^ljEwXd 8xI2PѼysfϚM6S].y~7m0kݺ5wܡ}lܴȺvڼ8EjתE63.@PrƍķbΜ,\>$%ezF}9WhA:JOOlx4YhH-®\)k׮гg_Aa{ ҽ9׍?$1l0 FzhڴIFU6{={C$9yd6סCׯ__ŅpUJ%ݻuG"귵-ƞu"IA9΅D9yݺwWEA_Ɣ/W_n}:::Rv-.]WuLgd֭lݺfxRo//fΜŌә?ӦMc$$$0o|jc93V[=i FäI̎[1u`@&frBFF:-g]{0p)_޽صs+VW_3ӻ7K,>çV-gؐe7ABFaڴifׯBgϞlذ˗h׾=HTd]wʗU[@57>8Anh޼9+G1.Lf[穩uiiXXXYwɼkd9~aԩ8x0>@P"t: 6%kƛoEÆ jmb B.Wp| X+29pQQQ#55 ]v%.>ԴTj,Ў2~eT"[?(Iߦܶmv222X~=7m$;;$cygsL:zkիgO\p|:9S;޽;$I ^Oll,{*Ve 7!}6{3EM<6mre$d yljԨV"33={IP=Ǽ۵kSN֖.sV"B5yW?ukK@`o>!*\Μ9]2 OsehMFMRR'NgGGt I/CF8i"3O#=-I bڵ$ݽKRr2* d2ׯ_QiyzW5hPK/ѭ{7XMϏUVD72||YZBU6k֬ϿDLsIjz{YngSO5*TdfjɆ Xbpsȑ#hղUuS ֮4jԈ7zS8A9iyVUdA cн[ tDFFҬy R鈈U֤$'Wf%Ym|ϖWaoqeًkׯQ?c L&Gckۻr5<'^^^%~Yjxq^宯S[.mC[IQ){#`0⌥ZKcǖ^@PuT[~E8 [qTՕg:t!TeT͙$/T*3p^^5+fL\*B-O=Aq.S|ϲ\ KT抝]!oD-s!0j+ܐe\ Z@ (O4[Wkuj + A!˱'''233*$@ xQFB&U^\*L@Pd u*r\B/aLF4x@ x(}lu@ 7¹@PB Abs!AIIS.@ xȹwK;^\@ (S*|)$!O IDATIzz]((J1A@ xȸwQ::NKu7wF&DBB* U&6 ;ZQ\z22BӒWԩŋ籑٠TED+++5jȝ_e\1 $5577wtZ-:]tZczW$boPZKh@P5) gBTP8$NC*NɉiӦWܯgmL8lrliii,[ݟiӦtR233+(74;~%6mZ"K.mD TJdds9ӰH1 defidMjJ*H`0}NNTsu-S…W EIAm ++^} 6H}Z72sr/gyb~СJF ;,RX- 2333g6aaa(v }lIb劕lٺT>}u1Kwmm߆R͐!CةIwbDD5k$..:޻aiiY۶vZԩhԨI%|fzF @DD]taѦfee}NN=e ;v|`TJΝ;tޝٳg#W^᧟~ڵԮCXj5TʰasC0`ԩիpwwgҤI<}&~˿ !!O_zIq1"I?C4E޸a#7'==R"QȰHi`Y#駟.րɓ'Xzjн{wΟ4oW_eciiɖ-[XjY:gg'FɡX˯p!})SLBM4Q58992 fqE]r%n <^G}Tʯ"  ȑ/* &N/ÓǏ3}4ЧOVj/^¶Lr<<<@|#**$g޼ښʞ]gٞ|HRr-,T3diDFEr|j~~~dOm@ x1>Y ڊ r_Jɵ:))#GСCLg](JfΚP͓BBݝ;wsN4iYWRחƍU OO;V`(t#8Au,e_aࠁ-P{Zmt<)) N Ƨ6舏W\)(}G&ݻݑSN8pcǏO?Ү];2LEΝ _??ĶAaQ9pϬ[YgaoSXj52wޙJ:d155^zl?_sfMiu}Xn-cƼTt4[RRS ݴލ,ƖлOb\M(+Wtܙ&M8v[UJsQ}}x"m۶5|٧̟T馍wFQ2r9666UBeVذz*n޸A]س{)(ݖUmIuoȮ$Aq9]]6̚99DzK1 "ZD>x={6 fͦCǛywƻԭ[իWsBep9v(u<-0x޵kYYYl޼-[P̥VVVDGG/[nLWߠU\r0HS)9]t`E\x^ϟ'duXXXФIׯDEEPWqe֫GZZJ tJ||rBjgKPPPmڴ`Ubmm]511LwAp]B +nܸ;v`ccÖoe֮L/Xo V-ޝ1lSܝ;w8`~ 8RQY/-L-Z^Oi V#3S`(TWRRO`ۓq/Xd1!mf͚ռ4v,)ZQhL&`0 =vpt?sҕXZju\vuvtN"w&!˹xw LRY9Vu_\mNNTsu-w$>|X+ [7<ӁϛWQ"::@ll &Ŧkt/-]bʕ7 d%=zL?,ׯ_g|Ξ=ɓ'ٺu)~sΉ4nܘE ~-.U%E*߃L|-N<ٳ>yv3*Wa͗khܘh>e>,ЩS'w޴lْ/!aذaiӆw{,C~`lْ=z7_#]Ҙ1DFDZz~&9)[[[d2QQѤޤdnߺ5|P[Yq-RR??,-*w="gX4%/1/Q#IH 8Ȉ|}}v\yv(W\ՕI'Ү};+HHHߟӦR^:s4ǎchlL_9ӦMI`xrYTaܐ! 48OLy#Gpğ&---䓏?& 0[Ͷ[;v(nkĉmLFǎ%$$:kG!;KJJsL6ν X8h /ӧOԪUyhX^yegdٲ * gG:4M?ڵ!knd2#^={N1J*őԯn۝aξ}{9? 27̙`sԮ]];v2 $8BNmڜ>ufQZ5ڴioiLfimۖ^ߙ1c:݋3%KQ)-p(4nذa=wGGGƏu$k׮q5٨Ֆfyc|2Ӱ%ᅨő%O?BIdiѼ9\g^4 sEzvm222x2IIhʚtoRYP BQ1%Tr/-/bkkGjj jOn %=((777܌={HY[[HMzT: 36-[jj45j1q[M˗_}E͚54i"߇pifΚ^M\ ̛oEzzzzw0vv츅RɰaCIHH>9qgx޽{b钥l߶XelLÆIz^xx2T7L4t_xͰf߾UUZ͑#LǞjܘ)c~6jTj]kF ?@ȇ-ʊ/DrKSgHĕ0vMgǭ[Yș["=P~ J1*@t}{b 9s&;w[ZI;o./RהUVh"^}5n޼ѣL͝,$81`mƸ:u*+W,Ғm۶ѣGbܜx"J իW'-֭ \]̉v9p$I?B;ii$%%%.h4K.G1 ${ wry,JrN,l+k5AhZ®\ƚ@y#"|9,AAuzߒ!( 7K3sLٽ{7.]wg`ccÞ{EݝMfٲe=z.]:y)pww7;lR~:ǎ7sr6o֜DzͶb:s5G/8e,3gbp9R W+R\Nl\^^Tw1.6j֬ɪի,RVkkӧYȨ{f֭@믿c@Ƈ5o\j)(DEGH8edquVX[[s5.\f2r9N4_ltn4 <ӇM62jH~iY]FFVVV Ӆ$T?,]%''ciiIjZ*iDFF?ҠAv/Xlrޚ@0R'ڐJeYnT*3Q;Znp5\>|,OZONϿO=8 ҕ I VG\\<ѱԮS:3HP9&m^ytbL-+*NS)+5|f}l󞜹r6 N[= * `Yb%=z,,|q/LtY.}i >L< Ǐg׮-[",حimm+QQQF/U%& ^ݺi߮=iii׏cƠjp&Of͚ؿo6ldÆ3sy{|:?ȈBUƢdU7P%''sr})ͤ1x@7KN=0(f3c4yg ??yg qqq̛4uݦm[+7 IDATݻANLgKcР~|W%U^qEƍٳ'wf 6&Pqkl۶Mif4n8> T^=>6@Ll,Lx5T*iBpPP aҥ3}===Yr%_}W\z >[7j(F*ك]Z>DGpΟ/...sh2KDJJ26;QYX`mew!R,TTl ~tF9Or­Fub㉉ݍx:5JLT1ؘ*JC/ AKGӥs DEFҪu>pىa09s 7sRB~ЧoN@aaasr>-Zɧ|ʩSqrvaafKʊ۶]2z!!OW;ŋhHMM孷&ҧo|2338z(k*OzKN#""h [&amcѣUN>f֭ b%U%م'OҤY3n߾/Ν;\ CameCJJi{۷os53="%%=zK/r46T~kZn]2\znn(lIKMC!⌣CL\x7Q(dggSݵ7Qfح7鳩Qr1jzyaQC?ի+~Bg7] .VZZݻgر8;;nݺ_ qZm])nzڴiH9ddW͵O߾\v;v0loCw#'Esz85s?* _F/'MdA:t$...tܙ=}߮lWؼ899ѼE&ggy'+J76n\x9ZJy-0QPPӳс,wprr,б3R-6;x7v]v1r6_dL4MyhjKn޼CV=o5nͭ[7lTzϟ sqJ38<5kz7ɘ1\%;;"[[;PýjK$>$ZZ ;;B&a7TsȻV"*;Ǜ֮UZ:v@ǎr=Zrrr"55kbmmBQ9>L&+pAvtnݺAJJjNm^ҢPȱՠÏ#wR E|^KqvvV{Q5VYdgs =]ի)~'''23j$9HC29r LL.#-9''*T=d-Ҡ뱶*^(YV[V\.rbh4T披k5BU ;; Rz.ʊ*==(s/9VT_AءV+}Ae򤗿'١Rprr 3VX[۠VHcυ*EWU \GfZP+Fd2p*8T=s!YPz$IBPzkj /;]] cp.@ )a좛7oZ*8ܻxiGtE9n/({)P$lIGz{h@P:dr92 vbjIA[RJC@ < [ ..h\T( x9 AբMKΥ0n{ÿp'Je%5Nuա.q `\`rR?mF|-vJ`@ <Ili 7p\,!\ʝl8/[c+lm@ M=_>ۇ;/r΅ܑzo"ȯtz=zV [|y*2ޡ3F sW}#G* 7nۓ&K%::֭۶oΖe(|:n;sΥYf$&ޥo>l;z|[;[!!mY|9/_3>uVK$ިc's1~Hq&LOLL ~!͚5+ݼ9>B ƾrJ6mĦM>}M4a$L lif̘NXXb ϛի0`}W_ᥗгGY`]ˤC ƍc[o1gl.|{{2|z=G&DArsoq.gϞ<7|懟~Ю]SO耷7W^}}!!!,_U+WjiӺ5ǎ-[Yf\@GEE˵kmI&'mmmؗ2ܹs]vSؾm)MaZB$<<<~c&=  Yt)v/AB|INڵ gΜ9 AqbY̘10m4,X@BB^_6saiiDԠjMqK,̙3tؑ`;G@&ѭ[7/_Η_~~PCۛW*\Zj^ǎGR⨑;~SNѮ];P7g??)4ࡃv lذQF=ЮǙ\"==qƱ~z8t5bnfz r h?)`)(`{zy`S񫢠ީݩwYPﬨ4Ҥ $B IHvu&+$]cvgv泟{?x?!xFaÆt:]v̛7ښ fB^/ɓ3~8y'5;FJ|:w.5,Z(8=x0[5t`sHMŘ1cPCv~VXXo?<(9 @ۧ/ 8wDp=zp80\xٽAnnnӚ((W^\=jl ‹/HUUuu$%tvf36mB4͛iz}yx<fhsrJnƎC|}?jرcꫯXp!^zIį 2mp݌=&Lpp͵2zhnw[\L8 gyvͦ~lݺ &4{p`q.K"'MbkoAïo(( #F#Gdʕ9NqX|9C sĉ|g< hsZM7c=/bҝGw9?<=9Ç'@4 L[~fg츱gO}`*=#GhsAch --'pB+&99~ Y~3Q!Uɭرcp:ojJaQnwh>Ҳ2 ;-vZfzrsr(R¿7 ];lL$$&ߐۮf-Yb^zyVx:߿?=[VfMp/o'2A~6.h EEo2areqZ 5NBԬ $dl%BdBg0RН|oBq#:M$atM&&቟B[ފ*BB!) .BR\!"$B!DH""4M"!8 uEǟRxeq*N^GNN>@ )"cX22 6;McapjݮH'I!Njq-,b(Ӿ"l*>)`4ʡ4Xc$a#99Kj,"\^/))lܸݎ^u4Ň|wϓO>ĉ(--eo#,HUU.^ky7\=X"% dzq<*űSOdvРY=wcvRRXr%~z&uzpTн[7mNjjǍ~֭[IKKcʔɜ{|h/JKwIWqUW3i5͖ɔ)S6l(VJKKK[ؼiY{cР-qa;owvvZ"駜7r$ݺwweРALBDJE!##i**0-։VFfSLLs <,[CTWK/b|\NVv6S'`5HLLw-8``Ҥٳ?VӖGVffg|mтۜ9s>b„ \4">l!uuuhFUUݙ6m7x#FY9s&_h7x˕Ad8sTTT4{tN.^x#>na,2uTO)..f1o\6m i>™gIuM r>r|p*vug0bbcc?~<<4111رK6/MSdK ."E3d\qh e())/gGsz<F>c.Bq2[;6xqa|>nÎo.PYb_]64cmdgg/yGOzLL F)"h١9sضmz N M <Mvӵ[WrXt) bٲeL6M┐C=ԩ0} ~f̘={xEjip:`l8N?4~.TU哏?aΜ9r1l0oA\\,H 4MK/e޼y0lpl6BS"8y23yo;"<O]EB6m̛o-W_}Myy9 ZV+o;q$23yf3M8MŊ+u#f;o|>7xcpcǎ_'^-v=z4۶mcGq͵2zh\ N"??|?uI'`f~ٳ@QnW͖NAAA_믿AEy X4JKKvk .>cFwG]ͅ89t:1V֭[GrR2fc-{ BB!8& .֭]OvNV;& ^Oݎfc…KNnn`B je,cn qF QA F4t†?"$!8vRRRHMMbiPBN#..DbRqBqt[L fEQ¶^ .DX)bl]BE kPD *B!:_.BSB!) .BR\!"$B!DH""4M"!8 CΓBO||<6Ee,cp P[[CyyGw .D|>n7@4nS!:SllE]EQ0sڗB 7/z#!8y=F#Y9k;",~?u$'3E"^/))li0=5W~۰^pp+ ۺ||<L4ҰA믧r>_HBJۃ'bp5Gq{HHHggu7yꩧ;lݧ҃e#XB 0͎IJIaʕ~JB4Z?O|50{lHNNNsݼ |d  ));°aø (#ֳhb^}UJKKIIIeīꪫ3f,Q]]̂}nk(+-[nl߾4ƍ˷~֭[IKKeɜsmg56[Nff&'Ofذzmr%b-yfAÆ '7/w~+$$4Y'~y#Gҭ{w}]  !DtDQ222^Oz ©;/y牋sk׮Y{Off&W| IDAT^}9L& 6m…e}C=Duu5\r1|Ȕ)1-33#ɓHmm 9L2zIVvSLt'Ii[ &NȞ={yꩧ[ܼ<23ە'1h &p쳅աiUUUtgڴix㍌5gb̙ ~~ExG,Wddr=wSQQҝ;xLuzyG=BϞ=T|qwx(+/`ܸ1,Z{l,6lફj6OӦ=gIMM _~|!o_t>0;w.%wf1o<6m|4ypTv;֭?Z{l,Ǐ7駟&&&wtٲVvX445XKr(**BQK/ /'[oi''>>Ϙo>xvl\Wj*u@^=_Ěk;s!/?Ej`̅  8 غu[t{N TlCl썗31c{Ǧ;=0=. ;s>l駟ζm۸+p8ddd0`@֬Y˅\:/o@EQ @AA-l2_srsQ`[y-'==뮿7^rZiFÕ:DT?cFÇE:"Dt: ֭'9)ق۱=zd!NB|LFΆ֭]GvN:]x6'^Oݎ… ([HNnn`B[{X2q@II17DRr2az"*Hp!bNѱa~X}$'5NJJ*)X,ߕj\ta6HLJrE:IBqRX,bb0-$a( "wy!D'S%AE .DDD !|Q{+B!NL\!"$B!DHIp!BB!!%w!NI}NJT  cK5tt;/ .׋#;' pRTEƍTSQQAohݒ?v  .χh~U햞b[bҷo?֭EQ0>]4WkǴCE !)p߇NN}h\JwWdž0$8ݵmA5/S"h*\!N~:Rqu/kCOhUOJr Z'j#_WijQ7o )23MY g_Pg/]p+9}tJ:NDk;-"8eiZ U*Y:/w.r/w6nL}}}a"BSұtwTocUrJSs2 }b Χ9PR,+!jos=o̜СC9p#;ٳߢZÍ7@YY/ 2M0MuY<#=nv_i\v|MΝKl\kȍ7 ^':euU G{iOOObk ,ڲkW%]ti6o^o+͓O>Ill,VO>E4}]^xyѳW/sz-zrrrxWx'XdIpBM !)XOٴ'މܚXX8NV,"LvsہΝeqhFbb"ݺuebr())gϞy,_Ǐ;{+Gnݘ;o111\r%a9iu/eX)U@ >XmW%ծ[fN'v=~MM 6iv{`wЫwo4Mkk`˖-?jTen߾=̓!"BSұV+< dzr 82; { .kF~g0ua7~)b ;u|eR\\?<ӧO~`ܸq3WfYqn0 <:Qx5wog5#KfF&~:+WS;h4˻# _[޶PVJO `RRqݻ@UM5 @̆ {a2$;l0.b~)f]b6I^T믻?'x'x\ݫ77ptUW^\~U[ڳ UUQPBҫlH\t I/NϿ4' Ƣ߭g"uO$_I3qll^uRR\BFfկWTZ~H&(--c;7b+¨B3ٙz9P 'wh95C-q[cR+wc1S3l(i%&߾-Bg>)##8Qg;zbٰ~))~z%Kxy֬\( Zu!D3p{^¹I硡h6~iѣθt8Fm۶+HSfef9|mILQgg4` }׮(O?QzAFc{ sBB5V!DRڵkINJd6oQxQ&k׬!++𝑯3uԐDf0hp};jτQ]="zlv;11YpE6oQ'cn)a $%%aÖy46xlizFFO1m +EG˺ǬN .|>'K7@jS2>tvz=C!%Q֥E׸h:x< t^"*m6UNCYX֥E'[':t:ֽ'^h7MӨ|(:֘M lVB\\|tTѴ϶NCA`0PSp8yT?c(,g5~MM-:B\\\X |B\~IIIQ_vݎ\.N'[PУ&)''KrJ k׮f1Ɲ!ٶ:n7+VdWEEF:BVv6g :,AFyY#Y6nڈ 8lz]RS]͠AgE 7Ǭv{q\hi8&#;v``0t:1Zn7n7O]l[ z=vUW_u)?#%+3 BW#U֭[((f70lp6_4RRRXp>􌰤/zթgVU"~rܔn5ht(ʱu\|'W4(JhY~wftEhg[( 55,ZUnf3n g}΄ aF޻\|%,]UUGLl7Z,_Gp]TV"9)d2/81<+W_1~ZҚ\cV'ߊ_ADZox…Ge.~GoKp=J2ÆO>a̘1LP[}=Y1ݷŌ>Ebrjkk}\i v;?iNGcViuuՁP\\Bll,ܹLJ`-~Z|^߱_k !>Y={HGՁ W9G3<Y9T =UUIHH` cr;͉TsFWPCMSgsEQUî mێjjMAAJ,-%[w߾|.p ֮ЯzLrss~`ܸqL&VZIjjG`]kVƯU`|&La޼y7瓝;}6l(K||=x`JKZLft֝:N']v`鲥 <s 5miC esq1Ng=`пu;OMSq{#'-גk­#e=,1)ƱpB6kSt ?|,VQ󺵲lpf -[YZ^W)ѝVcI[s*?m LFf&Nb۶ر󒛓dj3cժEQ(++h̪U+ֵ\;vҵkW2ٷw/99ݻIOKg}W\E.re$'%-Dɍ㼼<60xW5}6--~qAk.boc29M^b9qy[?jYK^^yAX@t HOK\JXf Ckt:AW4\|~i6S=V.];z-|~ uVޭ{`-6#e=,1!cߥߢi{v :EG||!Xcq&JKK kEGTPtzT7 xvN[eF)dee7_NJj*a"ě㤭z*XLfjDS(//@rsrx<2iFҚKyy9zܜ\ȐCP\.t:a2Zcطo?tVZ)dg)k&*Z/ZLZ/pKufg^#>O#Ic MW?ar#餤XݲK%R4ƚ Nb¾QUU8XWw))zXz}e e\6[ᯣIGzY,n)uAȩOۈŒŌyQ9Zف t::Pݻٶmkp1S/ khbx=ع]lB}jjk#5%޽{c0ڽܬ Kee%YYYZpgfQ߇S{WpT6o"99 [OJZ\^#))r4M =(_n֢i*v !-MWfEkLlО4fKOKc֭>|>/۶o#=-]}]䓙-JiY)@0]wWi*;INNX 'NG}|ltڕm-:]kl7je(G~#kiEQhu ZYv,Qt FHzz: zF#>u|8m.he2XTOnN}v۱-\stӗUVr@5qg~IJJ xhzT7$ǣ*&سg/6/,AQU_YY驩lܴ=z*)IӒ~X~[mAQTD=Yb9z}h.q[;|^|7 2m)FHMӧ?/,U΅}ӺUPL^n++q:.}T\dd@+'HmIJL$-- ߇;ٻw_yRƒDRbQKgݦih}t)F q]Y]]wpStt 111DPUuuZ38*;m޽{b TUEӧw/<h¢B77Fd>rF:˘z2v܉bh4bӧ. bc4 4X$;,NGbr2Kܜ~xYGS{ (--n"Ms¾$G3]N-(gG=?,_΁ըNCrr2eU9q5FRSS93OC꘵x^5;ъrHOO`NmAF+wp8HMM#)1XLFc+N.'j9>{41<.7zÇQZZJuM WzIIIcqH>_4+VS}_ɄdⴁqjtONxB];%ulRLVf=RK^>hlBQlي%%5IJLbD[kqrPysw*Dhg`ӥK>PRǃa0O#))$ }PXz$YRR"gy& u֬F"ngࠁl\ @>}ZaI[4 1+(X-~I IXclkbG>]l`4)ft:ذ'2;p:|p9ÿ϶GFnv [>u:ހ`>Xb,.<7$7^6-^ꈳѯoac{{~Kg;^!.ىXxz"#@[p&#񦄰WƧx3%$%&cG!层Iox:N1@qqqz˙-t-&*5ڷc{ueBZZ*Nasq1~\"*bl$'|b }Vtıu)gѩ3Y Ո:XL&# ݮHl!&Ɗl9aeqe]Yt 1Sm׮=Z ( TJYq:R֥EPz?5ڷÉzT%)g'tzcv#B1M+B!h2B!GSv B!:6\!sB!ĩd \ iEBq -"m.BA _SK@i3B! jRTׇ.##HK!', edefbw!B[CCCp~N'ΟǢ+m.̼`!⨚ ˅j/s>ĄO9NƍC.]HJJXB\.Nm۶3w<+ \43vV^QT !ℓ7'?/kIENDB`luckybackup-0.5.0/manual/data/gpl.png0000666000175000017500000000565211072400004017053 0ustar luckybluckybPNG  IHDRXc sRGBbKGD pHYsҼtIME 6K%d *IDATh{uZEр7cE1&t4MCM'5ILqlNMjH@x婢oD#9}prAљ3pok_O9'p&>8&2* JrT9 ^P[[jtL9`R&qW>$c2yZUǓnZo@c?q{pd+F&atuc:/v8lEj[5Pˁ"]iq}Nx,|Mh?+2zK]iy%hJ`]Otp0.| $-n~,ٟmXz;C#G4':>G:־؆m \;[ږ0؎^k!=<<ºeIh#5}rFL:)܂CbbW~QM @,2]0X2U㚡/ӟ̑sE|hPZENUcR]p~l)OjkB(LbۗGwvE93mО2ϛھ+rGs+<5ATxk#plHosr^J|LLh,C #{x!e&꬜I}錻snɶFTf3\ Y)_'+76Kê ̪&uzcwޙbsJf1gmPθ"YXcӗm+T`(*" /Rx?{&;a9)u`q~Np|n|[Ɖ" +<45аͿ[Z_g1p$cJjGderdr_8>d(g*f'Qʯ[f^`Sk. N((ͦ%FSSϠkN=r2!э2_˘Ҹ/RG>:sZg&%IN,wcpQ֐TEWG[5% 9!Y[Uj!ɬ#"WWBZS^YOlmǖܒ]gu'n㼴nM!ax!tTpXtvG#&DqC0l iFM6܆ 7vԹ{Ґ/#_k9˒T.δSG+7Tj'KePq\`cduLn 71;*:2K'g֭.|MHsqښ5RdȺD2<G.y!{5qsNswtCø+Τ-N+gFSIM[9߇2KҰXg^qSH,\U{NȘzssz~HgyB F| j4j>/rw4ycH"ܣ,>3pT!.Gg2~$ՋQ7E6iqzbŰ!%FŤ0N̡क़?0:kȬP<ոĘ ӻoYcHޞGmLK%瘛x9"Ok _%=*39iM͋|-/fBz=!ast!1L,gP.9RӵxLH!jLH˃?&&plqCq;rE%༻Hr^W{1nCuj.~8<29rvH!un澙J[wb"]tqh9%3r^w7I"J@m8]zieOu/!IENDB`luckybackup-0.5.0/manual/data/rsync_operations_completed.png0000666000175000017500000026271711352702740023752 0ustar luckybluckybPNG  IHDRD_F pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&#tEXtTitleluckyBackup - super user modeV \ IDATx]w|UE?s_^!B :* v]*,kw߮]Ųe*,H B: 1=S}/!p3gΜ9sf{}vw ߕi;kb;q/fJ&ʭ:/ڼU$"JWJ6P*!EeglX_QֹOP -F*mC0Tݡ4!z˹Td >jJjB_d7fI2n$Pj!rGb>6mօ3oS!&@~*ZF_ ;F<.% ": +Q>ح족 eh$ͣS* O$ǭ&DIHHHMM Bw8}]]GG)C&J㮽~;",WVRJ].h')-ܼZmI֘ )~{j^uNDO$A&+*p& ha&dޜ弛;e Dri\uhb\ )Jn&dOi|ZT u9QSQ|x7BsA9&2S>A* P 0}0kQWWϜ9DᦦoanP(֚e1{֒ke;kN.GӪgf͒iN 0|rGr'~ub6FUTjE7O w" 067y!1fsxT<5a$2^kIDoDƘy}DIP7{TGhˑfWG}IYZgDQݭܹQJ 0`{[kbbbbbiW/Sډ-$ &%&&$$J.Q~U7RQbbbjZZ.k# +**w$%%&''wAɝ}ˆ~ԣќ5Sm@-4ؙ:_Q$iϊj=-6,QK f&>;Io#>0δUWlOMx793FPЄIpȻ'VVZX4P43&M(JMt7, 2 f$Mo [T;tJC4tJH_:p=uy{Lu_x;+Q)]8a47c4(zp|>G_\>tPvrR7ADTGFAIgޙ |۷޽С6f䤤ީF50 myø`'5*"٦Ԛ(` X%, fBTBQj qYv.b5}gp.+ƏT\'s0d)B.Tl>ɒȦwJ4 9rNlisۘ v T:ӜS[<Omy| =$4.X>6dg]B -gSWA}={pk SBIp>@]mA3dfwX`4TgĆ8Ė.:/A1cf d ''J!qqq ^BF#U0leHZ(Uzj }1tWqㆢ3'y䠁7558PpO#O8bb~~A$: h?nsu@TaSХqcq~>}FyYg:5~Hhg1pЭ1zDQyo_y=MMUU mSP0ܴߧ?.. Tb*nF"phfrltX`(=&q􌌱).Гٿ8|k$SZB3ee8ӌt7DO*|M}D$D";55uw֭[翜s\tMcƌy啥jOsrn^z셽|;7x#!CyYs|!<|~iYY(7~W\1nlesϥ-ZhҤ,`2zHر2z(x~۷B&Or˭6ZڑNNظEk׬كwq#8FvOݻ |Xpђl/,$3n=??i!uuu ,XfuMMMJJc=waPg//ٳrU` XaI)!XzueeIiNvyO0_SSࡇV^U]]؟{o/(`rҲ^|/..nkk+--c!CE?cEEEOzwl߱cႇzJ9nD޵k644wڴi7>1׿O?7WOvQSSZS'?ɍ7T`+ϩ`C}}}UuUC}C]}]uuuCuQ__oo6B @\ Jmm+rV0 :qќADa5J[UD> \OUǽضS#+w 6X # 8*<̲ҙ8XI ƄQxp_ 1`KOghd~qӦMGB6|Ť)SbB50bcl姞v]wW0G/~GWXٿLUPZm=w̙qqzz9N6ZT&{͇N>yh۶nnnna&rJC̝S{7/߶Ǫ o+Wfg,^xذa/o֥.=syo,[^p|$~ //*gePhϞ=8СC^v)Vmܸ},R n+VdgA%KoJ8zfҥ}[o۷7|/:Ӱygկ1c0g޽SSS1$h/BcEĴSucaeF: T~AVX܎R U,!жmU[Db%E'v,? `3C"쯨`A3'^bAϡC99Álsï{_+_3l_Dždʎ ;Nu$e8=DM?c>荿1_?3QT%/Y$d~~yfώONM3'IB>_n|͇R#|[{{rRlP8?@]?7( DyEŻw ێ4)..nM>mk]ƍǏ_hQ~ҙ3g{[nYTO>ի)ʫK@BB7o_xEB /xË2I&|-[e b S8-//۾޸u+/YYᄏwy=__%O-r @aX9> ^Y%{~駯6K~9`w]~uO-YEYg4eJRR7&NpQG{ y<ꨣA [o߽GOt]w斔r_mw@>xŐWRRw߽UUƯwŗdee,_m;֐Һlg_W[$׎'F&e@{m n΁FRSJ}oy@>9($2*xi ƞaF%\{*Zxd-WFSIGj>z*?3͟7g\VǗn '4ʆac? O='LNNs Lʅp2kI.Rp?/ 7\tEL%w>J(]INnXC(MNMeоs玬ӦDiCކa` Ν3X.ۦ>iiDtC΋c#+VATU`+?C4iddWVV^?ݳwI'tǫ-j"zm/=ׯ[5j$\TS䔔7)((߿&visuqBC6l! ?SOڵ@VZ>裏>%}`7GIQx|t ( !ݻw9Ç̜0qqW`M?G| &NҰV3o08< W^?sP5kwߓO>|]wfYiw3F \>^Eu*s]Ŏڸ+$.F1{`"ȑ*Kr鐘 7:/~;F Mbv&tUl8"(PUܼ4C% .̸!abrL8y,ZRzesx'xw!==)BWyiKॗ t`z饗~_|Ea.}Մx||GGGS06qbG$'3Br{kܵz.ߠA'H; vt~@B|’fDGBPrr/?> j{nla#i444ѣ`Wݛ?>c y7ޘep۶rjkk{%O/y=xq!l i5>n\ #F0%Q{4M6rssy]6| n \lg7[ZZ[Z[pv ȥhP$^+G.p8\%RG,3x^ `ؚ(H#|(qpE>'6k%⧔0 wW/5M𢇿/wr' poW{G||'xWdySfNL}wܺu,Yr٥qxJ>c i^N>iҪ}&''V>cT^ g6Qۯ!ŗ*ꏓ6ψқD!G4͎$`-_~555;ƍG\^w]+<8wb!##Yz˗;vԨG19k<|>&C;>Ĥ)S&3ꢢ"Bd˿{^>^zO+++u=11Ǹ[ZZ^#@߾}(;vN#&Lxsٛ555eeu5_~/`0M=)))y&/>L1 RR>pV<p٠x' +/D$&&`e`ĉ˗[SSSZZRW[?|>F8gl sDKQ, ^ ۷mRf%f~֖JKK`ʯ[~!I))){>|֥kW%/<R:TnN @GMEUkEeR+lq6a)8=xAQ`K#"?[BS 2V+a;Zbg>/\qůϿ|@`ЂXef Xٳg͚շoӌ`y7 O=ԓO=yݵ]p=ŋ)կ 60:'&{{>}8_\ff  1x5MJ>h[1Դ-ݫ4Wu2kީ=r2@Ȁknn|ɭ0tIp7_- m~w=NGd{կfb=Wt+o\pjz IDAT|6si׿ qX;zg'7xkr:@zȑ<So_20]9 䓛nksOqq$)..w'LL+C L _~斖 GL񳟝0}:4i:N?HsssG u7t:wq{qqq8޳gp{>}{a8nkkVmɒ%g}0 L9PdjpR̢ ;::~nK ^|y„?;' L'7p[$nkmݶmSO>y֙g)VKS׿,oڶ۞p p-73+smZ!ӦMoiݡPh7|@N:gpm/Z[[ mO~ک\CGU áP( @GGG{{{[[['9jHĄlPQ+ǜsa^YgʅX{F@#F=C0`Akl#6l `0̧ CP( !~ H8DB!VD"H$ E"p$ H|Ñpش)bLd*8 m("t ,)كQ+z'̹ PIsbB~}0ۯOp]$}O>w޹f$K.c=VS]#z}si/.WRtի{NWno7ȉzW/󟧥)֬Y3k)YYYq$0زe+,^xG4o> H)-+}}Ǝn//ٴys|||||Gbe$q_p [owVm+$465]&Ϩp;;s_>wky'Ǝ Ik!4%9MzщO|`… -*^gS{e999҆;bʶxܽXN 't-xH̞%>'ь'=B~q9ZMJJJ)B C+J !CY-g+)-Ѱ38Aao~oBȾN?Iխ9}$E*QGĥIUŝ[ЙNxr+*CtG3L'fK)Tˋ{F.xeGe6$Pw d u)1'oH6wjjyy=i}܄5WϚuJݻw9/QwzH4.>##3Xq>{g 'Mϧ᪥oXq`|}G06`ho1HHH{g\K۝/sr-})MKM}饗}+VƱeJ o>V?ge .:c*by?5Ǐ=WW]uS |%K*ڹ2yʔo9;;{=kPܔ.|K/k}g@NNΉ'θjW]}5!S]U|G\zeo@" ZSOBs̭ܚtOOO?~r9_lf /+WϛګL &̹lXvnK_}եK?* !999'8i29曏=W۷uc=OLjj,nirj999oփܿvڃwԩ999Mgk>=7W_ef[.^b Oɹ/!Jkkkuuu]C}CC?;ohhg{SV9W9a8c|N )V^4t"ΟI'⑹X-->.;}0|>vs>g}v,6Эz`'w>X_w)n\mu^ c$X~B:ۆ RRz) t:6|AO8ـ@uW Q[[cǎN^_`FGG(vm 7}NSfꫯ5ZeԺH5])]#;1G;ֈl> i]<֥69vũ J,( 3DzD9& m> (cMLH!VP)c;4TUoo;yKBcxPo7L8sy T;r/x] >Mq iD%ij_tQ$/4 ^LnٲiUG<8!!@mm `ɱ?¯^&5lNR7iF kFtUV^77o-jkk6 :yO;-33Se&mz$$$~ǥ{͈+%=7,c۷o lokZi`hlnA=?KZ7}t}H``TVT揈GmЅ{x1cpv d: )\)QfSGIz? wurC)\xBwe86Nl:1"(Ӊe.j)A}}wFRI"88_8X L`k5q 1,"}(*C Z+ͧ PRîhSwq,,/wC]0šZRWW`.ï)rGs(uj[3OxB$PBҖ#jK@} `95R;lK2c@27$>}2|t`8ܣB!Yv {L(%*Pdܤ@ /bsd<׊ PEl3k=1s>{;^rHt<2@7- @b 0LbA5u'm]"ґDۜǂ]XcD'7u pGp9S@z!p`{/b#T}&g`*uʁb}lomm}+M:qB)߱CxpI) `?GZߝE@\?~֖{hmljg(#»S[`BRE*`2sqsbFw!iϧ\ VO,c' Łߥpxh68qbJjY *IU*,-#;䲇zb!}*8Z%E~)I.JdtBk.ٚr*4dĤ\RUrR%Ì!~Ơ]]*3WaT={ ~Ϯ(6N x{KiA]ov0 $#kv47 JL" >P$N{S,B<֑Z]s{DD9*R^;(1橨WUUPW^999cǍpb ! <^{… `7^;6]heN﾿ 7"H)uʕe{@2(\r⏈%ɞjQvԖ p3PB'@F|BfS4|^Z<5ږذYxGjqԺ;PWT?V^IeCҏ!BzZ^^aJ+++3Q&ƶ)t:\tBĦ b4(_`R?/L>۾qb)  nDZq"IJ6VɭN-{_Aj'^TQ2*Ϗ*8,gֶ~v~Ն~e90La]ynr`eY9 }J);QQo֭VXWN \ AvǝcvKInᵰ5{ aù (CCd X,-/k%vKvPRbm✉ֵnM-tT=؇#1(c!ZtW/cpsz-UӮ;j_ڲe82'Lݹkg}}=/d늋BLܴiӮݻ OGL80 ||#Kx;wQXX[WSRR &Mj`lط|ӦU*#q?fOCg֖_\\&L:Tu~+'?=z$w(v̙ <|GHl;wՅB޽{3$$$ b󯽎_//ع>?`ڳ+jUqqqcǎOԸfڊ}O6mG`(gnmm|xað_m('^JQюm[ֲ1`cIHHbvˎ͛jGw璉:tSSSAtĨ3D|ޫۂF68@8Ц[' Gڸ-5Jpߌy\K UqEӻ% kCa[[e~3V^\~x/uG;oxϩ^ӛrŊJJJm$ye3< RJWXkNCzcYY;crK`ٲe7{Õ{٣H0Xo_ž},tHdƌƎ]!߫WCmټyqIYtŊ;w6n/Z#v>+>x޽jC#&LB:ۗ.] &VxnDȾ}];M>؛(kVx}HƆ6--袋LOîgϞ6K8Dq@6uGBߩ=nQ^$D%R~ʣɀ˩8IB0&*w:u&uGz k(\`OQQ_ ҦTKv+X'wnO>Yң:{Ag6o\YY0mڴ<(-)Yf7orz} ю;vޕzqgխ[ڰ'?S~~G޾~ݻw}3gdi'L9jT\\\m] @9/))y(3gw\XKy IDATl}g}?|x|;RSSN=!;;խ]_~O;nkkj#ޭmm^zYJJu6oټ}ǎ#&LJ7lOZY2gվ%{iGj7|%cJm>p; %lݺhgQjj'|իWUVV~<8Ϭ]ۇrÆOCҵ">SS!J8pތԧ*ÄsxOpNI9'maaNO2 kK{ C @ި/ y-Q5lab?C=^SOG-1L>=;'Ю];`Ç~ӦON۷g6,>>0̙3gJܚ53 HNN>}8`^4,++۴iSՁ3O94<#w{qgcgu `Q<Դ{V|Z[Yp̜uJްa rAp$/w`#'8O>qqqSLX޽%0 29`ymҲ7npgFMX4m۶7l?>yib5 :cIY|f8 ˕b΅6u\oY?Άu-d)c~5[0(/QM iM XEII ga&u# =A 'Η=(666P-/7?, ^]P!$lٲe׮ T6}>(-+--+ --SNq~gb{)3dggD"*7~U]]ݺO>dfu)GЯo_v Pg#Z4hS4g̘{SO߿?'UH?&f|:x6#+ <֖/Qʾ=ú`>b߂icLHOׯ_?eeQ'|$pۑ;dF @R\``0t/|_ō\yE>u j1kBUDQA"QqCBTxPD)DpTb-u]υ[[*ƾCc؉ r "_\#3`<&ߖjTZ|28OEf /WE  eMol џ+wwRvElzZ[>}חR WS[s]J;ΘCP' qqqyyԑO/YRWWg&?8a k?^,#G|K!0_-7 YI~55_|IFF.0w`4aWPgIyJwƃž8)X/aÎ>'|5,b8{vAMX%Y^Ktfx}***pb_YZQDba=nTSͨ#H'IʽDYS"%~Ć7d";N #UTUL)7$o. hZu_Ai1R{P4KUz #CGI6[ 5ܞ b$llĈz͚=šP( .^f > ǍΝE---i=_{U> |W?}NP- GzT4W\QX]K-m[Biw*Ǐ~kGюJi8nllܾ}ҥKD4NŠ@]Ӽ\XzUuH$RSSzj)Jaٲee`( q2Ar=i'< q:~e;oo>tf$>pp۶—_~G;իkpUUի ///RTi:1$(S?b$ױ'P?ZbUTv'f@!lLT$GWʼꡮQƜ0aBYYieΞ0qB=v-+W~M:Ґ!Cݻ677?-+//+/%% GL8¤W(M`uY|12ZK2=n+WTdga99N!"K%*-棏:j׮]/lrh2r*/p#bh ZRF][Sy>@f?:޷o^|ߦL23QzI]N׳ם[Q!3; -Eep%%>0Iُ=Aݴ0I9!Wi3[{\ KhOqM>|qZzZ 8VVNA3T.Ǩ̇0lOxLlnKN̅@̢V;̳6o6bĈ'- ۶m[UUU{{a5{?qtPV^nưaæNO}[ SRz /1i$Uĉ`q0t: v_dfRRR ' SnzFjZjѣG56u4JHž 3HV (@žv(nuH@Rr瞻vڊ 0 'M\RRʾ8~q/lRQQ SRRF 1yd|p.wz:Bȴi' 6l-UwtBRҲnjm*F=5k5k)Mz3%Զ=8HOb Zn PjՕ]F b!%rd Za hwbK q=2J5Y:* 1<'{.A[[8tl5ʤzP7 5rC4i1Q[pI,s+9Px%O;>pevN9g.M[?7Vqk\ٗΟ::!s~R#-OPC%}_~"fEm n1R%Bpcvꅶx/Vt#I,H$RVRk@9h G3,`TlڃbʯU< )\qsUB{6;1܄ra>dv7iܖ9G<ɥ'vZ/Lsf@DIvsCoQ_}o,yt)Zkyl P="%%eff706e姓B  HV%o}tlŊ)-Vu'A!> ndbH{9j5ĮpnڱSNoЏz:A4|-\m]Bz98+>^ CEJ#졽7 IZN<֒i Bp|ό#3mAF0LH3qnGjޛ7nW1-!ob'Y!/r!<ۑepH4"nKJ)jp VB5_מ hMCު#jJBqI8NHHtcpKNs`O IAI&4`0h(Q*QYcxe}>!r&]OC@ݲooCDKbb9ڄ^(Q .oC6 TbFČb.ùbX^ G„XGu Ȇuy C[H GZp0߿Z>XBR /455$$$}oTR}~pG$  MVX]JT4c\)G˸%)O*B1H΢~4\u-4#!cl>RK䍖S`#Ѕ_!/৔F"`(iC?~ $n$oTV˵.]Q%H.ܼ7"aPl-Fu{oOoV=CEm#A833RkߞQR%j` !<Q{1i]pt/'~ Yq]i wm-P; G"cƄáCߞj=#an/GF[MK7d+-wXDI8d~v7Y{Jx{7OСYYp忠T) 9F,!kW~mzqرаqבH`AݠaS BBPG{{RrR\?,Vngq~?YWcH$ C^D) mmmH0^z1hx @x\@gSE &~պiE=tOp#==}Am]T__f3ahe!͒`/3щQG{{zzzݽ{~H$b貽p8tPkk+*MMMMM`[Ą愁 p${V!~?11! VWWB! ҫ# |dҲ{@GČaddd 5`@fNKsf? h?NoiҶ$_Bh@9 C1"zPrRRСwNMM}o'ƔҎ@ 0/o(K \gXL4M>ee7~UF;vBsrp/:::v@333 [Zƌ*1[BL3u֝;wB$4CPII?r䈑#G&%%wPpxwM[jdI{o06Z$B _%ܥ]#@HRHz0&wY}-Y.6ߏ?Fwoߛ73ٙY>ZЄHd0 ⢠Cdr\cM0 .CE"6`f`Aղ,`hhhh4555*n\NuoEv&.;9F9+;KYS[Kۮ%TaۋV(Yaaa2ҋ*$$Xfm4Mt8A3FTWTXi25 ";'׷cFQF6MSRR0PaF8-m0\žilVbqqɊ ]``@AAAll09+**D%%'O7np%-jZѴ}NZХX kSxH+W _D"Z=af͒]VNӫP5O>^xB8KKKvZMm-~-*--㏭¼#IO=D"GZ| 0 .l6#Gy ?~B'^!m<˰ 0 2񗕕-,ϰ,%lbaFqr1 1&98f~A 0T$ 4 %ӄAVF*5:߿cR0aKJJpk0=>g@8n0iII؁c 322v8.Lc '%4hB1rϗnͰ,JWDDEEEłP(^ZQZryxEZG-fK-WkZr劧'\t`0LV5/?-RÉڶW7a"A<@B /(R[juM{COuPvxj st:J?\6s|en^s=mrEtƚ7yml2i )wȨH**tSݽkӧMfgeh7]LÓVWW?\G޽[ן=ww ]j=r0,;<1QL9w䩓;0jQ~9heg%D"pF8q8N8Nc[, ðpgkjk9m Ih4r`04ys$XMmb1Wdgg4-HqSL&SCCT|}}}qq1CrBW;mI t/_iZR >M:xZqb.qF\Tt ˀ8cYd4dr(,,iliaJU* RB?"212*c5Œ裏l[x\3Q7L`ރe5mdGHD!m!L;/Xƍ,b4sǮ< y YhNbɓ!W._:Y}FVC澪6.3CJ4~gM-jT.ݑ0=.4^LtѢ[±-^ 6/KJ9{k׎=~$?<o?><cǎEE~cG7lZިi&T!Ɛ:w9{(=g4 ŋ`xbb|!7IL&cffc K$&Nr ̵A1c0Lqqqqq 6m7"v9<ǹ!afwTuZxy Dq0@DR]%c j1 "6h2Q"d2ӈ<0z`# R&yk4)) 02,s³R.l6Xꮽ8%We2b$xtK.̸{o"##;9sfÆxI{ʪ;w|7u-;vl zWGHH$YYY| K7vi7ѩuv;j-  @??"%*//Wաa-˽~P D0C(J_?gؗC'n{a8U*Z-Hw ʊ VqIVe9G}`qF yBߝ3 ^\Th2YqƷd4q"u-3>`Ǐۿ0 CCBMAA!r<&f@˟ۑ#GNoomee# ,UэO!DZj h.]w bL*  Q%V6$!D\*HW@R׏HJ:ydNHVyyyy{{_vU<ׄ]w@<@Muu{2 0lNNNXX_dDKi,ϩ4C<<<ysjr6GGk6dVacbb$bG:4USSsI'/%h4j̙ӵ5NaDeCDzD"";Ro6P"+ n%Bv&Sx7ԡEs@Xh r`'Zd.n(M3mVWKjbu:]ZZZZZ8pk)&T*M=<<'_}e1zY0 9eEI60L9D>>2㸦G`hfZ0]E}ai.*.*(\X.JŔxd6 q7]zU*v`[Ԩ56<Ǒi0f1\خK.)JJ-l&YY>>>qq322r'HR$BSa`Lx IIjUFF` IB4GXgX~nsa"tr |9 peZq-#CaZ224b(kڵиXR=rƕOرsGR|2LTKIة?}*;_+Iޞ 3Tq$I<5g$ .if/>.|y;;yJzr6+ഖq!ǏmIŵ:qljcrr9 ;nE5o]nVӉ;ưxahچ;̞ NKsxV ,j0f $ %636 0&H$J "**d4bep55ja2bX. ^ez$Hg E`@ðbCT*Uj/OOOo6==_Nz-=*aIsi.,*D$X,ko[{՚qqqqLx]]ݕ+W}? ,qxq  NiJ, @D&HtJaB,'OH%R-^p,q<84 qE^a5H\4"h?oTTb|(TNxaLXHc%3Xbg!>Mӕ)))|u^^Z~衇f̘If; <>n=r3jh܇_K,YtĈjsmF ]b[5/^)`QGGmDZaC MhaC&$8F(-+AQ"hJ &O=t~aX>ρ001_x o.}eFcG0 H$50eH$lQA" ՂaJpL&(ab12S"D"山jU{q-#0B4AD$㸷ƻ+E"V]PX|^^D@ ÃeYwq|C* \&˸4MWTh#Gr/;pP˫ѝ =z^~1ZRR҂ ׮On nc<`*25$65[-PVkvV637YT^^EEE`q6Z.9qѴ0̅l b,q.tJOD@`D,x ؘfAdhhf˧$  ÈHRq|N^.V 0T;p`'S% ȑ#u:]yyF[mV dJeF0;\.5jS }n[,檪jOOc(;T"QyyY-V6VP&  x$$qhA=|pYx I!!^M"\avO?$ɐ)SڽǑ'q7ܓT"S\,{yyEGnj0~3e2=77nعkWA~>a!3fxd#$)rGW_ĉ6mޔZSSCDPPP{_"`s"44šH$4-<Ǒ"Rx+{8޺0 qÚNm9xylwsS  Mflhh0zlX%1N,AREEEFʤR[n9.AXoPUmQK@ IDATy_0C"5fbXXLI$RD"HD"Q^20 S&////,,аА[FsbqXXA±{juhaI|NU1'%<{*"Rk4fs~T*6`X;h܆^ ģcqT6UuW<979]5<&83lVY{V.IFf9 ya&vIicN6yYA8EQE)J8aXaEH*x{{[$h8qVP6뾲aA0/- 8&+wҮx@@jѴEQEs0 &a J,,- yǚJIROfn@aHq| ^Isб-7ӨƤ2y JٙӬȞO<$ɷloDH$HJe+^A, R u0 #u.a.HŒ{ʶ`bpm^"ǃ}u=-wQOv \a[/ TA&K?x>ܡgъORPxy:t8&m]\MOW*-ߑ9' խoN% SD)E`W9J$Bzw<Ż ʛl3:pVS EQ7YvawrEdoyq^X_Z"a8\{$Ax)K x<{N ˚%n µ$w7>W9Jv~ĚTXl-%Ricׇj'UDo87Y nGRfK,1k1MU17Ÿe!`RD"qu37ǡkohڹcJbymu} dm DZcrwsDX xEMX_8),s}c70Lظw #z<̌7YѴl_[Äp$= IJ[ߜVKoyyͭ{3<}FTX_8+{i!zEæT@ n hUDw-D@ ~@#G ?@ $G8]z+@ $'omwbT#$'o!bfϞ:6vs@ Dr @ 7E6rC ?@ t:QSSsea †]cH\J@4Gi^s1RSSZmh(Z4446LTvw]pHG3rssCCC}}}%IwїX,2,77wذa] ȭѧ \#˴ZmC=ErC/RTt}ĭ@*d@@ ~G `디n H#>ŭ5A/C2#я@@ ~2#5:nsӧ,,*2J̙=|x=NVVϿt>%B󼯯Oyϋr{̙zK򖺺n?9qb x책ӦMl֛o 8KҠ1cF?/z;wnƍ7o*+?ܹs2 Æ{yyEٳ,Xj7={vs+Wҫ8U*"##'4yRdd[Ёӛ:~t1ٳ7nm˖Ҳ2__х$U%>}un ~DodTWWݻw޽-[/_0=NQQqQQ_}Yf;Sm6:=ҥK~ի?333p;ϝ'8h4fd\ȸcǎ>?gsf{/_._y#\^e&[lyCϜ9Xvo&\}n]NV{:A~D?%+3 )׿uС'O~ qRS?A,عs׮]a>V3/++;tM*8˲EDD:t_G]\ߠŗg8xb!\}zgw_|˯إ~llΝvܕ2o~O߿ĉ?XgECGÜ,=#Ł^X(޳7D'?w%KϞ5[PÓV^-aqҥK|}}||,Y"pɽE bB 3 ~J}}ZRAoKGMXz}4q@č r$߷w߿/ tw 044د[m_۲j8qDž<nj˙{t{V 5DG Ȅ( ummMq<=DZ:::fҍr]ʫN:{l'_v;?gF-Qe;o(ckoii,Z@p?t}ޞ=[3tP˗W)**_}Ew2AMnH$wL}ŗ֭[lp]+ F#ddd㔼kJnFDw(Ə<$8駟%oI6 6--5_>ݣOUT*++?tG5oV_:t?dwOt:Ngo#O<Ė-[m6j=s溱AujvvoXXzǎz/h5[Fc>ޕk}By%"=D=?x7L&f{}h0W^Yr%òWg̸aI/V#8pVBwfZyN:uԩӧO@s;ǟyϐvuܹs{]z˗/={9 178whП%\NWZOϋ龺yǍeZ~/l߱پ{bukw֜9 /p\'Ͽ@fffDDȏo$%9X|s EGGRpKd7 ~/\  la5ؐs@ $GNяptG 'HG/2-l.aTݵ@ ?јfg#]qfYA LT*p`0} 02L,wwEg!%q@ +ԏ@ D? ~@ H#я@@ ~@#߫S+>6e`]Nw5vlZZM=rm|nѢCHr$;6-%%Ǎ9RZZ8|??ffI.]Jhժ'O C {kZW @7zw =PszM2yǢ/x15;׵?t7~7sL{ݻ| gN~d!ң?z!zÆ {y&L 8.';{ݺu7ozFn['Oxw_-YSV^mC ݇h,++i$ 0qO_ 0`Y(omB|~%6z߽FFHJz7Nh4"̞wp ]'?? BC#^xy2 ÒŋBbbyf:h41Q~>BÇϛ8cG:&i*o֬d AA'LXn]7u:ߝrzKDD]~А{]&{ꩧ(H$VZUUUgҌ;w͛7/00P$ 0 77CllX,O٠p |~)CC={v _u^<АȈe^hD&ⅲRXT(<<=<<<<^^JXl2ΝK{^x_sɛ!y֭ݿ]===ۛ[k9r53ᄏBƍ7uK/ڹs'5k>xەs>{n3~}هk7[gZ3ԩ+W._rn,ڬ|'Yh],[!k| &ի{qp[`Z?S3650!!75jh%Ǯ;x?cΜOyZu lVj5frkא$k |oh4ƣG}Ym/+YPVS5bĈ}tŽ޽{|b[HJJZqo5!HhS{pS[~UTTԁ \ݷo}{?pyxxwwp\ `ԨQvUxA…L&S{s3Eb,~7m6Bҍf5 ͎6m:dggSN2h`Bn5>܅CF w};U?Q!NJJϧLS-%'o^x1Yv1pDb4MF3gCBB ߿}lж 990}: `njqL{2kȔS.] -Zl `sܯ0AA*:~|7|˗/٥>]zgl;Kn"ǎQvA(5 /ZqU|pWvڈ$#""֮[ ϟwVA*7@Lv*z&<ˉǎg:T*>};[ot0 \>L $$N;Ȟqvp3|9yʪܼfl`dT߷1PĎvNǶ10I^jxy~>c͒$&&Bk!3Zmvp|3:CCCɓ8!}58>?S0ÿKII 0V5''￟1#;=ÇL&(8$)|7N8`ǏL&zСgy&Ob^{0 [rO<2>\esss0rHg:mvܹs_kkkm6۹s{t!tŽ^}47\DׂYV9""761<Ȭ5 wW>Z-˙n"ÖK fϞ#,~'q}̫*'!wy޽{H,+p-Mn3;v4cV蘕j3{6;v쯛6 ^mV%mf]KDVo۶}2}< ##Sdxgla6A&m߱cȐ֒;븝뚚I'ؗiӄmĖW}8 | b=|F Vmʔ˶}$o{D$66'ܳw_ۉ[֭3GV$ >`=T*JvwqT*7J +ܱ>h̙3RR|x<6(7''d]t w:twy$Id-Yرvߒ-~wjHO?p.>{###ERfsϞI}p9h]wH$_|-dcnظ^m۶O6M&TG.j#;aVIw|vWcǎu撍@ >LwivݾQw>ϣ 9{j7ozB Da9Z)m{:>]v9 IDATM:!!G ӧ{ ?ĉ —.oo8@ i7w1;@44~@ H#я@@ ~@#zzkwl'dӰZoVb0?[Ӵׇ@+P/<11/"|xyA3Okv@`0,Y($8(&&߶ZjU$Bc\r]$"<,&&z5P]]OD޻S6ټyl٤ɓbɓ_X 6oI:%Ƙ;0̗O294$88({ݳgf[擉&N0aݺ4MӺNPXPGBC##—-{h4_mѓt>G#"7'wr:]KN,Ill]===[ z?nmwQՖфpyHrHkf̘sN{駟vVVUVKjخ6һfK7߮YIjj=dU=8w]ѣFfgg9zlРABHzz㢣OcI:%X@Z*Vs:uW~6D"hk8L8}0iFaG8o|s:d'/xz۸aCr搐ؐWZVFvǫWw{v<7/l}3g9._KJ{KJR.=,?]YgΞ-,*~/_~EU ^jYv5:]ũ?O}Fu4YfA_#,Y 55Evt(V 8}êo%5ݕkj[jd?Z[[x4YfuKq5~0+jhVO B[AuZp #CCCOOŋ?}@JJ sә2l߾#=#gjrjo {5RÏ?@||4YرIَzK1);o53gΞ9#,'&:z[U#Q 80~]ULm*f[Ǧ7p jFI 2`@UhLqa_>3VM25>.K&ʆAAQQn1!YM^(%oiXdioG}||AVc5'Vp1/oos go0s欵1~eQhV^ehhذaC-㳯l%;=Ύ}?{m0ɛGfǩo>0P…۴722ݻw}#~?Ye``кM :711=<<Ǎ%t+jBԐv|:OLUR,S^^;]"?V{m=ı~yB!uAo?i-ˍ>V*{.us!BԣBG'B !z:~B!BG'B !z:~`M"B!:~6k|;Q7kņ5=c[nva_Ž/Wݻw-[t1qN&߲֮]7v8ixBB^  zRCv1nĂʂqcرC;\,! |,ŘFFF kddsф~T?_'o&erJOn%L4 k4U/Z$  xռG/_'%]ʕY0o??y7}!uoѿlxA'DׯvlӍ7bft*/}8& ζ`OX3f996o`?qlM[F~򥃽]ViiijCC}|mlv0$YURR`Ν:X7url;"..ViTSJ|=ζe-TjjSĂ!\.fABin\`ӦM<yӦH$:$\4!ԌWϧ۲M3UR܈_r?_ŋݾZVVVVVvvQ#}R#| ʮ]?zԭ[-})/***))9qℷאggg/oݻvF޻wP(pqqQD":eӦ%%],,,Ddnܸa`Ϣ"3fm޼);;K,;wn]i*---_~]XX%`Q~yG/^oѽ`O˗/ɆWUUA07oܐˡO>7}zhBg֭.%m۾AV۶5l… [B-bo3gJN>|X,޴q߽{/6.>'7TlCnn̜9@XHĬر};A3Tj_xxTTÞyN9ۭ{w]@S,] '7/6.KiTXǏ^_~ iFK-;wޱG۵mӤUvmcΝt2iD"ѵk|GHMMw1A3fɑˁ=avvRk׮ݽ{wѲ!z:(+V>|˖/&᯿l߾@ Yr%Wh[+:u$:wb oߡ?fxLLNNN=v*vyzz:VVVΞ9eˍ;vsnYV9::~߿)4~ H$Ϟ=}.s#??ٳZ~~#/]wTH$Zjt휹sֵk&wj`hT1+`yK!=zxxHK[UM6֪'Oj[zϞ=] @VVv֬YBC0o釠 5ݹsgϭYoÇ\,>>ne>=w4+U15!GFB-FޢE ڵG\'1l uqq]tټe ˗۷oG800p 4Pѩ[ǎޣGoEa ~}BB,X";4WO׈^zwΝ~]]]$Q3eW8hPrJꞽSM̜5kbj,BJ5PD;::x<'' 7`]ŋz>rXVY˖q:UwQ’7Byvوx@v[Rlq wgd>y,#n_}^JJ a7ob|3kժU+ cEYtCCCOOŋ?}@JJ\iL6EhXs6JJJ U+bTy H$0TaaC cY(!|^% [~iǎ BPxȑ9||8f.^(~vVw}[c͝|MX|ƍ9s}g}Ժuٳcb}d**0p1999{`Q̘})CMULEXs6ڶm `挙IÕ;f̅ BayyyBB”BEjjH$ LMM? d?'?JBȻs?3eֹG7e˗/M(޻wﯾ,'&:zۧϞ80\Ѳgҷ666A3fHr83gN2)SlZZc|gΜ=sF6K#hTX5ΛC@l)GǛÏҷr=I& -}7mܸqc]7Bl___?2*[io``кM :)hetpz///CCÆ l խ-cƎ5333229nnn.;0558sdҨߎxX[[|VZ8z옗dzw9suVLMLE0رh77ws .knaӯ_?UI~;rtȐ!|>Ͽ8}欍l}u.-,b[; !)/+{0[qKȎ: j;a_j)3f} u]!9Qs~w?^ \&&&WOp^ɥ-H\\\T.?R1[]{6^xq*G!s5:KA>suu}!BTx=zY]WBQ:AL!@ !z:~B!lBȇGJhO!#ܧ0v-E'5>VcZa2}D. ܈_UP;en[ݭU#m{jo.M4ne_ 333:vhor-“R@WZ߱cJ$&&&&&.Yll"(JKK>lǏ,Y:/uBy+܈_G~ruu 3 Y_f5_~[)&Mnܻwo'O֭[O>!sF"hu>ζm~~qX̬N]HLLhglu(xƌ ''N ==Ic+{;|/_tk*--MU>|hu.]2JJJ̟߹S'N|Gk,&ےH)@EEŶ[ `oggl$mu&S B\͂p6dݹ}{wAAm_!u{񗗗.^Բ۷S'ZWXXXVVv5ѣnݺmӦN9QQQIIɉ'8;;{y{޵K6޽{B$)S6-)baaX$z s C{1#hMYbܹsc5u$S|{4!??޺uK(%%]7v,,,- 񪬬-*J6o5fuIPXXX/<|ꔯ zJ9 ?/~QUUU^^ŋdA*%%yaEEEv:lX֓Bj{ozRٶde?޺m[Æ /\uk(d:]9slNnޭGM7j[ݻbsrN;nX̙3DL̊۷4CUGEE;ݺw{5kĞ:`errb⽼055#GsrX} YsrN<5x`6iL8Çdw `ql2ܸaCnnnL#<{_#,]lyǎm׶MV۵;weXF>lXyYفnnPsB{GEEXb#G]|9(5 ug͊+\zEҗXѩS'@йs+V`f۷ǏGUwtѣk׮r  `GX)СÎa`ee3[ܸqcǎ;wV_Õ+WW ,P!+V7~@ ڵ={٤ӧO''3!ɷϮݺhтMNm.]0,m!H={\JM~~gO%?AظI&5[CBAz@6T6m߯U#Kg'O>ն={ܫ,Yna2AAAjrsR}>|`Ufffq˗/ѽT5ջVEC0@da]3eLc*6۶h°_v-+W}ɧaaa|>Rŋ>wn߮BK{6MHȂ RSSJKKiѫWݺݹ}ܹsׯ_~^u 4(9%uӦdffΚ5S}5 *M( /DEFI$⨨HccaÇyeުCoX񜜜6l ""e)ww[xbذZDB!ൎ_q/y/h9t|l sK -Loߑ鳌ڔK.A 7oČf:Gkv~ r?V644\g>i,i4f]۴,- <8;;+KJJfll2C1mSau}|6nÇ߸q*I0H;>tjʕ}}}}P( G ϗcfnŋ>gge}ݷ>wN͛7b7̙C>j:11־~~ik8 { 0zDPXRR8"F`Np D"DbO IDAT'N&R&0fǍǾ2%Ff:k۶-3ffffTVVfddM oU |G\|6B㔕=R\ҢeTTdj~fKTE{T;s˗/EݻÑMm_DGKW=}~wi;3I ͖=dnccx4$**r)L~Zy>{5__Э[Pq!GR|)-T"t5''G$h"kݞ 477Wq)h ,uV$ـR<~b?ЧO5&s~q[.{i}@Op8zzґH$...*/Y`eۿg#~}}ȨoݦA6m/X /oosssi^аaÆ[BCu+}Kh蘱č<==cb>SSӉ?KX+K,툷5700hժU```l\<ǎyy{[Xx<{{3g]N:/8p!ӞFFF{߷MZ8θ㙟5;VXXX0222777~PrjVvss7rnn1N]c&OpP( BX#ˁg! BshAyőGЃZ !Y<@|qȒ^W43WWw[B!5Ҏ^B[sx<^=ПB^#ͯu^<2P`B!!te(K.7O!#B!.%Iee%|.!hWTT+*55{5Jx<By+++Ba;"Ժͭ?ؘZIB! :b;{ v>Hdbjb6 6ԩB1ZWUUUXXh٨QiYO }UTV +*BJJJ5jTXXXUU6B!lh񗕗$򝾤B"ܿwYi\HP(SO!s:s*++/JJJ***%B*+'B ]~/7ïǹzVI$HC!RWTؒp8Wqq@ pP!Ɇ| %B[n3vmaI lBHZǯGK^_T/+>޽%%v\.7AVYy="$@IB!%QX`PM~<5yÆ|ӧ66֖Ґ~B!uND"64}𡳳saQH$ #H'Bkոqƍx!gHC'B=߻&H V 222ciiihd( h-!B^D"p\FAzzZEED"q,-eCBHz/ ^ѻw@YYY [8!|ݻ=KKoB eZYOVUp8FFݾmaaaU<5pIC%ݹcoopwmƺW6mTþpUy8ܩ5uk=[5bKoffFY]7J?m[?~m3Nw:eʟ)pƍK6M[ptQ.NNeȲsN5'ytöcǎ͕-((HLLLLL\tɓu3%%kPȼC,wb|ãGl >|w7ڂ3O'=N///>S>w]Rc݈kV)?2i$֮јҗlEBခ/_+Wp`~Aו+<`?~Ioo4Rwϙ@{x?ydݺX?^lWrrxodeeE]u[a㟷s]ԫW着_bV)t}}!5.v%%% ܩuS'~#bk>4ƺk. CB kiofog۲eŋI9 S?d`A5˵YP+Wشi3svv޴i3#HF ?tX$þ37w8a|vv6&le#|ޮIc45/JJJf=3GͦP۶n4pm>>lϟ7nڤ'Odk% ?j*d5a8{;g'Yfh ̙۪U+ 긽sPm۶aut_ǕzҤI...M۶+W3&‰'5k]]]CnՇt D˗.1M',Mz$կ:bƌ͛7egg⢢s΍3D":eӦ%%],,,Ddnܸa`Ϣ"zڡCJKK ׯ_UF?z*//oEFjL۳Gf6փ==._$^UU@7rӧmDD}e߾p;;޽{S_TTTRRr o!^ޥw풍wP47ͮjieꔯvUPPPX<&?֭[B,)⸱c٤eai9dWeeoQQG~ph>1|oo'O }S|m hdܦ$>hC cYMyy{~>>>C:oܸ^ZZ꣏|̫.cOd鲌9yqU}QQ{gd=:}l޽vk?zZ ̈px˖͝;ѣڶiت}1s[lʧDk׮" cAӃ233*++322f#5z줤׮]{ѣz\ݻbsrN;nX̙3DL̊۷4CUhlvUK+9Dz۷%$$4h`͚wI+gĉ>$kNeZnܰ!77ysGOs/m[@#%vaeeFx\i%6ӻ׹~qJcn޴@W}Hs 3ϯ󇳚Ծ:~__P6|<{L-7n\ر]#,Ԕwaǎ0Ǐr*GG'CCjD2iϞ=Ub?“b]]]E"ѪUk̝ruڴIݺ(--UMf޲|ŊN: Ν;X3־}<~8zt{<&&''{]vUfWr媾} 8`ʕƏ]vݽg/r䔜,=No]ukѢ O:)]tafi<,M4Ѫq&>}̝(ܰa=駟`NWw}>?՜m]Mgf\)zWݰr*33˗x{vj*;wplOڷk Ç9|QkfQ#+Lh°_v-+W}ɧaaaĩ*[BC ]tټe o߾9ҧO###ccӃ4h@1+GGnݻGGG;z{͛;jU={ܫ,Ynan ((HMn]J'B5SɈq"5~w0vX2ͫ5Kau/^ s6 ǕQǎkn_̗ڣ"k7lS0Nݼr{zuz%DS JNIݳ7|i666ff-rߤ""߰щ999mظ@DDo/^ իDz>^|ō,  KJJd[ջknwn>wׯ_~Wc_Z144ԪP5tH"$IqqqTT߼25Hauwغuۋ/ |Vg+݇F~={6jUM|KI:t055e3 ^% ِCCCOOŋ?}@JJD"an=ٟ̩ZҦ~^-Bj3nݺRc4D"ѯ0pC 344444d%KII!̈aM̠o~ˡ|ivKjXK TϱkVeggg]r%2pIIaÌYf4b,VǭM^|9b w*WZaz,t[|ݷd<8_~ۇy5ׯ\TKe/H***JYD=zTbb"eq8IGDDTTTݳg\xQMڶm `挙IÕ;f̅ BayyyBB”BEjjH$ LMM? d?'?J7wN͛7b7̙3ZN8{xLlZՖQF|`HtƳI9~af1COf~WJaq7rժՅ~#\qƨ~'O|ieeeaaabb'Ճ֬^OpV\3NaξO>TjNXR8eeY+Z(**]6rlm-4^C)D~\T6P~̯fas "{%Vv`'ELt\*9 g=O8ѯ_?*ֹI&qmllTmuNPke㸻{@&ysssiHTT)S, an5R>]bCv/T,ŌHViLPDҽ[לHԢEKu3\iǩSnHTҷK[T?h}QSRl50s 㮮j2wEއt ߟ[|/[=l>՟w?MHL011zzjL.+EO~"w3Tuي;j7⯬iظAqQW Zm',-UZQU;mnafΜv:fՒ%K~;cmm Zj2_~YmnnfcǢ-,\{ttSoG2‚}Ϝ׭{w@`na'נ-cƎ5333229.;0558sJG}_oB}|>`ġ [ioddԻw}ؤU?bZXX0222777~P{K['OYP(NLLT8T9q@322uo^Յ?$InݤlP’Z݈˗6lX ULLLyݰaCŵJGm;A|3=dw]BS{?~[*~zFUUUE5*++ʋK;CWiYi#+"?%ŋGAAU><>WUUU^^&*/H$*InNq&!H$bQyyyYUU[ yW aW֚͛o/snK H’G!u@קO5oI=DU&oHӡ|TXc++*TɆ4n\=P5&oCKjW9FHPQQCCCÒOT+dC<~\!CRBtK bX\ah`PTT$DZ0`BK$'75^iB!F'D,sy\VURaX,p>O+Ä́BH]m>fY5aدTVJ?}&.iȌB!Ek \J>R\\rzzLHYye#K~g>6 {#h_BjSJ"¢QUUGτ6ru4矡7ntlcݴe II5׭[ت Bi#n߶mO˖-6qrl޿_eoD[k;.6H?ߖ-\6iܲH?_+1Iyy:wdccݹS˗!.>^}gݴ?o545-X7jԈ~??-sw7rAAӧΞ uTz`dagdff HKKر~}^-k;oL,]6ydI2uWǏgV,__ܹKm$%-/ ޻wY3[KK .OO6QF\.W"gs]u[a㟷s]ԫW着_TsqA@^^޼sg?[.7mr+9%7QV?.\\bE.]h vj29%'S&M`5 ՘3Ǐ7119t?96119PCMuz\  --ʪ8!ҧ {OO $39)}+֯_Ol67nS%&& pvrm6C!())Y0~Nl:96+[\r/i>hccݵK!![@\M8q2 Yf|>Օ̌ xbҜ9s[j>̙3f̜)woZZZ˖-O5j 722jժ_BvVք휝g͚YRR"W=r6Tתv X[[s\! JiLyYf<|HM BjSN K.'B|vvvj~~.%ICnN};ӇG|U GJ]?zS:t`SAǎ1bܹsΝc97ۼ#D2mԨHi7n8}:S&&&oao׮.\8}k0g\6ۢƍ6utĉ'?Yc|oo\fϞ*曯}fǍ9jϞ?xƍ?~xÆF*Ec>}L8!brMMMML?'’ѫȅTVVݹԔ]~OϞ3/[^dffmYnְa .l*o3gJN>|X,޴q#˚Ğ:`errb^Cp8 GEE;ݺw{5*Tu͛6h׾=ˍUnݺڻwЧoiiݥu IDAT64nݻbsrN;nX,Yc66oT;iXj+曯}~-]lyǎm׶MV۵;weT1I^^͛K0L8!>kkk{wSxcc&M7m@`ŊÆgBFH$SL>=HU_,جXȑ߮^²P++3}޽]z4DEA3f(PTTaC7)EJ._SN:wbŊѣGƞ`vԩw҅_PU7|k;N"<{y~4$??ٳjnј,3ᄐ:B_OOĄ[io```lll``zxxHK[U-#Ӥ>O>eYʕN|2GGǝ;wiVi/>E=KܹA>|Xu`DEE~oгg/6y7o9sVqѠA/^|iajp/k᧕7gϞ. ++ ,Yc&uָ-ZϏ?ŋ1 ?eeeFFFLSАBjws8CCCKKK,-- ߼YHȂ RSSdb?,8hPrJꞽSM̜5K&)֭[[Jk?IoK:ػgӦUUU\jH]X$o{rKWWW]}Ânv~RָEDXasrrڰqUiLbmm $2N#t{d/8 :wLBkge1q. qssg& C|+^cnחMأ{t~cv/Yk˸wJŦn;w ɑYϿPe53bmll#|<<<_I7Vu'Oᤦ6mk5H8{6 _j;p0_~:'8a'd# 2d=JDH=txO8ɼr &&&WOL3kE"qqqQHIO^dde7w#_~Ymnn.l}}ȨoݦA6m/X ZzaÆ jUǎyy{[Xx<{{3g]N1^_jɒQ񱶶Z WJ:C[>DžOǎMLL\혱c/\LҪ:fX333###OOϘUc;`aas|[B{I&͘1¢AFڼEᤦo5ǎE[Xp\s 77i[mw|?{Ϸ~۔"+utOs3u{QIB;D#~B!* !z:~B!}+ŅzFBH=B?!RPO! l'B>|ɥB!>CC:RO! hBhBGhBghB'hBGhB_ @SBHB?!RPO!#B!uBH=B?!RPO!#B!uBH=B?!RPO!#B!uBH=B?!RPO!#yu(V*66S-Yee%ky[ދcXl2;Y]W=Ĝlw\ %5ũ'uu4!:Лu2}'SF.hFPV!K3@p/WǢhp,]^xL6z GE* F@G` Vȳy>$S}OU/ 0zgd'@4>E nKUJ02kwl! L29 }  j*t&&*.f+JCW[N%XP=oydQƏ, t@v1P';~lׯD[ 8 E@G uoLr>feU/0%5*ǀ1T' 0~BOWək_/xs=e{T/Hq վ]0]Y#S՛35V4z/` t>D) hWRWiF; mSasL3e"}(4gΕ=ǛT0Tɢ*Y6O BɎ_͸PB O\aX&gR$qf,P&PT l4*@X}-v 7|U(O= U2e: 7! |٪HmljW͉*_OL&oHү^曷qTɢ*"D:~M"Tx"s̅FO&+Dx3W|yYQsnߥ, J[`cAEQ-yKb`&b F%J/"RT -a;s޽we/~2w99s|SfJ4UƋ7.$?>|7 _(ֶ~T(:}ژ@ZS!j{H("Ԟ@͎&\Lʀ7 oG3!-`@Z˼EQG7i8ĿY&w1Ǽ`8))~| 5khu=(JnxSͨ5xU*j`hcK_mq%tqF/7n PЁ "ւv`)nW;ų[ NEmʁj`pQ3R`u TEfGs2< ҭ`j6l#1jĹ^m,cK@PlfYn>lĤ@XlA$OJ>w5 {N \wi}W^ p08SK?܏TSm(֢2TwO%p PU=I=wz#.j9Q_|<$  tPqc* Sv_*ɒMVG`p tnLQV]ocGN45!pԠ+/4k*Ѽh/ް"< ,miK_ݿ?ol\ ̝ӦM̌ ycytKmmXsdJ?AD >A&% $"u hO Mq@=~ hEAD+  Z$Aъ ' V ?AA"H AAD«kuup-8ԫ8cYYy0  Z}WTVF"ٟ~e@ZZZnNnvN煚$:5%J(0S&| B)ױavzzF}55֭+/+ B1Η4OA-C$D"'|zFEZZ1WYYYWGr(0S |p]Nnn޽iW4wAOA- OOdfe_ܗ"3=S` L[[!q~AvVvE=~ ha223j´Rǟ"3=S` L[[!##3^?zAqhG6!~ hajkjW "' &N߾&L  ZtQSSG~ h<&T߷`VKt  x!1UT񗕕 AAKffڴ[a7| yh>OAxYУ`#M ' awIXIT'ZHe#e3a݋DXsqdY͎`ΥeuPhI\WXf eLb3"X c@0iT:Ug3&}::I|9mblq5 |UU8M[8TѺf[Up۠/KEmJ08\5R7V[o)g1_h?y%|Z}Wn3rP\c>!|Ցi+Cđ--\Vg4uvMm`֟(EU1 yuc,uec63+M&͘rMLLe)HS8v5>1Ӂ; }lܔ`wNMҁ@C/0pZ˲>ɎpK.;Bhm! M oSQzyqdf_sG͸)>5ar?&H3}}N8/!_V^KSRrg%leT <;p?:oo3K5"gb6j&¨fD]W3߾NWtSݬ 3HTCWeir`ZP :RٓDLUR{9n%Ж:9/+Vtaz2HVc9a&mzT]L-E}50vL!Fu֔#g(QjU&uy3m@un&Z p:Jteƛ䔣jbN&וN'@۳˰L8&ԈX#oT{0U=ra3nvrKLY[>\ 羾e AYͬ27&Zw#-Em1)ȑ5Ko Whu1hnQ`0rq!}x$*1^ue5O{gZIB YV+CQPxL*OwTE4l]Hq)+.GV^5X5$!嚺Bt`>gnf5ˊl.举8`dH{ $F}5&L;ڛ!YVш54L:-3^I@kFeڒr d}ػ}&VQ t?Ւd j \{PFm0j͚"z:9TVWcO2ʀ3(nW1wKAW,HU1! h<o( 8f_Ƙ7ЃZB)%hmTȻkb\7帺VfV.CtLy\^Nslh%#D_\:fP!F}s0~z{*H4b*犯ZY/H=Ud0tFU$X9(g`v!{CPc*UZJUuY}cا:#pȎ>W-Pn{@xNn%eG{ BԵ3Ydc*L=ornUa)rOdD%.15@2`5%QL[Yy{F3]Y]3.6?/c&9ĵ딬tg^(ajSTWn]\X#uZknF=X'mW/o ) =팶p=|ĸk,!n9IjZǵ;bo2 SaƌMN-Zn`O3<ϋD"L"ɡHL!yk0 @ɦThT@N.t낋}Qޖj[ xrmVn5ަê"]2Z Ԗp79*on55~/*cVq_vs=(tjudd ;b<_eHO s\a]k)kЮm= z֩3? |\ssr+*oX7_؎{ vr^}~O,-Q8`RS 7ToBm$Qw6Smt2L=E݆ +-S@|[OgSY!Ӽa׃ZtkwX SF`?NI]7/=m3U*rBC7,WeƘkglj4Vpj&F9-h\Vm-JP*ܞOvy3k)/viyĐ4QPQ̭ @5$OCe_ՒCoYR dofZ# 9\`o"[0PknH-E~0-)/s>=Jj<(m: rvs4 F7}Κ)4ZsqR: Zg%zEs9B [aU(3N QG5/~ޏ\m,kC;xaWYI*ZAStmD ՆJRm:5_ԕ@WGGW=-םfp3S!qZ*Ԛjac;IƸRqh%VP.qNIߟf*QPyh,u,=R`Jn!NHAI5N kX::-˞o\aK/@>ڣ{žkõ3fOٺ]u^={w=mN$@[SN<_?[ "?7}[ot'u7,OQHt =e{F,Bl1Ss%fJZҥV=0l{k;J|s(56&Y`Lsrg0pj[dUFjICDIp\xU.[UQZ+eH3fmp`,W 8 aevx4i[imsk) 4.co'δČob17&ZCP9fs[2}~ kNmO!.,ק؞Y)\-])\d}3 bIrK]/朢jߒ]tW۵S^3QG8 .8 s]U*Rn$:6|2?#uN(..^ҷMʼnPUY%J ';G${[ҸjumӚVm7~=pbpNQZ3zE;#o:ΘLs#U ;8LKOmVJ#ܻ12n7"dV>-n*5r}-ݹQKH67t/3 uEI Y,#(ejCœ\e)e:odHz_Z5iϫETj՛=kXtHpA/A]%WjUF-*O5V`fK33MEQrSvCnS2Bʃy1g[팽MifTo"ahIG 2p'3od4v,K{̵쏎ʼnD:PNPt>`ܼt}UHyg6OT?j\NֆI:jzq]͈K (kU93$iXzNSE; ΖS(#Dkda깵Ը\R ^n{J{J= XzŰ {\.R7+V/?`JhG=q3!މ8f(+G5vosZuW4'b{Q  - ښpB{͉61-1 L'gPc zUi \0E\9{QŶZ1'BZ8m`oхP͢wΰPaՍӤZD}iijktt27#=?8s,j +:aq#  hFO&_oRLQǍ7)δE}FX"?6&H7syƭ\aT$צRȀ7i ܘpFzya>==@8! P[[;eLsQ?]gpcN;sk?xA!P( dk8AW (/о]#+ ȁr>_)G`U֬? hA?5AͶ[WwlM0Mff֙:qP]@nn^ hޡ8nEUC}$4ژDAF 4˜O{# *$Loj-^$ f^SK PjG}Sv-{t/8i)V^!B6\n;wCyymWVUF j8uqΉI7_hq'EMƏ 4Z%bLjsƂ}Rė-|F :NƼzqVqxˉ. /^Y/bvl Z9'ٜgdLWxZa8EXQmbEhG[`Q9XWxb)3u߈=-[6߰O~g: kl,k0k /CNм5kVNi1b}C 5';2owrt>y 鮶kD5;}\>*@-nVWisb Oau`υdu[4uwcU\YArvF5P/|}}^vG= >ͥްz:¼OjȝJ/1} О ȏo+*rOfB歐ⲻ^@K -㶌2{iL0Υx0p?G#η7:Hkfb ~WꨫOk@m29[7|GIe(ݞ]lbΉ=BW-坋7vS>ƆC7Ş阧5鎀,M/n0Ӟj<WDTn6*$W$GLr^`/A}CNu҅-b;{,Y'K*l!.2-|~=)y6*>O;2 ,A'kҫp)/_FoGfDxv!pA uՂrL5))־JJ̥%\s]CWg3+` b&)0so 8Gu{gt&n"x],4uqା!hRH5ͶŽr}65P?*~8tR֕"++\Ć2L:yvYcvtMf- Ml1 3GIwgmpO+'.O> t3Z'I3f=ha`+c^) V ߀$6{ϜYg MIf>h)u\΢g -3ǿ"!j cn cȐ'b0R9ʌ3.ה Te L-MS-v(Շhy=rpιϓzD/Q|k"Z+S~5oUSˠbj|6{͢_ fuytCn*s}d?]^ қ>> 3}(x Q<+is^/2O7jb~Yn@ƑYw5"%U8LOہ;P:ָ^peaκUE,W%s?F|!1}^D`[׹VW!SZ'8=,T(X-j^>}}׋YuT8q}*-a^.E3o퀎tkOmq!j/gj r3Ln"Ͱ+vų juޤ ,PwVܩQnpH/A-D VIfR%릲 !͞%d_L$0YJW7UíCVˮ)xsoL=`i%f!-6)T;ŪX0kz!~22 ڨ:#NZI H.Xd3 zs% Aݯ65 2 U=,C:sȬK1A8A[,,ɷ8{f7{G*l;8$#j co(|Ҫ5W.9e >;!A7#;OڄEMUjql} AƏ@iNu3362_ MGtd)y Ufc>GbBi4]nc6۪llE!zN@ j\4A IDATfLgd?:nj 0$lo@103n-{LtXIQz%|:[oZ//J.4} A.4t;'bC:.N}kv:9Ʞ&tikuX틾fpaH5FR%b[C«~Z`jG[y(D> :"QR[IG۫tu8s|^m`hOmtZ2XzSKjBLBˮg2 #US6syV^L BH׃+B#T-=ѽ=OKʝF]5L4Sc䜧{ Q#Qw*zLcu Tz!mکfƏTP*y`Z s"R g%a376YTi|<9O+l (i496xq=93*}-oYhwA+˾>sމI5ȶȷ[EǺ&:9*!ZG$V泫?/jhqԑѽkV &2ґY ӭUct`˞Du +,FȎJ lsDHoeBNx2 s{̳VgznZ#=r+̀(= 5.>oyuMdL3U9z_j)hjE=krGy(rt1 Rw9|WUHTӋ ]S./UR a}CF79_7ԪeW.lbF+yeVW8*&U]m["N?0j-HÓT(US2q׭IR YXhxFKd:3nֺ+.uW#-WAm<Zmv9!m_@YԟgN>f< 9!em;Ws;"5̸+qR9г&11I?I0]u53 ΪSWO=9F :.ўqp3)1fD®{=) fM-E1V;?bNJDt㊆4O! '޵+ mmI'  c^FVy%v&xVlFFADJ$ @BOA~ hEAD+  Z}O9D"pP^qJA)B_WWWt=?CݖoaAѴ$ǑHj߾!ECpEyyu/~AADr_QQQP+AP[[ۦMnݺovsve!A0z*OO>}l۶%I"4"R!T# }SNeU8؄ 缺z:v؊۴iׂ 'ܺ5E_sIH䄿s^UYeEEE۶o U׆}ss:w y8Srkj}''Z [lɓ[ږH)? !CFhӦ;qҤ+WVVֹUW VpÒ;vK~޽{۵k7n#8Ž'O{WWW2ׯzvu^}uֈo=##CD5s|@zzznFu.lmzCH8%ŗ\mW_~of̜C?Ѓg< 뮹.]N|1y槟~fKy~vɥg')Q󁧥/G.ZxΨQn\P#333inԩ;o/**ӷOjPJoo߶p5W~7t={ϒLYh/O<}>(69s.T)-;q̌n#[:s\]kM0k T 6t+V`B >Y(u6>⤵}[ƌѥW_}WIeg?m#Fs332Ыg9stm֭9yy|m[:@uqrG<g͚:e_Cz^ڳgQG=~?~QGgޗ^zɎv񧟎}Yf8^0᣹s{5x&̞50ct4ws=Ĵ-z)h  `ʕ|_xq^^ޢŋ"/$[/_ek~F~/cهхrܐ>gpNO<8<33M6\s ;w hb^iii >?ԉO><+33p[PP6zhWdff^xOcv>%[ncijɔТ1!+//+-kʖ+cCwz-ZijAGWj߾ʪʺH]Zbŋ8 ҥk׺H]eU];u :5Xo(--УGwGk8`@{%6墙^1yOx[ӧǷq&Uz.޸fm۶۶m`Ꚛ{Ӿ} !Ugg?m#-U. ݲ-ziܶm{뗓Bupe_,lb "_HK{,v-zhm!>?4kOϟ9cFC#ի|pO8 >Yju$64Xz6mq9N:Λ7SNkW~ҽevޱ}oI[~ץYYMm3A| ?ś"HqGW ]ᬬP(-鏁i֮[{M>x'?'qÆ~L8|xڿ naE_W^wknhڄN;ӧw(sݺu^{LrܐP(w Çg{Pck\_wI$;dA&@ݻϝ;{AjkjڶnR4~}ffd>@.]^zѣFu! ua9 ]tiڄկ=:777==_~>@ ct|؁75''gБG۷cǎ:߿A}#ҵ;ē233lv6HMXuM7F?I&=ج+..>3+jkkΚ5knv#f͜Qkא'33@fffnn9s }AD+WrJB׬իx޼!C\jG#  gdgfET( :M73xP߾}gffݻj=z$  f% Bm۶mӦtGسĒ>`=z䤥G"+YjM:m۶ 8`$7ԟեKyW^disss?EAD˓i&==C~~uuuᳲrssh  R3Ʋx1H "uhuAq0ҸwAqPBOA~ hEAD+"}{YbEEe%_K/777wA۷owHBKKKN:((h> QQQ7{1m۶m=z=jtYCASl,.>c;$C^SNg AAZ:uDycǎ]n$ggg+ 9Ɏ3qҤkn=NVADS]]?&?????Gi\T$A+߿Gc~𫯽~#bk 80̚=[n)ѣW_x|Μ9#FH66ADR]]_K~Ğݻ w|lYmmmR8(9SG;w!AgXf ';'˯`;r{(++-2$##LyRRHE1-mWpeOq8dd#p%K$A0J=w8߾ɪ>H "ع$EOƤIر0vĉ8$LИ`)A*eee{ ?9kiZ[[7,Xj,\nছP\\O7(ו$ġܹs/>{ѣ͛gwyG^= ͛7>Т]ݫ.>}>ݫk.C{MW_ueς}z*++۩񳬬쎟޻Wa~JJvx = z|$00nI'!3'*bNmÿ-/B#\|~KLvazԩS~lٲϿ;=?G}]%1:iDCqgyzNڦMݻwy[nG3~|ɮ]Mƌ6MYX[UUرݻwk4hj^Q8k8tSo K$<QwN$KοYguۗ_}\}@UVO>㻭ۦN^Ps֭OM ytn6}y?O4k~ƭ۶Ϝ5WZرy[N:mŊsU6ɋ߱po|w1N=ASr[7kWn]rR< R'Om-^xOM'>c撥Y&}6n>&M@IɮD-޴9S3sG(I<( DV|uM}{7o([^]SG" ;N:$}6mǟ[f̘>c^z+:jŊ>kdt~>=:ڦb yv)ASIn.*jdoryyK$455x)}、DK 7ԆyhQQzF}5˗/޶}#mAC=Ѓ~Z~Ո#=1cvqƻ @c~ڜ!%G\wߙzo䂥x^е+*^D"'byQGWVV%$~7 /߰6l,l…f{={?G?<2c,_5|}b܈C6>2;>`OBxq_ ##^pH.+++N̺HHI!'zDG?3++33sMK. K, sFO/;wnUUUeeX藖\~|f~sG0j@{oֶ'47hj#V硇hjkp!z1fLrYIBbhܒ|D=ϋB!$٘?D/1b|pUWg}Npg]v;̞5kLy/^|ᅟ~[~&MܸqvԨQ7oSO=u8NASc|}pزRBx&,œ<3<IO?/0 7'{yeggkg]O ?Ǎ+ڷo3zɓ;;tHKK+(y]w?SLz_pA.]ӳxO>@&OߨQrrr{Ak?wߥsX]ΝEaB\qEcxsgeᮻ =(< 8qC߾#" < MVRoW]͹~Vv>s#FU8AA%) AD%/' ԅ5u8} ^\՟Da%AAMBCi  !O`~ H]OA ' C G=~ 8hI "7O ␂1~ h54|s_/PS` L[s}AqHPrd(0S8Ag  !'=OsS` L)p NAD+)0SC!p4?~ADOOCAqHP  !|  R}zA! AD+sFHOAqz$AqHGI P#A!o`?l$AēF 7 "5џkcxR!u2:Dx  m ڶEEESF.ILAh<^?BsDkcrzZC48A0hIq}zA(,%puZs|ER 2ٓ>}pX΄D38Tt숴4kqX,^cHOdz623gKPPLosŴiN_gÐN0r$&L}PYkEn.8O> 6쳑#.YǀB^oo_6!~ct邌 t耑#1qb0<}C€xI'|ď> FpU "<ƍkt5ذ6x13Ϙ0eeS|)}^Wwо=~#G;g5?kk1e L>.oi`,̚DŽ ;PU_cu+؁GE6o6z+^xAnO'` 0s3{&|?&c(̛'Y_W73A'IE짎G`h0 qxlقpvGLnx51a*+QYe(*ܞ=8,91׿c seq?GM >opac,^a+1̘7},Y#>OǶ嗥< P[bw8 ?qa\+WBv䆭Ǻ[t[ghN>?UP]tBrg1GRsoL$[nc7Q^j,X.^n~;.E8/'1#؁oMn\z)EU};fC]G=#ӯ⋠a5OzY~>&+ON9EW_-ׅ]py.tIsM3gӱz5F8㌤#p3<JJ0f [oaJ OqƜSq睱_}5 OV4Dtq "=~@aLO|;-~> .0Mرx)wf fsP:xz:p̚>}PY3f4&0nNŅ[7dd];{.N<o#GC?o|ьC~@Ϟ~L!~qUHK/M#320m~쉌 k=DSCzߦxIsu utt` A+xӦ}Phi%%{r}Ϲ/;t8y䈑|ok {P?AA. ADsIQ  R&4>A4 q' C}z,/AARp4q  RVP?AA:4 ρ>?E=~ Q]WZ֖-u~eJ ZƐ2/T_&==-)?A8{;ޘ[Ĥ徙-MDy6m/Z\S]3@mmW_} %'mn,q@-mHwGiqBy|H$9;x(-=////7yItK6&]SzԆ8&y a8wmN> w L6ˁD O0Q{>>G,orRvZE7yğuq_L 3Ӽ]Ԩ)A0232=1< M}ֆɨ>H "&O 3~19'+-+:@M]Ϟi/唵S]9-sί߳}7,hV+_~t 8{b;\a 3\7׈^wTm(Wr˧m)"K;v&-A}~n|lc1֢vvp r?EdEd˙f3CaUV9O-S8@]@/\bN垢k"b!D}?JVc bDҕ$V֪_>+uˬ`!/lޠW\/x>0C(BuDUjKd2K鴃|}kN]?$ J] > >· "wfV>^S=5*iOy~wqvOafhHNK~Dw׃b3bc3b@],xk^zQ5aa9sL2 1ADSq󨝍ݑ Gm.6ry.+<4n|ؐأ8UV2+F<`VYS3f86Xxp\ice>n;c'?QʕMlL2aM&+O~p2?Q樐+vyf, ȿ[[:jOkJk!%%s@]ӱSg  "ʕKYkӆ*:5isSg;[[++k7>j .}fp/_~xVvmhˬ.qiTTh6C ^lk4@I/5iVH]S` kqSg~ѣZyƍu"?1suoݺU]#/ƹW4xBsn#c0Bqqϭg z rts#%Fz?zؑTPXTXT EY[g禃 n6(8+- A^F,^FN< AV7n,[4z"z ]/X09%?(|'Ǐ@7ߔۻw66"O4?`ϞRD党hut{^dTlٲIla˖/pqqqqq0T&~V} OVYo7˳ϼysKKKyhb~$ aRҎaaamZ}iTӧO饻w2 zNר%K^ݭek_>|ZԧO^gn)ΖΞѮ]˖1߱|cƴijpH05PR\ݭk6};c%씀s4qBnn@6Bk.zGaaa1?][-$0[&8s{ 㽽<۴?c%UspITʈƐh_c#nlhDg 7ohQRRtɓ'^-gggVٳзoע" V'DZ##Mk*e*)˧Oju)^`4OXl2ch-Y M_&᧟~6 ڵm۶:?y\s+?$5^κH R*TJ|hh(U{gXV%I(cqc+2x{4 3O6ORmFR*Ο?O[<c333UJŘޓ Y ?ԢiSuL7mR)KHtʘ2WҹSIIR:V9"XM[޾Dmw܉V% KS`ŐyVƔP?qqTyG˙3UJE>)ڀw^\U#e>;vӣUM7F_Vř'Y2wL;d*Ƽd s)M嬋f5qӦN>ms?Ș6uʴSIF3Ξ=ӬYoɽ}'w?4m~[>bcc}}}>r?G]FμH}e攔d//6߼_{u11T+/֡4ەrnS2BCCEpe)矹wM6 o^44,y.\>]NvjI )iO?ƍ/)c\zmڡ^^yyyqRlJTk?;v)&f7=8p0m6.]ڹk@K![#暸<`ڡ+WtKS#Š!4utFwhDg cJ͛?AR zDp\)'kXV_"E. lqpqc++70Az03]OVˣ=:nMsi0@,,&oyy `Qn-xyxgf#eź: R*vlR*$z*رctiYA?'I2//OTѝ*tU)tWvW[̙ӕ"^OJ::8*ӃǏUJE.隞=k׮Q 2UJEHHtIJOOk~=zTTץؔҩI^$R*v>zT߹n?6z/ЩO%n%کaŐygֈ>9BTlݺ*ڹST 2X ,BBUJX Y}.&MR⟔k /O LImN?l֎i0{y4>gs@62_z,=cЕӏ?~?;99v;$wk}||:v,pA]ꠎa=ZWTTɽ@7P>^woj޻oooO-h4^8(fa<=4 0L!t7z̙3)S'n-]eyyD~_`mmUUYY.9)lZ5qK,\_G nSgR2&[;;{DmJTk.outt4&8=%EeƖ+IԦҘ~ XD;>"r1c3ot83b3gΜ1 ĉ<ܹsl4(X 4mڐ$yFע"{WhЄ:)񷲲rrrڶ}G=Edsrr^|ÿ&q/36 rm,cD^u6mO~mB:=CW=g(~H)^p}.V'e[N7m$fy,**>f D\+977uG&px{)+++++۽kE |D8P}233?YȒ'OcǼ}7onڸqpH՗Tp)+^kQǏ/++Sԭ666VN5 Dukgoogg{… m&NnK`&9eO/:N믿/^ ԗu6-FŋuGZs&MgGThlӧIVfpp+toڵUVZ&GZ"*IxĹC#:c3`;KO߿ouDtQR.]N7m+++gϚiF^z0+++.ǂ c-L^fl 9X61o|:_QQ1"<ϲ{GRmQQaP` >||AV>n@B+Ç.!iIx bݻwe^*kn&|d'IWjm۶=sw}QI4(t']\\m :4,t:{GF!,C4'o^\+))y_P^^]&lذO?!!!ɗctjƈ"/kR$ 8whDg QSRgΘQQ~8^c2Vm;;;DEJ?WJq, 诧ϘA53L3f˖o6Mzf {z [xIѼ]so*v.9%%K:w XIo*U}S (˛4i2f+V@ӦMoMٹkhXL&o߾ɓ}hXѣGG v:tBacc=oZ#Æ#EY*&44T.7m1c&A04v8S2ƺ5k!$$d߾T֗bN!ɶmt)=888{۾evŊoBuqqa~Q)lSP۷?88e ֋z7eʔs(NNNF_3H鴶F<y$<ܡ1Dyn`6Xj+f,˻.--Y:mM7SVVfAk&&cj HZٕ *#5EF'@UP!A@M@@TY.VAV)"MꞫrjTRjJ&A5rIe'Ȉ5m0V٫6Pjc5vsJ5>?IT[JнT0CT?5^tcpZYE$QeIs2kBE7:DӘeiŸA~roB]Rv_%ma%MhQl+Deֱ3VR`?mlp_;#9rNxE|E28NXMX>0ze’^ϨKNXllx  /+xAAAAAAAAAQh? 44ŋ5]}AAn]vm֬Y}AAnh4r{gVI?  SH25uչեzCe}kCA6}yy\.ԩRWFuhW=+urro 2LR=yDS̺~(f󎱔IENDB`luckybackup-0.5.0/manual/data/menu_LinkRoot.png0000666000175000017500000032310611352704056021072 0ustar luckybluckybPNG  IHDR7l pHYsMĶZ IDATxu|T\]ߍ{!RA (Wگ-F uj@p$M֮f@~?a;;wΙs8$&عBP+ qStu6i:MW^80ɣ:-T37*sRj[MF7E7*j"@&UH-dʟ勗0 c0H H(@I%YX4aA#ز%W/Wd q͟Zk3F^Q%k8GJ*W7UIŠ-QLoJrFA* a00Xd  *cH)K(1˕ o!D BhŶLU|J`201*0@Ѝda`8B=! j^cԫuɨbr9+3ruu9T. 寙rڡu C } ÝS~UEQWR8ApHeI8[٢2Z=7Pft_c_$ hdYezAaZ$)7R@<*GE5(kVp8}jiBU[3FdW`@b)++%ѵ"|fujVp"׷|8MSNZn[~'Y#[,'NnԂWrVծܵsg|%R?4IRh⦓\S7SBf2~Kp`DN\w4pNCYܥrwA,;ueI)ʭ1UB$Iڸq]323eYر㴩SW3gξ[V!0̏?|o0Z,|*44,N[[V9<رϜ=#Bv>`ttO种Pȯ?XܫWܹseYҥ3pyM⁃EE taҤIu({۶_|y?_AΚ5SVI?W}*!1jnڸV]+"֡g{IHH4iR]դո 1Y>11}b\,?_t`4 2dsGӴ럞S/2eǍ< & ]nYY:|xIhV v={eff@XhQ#ON#뮻m߶k箙fq&t+hZF2pc#0UZʲn3 -RT1'8rĈccΔd-vu,7(MMu:uԩS5R{wAxvc 7o5k3m[yhy~M+WE^s^;w7䓏GE5ZcǸ9qi>\L:t/\ YlYBBr-cǏ;ޠqG{u?SR>#Fs3:Shu):D㮝tMVN/3^GSӚ{ĝ'?/oMS3吐A裏&~w_߸!V ӧ!W\^rJr{KQ v)g_9|dKfdI7x-6pgg>Mk JzcWhRJv'4IJtҥG Y7GSSj8pZt)?~`ҡ_C j.!!qƍӦMU%Iӧ[F8E#G *:x3ml6ZW^yъkׯ/_,2m￿4//[+ 9t0<#G i+Эq l۶}޽OY񧟂:߷!Cf3fOdo|} ;wTVRزySΘuם>}Z=S}Ç'N\nݽӧ]ԩSz~ZcǏ石g =R&B4&)$;yǝCE O"r Z&&q;xƙݖvj[/Μڱ3ws~Oў=;ϟr՜$bTa׮=0ǎc0hܹ믿^9Ξ={/^L[oTjQzx}J vڹsZpʁ.i__gyΞ;駟رMӝ:vSpVlZ 2єk׮KKKk>m`᫯ _R>*j+@S3={6CESttPRRZtM-3-\Z⁃SL&bM8/7w=<`]"FKDzlvN}~ѳ=_j.U"ӛ?`eodddo%(yaCU*J;lSO={fjZV{.];w՚RlW.X4bȪ;؍.|㇛qN\3nl=V]eRFh, Ηek%E!.uTGteH.|'j߮\ ̜1Ե֍5֭_NV^\/W 8edeywr7RRZDܤ{nnݻ@Nn[Jg~x$ȑ#?Yڢmu_+W=W*)Z+MѡFߠ̬^3!;w6o"cw0h+ {ѳGY333O9^|oV)EDD(& +&33V߿PF332*ׯJڽb0 @4bnh‘ OѮm%5l5 Z>Xˡ&"%RsDQ$!Vk3&6\e㊊0%p#=_GьoQAAAAAAaaa!!J:vPWV uv]Re044:"yOYs_'_~eZQϧ}Ju BtϞp937H=vpÇIʗD&No] $Iy!++k떭/uiX+MARj4i52tktݻKͥ b^))ޢoܴ)##A.^ҥPm7z5qJp)g; >⋄Dp8_wcc`߿_gW#jrE%_g.\:;;+--4A%e{N_N,Ufw%uGO"i9jK֯_>_Ӹ)ǏdY-]N&O$7V})kB3fܻtɓ':n$I㡇똘&vEЯj]s_'a=󭯯NKʰC'O3Z 9rhH~"nZrN~]{233IоԩSj3u xժ_}o9stZ=ƹЁ ԹsӧuQ |v|PJQ0ohb3f"N^z__IQ],xwl&"(({n#GtaZq\4NARz1ͤոˌoLJWlllyO$&$._b*|̧+ڽɓYYY,N:MF9Tց~wV2M @-ꗸD&W=7GטCl60L:YnۿFnp #44dkׯ=-dSLqCǤMZq۬Y*FTm˨}(Zm"UC]!74 fJaB[~x}-u #KUN$ǧya>u裷Q?lP|I/39e~cX O\;{n|JK$'FWqҽs$Iv`$I~~ݺul]tjVu:.F|r~^~t[MٴܼrK1Us[Z:B(vs\B@e6#@Eev⧎4A@&AF͋g3.rbie FR2^{ˤi j:Бc'٥q%,M֚ݻ9CΉenӦ.~oj:֭S)o[N •+WW,_QVZs-rZ՗:~Сpۭ2jzCNzڿjno5Jbi4+Zdq3&롕Pʼ:!СcN7yҤI,z//PA7Z-˰.\rl6[m6siivvNaaAvvNVVVAAKrs|}|:=IG8q1ﺫWRb.z֑>dyT$9^h#@m|c:wW7w1 h{fdC}Mtkn`,lkdqM+r0 =_Ji+/BaÆvmJJʞ=~w5GRJJ˫{!J5{ZNzS8~:uZT\^^;LQvɈÏ?--)ٳgȑ#nVMرCwU n%D;v $E?;vl]{G}K99 99ٙWZZREYYYK;vI%$ؿukX,W^3L̬ׯgge>3{& :rĺiT {E ^ƘD !R 4~zydGճ}Mw t.7?p0f.+ҷˁީ7~ߗV[y׮]wy'm[Gzq+ QZ^[Կa+V:nѲ,WeyѺvUf{w ֻwo}}7uN:thׯC=tLT JufVロ1cf~7c^Ex嗣M xѯ.A۶oeWt*7cavM Mӵ8QY0`@~}}UL6 oڴG&L\lbq~ڧO(۷moA1AAA6l7oBhA11߸'&%9#=rhJ~lˤ mٲ333OHLǣ:@ҡn57iҿͰT*UFFm-Z4gΜ↚dѢEaa*+WrZwcXW2ejR.ۧM U~QNiXh8L"Q9cgȖ-[ƌh4ر^}Uزe+ 4{g\zu-lz?ܫ].NxGۭ2q':6Hƍ`…SN5L4MOUAeE|EɥKt::wK`׍Ӛz=xƤ<0ʲ+:EkMԜQQǎMINޟqBf|}},vQÆ }Gk׮K^^3uǏb;wB];)0aBRz)P$IZ͛\v8k]JSŌ?tɒ%mʕ_@uŔvML#Fre-[p7|pT*})N|e˖wV n6OQTۈ_~'uZeefQJJ ,&lM6mĸZ#4]\ʤ.en (_O$zH$AsozЧ5,J$a Ej`41eY$Q8cX\fnK(ee.''&%9qTnn*U6>>EŅ^EI%ADA=s]Z:z:1:RL;aK:ü=ۘB,Nn\Ɖ=_YB0hZx/E o/bYiwϸVIcӯez9s1P4>aBE_N繒VJAߝ/]lj0uTXvU6ʁuްa| |"q# m"" 11  "w)++{gy⒒%: ''Zn njQT*jѵFp-N1}{k~~?%NNn.thߡМHd ',4\Ʋ,ˀ1Bc tscYӒ$ K2/>s~.^3˲0wddD>wHd0,c9gF2X,Mݐ-nv(^jք4` V?ʬܾ3 J9A2>ZUv~m|bH8b H y}4۸#)mDVII.(,hQ;ŵV Cu?0,ceS7$yιzLx`N\\\L!K.}b9T8m۶Ν[7>\~~ ^111aaagΜо}4.h.-MIIqYi1,0LvV֧8I222>SjN 7n [ <_x17nݲwvQQG?~}mF9rd]{ 11UNߡvVMJ:"kqƏOK;xbj4s}wՆ3f֛ ʲs4%%~Ci@]#y-1jQ-YFK dYEIV6`eK$Fɢl'N//?f;!AG $`ُ8}Y_7@~޾I $+"ꘪNݚיt8̈iBL?k0ܵwjZR&K/ըCLQAeB>oZw*3rvaiD"I$ʽ}N.}Xf]"_xiWSC{)TbӧO_xɧo&;w__ 66i漩S?]LDܹsǕJƵ΃ ڽ{?:Xr]U*EQ<3_ K}+lj=beт =tϟp%ߋU;z+V$L3܁vk4ͺĄG֛-Mt.~_+NrJ EQpRq$ƭ7&]mZE3YDY1yA$Iqf˲$˒$Y,֢bK6$Ϸ&smˋ::=0GaTf \Q%I$QD:6vFl7cE@ G*<,AH>}dϝ$!3?~팱Q1mkt:gT؇&X c_7yaX Eӝ:u!<Ϩ7T*)&!C Ff/&] #_h'3.u-ϿWlVcbz/_2ٰ2K/}#G(ev͘1㧟~'&&5קbm*1c%YY9{'M4gsڵ'$spPEH70(ۧ\j4 _d]/ڄ LQ|zCC#d̢#GiZIO5 ف/8T7rD٦ݝelOQ$MAA C#H2]Vs!l2yq}c;/7UF0.--?z*\[^V:gCYvyr{dnvꫯmڴպxp={L1fX(J$ E ˲; iYV?O%N'MC+_fIYfΜ9}1*GU*cpіlV`Y$ȸХұ2,-ԫg(nۄ"#1iZ^?~`4ȒqEQ*GFzxѫC /̸Rhep>7v¡ X D~s>u=qh6OSj 0s`񑴎2˼&м, VCTPph[BbG^nnZTsۄ3MS4=*{[n  x%ݠMAX%DEY0+o&XEJn¶mkZjsf3IZe(KyBB/ktѣ]]#q!$x^UK w rhʟCfm=i'͉ 7^V,ѢN唏^d>@-s|C[.:j:bX-*,dU^($;AZQZth&KiIz:±cZNwlNZM?,$s6+k/Wyv,n, nl.PH aӧi'}ڷOKE{D 1Dr @"++-ˀh ð m.-ahE$<#DTk~0+l^k8/S5su[J$yܸb p 4A+-ȲQkLFQxݹ3I4ELEEafhxIM{QP#;y˟>޻ge^'vX-fr&JAAYu/i^=ERWI9SͪTX~_յi$"HTslă<4'+mϪNץnߪwa(CkVU$AT!l"BD`2 $Z^8;nQ޻wOQ!II  `06c$ X6R# 0"nK|,ZVTjJkնk桭|pG4EtOXcKKrfZUFbEeF iRefZVt4lQ4TF+RΥ%ID XyѴU{k)EB@`@4!IbiZe$ee7c"i[EW ˴ZÁ,cY1e fh IXeb_Y߭X6i΃{ǰ* T*07;oj?8#u߶ȼxv{4]{ 1xYm6!߶;Ŝ?vbN8ǜv4:;Chm۶Xo9G B HRbX,|$)x<(JU,"RR;; v?[1Jׯc{ࠠAhשP,f"uƣI‚zMZ>L/Ϲ La64LGٳHķl=R\pq]7on۶-Tws>>D bS5bL&8j|$ɶ߷in11-zD| N.ɤRA A<P$I|Xljr***EĿ8LBLRjc0oxӖz 4u؁j͹ϒdI-`0l׆/RMJxRx'|6!9)ß9{WR߿/+8i${{{br/BBB)jСN:!!7n\WT[rڴnݺig'HM/_"O>sֲ׸*:R߷EDFd ۏ/C'VWƈV34,~2z[aݾtǵ!D 4:9:|Y~NEE$O/="ID5hZ% ˗/e/_bԙW-C/o3}ZA=H\ѝIwn[ϵAR-tξ i[sC?}z'II(%ExH;]}Rxp:M"S~>o Y'T*MHJNJڜt!.jOEbbb먨{:tQaQQ w\QƎж4>" 51j{ux Zli~C`/ZH{n;;;#i===]?u:~⸋niӦo޺5}6mh1R FO8)77{ĉ ԪPY|gk-0W-(Z ﶓƘf U3H"$V PReffI$zus_K}WW7 ժ唗255P*| EgCsDI!By1>mMt >jp,`$(Va;Y?t3yBPʋBP)|ABr<9˲E\]:w4_vFk֬[z+WoDOٛ-;;;xwf'_p?ӧNW,In۶M5iR e .ŤǏ suu۴K.߿cN?ϝ"=ʺz[?~B>}؟ֿ٣H-I{wpnnn GbϞO<@ ؘvϳ* H'2m1dEytpqqGSmf1m]2+t} 0 #U̐<%'''%%=~&T \'O0yysS/sx4E*٘R )YU# >dS?;qE-z 0iFޟǮ=Iˣ*JPH \!S "Pҥ|TW=P R(."rhwܨU2*|v/vCX1*' 'ݛ mz%c5zR Ie'@jj9lKԌЬYsfZ`reZWit)ۯk5Av-%M7VVVV 4ةӹPΝơiaiir ӊf'gHt:fE/;w~m 4ذ~C K& =6$(%&ºs'B@J%("1x@ T\F(|`xHVBjuٺ7S#ըtrQo&5)WvI.Ո8zAzA1hc-{U/ra LM,ڵP $IҲo,"Hej׮]TTTyF(2GР!+o`/FزeJbLn U OHLvʹsW\w>ݘ4M[$BmRƐѡԪeno $oZtox@J3Ic€`fHB T2[mmFVWCnX'x1Usz;i8rfBVh2'[֢ ɶzy!5JNNӷ:ШQc#]޳Gk"eĢVIs̱!.05k<;;ٳgw͚5w5o: }Bov5k{egg'J}}ZmNrWW7ntޝ qfA$?_>dT$<ѣd =6UҸ2z(Ϟ?-[_ C3 LDeG  0=C;b 5S"L  PzM.F(sQ)++2$dF?JQXXبQc??5]Cd/jHְe |,c|(9f͚#F`o 0V]sYL*I5k`[;}ڵk@| 7ĘIs̱#\zcƈݻuܠ#Fy)R*i&SvvxD7;Z ̌~XiQ-O. Zv{(Ju޽uXn9noƌ 2T*ӯHdG4i;ܡP֬^( =ᶵŸ2(I@nlU@Әa0h] gwl"(=yN@ ̌:u6jԸ^zmZ_{qAúhWڵj#CgD~6n=:..󿛯O>1"IǍSYQB1i9zzzDP#z޼Ͽ\run_1t>tS!z5glOvI33 BǎnYb.\pfH``obȐ?tСOCOmm1!+ʣ+Wy>NR/+sv޷~yyy$I{t2x1fKYh1B… |>ܹ~k֬cǟ7nr2I{h*F4"zD+1|]S`keҘ*t6l=ߚkA:x4 3sw3ɩFOͶ /S9b5j]'O\|۫Zys -ߍ6껸FEE,H GbӋn*z|]lh0䯬,?XG=]lM0;eٹs͚U94iԨџ?xz̞}MRYTTi&ݻOUQ|wC!@trɴj!fMQ믫ZjAtLLt'۴iW>z1w `ijd o uX{;YdG-s.{C``ɓ?TaqUQUmVfz9ΡwUka'iLm jV3K;dC*oWxYi4C{%ꫀ?EӀ0,K=~eg&wzCڷӤ0uYBfuYB0˜]YVGnZK9F781Ƙ@ac  @aPoOv2 0ֺ JDbw+oʪuˮ[~$| ?D'} X2{[E!?}=beO2)rU yAޯkV 2Y˖Jzk S'4ԽqDIwn{بSJ%CkM"`КCqulC\1Yz#ÃOԣo?(a30`3hiβSRJ!HDoߧ/⑓>~~p!@`φ 8zDh醍ڹ,G "@|΅ !8vG%7r`\\{;ռpk˾^qmh_gI( OaLa?dlX}||ߺ4K BHL 4hˮ&&ICwvO5ǐ 5Fa8=-5=+YVVzVf~awj_ODRSS/oݾcǎVb<==ʕ+U\aM&Oܱm%jaw IWV24;H9R(D`LcĎ(EE $&@0\ipDH 7(> ըH6a㲥o32RW|33=c:b 5j 1$o2K/.h0W#$"hдc9󬬬ϤRV^FTp7&XzF6F{^F(**:p@dTTfFџd5nQ̟??""B--RRRؿfZ0H??hѢÇ5lР2HF8Os@BxM,0@n);-D $Jb5U%inVcSҘ~|@={u8`{FW0sGۦ_oYg^?[ "y$!aY',-8O 3 ԒƢHB@ >(:rO>/_xQn]UGnwOΘ1Ǐ?~[~E։ 53m||}ˋ"*gJ$۶ G`iLfUisxDؑȞD%[Dj @#`i#i)OKa !LIeχWB<_c#?mڲK3&J^!B9=JJKjFJ ?X]&\&Z0C-%"Wye<}>W!jjժ^ԯ_300px"jX˼2x7sf~y-ϟ?u֖-[̞=~R6@O<sr"""}y$i:6G{yy;{677uP M1 'lSC $ D`hk0͖0 *4_»A w狿3N@^@h4Qʤ{ G//Xlog4E0Vu$XM@D $$H@얊!8{8] j8$Q7d0Pt֝ƠbcH}%!voe@F6?ѿ`ͦM7bWÆ B|>I&)))nݺxRy$enаЩS?ѳsQQT&[zM޽w^TTl2??}  OL%6ovXZzz&Mg^$bX,ѣǎ?w4nYVGV\6~s"_a:uȖ”JX3wܬ,uٳfXB*ꗠS |󍿿ĉ/]FVf9s|||WR*Zd1xeDI/]ݻOlU?'jc=K1^zXa'EgϞ5-W:iv3RBL%9pbop7_YֵKGHL?`k^֠ i0UWoeڅ!,nQLEPi|5+0LL7`=lmӢmcǍ;##ZR8rA>pFƤ]\\$vB)z rrr!H>0X^p xɒ%ꐌ={_۹s:|ɢEz.Y{$qsu }dvr_>4'˗;wEQTK.䌌SHbpX &ODJH >V{UAAR)NIY'Jƞ2҃o[dϼYcukwIDij&4)Q&^tiW_+Ƿ]Y&r3B< 'O,vF^׍Y3/DGAR5k֬[nC 0aD" ӌy+A:zoދ/ן{Kٛ^*v׮]ɏkJ31Pc{QF@ȩSl4$ \\@rr޻o19iqG}[k ( 1@[Qٗ$"-׭, JZoI*6nܸo#A$;0@'!C.^pQ3$0 PoLXqӦ3?xpƌ|WXY W\6l:0hȐ>tì2z6itjlggqcǕz{F{=wu*ͻcǎ Pg뛥1iъPe/?|* 5^Jd},͋Z0bDZ+lUh~ŖRZMY~S'ǎSF[nEFF6,Ԝ t"BJWg3ys_{vvBaMG|ݻmayN$IM?aņD5kC'MlڬH$bqD"8;;[>bĈ;:9J$AXRoڕ+W :Fbk֬x{yD";;!C̝3L̓[pQ`@H$rppr ͻNNl+ rb>F*O9snH J!ouԱ:GƠZZy TXZ9K܌ט"b23te4jܤ,O>ω~y?v<go<5]+\|y4M/^Xi[5jU) In~ԩS+V۬Ԓ "#".Z_5lذu(nQё?#hIm WƱ^mRUXDr6Qk @0O<~XGQLPfNPd'δo;ݺvn|Xv%{GQFG>p eΝ;֭[J(,<짟~@s؊~駜~g2XNfLVnlў6d26z3Rzs]JMLI{>>d֬'0~%g:s?bbbcb٦u+ݮoF3L%.*Y>WmR#k4ꌴZiECe|.ӱ`|f{\\/ 0`ҤI|>x)+sta+۲)wemj(H5:˭m z3&k~`D#F'mQ[}Юi]f4M!*fTlu]6-ox۳wlGuUalTU>2VO8888;(T@ W- mi nq[spppfwwR͛e\F9Ӎs6dA Ơ4[lr3pke['g݄j!_!:NZ-UUX9ei(J%-N"bttyhp~Vzۊ[dJ3GEG$FW.j{p?h*WCs^\z֭̽[jvo5T8">W[;rI64-j3t.F{#S7( 8_dcǾ?|xZ5 7╫W w^qqG.Çбc)k1tmVZ7Fdw-:l:VL_yu2$ʕ+2LR5jڸ%))΄;uPF C>}FÆ __|[m޼9,,|]邏 tssW11 j88>IBe[U簭iVXrl9ku5{kZ*uxڼA2 ӬY;o^v(+i: 4kԨNN5ӧoݑ#G N9i4 +Ç7jԈV^~]ddP(>l%11С7oPTZ/4R'qƨHawͬYg`V8MG MMMaܮ]O?tv͚fϞm͛̚UTTƏo\lffƦM?]r ޽̞e; N8$W(9 lg 2uT TC:i3ɺZ.111[6o(**xq98L"$B u+졑 #f={Djؐ[FYYY^ ?tYհ鳇k:::ԨWB]ggYYG>7l0 0 \ı|63ue2pgY11 ˃uv9r{kƌhnwٺukͼ.]{wtkBQٳ!׮]v횙]ZhD[3JLL7oR\pѰÌ}UP0e\' 5a.̙puHff}{/vvvF_~Hh)SB'NpqqE79d]-%K#$ ς4j],6V)ܱM$x1X"ҋ bn¼'+aʤI>XhQxxEQǏ#QTlM ƌ)*e?9r$V gӧOۏ}{ii]vܹ5''gҺTNHHH$.g 7hܤff3{lWٓΖ]>vvgj@h'1 NJ^eɸ{-Z*gnK3xRo@* TZɮ^->R T[Z4Uyu%8~4rוAtjZڍ7ݗy˗&Lp!AСC0n-9͚6c/j֬2ya:v&-=M^2/O+yN\w YYf;g^Y HԲucz{{֜-_.H6oԁfe=N,{Tv ܣǏ`gϞ=3i{;FDDB;ursYMղ 좯j`a< MUE`Kh?m%B`^᤬䐙 b%Svjq!}&-{E,IM4iڤIn] Srt^oݺtX"}N&Mu%/=)PEӑw;i"Q'lO?{E7J\`@{;{(.. ls?31Wthhᇞ={IҀ@hoѽ{j԰QRrRlll:mh97m\xK0.i7o֭d:͛e4mh֬uvgM Y*_&L7nn6~ҢbB";+<ҕ^7vsssss[n^ -ʭk] MG*JJuEK@ 4jּyBBBTTTݺu yWWC\/deeZF+>ܽw[}|׮1bࠁnSNzTnݹ3o^yψe䨑Eˏ?nXo/X~ݽUukFÏ`!ϳ)V(iiǎ4y9fJbbbbbbB0ehָǂ#D#4۽ګ[[dD"lR0vbP(r9-:֕pwi1u!-]?盯dϞ=͛Ҥqǎ-=9m4Dn#G^p+XibVhkfF1-[]V!WxqcǍ ?>auturАIz1K^ 0y`e˰:m'Ęl_5eVJ+'\$)ٓ@qN|Рy#v=Q[ <nݺ[``V̶moQ ,Dz /_|!5jD۶mst,Y={ΜGGx͛7Ϙ9y@,uǍ?Z9ښѣg~=cMw6.fZ۶mDvvvAC̞ 8sٺuk```ݺuyD.SRk:b5BgIQTNNNAAA:unxut֝^] K3c N:c>3c ӱ-{}_-.]oUKQqso}{J()T[Hkl߀ml5TnZˠM񛌦㹸nٹn: |ll&u;;No_>{, @-͛w-RYTTyfhV57-E*JNSeIWBJWj:Nm֞֔epS}6W_OV1DI׽zy5iĆ9jnëJ񖢤bˤ+{ƌ2 B5޽$N:-\P+\ ubO6:|{'Nh^57-EAA Γ~gpUչwJ-FM|0W//֢y xKR@A8fQqסYUlƴ4Zϕ+ztux7 ͭQ v%2 z*ǻA ChmrkZ}^? l](IT4`h݉crXf\{ 8T4XlQ@L}>lO['^gqppp7 1h9i}]~ +Q0KƴP*.iLE'~-i Nspppf6⤡|~1QU響,͵9888?jIi\uioVӗyd%;k] _qr#X$ [33 0 ƘaLޢE*/*GP8a/[o߽m[ZZUS?کCi_M Smz ViW<2T0 X.WJիWNNNz%H_~9mq8,<>Sfͼz H$t1NL"[l5fo/3+z.ZpСįn~Vd2ٍ7n̹az_[e1EViomHO<)ry(P%>>}C)#Hvc N&'fT fJV(BݠA:ԫWիWIIIwׯP(|#5GӧOOhѢ S)ٷR}{Ξ=СC1-Mew5]tusW j*ȁ$uVk칳3YvV(m m`DvoT/ov#L!0HMdkiuԒ``F$7k5:04RPcHUSW;zCosr@իW̙3nnn) -[ׯ9=J~4}+VP4@:إwS&?J~tȑɓ'Ij֬5kG!.u[7U*U˖-NkWOu|/**-?GFFǫ{;QcМ8R:xٴ4hؠa?1LaÆ(P8|/}i<8(,,,$4tʔ)FT:isJƓgffӖ+W.$8k֬@(EN8Tr&&;wa:*NYVO7_tΞ5K+9nyxt ?qܨQ6 ƒ*m%j{=bD"1 l7݋H&fp#`340 C)R*RED-vYah. 0fFP(;h3̰c$q9%xYp5pyػIRPqq1X&I$PHӴL&ST</33 '=|0}2t5^#  &NZ`ŋ'Od(MpgTG}YcG֭4.]8cYkM'R77n\W'?JN% [6oQ`e1 S׹>2f,G ML3 iK 4f4iٓG ^0fx<@rRTDX'㤡lؼlnSSqzv($\]!D$x_ܞ﹧>yuW{i\WgTM6u4SΝ:@zzVx%\h_~ ͛7gC&״i_~z\B3Ur[vЁ=8EV#7n\Qa޼yTq7lkuܗ/>W:uG 1F 8p׮]ׯ_O<839%`D#ݗ򥻻[htbO:u3..K"ѣǛ~t֭iL֪c EԾ qss_by->|lc֚K}xq) L?m"IAaaZzuWJR*JeAA/ e~~~v󜜜wQ]mMotBzX^x". M)}?DQ^#J$$$;3wwٖM`ãw=s,칧T_ZVTXx'7Vf_rRڥ+oKxZZ3n^/31!%%$)5L,sP$<;cAe+łJKKoݺRXn^c67U[8? FOUQ~~PVQ=:uܩsn߱r 7n|xx̙3svc_9]۶nCk.9cf}4Fۧ`ݶ:3**ZV;nܼ A۷  ̓p#3fhִ)͚69c-m wq\&̟췥+t:>~NoӕoyΘq$w:%oq@bA{|T[jvh@HHLTTA`Bd R!@2\YI񝼼"]!d4!d2MFh0LXNPx $7ӳn"׮];.^Xh$28Pj4t`_ٝ^˃ D[=x{Ӝeقܛ7oC :쫑Fn1U.\oLWXac*Eqqڸ=xh7;BV7ngE8㍛6 ks~Aݨ6V/q"##*"wK7+AAavTTt˖-ۇjժU:Q4+ [ies ׮]q9 c_Ϸȟn@am\]s]n?sXΕ} WѨԚ"°(pDV  8og0O8n(.&d2MRAUjZ*AA'%%_p~S4"#` J1 bZh4*8yq\XXXXXXNNݻ֭OMLZ&=ys/5nQUՙ)s qbʍl)KZ} *}r-FUhUZjAK (!cL0%`"Lh4EQ4 ee%2L_Zb,8P٫T$BF:w`h4Էvxx8B_$%RUݿ_?dz&NlR;I?s̺AAAÇt!֭?Á~EEg۸f+۷oZZ{>.]Ç-Zފj;]3^胹s5l 5-mEÆ `^|Ŷ񡡡۷$'}WWI;v,U o7-^ꙑ;w5vX+Aff˲ \Ν[!qRO?IIWӃqʊQvڕ111!;#O7 O>ͲlR{ Betӝ#V(Aqq3 4y@BIs) u:L,jA)6 (%/jј[\\,IRxxZnZQ$heYyA$I$Sa fw6}!Qѯ10 0IPj˧QՊgEUBZֵlnqO*ڵk!!!LZRa!n->\M+W6m|СCۧ** A]0@x³zxǏ<ح+S3B%%%|G6mڵkWFFB(::_~#F\bWx2<((O>O,ۣgqc9rJ3unݶn :e:uiz ر ] o? O>YS~G'ONJr qjK.IұcGz{ڍ)aJGwp:Vʭsv\BBC<Beyg}N>_дCRν]t1 c<ϲ,q*,󼮰̠֭[~~~OW.,,4 ucyA())Q *Ao49?vJ0W B-#L IDATAϴo~vXGbe  m{mkO+SY !z˲,rԏ&g_#bZ/.\Pje t1aaanl ǷY{?##駟7w^^=/曘11\5Q[!Al^~8zm۶{C$?>3+믿?ʖASFol29eVk(! R D=}OPdfkoD֑JXTl mZȨG;эlaaaS_bg7ϋ^}u樑4nX#G||9٫ҁCLL̓O>qF b㦍O=ԿDC[ `2w+a9z7Z*qv QD$b9W &e8$sUqN/smy~!!Q1ƾJWNV7!ısc*m}Kp+4ˋ5,YiӦK.)gc1>/=`=AIBu P*‹/pZ(JZ%X,FHQ! $cii<0eBt: $L$}q925cl4HXJJX˩D9^L2,ˈa0!Z53g&n~s6StmBU*t ۚJ 6oE+[idjYQ=Z9=׋t]{o@P{m hzvG@_~+* !0DeZ0 Ʋdy 2q,BH$Qj52JU0*!Prj{DQdaj4dYVPJEط_^uRG丄1Fެ{|aY%; !IJZE@^^tfFX.OEb:[SmrXPP{^xEhŎcĹNmr@B|&M $iϏ;ĉ=z_\w߾cdK#K5k {ski4>kV>K&&vF(}j'Θޮ}{VI[lKV26n2bѳid81,Dz,ӏ8eQ뙠JbSkjLeY%dMd t.- \ZmQ ˨_gYif)V2$fMa-dU J@8IFR^e%w&/ /\"0'YVއ*)D) j4j44O9?*vh  -!!QzN3jYց֣VaBqX۔PMCT*@ZcK IRhiU / ϡ$-r?r\8qN ŲDl{}QjBvZ  hiֱ>Z`E,Q'88Xle xK B@+*z*'ob8vsͮggq !E  A9 d]XdJLL,EXRdWi|EnB%a8$ɈcV'JE?^x5BLv7Po-fJM&Ѡ7`@$`yImBQ 1` Fҋ[~6 d1+d2 v#B@ %}pP4ݷ lp*P'!`A8bȲi @ ȔRZ &eU %yJ)&,+Hr1,[+&V?۷1&(˰AZ4V߮jȡK.puÓJ ̪U_'@۲h%rt %މΝ}"##[j5`͛,_c֕q给4++kĉo?~Xip<ץsA)m9|>}rĈYf :$:*k g)XUwoZ {*2~D %tyywL&9PJ(tyyF &cnn=t;7Pc KzdR*cpo=umTlJEnz3zN1(W{ƍ.[ W_}ҥK;,_~[n+HX=ֵf__W/r~~W|#,Iyyyyyy'NX~ݢE4iR Ivv7|4k̞=<ǃR(LH8k+ʂ;w$K7"%!& $QјwGaQ+t,B*@(tEEJKE v%sAzV]cڕ[!GyT"!`#X5ЄHS \Jd J9f җG078ʫ0 [$ȰQ'1DI`rOz2߳JnYgL~ʕ1cءcXXqNvsQS,CAnn2,7'M+,| dGsE1??ٳׯOOO6m68R:"//o%ƌYOyܹ˞{&rHHH ً,5娤JEI㲲R*"JCMOi\/6Dш1Vl^/Ir&tZ˒d> *nzď"ν)*ukN[Dl=mN0$Em)ԤԸrZd/OˁE2 &;,]eYFLWSΟhR~3xc[!V\A-.pfTMz'v ]v[>ZSc)v=락{ŭ_zj3G_~ogrm\AAbccccc>;zK![Dž;bᄑV-[9}z--mɥsfNJJr! DDDDDDZZږ-=ܸJw }72"g1+iܵs޽O%r"rR"2F)=OCkB,ˈeX!S,1$QQBJbʩXΕmԧf)8+wo9)H[R9,,oE%;R^6M)P ʉeExe`xTkDQFaI@FM>z)RMD'2{ Ͽ`dN!W^9{NZZjZZcǗ-[f8Λl4UXxa*|ٶNTϧsE)3gݻw3k;gieUZl~? 6p|tISw]U ZܸqoǪtrkײάkب!rxŧ7m4V͛7}[lٱc̎9(#5u-[TNY|:Wp]?ݻ"""'OߦZNvmه?wnݺu&+Wi][S\KKڵk9>8i$K/i׮m{bEV- 3#`uQbƎ_Skkޖ^8TWh z߀,+m;3Rh۶mTTtDDI5jܧof͚ɲ0ƄҩSgJ!bppH> !w9>""˲bS`@ЩsڵkDaq X&AIIHwtZ7ԗN3 'DY(?[ZfȲYF!Q[RTըɖ];0F&Ѩs*K<8((Ǐm߲e˅ :)Ӛ6m ͛51}i-`Wԩc>w fdd=U+R(+-lw 3P tӻt9v՚3ǧc~,ˮ]y*JR)v0 #I((Jd2ʅdRI#}(ay7v{%-BHoqIi$]A%Cch\`2t%:Q4ٶ%EΝǓ'O={f߾YX͌c'xYYYIqGSZZחа~'Nп.tIP[<\Ǜ\1xTuy֓斖%c@Bׄ9g3kK'~чyTw6DW/i՟˒3ݷ󗖔@Hp {¼gdj1ݗE*GSRfA@B,ψn#LEQRb RP\ ò PB,?َOpࡵ]R+bbb-X,*<+/\Xb!D1%IX,0QQQ4ǧmGOԨuoDsZ}XѤ60U4UnG5dȐT[߀));#gϜqc4tŞv\>d)yw>˖Λ3ו`>f͚Ν:v^zYo9rbb*IHab:U^˗/_PU#l_?777;'QI@Ϟ=ߒyO4ie͚5uh4 ԩHe#Ⱦ}ԷyX hi &U5+`L0A5,Ӕ`BXm_!b6X!P&XbdV=M&S)2Ot .`5OppO#GlѢ͛7-/++EQqhW j®j?Bڵk֏e]v3\2^yIwWBT:MccLj6suiO>d-(G~; ʋYbBBzzŋgϞݨQ+W.ZĎ&66+u0!Nޢŋv}+[ݳW^={p*nիcǍ3fLBC1999)gSO?}|`Nuŋ@߾}l-Ϝo?u { Θ>^ ߾}L;g[W}ǏKE~}FޟP@b i|ZJxW ƎHɪU~ѩ{'Nݧ8rs'YwK6m-%K [li-ӻϦMEK̟\a^zΝ{칚Z\\|dddVчnڼyݙ~}x 7CvxeJirrrII]Zjd:OS_y[b?lpNcYNdd6 x7{Vر$YaDѴrӧڷ}Rׯߵkh4$;v4WݘNa.qczpbKO .mk01eիGJJ u1qFݺ13#׎PL7nկLmP` &h4dg6h@ׯ] RJJKaL\ZZVV? uL#=# BU>rr1Lx+t6 "#B1)H9wԣG7Κ;?0O'ݒoro^̪TD;f222F5wΜ={>hY̚aÆhѼ n> u`Z4* M SJCu%JXHXxI!#BHhB%YLDgvrx!7@1l" YXkUh!VMmH B{&ӮJNl*XT …ُl_ Yotw'7;fY!((PzA`>M 4*/bbb͛JzO>WC{f[MgC? /+).L&dj}m@9+٠Ef}%7;*]lF-cN `,K2їPBKzU'&u5!dzFC[^xXʎ\2&bA,˰b9òǰ,b@fXvsToY"X&2Y&XC*'4W=x^xq`Vi8M( D&1FBHBfŬ!+F(EɶڎѴ墼= \R/_U2@ƴyTtwT/^xRPQۨr/_i-]:\.Uբ>N<emF#J}ƾ Ǣc{&" /2zO_ѻK* h aTivwU 7ٷ@X;t YVfvup=EbY3u +W=UX67<ڱV4\'NjߤI*2 )RRf{ u[Cot/;~kzE5ajw75'ϻWa)<ܺ6#D\MQ U75[>oŁG r ;|[d/b~~g3ojC@@@wߠEӭXb]֭')5NI0a„訒gߺAKKu%mEKI`hӯm۰;8cXLA=&jEBAl 0Uȡ۶Zhwn߾pޭ[`Qjc}3NB@8`MlʋK=S Aճ_KKƍg%عsO?j4j}ѾLz}xABHv&M<\ ڶQwڵdɒjCƏ_NPPДSvܕv'a_vN)mP'Չv?3KKK'L?j(lW~we{1e>}BE'jEFf&֛~~~+W^vdyz{v^r<}Y^x`(>,pҀwtY_]OF˔n:sozxO*ngDнyQ3P A*gzCɭdAnF!hӣה264,# T{"Np*"cd@Ќmѣ{c3OOx\gkHD xg^~R~햘x߬4a<\KIIIT*վ{O'̙3O< ξ#{EU"&y žz{j\]QaPpi"; z29Zj  ~]wEDD{;_]ۢe7n[v7?_W^WNѣg/X{`o[寿Ǝ&??Ӧ{>|/_X[|94_퉓'}||^{۷ؿO?햘ho͜9S&d9v Q6՟߸Ye]bܘ 1b;fڵK*dRӖdeyǖ' r"txAZ?mNJاMK_a2`pcc7Vy99GgbY)1lOu4Nl=0W/_ A#o@dX3?a˜Ci~sڧߣm[ժSgZv1>{'/z4tmėE>,Eܪ) COti?፷$Eӯmٰb{;YC{Zt3,ܡX CB bS D"Ĥ^m)jѩK'G6n݆Wlx  _:$tx;&Lݴ#58()0[^{}$hw[>Y#۩ucFS/?~oY 1-CZۼY |1W4Ƹ[,*_|Kk>_Cdyyy~]{%Jyt9oܧ *ώ9f`)h%˲7,_oSYUNfAXlm΍R xGoX:oP\\ VkwɱغU+u6֭lQM7ڹ+33h21_#\(Ȫ*ZnԸѨ#,eff@ly,^E";;ZGʮ">>>>>c_X❷񄧇;:GO_^<(P%m1Y 7u8rX1)@GM88;+_ױ]͞{|ع =оOlݹw߹cV(4rtJfMګ]vmfϘVR\ܺCAO?c"T`4yy=Z5Ѽ ؘBjպO$jS#5lhEJe‡Զ GD qgՀ63yO}ӯ[8p0re#FPVvԳu|Ⱦ22{vM~rxÓze;qCG5`*#BÞз z yXH(:0$Avh cP" Ч[{gto8_w36οV.:]ʎ}L7K].{7J.MIhsUV)M$Ɏe٪r>rÇɪENxΝjfWY/[?!OeVTp*RUxŃd8XG/]^_x 88W.;"v;ӦPB>-]}PXeޔ,@`ќ{~3G_w z -f:q\cNCz̺x.E`е >?O?r%mE/*mXԍ U1ed6]z̜ /t҄`9;ڦݸpnI<3^6oNҀA۴1bWP?}Q1,7fޛ3όtvG[D@i߼|Ǻ{Kv,0P I9{oXEtV-}^!%C~%2>0_|%tdvx֫W׭s?lJr,DFF8)˹stQUI*t11io'\S&Og͚%mDDDFFƹ۷3Ν;g]u_ee{E^xø{V,#Č45=Ǖ#x??uLFՍ{pȗe|YƇeT Rv`? e?I>bbc%JeTiXƇeծ)ɧEWϜ;LKU1eĢB`J10İJ)(ϠӧO~ih>lA9oԴ^ eO۾^pIrrr~q=wڵ{Lyأ3~۹cQ333m6~x[&K,tY/^xRId2 AȾu>J ,Y}bI.\<ɓ&a͟m6O*vŋ/_,˗,YbKZ‹/lݺ5==]EI\2klgvޓ-‹ 0 ggJ%*A{ֻキ|G=EdƕcYPJ) 1jW$G< TJ;d4(z]`Lu !A Mc/GOeT,c%s϶S{ʐEbB~=7=qt  54dPi~v9qQ QqEvQU8F R [ۥ)go8 v=iȩ?nXㆥCGNn芕cUZ,X`d2hWlnnDz/cxxبQ#:uxС^,=n~Ç;vӧu' XELFO<ȑOܵ3++矷deeYž.qv7NQ)[/PK=9Y:5?y~۳BJXk!5شIfM5ڬIM6k"]uپ[LO "`,0֟ʦ+BxKB57.,=5)3H -r ֗W1oe@B$;. qP3cZNhڷc;+O[Ro\5cǞ u;. ovық 6D{W=Xb{l1 FQ4"`D<8P;훹7sMbwFiؚؚk16j\V0h;zJQa0r z*www+W$Lͬ{6nS'}7k᚟~ݷ'6$Wq칻V.;{+Kmw %7iizߧ&<~;hH$'͚sڌI;uq>css۩6 t#pAxIp9!S"4I4W".qJѰG Q򳳁-ڴdm>))ǎR'og[~GϜwr(.BM-_䑄gT8[wflދHbT "t$ t:"!lYQX1U߿L{דu-zeVe)Cf+HJ*07nڽk׮Ǐض`0_5UcƩh;lճ$"XڟSP IDATq+~TYXLyW-3S"]8ӡ^n{kNLDvХ[-_, XIlT93CYXZddfUsۈוG6W,A= 4@N[wP.JO?FE>skvy>EGuq*O[!V?%IQ12-"ZeU6zהǀy݌i۵o/"""; Nr^ HiZJIY=ikbUM~/Yql8lk'[[=fR$;33.kAI,^0r#G[h!J?| 7,?jڌFXhAtFZ g K_!D"4uK$ۿv} "d6k=U:kʭnj#:3"Y‚^0LڱtӜGhB*>}sgvIiڮX, ua"H6Et,ʟ*!:ݪ7e-̛@Ƈcазo~ #*$h4HEp_ ѻ糇 %4-haulHBElBbQLN*EȢb2Y-eB lq K @Tm@L"- hE15sc<`H"WQG"HߔUkVCb "H)Ek#@$AH% A(՝qHBHtE#,4X/@$<3|)]Y]F RJ!BFU@4pYZS}n$1Q̙3kMʍ`>$tcRJ]>3)/Q5$4o 4 @D Ōvqf! " @$I-ʬ&@p7)G$BU?/" fV@"9-*VBHT]Q8r%uF}Z6 I)j.Y 6A$չ l,Q4%@|`"XUp`\ M A+ yfD" Z'zӧO>}> vh h) ,-pYgHךP*Q BUf mLhT% HեA2>@rkBD! ՕUa`.Fo1b&jܟl2 $A#Tu l@$I3`U2ocb!D}>`>KH];F2R|B4XV$r5Wu[@Cm *Y n*~Ud~qd8Og׊zqSn =Y3ByY"xw G$zʹ57/eqn`0 &qM3Bōړ%!|R:EQ4MS%cZ`0_4Uhp,-,)«Wf䝴R(D"Hd`0B gldT^^^ZZ/' )Gj? xh@lȨ1 Tmq+¢{h `>()@3;b0MOWoϧi'ʼn'.^D}yGA,Zo'?=_)( #-|0W?-&$--S> ˜2̏m -2DiZ.xzM [n짿`:}JSS6ӴWSS;u6 Dr; C3" ۇ{4̗ӧO@`@AAǶ˄ٹ U(h1'''O?M| ׮-//_p3n߾}M;MMMF;~x`PPEEŝY9<董,A>rͪPUTsȑ;wHkiӧM/..:/.w^fX, ɮ,x̸qE]rE___f@ 3v,ͺz*RѪZ@@?EQ򅯲;bV,_^bC\l[v dwQҷʫR|9?utpHH~~ء$I}{n\'5zg夭@BF `>$52Un*GEnH,^O#Gts+q|ddɓ'7[5,,۷ Pn`h0qiz۶hV|aU~ĉLMy?}ٳ猌ǎ"hdu޽ˡC:&O,///6u*Rݪ:ShӦdђyy̩wqq|y>FR޷5t-O!߹{WP`s,H=m۶eN)@bi)/ ں[n \pyڌPx]`U˝еkJ(jVQFy{{ٽ綏OHpSX[HM={|G  Rذb@@ĉ֭[LUA+/(|}Ƴڳ |ɍތ%8---7~~~~[nԌ1cF۷_zF LyRSHVq>//?  SRڀ}^̼0wQodpXrAA񧓣#sRRUo&Fuu4jRt\FQљnyyy{=jǏA9 0S@A]qF$;y\~oOSSbo~]zMl5kטY3g˗/r5UWvZKKK.ݷ3R$5`_?Xzufnnٳ/Ә*O=MJJܥ{Ly@~4L Zcl6sNkV>ogԈZT C|7ߴ߹s's/(,T![pŪQR;BIHRaprY%E9"Q >ߘhpX{z&ϳH$Ϗ9}Tjjŋ^X1M-wPADKKKNk,Ќ keҹ3Sϫ)#jۭk:[l@ hfu> Cú^%|>9HOC9@zF:s:z'N~k0jĈZUWgD>j,;;lmld%6]m ot-UVz[O!_zmnN673۹cgmH}j7aVW,pyy92+RX) KJq/Ϳ P@Qu֕fsLMF}Ŷ^8A^sۭ{G:KYYM7۷w+V̒ X[[[[[N#""/^ҷo_;;o{b+6_߳gOrY1<=o~DqɮLBf| E ׯ_֎BFq[X]ǪkVy,=b0OteejU])n^Cqd;C޻OWٽgɆYYa.@3=UbV!pyfGG YlD$&X,@,K *\l JMMm~\`Biz?߼uS&gBs|?˾?~|ewYq||E ϝs?7n @piC#S܎ u.{‚ 6*Ӳ!u +8|-[6@˖-Ν=۪UFYwW )ɑiU`iaɜ0aJ >?b55Uyy999iiiqzdJWi#ad̍h*}+O-U§upoF~9ӷ9v BHh%R*<>s﹨rH(T*J _c  bG?,mw iiUʮ\rM33ÇG^pѶk䔔S%_199|ttynn3gjŠ/^7t0D?({{{߻wׯנV|%LymmnڴXZ +xchI&._L*n߱ڵk0~xXf-ܼ73+k~_nw58(xeixXX#bʨS}ݽw='G' &6$IB  4@ʝƔV"_Ƨ"&H䱹MK|u^u2!:Z2ᬄ e~MVT3!{ ǵ揕JnܸR4Fr\~3 (PQ^ն뜹s{xT(P=nf2e >z/\W?z\TTDa4yNsS(p8u?#=!dna1e$WWQG1!k "##b1cΉ>z$::8::.[t˻P+ز2`wQoeR|cG/*  8{,ő6k(@>>>yyJH$䐄"Dr\.[WG@@W]KVT1!luukFX@||BU?Z[[;={)ىΨ?[+!zp~s,YRӰLڐ}1/:{tL%/ODb``8o޼NNi=Q>omusm4!Anpwض|iXh2g(D732lM컉el5JLJDvl.-uO _@֭?yrmFiU۷k]v g߯FEE}AtXxX``YАF1S&Ox ;/L=tӂOw\-mms [YetKJ*WC1eaL_Յb8???&&ԩRSS'On)l^dK7oNQԫW|*]vٳoILLܵs'8V#p'++豣*ITtTHp0ɥ%%RiSC,Zl3i̗'> _:Lx%X,K*ZYYthuG)E-9Cz4lD f&Y~e23vlbR 6nܠ\UVO&;522={vM~+VTQ;1C-**{E]7hTjWB<B55FlbnF rm۶st?r(uuu<`%B$-ͻ1zy]v??0 @,{5.޼y B(,},YܬYvO|^4 8p DXw5q̐q4(XL# @ Hgt=*}K.:|Ȟ{9{ +h׶܏u)aX,n׶{t^1V][^^p}w·y5Ϙ>ׯ{?O~. ;MMͺSemG cbbbbb<` $'s̑AAwBB@,{zygdddWW%_!El2,WGfXNNN+/WP~_H4xJ*}5s֬m.C${6ÑoQ 複?)sȑ;wHkiӧM/..:/.w^fCUoCu70 p泀h 2'mkkqq8ʇ@$M(kǶ1v5慦KAP*PBbIcbî]F~'M\]rLGV۷o_S׭~iԨQ4Nȑ#ܶʮfeey?yI ZmڴUnx9goذݻ2'ͰmkXXT$\c\|$99999ݻ:$MVNhhӤG[[VJJJ-YϜz{{ {_ӡC II]v+++{H)//LzDQT.-cwBC@ {L0Sm۶);«p)g3fEUSm۶QQIдlSsZ %T*JJJQA0_/(VsK*K+K+sJ+*2xᢅΟ(Ulgt﷚ P <Z,buOI @"G?'NlXfqNO  +H$_Nhڵk%mۨQ굹њ}|MLLs'$8S]_={{$*X@zFByG16K^qqZZZnn[nݢ%_15廻{uwyyfffL=%%U^@$(Ԍ $b@@ĉ֭[t@ ƌΟ 'YL"H(DbX,e"D,$RP P(DS"EFDݷw̘1Ohcǎ=ħ$IvV-[1zzz )֭Z3z|6:En_8LR' APQ'$4x`v}p83SSѦnϞ]xq27O& Bc#AΛ?OSSh EQ|>׏yVZn+G 1}콝-۷/ߟ޽zZT^ ,,l߾$=kٳf޳'N(˝8q’KC])ݻIB@42m^_OT( %E ׯ_+Q%5hJ!H꺤_^^Jv\|<XZX(z~"hhhigϓigվ]kU? 5.y:eeLOAw|8VXVYT.Ź9ښf&%| i=JMMm?Z*<rx˖- \\\B+ Lʋe˖IIIΞmժ iպu^^~NNNNZ >sz\2%992"R~?<",-,%{?SScْiZZZ* g.\@QeU~_40 1_U" +|u!.()o~Q%IjUR]@ZZszWnݺijj/CCâϟ`kkrϿhO7nx+t7N Ƹ{xhkkٳ'<<"<!~2vu[+vZh9SCC3ץvi~YY*ٿz21"M6d^֭S ň}TbbcIta>>h  ښ"R(D9_fh.-{+ mXwǏ?|7,^^ cnjU]C:X9y N7snmfzڥ啉Y.fV ʴyFu5Ը\6f:guj fV5,KXXzQQː!ޕ..ϟ4QE1zD_|}\ݻdwV;@ЧOosZ[F֪.}_6mTE4tLL˗$ܹs  :HOO۶9 p`7RSf~ o޺ݢF!Eːc'Rf#I T̜RT%ibIs=#}mA|>?~֭[?yҥmڴqqS+++nj+UE_aRM||,Z '-Z494 H.X4M 6j @Ra5.6l!:W2tibbrAY&c$>MxMiggaaߵbq-lR+AiC>xv=zL;V-[}+h֬Yܢ& 5Vz:~exj0`C Fd$-Q+IמD'H()igI@EYɣR@aջm۶#FWiZ''˗.%$$$inn޽{QFq=rƌpGU4T8ɓyu'KaæOfՖv??(0H,k::5*p]% 2V k׮.--ih7Z^z:99DB$MvM a )& PkMRT"]Vh@b,T5ېJcYGQMI%D*'WI`86}8fx\OZP%{ c0 f1+'`0 #p̬ g | hOa0 K!iP/ `KvaUOHպ+?0 Ӕ1 Ԡ |ݱ&<[%׽C٫:uc4TJ` M. MdsU)e)ejۜ"L"A\{ZZ5==ttt"//?8(x!$I*\W'G۾YYffPR\6x[>>̆f' `ɒ͚5`0 teNGbdouOq4>b\D, ^A7sފcVE111111q0 R9s0WbFFXXXLvu+-3{zXlXee9<董,A&AMe 뒯I@?EQ֪4kr׽'?FN}rÇ}ϼsmX<|N~T%K bqm͟ߣ{wYYYG&Iiӊe(Wy?TQQq'$w8uR}}|B mHT{d$ Ib$" b" RMK#.2?>K}y<ޜٳ7lp]ID+_grrrrrݻw9tHIymnaaФIL`wBC@ {L0Am 6mڪp%4mv_?_YIVV󑑑'OPR[FF||Ι6665ʕ+e=Zj޾}{y%=zIqE 7o4[ݶ>Sm(1!|'-JKJTtA \pa{0u}{>|qw|P|\tbB(2>R9D̡%$J" 6z]򊋏rsu-MXO//%zRS_ǟAA񇉉i^^@AAŀ'[066yܖ))x{{ٽ綏OHpSX[HM={ÆzG/RSZo&NO  +H$_PQJ{x1ǟTo`GɆ\o7b0 4i/}YZYy%Sy*N:##}ԩ)).H$O=9sw'IګS3%"D V |/DRhL5dnNaAqikii@eeգkV4pA\#)ѳjժ;N;Y #ޚL^v9˝5s|Ra /**\~:l߶&j߾v77 a[׽aj۹}Gvl5%=zXx8Z8:vjժ5p5ݻwc߼Ca  Bt4M?MIO*bSF:egf7kOx@|iiVVѣGfbqvvvll oLRRR%7C=Tg3YibqHfqyMKz&ʹ-h/`n KJKKAνe1 =#][ٱMW[~%/Ъe+@OOr*5Ơc)))0orj'^s3.ցAA!kk332RoFF@(d _z6rm>5ж[[>D@hޭ*^$e6#LxyhkW672|4=$vFO^reZZ˖-Ϟ=+VeX[nݺIo%{oڷ_hQϞ=eWuwٿ_``͞9Y3gٻ7,4N0~u7n޸zӧOB@g2?+++?{@``^^.ܹiS7Kd.]:x -[V/3PWeۮ~dˀH"tԛikrHZO'K F6FejK^__///cԕLgI$U46lOB6V_OTT.+*V r`>)H$ SFoފeffs[CCc_tD"w޽{bcc+DCCz{{ӉBӴef&ZDe?)CBbBj&lP-N9{fJ,,-S##"8GUq?SS%V[伻nٲeRRҹg[j8 ·fj`.ossիFeeː!W^$===C=&ߥ90QQW&IX&\H%b#SKD 6Ez}۾333Λ'̔MKcbcItc>She9Ee9Y::t5f&g*SPluM.W ?MiԠ^ZZZ^V[N(&j>{Ry7oM^׈ɔM[Z" } }m- 7lظ!,,4,,?~ؿovtLYi͜s{x¨{E Ԅ4ñ IDATo\"feeXp8Asݝhn޾СCСP.;o>8Һ Dv9|=V]E^$H ̙SXT䘖TEQf::Zg/i aHOO۶9 p|jܸqs]]v=~ػ  ޼uEӇb0 -CBB&OMJH/WFq*)-34442hxS).,|cތMjw){~Jr?7޽o߾LhI֭[?yӫM6ux<'GG'GǙ3g ~)M|4nee5s^KC:^y,--L|v~^7cvۋDcǎ;xk)Cc>ch۷jP[$A>$}ӧǶAVHO\{7Oc@U#HiN^c QYMԗT ,٩cV$Ш= @c0z!IC.-`0 +25ݻwWQ2&&`0 3 4v 4M1 4w`0 Ѡ`0 $k02䷪dO#77_٫k}u'>~ۯg U#UaE6].Ti#sR %۴Pky̬eK}[&.zzn߾]VRWB֦h^?['ΈwI[ܶ5zwQ 60_+lz\oIOO_lYAA+'N~c:}JSS*M/ygâ:~]:"M]A bObOb$Ƃ BK"vhAiKG@TDiqY`a]vfg}sϜ9gܙ93Cݽ&Hh4쐡 ts:4GmP: uOWus^ⅇ޲yˌӻD ˜:e Hlu]_""#++*LLMNHHl>dq㢣׭[k``inC(JW‚OOm$I{QQǎmnnNMrΝg԰TA/?aHKO|#QP(пUFSUYy$syk#""BBB :-]TSSS-B0(8(*^YY/\@zrBI3D9r$.>H"-^o%'%SԯU?H*Ui^Z{dp)K5cwWX"p3/*2200dRh/fZGi%+^QQq2Ddž<6222&:fGw%ˠ(HXH55t2zhNi nϡoⶴ޽ kG=11I}쎍yݡDoTgN5ֲX5P6^V-;vGFEJS***^r) ^kJZ)^^)$H*:`Ĥ׿'N416|ʳg]tgO㯾R󺰪exZ10lmm{ _|9 666JF) \bhd8o\֬ P1@Zz:Hw;l @(ljjDb4↺iJxׯ_];99}?~>|дŖOW>?  9ʌUs2)1 "#"gϜu~s.瘱M$]'vk,V3gO.,|Ȩ^Ld?wnEŗ.]*i0FpVv{QQoߦ԰D҆W^pBؽwȦܹI, Z‚B06)kG3AӦVWUee=|qQqԩS_Y{l.{@e5(Tf&(X(&Drefh4p+bXUYy٢E234"gA˖-"g:EFFލt5 :]&QldvAAAOr hk..d&MQv &z{{>ff4*uwŋdOLJM@T"coqFY---hjҷVs"Fpݻw^(H$C ]dDlj-\ӧcbbYT*u!_ s㯿Ι3gA{zA ]r&8m۾uu`-/CR+=3v'=-aؘ='N+z{I J[4t )lZ}}=d1mޜ1Mj5ƶ*=>̜&0S,6@G" $"J>ȨekpP@MIh`c~P_~MYrrr<< z_b2Ossŭ[2Lx.^0ipE"gjj4%3Af惌~~ݓOKkjhP;wԿzd2El2m0(]W/;wnxUfQ<>^ 8::8::,^h_(󳷷hiiq2EĤ$+;~,%aNKK˼˗.YYYXtr¢ %9eےB@EQE]5nj}Y7ҝ[O4؅BOJgիWiiiΣGvGc)99o w/>gPPU6'H$ vv"ݻкlPj/EE`g7Z2m<{S)))ʕ)))wuw"._nQXTtŔ .d.]$+P[[?'&&a QhSSS Ưz޽;;;@||<ť\xqO̧ynݦ??yk1}}|8͞9٭ݧ\tWqwZz:r@$@P)JUees9LpOE"ѓsf,X,eeeo^> x<'#ZC7 VYz7U5)??.to`0 (U<;'ajN;FAvVvii D"qz^ Ĭ Ѽ44s8Վ۲EQ}a=l*͛ Cݲ =ʕ+e+ds.lٲeڛPÇ~uuuJrrmg7zĈP߯/l,k޽֯o_3if͚:JOٳ7q/pt|k2~eS`}\|-V}u/b UUR3?_7wa7$'dd7t#6XzknnjIn'Oz)WxkOc'/ZmDdDyy+8 3H$(m|~geeGZXXp[Z A>OR-y.n`іFcc#IW*jiXa7leX,絰ᥥ%ҘAU6PQQ!+з#==}aiEii 89;-[~3gΘ߿ |z464 6|׮^i E*}_-͝+?g޽cڒ;gN vhH(mԀqݼa3cdϾdlj7xxL:UKGGı㇏x@P<֯U ^^'DS#GNkcޱP( uA3s)_E BfffSSSvUMUmdd윒" ;ZkOc'O xef>w4hХK>vYYnDF}=TR\,a̵= 㢴t%;98o[>,ܹ{nc=Xۮ^bnnU}nX;{J{k``P]]MHeL$ 6Z 1^gg7~mc-ڽkgE܇;uCPA%{yY\|) ^Zi4D'K.:uej>aPMNIg0{^ݲ&UҲlta88 [6/vkk@G@k~#_-t$D,Kx|.['*c̙378Ɠ'O~+V 6`սJLLP>lBR(ʊ'w۷sNkk뼼}cGGM>g 'Nd0yyy.]

ފ3/: u [D"<B8p &DnKFc6id`I^ޓ@yӓH> *|Lpp.=(u#HA߾@t7m@˧c)t:}@+{zuZܧOQ\ 1a8mԥKt&hVV̟6[ Pq>)\nvNvo{d~;ɷ)caUUϟ/**ڵsgW$7v?X2uʔwVC7qp(ݍM(*KBDQD @ H]CCBLq=۲O˗_|Yqqccbjhh0ii]hC[` 5kn/&(tM1*8zLbh\gOF.7oV "mlPq4uYPX؅j\nDT,Yx=_dS##"nj۶EGG[ZY]x;JE%}W\T>}۶*TZvڐEDK;Zt&v1<|0'HFի‚oy# rժѣFI[7oE(:x௿Y0AK*+~4==D"9;;{nؠkYMUqu^TԱcbbcߌtm׎c< Hb!P8b* EwKCHeKVm ˜B&Lz-͜Ɓ"qs3 ~|?}Ǎ7ԩO򰯛bbb\]] :&{:CP()MzZJJʩS444~;gy/\֖%~ӧ@$ʎj<(R+.65H$ o5*3f̘1ce\t+=belr`&=L F O%@ IDATBP >e= JRSSKmmۼΝ?#vyuoXLJǏݘ dqLs ^T\|[C/Ξ9ˌ=sL^&,V͕+W|9fl߷vsuD׮`׍ii c?߽s{ԩXr53Ӆ;`MOT_uGeQ8݁F'ƺ*PMc4S(%Z=4 8zFXvFvw$?Z`""]N_muY[DE%--F mIw=ƈ.ihlnϹgA"իGJ$@"S(Np߻*ik V[h/Z.PT.+G ,]VlݺuiiiϟXʡh+W000U+八ePYY%K,GFD޼տ.++GGG*-Th+7UJ[lme'NPHD#7t4 VbP-Х-X"5j'2fif1ܿ_LL,J˯֬]'IioϟF='|{` &wh8_7:8{׫9K" J 'B$|6M&-,z51(HuѾ(qа֊ ,]VAs[Z9]v ($)1Q $&$ڹ~9}[JjV$sH?q"((*d, 6C}iJ4i@+AL)CbIZ\JxMF2fnR9پm]thm (u불piJEE+Ν;'o'_?g44Tݻw_nPT왛n4hji5nK o``OPkni&b2w~ 449%YH'$o(?iÆ 5N>~pN(.n{;""@@@LLLrrKQTTtd>ĉVݶSY=sۺu';X4oӤ`KnsA?> 캠܉HHlb_H>+˗ Q-/\иgX&S}̛7OO{62g bb@PVVvիW=T$= 8x&W0fJP*+/{w)xΝB'[lQlt\.P7=i[174r+YSMm*pY *"IHj-u|U)֬E]Xk7o635˿~Q\ZFwA==}xJ }[lmmU?sÆ ]bŵW|~F;{{u2ɧkj~S 0RCs.^^[[ۣGS~򀃁 aÇKn>;p0pja7z3 ܽ{7xyz9:N<~R__O$MMLF9mtٌ[vqBn I Hjj*Lv8qǔSwI$R```eaРA_ǎ>z$#BqrrX~{asQn:Yu88b$HxxsEY#"?EDO2C)JB j<6^m_[DS4Uv)'ʮfi&)K:S}ӓ.7deeH$244Zl٩}Y?4,]jܳ͛7߷-q>qqq JPEuuu,^-5E$&bOr41Ph<QB TBw AVAHlee?];TYޞ ESRS F޽~fo: /Y'NС޷98888>q7E!*"߫zY8*bRA5e؎2`k@vhikL b)ܽ[H, %ϊ+RNqhsu'1A,DںW@H$ۂb[`ZDB`h4F">ۈχOQ"5T*gOÞ=$7qH{b/gr^דҪ;$t7+`el{$H%X(|FGD A"y`sҨKpp:ÉӦNkoxA;cʼ188]ގc88 9%?l4 13OY{+#A{8ACCyH #"#ׯ]ӣG5|-ʧλ%HTO[%G "BfV^EY,;xqppp>rItl6L&/"Cy(>CCCJN GEF2L YWmIrϝ;όaQ_0 3´7r\jQ彨< ar[lݶ-::ŋ(."۶mUR   H$e? -TR---f2$zRZ88#@H$@тB224~ۄ;RSS;)*0m$2wEX\iQʪ^G~?nO<>+F]{vb2"(=##=#CPgNIаfZf׷MEE111]\Tdll]Ƭ,iJAAAAAAjjꡃJPY~;gy/\Xq88* % AFvSSc蘨Ԭ9d۷e߿/ 8]N޽F"I=Db=NBSÄ@hjCGt@s]]]Py@XX^^^سg:;9L/)1`_]ϟ?njnn"ڵ?;o[k,V3gO.,,nWAy ;;ܹa4556OA%~/*^T۴45333eegΜ˄ŪrjT!J[ƔԔ䤌g`UkZF700p8uʣhwܕMmAU޻ %3z~"᪖ZZ:1Z:::暚W^Z>>ff4*uwŋXO$ֻvRgNd2p&x(^BJOLJooCx{,g.))*--]xш#ګ'2lFtd7@TdT{IQYR ആ( ΜtA~3tu&O-,zPYRuEȨmKqqq 0156;>>}ݻa] NԤv_M"eGSBD k9~< yyy  .3, l5þlپ/9%99%fv׿B%b8(882"cuje+ͮ_ݧL9yd]xxO?qssspt;wޱߏq8 TUV:;;ڽ*w~ZFo777''UVg(7o͜1СbX\}lX>i~VǍ{Otեh111ZB$7ٻg… +*ۖ'N?~< _BH(l1+](FPfkj9jfu,쾪@#x444 EhjU4`Z樳([ccw\A!!zشYʔ M[fv&\{<⅋={j6(}_Dd4oEEWSϞ9D!o_)s4ѣG^^cF*u/r{wkjiR԰|}}${w[ZZ񇓧N( y x<YxѢY_|( (]cL??{{{ )S,e[ʘdegۏd?̒뱡¢BԴaÆښSN:Oy`naQXP2?B-T^88%Ih4=Mr#G(laś/+um[f>gsI-M-* 2mڴ>zhڴi~:@jJ(~UWd~s.BM $CBB""#z2ٿoĄ 0|𢢢/+WX,ٹs8{H.\.^_B|6Y$]̝3gmڹ ӧ9F377_rzzYُC֝a&trH$b6<|P:RBR(}w_8LpOE"ѓdz/]Z D݋JHHpB=cLWd7-EGGdJT)PeUȺp Lָ:LU-@@5)5u=Žr.] +1wҪmlldh1T9cwv1}zx>7-]z---R_{6ڵsAXֻv5k$$$Ϧ!СC襰\=vcFFF>Qr:45͚5l555k~ZCP{NW|AN|7|~ˣ':F~o_]0cߌd$%&߼e3"KeѢoEWTa0RVfϞ=q7GǷCO$ ? 9RGW- +aI)9ٿnMVfJUnʪR>.^HIq88'$"]WWWFH ?NJh5M) QAZeFYnj$^jff>|AFajjeިG߾WtuH `J_H@bzȲRiDZ+%Y>4 |ŊkWc۱O>} @$ ILnsogy&~2>lpz~2O@!33 G Hjj*Lv8qǔStYtttN;~葌 c2s̩a  e64 .}6988ӼwoBJP( uA3s)_@&8BUuoG~?/ FoX/F&@pgy;}FJ|}Uyh$|Vy]O |._~c4v8x3.}{/[oZݕXEJSZ kPGFy3_&))' 8&Jb<ťB=r UU{D:"]o矿E"Ѳe߱J۷$ӼgC +-{a`Lc (D)X$dmskVEqk>hd\ϰ9ɰG1 ٌlWW׃k[24׿:#b:ӼWkPEIIVV=%$K؝رX[WY@Q4~j|B"ݻ5w|@ h,繁)BC! Hz)~zį g2pЀGsGhkkϜ9gׂJJTe*iӧ7E>_^^o:"b:ܹs{ݰ/_b@PZVpttOrsE"ѓ'OPf'H={?E)&%%dH~\ilDQH 8888 !!( PCBjn 1lCU\` nkEM{9rFRy){wyyς`DG_G]n-5Ef,*Sf̜7nرC/,//_>XBǍˌK0->з/PC\\&Mʗp?) v=8qOktw)6׬9yÂB&ID2;qp@,AkMϞ 164v_3oBvr/Yq%t:}@?@JJJwg-7Ϝ9S~?-mƍǾEl>kL3w}/ @ 4NWi4AITQdǖ~ K!U<]US酵Эr9پ?'~? 9MM- OwhwɦheO2aN?w6DD$J!4NbPVMA@-7@C.4}^f?+lRGIk׭{Ֆ[͛nRbbRbbhHȔ)pҥwb0cƏ#n}c8;9<ʩ6 .ը.L&7.:&}ۂ@""$"D"gq-`)/jq^E/3!`8p92\O‚OOm$Im3""KIKO|#QP(пUF%ŷn /))AQt_aG99|}9O?^hrG H$:8{zloFDDFFNNK.l˵{d6k}ǘ>}FxD+V@xDH(>}zXxx+IbQL&B}1s?JOn1EE;v,&69>.FFFFD_0_yU|&"Q"g]bd@r{Iyhhl8}1%@Whm6B4.kfI*<O/nKݻTNJj1׏?>s5D"__iiRYf=LKO߲y@(ϳfRiiN蝆Ym()MzZJJʩS4443Ƹgϰ˗#jlllcc#/B) \bhd8o\ٻ~dFD$(y'ܹsK.4iҤI/Yr٦OrJuUX,n+c͚-OY6F "1itc<{-4]Q׷/|9fl߷vsuD׮ݺ׍ii c?߽s{ԩt'$$VJ+Wՙ=s{o٫={# >ҥmVXP v}@d괩UUYY=~\T\J ٣* J=Hdz8h뚇5he&g54iPy L<2J+Vݳѱuz3uԞFFn-+((ضu{[jmݺs.2{n1cJ7~[ZZzС1vv49qAJ|5{Y KqrvD11 s]_^QpӧMC;wLMM(P…gΚEѢ{7b;nlYbxDc2UYuџBDI* wRӢ~3_ }q%~⅕<>g__#F sĉ}}/^DR1W8a =)8E{w756jjjw7W@vOWsֽ5J|^YО&^GML(Qs/nݺO$F`=`EX[,GFD|L(++G,;w2aC{P FL1BVgaa!\Rj%Ow0356|xLl, G 755Qn+K+BOOx<;vpzEc8'D* 55u%5 :嘘_HӠk荍M<a}SS^a7l߲>}>um?faÖXQRRr,,HS09b͛/Ŀ|NN}:DG[}ȑr͚5 [Q`4-}qը n|Q=Ԍ>ȴY`r9}+W0o۷8|ky'NJ B"x.TF$uK__Ūp8:::n}2cڴ990ctjZ;sP3ij=e8$"Dt[P]=3Gkiѷnk,,tg&VƉbH_]f+/ߺm7~%D"|KrR~~;ގ(zjJJӧȣIR}||H$dVM\@+cI G @ Ptg_ܹcCCV'6Ѹ^CC}] s |1<7x>rx۶m_~ +W۫WҜGFRrrrduZZZ]tJ]eji|J2iҤÇcp\%/AUl gH$P@PcT=}z14Xd՚[a,qp֤P4 EEE`;J؎-@rRs]+LiAaw1O8BCDpw7Bne[n}tΝ @n~CӪF.:$vp===ssTg@P)JUeeN:޹sQ(>~d˖-2!w}:j怀_F땸 "&qaq!p r}]v-㓖\g__g''9}[K"׮]۷_? Blll+믿^n-trzzz'O?n;V( /( sڽ+r9GӜP,6Г@*I*VV &YU %i@SyE 0`+/mk<|ڵ mh! A C<5? ߺ k˫j^{ݟ{ Oz4q,GDpcwWVUkq#B;lt fB <h@x>`Xx̤/6?@ ehj%XGӘnA$i 41@  P(D @xx<'5 @ 'B) #&B43!:e B&ޯz06zJWG۷g\c۳~=zo ],XӮs*Q*H:JKK =w~G_Y]]]s?[OOwBkLWp~A<()7o_GONBݥ/X(ux6qfV{oee}@*<@w srr~_z5梃Z(XKL 4imw  )DG4~P+*T*BH 4(ײN&}=++ׯRfnnK/_|w ;6) INJV^srqnCCww <Ƿ9["޽'8xew``h\ExaiS$X|+ZRYeu T`g/===ޜ4Q{_dIeeg~6axy$>OJJ2cGS&?ޛ(9% BbJJJcƾ>n1hObh_BWLLŋLMM[gF,b9iB+Nzf*Z(7-re\V d!ԓHBbՀYYK- 9j$ iiQ0LFFEQs9~8o4§ftt֭[Ϝ=[WWw9RĪԶ$22cY}̙chV1-UR#£Oرc $g"abΜ8E{#7F+cbb_w0Ƴνw1cW.XnڲʕwҥM2rZmnPhhhؽ{Os%bx~~ޯz!SQQ7m=qKC,YJ}Ow] Evu&挟_B/Hw{# F @f ,J2; V20`)w2,]~5+'''3+ӹ[ e~N7o޺?w^wkjj887.6$4$>>MJaWZN)((o;w400rmJ+RR)YYYYYY/^ܰ~@ h5b_MJGG͛ԵU{w9sfԨQs&ݻ+tU.^TRR*-3ͱ-+}bcwiAqFYў*-Vbb ڌ_//^yƾOyST*3ivsuWWWSSYMMMiݭIn“ ~aSگmR]^n.xz0%C[ZEG/^|={"U]XXn~f7UtoV&= Yz!… 챵YG'G5\"h׎g -i 2hm%h!@j q80*Tgddd``1Fn@n^|Rz09jGO -9+ӛ%~m;,LLKJJkkku uuIm]]}}]]mQ!lY7W+={&os,ۦuڡKaZҢ#2G IDAT?]CZsPFc\[[q>1TQQQS]P*+*****D,rG5ZifV\TLyK&i,8:zqq W(gfn6wr…|ǎWUT5> 2T,y'ξ}gw77nO1*#0ƍ?=nݺ޽}iGJ8bub…%F 5ҧoߒb]:~ݷ555K.-++ݹ V=a`ڱIMK|JZJK׫K3zba>Æ̚9səHzb\066/ot ]ZtD@gFp# A+*Ç<18Q(uuuE,qf_?a ӦM[KW_G:u.6v݃]\޻woojLlcbbN}N<ɧۿfbϞî{5P=g>\{s=Ly+e2ٍ7׬YSed@Tթn+؁֒VbCob~#?V;v'AAuu˖-KOKW!JJKKo#ٮR RRRSN=()aYVT9rd;;f4|왳r\.Ĭ[cƎ%F 5;eff".:FwgرYZXĜU`aa7nd߅iy4c"0+$`||<44~B/_:%4Vytת0-i'!b~10ݻc̲쀁++AeeennI}}=ߝ*))166懻0ax++IW bbb~6lX= _{"5eJNI|꽹] e)س/YL0a/Q`c/$$}tɠQBu9zǎI'1ZձbÆM`>EEZj^.ع\xKS|Ǐ}8ÆiڻZe0775k&pkڄvaZҢ#2$%'4|QP(0`DR0"T.+ʖz7_GEF۷/((&3+s-Y'Lqtã@.?AARwXhロxX^>}T*U(IIɭ^bkc[b[.^NR/'k/1R޹}lku5SygѢEr<0(+ H Ձ@__3AvM7._W&5]lM|G X)SvMD7,X0H$}.\az! -Iss3__DJZu\>r9c1n}Xӎ||d2٤IW"yzuie;2##gϚ˟zg͜%32}ܸ sN8A* }6Dag=~ EɠRGE1qԩSskIO"|XQQPP`lllddIJlyys}}X,Jc̱=V+.((6Mfdtq9jB-G;.ڣRĨ_rϠDP'JJJ9Cȟ1a33sTԴ0 swgd1%Qeee7oܸ~zYYMSv-ut<&Yg ݲZ9{6veH}Z"v8w>jq c̰D"qppqŞ={VWWoeօ4j 'F?;XYYgdIӛi}5>`/]߫W9s>|p@s]?Sx;~<''gĉChӧM@1҄nӧM'M[fYa,ˊbPHQP(-7q&ѿ?x+++ݻwwv7,{{kZGyxx45eY)))'Nعs'HeꪪwwwԘ&_]n]hHcVVV?=SVL6e`qD !W7??E j9;q„N ,*;?w av#0lMMX, ˲!ěgrXCб7n޸qI"EQ|h9.P䜢3gDFE竅~;??_=ECF9z¶.$/&Xk`aT555 p,a7ʼ2|lQ59bSQ)yy,4h߾B˗-6~zEEM6nnno1QCrrrMMzTcb066ޱ}Mhw{s&\H-#9%bQ^;*z2suu:@b[4 1*ECXX31?܋G!t)kZu˖;8~1@ qN 8@Z)zv>Y3fsvV*.\زe3v\O#M O q\F'..>.CLoN]1BB#7o7;wnE9 AW0FPTWnR#3@ $.X@ <B'M "F@BZͶ}!r.T]' w%ڠ(> Elݵ> BsY0,Pˑ+G=w\uzzzV֮.cǍ4p:[㷳D"oǓܒ(''իW7Ij]1d_-I'*2?84dҤw EC."P \H!$iW0DZ0*>@Jp / $77WRWWyС޿ iii}>O_O#?mh(lT#]ӿLRHooD{`;@]M4E!jY-+/ARo I}&( P( Ƽu|??Q1# !h Ÿ7&П7TO,300Jc QV`KC4'-W(x mgg{y{3 SXTzԩ銊-[DFFݻ0%%gc_7y;<k@(zyy,^Դ!(PM!2rlECY >V }FzB6Fznf:)(Z__v}׻)yfלCTC=sjqVдi董{ D@Ô)SZxeQY|+WDHHWT>![9{sW~DFF=z,3+SgΜ9٢M[6_rU .[T{C@̙ǹK5j<,KPTѧnرAˣbccEzz'N?^GymauQDGɛ4xzxDEE9n6E!Çezb .s]%#!DӴxby}M6iH1V浙rJJă]+66>xnS._\}qZ@@8OHhH||b1ƫVRĝ;wTUU-\?{رʊVNO^vT*/_NʺxV^}>. žͦN*m_ö[M\!FĠBiISXcsXUC]m8p.._A_ o'OxQc)e۶m;s/44UYY7mvqMoytر(++Keggoش)#=}_,o%%666!!NN mҢ ]Qtq "5-U*l a’#"fΘY^^{Ϟf;vl?xɓ'[5xIڰ]&M]~ABHST sTJ`XU5rnE sB⚵k;]>()>}:Xeiח/X/psu55)Pxg"D&>p iHF!Jx4R6yϞ=?XK,0(t錌&yzzh/ѣzժ)ΫCCߚ2%\ `? ^lEEh0jATi 5j2fqhƦ. [o{~+m_ö_fMOg?|nv,DӥV@%T EF^R^Gʤ&%Wocm][[~8555R3 ,,}M}E#3(|n ofbYy 55555F=z)^zzz͚9-,+W(<MK<ܛԌl*..BpsuUZ,F9Ө?ч ܼƉ} [-|GVtS'Bi@HT`^^ϨNiE*#ӣ4e `6lkg=oP(2}ںs(w4i e"ٹߛo9nx< ƽϜ9s*2ݻ ҬgOW_>}?x OH ~S:jێW._Dx}9sy8[nb@1pqfY8ƌcnaqiiiEEEEϝ?x5kV0}===ccύ3JKK Ļ())MTS]2p/>%i###?}گߣo^'G|s=u%lkkIJnN ^T&Lokgڵee֯7oPR[`S⯿ތe|8qDZJ9yKo2]k"$-[ zO?{dMس/YL0a/5^2sQ#>ǻP{EFޱcgRrĉu5jG? ii_otwww.Ojɻ \HLQ#ۤP h7ze]=PXñ,0#G,1X q׮_?xݻww1(00?))F*M}ZEW._ryVV_|ݿK5KJJtppcMRtsy(/+>m~R2˫8RИ2{uGRR29}ݻwC;'z|iȜYu|xP(kK,\|2\SS~/[>lk<| mxc<mߺmMW&DÇ/1cj711QR [GtښG$mܸ!@DT\ݸcu}a+nU*Ubb⨑H1“D@ ԩSsk⡁T`GzDǩT*P$땖=473i⢢}T&ԉ+o޸v=ފ;wlWO&)䔔2''͛6uo5ETT5UwΜO(UE*[2ٶa.{?Κ={UHДس+Cgggݲ^{;;w4H(ZR2 _GQpVVsEQa8}}ho8?$$?x߮oE,{+M:cloH^233wl޻w A +W$\Hիל9s˴ m~b=O6H?~ bB0cwk5`գ3BH(J cTuuuQ*@^|ѣ]]\-,,99?X[[7K/;9)!djj>ʕoO2p p%iʆRiMuuzF|ʤo<{W&&&,˕dgD^A#ii/^rqu+..bU_tDh…ݰ4Avn"^H Q*JP`!D37UUU!H(Uu,TT(5o߹}Nb)jY!oc[o6"Jt5qf~..~cƌ>rhǝ!1rŅ- vÕ47@ :?3(RbaDqE,Z!K @/iRMcΜMOO/((8ȨSzsРAMr:MV'WGKȨwk3f˟?8==Vݏ_0q^\IDAT+^OyfUUEQVVVQZ/<nj-.*q^#K ^p(D!Dv#TU*EM=-~E=4trr7iׯ^or\ ּykt`TWUTWr\g@ E0܍1)DEM/PDAi5ΟcI) t CS4(E#-.zQ~iK]Y@ gq ,ӅvZmy\$ ;QBq-i AQ)Fu3gbdX&0qt·%`@8|T0Bc Q' @ P ;@ ЗE!ߧ_8@ÈBG0F4c? 91Ƙ|mc ,Г!iOXi^g=NNys#u6@ !LQHO;>>5ؾ}E佛p;p$ PkBw˚Gk'H99kF㍖[*6\;A W^NiS+u%kwCC&M^ !2MxhhhHKOwk݆Ru&! -Hv݂:x4I: oNV422Zx၈+V,۶mkgvtsȱWʿ+**lw^+X`{uݾn4l4T79wB+&&fE-C`@h8F zE ͜5{޼w}Q欻X"#[D TTѧnر4R__qsǽ4dȒ%KZ-peppLLC> c<{{w368xƺbΜ8Es}hxw::z֭gΞ;4訨X䉓ϟNjV/|Μ9koܽ:s߯*OI6'0> 3զ=KR>e(UV lj{n.%$q?>.O<1}<*WS.^az@jJ]u/?"ɴv3gΌ5 bܻ{2 `EKu]MJGGmJ!!j9zqq W(gfn6wZʌ1^juTt:`o%&&ܹkYwF\!FYQE{@`PIENDB`luckybackup-0.5.0/manual/data/OperationPropertiesAdvancedExecuteBefore.png0000666000175000017500000021612611717124044026417 0ustar luckybluckybPNG  IHDR2sBIT|d pHYs+ IDATxwE?=]TTrR8x怜\@Ϭ(N0!( x59`AAăh_aWtIA']&C0$ %#>lVa؜+$ I(ADFcNNs pOIA0>-wCt9 BQ *AAX1([ #-" B!C  ZĠ!~vN"Vca-~AA$ qdJV$AB.e.i8$ "P(%fxk ' +vb0BAAiEP  BYaEa8AȊAA1# QHAD0N0U@?`! ^/ @V(d1AAiˆ3Eš)Ei*9n0"K6m,[C[[@cfj/ UP2IA4 Q(°C.EaiDBa m`P39LAA%̚B] OH낟!;j8װIaDP5aPjYHT]cC#AAi݀'0;% @\)ﲿc&^PD5Z2}. @g  @ Ԁ8x~!zj+ "E- =yl=Tg(a+(*65@U'`  @of`fԯ!0CvIDbMav*,50jH  :^^ L:_WLz38lAq0#&Mᦎ}(%T3##rٙ@^gD!AA AP\A1 گг> UfPVqBNH![/Op1#AA :>,mN׭D`Znك`QYu`'^Q+)Wq\ k>Hʤs_ǚ\ғgˋMȹ\C5NQs!\V *QRdZDT(b`~[:یb&Љ <;tnȟHI(d,' Ϳ(.Bc%PXn ehϸAUWU mHEaHC1Bd q "whNqpae1wSq%`e 6a}4Lf'g ev2q0 ˮa++;sG) mF Xo!b\Vy_ 83q;#+="asB.yЀ7J;W_ xm Mla3Lʮ'Ol7-_9jW4Dr2m0mQX>Ls/q@ B /`|cH9R#L-̧E"]_f(w\aG -`ƲL*>vgDav&r{zMS1ewE3( 5Y)8j6b UkLEi3QߣMbox0PPC ў(X"g8뤳YzeM ( ѝT>^.@X.ōsfeeYw0 |ه|3 ov![B8Pp{sbHɐ\bҏzdπ=Q3ʶh\5ц=.PZ!!~;"  "0T+P wFkvOL' K[ŠI"~Do'oP$(t']j`9d6Z\Oi=6'XlagtB2(+/wCyU9UiD46VzdW3`)fGZ0SLө;SId.iŻke(W1<7b,v2kGNB%0G(\[GȔǀUW1)u~?{yE0x|a&zm|B>$B(L1Z0K ^ ;{\]ݐ〈sw26XEQh:0#K6`]( ^ I{#*qOx ɳbːg+OY:(nżm[k.0i>EE>x8 |/[**+>ba7P_CF S>*B]gNGVʋlWk0 zCG"#"|sȃv} @?P m%#{\Z@yBƍɺBM#/f3 P\|Y :S6e =6dPNm}ކ5tEEXυ<`p(㆙7r_U٬0eoģG`: 6rJlFQFY5 'slO|% NH>eѸxL os7m4T/{ૡ(?6s*UHG7̒Ց0m/"GTTv(t T:G܌Q}RShjSA75Z.penK*x$ 亀6m@,cPP1qE @uea7Kcع[ @v> ~x yNF^Wh{$_n7t].lEQ*<?|lڶ)И:IcXA7YM?d⓽ fs*_Bn[?#kF rY\C.%Ŭx@s7#ʦ[ļSvlSL 8ˍF:Ct2II݈ u:Y?f'"$e444wg(z]5s`q-kvB6#z)޸Baǹ+^SAu{~eKJEb(|*_vAQyF_!̆FeuG9=l>WmH}#LmA~6mu:t夰:끪:j!Pu xȡW w 7ɉh\*rc>[; :t> j[-n[a5 ᄡa2["3# UPPqgɢP<΄" C.}]pĻUfĕ)2j0q, Yk04/aI_C1 4ߓBd\a(nq"޳.!8F|5v\+*kԂu@\s 5\Sl8^+XAhgm;F(T#I ־:v܊u /? б#:w\;`xvv_+%qoF}C=<^V__ _u=^?b(܅n©6qtΜr6A?_7RKW? @m?x 5Z>\rǮd#8xc`MʛyֹhD̩.֙"ŏil8UmapTQa{$2iorϓ]>׏C>zF}p{9>N:dߎL͕aUCmhgե`7QU*7rW ?q9qũN;ehpNЙmxK0fxn>>h^\n 8.V!'"#h7b%`̭4GsL?xFl v Gwd#^ F"Y{z|MzB-t& d/+G1{dmva.tĚ^8Hn̵9u(mMp4IΏ^kLG5Gdei&߄W+|}a%Y;nkvX7t>yݺw?1c~K.3oZOY{A]]ׇc=vۺl-~}=ګګY4QBݧB:7L{g,=}7rkI2IWVE͎(_ z4de4x#CJhA@{E"4o@egemee} ΁_#} F k3ܔ@&B 0}hGlΆLYa(ޅu0n NS[labh3n,0䬳bKغwF.8f(XŠ{aѫg9/<|`}VTT3믿&s?}ҒؒǗ`С(&o8cGesQ!?}z駝-[Яo{"~GXB,yq :ŝйo])*[.N!l߶|/^ `t]wVVt?]hpjkjxP_WY3gbyOe}G~w܁w?7xC7WǬ"K/Ë/7| =zp(Df+CrtݻEU5UQL@=г 4Wu= #Z,)PϿm~? m (tCMCM7P ݊^rU!f83]Qo͊{f|3:Bv.oLsFh. simӮP>l! kVVhn0ZV*W~.^yE%-Ëϲttܻ`m/,?~ߵkΟt>nLGw~'oa,SWf͜Qnju?cĈ},NTܼ-3Y3gs6`1m l:h)w#غq4L{sݐڌ@[.;K`B0좑ܨP_eu +^Ol}]=b\@ϡzbAY6|-dꐷòo+W00_h ٲy.y SO&7?;N܂b9ؾ};wojS%~'7N,y \z%xpB6Mn8wYz:thrmt  `N%P{v+@[rAugmBKPQ[6n ف`^įQ2صsmM!o.ha+wx ܂lq1mnYR.5mJ>1Bip;DY5CWȞc*EY#kZ{͔Pܬ̰:'a],b^M7 #lZyӡ)?l~e#"ld#pϿܹsyfx=hZ'?̚9Æ g q7cqaN_#s~͞=+GAvv~58fHl˖ɊV7^u^PUx9˃ZV[&gu.\̻s'fgF|]gFغ-$˵92 >,iJA$[+|]\XnMwخK=aF%!kcGʙ- V>r<.5GQ[ii)lFu>oq;yR~?u74W_ĉ .@[o`+i[,޹c'1l0l7>}wͶmݏe.+ksf{1u$ H[Qk*Afv[<{B~] TM  "]>J*epg9[0TEUcNk.پ0j KJGa(^1 `>cClYa%j FvXXi^A,v쓄S2u <bMl9A[4"✀f>7$x^:vQZ>ݷ//]/9of6ÆE=ezo"͵a5g@J~FΡgL yyp>)0fϙҒ|X^,}%,~Ǽ;bQ0 9P&`{=0i6FZJ #[6>d4oĸLPrrAh <l0m>oH͔[4w)lDt 8'N}G;J&sz k[OW_ßGĎĞiY%b lu AM!̟?qih4K/9sO9'| OF˦,Y:G]ѣGcGcɒq!<أ3f w|ɒq!<#=z2̞={vc|啜oyyylpOX&b$fϿa5GGA(T{ NXo!_͛%t 旽 70ir*`\ץ HhKiӬ47:G]tx?}t nK%y>U~ؗWFu?S>pUP4>`,xggcڬT|K IDAT[|h.W'].7>sOi66\Τd0t cc@App'h u}V𸮄ɱ~Ch4ZCc6fa*sWf\2y:&]+`x3 й9se'k]0Lʆc6ǎxu` Oj;18бCGСCq_>6,Z::lrӟR<~!Ͽy_y?ʕ2x;̛ǐ[& a&Lg-+ SOiټpi)Vj*i7s}T{R]*Vۮ@Y^iT*b@sim٠9c^joC[TMŷkB:sυ%%xs/~L4uS 獾l{4qݯSmޙ Bnh*жS?6m٨FP5FC,F`mދ6F^oh΀;#+/ddd S@8#h.س Y6L_322lE\;J6,[{ʠ[~˷j3:G;^/3x['[BUCe~ai/8gD wpՍiwY=6_V0뀐uцA ׷S}g:56%+[6h_ig ÀㇷSn}#yE]ō}qO5t~_= U.Ԙw7P&EO>w&S& {˫CnBy|{5dmP-膜piQV}hWLul ^*/ =zKUul۶ O=-;30u-Hb'jahJ[ FĔw|HAlD1eHġ @4MY(82}Ya ܘaƎ oK# 'XE-hd61p?"w4:dvv邝v5vV1vST~UqFWڗ5͏hH֣A7[V<".^| (i#()o ж KӒ / j86ʈA7@GK}yyP \.kySy|y|U3dOLv WQl >zW[72:mw^ζDP؋DaECjkP^~TMAVnrBB\H .s킪24 U;ØG R7p\HP%UBd DQ2*J$JEH|tBq6 33yl\:te#A4mχѧ ]5lu ټC[FJ62 @Ti"Pױ;/!21.. RL?&1In#,(_C`&@UU2}[Ra=Fe>/ uC0 t;zLC8뷦j)L7uov3e! cwB遟QͥAs_a:h84+{*  -:O- *[e6M!`Bh&볐Hv6gȾY\|lcTAm() nMao| bI:z֑+3L kxpyR2Zi0yM{[%OYTB1l\dYA)tu*)_w 6Ah؄`=iUdqD> D,PlL6s\f TE"i&Oϒv+WȠy,(GL۬O2q 4U |L1^`(P]*2 ߟ (eiZ`yG:_ZH6ATE4@KG~oFR^.p(;4j'eET KAB&%@Da(g}s_OPs^*1q6+ٴqT./ pBOc. Lt"RɝIZ\K\8ZvB}藍Vb³q;*Ӯ0a%iG~#ҋ~ 6JdyQb6o]nCV5(֘2z1m1]evLIyQ ^+VnlŖTsDM:o>N`;*4?š6vš>ͰNP̷ac6@H7Al`| ]{ =QY93Q /坄(ٓ\I}-sD6NQ=%%\wN/v@kuΧDh=߹sԹ˾ɶam"tMP^k6& J.`;(vU3 >FHb{.}hO,"]8nǼ҆K= s(<͖1xL/Jf 3[/1ol,K[\X5s#iOF HHyQ([Qp"F#erJפq:=-gM&md<.)hġxIC35L,(%]&TCa2sڄmQD.+Ymb;o]hԘ0npƭ ÐE`@dA0QdaW&"ڙp7Df=ӰoFXR^g䠲"~4BRy҉_ZHBmXbO{7Nh1&:k5>G? [b1ٍ?6cn1~5.Sc`:uǺ_סSRLʋBnmd`[wԂúkX"?_|`D ?f셷E'2mѿ4b_U" O;D؍.#Ydj(L5#C&b3bSF>!ۉVEbdFNvۏa>ħJOxL%!4;r{]z{L'R_FkQNC@XK6^"Ln3Qq.>"1`:hAd3ȶ;f7BIFf_ti7OiHaLR_8@|EN+!{b؉(V%B(:ٍl;4Ҋ>Dx¨9šNxڋW&rA + H}Qh='{V3ݜnJL`HI6 0$!#Doqoup~8%9i`曝Tl' _q7HI1o=i&.&հ;wmؓh0݄ |`>"NhW-I&:2H~* ;LH!{`F D16"A#V$$ -d)3ds 3/RPJcvT&at0`:>ҊĦD^ȮH|"ѿ(W 6R%%DSIrs*O+=`s*Ҧk> Q$K g9xl?h-Vx MCSƗk"?fO7gn^.Nve)/{ܳ{7V^.]ѧo8z|W)Sbhboym,C) Dl"7Y#NM͛$z$!CP\\lwFʋB* Я_?t999 p*4Z0i*fw+pL@b-NO6#75x>4I F7 BT%YS͟vsP[[69wlwFPEEEK+D Ds!B!0"$`1Ta8wRKKѾz+"TRb]b `4(iI'6i{ +vbi>HkۥH/1\U(ITaNWjXeќb4O`m.7B)&YO:\d@ӴD,nBNHo.[űOO A4y&;dkL^–ЈeS\"zdBBtҊmrrZ{$ $ Hۦ\7,]BQ!稣QG/ Pc)冹DA~'k+,QGU'c׮]8ќ$RA%EaQʕxŗFE(ĞeX 㪫&7AzH}QĈa5^*l&ǟp<>؎yuQ0`N8ql N9T <N>K,رc1tPL4 ~Ŋ^y;a:Ͽ"taOWsΘ~ijk͛qeO^QUq|a׷}~ K, ;‘í A~'?Oaaҥ;8fHtg~6n8s6v؁GjiC,[u3gކ쏣쏙3oCCCCx1lP֯/Z:-7߄뇣ŋ[?‚s:צ]sԹ1e9!"}I"8i# [+߅,vLСCxw?W_}>` kb…ظaN%oぅ`͚5VK_ٳqdt zk< ɯ(++Ãaذ/ W\q%֬]?Aqq1͟g_7w z? ܻW]}u>}b}6mڄ- 6mڌI]_~6niOL6 -X 0Χ˗ͷƆߟon[~=>d9>d9~g,Z0f`o&V}=|^/׿hBl޼}>d9>WÇeQtiisԹ1e9!HGRE 6U2p dfY. 亀6m@,cPgVee꯿ #G˕>Ә\3/?]o]v9wLǠQ\\?(,,!C?EEEu XnՖ-[GcE߾};49+ƌnO6Z׾}{]_j8wcӚQ#GgőGi [ ws/-|<׸ ;}#8~z\tXwR ;aϿPWWݻ_~EaatGSO9WO-[7+Evv~8[#/`믿.ſ13>~qکC#,#Gs?pqeÏѽ{w+~"k|FS&9'A/^_|n*;ztsE+끪:j!Pu x5xUMn &hO-BN>d7<_]ֈ޽v!mv>Sj`)--q&(2lG^YY%K7^wΝkbMӬ8vB>}?ˤI ^zYw,_0σ~ôsLsݸŠpۧO=awnݺq#\DS&='AHO0 ̘q 0[mǦO]pRX ??򋵭&ێNqucժU־W^L:߮{aM]b˖-6~[mn۶K,rO;#êVK.VŜ[liݺu?hM˖WTboYc.[n k_^v)pZDW&bx Z'gR^rrrpϽp~ 77Ƕ>)\|E.}PSS/>WM$GeMY7*,^0 `A^^rrrӦ9 0[}6߿fwo ?1kG/Fmm-Jot.>k&vލݻwY3?1.4QnŋiӹQr0صkvڅyk]v9lذ &O1?Nl^sݱcGlذKJI}MH02d&_um=.G_sǏoTZ$.",oJKKpiq K/[2w{(n{q>ywE^=1a¹ݘq~59jƏ?#G G$йsg;x奸w?>c~X?Lp.Nm?4n,N88]86MЧOeҤ&ٙ>Fv8'ߟ#Ǵi#G Õ'\޽zbʔqyp4 'N7cǍkzgq:N529!HURAG^[ߢlF;W_c䨑iIk_ű 333ٮDEsƅ+ZA$ IDATx^XE4/tNP_+ w8v[XƏB;RA)$9P+Au<()- H;Dk"{glsAChDRЦMn'X[ Eޣz?T)h躎#'''1 ´eA$TW]m!33E$=uSDsB-]>xR4EڈBeEQ~:Tlw VE69Jtx% B"dggӋ "ɤAAI=  H8$  4ZSha  "|k )$  HAA4}LXt]GC^  ‘MZ/(u}@PT۷oCAAA]jvR^o󡲲  iGu;v6[zDty!"~塲 :tha:虔D0 Z#}:tqkII} ~h#t"E3cEza]<{nߊSN3w5k~3P} }޻ؽ{7233q1.q,>4q)ĘYgEAnn.wcꫯBǎb)Kt/^e hf^1ٌg %E!+LB%Qu'߯;^{L:]t= vC}|KQ؜4弘u[n/SO=&wtR>AD8ZxZ(۷oq1Ǡp'bРAغu+ 0l0?g0 8oy5j9KMQޑ _=֮Yc߲y3* 8GWM*+>߷=> O1cFcqiq̃s>1ab¹/g~:cF^xAjЀY3oà0l>>#l޼,^lcnǎ[nVB]]4ËƆ~òebٲw/`#;o[oc۶_^zE|ŗz gᥗb0ı1V?\{-֮]_~Gc˖-ÏlٻtrxS|de˨:}{ `l^Sل؏K6ZvM7cuVnƍqgffH@ ҥK}˖-\|%\؛n M7x/`)ť\ xvڨ a={gݻF^xwΟoqBn^n|buW^;Ghۮnc6gg3{z*wL9sQԹ3:w_1ŋA}1k, 4<.T26[Lʯ)4(O0jH|*^~8GŕGq..];JK}&Wِ=C2e*FnkpGE^^D[g#ُTO"Oχ'ſ7tN{"q{X|dRq e̘1H|Xҋ((gn w߂(/@EE>]d¿݇_~\}ˠ1(M"o>,yb j0p \uuuQZ0ޝسgكĄ?Lp}ҤIxw2TTTbGi)9 3ιؽ{7vލ;oO"aƌ[i&x<_^wmDpuaƍO:Q\pQ]].8hs㦛nš5kquISO)SPZZ"~?Xzة#}Yy!CK.޽{Yo#F… p}5\wW߷_9y2jjkuukm#*xŗ׿km=|\=e >c.1cpgᜳ)SGc:<Ә9k&QPPƍr߯Ə?pYgu</(2jw>vsSNƔ)WcΝ׷XHoSOɓeX}ݻEAvv6zN<˖-CNQ )S1qyƖ-[]6l$I 5x0|e$ 8/i68g?F U2p dfY. 亀6m@,cPZ wjs| F*N?ڵxk^C׋׭)S@> H4M~IK(?G |>|8cnqq<{$ݳ@y=PUT|@8j=@4xx 4w#](~6WK&1/<0 qE]۶7+MUQVVN;]Ap Bpgd`Ϟ=lŮ)4xD%EaaJrg Æ ԩK;6TUE^۶qcȀ/+QAӀ~kc& LB"&>׬YL4 ;vDEy9] ' 7K ZKJfdcǎWF2R_&b#77mv hݺvE^lwBBŢ*:t耬,6.A6mrЮ];dgg8MHQaKx*rڴAvNt]O;AD+EUUk͸L74^zЄ DQV~ h%&_4!  HAAH^iڗWAG #B4RHAA($  HAAH5D k׬냦i4 a@QOOl%~wD=:HIe}qD#Ѿ}dCA$WcaE:~?<OȀi54x>%mD!IdM8h6m$ "vcM>bDذ^a}HMM ˠ( n)F-Uн{m6ٮA)@۶mѣGQ6a¬,6l(pZDMC h۶mđ}sb|>|^~O ?.u|^>c߾}͔"eF K&cK4tj aoߏJ <ĀB Oٯhv_!;"?dG^^*+ѱCh)R^DA~'WT&ۍXCA ]QWW0`BMЫ6[uv6k75}QQpNmߏ:΋V@–+ h"Fu*Cڈ}{PwjUP5?49m3 fk(L))L"UUUq 7#Fc'%ۭ`1|xK:ȒnAD9\?nE.]{ o jvt]6d)=(h Or3%qE`ϟ˗cу0flڼ~d|bƍl7’>A`j[Q{`l|'6Z# N?3\ YBsi萧%&G mXwM?I-e 2W({ UٸX*ຊ LWWt7tAMi4]4iҜ<<49nOOOZlɻklfݛn޽{f2qqqY+9+ѣmڴmۺCrwrnZK([~sӫW/V\i}FjSEܹ]X'mGt(ѝÇ[:u ZUL:|KzXh|1ڶ%**w_~˗Z<~%l9sh۶ ͚6g&''ngohdMbY2СC|Ӎ,y}z> ׯJp7nEFF .ehެ)/0lW!\Y998{17iɿ75d}17k16t/]BmCE>~*KR&V3b.ZAa]Vt+~+/~zRRSY|oϜmwη~KnYorJT*ƥ7k֬W_&Ϛ5kXr%N,zj9~-s3g`m ~g:vhlr#ǎ஻f s#|}mżysv۷]'Nҷo? W[6jj?A=8Z#o෽00s mt 6w~K-mV۳aȑ?cc`´hΝ~'v'?o^W![U*Ovc9< =:{t:gxH:yR݁(GLPXrՅoҲe q&^uztΖXYf>~˖}۳ޡaFz^l޼n|̘6ǠyV}Əgw}t ___hS~a7DFFɛbժU^! ~wXFթ7F2uZ #'i`bCBBoW^&e &iO'VBƕTN‰t 0t5cJ!v%իWҥV3)))Vej5&rh199 ˿xbaam,䷽{vI 09sԩSDFFU KS,SR%ڨ͵/=ׯϩSlֽq&6~%-ߣG7:j\x9sƪ*ڧB: tA5E"o]Gϓq 9 9yߜ+P? Wq=g?(,RqG&*:NO>$۾Ԕ N/ } !A "8X7F}ЧO_B !Dq޵nhn3}(&7?rܴt|WA| ^x0zjܡRg_ѪukFp?*~%ACtoCm%8SLP(ꦰ0233HPP0^^^n9d/d2GZZ*GV닏ճ+CVZ@4ARԋPL BzZY!h4퍗oMS ]!Um _!qxFNB!*Z !B8 B!D͓P!‘O B!B!…nISAWwB!jR.rPyF44 RU^U^M^M&& nzr;*+T&,=-CҲUkz}m7G!D-KOOĵild2a0T''(W=uBQ'Ml4@o|Tx zXqtC.3RXd&KNNΝeU+|f;NWWGjjUڹ]^׶T2a]lQ.>vgH@Ff6Gd#g6 Gu2xhؼ`&N?RXsTbR7-nhB~}_-*f3׭ctNêPf2;ß|.;;`رO(V۷kWj>[7mH^2x)Kz~}yyTHHH`)6.?ϗe}0uK)/ѧoW޾\]/B,XPQg&'_$1t&6"u$z3:Sz]6QZ7PdS?t[os))^{ ZݎfL>s}b*˹ł ҥ cǎ]vLډFBp^ {s4k֜ѣ0`bbbJ-h}{1ǰ޽;?3ƪ6Zmyjpz{ƍ5j$}\ v~<5S;ֵ ]c׉i܈^wvԉn]Щ4ns=PycǍɭ]?T"""r&VZɜٳ={۷GfMauW|uӘo?}:Z6g}Q&LY}W77h_HR5Q}_peEA l2LϧM U= '2TK`ZOͱڶ%ڶIlC||:Vq<W@И :К@t>Z__`/]o9{=[6q9z]u|M0͛WJ>\iݍlQW4ofJEh4O䦧FCCp//Zi(j@޲ZY2:xv+~Fc|Dz iF.,# P|(PQ+`d:d|+ESٹs'Gf8[JpgjK 77 ]ќF9y>>^nو&1deeۡ#:o{GRYկ(%\&(udsw}.^TiF!88˗ٴKڴ%2ڝ3SBigΜxt[*]HP(j]^n.^^BQwU-4ٳر+WZYz=hԨU*UIP(j7/_" 0mBqdKx]NVtDDDz&xEZBQBCCsF#BHnN.))"44>xyp[*)GW_\&(joF::S(g.uy\!BXP!B8PrV!B;T3.sNaNT MBQuu?p2'v*ȅ&B!:EWUN*:B! fɄ`OOO4MݸZqF BwSPPZ!~>rz&1!Zmm7VuP(ªGyܩݹ/yKFL&3M5'?/+BIl&=rʈHWɯcו;;{Itnhђ< B#z^]:Aa5^iR+D͸FKF7OLl,ǎA_W%9in¶DZj*d\IW58!C~>z=ih4knptZlU파*LaVԏn[~]c?s_$}!Q~b2d2a2Qu7qFj5Lm`6.'PPX]L&iiikIuBƕ+4iNZZAAAn%I_G1KP(3 f3yEL0QԘL&rs1 ܵݹ/yK(k?)RVM7Q& 7vAaq& 6vnTܵ[W}puw*ROEA⏇w7_.Vc7L.ulZo_-ϼ~6MyH_TVUʨG{l'(J7s??o|˿ޟO̊bwDl6j*&MȲǰJFSOvnUj L<ssN&s}HD\G{'#g o~2 믿2u*f?uדE]y o۴d6oDVVG gذGhǁhѼ6qq]}-Z_3A.TxS%qcF<5o>[ &.c6zj~-9vm9 //?s1h@~/P8Z| vlNNN w<س'O=@JJ 6n=ټi%gf:wēO>V=]PP'~ݻԩzq Tٓ1cưfh˸qFeb~.i4oޜ2o3n/z)~!FC޽򗷍k/~՛kb6mÃ={2fh֮[GJj*##;f, ZK.$6{hzm\|<`OzRm޴)/`T&ŋ,l)&[naq\+~\WV<ƇKϬYoL0|X}YdI2rڴiÁ+>Wz`C._NϿ`sؼic6:x ޢ\x5k֠Rͅl[6obMeӪի8e9sUWY-{`~fx˗Ӿ}{/^lTEU*1b8} ~oȑ#?{uzjyoBϛ˾}{5]^L֮[KL෽{> V._N.]x_gtЁ޻[?׫/:HΝoE2yf=>gK?O>&$$˖:ꛃ֭kwsj~E0f _tqݻ௿⅋E+J፱/]DJJ*򫖴|I Gxx=&Mz|mn6mڔ 2k,_ `!fB@Q`u"O`,eq#'H `„eOYJ/H J%&[RaӇӂ̴ߺu+nj^d~8qfYUxg '/MyO>]ҥxiʋxh}c/xzy۸:^ ¶mxk3z\~i""-;ZdW_dffjlE2y[oO_??}1~\Wr 44P222G{OEA\j*Ҹmۆn@ZZV,SXcg IDATbsޝo!!vR2,4&99f+5y䓏8?AzKZBB}zm6mۆヒku%%%Ѡaz++JMVV$p$q~HeQ콪t+eoIKJNfȑV˨jK/Oe1jڷo˗eaaҊVe[4/%%*tRHK`0鳫)%olls]]<ԓ]S^9S.mc%W/_mٌ($&%8u9Ԇ`_׫/IBDdeiE2y?ǟ|ɓJ$RR.i5?55|o2EQ ' 7mbƍDE];2E}1Fu|[4owf( {^g֭sybcc8wema'cl%yYCNi-\hEԫǹhڤIr=== (NTR*h/~p\f: lNҷnF\\0>clb6mdIoҤӦ/`Ĉ̝7ߒƅ 6G&DDBCB-U*je>+V~.N:Ͷm2u4֯@|µ*j,SҭCKqMEy_W(&N{WnW+s"..]?hw>Wּ3殻?dӦMX/o+o 8:j~p֭&"GԯO֭f6UEi/MʉS0) ދҺwf&19df~{w/喜ss+1M:wʋ/ /Dn~>f_~曜<}8SX?!f͚ H`ZZjg˖˅ystriW_ɩ\?NBAaPٙ9y$/Y֭[:l%`pcgΞYo[~{Οh2/isHLL +;%,)2|))Х[Kz@?/sN,Y>S.s92KO箝T He䔗;s0i$73fb(0T5oƺu#)) Zw֥D_.J/oH_uzU^/V[sPN_Uf/z#Ca/ٰaS.c((cLeI,(4Gؼi 6l -=46l_1Vu磽' P։oW~eۇիVQ$Ν;1y$t7,iO>$c3lP JLl,O>D{k&g`ЀkB;;r̙]ӹSg&ODN6mn){ذ|͌1޽zQ%_⧟~bԨQ~VOXH}%Ф&Y\q P?pT*t:""h׮--ZXx«z>J7$11 6l;07IJJaL4ɒַOryc4KjUqd2ѹSghI'L ++l)Ƞ|G<̳tؑU~pKjMonG.&-[@֭1M[im~>/~RN_tiwّ;숢(믖eiZ&N L/_\W_}T[T*OˬK0zhF]*-66>*_>}-C aȐ!Vyʫ1=)[%;N@xCZhUvM~;Ǐp?M7߄ǵط#^:e?-/x*ڱqzZlP'2ܹ/yK=h󥞇,jF~tC( C?$M\mּ7u\ 5R!e! 4Pj0jxL\,G>]\gXy_z*5j\NjL_}D(\+ʝ׽$LO"Auolu eoӢZ֥yxh_:Qk>7}^ErG{'fELUƅ&EʚW׸LPX<==)(0PPPPM[ۓI^^999@3331(ss_$}Q;ў@^^|B{O>ZC&L%nhG,k+Qs_$}!Q|?ik~Jm]a*qU.ׯ MiڔԔ$%&TB!Ds(2TIvoS$>( JZZjm7G!N 44 JEVvv1 tZ&<>>>$&1!Bq 20Mh_WLPX]Mf3y T\!B-ƫFEEh4n;!BHP(B!pǖ3k&rY!bRE3&Tl !}B k1w-W!uOy1a]Ks B!JɅB\!q5s !qJS4qӏB!p3R(wB!DMr;ҸNP(wB!DMr;Ҹc!BQ\f# .&11ݻjIB!q;:}P;ҩSgжmF^Py- ))K?%&&:*BZLqNZIH{W^^^k֮eɒ%\t9sT$b!B!;8LAo>,Y?2_Q6ou눏'<,>}һW/T=SkE޵ _azW^zѻwoj>˗KصsC !Bq M ˛lJc݆p 6~;gӬiS֮[G]7o7m,k׵wŮ]P1>!CZpBe'%&dZtaq!!!VRB!܏J/+/+ZO|.\-CCBIHL`͚5ּ0.\HZjaaaP^yKpB!+k0;*Ss`0y6on߯_?x1Wү/I-b Yb?pyRB!܏:]V SN5ڒޯ__Z od=x E᛭_i&իǸ1cӧwyRB!܏J%]-dZE}9u_+]vW7W|ZfG:yWzBQ(*?B!pJN-B!؎N N?RXiB!B!.0vbF 2O-~D !(?AF B!B!JB!#B!HP(BQT_~21wrB!Jq׺HF B!B!…˳BQJeu8nB!B:#' !}fDAAAjh4j=^Q{*mQ ڊr2A8s?QTRȫʫW6֣ a2?K yyӤi#|}ŹgC]RoFU^Q{*kP> UN܋gܿ7#NS|?ygnh4xЪUk defV.OOOZC`4(m.s^SOdZh4 }Æ/H!8} Y]A#??n920_!/?|wZ&//XOHppeUroyd0hޔM69GyJ%R\'(tBѺ=6$ !pj5VL&p%=E)Wń*+ sq @jF>g篟"zt[r "==}` ־K7 Ư'i?GLtlm7锷E>(T 8TRYtZoʗ%uTAn.@kf\L&b T M~.'/=,Nd ݄K2+[URc2l6X_`^gb֘Q(l dE1x-Zȑ#N掱uhxZW@¢S +ӕFBJl6+(l+$"?=ܬ+dev,>~h# )ykk1.v>˪=@߃l i&b5Z9\v8mºB!,EAQx&F~dgeIN22nΆ!#j5Tx [U$+4f^Tx(PPTׯLq5>\!(,"CBQ7LV3f3d&\ #3# t3xa : Oc^Yh<4} 7Xf] [:'SNa0ҁJ">"- sXaRPAҲY+T'3[)2TXi !bV3sb*~9*6 ^;+*} [ʪ7wQ[NҨa#F4$, F3ȺB=u)I1_S/?7{fgϞeoL&:ʫ胂5,<<?LNBꡳLh7:,|5{C|UORTomkـυϦ @OMQ7oorrAE|B .ӽGwޝ;i/c8gΜ ;lsQ6 -u=i\4bg4 LiyiU_/Z^9 $XKHH !zx{{h ˱Og), &iCT{MʼK2t#|c{s1d`4 C>¯p3(;T26Tr !p 7VP+fh/ Gg$_>}!A TW'T %E:#^fɄY1+︝j^,hZ&Oɓ, ytgLmqU*V/Z&%!{(,VkHJJ" 0445kDP_NH^^>:BNvQIIHH@',Y3Ҩu&/5wQTk3۳)ABUHQ"x4U{-׆JU XEAW~"HoG`IHd.yϰsLy8tJX §B?yB! qg0嗟usojn+ѨAM230M0JOBBC1؃S\&&&&[e?!VMjw[Pe}R9Cѭ}lFH6yt*,D!q88w?'6Hw'Z&((qIVZIzZz !V u%((*_QuʺE()̡K˽R.]ߛo3nG!.wm˻WKwUU!,4KFD׌&l6BZR?_+NYyJQ=TIGx[߷__W[B꡸\EUa*|(F.mJWTՁxCn% ڷsHx~gx8sr8QQNu@!EV(_.J?w9kS=mug/4tBnlq'OS $+N'ыPoLIIn+\5o[RBQ. Mt!i)shqݴW>e=e>uNc}oyoto>un\h-"γ\wk?R.)ֳm=(c,f\58gJ\K4ƑKnl,'ǏM#9EM&ᅰi<;V tl+cr ﻟ+Tv}3'$lXԩ:seKڧm;\Os{Owa?uvJZϹmb˥ !Du0ITR=o,~ ^{x67OY)SHލk14x0ٳz%iSwԋLD5װgJ2[伲O>A䊕;ZO=Qj%Ŝ~~n[c)jʸ:q/W>Qo42[$[7-[n-^~%oZr^?nv;#wxÑ^msޑ2h#Ufn4wI1Xr׈޽ݻ ݶL+sѮ(j WONN_z[XGq:˱==H ŏ8/!;wrCZ˴~)mhf3)ݺ?)ĸCBJWZ,E!I$ަڗEPU99b<1n8jlL?$rJetZYbb((%bLM 33 #JĘqsj(NEm\1f,w .Jہd\{ oyBoߺBWW^3ϐֱEn˼NOShՊ:u}tJ9-r[ @3A]QAӼ.s;;8PݢK !*Lc {nNظ5; (n رSzߨ1Ub1 b$fүS~ݵڴt,"ǟ|&?Sj%|۱ĝ*5O=E=(&MʼTテ94}=PU{:99A(.' Ӎ|l4W[Sqֶ 8sz:/+y^]ΕNɿ7E+<|$Lw˲~OLOӸmClփoL?/^<(Cr$wZb?ŵ}m'' ޽k#q'hۜc iw$WOno]j%|3wE{F R4ѦG>4i:p+qֱ#MU;i5NtӦ<.]i5d˖e[%Nrcc>]};uuN/]ʳOKRYƗ!W3)!*E*%*` a`pQLn0 V# v; A}5#91IB!9?||^ev]BfFgKm+nz N'Y!ANd˿vr5 M˂[pd;5ݻӋ`z&{S]/HFz:ej#=5 t[Yh.! UjEyUu8B_Nױqi^f*nJ]=oI!IZ_/bR4M|hFFF&5jst^OJJ ~ٕWfUcزg;Tա!c"X4MtI -^($ H&ǑBRBq߱X4nڔGng""8zp;"<>n/z~`3?V) !*@IF ushB_R3:Tfjxȅ+P~gVu 0nxH/ҒB?NF׷?y_y_P|%d։VOC𭮺ZunêJOQ15R裤НIܿhQUٹhiY%gq&(JXA(nj:jPPmo߁>g[4O~ȠK.Ӝ...5 *7!.7J)1ܱsi|sάSx,&L柙;DDFE?vmiDDFED&sC̟ /2sg,^{Gdbz`!ʤY2qᵒh"+'B ')=RIXv4| ~lٳZ̸y#k)SϿY@ffg^f"3i}u[n3dWy:ekmսʹl~5wml~ ?o`£0m[j OES5߯۾F}xҒKBNB&tht44BnFFhl@Q nMC-% &}ҥ֛0vXxƍs СC9k?xOk|Io?3xx!C0a. nK2kL4M+S&`@4-E)}7nKp^[2sCά-YyP;ڹg;e_4 UU,Z(Nf-hzj >4}7G"88nzEekĒ|l}oSOxWLxik[}XvyBN ,+]]e'SwA::ujDTB*Hŀf6T\`ܚj֌.x 2X&"8/nyΝ:Y>#))gy期^`h,yOz":xsIgiڨMsIR-S/~MX3iܰ)״JJJ2[wRn 9vۥq\ؽl+wB 5MHj;q.V?8&7 b00ڬt)JjdIX.;EYҼ(N}:=,ӦOGv{`Yiڤ,T&E۸mږGoQH&+#EѫW/ӨQc^yϝ+Ў\@#H ޹'iKnn.UXV"#9qx@<Qk޼PR8vԭWB##?znݺr 4Sĉ%ʤ'yKu]#ZI!FRR".t-[ĉyI:wPa5jp O;c ?+T^4ĩ\ %\<?G }௴qB1+8p@+NiL&cnja1E ЧOSh~iT6Oe7m}ϟ0I?L]Kq 5%]0e%$(jըj0lRLf^zR/Vyܳa>z0 /DuA%L<;wIܩS<])>?ͽSpF'IB!@BuTt(d2<ɤ>)B!|ra ӰQcGx)#3Gd0rB!%˅l&--C^2[];pJb%jB!tuhIvV쬪GT@:4lԄ%<C'B!cRhX QUUIOOb1c2=`b9 >~^ҾCO($)BQiORi)FmV턆iBxug->k0$)BQ隆G#ۍjɓԫWFPP6ӧOӰaC4Mj>7_qşV$B!5Mqp aX0LnrssX,hdBejS4_+ȠSN<XVN'_`஻ƛ?qÍ7pn??Tk/$B!5Ms /##3 6`2͘f}FHڱعs'NFpH0ӦM?b̘7>Ǐ`'ꫯjW4~#7uO,S"HR(ZBEݺ1D׌!#3}ҢEKBсTͯ`DfVgNl6+xרS ѣGȨG=Qv-xƍﻯPRX{ۋnI BTkrNa#a0Ff3.EQ0L2GNYY$''xs=# SUճΝ%6&ۥBՁ$B!5%[;grw;Áhnc00 '̋YUUt"k֪[ && u8y 4ɓW/W!VG!Dv!)HHH`޽ߎjF f{*`K%}[~L<#GCxW=ݻwc̙$$$3 lCCC9rhoK' 4?R(ט !!)"-#0Eٳq1ܹ:FXHppmQ_zx֭sװaz|a Cf]E9lO ##u}ۍR_cePGO B*nt%'l'7;\Gw)főwT1 J\EQv[/1L;qcxʆ )_Aw d KPB!>TΜFxVu8fj֬Ya(N>j3!P!ll˖_f""uRS:,ᥰ+7@ӧ\$)BQJXXGc%ОUqؾtZђzIB!ՒfN:ĝcUWuHK!!!ԪYu`٪:%IBjIUUBCB4jHttَIxfbQ P!D*6 *W0EQ4@B!՞$BMfB!% tB!B{ !BI B!$B!B!5M4 Yա/L&TU{V$B!-˅DUu8KY;zGvF6ޒ-'Zr\MfZj 5-C^XlՊ=wr:%1l5!Rzz:mu ;; Gv9&>L@Q&ܾ) IR(qݤLRRqt̊gIqz+YDDFP IKB!Վ8ܚi>I 9 w 8f;I9p+yɾX{B=B|:m6ވ)%]Iq򈉈 ;+?!P!N * Mx&%nBƬ?+s*O!*$B!5]9fAlcVrO6@SdPHq)|`'<*ZtsL059/{4+XMh@ V!#\fɞ2}Í7 <]1޽+W1t؝t֝~#Gz8NF~ۯ?SMp­}Z͛r;<[zʫNVVV4obҷo?zڇɓ'S)=$*FB!՚kya0Jd^;33&(59 *\-\BD^g|t 9ej?S'z zSO??Iorrnޞ4Sg9rٳ?d9t, 8$]t},]7lgї_sNO_,rGKy۶mcdz;wǎg/N2VXQ !*kfѹ&M&=4rݨ@MQx_=[Hktnh^zXf3AVVO>111y{Y{ƌCdd$7kG4 %Kq:G-_i+Vd„ԊnGGÏ?_IDc=w߭B?# !tMCABu@47ĥA l2^\ijx>׉͹s FuF[ IDATiа!?lnݺi&ZlI(tM#>>#-п%nKXO,EWJk'` SB!՚F4W E"4/22SNҠAN8ATd|̟.]:׋?~VL|ubbbJl, IɅ˩S' RO >BQU!Lϔ7U]C׽믨8K׭[ޛ13g8s&3fЭ{Oy6dXmV7n)߯Lcp!^ybkv,Z%YYYĝcʔb9s gIH8̙ޣ>32R(ZH~v:`PAp#wu͞ХK'u>˫ /2ԩ[{G,6qccwXDD3t~eK寽Z=M.]6tI BTkOf3 Q˩iѽ5 +mhQxtԨsKͅ+m[7 0uS`!3d2 y]IR(ZR * g 'ܹJo?&T#kfWhhϭ~DHQ rf$)BQJΖ[իQTj6ےRKí1PM [X,66mLݎJb)ZSU0ck׎Z篴gk޳ǧ퟉?ͺP)I$)BQ-l6ԭCܩ8֬YCzZzU$B5]66 X !TU%4$KDGGꐄl6+X,%I BT[bٰZrjSEnIS ?)Q!>&IgdU!BHR(Bkz JR(B!$)B! !Bc!‡4MC4NgU"d2PUUQXA !\.V[ 6"T/edfqYxKBjra4i٪ԴԪIxbҲU+ޅKՄBTKiׁ,^DLKege7amWuHIB!Վ&55А`+}Ipe@uꨊNPh#Gkeef_CC1 URP!D:iZµ' v[P 2t ul:oV\w`۶_: UKTѤԹT#8ru\:KLBǏ%)R(Bɍ˕r>TPӺvj~^[(!՚kX{3 yY:z9۸ƛfb B~vʕ:NvC?‘#G=uSMoןӦp8HII>HMM-GJJ }w\̝ w -o^'++rrr4ioC~])hƐ!8tgUV{:t!Cy%Kc`Ga=C<  k.,]@K/=YܵS q|b㛿`O`9̞![~Pj,ѡc;vލkI8i@5vEǎ=`֭L>+ӱcޞ4Q +JB!ZyG7Yx̗G̬3d5CKhb$_5 \^SO=ILL,fA ++'|ϼ{z]=cƌ!22Hƌڵߣi d钥8N#/[A4+V2axjn裣֝+WmWR,ڝO 5֮d2hƮݻi׾g<jժlfذHas BTkܸc K1;* š*"l A)nd͍^-j"kx0L(8/7791,11ubks\Qn]4l~[lڴ-[R3: ]ӈgĈ{ jܹB}]vxw5ug>O[ٷw/x)Oַ4g' !QQ?`At rMh3h40訊JXY"~ݠ/+%̋ԩ4h'N)4p /K|bƏ)U&xR.ɓ'b!&&6b1о-`O?72zn(~p)>BQ1FF=ٙ![k|سu{3frLg$0c u)oӦ5Y,^Jƍ=ec=z:+Vl|ݺweY$$%!,3f,W,ڵcӳ{4MGk׮@$B!&qOCEEUr'PS:1YRx]wQ^]F?6я~uxfz߿?x=/2ߤK.wa#ѴiӺ\mۚ:w鄦it܉dڶi-IB!/:^ݼZU_8 w=G2îUG/W߮YUhF5GGd}.ֹBEqmdd̘ь33oAeqƬZ3/,,lȣ*NF BTKA%L<޷WݖCDjI`٨SqXf iURHhj֤vlhR(B`iԐ(Uf%88" IBjKUUl6VU^ `ͫ$B!=I*[!B$)B!@RB!t~ !BߓP!BHR(B! )B!B!B{@B!]3 !BP!BHR(B!X!jqaf V ш(MNV՛4IR(BTCiitoDDDTu8ȯ[pŕWR,I BjĉБ-Z`۫:n8UW]UdyLL nƾG-.rNB'Gny(JM `0'7/Tdyhh(͚5CQ$zB!d}s!$$Yf2w" f]^$)BQen033r$qOWuX@.o;zvm۔y&e:~e6iLMxW_kJNu6ڶms>˷߮.g !R˖.a%|oM6fURd2UY6aF֯ƍO$͛73n8_ưOXX-\HyرcGu9 MB%K4uOVV;vby#y;Ki;}IJovylhBBC=^s:̛?͛7ЩS'9GfbShܸ~ j>K²VRYq}?O7h)Spψj2[駟z~}##Xڻ7o&}5y̝BQ6,^+Vo+gv쳅ٽS0}4N:7,Vͷަo>x6gDDd$䍊]H.b端L<ɓ'sQڵW_}>]@6mEUT% u֞׵?Y%1s&7l~ tFYzLZ%q]$)BQ<ɺuOvZyaj֪Epp0wl@|"##xظiӧM[a6qڹ\o#> QDEFЃ?XfԣU&nСCen"1zsaffg 44rSիG:u]&'BTeK:gΜa;pjլIBYF?6Zp,#&&>66D$GAAAÆ>`CB!UNQbbbxygk_V͚֋^zoOİax][v;3bdJY bbl͛7g׮]ݻvse>$Ǎ?oiԨg-mۖ/Dyc=BQ)E ~Gnݛ3fpIN'Gɓ ,9$&&sХKgOYislXV&$0cmp&fϞ͹D%&2{l:wT [l1ě[ 6_ǎq1^5rS^xE6t(HL<=tg+HBrs^,XIFUU&NH|ԩwXk'v馛2xo>%;f ϝoO"<</96^_F UF `2IF2AvA" P#~"/فҤIc gC y/wnry#RBᯜN' ?]@fM}Ҿ7\9zsΝ3O?MXXw`%4ly&ڴyФiƋcgnÇx|MiյM~}Au@R6$eB 2Ⴌ\ph9TeW*8i'7B!|#--C(}}Ojj*O(2!HMM#㊎e !Ch#^o6m~CXֿ8ˋ !Hrbk -5];pܜXжmBWp&];NxxbZe#B!tVEQHJJ&-mwUS!.͊lP$B!D5eX<ςm}B!J'B!$)B! !BI B! !B4B!ih,uYɄmQY$)BQ\.V[ 6n*u,=#; Q Q7I!Dr\MfZlIFz:gOZL˖-ٳg7.SC!* !R4j܄4IBjB9UGa4J~ug^zz:nFzZg/[pU愆iWǃ<5kѴn%,[͠IL>@yHp0W)We3mNo0t`}e/a*8ŵ[oӷO|<ٳ?""2y >O:!Cx@k׶-$55uط//)LLL董kիo߾z뭬ZS]zz:,avF?:Ӧr_:;vgejO$B!/|"##xظi[j;};w|UOWl6c ٵs`0Ljj*ь}2g4ᇼQνq;=#7nN7a49ϟIΝܩ' ghsNሑ[=O=T~[jխa_}S'--"c+Z ! N q~QLL}ll,C aѢ~w܁bONJjC_/0>` w=dO?_&<>:;vR=wgƍ8N223hJ2q:lظG|iii 2 d𐡤zw[t K,gSÇ]ٷw_NhHΝ+˲".%IBPQrxܡ}{F#?{y.$'&(%Itޝgdot4ns=˂yxywTvFaF ]qVd2ӨQ#N'7l?(.}>7/t(]_3c"ˋRRmZ~2#|KB!~ArOe9$&&sХKgO( <%K0lL&Sq8 aZ9 ԝ4i 'Nc{~sIeEޭ >[V/ѽ?n̕W\I5 ԫYM5e柊l7::Z,^zݛ?R;bƍ̝ 'N$77 mVLKIAJ%BQTJ™xBHNJ*s5G5>q5OvtM 

H{cnjsyI3p~Oy7IHH^zZ] @V-q\t횗^w]d>{/^:ܫ ,-Y޷o^+%W:5kF֛b"^xERSS ѪE ޜ8/T4mUxUT`-`r&,fۻ(ml6nJA"4Uwb**6{bC(*"(خ UN(lMB&$13mL 3AV@l(ĆAža?nKZi̮]ѣ;fLz~WP5Tk_BѸ\.^z68deeaw WTPRyEmc" X|Y$''Ҫ֘O?ðaC6tqG+绵S&ŋѳGgj+¾}ݞr9{n_zlc rPPPr  rKnAhVvGoWɤ8BLdge֩3:]7 !D[4LBBG^'**^TyNWkvV& :$'6; !CUE@>ľ{!:&BQTTHYiIII^ǵX,uJ#Hk׮w""#HJL$5-zr<4}q4 |( d0 #dd~w!ht` uT^OdDn]IH;K( s9 ,E{0sg6g%yz=]_nJ\<@0B!=!GNB!hmAo B!BBB!DkkʳEB* IDATB!P(B!$ !B$ !B$ !B$ ! EUT,h7{,**wB1hd4b4gڕ`eW B!l6F#.CYi F0WOplwB3ɧ&""<,a~yYB!$''l 'tJjjv­VzT!kEoc*B!DRR\\DϞ*д h P؊뮿իV*B!D(*,h4OEE#rJ^9 п !h2!sgBBvWG4㠪*k|ԛnb/Pfa2T;!߻}( N ۶neԨ|+mƀu[>WRVU?b l6>[o\=M7_P+jBʁ8~' =M -a͚u5 K/֮VVZY\O>駞^Eq+Z?={B!pq޽{cUrI0PLYY޽aÆ0lPvMNvvbz-$&% 7?|_kSbuB!ZKii)NTrIP Zq)))aY9u>wU_<%$7B!D΢kPQQbw>"/7^')1Nv6Δ)W{gD&$$0c{B!D K?N:۶t: wr6 'x1A.1)z7[^DD#+:|ŁtfϝjuB!ڂi߷n(nWIx!-Ͱf\=a#Ge8 ?n=05^s=GVV6iiiLRB!D0q\>tv:Vk< /I(ls48lРA 4'}G_Q^gԨ5i(B!tʡt¬aDB!hUyXV"@%P!tw^op: B&ͩt: B!h~`?jbqhZtɅ&B!h3v{YG8c𙔔saJJj:MU[|-^f{#P!m߶o#**4N%s VkO-[FBB!"WCTs B!B!B!P!B PPB!D <P!BZ0Dk!BFC P(B!Z_ zl]!B222:dl+nKB:tAg wXVW^k.N9z'''(*;{n{n{PZZBiiIaƺҒJ˪'K-gV{ؿ}tz==z$22c'_t!׿I^:l4꘡PQK MӼvEEE|r232EQ=+ !+JLLѠ_~ ɫcbiyS4v;y}`ڴcBBL t:, III׏1c 2'3~1Ǐy<1cYje,z{1'뮣k.XK(oi{fcG+'$$>{3Qvq;wp9Bn^~OyzLE4q<0)))qiC /wPXijEeƌر]r饾o@U?#GظK{Y]p֬Y˨Q#'33qw<z9RRRjHu-!D͞=xq㩨~gP(?og>o{8SXm"##ywR.1[nV3`6WpC{-[%66 ifwNݱZ,}w).o7|СC0L wm8)q{FѣwWPV^P=P-/f1qƌ xBM7_P+PU?b l6>[o @FFo/yEQ8ԿqwY݊YZXYWcث\p~6ld=[7G}\. ,-b03ft5zskC멡emN9#G0u+k+Ehuo2E1! 9gH8njn+(,,{nyǝtrA:VZ z7pCvXp1"&&&pEUOݺu N}jw}oo{30vX.2 ކ{[U4`׮]|Wl[ٳf;Kd˖q̚<|:95iFQa>EEE#\j˖-¼yj9/Bo^9t seܹ8p/o Ƌ/weykM)VX̧_#?aٳgj >S~w~I^U».Y5r$ ޚo%G8WZY[u56ԛnd/v˷lf _~7O7G}K̝;_~Rormh=54Ol50qx>xze˸$vP}֗Wcǎ8۶WfΜɻ,a@k|ُ+//GᣏVT{ŗ0q<-}g~vyڍ 7ަWxOOr뭷r|llO<Ïi>W}?@QQ!/Nǜ9֭+NPZVVyӦL:8y|fۗ=_RKI3Fn o5|ԩO/[HLJ"<<nz/֗aa\3e ۶6ٔM&ӧ?Ȣd;,^ӧ?VCu糩iL:uޔy[ӱ ֬C~͖-ddfm\6jT׃Ӧ)-^S[ogѢŔlƻHJLl63fh[=̗j妛nM  )..&!!i7wi4?[y^ggTfcwM((+5-sΤDa"O)ǚ1~x6~;s3g>( 9[DԸ)fAA>՟SSSikȔ)WÏ0N]K.3fߔ3//Ԕ'$wU_ͧٳŋo~*x+GGG1||2nDG{|6u>ꮗƖi}6OS]lu0a/~{K+[K𿰰0&_}5M8t+Wⅹ//&:lժ~Ts;MI>,C}"M>P~Ӕ5wgfcnelGxMwe\;.}!!>M@{ٹ/֮[GnݫڵKG\€XE>nevdbPnvƌ3(CSZ]S9b \=yraa瓗6lh#ֹsgFoYUWMSXTDaQ1k֬I<\poYYւT#+:|Łtfϝ[=af!44ܜ^jGDDp&ٔ:8^xev?g9oYT 7x=wo-X@~~[^/گq-EEŸnry%h/Qf=wX9s^СCYzo@}MSR]|\<4od{Mwe ͻjn^~_[zb l6&N$??<2C?Ҧ tPoГEdTnKX̞3ӧ{9Qdee7x=f,:Lrr K/%*aI'p"M!C8aBeԨWu1y޽{3ڤ3 {1&6^QFy&--)Sﺋ.d90vy.Ǎ㡇|oe6E}4hsN>森 3s ƎͯktY:Ozo zRSR~p.ڧIWMdg1p82h`z(sa9g{:w{7M^Kw}b).)w59>}m]v 1rJ޲0Cݧmߎhp>ZzFo¢bRSSbiރUUe_~ s1չ111-\QQajPRRBDLii)AE {EE_Zo2(dq?6"C25Un{矎3vZ_GROuPb""܊|ƪ]ߑ7 G?$k}d%5|Vkr*Q"#)(9UT`Si1k s8JU&Ll~ ^F> b<>2Ьr_9WnUӷǕz[dzOf-*F-7aLJ5짟13ef)ثE)Xv:O94='o#)鱏ܜͧ~ȕ_Uv[wCZ<90i%-K4v;UTKVUĐϔ ^fFAä#?¯nIhj7`V5:MSQ~\AjUo/`oq~[_-UUkp7wW~BZQ'$v_O̪^ds$gvΝ~z=v_ 7Kl)M$}]?{%7?Atq^z\e.\8$7ce,qqȐ|7U7-ѷF 5y~}6G0gdN~9Ʋ4EEgYHr^_sg?4n5mUī_&W+r']ۢW:us'ƭApNqKpB\2m[A۬1,|uf>JDLtM (:l(D_fnz'G_S _z3};ȯw=oKg?L-\j%gqTػtFTƐeTlF^I)IΊ.4?8JtDê?N?T!;묳n%CaWL+Cz+9){W^_O;g9Lã#rx/'ffTTP?B n~ (@Qk9~b4.t^{5n݆^=zp29-# c찡P|o)ЇqXY3ĕ A2@\ʃsfݭYSV'-"hyqZf0@V1g 5::4U!Ġrٱa1˟E?(?N5Ohie8@>}k/r1o˄ds_`dB$Nteqa.}ﺛ7xNijԹDS4&1Ifc3SQat4bP"mz5ijnt9:|;n)L{!6&ݻҥw޹Mz:9YgkaJKpźA=D3cĽ$?Ճ==Wy)r2aD>xIDATaC~ʕL8_u]o۷fZz2\p!v鵾w+52^|E\NXxb&Lȑxg}1H|;/hpJnrW(U rR(^CQA]RoEEE\:2?jzz:󟌸t$]| <rN{9sqHF]v9nq+!psjvYpW%#.e`ٚt.֟*ɺ~,׳p UFpFc1Y=\yX&NHLt41L8c]_;v1ce^ךfff&_1]MY:u'gk QUR*>߆>BDD9-ƏϤHLHh4r)'3'}چ+Wr7|nVS=rƛo2q\r.]^s=c&6V]1",Guz!wfzd:q8O❬C:`޿̙\{5S/jŬ~O ypCl5sfO>fC3{nk> .ࡃ,YN/[!~/-r3[MZN Ek4GK!+S#?Wp`+/eQdSXRZGa^.[)ˆVz eǫk_j.BV{ ƎG-ϫo^=.P,C,\5r7o͛ؼySw>X۶/Kq]|kw{ܻ9+q(cŹJ]Ȣ7i[aJsqEf~/\r?1hw[iuruװp"܊1~8¬].Ӫ.s'F<N>R*;;۩ %,2§2gο`xo㏼K| |̭; {dWGmDBj `^N|tOM\\w1i$O?߼l@~^$&&24 |b6?~6LFJJJu;jʻﺛ8λɧr}Lxx8wq;_ocL/}&FAäS+Nr)*[p=&UrbŁ,wܸZ UzO?n<[oria2 pM7Ţ?_]wE\\,qqqu]7ܪO>%)9 כoKͷ+/+ی=SSOg ĹaNҍ{ U-=',$򋋋;ll\`>Zɜsy8|Z'b eƍʱc[|7e}VuJva<;l@aI19v+))!66q|ن> aҤqk޻INNjrw7u9ud|7;2'aZ Ec 'g"ϝGZHC'kNNyb|I,^ŋbY%6.s󘨘Ng襤&WNMK!//YYY\{u뛴2͡OY7Dav8q:FPZTAn~ fP΅C58Ν:ѥkW5ÇǦMӧ hΝx7ؽg/@~T吒\9-% UNcV矯Ol\NwNfC iQt*2CܡAa[t_dd$99־9snNQQZl_|1'ثVo)Sx7~,\DS=}]UJB=t&0ṧp_ <9䒒8l1՟CL&Ng\RRW_un&lصI<O"_qVÉ>d/CY#ԉfhyz~GdеkĬYϑ`YH(Hen@Q]Tz?$:),C:1"-V":FtotƎph |r&^w ?>p+ee匽r\{#ų>|potc꜔s>s>kKHKZpj\bD rtYm:u=n$K[w_뮭_п_Z\MV&MX:9p!o1*˾)˴tۯ8fd\%ddf6II!^a~WLiQ_BB"[nj˶>Z?M"2"}q\rWǫ͚6b7UOU ) A(kܧɁp\^Bz0y撗˼Wq;+.gΜHto>|)D_ RFBx):EAAŠWL=Inn \gd3NMlQn+gUZB޽{ {}Znc޼W%''Wͫ5[8^_vs_xq8ٻf>hMi K9+C&R)Z1~|^ SL5qq̝;k|^'1`2j C,{_S&u+a@IϮ8:5:x +ܵ K1^{ +Vn;'}^^K~\|ȑ#ʼW}֛`h8-MkqL]扥n`}NMAՉzl ?N nt:CO ;;N#>``sZ ?o EQ><&_}Ue3N3fEΝ7mI(Pj`6˷uCqYkvn4E#4ưr4e#:MqfT})睝L|S}ueiko̙Oq͖ZIx7[1 ?[UV)++uk"S':FIs7C}ω'b((n*ʬa,Z6}&55u3Q\n&OڧuHKM o|FKQqP "!AO{KgH٫i6cw9Q?D̬cѢżR=uc„>oURw% M{䫯˶>yiV*x7I5B `BbC!6 v 9[vݖMܮ]ѣ1.C0  Mo(ݼ{[2 ^ S[^ _TUTP6hn7{eIݽUU|jY%)fl5'<äWy^4׍> c=!=OdeymUoUW{_>44~<._A I;&߫`0У|.0?5|Bd;G@w0yb:[oe`!Chnfkt:~rs[$]X@5K[ZVf^'j䢋. 6."k.:#A'v~ّKfNV;ʰ3zѺ3dc0-l Vq=Kj}."@GQaaU6x1B"Yv]x z&?:5"}D=}׮qр!6Iuv- 5Mh2MYiIˉ "2plܸͦi}mœtEǤ뉊@:W}IP@zuzȯYb=:$'w(tV\ŰsϣK޿vrJ.]vi0>||kKn*Ca+4t9 򉊊!.>'QRRwUD;dXHFƑ ֮]KiIԮEDFHjZjQs-]T_#}ZF-cA~(l%NܜlWC^OdDn]IH*kK(i-;_,Ӗ}0갡P\z=Ѐ:o=t-~kYiʲeڲZc6 AE~'T>*B!jP(B!$ !Bv M!&v+Bf4 NHUiUB$JJ4 }H!BEYi9IIIJjסfAoct]!B#Ҵv f3fB!hB!Bᛀ*!"A PRB!hW U5B!Dcx `hoB!hD04r|( V!B5 U!1g>JKB!]0䙀2B!h\䙀pbB!DCvٍ~ P B!rr] >JKB!ي+ w52UIbx]!B&ⱿjW B t@5 gA~9nWUB!|I74C/ʎUf=*ߨGCk4z+ &BPpkaÖuauWjb}esIy0^O ! P!AD:ݕ*8UP*ԃQyYFJ@{!J KX7xCjVzP1xOYvB!BRhG>ݞv*džªVŠʣF MZVB:*[ UPt94 v4B!:POr*#T<]UƊ{eKa͋N誴XkakSx  wU-t&)=iKh{-B z>.Х䡪j:>[4%BaB]aՇ] :;(T6g$s\yW!BjS*ÞÓm\ u<-n'zPJj:{O*-bؚO4dZUg)zTܞGO41QBB!<}UyXc菶VBEW  zҒ!þUO81(OA W ![5Л*_[B!m*V+:+Ģ<*@)>jC^Kkšu5`g|_+Vp5¡ B!N:+C U Spny5\PX(} 5nZ5[ B!IOW݁EUvE%J KvuoIjWv(ZjPqX64BaEgW_e\R:a-`XPU: z2B!pX}e@,>6=T&~)ejtXW!BTuNV놾l@m k~( B!":_nR= [DkC8(% !"5tA~ A[0zP{XB!I}-PPpBhP0}C-B |b!]تo:^B!Yc]DҪ>p5%6O!"x {~ UfcB! _ Y Ʀ-P!YcM`@_!*BT<*.B!můaJ @B!DsDB!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!QBGQV#IENDB`luckybackup-0.5.0/manual/data/MainWindowEmpty.png0000666000175000017500000016745411344502201021401 0ustar luckybluckybPNG  IHDRw@` pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackupF7y IDATx}wE6H)x3 zwrgT=;a>LQ( 3 %Òv_3=a]P:nOU_JͽUl&j&j&j&j+mvw6 ,LWJz QJvPk\e"n!)Au Ķ222U_|Μ0P~Agdff69B IRs&쬬H$˶mo%05\14 4c&k:_ R ` WLa^ug8vA>oP _C>RE&$yM E^]KuxQBPXH*IE0b!u 0,J"D3oؠO]eяԙr]8N6y(Ex-&xjMqJ9䝔FD#и%#xG -gWWXb * Ja)q bd[ Y]nG0*3Sb#( Uٽ\pxsŦ //_ղE~Niۦm۷-_ݻGw\01z K.L -W-[MY]:j@HqkEEEGvs:,  pTnv=VdQ感ՀySaIJ܅:Y[B! ;_ayhܲ7pss8=$76ugw_ZGHq[IIQA(cd"mRǁ}%Q>V'ES\= pSK# xZ]@)!:n>y +55T?PҼyI=z~E gdTk7y,x|8TbϦJ(_ s챞0%%%%%={ZnF.-fee>dY7۲vևy);/+.l|ɷw^͊=,_%R`Us1c[϶N:]| ֭_4zS#FVԛ+/Pu;w+VXbʥK}$9֍ fHfLbuP@@a26 JW*//_5x`ϣ:u6[nM"imX6rH._+Y]l2Z|9sGWl(IRqc9r%$S8쮣{i߯;|޷ז-\g;J(N)BU~.w.آե%%%}˖-o߾s@SwmrtrV'ڸiS2ٳO9TU˲zɓ&<3>ҥK?{.W޿{t>7y!uvn)S쮬d"Bo 222:tsιbPՊE&L7nܘL&{uWQ ض&MXXX8zöWZy#BvԓO<˗B=~m~򫢔qIz^Hu_Gh4H]&A Ja'lbY"1Pzr^~c\L$a緄hF_ϱc Y%kB :úQzi q,1"@ .\@c[!e^u#'yj|mKB Ð¥;o_~[iۦiwb0 CPuMEʎܹ⬳ 7>1+ &4*.PhELŝ'C/A]"麣)@,QS]y[kyxI_kjHø) BR#}S^>b] y#Fi;U7PC.jӦ_ԓOR~^xK5-#WiiƠn}\=S>qmK;)X﬐;|Iu҇yc΅qW'nԂ62tPoy8KKt3"Sqj%gqS[J),܃ -vew' ŨBWf2 E#4ևA&$Ÿe`7`{N;l4~+O{r|Qae[۶nx vynjy>hѢqs~›AnW<O:qrryD U#n}˶/>}ݼyn?."0JA(V͛/&M*ٻe'̥4 YgOVVl~2bk&ɼ|#)fmGc+ {e魫B۶,3It7U 'gÏ<һW/Vҷ}imۮןv?(/ώwu̘9ö}NNNmPEgy?޹sG}y}ǎgG}wެ3۶]֭[7`{@2{5.;w>kW_ 㗚NZJyMe<K5AU {&# vW]Ao )8}Ȥe.RSw2M=}2 hbP)G.5b4u$D8} B(*VޗOb |y*E_i2xCY{uPCrz EbgړJZH* >zl< lnݦ_3O?C)ac^3f̋?JJJq?Omnxŋ/W^ NF,ß Wz'p2 ]vټロ7oމ'xEaL(ez7|3ŪYVQ˖oo٪UmfU\:ԶmnBnG ??LĢ BPdFƏ9#a[)M&99x<Zl,V:r^ڵknȿ\~}aa7++ ]p/ywgt93qW*+ǿ4ww߽ӧOzdPYY ݺuoqKuw}" qN)6+P۾C:t}q6W<՝֠5\]h7A;KIyp5@6D~d. -m 8?@\HbbȪ!30( xuv.dQI 8Ӄ"l%l -H^)!LR$ *A ޲QA>Є3B4JPx,>zl~f͟?~ro|Ff$Hp'Nl߶m̘yEೣ=sY͛7dfd`>DLC,FX<ݣ;vO89s?.FDBu8!nN s;vDь:!kx<=/#AmY3BH](a-Hp~^>eYFX%cfvڵg^ZS>46l؋cƶjْRRRr֠A3f;߰gݻ S-_ڼy3{'=vJSqM)-))ٹsgyyy޽q(zxdž |߾}]vرZnM]eGlE-vM6*6mbF"lsR)Y&atAhIYy'*1lToJr,Jm?4u7HH T61.U(D!HRF_Js}#M4Kn~ow2ʢ|*ږ|>C<#m{_{sick/Cnn.{TWԇH]Yz<裵l\1~zaA!uYIx<tf6mⱘ 8'BȳG?ܳNCUUհ+www?@EEW ۹sgqq /ؽ:dѢEEVv6w?a1@Ȩ[oLaŊPU]}e\YN)޽B6nxŰ.˜1c{G~晧ZR>#Qaaᴷn׮íTuRyAaD+G-ԂӔ #CZb0IFKZENwĶG~*LʝT5>JB z\ׅhԩΛM@pu%%iJ| |2ǎ e^~~E&Y6mb1I i4Һux<bU$ڳy+_|&M9hsYG Lo6EӻuVf}ջ߿a@·3 vaf'pB^^b|oۺMk30j:hHuܳU6jґ7ք!0"KH5&RM'[ҽؒ ][x IDATh DRkT&ěfa`G59Ήx,ھO<1//Ţ7ڔx<0H.A>uYI&yR\BP 3bF1r5+.R0e(ٶmڵ'pO}QnIfE4n^e~nUW]y+&%\j%Kg]8"Lx"{+W|re7lԍ$5R20$fE غugm{ڴiG $?B&( "RϦ u !t= `- "du FfHYoD8e,/8:=@,w^wMk:gʵ”7ݴ LAP7 Y;9.wgsoiS`{j-#y+sr-^d֭{vD"x<{n'BslJFm$- z r4J0V2a ÈŢqr=D7s6UTLgX}glRe&Un^^$3sO垯jeĚNw:X4*539/:MIX83j{TV޿gyO?=Le[*D\6#$ 6ص{iIyl p2ث#=(+2P N7A$`?+d7u%mC)+?u ;ft:rk2P5xޜAlHF.B+nRLb{ʧU)[kw\*JMiCHNNNFf=|"gwӜH$e#xHR3MՇMˋ&ODqX3gkC#G^w߾{ y慅|#7#[ <2h,rr#P(01/!.rhZ >D"O:SdCK|E$+URٝn)^}qMRsE]϶aCLk$G(H]FflT} >Ʀ6!bgL.NGkPYV@t4O~PĆ<@4&Ғe+7A8cn(}tQڀg7pε-& .H8ҏ.qfqP2y+M ]N1rUlC:Mwj)Al n7P a κLlѢcXڑPWWgZV4JRW-@HHTL#W2 NG,sR B"H$ o#Fg }T٭ Z?EDvUZligta6;AZeQқK,fKwq))h Vl]}X}aqIS/=ݲ^M q#q?K!JzkE"HS3bDBG"34X,L$4TeH(ŅI)x!4i_2A)' nDBp%A(Я ֓0 9%"8_~Gv+J!Fܲ.Xwo4)^臷@ZJ>ь+VE #uk<êNS2.EfH ȿG#80URc&`CCE#{$+R{ J"V5"~!w륨Pۙ!^KF" ֋'noG_NG1 66<8!%ܷS~Y ɫEiAA&U\iR7 sg1Y@J(32Ʉ7/ZlР0 Mbаxvw%WM ~6y݉}S͹%LL˦k7\ ȶ(|+knb6Qshcp_E)DyFJ%YĹ:=~P "qyiAxKsMtWb7Vڤ^F BD*O'WADqV'nąWMhХfԗێ)G3l6k;ŏbs׸/kYu}vrͩ&jR wa73up+i\5)$ehkaL񑶖IӝJ|ܖA#x0G<=E) Q#rwRQ/Ak*+tIBQ_&~GQAv.bLD彵!>9!5My0R^;qeHɡp_HdEjlA030\w@W!UY>:J/ U H(*SNXiM4qU~A'q8Lkُp1Cf VBgÍJ^ѹJ҅~6t X@8I<驇L\ qA=jlst΅I048BqkDTFQD)xaU z%< !q﬉!w@Dpd "YM1LVE`}PaUFJp} h%XuV'/8"~5#:v2ƹ&t& <ͤr?M_:$PVKk-ӅOH$%ǝM;wNc w F\ HKL|KEM0TɮӾ`hWK܂b ~- w],Al置%'[N%-N_k@12"S*B1L -({"T%b5V `iK\*"#.\PTxcT3tK.2q,t)AZ/7*"6Oj~l]boQq>ӅWpKvӪP:\0DKa%H015hWH|p (I M-`=tҠ4 PeՄ)KJ"K+i!#+ U0氍W+^Xr dtSUrR%! 0+եlt?7z<UOn 7%(BPb͎<"0ZG&JL]n.MwAtv@č`%ԹW#]`JuVd=( j%M4&Z"dnAY)USEtΪWk.<tJFS,XW'e j!2J$>G>ڵsi->`%@)=dRɔr ;婶J`: @'e +k3 UE\&=ǁ>M8&EէBK;~4xqd#`5qAH`+!Mj@O pwMG>ZL202F!E`*:Wҫty nqhA1(hpU# R8 % qZC t+|r}W_MɆ40vr08 %K-1&W<Z-V|cep#}K/[ti}}}˖-sy߀X[bh 0\|fcbJ*Op=jXgl4 6 2Q W)KDV]:Jjq_+ JF*.?(I)*40&&[]޵nS/ 3Ew!h^VbfH #ŨkJZ 1OZVAe.\p'|SY}O}tBZFRUv:IХ۞T`ˀ#sc!b_aqT^%3t.Ux¤ٗ ’ƥԍ.5i;H HeJ Npeuڤi u^q#D?>bcj.OjPUmb<= ewoc>{;Qr^߿@jo?܂6[d)һw/XtKEVv~@"RJy)۶?Gkkk}7okI8F|`vy-9{H/m UH8V-P'AzM29mx?5LFX/r?ࢇ:;TLMl]]4Љ SĬ <\MYPX7mzzH,p ZazueR ͚QNR;{g߿ LN4?شi#t:p8wY,,^D[޻oM{kժX<޺U\uU!-Ju~XC"ڵu}Y{nٻvdesС'ϛ1Zhȑ>|gnڴ @qq3 :c ;iVGc6 0/K~~>ҳGwýX|EϞ=x!uoX̛7֬Y;o߲VQoCgqm9XXb%׏=z֬YvD"{zeq 8z-qoL}|%~^'u,X5kmۿFv{R -U4nls&*"mUrB6CZxHqח**+:J`XV-Lf%_!V`pgnD"qW/X^jUsy/n{yɖ-_~y|eDIq)% Up#fҤݺu#}l~-~~{߮O$׽{fhr֭Mr/tԨQ.oa_/'M,C ߸H6O>X,6vVZ]r%}{^z饻wfloMrgCJ>1Q2ܹ̝…LE3J)[}w&ƸqcW獲oO?]Ϟ={ٲe3H0ˁЁlbE,ա@ ҎTNQj 31_5`~`W s58RTU#-+KFnsV?Jg؃i߾<0tEzjժ1c~N?I&.^'Z_UzvO<_`)S^;c֮[7nXC]XX9c0p믿`?}3? ns]`W 0@jO?#MzG?;%A]?^s-c8p%8 dn]v=[ۚkڴi;Λ7ɒo9f͚5/>UnYק.Yק۱cرc)"JNsCi?餔:f{-*)Q6Rb*QԲ]H>R M7zqߊ׋a /3NjIкW}>:~PP.:W7S%i[VGY> }Q?c 1J;۷oFF};4̜3<;ҿ4xGN9唼p8ܽ{G~f2[B۶2k18)]eddj;E~`3 &,]g?_μ3O?sgpTS_tхZE2 M_heGtaW 2-[?{"=[o/ѣ}Oݺ==Tbe9+f ?HdžړGHp)Tv8{y7%*$H,ч͵(2 . 8:~FdFպ zdU駩:C"ުZ$mX:xYY]gIj JU'i .I>c'N{I&Y'xٳΝ;?5b{^ضv`U!vփK ;^VYg՜9QA$S+ʢOi\ېAڀ?f q# 6NϾÏ***xؒA U+Li ߻wCl]:-= Em_+K@Fb (>9x-<>B]'?/˗eAX-3mS076%k6JKK7nܸ` `?`@VVizꩧ>_~+= .+qRS8#([l38Owȩ3? 'ؾ?J˳ IDATkՔhsEEduAM9 YҁI^K^%S\7>%`pKR *(Cnˮ:hUS[T-q"ЈHKIv C*[Ua7s僢^Jy^rZ\}lU\ߤV[?O鬳xYh4Ïxt]7s;vH$6m4mڴ.̯Ҕr*rKdfnݲ ׎ob/?BaxQ%\r-Zuwƛ~K"rkOٰ~}2H˗[}l^tE0r3fرò,nC0I `, w ۶ D$ `;}˗/K&˗-{svۦW_}_SG}3; K`/𜕨X.wygǎe&69K.9Bc]a%K,M&ŋ{S䧭 CA(f9AGz6SZ $Etl;Hg{ǫ)?6@ C . K|^̹6uJDmtEa@ly 6/TOm]9y*]H 3 pSq}KJk#'e0tЯj…7r .?ㆸ :g9+WN2;lHNOoVBSJs-0ĕsCm?أ_42dHC !K.s2 cȿ2x9W\ꫯq~Y1,]R-Dy-s~G\{nTqΩp~7m,3gΜ9spŁO=b#w)䰖?yeɓ&~mZkJx~vVF\y gdn"JƑP9(c޹p5@V NSmIiHC/Q޾(pӶ1H 2fĩ.ȇK$ duoª\/gMHm >s^xo8KH$rD.7x?Cn(5_0p`˖-p$) /y avBuc %5}X|r!\J(auV^Ŋi:SkL3ߝ̳_;)`D/ J9RiǶ^! HUϑj6|nݺ/WJ aʂ )8^SS%?'V IT̓2 KJl~^[O"a](vC){SO 5 FtS`RNr?i 3z*Z&a2"WAȚGisMPjB 68bdMn)7kMw~y>X0O%nNEb@`Lݨ$oqSx`# O?NTJIAN"^مZIԯ/k~ / )]B9>9<zCVE 5Q(˿ߏ-ZpRjTJ"+·!B.^"廸- @/[rڰeC2Mw#g<6N6]7&A49!=Uӏ?rƏ[RޅЀ-(ޮ2THK8 hEj D?5B)3k үFԋsUɫϒTHi@u@Rm,M"ˣؠ)s&: e ~Kn3ꔩC&apOt BIߴNmvV >jJ5A~~ ܦq6t) &pP)`9eFt>aP> -b҈߶_b-Qd J\$**ATB  #T~'PxABm[UX(o? 1Г-5xyjB}F@ZK$ Iڻ̞iF"a)^UqAT<`kEET;h;=dkT~< jgڠaifee0tCP_lfff$@<&[MJeOk5γtgXBA HfE$7* jN#FIį^֚.8UoSn/Q.f&HSpibgVySqpB,7Z+IeZFaYZRjf"T-nq|D>efdLݔzl5:c4 ôL)ɱU h@`& lXpruFq:s,QLj4M3hٲWz]H$nnJp~8LG*|mkg>BeY `Iy6-cGT Vo"~?}Q_3^ǩ8n bZ&1qm6[+161uM ,BϾB7JQ" #vz}jYVmmmݓduUT(';ΝW(((4 QS.DԬQ"w1ea-7UQ\ ~!iS(#μMLBIWS%UAɺ<7d{4 ڹ,iL`ֶjL&kkj76%ɂ-[ٽmiIM(D2W^m'L$U|V[#ߍ شR`j(SJ%[xi1,NЍf:%aX%ZU]]ݵ[_-RJMJ&? ?edfYld5駳M(D?wAa&pD6҃`h(j+jI$0,2 seKpS3WՈ5L>S*=cx"Wi)iXYIIA6?,?UWWﭬ`g&X,ޠR˲|ߩk&:agE -\\|v97[K)_Z`Lm1N=q]WNiѥm?8?]/=qreixS缌[U]{N7!ެ| nĤfr?ʡ4 Ty#+\y{4~qmޢm_%@4srT[\\~E\ؚуeYunY֯3ir3aZqަb#]p@Vwz!G_MtǖCfb˲ˎ8"j_PP"+il ጌF ,_55Z,+MD5-[ޥ{s4j>;FTu$SpLiJhGׅڴ&޿ܵ'ԺU(';6Edj!c=s(d[L0اBZF2a%C_Ҭa{nCOTU:sL 憳H#uP֦4%F"B2ibɺiY642rF$3dB- H&YU4S׽{_yD?%%%kh3,Kp$;vkI{n*wIF}"++ڦeI' v4Z;}:%B=9p &BHf$S__huBn^^n]v^XXXW_7L~ۏnYۮ!۴9VƱ-yT]iTJuoݴ)33Bp0 #"K1  BaPBlJoZe6GL;+^lȷ HɄ}g]uue!dp87+08377ҠOltX<ĢŘ֭b6u5BmO$AYӲ,bu:}Zk޷'v4.ֲo8c}M睗NmXHn^^2fϚ -ڴ~9_gd6WC@<O^[aG} ڼnMbU?._et:{.4l;jY!!a1 CagU__صkH4X,VRRҶm`ʬF8s(PC=+쩊Y@I0†&6 v41Z[m'gG2#uvvGv|ذզt(8 a*++k%?DڶmZiIӲހeٖeYGeek>s_mYYeoOucѽ'殫hݥQG;(=KM nq[+6iӦjڦiYfx\|؈ک_xW_4We%s++T߮oϋ_Q5juŅ xD[k6m 0(5 j0͚왬LnT( aGJKs5k\.]XU__̜f͚4P52* ld|H ;/X6ndr "p]}@ æ0mHZފ֙ѺX<ւJhtѢŋnHu~r $-(09~PcAlfi"aBsD4M˲,7LՕ{|uZ:s`n![ m8 SN1kkwOòZ%oy'sKZv ŧ<4feg[m؜kJ4#D"~ͺ}=+;;UUwo7ڊu3yӰ2ۘ3N_٪du13+?o|T?lt,Ro_UEEV _~.m{ڵc!P1jٲcmL55-Z,+nͤSҬ7TǞ8/t r?^MϞ΋ጌN?=VZ5F;,+U{߲gO}8##&JokwՕUQJh]k/^SkURtG9/4YcM:uܸqs Kul= fɶl˴I+HIӴ,4͔;Ƶ{h}KdX<ʾFn}EEW|NqVnzUGPֶmB,ͤMiZD2LXe 0C jSiټY# ̜9cl0MPZ6ݲes2 C-[޴aGc1/rz1_,55>{_RdK|kf]H*Z~mZ8LYw87id2w/mޜB \-ð333m0MŬpZVf]?Is4 4ZVuuu.]iKJJ6ldoj͊!3@n翜͏>.[I2{{]w~SPKie/[s󖽡p%̜pŝJ w۶f+?>˚]4$RAfF#.E͚N:uuX.G׬+a?,ZtÏ/8n92OK ]2bjKmY4ͤiZv(,ӴL!V(mӢO{钺h}t F|{E?w蝹,&<B?{E6gCM P bG;NQ/UB" I %^:GC>gyfv]JfazwSlr# I9 VdXl6 I0c)A @$Vۧ[Tx7sɁB<|`ppT&`B(B}޽`'gǍ e$;BJ۫W/Q9l=zH`>"ŶlټqæKv 4hԗzY^.n;>ߵkdڹkא C[ {ɲ]oݼ駟=zC%=z_W>/qm۶}7{ׯ_wGycX>ݻvKC=fΚ:FA~[ۖ-^"IR_0>&|>sIL&w/Z+ij]͒+##]To/ $I ̙3qqq6m+V8O?- h q /(,(;hu>`0Xv4>[LoΈAP*5E /LM1 FR MPJZFvkvD'@4V6DQ*,,Hq]y 8;Gwk׮)g1Z̴ݎ$ "ƍBS(ʮ^a9&n! *zH@\c7}PYLwn>$r]27nU6!HAfd?r7ٌ$ ,pN׭,MVϢ4J"UJsW\xddeܹvl//=ؙ+wgfe+ ;(G 8իγQ#V* _X`s6b9c}ɻc= =CtZF70SկOY2.BZV肻V0BW/ <`XXXKW7o._ !ذq#|ڵ/hW_ko=ݡpyܶMD^>mĈ{]t !طo̙3]СCǹsL4ѡ|D>;wϜ9~8"m߾Ou s{tLǎ{縶l:s a={X[PU>>>w9|P~nރݻuD-0a„˗?ح_.^ &OhE*$QlgNɢ(x$EEK HI$IBPffa(-rV˥u c osʔH7ST ^xQ%IB.^ $HQ8dnQ8Da4D"q%IX,,k/,4,Ukh96hv%&jDxQ"$HX,AG+}(La.Zuثnz_`aӾ>3^{.ޱx lZ Y!<!Txp6CQ  w^E(ϋ7o2m*ڴ*RLMSROEJOzAZHN穂d$B2qIjJI J٧O_ <3k֬;wU fw\ $)͖c} I #|3nFdhneЪI RM邨<:Ĥ${Nڵk###K)XNJ+9AIII0 ,7ukO#G>Yڂ;w8`tHL|_W2brJ8q,vMڵ㪮]mEוnvnOd8]wAHo޼ \x5п V]tiNJꞐ7ww8xM4׺uki&>O?4-=mŊ={6[9N q]FBD?wsIX]HNGvdI$U߇k!BI0A`rs4!]Jʴl<,̗5BPwN޷eSfBU@  #$9N<<ɓ$C)HFEbHf e0=<="wP)jZH(Q' BR)v<==F[jb1g荷*??_Qv=$&$4Iv';,hbCwRܾ^ٴ(JBA!*'DMDf͚e˖ÿk~bIh٢ rOvАV PhR" D E HcGNpm*Uң{L͓CƎyfIZG%* \qnDlҤ|f:v#/]m͚3+32B&Ozg;(>sB{qm۶.s-޽{ٳWuۯ[v0aDTQcǍ;t'f͚"{yI̱>O_z<2s<>|agAHIDIR*Æ {Hw!Dz6MyQcYc^,I =~R0pftšjV(1Ϛ93Z7`/>}{rף{3gz駟WYe׮Qծ] // /Bh~j4yRfzMyп~ Zr~;ul#/ri# ~U2XNv^ne9H%QaK @* o[7տy5'*6;Bgיm RDU~ahN'W$B$ HQvXIJ("U$@$C &y׏ ɸ4k;FDDp,BBCB q_!j\'HkF RH 7Ml-4: rw_ Co}9)B^07Iµ&(  ʽ $)@ @$E4 a$Eբ2e4F>tJd^?z(6m]u2Ýϝ?_{P(F*OaE ߾}?~NUpEeϡ c00A S̲ݾ~A={  ({ BQ9b d]M?iI˝fڽ[ݺU-3OJ/wߗ%K*ȅ~~ǟ|q0̋_|q.4ˌ?~Bk2:L+1C!I(@$s,I<0\(JA‚WbL= y֨7ЦB5Bz-lݒ2Ik'(U2dgS`;W GP7 ω(I)7ODhIlKF*Bi $,SxTrLVlt}[]9~PT SU*_`e5:mdd[%4=#Μ4f 'ti@DyQvON%ɠUasJ @ް̼ǶC\M  sp{vׯ4 Hdd1I$@V'{yy4Z"G(&)!>iӦdD0M4 ݳܴ@ӴB`$+|[%L&>׷<BDљJtP >}z_~=ҥ 0x2D!V)Ѭj[j@Vŝ A$l Ÿa$`ΝaRmKGfF r(v`۽8y@ÛdYVvI˩UCjaCł|j:#MZ><if̫VI.(j½ڕp9\ OQryA@fܢ.zhyJ})FN7ȷ&jZMBRB6m<;jrr¥j6FPNNجYSwJx{y89ۿM[Sv-`j De*MHh! /)zȵi,l'2232sr V{\$"I4A ABJMUa-W^L"l"cѢEy[yf<}[/tX"8 IDATnw|h==߷Z)BC N0:C Ҩ' R!T d0QN,=$)AHJDĕ+Ϟ=BNX4apܹ?\XE5n/E^^^^mZZ#``TqDT*]i 9AtTTԼkɞ_܏Ipe3B$I?It޽wV oE})QBHB_ =<4cǂ97O9l۶? ÆIFRKg@Qwh9yYYYٹ鹹yDDH$IAT!$ CABKM:`0FR*[f4hܬ;tĹC B ^ !m{?֭y-?9QY:  DX@!A)B$J-آkt`cq$Pxy{\nUjZөT* WW Pi4no0 lִ)"y#ƫ!*iNƉJ@(J}RHH(Z*$Ib'LtgJ@!P$;M _k wxo Eɳ$mkAX8ZxTu4^IA#۞.Qu^MAjR(H/ D:Dla6m6IjZVJxdXav6rbw9$I /oo{#EQB49vZV*|MQFcѰ=mT<(Ia4H|uLLWkEL!Ú6-=@IiTŧk4:\WQPpMOQFMkjG4)  0؞rbq3d(.gHQ$)h0힭ڊC҃]5#@U,ERA&]|LNT%MܾeQe4ƿZɗCBM/_U'BA 䭛Pa Uax// .A쒬Z " "))5c/S:.P!RO$IE FWub(J2Rn47JP-j; I`0( o7z1pOi!ᕥU'xB ܯ]FNXV4BH!jSg!"!DӍVidyU)/F$%$S Te1rF$$M+hS^A*꠭3c0 нSe׬IL5idJ#˫b r]XΌ4@$ܬ}T]Y+h򪁴HJxz$I/"LI"EQHY!,>9Ĉc@RXLAH"iб[,A(Ѵ*,>9HQTp%o1U 䇤Ra/i hxZU'HB!<#TqV+`jAs*,>9XU1٨ qEeW4b0 {Y `j e1 -`0 ^`0{Y `jrˆ6c0L=-vk L@*^Ҥm[$ 2lm8`'\`0BHEې: P{lx*6=e{A8? WH]P(h*^`DQ4<շ9uM-/z`/`0&)00yxxgfdM 偽,g6Qw}tv|1ňXXXYXPP߶`X>>>W: u4,ϟ?&:u2m !d9֎-hPpn/ uYL&%%%,,_Rշ-!vFIIIԩS}ۂߔ2SPjېZd*oE;xELFVո[*n0ꂽ,`mEe;w OnjLsj8GZYe^[L/K,b01CcR:L-Q*Wm46/4p8vؚ5kΞ=q\6mM{[n)wٻ733CTknܸq}-ٳ/۷_R=ӦMsl  ~uI"#"=;wj.rŋs$EQ JvرI,o„ :s>[cc͝+$VCBB{>n8{L;uԦ7_Ζ$hh޼yb5oE80c W^y7*kKJwHz<~Ǐ?^|ر^{ys=9rdY^S4P/m88x_r }m~n_zj4?q!ygNWe?qČL͛rB];!n\jѣGV[1̿:%IX,IIII۷oו~?O>q0'''''ɓ?es z1T*[ RLLL\|Y? \ 6 n۾8X-Exg9{i 7oK֯[mVˮ[ۯVMHHXrel^jUFFfHH'~@Vfvزyˮ];ߞvΝU*Օ+W.Ztܹ+VUSM MߞާOo?ҟ>xYlKƏ?vZs35S;v(OgIDY\%WL/?Ý;w={FNKK;rH~~Fw8_mgfo<ԣG]^C4,r˲,+-:fj,'pY*jĉpu9|۶0kǟxÃa/Z 6d.###ztN C~w?aC/5sZ^tbae|≕+Ws<˱<_jr,bqeKWؼy l635ӯ6߾}}r =lkI*p…7eff,wvvU.%@AAk޺mZԱS[g+?׷oM\K0zdEV*(SzcݻSSS?$̬huYxg嚫\~rr.\o[5DQ4A9J=&Lرcgjһj8ߔ3fy{{GYl o8zDPԠUl.:~ŋq'NSB@Rļ{sMLLtO9c&L{muiv@,L{Vbc,+bW,uAXXS8t;0yc8 3g:BΜ9,мy3X~鲨F"0U䧟$I>~?~ԩ2%#"nݺϿxf3ݻwWE-y>k֠%L=b@T*۷n͝7K/M9vfZ@`q7CY3gnڴNM9,Bw-9ڢzmhaG>ߺukAA/^e Yyg3ȹO> p1.>w5j4k۶mOk0Q7yS(ׯ_/OXR 8`ӿ~2dzff櫯M3L5e;3ގ!^#{ jTT!YmGW_{9YQ.~Gsڵ[?ҧO;wn;}Ĥϙa&SE|}}Ҋz{CƏ?|𨨨 ɓyIpH|3ed~5ow*j%Y]YgΜܹK5`9s 8|䈂a?8ˊvS,fCL:Zh_|n&MTZ!s-B9x7E>)!Y^(^k׭ݾ}{EmvqQFefde3q}o޽{9F?/[xS E~zmgxg}zM/^ͥ(*$$$**jذ !&Pf̘/g~ Z .\PZIL.6 m'~$>s9s>Sְ -,% 5S\D>>999USr-r.Cj.`0z!P^Y=(~݆5 }z:[T_E2i3y0 >!d9ǵplٲ&Mlڴ)..nÆ I8_[@e1 QPky/_OP`nIZRϙ.دJF Pۅ3c7Ksm߾̙3}`Μڵ:Ν3g⤉P\Pre1 qP[Lȡ6 QuQQP)!m,L3DQu寱[b]fY͛еkǵ]:b  sPz$I*YNwJ3/cWqvQ@ba#C4ck@daǷ ELR{Y iO>s" rZoTR Qm< <4c/իNX,]t)2 444%%S={>$˟:yn5{Y "<$yQa0 eI&*Tb@T)۷n}WgcbbRRRϟhѢ6m\0oJ 4X`0@HVR &O{ڳg+,۷_6xqm۶=Zu <`ȩV?< $QEQE$uy R O<`f#@øfꘘ~j8r TJ?e1 S (TJ'@Oo,qIHHpwWGaReewMh ` a@:êk80l[Ť9] 8fM¿y+5b\ke `0Be/TΤز\qݿe|SiigE`;Hs\}P0LJUrفJ`cj4 ⽼{}H>0 }b0 k2nݹ_-`t:/XA7x?wOYWVD8̇c|dv8T<_`c䅋y+y(*poqi-uyp}pԚJRI9ůZ]dKe> KRe1 Qlʷo`038URk' @pXpQ~ZlٲeKvڵu֎Sl;v\TTTۈ|łBą&{۩S?/۷BKX矆422222rG.[<͍hݺuVvyV-**[e r'Kf[Wev`0tO7^n2$I"qi -)/o׋0{)BӧOuXl֯_L… q`~Ǡ~X{Nr\p+Vxzz8p۶n}axX4a$iUy9Vb0bI~z׮O|uf݃~ >sek]VWZweشqclllHH?pqO IDAT?3s+Wfee޽ŋk9kA!6m%WԩSF񫯾:wܹsKpV\ O=4lٲYڵk`ԨQ^`n, I`Ḯ+R|2q[aK7YX YRdZ3TQD鑙7w^1Bܰq#|ctzf"F|{n QӦ rʔ)`XJ$''۶9sydZQ5Cp<`XXXKWK/u oU?1`0Ɓ;ʈKB!@KD"X@Ӥ/Cj eT`'KK޹sYV^eXV絔11r-E no`'[UK,4DGg1h 25FQUo`K^BOcѐe z1AJ}|($J*R#b[6 !-V<<r{TU<1ܓU  no2M۟ $oBP/23++NS/5\DO:aCbZsOE)ʤM7dWH`*OGǦDaJꧬlz#5Hd:"@KB"bX""-V@$Ȅ'jա^,O #]ع[,U+ "ΆQѫ>~e{jkDYFV3:bI'Z'WD(In2}]}0h3*d%RwIq%R{Z<:?۟{vwTk|zK$o߽ jՒ9nnV\cPtjޛϜ\Zro]y׍rYH,c4:|vYyulJ( 8fKW|ɧ^U길cw5N_u}LNJ,;Cɉ&wQZ-^}>@iuEõB_[v ҉%m Qvf'G4:W{VެݢGMZLc2g3<`T3x'CաpvvWK- «[@R$RtyڮuE+===jz*+cyuH gY.ZؒX6W/X[D=(KYHܽ% #qt8:Vf<<3E6?ğ%" 4 P4χ&2ebKzJZM[r{JndKF|FR{*P(LJJƎ!YI.~T+B^;VdYa ElttvNL& mA I , ɳc S/+P(ttpw?xktzT"dX"!$"Hϲ:jNHD ˲za ,SjSSSSSS9;zzx( iӧOw0 Sѡ5Vhp77U)PӪR1ًd!=XT[zLr(<#óDž yƍiڄ-[J?]t8r$T$;fO={:{ǎIe>k8Rfɷ׷n{>B,sRN:-zwѸ7or܄@ H$'N8;;fffٱJ:x萯owK~:.'7t:RstjvJ!jj:G[AXQ^!f5l}c )--^z;v;o'}) 6o^FEl̊S&O>z(7=^jX"6.J岥<=< @D*zԨϟ7{Zµk 'GoX>hРrKoۖi&H/I=|8&&fȑD#l߾v?ϟVŋ\rʕE9::Zv-ZÇ۷oݺu7Kƍ7n0qƸqQHHZiјc˹eEnnn͵lLNp'MzMzcѷjjT*w7L^_v`R*>:Ç58M"{N۷9s~W"7rrrLJ{#Y3g{rB.W^3g={YÉhY7%ot̙Xf6iii{J:-[6m=SNeYUJq?!F%xL_'h<,X?j*ݬ'#g|;]՞>y2d]HVI2ՉYS&%l[DvyK"|M{ZjiXڪubh~gY]n-3S^6_TwnSaX.F(`!4W9!33uCΝ{a"fʔvvv WlY eEْg5h2۪Uf͛]t ʕ+~~~;m.*)pwܕc,K,k d*M#wMHݲuYRլYMVEB#pF?n\D[XˋΟ;oXz96ϲ,O?%5hԨQL:l-9x5۞c\:lH_b:b^K]a?ߧ^=? x{o^hYR*Jg!޽{Q.]hΜٳfQN"##9RF Wdĸx>, aI&X "!릴cfFMZ":&&VɈȘخݻn̷dp`(6|/^4i֭[:%5z̾}ܹӿnQ.]Ro,1ON!} ֖H$cƎS꭫jϿ̴`~ŋDqK,";Zku:Hd)Vәkz}u:uvn.K CB]]GW $BXk&B|8P(VoSYhҚX'OҞl{ddd?x>M+gYN/`F#a^Qg/gQd W/FODNoODZ lreVR౽W8SpH(`<x,khvW($%%rU5Gzu&?0faYA"ݎFII73fad yLLNA0b$+';6&ۛe=׳zbƪ%$" Kxn+-嫯/CuO/4 ^HdY ,7܏۰ :eRNU%m,[T9U |±,_e, dY Y/Ȳ|A ,_e, dY %<vYrb~X/E/[}CP^+lx9,[acc16Ne+;*}Uw/@Tr8HJ2::Z,@ŒMxC,,@+GH1 Fc>`/1\&&e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, (rNWQTN'ɪ: (T* /P^W*Uʲr\ dD/PT,oʌSj 8^=8/ dY Tf/}{v1;yp1yz-9Ƹf8/ dY Y/ŝeYNhʬ)B!06:jZNWvmgg2+?{v/H$lI/5뒟NU*5oi2;884lKv P(5HuY6;;W*JKk5Z\^VԻwUfS6б#|.,kU†mOy6BXez}ffRTzV7Se<{|\@hѢUu%CxYeU-ZKĒ f_Ol~+haᘱcӟsO>=pgV\e' sgg̜Mh4ǎ_t93#+x}D6qd떭))K.j#Fp, ժ=вe{'s3Dt.'Q-K L_>7aaoDGDG[9 r6RA8^T>"giDu\fglݦL*5Y}ʔ)"(gp~)Roy)W~N;wyܸqDC7P-`Xqq#F ̌#aZh^f:{lZ9 rx,Tdggi4ڵkԭuaf͚zzxh4쬴ZC(FAiBADܡOi222˫īvm"zq%M% W} ,ظi1mZ}MINSN=~ϜSR֫Tbf*-Z7T[,RNNn\eޭ[)zD^=LcY''O]t9;'ƒQ,y'wݻ5V"㚬Pω'hYaa"#BCˌZZh_vԙZ֭ZG>uuNײ!Y3}US*Dz5ku$&&1-~O6kL(ܵ Rc6mٽkP(lFSۚ5rHhY9<Pl~L+J{h٢y@?1U+{tqq ...={XjGv4ewb̙3L*|6aBBhؠJsuu%"g瀀ZݠaCl <<=-]֮m;L&J6qnOT &qq㺿dA@ 7hڔ.])ڂީTׯ߼u;]"axXxF͛KR"RXxzeKK{0))!J@"7H,[ź[oŻ:::nX&yxx0AlllTTTWwYLycyYA,8;Y_&d2 k~2 k[k>dS) Ȳ|A ,_)===>>{e,0,'~'~'~&?6trr%fddƺyy{[^1o4ih*Vdo/=m w䔔74eMQ ӊr #יL&+5|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_* 2Lrﮒ4T E6/;QUKZrk׮GI'hz±쫚~'~He7mݝbrs]i"l\Nј1XRI}GuLFhQ yJEߟRW,(҂RIOuTJ`4i $|}oI,Zn.}%UN"j"]-< {>yxDB..Ե+m^*P*XVAh˖’O)FC={҉unܠ׭ fDZ,-2b)""͛4e ݼi]ʕ))tX\E2\X&L K"?],?҅ Rх HDeKah(54z~(33,O ŋRŋtuDDիK3f,]Z>b9R9:v̺Ock %KL]FWN$].b"ܬkҠ :}jJI^VuFYgٿΟ/jт$jт+p 4|8ժE"c iޜ$jޜӺ`4![JhU+HU+/j45iO"Yڵ#ԡիM*>OkWXh斲,ZE]P$|(08ܦMa;mZLi:76bvʹZEf-EWد$n11m,T5OF痼H͟0 a 2Y?'L3TKή^,˝$g Ug7mlbY2mv~TTaS5RblKc.*ƍ'n(KH˗ϊ,5ّXL4ri;COLH/S~Cy i4tMh]#%nee.*VOǏSn.i!=JfJGB0Q#&Љu+%$PE} OD4lXB}/6̴/](2y±c)!bsڵN8j֬}nt;v/,c-KvQy FѴp!]bD L,+Ж-auJ..$ G/3N_ Xo:uH"!???"![)l޼ժYȲe4>DButͲYi:yzH.'jԠN h,QDz%4 *ufϦٳhG.%%%㏅w֭oQr&<&O.y3w-ގcGs[أ`~[ot.imXxrOkUx["#)2Ҵaht߿*WkeO+)"#jբiܸ"kem8sYIk}^WȲ|A ,_^諟T*ռsw}V䩻+=yU0} q{ Q%e3f6CDL.+|GXy3553UZ&E"xٳVXk/^x6߫:S57Yv]Dn}HnD"!@q[h׀]'_e:{iQϞ=_ ryUOnn_~E]_:Ç sI_WFu\Vo;u]˫vΝ:FcXeY"mWӣU˖g̴yӽjsNI1$s^ӹ°СC5lQ߯G}?ܻgOT*fznWtWv?;wv)xw]^^?ԢyZm۴^_lIOشiڵ<[h1iWɷe^?ڶi]ӣyf?c^^DDD5M<==0cGw7W5V^m3KK̄VZ{r89sbccjzީyM5UPh5:B^{9uRh}xrϓ?Ns.EHtH:;u(ojԌ Z0Ξ|drJ~T[nn1nD[-WO7&O\<,D$#0Wf䥹pg"m?{npe6P ;0~ܡC\rx gggC>5T "Jq~gΜ6ņmݶ݆X0~릤$ǒ988Ц׬m6y|˖-Y2yqz'N81l4gȑK":p#pC!"F +))iƌ|TᣙU*)oٽPK2o__{ί:}X\f\iSWPV6RƏt߾}ժU[N:UaZP3++ҥK.],PiUC}PrիWmمe߾|奕9Xkv#?8tw/ȅ ukegΜvrrZre;),_Zj˗/K{M}!$dǎu֭I|ð۴vگ`q۷ mFD Ì?6mȥ8x._޽[֐ n޼q4n~&U+Wr)6 {=zhgtL샇߸-eee-Z¾;sthX8@@@>}jʕND7lR+n%Mk=z?}֭{HIX2^3a~AWs7#~&MXQ}YMYde}N2c)~ӯa^T} 5 N/rzDS}&Q՗WokӞS_Bqiq?ْ1/ɘN5&ol~?tAⰲ'SS}_T&OL7]댦wNDSSs%ZvI"aj9ZP%~=!ò=KrQCIxXKvm+[o_۷tx}8ۣ{77WK.׿KV-mBqp.\`Y3A ݺÕ+ ä3gNwrvɲpnvq\Ν:q%' k}8a̾lfIV]6EFFĔ< *ʆ.~mWWWRy!Ϝ1ö:eJ+R,F&d߶~M5`cgc)N cenBiXg#TS{яnM={6lC&<,sv9YR ˲g#{yEܡ-˲YYY\I ޺m7Sn\%as@Drګkhsϧ=gL0KD'4_HEDAՃ(fBǒJ+|QEǞ'.sP!V\kq[.*sSby[d&rK|"Zxfⳋhre&;16vb%z,;mK.i4/N:}GD4y=wڹs)DQl`ԨD4h-[ܻwOժTֽl_iND7o&5k~ᇆ\"ѣF:T*ZǏOt  4(:&zʕVK߆k| *JG=o\nv1܍+O>$>.NJYB(6|qqvڵFcƌ=p@ٳ7n0:t7n7'pWh˗/]Ogcǖ=;ؿ6nر# >y2Fyz75 %:8Lc;'oo\٧Wm"~=w^^E!v1fc6p%}$?O6Tt[2|W XBqJZe9j$w>U.1d9s߿_L&۷eqfH&Cd۶_M%H|}}g͞~i)^^^bɓ˼ Κ=nݺb뫯&m۶kʒYp֭z!Hvu붒z#"rwww.܁>9~8M03>>s~ 4ibgg' ۵kh3gZO"iй]6D&E&5:+6+dN嵸jU$:N8}UZ}64Wah?,2r.>8|ncv}:27xY-ԪV+"&6-`7;ooS>>> 56T͚޽{FWc C@_UxP\Y3j'f6xmƤܾWx=t9Ư͛6q7 <״W}Dҷn!MGVu,@}!,_VZqx̾^"'nCU 2*~Y(P(lаWWW/H z핽WVu ꨀcY*qǏ?'Xp, dY Y/UeMޔ^%m?>^%_R٨sϒ,)E*jÆ{gef:8:5lثw!C}h0b\5޽nZuܹ.ӦNLLզ?{9}ԮtsW Y,Z077*j׮]#>w6ܽΜþDtڵrͲ9993ghѼGͺ>>˽Z˻ӥWZsp7Xegg6qW1y3m[ӧ^]_OOV-[Ξ5+33ӰÆUI_ViQ٣Uڴmb*_KowlzI$??+Vtԉ]R{Wj_~gnnZDDDDDD=yhx1CӧO>}g'8pJ9f"bYv;vl7LII%aarppxY޽߿-ɓlEhջfΘdȑNNN+ݓ .a? }{=ҍJWcÇλrGB{ED+W8v옽ſ^qzw}ѹM3v,mټ+cvo:և$JaXm\vŋ%K߿{H:P[nǒ%%VHH&5kfiAI\||yb7˺eK^xiӦkYKD[l%  :E"jj"/U^po]\_э7Dj`GGGXoZKD$_o޼D"iٲ|o.SUOBpŊ?.4++ppp0Y_h@^@Ͳ ,trr =/ݶMX"JJJ$wͬ۠A܉p)P||<u֕;}4nDD+Qo߾MDڵ34ծ}lEHDT*.(Ԑ\ pء Y]cb׭?agrrI_Yni/7 ʘF%J"Ngf)=Zbڴ2lo˩_7qeEW J6h_lP~p'\.C‰(&&eY??*hVHn CDu!3gV9stɓ4n6>>m4j/,ӧ7|2re-[Mݧ1ʛe?ssssrr+D"0'Slڸ1==]V_pa9jh"4p-[ݻjU*URRu ID={ѴS.]h.^8eFhѢEyyyɷLw򫯜mfR>dPn>8֭[֭['L:Ԣ Uw ?n\ҫWo"3vlXX' k8hPtL+?lb>;'''ލ+ٳ; 8ի+WXbݣUwTVIf͜iR.6n4p7onݺu֭K6n܄,{,k^{;D"o:_}5~#"XyYg7 J C!6X7wǿ;{!e2YGuH(ݻgϞ yСK>a_~}Z~*G3v=vsoY$9;;o~X x5?n\w,`=DWn/ؘ۷3OУG.[Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dY Y/Ȳ|A ,_e, dYXerN/NdY^ET^p ^T*]]]-_Ŋ,+AvNHdZVP($X/RT*2*~, dY;/۫wJSjݷwOe)5Wf ,_eRƳXe bf""˲ 1a,2 ˰3,Tgkۻݦa8_V{y 8< 7řB.pێ}TBviGZHرv;YMQU7^6ӤBE$u(Y7g7VZJ*Quv?qЖOmMK4p-.YG([S]ﮨQQuӪ݄R`x@\ ?8FǰņUVUpIT]ZuSݖ PR 'jkiYDZQ2n|M\E.7!k-*hi}%q"] 7d7)Qhi$nڒiVs֔\9*K'FljQ=1nȣ [{YvU]a`WXeVYnXQ,7(dX,ĮeY;$1ydgC@Eaz^?ȳg? .x6+F/'.EYv{7޲o:ύ1GG"rշ<< czƘ}G mtNNObūeUZDt<0='Cr Pj<IENDB`luckybackup-0.5.0/manual/data/OperationProperties_RemoteFull.png0000666000175000017500000020144711345154505024463 0ustar luckybluckybPNG  IHDR|RqzTXtRaw profile type exifxڭi,)s9 fs9|W[ڦ&j @+*}ÿxIo#GE^ezu6_/{]j9xX+j~>~nD?~c_X#k6C-5*)DbV{nmY\]Jj7F[VC+5ڔJٸZ\w =ag%׷ss:8/{uk/ViЋRn2E r8Dr%=g+kΜ,1w^?锼_'`2I6?Wܯ)vM/T= V]pD] & ĖHS,"RTk.؈4fLOϽ.QI) JO/ZUj V :f(( ե^{뽏>2ʨ>Ƙc<橳sŢw]vm=>zgyڴ:uY2RɊUkmشuɵ+z;ok5GZl4&X@K<2S\9E/Bb&YT#5PPFYD4ɵe6(o˷N;iew.rz+1/mu[(q jB!aaD s /=s zIc Bva648$uㅃ%.z!Iso{Lj5=B9ԊUg'܋r),1bya* ΑD.i&HC47`z=L b0tEAh wn051REf!yn8jjH%5FO%g͢ Q1X.9b'Xq`lSBA@?"*R,^l]7ֽ. cS[8I!{ Dyc.P8,45+J>B;qԂ#D'0<L / C9'A/q,4twJБ+KMolL.0Qiaq;QI& 9]rVG& zD'NE[/MB < &8RPg(B, zqSyi@V`ID~PB>[/i } =-X&l=џP=K=N,|eVnb^3~ y3/P߂9{9M~ O'9&'#‡/.Ͱ(96)2*7C8k= sG|zྛѡdolTq~֎C% =c:4\<ͺSJf`Z(42Jdީ|НTu;ЁLQ5\R%(j/=hPޛ,Ni!k|"h5iۖq Gh,h 3bqSB>̽|Ь Uc98>;̍Q]Jk--T4X2/P,еUȻ?stkT8צphG)qU&C.Jk;!CHKݧͳyBCJck/A)ޞt%0j%mzTXtRaw profile type iptcxGr]E 6"{ըG} (kT{?ex16kmlci' 5ⲑ_/T7s%8{Sp~ofjKT?9-~Y1[ׂ?e[ /r5~Ut.;tyq-q><߾7~p⛟~Kha|B_gqnjr|;._2s.6eZ{0Eg͆-@VilhEemݿ7S˾}o,UG ڀwmV9vw g7}ٜݱD-W}2Ks]׶cEc5CuNS=Re eY!3vq| =\ڲWs'Qie{YKyv?Ju≾GYN+Kd}siԜS۲ 3l^=]w_]4֮gmvc @gWU!H>q~̕呐1Z,|0V*N< u&ing9Ckĺu$b!W/87/ԹFLpgاsZUmyvHP7¦Tٍk)c\U \1 B97K2F|YvZ'P/m<:&Y~v39FFA` |,BI@/@6_ P:6vf$sK4LLu(>?B5>H`$WwGd6bGtqͶtc|#.=tXvp`[wb|DlX=X,re-YҸM+!6$28  .ĽضuaN=j|4IgB#Hl- J7{7 %9nx-@,[ȤZrHH7ԂO wΗxY\  /E̅BGZ:j͐jVrC`\D4Ӱ&c^y19B>O|/oe\!+L~kn#G]o0Q3a ;3a?{ \ `?8R`ɳ<@Ղ'=戥\{Y3o9eW |A![QK޾G,( f%=h3eʧ`vgQZ x?9$5u|u`A1vd!V.|cb.%v,Te~0s+˔'ktF]:A%啡6%V6.4  ѝ _Ǝ[f+TXN;"qD +R RxØ k!ci*F6ym ro?PdiwY#xT Kbj3sK2x<1a`ym<,Hsarw@Cb^:ZŗpA>|7 K$&@,Dhŧ)N a3k6~O 9`mt'gKz^ʇ.,+p;n @Y;xbH,pcLV9 }8 ewj> >+ qX- `в ׵^?3@`! Sݞ 6P]vɨa b3 89xp wPS̜ *90!'c_/Dw9ږܩRqsm=ƭ ŘvY){&zƒvZ[x0 TB'1wq9_L8vV +ּBC]ƀ^|zNȑkUvy4@iW;iw8d&yy;,87/rnl걬o| f <xVr*)%` -b]Xo ;{&0fi|=EB \F|2.= =$m`ܝEj]m?)6Ž凈azS> v.]-T.-85rytwP+E]|"]^4V!Cjf9ć4I@&_]%BrX’zd@T>,ϋԜn1KSG*O;}<<|*\dDFxrPm%0?URdbbi)+(™ ƃ }xt֨l8le*XlU\%<~KX ,"Mo0tM5*\t P;[:2nǍ}ecyA21l;sÁVo^6O:x+bA&n}Oc3;Zg 6& 6 w 6.MB,2`**V%H)Q R0SX$>60;sGb 呿総[~sG>k ؄ PC.-9EyUs C%mLTNi_`l : =ٷ.` ""_,"#,*uL8䤜=\KbH]1K&[j45BË'z,OQ!\aGa B Jz( >:bD1t[.+m&(g&z,r)WQn F_tE4r9mXZ0ouGRދH9uf-dPoyVҹO-?6"4-(7hu}t΂I@1i"7oWiZ\`sG`@~ ,4r eaրy폸ӿ"]@Hc<ܼʚ$"ƅRySi<.~9جa &rLh7rq2ZG]uCP_w#4-NYp5rMpX5M< uD^2$IgO1حCJ`(EHY}a]fokѹ8+ .Whhټ%?"3;sU d=A1I~-nl'Dב7{*WP fK8Sp#|ًg;,X / @ yZtQZʆȀ};+%/;:h*+2$X 7Z^DbjE ցFq$^a+x:K ?W jV"5 h0H`wP;ȋ6mŦ+ f #^7[b &p7YL#(lQΟQfX.p^ hu+"dF6 &6`, GXmoLA!/9:Bw]>CQW?{y,A*TlAL|[< '`G ,JWᖨ8-Zry@ !,R N?s] őʞY`vv%. .m`PJXYU^z,Gy*mAK0: .Gj0˜&P q5*|tF*\yM*@lY҄dS}e:MDo8d֔Ʊ5{&|/^=(@u܀7| d(jK |$ D9'8i"5bBiblcX{0cď.;֑+k*{by #|Ɯhsg9g VlS:a4T ʭwl`n\-9)[32u  OϖS++z`ѡܘFW6|A_ 7)PQ,~Aul{b=)G AAx*xCe9R&Z8t䧛cT,AIDX+ʓ_%T[OU KiJmr7_#Cv, P5R!4Ȭ&> ^Lj? &5C:1 EGo - -Q^;#I"RoE4 h*ŋ_u6+*UJcS׾_1`@R[)g 1 ݈/0)EûXV%PdM3疰|HߕhdC= Y[4#XYa]U GO2CiN{t&$kMH<>@q7*pQƭ"I!_[9Qy.ff4՛YcYPoxyԷ ѓ(eMbxSI*Ļ ?$*d%+Bx8t$*.MoD 0TJZ}MמمEa$@сEѫb ad2Z /wʫ@b'E[ 9]9Qh,!L )R4\KF {{GigƒМTH#y pEh,aiB`2HF2@rZ1VT'ꃉ`RL^/ݸJ4Eoǁ~uY͇_+-^6(EOW2֙6fktČ"9(TZ]ࠂ%ӚO. xCֹX@[q @S x[计@怾gl=3/2A)},/iq`\uv/0Լ廞%RW:޲(Y >\ݠ +^wX!2J)$bS ;>]q+< iQ V W@| dFAXedMD2֒ _;MF,FQޜk:(K ahRa[7ʍWdn+{Ҫj\M yKK>Å<L@,.'ʒvuglMUX vD*pi?;e )œu<\gzZ!恢?"(V^p*?7Wy7_;owg_;泯Wz+~|^c2+!+J#x|)">W_=u+L@aE0 |W׏U1`6Z>xDk4<廇zLOh[^~.p{'%e/*////ڼ~|vm^?k>6nmUiԋTo@NUl Z9x7rmǴਵ|=vPR (n.,}b6. ]x6/8`k /yl@ S=bծ(# Κ3EqmKS2_.#.nؒsI8c<\g*mgis6Z@227'C$o*;FN:N /%5"=QBA|@h/i(ˢĸqsgQy%K%=7naʹ AE{ */[б-) ex'ۈpv:50)lt Zߜz(AAR@r:l v*' )7Tۑ+Ew87~@}nJ PvQeCx6<$[)vg5(5V4RY)R v*+(#'8,*Vyjjl?[WtzŖ^)sY%JI-SSxp3(aWr~lڲ:@9JUOG2`V(IP!=PT̈jfRG U-G~MDMDU7lJg@SɢZ]>Gw?h*ؼ\l~1lP ;_:qH6PEH7cJI_4g\a1K\1piy8El"^vOq߇T]WRlQr?*=)Iۄq*+̎oOl?˪KdV!jbzN a~^GV6x4Sn3<*H\^Upx3Px%\XWOK@dpȫY?Mrt~/˩c6 Ċe8-q ?{UCќ~T%bt| M9J'jGqI< 1.=اMf*-BڡB{Qly(]UltN[>qBZ"|a-+9`nȐj8(RlTvK Vu=EYUtœ˿UEfO5-@86GԹtltW=mÅl Lyv00'L40a]e@0XI}Q%t`P+G%RRLXJXe<~upBNҁjpA@MB!*Aբ+D 2DZT굡Utth{5+NVA,: (pS82E8!(UWLQЧb4'zt6y*:B6Sv5dusQqGYBQŘ( &aB[©$ǂkTU=,HAdQEB hR "*oUj%Oq wx!HxaU ˛:鈚+*ifG5QCJW w[fץJauXROcQe".Ku-KE&2?Ԫ%;ZV '%vNj3Š$Q<+%AfN*(o)IR*pe ӡH5BЇ~7/٫l~75B-HxJx݁V)zUVrڪ3AuMr 闡C懱NvKpzF 1u|b 2uJC#:>( ڹΒCqk+W܊X J* ߫DEy^I-92]19~ !8ȥI6o}s_mOs`5llj=x(C/U@2;[Ca*yT:\M+]T#2!V,sEtOoweeEcuJSθ{X9햼x)d=\Z;<|R *9U~[:^ÐÊJ /NT9~CUo5XOU2(<ezUpM`mGHrԿP K=U/ūC(De#pe;~AյV7?:ե"x{{䗛~e?}$=XCsA2:6]ieuxP9&?a;9E|_K ZQ->w7-ݸ꫑9\[RMԢ2joyٓ }[ob(PR =Q"n!jbeKVX%6 8ft~(< #PՆX^: T ߳O8XO")@ԯbbg)liVoHnwQ5c2Su;nN/.v5`Yn+lKH-y&U"ڔٸّjqͻ'<̨ P3bHmvq}:I>/{-bKjQ]-[JXt~|i0jq OjVhщv[*K+bq}5E]$hUgE$]S(?>ȼOh[@݄h6Hړ>U)𭐘ߓ7BRTԉ%Rg,` DgvԑsTN  :߸ِc<86**cT; kX~mh~]JDjT:SP2=ͮZ@V*rw5Kv7|o]x^o41!.@2x%MQ 5s9c11 HCKT4 O!(6&6B_Bf棚Y/{^{1tTCOPqbpt\!+y'g1O⢞f#G 9!M<8UuoŖoKݤS8J2U[wx1;Lou'*-Vq^iF0U==yrnMĎ%pA]Fu)p'XvP*b;Cwa5X jP=XdÆ--]]lpۻg,鉪r8zI?0[S@)?nAJPC@Å/NԿ'ِR9y=sv ɳ)C`R?,tJ /^*5˛G jXݪ ҃ld%, U @lgS}6 `_cG?7|?7g/)_>0j 8@[GRˁP,T'#AnBWŮ&R OgCjr/Q4CacEb^tZU WʽSeׁ,rMhp[Q nɈo㖳J1e$b#3=M#iS\JSz (F'tU1@RmqSVSsvLRow5QO!Ļ/_ڴjt*]CwL$ż؁*B@%RA7uVyi:r!KwbW0vAӀdmQG \~eꖭlcUH)R08BKQW"'M U_8$blr `^ra~FJ34B4IɪCقf9;jK;{E0bDА4фsth;Zď>aE #t,СntaFE|T EE4\N fsqiiF έ.xGa5X_o'-!i˃;(;m։r4R/h MhTK╕fNE\W𑀙WRPXgRW^Y,s:zYm߽,]:ik5J\aևeGٿ*;2P;Q`_n.ə&4dTƒuEAzsЖrԩo7\TIwЙWxa JlHxi\JTMV)&i\RT fj L5܄% [}3ydS߲y5UIbKJJpe<6n%{L w1͗y,wť:rUJzG'E03ZV1hHNne#?GWB3'Vsvg,XݝL4VIVI-CYU]MfRnlUZ+WiAvꙮXRT9KgQ'g?iF͗]OqԹP,ЕѦNK>t@*j7d;=]EK=ԬkM,4*qԅx%:i%Jj3WAUQ2B/ꩵcѠs:0%3LWoYΫGqao-et`UCn*f+/:uE-rfD9]u0o Όe&QfTtb/!H7Տ9c 7mAdybMsK5i;\#VR#%ٖdsMmuʩC*ҦӳefjW8:|lqg@rWd57ʮ47,tR?%ڊ4xup4J\z zMaGʓ8:kʖ(z U6ATnho11Se(WY&RM*p sX6I]0wp[?nLw΀4DتOJOW̷Sk0 B:vl+ ͢9vtG9M$K+He:Cs/ZN# /L6q/kh05ICyrꌓl.Qr>UM6;8@#ϽnΕ sR5>cCNY_% 9!5X9n©~#WQO4b snKn 0iYAJxR'g^pgO(*&dܦJLboL! ǀ!C'U=}3f[ZiuURoXvUQh| %s-Cs6@‰eWMަnn~:#˾ۼfZOxxxrleh^xM⎈=ww]X>9ϋ7*% ey4SmjAB u&:+mH)C!kp^5aP ՅLdf4)Ko\H7V4xGK!o'[:#M/T͗ō3w<^A`s0XF`mYlZ e VF ZjKt;<ӟEO_(j¨yzDV5#2ݰu'3 g8ێ+?Gsqj.} oz2 9*/#e4q|y͙Wy̮N.v?h";Ū&NW$lF* )9_]}軥>WۘUJR#fuRj#k^4[-T dkq>Dzw GkKı'h\ .4޶9n~vU,r0 &/WSh\${gf{nvS>˽ı_f>Wy%{w+w+O^Ѽƿ}E~mW4oh~$Gh~t?}E+eW4R}E+eW4PFT]O]C)4ՔC?u"W7E)"xxm,j;G'Tq1'z/:;| ݕx㻿;7}px-I`;6j4W%&>>mϥN^Z NkBU?4\+&*T&@׶*7fgI$XJS9`KSvGlX[kYې:h`TNi^V׸~ZU%UdR!صE,Ϯ4g+c;#m,{ e8?4;5o[/va6YȢ KsdbCrA;uGA:ߑw>׆ Vy dzD i-_5*06~U *QA`]E h]BŌZSC6:nBj.ܾJ]-7{qH!sD#"hs%/̖n\Vw /^8"׏ Z5V%jؠ|r((Z %ٮWblPx!o$4vkjV.d*u$jyQ-<ħ^ j`_㲣_/^|gEqrn;{PzN*^V.emwEhbGCՑEYpaa@oBQJXdvհt߀_GּfiD:gnၗRKQe55DZv)ִr uQ$,kj>VAY[π+z[ReCVcUe2VyL @H[#S&VFl#E+⾪ʨJ641pqiuT[}U\햔7r=m'e*];1ӫ<2hihAB6w/תP +q%Ow:"vuO;VQ}tW/}0j(ƛ($l<ͪc)TMs3AJ7@k] blmSF܆Apbv~0U?s!Wр_` \¡Q[n쬊/4f`K˜K|GhY.W UfqCE?ꞮjtXJ&3+44 t9JZR{5B 1rb'5:+vn~҃հ]q&7j좨_ F yAܲЯ'گͯ3Xyk5q(FQ5h?}!ϸ+^[Y?^oz+{;_S=р< ?YI÷e yLSO#Wuk6 ޫCmy9缀>ڤ;r}?Zxї2^z>Pwz}oG1z[}y6oE!_wh{̟c|>?ߟ|=1?ox{̟c|>?ߟ|=1?ox{̟cu?y=o1~o[~{ߺcu?y=o1~lٍgΪJk TE mϖ2vv_jf $X\6!_أZpYyPb_w&3A|54'#0sxFQfT o7kVUP/9͡iB2r̢_6D<}Ys8%$uSsMZs^`jfT82YtT23h5ҟ;JVA5!]}T53m75aڳ2i BqڡX}UTMٛ*Sܣ#Q#W{XґK"leJ]/S8Q^Jr.TI=KMz<]X{rhrv%LyU+8e姨bʪP?^Er}B鹧J$T86QHb5 }Ģa'M ^ح!AIj ШijDyJ&hHcROR 6 ' @ՙkX ^T#XHkȐnv;irUI&[H.cll<9$Ti<qo%|^i1d^y_^i&ƅ^d:4F;Y]%K Bӱ,kuNHI;4aI*Ռkh?TǪwo:,'c5t5|Ӗ};A[a7ۢNHt}t=yȭ[ C6&hژid6sNT?- mXuhJM5c{4=x^Պz,]TiLlCVLNV}ZMaj>x^gQtXָګiM [iBo?ūnYu>%*/d\v(T5c&0fiVU'<G^F 7ё _{7EmrǼ&ިYEŀwxwOE42)5-˔X9C5Y9>J%`]j3vBcJ'5|rFuDx ?(oTmyL9WUj\zd .UJZ['`5{8#ؘ;>Tr[?w⧽33?m&Ƣ͠ڝuY]m먕Z%e^׋"?)QS23 g-,sBWӿ|[OZz[?4Z/M.:S?U!78<"O -B+ {fUh kڲC8 jϪA)Λ^ճVY -Uoul`󝂣!N. 5ӳzpBvM7ayATM<ώM(zz;Pt;m+#AhmW²mkAWkoOH5apSv#gRg蒅 r~X=`Ϲk=Tu)kMRwo fMh /qǃݭرH RfO9zJ4/Z{;oez^bmL0<q".e~ N`H!w] f",k]"o̩)Em<<$*Lf 02Ʊ;jXs "I?ɻe -Nmc15z%s#%UI & 1 SckNsXL81Ԟ&:֗<˪KxC'gV"gLA6?R}ݜ?$X/NRbTصG#ͥP ]yVك8=ձq kTjwhLTkX{D gr괳>0C<vRr^[ lCJ9WmYV ;:Cu֦>WG\"M#U6؆l**8VB9<|ȌHADbYGò"'lfSCF\gF!=pgj'8YJ +v[VbIjPc:2lX"qSRqprխeg9['`pܹL3z^#>g\9/aNԝ*lENvݻ[R@|VDPh f&_e::RֽmcX LQ(ۜ&!|fDW$e0KKZ)<ĔsqvJO5|(h\ϲ)1 N955Gw8jƊFSjGJ,iӔ8'Sc<85_8X)'&)jS %sՂ@&~oSl .ccqfqtX=wTِV޻)b&sm6ޥDjqŊb zt8'81=Osy:Gޞh6U{M;5Udan`Fc؈'yC%{1ݍIXP=.^BҚ q,e!qWޛuG^|#L0#^˕t3b* !-`WwOYlք(Q_a栧t(K:OTRX)\b6E8N5OvMELMK_:CHgcr>3|^ ' 0+<@Ip%`s5x0ml&ߥS9 ݻLMI]c [*^P fǛ)Ԁ$KWo`dxpXY}dh}/ec)բH#9$ZI&]ǔNg A.*[A!34"rU?E$d 85򖘟~,qdނUupzX y)A-vsk,['3!sL.RBsT`-U&&:KCi7`-ᐏUXL|~ Y9fcem[+hf5L/P{m;a :NȢG9 M)h4^~4;~'y%_ח __2%K-폗 sM\@{tX0a&QWn608]xl),\⹨̰Y>;'NV2`k] Qc| UjD}lI&O`%qHxC, СG9Z1ڤTĜ BDzbTUeAmZxj-jhs&_ S#x%xcRz?>L=%fe ͬ/Y٥3٧ckvw6`5؊׶+}M˃ѾBen0Z2+s _M7Kq7߻"g$u-mRW)_qhȟBT#F<Z/g$mn|n*wPCRF<'?̇(}ʿ&v;hWn,I<:/%28^_JW9T6}z&[b1_:Ve1->cŋꚜK~)!x-!7D eB6mdq vg'cBet$*QXg0]1;&\R`m|}539 )M N- .]5_Vaڶ-HQ?a0.칓8:~!"`J[z)Ai>hs"xze)85y|Gvpc>r_FXAAWyOmeϪX,/sI6IJKź8sfYTHvwob1S24͘f;)J'I1 ՇQmTϝj0NC2"f늵 nK[Cӛ"2NE=4i?5%b`e>_Ѽ=c?K>ö\]J |;WܰJVm^IӪ(v|*PثX +TQζmllLg{ZDz*')Un!"V7.Ml(A90>?7̒f bQj;1Xl&"MǗ D|Ovf 63= ?yHqm^VZtgͭn6w {0В4m;0Qc,.cu]ܨݣ}\pviUE3Q5A%CfXL mR.3?"[1gDJ~`f26꒓ۡ .4ޢB%Kܬ-u |XeR.AeHhQX19u3WUaN VɊo]=Yκu8ܱW"TTP'?/)Hk[8t;[--٦-{^pf~ho1ɮror` ql4et?}IU!ZWl&02T?{RGigMs ;4R26ǬegCU]8o-[̄r}*[=qbIö_dk3U4@ "b&!dplh$f@h߱vJpY[|:X$ PgVXZ.I"Tq)zw#bv3<9oα/;`L{n;]Ex|8Q Y ./Er˿;˵7sRsC3N1qdH,r坢4sSަ[I779t6:O)49"wgJ.+7WyOTRTX#-9XP`zku3/ipU([w;k[}dv֓LJI}T,.FyFGM>NRw`j:TD3h%\];WJ(]tJgRJD58&$yĒP5UyBUdNuij#,ORh|Îo=l㓌bE"hH?VHc&˻0[K4ˡN2~&5T;~웄؝P~~g? G? $'kVA_B| } [fKY!¬Y!9Y>s8unuʶaXz-w |I-@BsϘϞews ̉:gf(|YLB} ߰uQc}^n*}1+HFv')ُqV,v帇=ӑw,R ؏ ؏ Gh}Ѿ})-s kWUKu|ڰNvz |{htL%WbS2m?6(;k wiTXtXML:com.adobe.xmp T\l^sBITOzTXtTitlex I,V((/H-*L-.N.LzTXtSoftwarexKLNU033PPL*KW(K-*S0331TUpIMNMJ-R0Q020TIׄ IDATxwXWFSz/Ƃ *{$b=1Q&ƮK`+APQ }w?F7+R9g}vܹrΙ{g%#= CL&H$ͧ FQ(l}jc TJP9f+޽{ A"Wґ.*sU4d%%]d2HR,F֢h'4\M!4JRDjbb|FŹ99L&CyTAVN%%%f2_V\$7睞IEմB.9hߡX,.--m> |bTlQ5L.ݯ/J:bGFF[XШT4#]rT!?|(hVM hhv A'5J*Frh~ F*sU4Pe n3WO WSj 5L&5*VVY!h]g`Dp56~ a_0J\UQ{KCPuQif̙nn#x5=X{Գ PY&5ը<¨ѱu%Cڤ@4 (++tRhX7ol'Oj`vVh @ .._JeGj$jX2޽A))%%%t:޾˰:u^WW:Fd_b2Z bILJd֓PUoAUa4sr\.Ӵ5I&9UaU\je*Bܾ}Nk+U&j\nPþ}._믿F5KO׽|?+_~-0 98]5uU:7\ 'W\TDr=SZjA4 Hnmej9;wP( O|*uݺ'gXMM!|<VXsrZګr1oܼs7)@(451uvv7o. t"##o@g{xxxx|PyА&5yK*H$gϞ#Gd0sN/ 4DC[OJҵk}*&>t0{PG>yB uW"pӦMxBhR7n|捕޽{ȥ[n{^dIVV͛7ǎ,իW:d܆zx*ZL&~fΜ9 㜷ҫ2g'NP9$d6ņPr%EwzhVV3B===K{577?uTbb"ON47w^LLܤǎ~ M%}֭))&ƇkQt ss sÇ+K$+AA`aa1x)!#GXGtN׺Z SLc>y䉲p Æ e2Y/.\*MUbh^ r\%YS# Y{յ]HU%CÆ/G~i9xy{O{yyS_@\v5&&,_q}{뫜x*Nҥyyfq}3#ܾ};((dƍ>>o޼qС:e~}ŊE껟Gx]vB.] uF9 N>ucF{*-הɓDLHek׮ITTeD-w<ہ>>>;v\{v5Q[[wap=D6n`ccb1Ι eeeB^zE׻r\ukD5%!TQ}|=ztWY@@\z%>!^[[s+W\z*--g|^|(8yƍ{P!w-ߪsʀ>tuooAIK/i؁ulL2 n߾"zQzVQƇ`…>7n\?p`ki DbQ5hРos? @(RpUbhR UZjr!iMlWmnٳȑ#'Op?,])K镻\$ߪee2dZxA86vtt\h!+\lɜ:e29X.$3uīuʺk[n`0 ,Y L&^W':H}vd>DzVU-Z@ttI/۴inڛs\\VV Ubh^ UZ:4kDTPOO 7wnLL9hejLE:o_~R]EHNNtWDbE9Bzz,]bJ+T-)))-)fYipyrؑ!-ZmJ:uʔ+W sJɓ&4U«ʴ6껺qqqb8((hڵ˗/:xW͵D"UNFKbg^V4:]Ox%ŕIeO>ʧl[z-* aOW|djjM"5ي{Ҽ>K,ٱsGTTTTT7_ή6 `a䡑#G^rXgՋyʃTiIj`خ*Z[Q`ii1)++ee:O1pRM|Bg<}l?@j:žKǎc<9/^ݫw <&}L&sذaw޲eӹsg1Znyo&%99,,Lu~ y[HO %lkgkY\tL!uRƊ)'N-*|;p taPUFsbbcBC߾}o߾C&4_WReZZZ>Ĩ[?'[STtj~SL),,:矊Ci4.Br7]OPďW`cm G](TEܹsP9\ ?wﯦʅT0e &N ;~4Ն *ܑiӦ&$<|2eTr޽H$"(##3gά4*C\`w|>ۛ7o77W2i)?~,5ApWaQbaiQQE= ˚ur=ukxzV K^H BE=3Y}Λ7CUkU?jIփTiIԛ5v6FTpPo.Un!A66C8M0($$$A8yy>|ݻ%R˗{[YY$wo:o>NNNɤII/aԨQaÆyyrD"~[~'UФ*\]_bccE"X,z/:3mJ+R1B޽llmcbb vRSdQ.6F6tU`߾yyy0fiӦ{nݺuÆ ѣѣgϞ,ݻw/*,_ӧOVsƌ!̙3oڵkJROuqiժunnKn\L*nߺ?ќCaa"P$>|vYw)2d28xZ V*n5?P@K[J%}=[ɓXH( =|4Jp @*umERE"bhR UZfMMk`44\O/S(T nZ:e+W޿Eڵm;a2yyoݒI$[d1ctts'O2_0_9,Z_~7nHL,,,Rff]흇UU4UaemyQ__޾SSO0^KKsM*v9r A4Ӧ}ӧ]rx^zʧUL&1Y~I'ƒhzS>i`WJJJ }g{g!d|&}+WggeQ(s !ƍ`?ˋR>&(x8`7n j*R]]z呣G#DH$ݻ-@Gc ${ Sz޵{kן=㗕:rt96D\wmbTuA[fMSզյ] iv?>`@?p`v</XwٽgϤΛ ͏JT,7`X\.1|ݻwp!5n5+U4j~UFQuka())  aÆRe߭!||zYgCwB4\H]4Ny6! .^k !V'Fo Ӆ:.Wm f߹?MPbzb c'iTtt:Q,|WE`` vJh.B7ODl̆ Q:]YsUhtAX9'4\MpitJ_$m>0+uFj>7F'4\M!4uT* IPntD"@@T TiT UszO"hPC 1 Vnʡt{-/rl  ?4OMk:::' WܜwL&S#]L[[;Po.4NHB$6gjC `_4\MH[[Mvh4ZNW hJ$t44EBIn;ŷ?[Y.ʰA6>}3KR"!ށGA#BQEA@  tA^dm AH+`ԙӕJbDP(TQ7NW&u>| A*Q7N\"bE# X,kQn 5h L./..q A_f` ut \(EBi  ]g+`ԁEAEAU4Eū\$dV:AtRT(ꪏYTTfk R{;w A| ]2g\mrrzU4KA MIIL&U{hhkA/ >H4%d2YQQq-b&H$2/**dXHA4 P(H9jҥɓXڊ%n^1o.Ų<} G͛7|.&%&sV9_(*jw)--}&I'FDFؾ= F{xxxxx|PeА&5y%K*"H$gϞ666#Fpw`0 *QVP$eee[6ow͞8a²5DU A"H={_5^U+sss8\%K0߽sG<"#FF>OH sj???E̬3gNzy{kiiIsAA&3807?uTbb"ON4bbb&%%%%%=vv^ԸPk<=@(:udiH#_84YbFY$n"c#ѣ@kF>| CO?t떚z i|tԩ'OHעyRyyy7nތwa*r +&&ZGGg]EEعS[[;**Ky@n,T^^3kW5DU W*!ECotut̬֮n-^g=ԩӾv=x6ر={{ܰaC޽M͓F5w(++++2_Օr\77MUժP7XYY@ZZa:e\ bdlO\y33{Qŭ_ \Nw%*CrժU!!޽۵o ӦN۷gAyWڴiKiѢe!Oxgg Aʧ;99@FF*jS֭ېZ@$j<#]Ї%"#Bx\{jyEߍVy9`;cc̬7$l&U㝚|γ:65/T%QU#]#o9|PRR|؟.]r8]:MVFnU+OEFF1RZ*#v<˗An IDATWiӦ%ä$'%6L66c} #/%I5LP*J 8E7pL.aa@Tk Æ]CBBP( ޽k 檈`H@C!B:u,Z999RT,~3U:LJcӦw@p͛6nd]]xbE$QUÕJ 8Eԟ gOK$5y ˚)Sܹ{铧-V[S&+v?WcǍ}2k׬e0)3g YbrL^ݽ;Ã܍OH"J%D=@"HC\Oy0wGSj8(b0'Ouv uA5gN?e&#ysӐӧ>|R={=fLuKWI0'OxyyegP(k#FΜ9SQի= xU\\J6$jjR iAHOSHҴD"xC|g(JV| ^_`kkBa2l;Ffkkk+{HHPx<ދҲ2C 6SRV"ço?Ҕhzo߮/SRLMMtuuuAt177RR>{>)C.T*d2ZZZA 5Bp\S# XcEں^t4-eAA  tArOW.rDB~`PTϔV ΝY, WD:]L&  .ǣRP"/@W9ИuAtRXZZ2LX$ ȫl&inn! ߼rjp胑) 4+uvvv bL&e2X,*--ѨvRA"H++kDRD DBM17Uu{MvΝ;"#t.V>}^ BSSggjkk޿sY,}9iX1-7!L>|hc'LX|}ЈsOĊ/ZORVD"9{- 1r_XR?TAw]婝JQT]޽SZZ3r⅋7n\OOO]{GG*AD b~22^gןToPM *] %w}}|?(G sj???EHVV3B֯_{|k<=@(:udi*=}l ϝر)ysD+B;V52 &:X)U* ҼVU+dEяwlwQeJ! DB"6[.;m-~d!Hh``/+#rA9u:77 璓SOouKMM=yDpPxY{ggg O|T)qn^{?ǏO>_2pWD3!M:sG=zhQQQ^^ʀnUꠚM ͻg V_/_&z~rwi#]20YN;^xͳgq^rrtp8&Lض}{8'Ntbdd`Y,V֭Nr8}N773{|^⢫[U&~۸ٙfkkk;f۶U_ +&TZZeckӶu[&- P4H LN~:# jG:uAL&f?xagg[nasr|=r %3#+59ĄbDw,Kk+333. u 4~RT:򋊋RNx&f\.FuA X,v˖-H$4*bq86C㻧R"H3rSӴx[vIQ=榛vѤ*fj7t655-(( MQ=@7_TZZx4\N)/'t=lhohœC1kU&husO=k H-|92afkH۶m[''cxЯCI>/_:A HcD,۷ 2LXPPÇ=zt..._AIgBNAFq-ѣ(:>~„#Foߞf<}ҥ6L4 A zOٽuk;oܐћ7ox߯oGۻTq}{{>?oDRʅHǎ9lmeiia>f;wnWTԣGl ,- Y[Y*KKK.]bgkccmw3333G"پmGQo x'O޴iF۾mkJJJ җH$O8aCϞ={N0̙3T s =U֭zheiѶmMAcͲeKKKK+^`EeeeXѶMkc4 ޹IKٰx }ڢE Hxs`=zM۶3vwoy[m#?o~LL"$99)yo҃#G3tU**PE @pS39shrΝFF|իcǍW|r]ՒA$M8122By s2Xtkf$$$$$$sȪJZ?rĈ\2sJJ S4npP0xY{ggggnnq1O.7ݺ{Ly|9aDm"x{{DܵG=ڱsvTcoo/5*ǸxrJ͍z83+{ܹ آEΝ;rL&۹cJȑr(ƣ ;wĉי3?~Qs6l۾#-=ww9r$(ݻ}On5(sssmmmIq$eR` Wyy!p^qq:uw>]w999ikk1;޽߿{|]Vݻglٲ%tpp^q._4cN?w1cKNqn޸͛}888|vkWݙLf=vi`m^*,mVhzzzPRRRI->ܕr\WWVE}={lm8Ί+ 99Ys2kGJJ˗/_tٲ>}VWRw=nxƏcNpȑo_WW%%]Iѽ{*GU _ 8d8/D=u3L. -˩\.')իW9kۮ]rr L6b޽UӪo^JWW7S@ .C]|yP`ѣGMF^f%Kʝ۷޷_?x5vJDo߽pL&w1]-(0lm*c_AʁNF:tH100>_㏠];w@+WG+CYT:lrB ߻w޽;w=sN;IIɇ?飈rSV ﯼ[jir@쀁8xpw36nC ͮP~CCr@ ЫW!!!ڵ:tv8VW@TKi\PRfsTpCBj%%%$q~~^Nλrs\|Y/?hff|+ipPњӵk!EDD]V弦ӯp"| WqCHykML||u6p-5)lݺM"̝3K˗/?ѣG`Ѣʃ~kkk씈*  3tHn`ԩ7m8*mV\f-96666jTX1*u&eυk.[>* =zQ_c*/!`=!!!BP(ٽ\WD### &/(ԩS`EׯɑJb>/twm+ ~壓'Oz>ᅴgy7od.:{V2CǎA7o0550qbW566V"Ĭ\ Q7];\N__'022ӧϲoM66o{@ wn޼i3pS GA^֭[;t4i҂?ZXX\rƍh„ ˯\vWW0qL2988痕UtZԸ9SDU+u;yʔw<{tşوn&M} <\9 ;6ŋ ϯ[Y򝄩Ӧ?{'Wsν^hhҥK$2\a+~'g-[`|L6o|Ń ۈvÆrْKS"=zsƍgiiikk{{)1O}fhHXll/PwpFW/{w͙qNT^R:\ ׯR,k _/k_O_p#glC#G" 0Ǝ!wkՒK._⢫G-fϞf}֭[c0/D=4ŎT*MKK0QQH$R8TH$&T¼+e`\8~%-߱! H[̙YYYZZZ3ݝZ[[@fffxx؍7wܩ gs45zהWSM&a<-7fQW^iӧcm u_wgOңGN0\qq _+t%/_~:9jtSϫ9>ggv #.CSO^v->>ۏ7~谡_pvi0nݺugoUtky 5Kgɐ: eȐ!C Al\pر|ȑ?Xlȫ9tׯ2LT7H͐J/_.. ̫9Oa5$KJJf$'t뿦fXB 77}eDd2YYYT*aXͧԨHsf1EN^e{ piV ! HNAA" :]AA" :]AAU  tA䫢n((({WRZ  __߯vҢE/t?|(|䉑 ^  _%%%%O<޽ޗtiilllLLLl6 U" \Wi=ztNJxlݺ-44bM4q%$ׯ3fH7w :&%HowC:䉓&NX<ŹI{9v/%HVXXìY+ jy-Ur! 𞮆D,a=зo_E+x{ouKM}uI_~3g7R含WȘ111:::;wxÇwخ0Ւ"u(ۙ3ZZX;>&&;%%6mYr! 8 ]tҥ˷vq␯ڵI[KAwq]p}D6l`ccb̙ eeeB^} r\ڵk*!5"u([pp]־sgѵKuk֦)kS.A_|[epBCEHrJ L>bwo*iӖӢEJC~|#ddMsI*Regg@=G{QƬMAzu=ҍ޵kL&[4$R.«4/JCSI*R߲G) ҘFuLarssw޽e˦sΓOnD6mZו66)aaaCU-KP BPq}HR,,,cbbG) -[@JJ\ 8ҭnu6}]B>ɐSŋ߸#Jbׯ}. Հnniw @p͛W2.H>}]KJKn8>\y ###bZn5uʔsL~&y˗iۖdX6mǎ1 2ի]uuuT@6==Μqttp8'߶m[ԩzz<oԨ[nUi AkT*MKK0QQH$R8TK>N_RRRV}H*gdZYY5X{\^|[ ؐJiiim۶|pDٖs^l6[[[[P}t) }XZZashUpJKK^$&\. UR_J{[X"99DWW!ߐAA&tᘛS)Ԕ'OeffjjjpUAtՃJ0 }}}PXf8-# tkBrʯQ(t ::pPAU  tA.  tAR 5L 4!*wr8EAF_6FA bDN2\ P(X($$x HPZZZ\\, \NX,*JR hT6w7j(o(2/IJPV^eEPD(Ád (~E8A勔QZv[e݃I68#M~Wy|y;5*rr`T|>re0 $33#)))8$0LRRX.PWS3{lDqII)\MJL' # KKK7fE̙3UeeeQǏWWW_6| 0A aaaVzT9EEE%%%j7BerjMQQwii1\+"(thooongN)((Hr%b[ 555r<,,LXVZe\\lQ~=%=-].9͝痗ǜ;WTTtaÆ?9BS]ʪIQH$|>hİF>GH(|;njqsw7'gE@^n^+EŎNN'NG''OONjjnj#+|+OMMѣzb$]\\&MLFvrv&I94t9pĉHJcƌ"h\]P\R0dP(,(RsV1@ :z Y Wovv]rq:Վ_K a B$~2̱\Pg,Q^^^ZZ$R@(`Fյ_~nn\43]77zA":**77777\.8iJn\IҳgO!!tp|F{iQ\o'\2 \x%-5[INgVzJdYi)J$ؘ؂|(+-!Iv_*۲>>槚ZMujGoFoPg |>O$T:ru55J!$It^^Xdt;9;׼'MԯTZ]]}CZQQFIqqIIRP/͎W^^f\$ + *FSUUU^^IGYYV88Z1Ι:B%BM;( $oV4r;^qy|anq7$d?sj>|8J@ ĢPؗeg`{c =eYOpLMMMJL77W˾TT srrtN^YyaڑR,--Ydv$Rn8WA2njBd^_>"ЍyFh4rn 0GVO//ܼ,TڣGKΞ9raGZՙ3gJKJ)))9{4pL&x<Oќ>uږ^Xxxkા3PܣG8s w,hH?{ XIݩ3#"RSSZ-0&Z?B-(HHdiiiii)A @ dBNWD"D:x^gyyyy%~A ua~h$o~9'O8isᅴJҐ!陕uȭmK/Nv¹JvHK$UEE9 ),,<i4[t'8$8--)og]{ٳWYYYRb҉!CNujtZv< b$dv2EQЮ={ӧqrƎgY BaP- IN׿x@6yd?a|^D"@ >cwc}||P(ٳ lQeo/@TRWx6mذ[}aÇM ݆b3}|H$ 5~v߈FN{_??TJ$wpPg̙lHJ=EQv2QVyxxx{n i~@tffVh訪:zjtz&LIIoA'O >cl>tϷSCu-4Mgeeӧg322Fh銊2(e2;L*H|~ÙC@$b6333)$ܹ_kbWWW={G !PxLoOOhJ` 333:~+TXBDD"ࠔI Öo< ZroG\se$I7?1!V\BWDF%'_KIMU] E7=޽{s#TB4Ewy+(rss'"-=|fd277Zf9fjVA0 S[[|!IR JU[[kbL&(/˲aJX?F ENàj]е"롇P%~9;g4j%ǻ?t!рBmgyf B.B!A!BtB! !]\!P i\!7m;SU;]Q3 !Pw0^wrtlBم4@@!=D"D9]!NB!0"BtB!A! B=grEEEDV A,xxxmn@&_T[YYy9> 4+3fddࡺ!ZT1ptII*&A!]IRg'6E̶CBQTNBu~EI%tB!A! BaE!P+"k*Rjt:$y[޷,J$= 9]tUWWg{x(p$8Bu!UUU=0{(00]Ҷ)!Ut:LVPX.D"Z{! ٩ꊊZ~]eM&`^M(x<Ҩ|0E=h$\54]WW䬰B0meeUYiH$ۭI!BA2d24D*jtNԭT*h4& Jmp?8ŋ_]{<ԓ11ZTҾbIU-} :0h4.&I5iJ"qtr./+Nd7oތ:~Dt6m`my L4J`0ԱgsT0턆 ˯=3r(a6 гgϕoyֽBa8ekkk F#˰Zfz`4ֲl#/t[n*..E};wΘ1c*7 "ŏ?6sed7'G?0xMww7hpđl׿Λ7ϼۛ[Bllg}yL^tqjP( _t\355%55ٳ[mng^&kTHp0ķ*$ @66,-obDTW8;O>Xk9u$o=s…{'L`ܬ_ٳt횞w k~E\??;|xxRRRٱ \4#~B!{q?e˂y |wnn;T*9w.|Ϟ+{ϭt׮/<deeu j} ~^N: ZW^3ydD"HLj*8l1 k֬:th+2V}>vUh[ FC. ,[Z\=%EE4~ RK^y%(]f\.?sm[>p))VzpwT;4hAƍ|1cXV;vdga{y#FlEBaе=s:.W_|^\\Ɯ=sT"yYFe|ThM7K^^޻k܌uM({ٽ{K/1 Y@! dcƎsqv}CBQ#FN<^vNoOsnKx}|3O> >>֗Mnm^{eُ?B!06*U-yG#)q`PYOA8lɒ%qz^qs57UU6G'%%4~= s;s̥KV\iYs-7jȐ!##9aSZtІ _))*-ީKm\Ba|앪3S"10"+v~sBXޞ绻/\޵RU߰E=и]1^(n۾}=BH$|Ŋ۶5;QޚP(M!ԩYwCtffVh訪:z槴55򩔔zWiIIDAT:;;SD]VVӎrn{f^hLIIQ* Mә"HBQ ^bt H$גjk5GLQ&jD" !PQ %S(r"222WRRS\]] E?!vFQ;Aii._^Y&nnnjpt J@_$Ir@Rjk9XLd2?8c˝yo.G 4tBpJAH$E=` ܕو"F#Hĵz@r\Fqcb0.J$t5EET*nd2h P(Au]eV!|uW\!нA! BaE!]B.B!AWB!A!VZ~pͳ5B v` f!Ptу:--F#I eoo-˲G\Au՚ wBk!ԙ򁪌vvvtQ7QTT.Hpm :N' 0C$.Fu{vvvjٚ,˚L&h㒅bE>֘":'D"on.Muu'gg{{{.AX*-)D|~tCBB >>An`֣ǎ4_a-99sc;۲Z;lw3L6wodjf`o&]PW.J_K<[ Sײi]*((iʕ'Gՠ;*$-ﺫ !+4duFڠ+ iǴq;oq\+Li^0FyP2ΖǎM7 F9:j9}4;Nzo),inUUUPPo^ǍW@U]Z[YTSM8[_*tQ2,f{09Tivvv>N 0n؎۟oѣGwIZuWBMaY`42, t2QWYV5A[J@"Rr+xNJ!wf)`4ֱp^ukjj֭[:jȑ#_{zt:݇~8vAY@͛C 4hPy]?z}hhqCqqK. 6l؂ ˷\8C-Z\hh!CM{dZА]vYYZNN^YYYocĈntq{f7;N5`0waZ%/yyz-?a˖/ƍ>nدh1Q䨪^~>=r ="o/XoΘ>M=d}v{S+%4M}{؄^3O?zH|UN^RVUUy{y8;[e˖x{-xz~nn-Y;tSojji&Dܷos=gz~CoVS.^{999Y䥈Ж-_ܸ'bcc5^Mz5)_'K^z=o/-[HHHNy& z36;;뫯<~<2覦i#8w'NKbbĜk8zɧϫ۴i'wk+ٳ[M:5 \وN+J[Zl8`nSN:UZVTyۨ7xi+ //+k*] .[Ο?ԓ9!BuIvujMB*&;McǕ#Q<y.!32ϟ?gw7w}oY!%5ov?oǟxEuw{ ~駐!lOXt)m2}9٥-|v! |hr򵖮Ҥ3VZQ W{lhW_a@m 5uLN~G?W!LOϙ/`J4P_ϠkUWW oUpI kV:teciȐ!^^^׮]J]{+GƠ @zjO~O7N&AA| DEEYNDġ7W[lyxö,-((hȑeees ***0`@{o]l nMSsgQ@jjl~~Ӎ=6S*Jҙ3O`Kb+z%)))\=oL"AppΝ_N˯ƍwpp C a:h|>Ϙ?4~|qq1kaÇ2|BA>S0gͶKFmz⅐]`m9rز̓"7~6zhPhw nnnn7 FrNLՉ|A(0h9*]>v?"Ixr>lyAF~]ܼisġC ۷(d qpNNvmm-WXVnmeZZ̝;SfZD/mYsĄϘ> 4N[zd#V{%7rzO8::qÌt8ieɓ@zzea};*c%0ᰆ-˳Ned)SyyL/Z+V޶mٳD.]Z#FsHɱ7~x񋑑"#}Ǿv}ߧoߦʛF;)׶mnF ɴm}HFAJK1f%,@D*<,Oy`=_j?6VۑQ+W1}:_ 8qeٚÇK$I7m޴M))hg2!كb-"ei  NKMʕ+W\ku*־=Qll M O) 2ΦL6a^_TTtWh9jСW:u… .\ٳĉھ&]ILڽ'|K/eeeXJy(ᄏu뒒j#_XEA @-jUz*.\=*O$ ihbt;<^t|ŋޢ%(?_&Nh>=?ٳ/_>{\sX~Yss|c77ߢiފ8Ԣ-Zv7^jKlt먒P㑑<ՀkF^e ll'JogW- 6eÆF-ڷ7rn0mVxWn;cb5LQԔ)S>Q}*ofְm [?;32JJ21`vIJj;iRIi]Ps=#y+kogb.gg v;<~aCRRMӉ7|cǎkB:th߾أ\H$ ?xz+pwГO>ɍڬ̕oaY͕+Ǜ7o .,xze_xכL,ٳ{'}":jO<ﶕ.]2/^|7`$[[䓳N ۾Ym^re?KpEbH$yW1^vtr^%j2'&/OeHW{ #o*Z7'\*2 _u:|߼ywqqqygZCxzz8ph4ܙ4jԨWW62d?<0>>~ƌ׮_֮]ӊ͝7a>?3w-K#bg~{d3wNSZu=׮ aÆپ_\y,2..vѢFz[s\IsǎW^^v>5{NBBŽo70eg{#O>lRk[awY^|˗/_&_4O;4aC77˖5zg9{fܴiX)of}eeee\.(qV\ 3gr;f_$?9kVxx-?kƲ'~om\Z>}@&=Ŀ}=G֝9se١CD"_%߿wz#bq>}Y5l;?j@ ŽzZpc6sѢE˖-W:8dYf}Ͽ{q͖H$F }̒,yY]z\.,nhmsεH$SL9x/Ric_qX={-o;%TH$׮^upP$RRD*X@(h5Wtf0#|>ֽӅ0 nnÇoڼWB;) By,2((e'_KIIquuQ(.B 4ݾ0tG4ME LMKtqLvSNꂙ.pbP4:!oTS$)BJ8Y3{%(eA5I$jEQ*3B&F5 |H(A.j@ `FU\N|[WG A|ixA:!vM cbϽڂL#eɠo5BteAdz[t d!ꧺ,!5e Xe}.AɚLˠ!Pw;eL Iо$I0e^Buc;X`IҦ̳e,St~!B!0쭐ww!˲l{/Hez5%hG!3D)qý,7AgoRu:@-B!m\tN eYX`[.˲$IA"R"i.MK(H$j8$I[{բT "X!ЃeY`le.gB!]`!IHEx\xH.B!tmWi!CY0B;.t crB[!ee:`.2 G!%y<[-[.7Bۙ.:܂!P˳m"A $\B. 2ԂLa!wBd;] p.B!0tB!tB! !]BaE!0"Btq BtB! ! BaE!0"B.B!A!BtB! !]BaE!0"B.B!A! Bty<25-(\5!P[TJJ*w'-&B"\KQ*Z=2B(1UUUrLJ F.Ǔr<::g`75B%_MMOwuq<VriYaFSXTTZRZC!ZA&:9;]]Hl$$rP(T98kkq!B@2L,ǖ @EQ8 !j_xB!A! B! !]Bj,wrIENDB`luckybackup-0.5.0/manual/data/Message_validate.png0000666000175000017500000016572311344507316021554 0ustar luckybluckybPNG  IHDRm pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup <2>?v IDATx]gE>=! Ad aw3# ]u au̸ !K b0!JT$Ks'~TwԷ;2 էN:U]VNO8qw7^0000000000qq݋7&0^ aBfyRR˥;& h3RKdBhjFPW6l !\]ߦt2sRbR]R) W*:ԲgB1Bic60If&b;$*1,< T @`_eRmJ:L)ph#Kj+\zd-H]1/D]1l=[J]*oWJ@B =vу)_K•FLʴR*eXX:u UP8(o F$WJ] ꉀ5U0((,,y3%]-iBՉɏBvI9zQ.S\LQ:ӈn^']gz*Nl =RG U0|]6Cpr)]%.)!b Kq>'0-ըF8U|tmUD=V00A0(&-+<_ );JhIIIiؠaM]TRR3[jӪuJJJPTTo߾'O={6/W.-==r*M/Wζ+ G$Qa2 ztE@]_CxZ ˜.,&h!͠lJ#|K2r*!P[7X iJ>7Y2mb vU "u\גB0*seY S yv:WBB%!6: څ5 X|A^AʈGKq; 6W)= b2-~̽[ĆsJ=Sp;pvuuMhyHK[gX^ih'xЛ$^(1u[ݻ 55gq?TXa18t0t.T)֪NrbΒ{ssl۶F;_Wvժ:u[8֦u&M.)..Qպu+ظqSR#hv*5kֻg."v[pbwc18̘Yf} \/a,dR\YL1EYLBM pK^v}TT.8W3܋{*sa7N 31Tng:amljՠСC-[1bKrs׭X)x$-s"r^k Ox.A\N+@s&!1m 9Tp~2Q*lJ#Rb?YLҥ\=oQ(N?~qNrX\U)7W& zjh:CV)7P8? ?Ù,F#,;{;wkoFǎ{tqÍ7VXQ7BP(?BP8QCEEE|,TTT @ l M E}qY!h~_/&aY.f#:'ډ%e`^])oq/,Y՘B.]Qjh*AD*W;x* fL X}`uޣ)mn>;$E;\Si^suE] 'MY,%ӼeecpA3\mЂϜU K Bt0FQt$=V |"@Io9ҲeG)S&K& &.Gɚի1xA0f޽]u}Gz/7v/zAPCE/wmۺt钔WVumm O#u;l=s̡Cnyӆ3gԭ{q@ũS Ν,eu['o,,,'ԭ{oݨQ6lٳ0C7>\VqqÇ&e@ YɓAQQя?8f̘=Wvʯ6n4cu*y+^hѢ?Zly],_ ##e˲srrrrr{뮿GW^yUrJ$-----US;{)}Bq3ȖӒ;).Sa2 gy J!BPUz)Xc%(:F@.bw g[t۬"ti,Ҷ\ uW:~r S 7\Gqe`%N&XT0r5fxZuc+v>貋bk.%Jzӣ{ݻ@^^?v/UT=߷XJp%ӆCVIRv~_oIl{萡Ǐ7~=^jU81~ uGպS;.MIiפI3_W ^.5^P\T(kxԌJ6W|^(^٪+%5(5- ovzÆ СCbbM'eMN>#mղzjjps^{m;oiS8rw~[|[vey 55'dS:+E-[?|PKb^Si<Ӡaý{|vǍd /d/>u$4i[nKգs̙W]y%NUC ߾˲f/^Q-G<mvXA^0>(/DDl\Iϝ7"}"nw)tٛ%J!>* iᎱ*ŊH?fuE OY;:zʥS[^*6|w~5u֕22%ؿg^=;3a„%KT^=qiW_}￟@JABZ걿λw C~V%ASTNO?o7,OHzJ))ǎQfhj599FHaQQ PhȐ!YYYZ32l8>BXb~֭e8ڵk_K/3{7v۳f>b,\tMOO)c~+:X~RС%7/8lƍI&#٧OoڹFK 1~8UȑI ,^;w]?P??lȑG1c#Y$.Z:g,i  OX{@fV=%:qf 0{ +X,~k}ۛBK=`%%&,ُc +"oJPHKX-Mp<2j!R!Y!LBIdd=Y cGb:iW͠|C^#"|Noa6Ⱦ,t{ '8]Bg<:z5scܔa.W9}ս݀&U͈"szP(/?0Ts%܇jq+f  (p*`_a@GH'6Y<@H1 Dc0ۇ*ۣ3/ \ĒT#L`\}CۇJuZή"ۏHuDl<}I$R^{lp*gP)O˭ $$$[܇v@m]SHRAp~rV,9;ou]>b:.CGoNh@!8՗vYq2n\qC.I҉cc`Q/B4^%,;֬G+],[Ţ}<'^! ͂n(^,- ʘ(^W"u7(5kd6XRLAd#A% H?pq̮7+Uuji{o~}JjԪ9.e0`@fffUhVk{{>h;MXn>}ߞ|a:\qEbb-[&eL.{~{8~; 4`Wᄏ… g͞ռYsм#EAc g4Y\91cѼէgL sW]%XBttHNN뮿3g,_|Ѣk׮ݴiӫaF˲N+/۶ݳggF>,>7xtԩG7t~M(vىψ!gq @8Pu|܌W?͖v7ç|7*3XFTnu n詒bнĶ偺LAGoBC=4 Nْh;V-[kVbJ?w3nJ:# [jժ_S;vرo+Ũ|J*cǎkѢ8p RRRRRRV,w/ 6lEd^+-T҇Ծ<Ç/ZhEs~D}͌ROݻvVV-ySUq jUiPQD+-y*E *ib bo gLL2| (*ش''* +f u ‰JvӂhX>bJʥOWeS1U"]SjNz&w oAAqM"G]QhLRA54(: vܸzމu@F{7))=7qH%Z%`ѣ.)p[yKCuIBuõMHЬέRk$?Q 094i,βL~(T^ΝfW]uU  Bk֮o[vBʯGe͛?ʕkժU@FFƴ6 IDAT&O|={v_>tPYU'~0?w`{:oذwHMMߠA=HSFO 7n2d2/b)^}IYaY;>=P ,GPf{Kg3LAcnP+,, P^^( yyyPP(ۇ{4Ip98cDarb_=5jpI(߷c쓜t44yxFՂ:Or*lQt6@mG@CWҷs#r Q6J]asFD@_BH,pl%q8aA%n_7Qə~v.Ӝ6C Ny.ݒ=t D"P brMY M%^r#A+A9sЩb*U-@ՋF5{\MQ/Ce W;ނ IJ:vؽ[7WZBԣGꫯve+TB))7o~[JP^<瞟5{=_ӚѺukبz}oT1@\H%\@/).YfpұBT>c B\(*OU |uV t 7epf#-e\|Sk}Kzlzs,4~+b"n,\ *MSHk!%9 =h1A5=- `ڡj_@͊K+}*K DLYpzi6OqGUŽb^"r!눠JQ1_RpGL\RZ)VzSv)0_Pʯ@|'N?~<1!ᢋ.x8wl袋ݻ8\BRSO;{~($HMM?9߆ ,*LD! =친 qhJ/Q͂%QN Π '3]'6,&:Ď;B\Z="(!Z erLB!^Ye@`bD@zb۲,#._=gq%UuƵPG-͋SYnjK )!aġ+<Fʪr\*DQb^Q:H5Ym>FP9|%XNCnuod'}=p86X|#FOL{;noeĔDA۵*fTSpNg)a Xʎ[HU) L4KA:ꦧЛ$^1N w^EK˲RSSSSS( Jh??p(8 K4Qae6h%_ ELaJy/Ί#\5I}CcIsE_NsIK*Sݶ{1QMcO o1V w%Se(- ]- );J⅒`Q41Ԓ_zo %`P! )U0Cc,M9ML@5+ pVPo\b9"X&!Z5j!:y3ˣZI5^iǀy DNsL8 AgЀ+&qM |[8a?;`MCx'{red!4qHIE̞|()bƄlr;=ċj x#vz;=ɍhl $ +N~+-a^U> y%KRЛ$^(1Ce=848IIᢰ<]L9Jb IILCYGx61+Y~ pTP˛84ngV Hy%H8Coh~̹%?e=`z?΃;Vo>Tn/rt*|ˡ 8sm```X I tcW(1!`%8#wC1 @ ZXtu}eQ[6ww(vGaEt3 \:[P}]֯9YEm[B@Rgdl#(̻qIIIbKp܃=S$|9+ Bӥd  11b,55- p%Wm%W#<'[->Wb+DKpUP=ZQ(kJdMv"v ^ӿް(\h">F]edtM>ѮL$ wK~ B@fj Pm[٩m] :Liw4ENoW+=ZEBT \q=]oGDtI0KDJV){N(Uky#>[R{$=:3^sFz]KJ,W*G̨rl𧗈ٕK]1֣6"4b;EU]ngNvwQչ*$koLpn 5ʡygeg:I6Fo53H}F CUK\JzP . 06 )_@5n l1)f\ NoWk0Q˲7̡݇2Q/ N/?UDx{FUHS=#Մ 2bM{Qs8Τ]WV9ǥJ8>#x'kUZǻS~~(sn HX #(w9 dDi"0ѱR$-?]4omS?`ֽ=,j3FQSqP%r]B:Z :*d詁D@IxDሂZyzՂ-_;6ɏP]|'Q.9;EgFE].=Z_ا\g|$8V %4.uA/:'ϐ.Vc|O7W@^qtM&q"Y|) ۨJpw;[TWD*Z?!aܫp=Mtr LHױՀSKA y%2'CQ(ܔ)4 T0.ov,w6*7"!)9h @5D :h \kc\Nk>9kԙz*U6~ҠpvӉ@Xq}y aR: "EG&(> QQ@Ӏ!tb sdJݭ5L4m6G^1FE z<"G6R3!H000T( ҋH~y)"VLS@Uu̕iZ#UO|j> sܩ*(z^Ba<yEa0 pdw\YIq HUHH@N%{FU.D.PR),Vh-DVd"(/[-'1?L#©N@&9Sa_Jȅ0T@0.K7˜؏")#J$D~N\xeVqֱG8k% NV*QYO@)9+W/lj$5ReG%> ߈"}Q2QllO.ĄQ"5ŝ%PT:"+Ud算pCi b*8Mv2]*0,+nEC  I5P b9@S0 ɒc@0\A-UN( LDGL8-?lgޤ4AD%W;i%uL$"`圑Ld"륫:?2 # pCT\'%M8T~V%%pyyMQO_QP:V*l7lƹ%W1Syx})s(%bJIhaA!̩H#ʁUyȇHUQhPE(W+ jMK>RZkkN*~n(kKeiVcj=zUDsb,G!,wF1%*_ "2DX:Ru0pɥ|3zǪln 'BJn)c *"\pp`L7)!\%b*۸ֲ P b8 kB>2XnF*X>ctpl&rP±:%?)Pj"#^5 kY",H{>lƗ:" H":dUё@DcL$-ʍPr#pY6w\fK)8{LI(wkhVqH&7wVM4ˍ*Lʞ2 1[1ՠ0 nȖ&Kt2X2r*:a!<ҙRCaSlHaEaAmAT a&օK9; 9K,l^e;FG^]aX*J 7t=IHcl8UWXewױ{@ )"9HX5%VwRQ[ݠ'ЭVZs=I ^0 ͇2 8bB^ݸ?[-: 3]spV< )&gu>|#Ĉw4,iٸX)vUxKzs-Um,>|粤gQR]YbT⣺ۓԇhRQpb2Xփ#Bu'! ĭUq;vn ;´\9Sm}q@30I$O$x&ϸDpϔZA!&;F,fAe\SM#O7ꄸSRX> n4"8F3QpfXdvOX]?Խ`壞')ք&< D7o'+\`oGvcSgm5ׂibڴiC6lp~-f$:)땜B7njdŊcǎٶM ea0l%͢A˖-6mRj.= ֋Fᧄ$&f'*ڪ+0W@1W@Qg:wqjc~[*;ԅ8hȢ/t"_./"&n#K2G 1b!uTzzzƛn U۶'O}ҕi`Y֯26lѶH󤬬g~xСZ5jߠAԒ΄w.Yz:uo<< 44 g~N[:6(L\蝪 `,Db1zkhl*@8-^ۋI9F<ecd>.HGC>ƿ+)

*H@V NIq5R%UKJ ܚG||yKme˖S'O|FNHH+/O1=wn͛7oz_|YfɉIwOS֮Y$ G)S5jѳGϙfŋ?RɅ ҃^={fddB^xٳg1UO۟~F;w=>p{ᄏ~'%%Q>)!įY?l,iVٶo_=))e殥Wꫯ'o׸bU 4UWi r\# ?Sf1kBTaÆlٲYW)3:8j|Ǜ7o.k׬5sVN*/g=/_fCs&L@ߟ2K,f-Z e0ϟOa&M&Yvɒ\̙AniӦ^f5kL>=h p7B"4+=C<;]zٜm3?i(=mܸ~vm3r岼å8a$xӕZNq^Gk_Z'ft,Y{DlfQgV#<͗|iIkDxDU=b۬`6и4 J\*( OE qVHum=<ɦsSO-ՍGbV5>,aA0|K/L=x-7ONNnѼSO w/k5תY+-----M 8} {.KMM0Y޷o:jԨ={֨Q#))rC kjÆ g1u߿s{M6IIIu98[2zjx-7o1ŋ*eY:o<<[Fm9}SémF텋є#F4k"))yO )OfXyhi0sl$W+Y@due ʅ ?\%*@n,7_U5 K-!K=?D! T. w9.USQѭ'k#;Wa2Q%rMωJ f?y[]}rws0dഴz7onڈF@۶mAA8y}d~̙3,?Ύ W_ŋZjIp*evH֭?+h IpD۬$Ͳ,lvjيn \É 1J+4.>5e6A /-Rr; ]͖ϰxM-[1VNBSXbK/۠C=wIG N\K/h^(.)))1\A?Ѭieoݶĉ;wعcǂ x_{,69(1&*sa.۹cGe?/f͚_qE "(e||RJ;LH&''a4XԂ e)^?t%VK, ibyeA"p1-ՈQV-A` < gΜ?Saaarrr杛P\\Lʥ%%%<-ժV @333~O<Ě5cVZ5nn-%Jt56kݺuɓ ѣ^z ֽ{7z/n۶5oݺeJmۦMCW4mmZjӺoҦM֭[n 􈮧q"翺ke*XEۥ'UWmB .4 ό cW@\-MFϩ?U_"׻H0&?EL$ ;pPK ~}xٲ]?t]wK]t{{_6lPlmx}Ƈ>衔LIIwǝcǾMOΤ$5{sǎI'm߾ i׮wPy o`ܸƍ}v*D:y]~uvu)ۄ=1AE> -}9JN0ʑ' dKf,]ܥ&HZwI_RH}/b>y `Hr:X WVV(?&: !0 NoJ' /tݵOPBfM{յk7*tK/Yv={ *TФ%ݻus|!OdTp#G~Qz=~m&.c~޻iii]z͙3{r8Rwoh4?g֨~Qf-RR"Dyh} Lf8`@q8<{ÇժU; 0}Jѯ%۲䤱cǾ3KrvZ}sOx\%!Djb&:ָ׽lJDF\+le__G]ƁeٚUU-P:Db?Փ/J$>C ݫ.ax($]TeY!6>~t@$dZ4R)BJM6^x7#0 ܍#b 2$[O \`=6Zd "_J&' IUFË`RBيAu!<4Zw)@gITz2>pvO400 .Z`V &bXF-EʥF&ĈHh(b:hTE=2~G@1ibYR\rw؁Ew^Ɣ㌥q+**"L>{JR(_R( #ʉ'G$ P We'ϥAF#*SI.r/B$^e>:ć슌. R۵u;ՓFl$0 |g1( S3U6 V)}VuAbcL\\|sP6`-6bB 23P5j`?M~ m?U$UWD1R DLI+/ɤTT$E6S5j``!A%mU&fO:+Z̨2ZrdצzbPqh4{8`wYh``? P bA(m4+10ɀפS:*Cڏ/QpEn``Pj|)xT_!#FLeK7TA3: (fMW)AT  C5000P#ΰCp 0000000000`Aقo^2000000008/6DAقae -j````````P`A} +<:jbe -p_'f|>obe -j````````P`Aقae -$E10(ڷoη!~竾BZąny/b@aaḱc-#Gp :$dfP@ؗPQuz!ʚԪUKjժx_M jתx@e.Ҿ}{|ѼY~w+%k׮=o޼dRnn.%Z to_ ʕ+WVfMwֵs <Ӌ/nѢEVVVbb"K/..4hЖ-[uW%V F 喴Յ~/ZZ:VJZyšQ竹@|OxuW3zez#mֲDڮۭ[=18Rz 򲳳#;땏< 23gNTuAC^^ޓ}ݷ`{+..>{?xG<UÆ _-[NӧLe˖ 6,j =d EGn믿jժ )" ec u-bk@Ϟ= 3TWbsƍ7nΝS9WXѯ__2un(>h <,_ 6|i+VZ>7iTť=*)9yc&qc%''=Z._?~:w&)I30Bw@6lXovBBB8޴yeYC裏”BȆ \[nݺu+Փ7lٲ}MZJ~dYo~Lv֯[7}j5d/aÆ'O._ʫ>Ə{'>)**:uJe{wgs<p\^QVX֧w~rロ6m늊5mԩ}V:% &%%uֿ֝*..={%܊+*# ɚu{+UC"jXh=x0zZru9V}4XvmΝ.(,,|ccv|v xzg}'~Pf;︃^z؆z衬͛WR_lY3e˖={$%%BF 4{)oYV~rĉJ/n@*({i999999. mj}l(#uGNgoٲuƌp@Bڔй=C8}Z% Կ>Y|9w/P(tub5dDDhۢŝwU~ =mܭk yyyK+Zjjծ*^4ݙĉ'zK.Jm\{m3gdeeVmJ:v""t95kƘ1cԬYsȑ4}ڴ*U5jʕ+W\/VXq5p}7wy',ZmMt.]I&Kv,^={6͛4{i:u_/rժUSNmӶ?{&>|M49''gbVΝ?`:ϘߕOO?Ӝ&NkԎaǏgeD"V!fK/߾ꫜI&pB.|l)"xoAW:wѶʚTNÇgM̊hЇ 8СjGN>CMi }*l,:d0|8â"*?14XY%܈m[\( -Pn.w ]vn].W: 5;a={)}۷on9sVBBBnya?Hbbӏ;[59sTEX`{ʕ_xsΝ;w_aX O {K.陙w^ 3<5|xzয়~b^yf͚'''׬Y󩧞aWԯ_۶mL~۶[liݦMÆ `޼ॗF_{m *$%%5oѣOW(-`ذa-[^ܺUW"\p1 T>}*Wܦu^{]YOs:v>рUْ8zZժL2eӦM-Z4W#){&n{ e.2bp>kVZҶ/'(1t{ CΫqF4Vw(oFlIfw=t#O:ܶ]6[+ˊm\{G-.tU~!arsoX.7оlذ1sYsr*bTk\ɓ'̙s뭷F,:99٧G6jԨG{w„1T_CŊN8 N»0Fm۵8{p|Mgؽgw K%J^+..:mKݓO;2ϛc\tɟ3̞=zE8d~";|Ԏ=4 bb^zjÇ\ʕ_?^ze]oMD:EEF Ηۚp@Cs{ CΫqF4Vq@ 2o:mJϞ=`ڴ0x=bz 8m ,Jw.MtwpݺרQTڰAO>ѣPbK/nݺm68yDNhSN'Opno^y崴4۶͛F裘-._Z0{Y‒ c31wlg%٣gRr%لsyyKofz& :#֎"-- ֒hUW]oпf͚?s=m)1w8BgCF]pف1eqn %t,:nf玝9997mڸiSƍu/B]OǶ(MxtP-j۶ݗ_~>=k~==mӦmBB̙Sg1BTZZ 7x7^^={up5jԸ뮻'N`ܸqWC޽k;no[JK 6عc+WxM,񫯾 Ӵ'Ӏ?,a.ѣF_yՕ˗'*U\wu?x?c^^^^؇4ie˖3g^r%K[ݻssw)k9Qg ŗ_ܒyK kDD"V䖔KvAo۷B,˲,B͎:c@ U+y]9_'/uݺ&| IDATuC 1(4^-g)/ J8BʍUnp!>S&/_x7˸ߠz Bb>T@;=Z4I^J;wn.lzӧǏcې!322?atnw}3WTTTTTk.Y35Zܒ /P( }QF@fL*ӨQ#{?_8 IIMMII9Tm ,}zf>ȢE: ;w!+K+/Gڼp8iGuv F8jN***ڸic5Ɉh@*ܒ{顇BP^^}411ȕ22`ڵ>V'bAz{ j% z.ևVE1 :3Ԕ%!*a7_r~+VԨQ㖮~xK "*!npa:_.ڵcvmо]B`~-4h+ՠAV-[nڼ\^ҥKo6I&%%?{ٳGˑ%+T8dȐ1cȗ|Rjxٻ(g/]v V 4Ǟ|1E;%%j"REQPcHl(ͺev %$w=p+GDD<|ժUVȇ8cٳYY3 6Mٿ`vvv!dzPcqvSNaWjhoժuZ"""jGf5 ̾y@X؂  F~o{Io2ϡÆK>h"Xl8h2U3 [)%9%%9E{e@@WvVZ%<9᫯Z'r[x7"v _5EGSN]M_@jF0aa[ <2: :95q3(#~gY= qcΝ;ÇDbbPs[d"`ڿJWsi~ᇵj|VZ5vY&; MKwҺuk Ir5)Vzuu1+Dp]vlPz]ڵ&Mt!k/_~4iR $T*mРi/'Ɔ 2v8g;;}. Yfe d OCĀ}FJc挙߯]usuuDR^zC}n%lۺO.;;;80DyDa۪,Q:j95qɚ#~gY? 6>lwJ[;0!sABx5ovƍB2>>`,BYDDŋF=y䲎YGFEmeS8B!իWqqh)!B|޾ҵcNu-`P2?BUH"E1\Y{{.CE! >TB!T !B/8CE!B|*B!*SQ|R+6npgϞ4 xӷ>>>`NT_5.>'$IeddC B\nUֳ> ]}0tpRgJ)Z{BY>CeDժUkܸq޽||Zmli6ٗW(¿:x~aeEP~ U0eW4FsL\ ڹOF *3T aj/^xqƍGtdb\^֡Y̙3͛}||,HG|\<YSN"f3BdǐJVz-SV_af$I={,-=m떭yyN%$n@P!zЪUy<\q=|}qҏBUPf "Z5|}GԴ>}hqfak{F ՛#[ͅ?s޽|j4rHYw|t>a2Zh6INNްqC\LׯEGqO??oݺ~0>rkvvv>Ե[WsN2Zwޘ@}1bHdt=zf͚tPص[Ӧ막 ?~3禲z_|񅃃v̚y}dzgφHH8%0qD6VSSbZnԨ7|ӦMcTHɄlw $q"ݻwind䨑w~$gĉ...*~w%%%rww7ьg%+..a|qqq;v-aÆ޾uW˖p:jKg5 >|`͚.\]u1}zΝ98UW^0t6mNaqq1&}7뇺JKSTbb Ӱa@qW(&%%I$k!(akGQ ]XySN?JMx >sƪ`nX0ur(Tfܹ ::4=wܸ8M/-[fTkCˏ=\nH(>bM2܂,\p2A$I'edF?XnuJaf֬y[ʧ~:w\ER}wY59$''oڴ$˗_ߗO|\'yDk<|`׮];v0+>sJΝ;]] :dso5˗/_4iΝ;7nl0j3oޜ$G$9Χjddfddfſ˴#q];k/4i=P(t18=3b Ϛ5+++=z۷ndzgsʾ|/|)1ر/^L38-7o&g\Ͼ1&so`.H.]}ǧիWn߾n:88d߸Nt驕8(h,h%s07 vwK?~EdZZzZZ7w:Z!@6mممC;ww={ٳzr KII]sAgd&-Oin-޽vv0vzZv]vڵ?/lu<"֫Woǎiiiy#GDF0:v}efe:99-_sgϞ[|o>ڵɓ5kkWjjΝ;ssok'8~,&&ͭƚkӼE۷oo߾];BӧC >E˭k{IMM٣'Iw6d5y3_MMMee2԰SSϛc.].Ӊdرj6IR`14~Nf. ,͛74MQ_7 KH8\V2ΧO֪U]`J!aox$瓀;ݤϲݲ%\vhQ&M/fk-k߳X:r+%`त$v 0Y-ch~WQgNNNBv!؛Ϟ=qbqƳgfW|ppp R#>g^^J3]pQfD"pvay>bbb؊Nng'ճ׬YcpD5{V//XܴiSG 44H$jܸqpT<3wNZd2}%]kXrgcX\9ҥ1siݺX,jdd̙3{...bYf?Yc,]g?}4:MS~E͚53VYfv;t0xwFGDGܻwoر-[d5_8.fao5X[&MڱQL`2n26 굫v&w@ff\~ ,^߳ bdncc.YjUHIIٻgW>ixնX=KoHj+((`{vA'fښ7o.hNݓ$iy2 ///eZhY̺}M)Gҏ֭\36޽{Wo;ro#a=6+z UTBaqE۷/**{J] &i7 IϟO`NDƏ;{1@5,`.sS&OMݲe 4lh„ @˖-4kZha0ΐ`7Fvs M26l5ԛh! s}Q=ZSfF\- [sq Q=kA *‚|,}%Ι3w޼sΞ;wv͵j\ju mR#Gc) ޙ,[jZK+7W&k'K4e3ߘS,HBk&󉪸Xaqu nN<24Xwv1If@ \X~{u܍QMc1Kw+T?gYD-}5o~ҥԴt;ʕ+uԩy6lfk¢W ryaaaQQׅڏHQ~2U!wΝ;dYVCξA7nܸwANNN>}vm>~G===r;l*cYc bedš]}QQiii <\dɮ{ev:t0U|ڶݫ'200MreIR}fʕ@>E[?s-W.__5?o_rehN T_Ͼrrf? ȸT*H| lxxŊ l^[bdU   >cjkr%vd dfl h׮-Ӯm[ 7W ;8G Uq5?W,; vwIOJMKU(II  BidpW9Zŋh4賬kwޣg}fM3NLJ_g知QAC9}LVVwF}k>>Ç 7ɨѣbb<|8~yys?78hBaA:t8}i؏;uNo u谡)/,^X[t6 Ǝ;o< yh |x&f(2WZ 'Mdĉ ]/:ξ~~~ߖ.3fpԹSB %iԩSw!3OLv`,oT*U UVW\xva+q Q+,*{9VXKOI9}߲*~4dTa'B$WRs7jj?y*VXҶMgggPܦMKX|Y~mqAD8Z5k0IObՎj۶mۧO͚5RH(Zϗ_~ՙ>}z@gggͥDM'MߠD"J4e֭~ryKCtߛ=cƌ_~_׮]]]]E"T*Wt^@c s;wn@L&stt׿ҐMBD6lalr?eI >oS&M?KPTRum:udO> 734di`P\.ۺuP9p` `jKh 2oԩRgH&q Q`E-~75E$;v󭩂6GMOWSo߾\7+>>}_U˖[n)pPev<%G:T*.ټysi^:DBbg'7œCE<}'|`-bxerܬ L?;k_a@!TTs..UnCѣG ?NO۵ot IDATvҐ/ ^߹sر~_=y~?iڵk,/,dYIIɴi5ljz}qڵ{9|pH]vdP(#O8}رeII5jƏspp0 EQw.M3^^^yΝDk8k\ti)Mn1=駵҅BQ@׀iSq7f<T8͟#=G5}/M۶m5E(-[>}:??_*zyy 6S'xwgΜ55zoek(cU-cJ:Eؼwt5kN:Et6m&O^m+'@b3T..6n4qq#GD ,X066FGwٝoGBԩSRS4k233333dq|2g͘1CR͝370(pپ,(jW"^xaэٚ-Za%K$|$q}~DZņo}o( j//Zn͚6-{q˖-45=h+doYQ37lܰaÆ jr~DbqlL,011r{7w80VIfkR s,О&СCdd>bÇC-P[d}i(/6T9^Q9jI*O2,k_vٿ7sڵ+{zXvj6af}@W+Lmw[)gsg]R|9Fo)D,[}:빸Td˗.ݺs[P Լnݺ^سg/s5Y̧Mf͚s.\W|Qݻw.jƌC0 0Ƶ=͊ׯU`2wѽ{1|; ޷Ik( d;5jZ TTsC Y&zj֭ SRRR-Z$Ozqٳ M8P( e||glw<|`ehűsT"78}^*董0 0PA`ʔ)'њ,OC2e EQ-?'[ξjk׮$y5>걷ddfr2Lin|WZa~!--MP* a Phpg}{,ERXv# :w-'@©0Pguws>|xРA줍gJTvOSL{nTT4`F:kO-\Ç O>rb9x{:]ׯ78}H?__+ о3gfL~4VZլYxqZѴY3Wqx"%:$9%… K.57Z| ͬ[nE erذaَ=*&6Çƍcv3qO+S #-hO47>ie-lϟ??`J>O[ eAt<,zǂԩidpuu5zT9BN< ]ZjE[ܔ5jؽ{3Bw]F `D] $T*ߠI7lܨy*kAcFqvvӧ%K,tΜ92ѱ_~K,OCDЀ Z |;}M6t p#H$J֭;hg;v0XH$Z~VS.x{Yg|#~a֮]sNl]lY.9;; Zzf]$5=M7XMkjwlTBm̘5q L^LQJcAK,$|}lޢūkPCx5o #B !č.:&f~y{Z7CxFyJ3Xr*VIT5J>NBUFx!۱}% DQpPH(".Z  c'W;AG (B&"B*pS%~r؎.&/@Q%E@,B#ݖ;;7J-!B ղ+% W. m}" H0 5j[yR F!TuU-?ZD (i|}cH)+,(5 `@@X0Ju~:Y O"B3C&|py<' $jB 2`H "*rd@*V%W!BsCeN9_)rbGVXx:*$tJxA d@@14- B %UdjEV["]z!BdC^NT)2PQ\JOeT$QRR)iX*' HIRyPao!Bj ^_ aE iχ@QHb$\ 2b!A@jT3@S@"FD@$],:Nu-j۶-q޴'QڑmMKtf^~D9Q~D'O3`Qۂ 6Vz1W@0{_ϷS>A(H J4 H%  aJH %PB!#yDf)C nǃNebpĒd:lX=&2 rXrB6fO J% R!B`A}%?C 0 E0AV1j{X($EJWMTVڰ5JBzIӻwYc3vpJ5&1f*:Ws^Ȥ4@"!j(QP`DB0&ߜC-QM1 Nvv0jRQ*JY,.T(Ԥ#OPAJEZZZZZZ\llPPۻ#B!*Ρ|){"+VMP Ia (^)ޜ }U,P+J!Z(dh)HTJRdTA8J@SԩSr99277aB  O:%Ha߃WZuiT: (o%޾O@V߿?..Pv^z 6L$igrqD~@إKjuÆ 'Lкuk(xo~4M?~>dP*+###E"ӧO6VܣGZ?/€SL玟CEEGݻ{fOFѹSg>eII5j]ƍ3s˗.M:=z4wyyy?ӅtH0uT2iҤcǎݽ{W+=4Ϝ9~S RRR -[O>OT*da:u>For?gk45oq]Eߛqw1'YNVhV-nqեKH&w: >UzPK" `H`hvzJBT/P_Q XH)5E&P !UEQ9TD'\t);ϫWn߾ n*,,tppȾMtfʹ<-Z(11J]>ru2x0T'}u1K2777777%%eÆ ?\-f,IdW\#Nc|W_=}MvgΜR̙`l &L~ j=mX5 O:{Vqҥ 2I/ U]6ouщDu"w->NPkvs,]J|Jɼ C x _xQ*iHZMԪP4]P5ST(KEŅKŴ!UZ.QZ*V?-/epz6\ti74M_t _IOsK{KgO>|(11q!u>,,,bSH3gΜ9sfҥaaa|Z\}"]~?wǻwA=o&8:r ]v?}f͚۷8w;w8fgg7gΜsm۶ϏOqn^:!!!99oּ;wv3sHLL6m*IQ!!!AAA&ݽ{w~~~onݺ]MN,xrƍSM6;wٳ0mSN߅O0JނȂ1ִuщDuÈeI#6kvsUm2DPd H!TVfa&*TT¢bT,*!*C H  "H,$)`HUJDz5o z6r =fZ2Xl\Ϝٽ{\.{1c b"+V4j)]]]g˗د|||jժuͿ^_yFvvvf<<-($93XܑGGE@pppPPX,nڴUq,[A$yzz._ N>3󘘘ٳg5ktڕOg&l56ilm۶m۶=z{\6n_#ؿe=-m'䟱nݾ ƍ<3_xݺu6m3Gݟ-Z($LW_}wۤj&8+8x…[mYf  ?c]i]6ouщDu-;NPkvs,m]FP9T("`B ! MM0I ╂&IPP"db^*%"HP4TRJbhR"K_ǏܿۦmM67n㼼G׷D"Bp2cMa< E5H6nܸqƜT5#ccb..*ݻun *]+|C$iV*f/igP4=388z1 I[oxDUeCxçgc:rԝOh ۶?ߺD'u'v(ʊ̫ | Z;RH E @0M@b$Jdj5I ;1 %F  !0C4Ő4"D[Zhqͽ{4ݦMhӦMTT%ě2^Vd1ܹs^sLT*_xΞ0}cZ4]vZ!K.~~'O|n+Zݿ6[k.]̽{mܜI={4udgطwoz,|ԩk֮7oނ{'nnw˺x;G/feLiD"֭[~?7_z߶meL.cd2﨑#훓0`lBُtتklŲH'9Xsfn·Ufdxy$! vRh`jP*R P4b(MhJI*RM  hU/^S/ EO_ ?{gO_(J!RHX# "HH}$3X({l=u m@6m ?v Z:::9@ff&o:zV%$$(JRy2իg77YRRვ+u`\}ʒH%q^i 蘘G %~^VZ}$WޤwjȂWjWM޽ :mZTT'O(RT??̇ 2ed/^~O;ի]NkV2QMnC qzvpT2)SJB8{B Lc~V]ceۤ.fdnq5ITe]޲4"ANk:j9F*yS#^R"J 4 @P)Z}ǤՔ-\"KR@$jԌ@H5 ڲEsPT 7`Zjn-qԩS~1-5d |.⥋s^=tPvo~7n?x{Gk߾ݙ33fIЩwjSfjݽi36jȘ7VSBkȐ)/\siHF̓\d56և -)Q:;QF>|pD# IDATΝH$:mڤI~ySξ~U39 J=>y5]G;ۄUX6eD>9Nrf77ɚ*L*qeNW 4{ Ӥz! %YBԔJIU UP*R0e7[.dIT)^|QPT(%nd P]\xû/iצ-pqԩSR.H6nwoP_"H O݆5lQx"7gl.]d2c߾}/- T?PJͿڱCGLfoo߯_iSMD"ѺM4m+L| L:?|G"H*֭[wgm߾ݬG3 v;[ggͿ۹\&svr \ک[֭ W^e}L.&'ggPۘcΝ'|#6k&u,0N4ɚ$7+wsnTY]޲4"A+޼j_ \N%CUJYB]"I`H! V3" TSjRE0$0jC CHHrKy94a_ҭ42SddҐooKYǂB6Ӷ];B(K.m[ I-5_]ʳ#bJMH@Md 0*H-_0U/n 4 `H!(&KTVkQ42c#G6TTϭ[:.BU~vryϜ= PrK ^]KbED4)P@E"LJ/A "ha@S0#4)d{U,HRRRRROOkB* &%}*U(X  RMT&KVkU'@O)`HI) CH2 ;'A@}Նk.\бC: *]x*B咝\޼yDIwUR+Bq' TJ% sSF  M@܎lñ6dg!B Is3TpV=`aÆl.M:5M6E;?Þ=;N*j_~+;QFΖ{ @``YؕKDnݺ-]{&[d<{o$@!Ex5f׽zI]f͡Ç׳?i^hɓ'tmE~wwL&ĉž>}Y3 cǎa-*$d鉨h`۶]'=zT;ɓ $IN~v ә?iOI\y8U˖-7_/Yzuxx gׯ_5*??_$` :VݷoҹX4C΄O{g!Sؓt'}|q'Ϝ>iϝ:ub ?ηj׮cǎ;vԮ]N=~xv#G؅;v$%&ܱK&|JȮ1 |1kl0l<'N`gfuٲy٤#Gt֝l8| Hܵ{ڽ(={|L' c3u-' {!(3Tř3gv^*z^j>3<5Ş͘1]y"NWk9::ޝO0kŋ> ΣFdgfem.}3fhLLlhuܹ6m">^}p#_[>lDFF^z-2* Nxcr8iZu,|߳s_B?P5;aw`0e4iIФIUmww@&k`"A Ð$_<~<..;_f?sӦMٕvMVc|fC///Ͷ<;K;ͥO{CM0e:/֭3W&]p֭S&ju&01'I&W V=BU2*R6$3d]V޽{ f=[G&g+ ʭH(R E4]JkRdgBPgu'py3^ͮzڛo=So`,YܩSgLP(vjAVlծzԭ hfB7 =^׮]QKou֛7sXdɂ uin擏B(aիUna>aتgBJ\߇:`va 'OT+Wy{c_~م5?xM$srnGves2\(>|0$$IJz.ǜݪ.\՚`Y\7ٳ|ysefe*%E={<##~9r ynw^ߧO>{,|L'psscT*;w֮Yc0r-' =- BX>گ_W>Jm/^LHH{q㴿ڭWo0sL˲4hPbRK޽;v웪}{/)-Z=w&LIII5ka {usss&~7O<*,,\t MA|1 ?~|LLZ^lo3o㣨??&dS"M@@3l0"NA[^_Z7pmvh)q6E˖-۱}{iy>><ēܷ# ^}U":qdr8]>M}-55e- sωBn{Ya_ϖ:FӪU=w`C.`n  hۦ lB|ȑ#VZm0TCrw"'xp_8!AO<ĵ{zLo #-˳7&@c`=>tya1m * *TT/P_ޱ7\&ĕ,[O;QvffS(n=7Ҁy;A~ܬ)*9 #ƃ n Q n?ۼ-nnuO`ztdRy|ݭoʘ&Y549TpLqXorEwbiꠀw6oVO[#TppGl6Ttb $'h 4u(p]W;v"Z7_ed>{FP['EEELfֵbX{ZZYžN=f՚&[u;?wz6LV5걲W^So\kWøj4rS`܄m[R;jT嫯6/;c3uf%v'g^-jIL"ۙc7͕QZ}B$yy#_B! f1gDuZh͚5L$&:1NRVVǷmۮ.*dlnc+k ^ܤT~U̱c Kew]9YEs0Bf>䶋( ;ODu-%IG 3>d,ʯc^|,!1,WK$G 13r|ySȀ\{v㚐:z-骃^,];Oe IΟ^լ_OD%fU=SeE"KW>8.j*:RFDK0!fvj\ݻΞYD\t[#FÜERȝ fUDD6jevfqvj5{75Z"ׇ*H|_ѶmjbٸXI|yɓ.>?ΝbK`={7#|-!3r5,곔V$A=~ۍ%a.w\}sHw 8ף=i2\]~y|ROoϧųgNUݫܻ7OWokDd4Q̊G _axg\, f$ ':y>ʸJuMspqv{ܻ;ջOSE+&2\)WkKeOɍ9gvѫSU٫jj;Z~~NZ"nFMnl:'3g~|mCKUV (؉ !JB~nQ6!#ŸrȀ#]{цHf}<<*TV&|Z {(9޺E[ykVwos'?R(dNڶ^Ǝ\X7r8"ޜ(lU_ʓx+k.jOl9Ag`gk19N5Ά=@MHtERQ$>nߊGꋕL0=eIJ &&?B̲e. Q؟I33v|0dHD4NS}LJQQJJ?ii,޽v7ޣ"iV"JN_(9~B񻫟J>~\NYϜmp!=\<8xqߓ!Uv/'И Sw=D gR\55^;xH w̐O''=՟>-w8Ss,"Ys[hf,qf==`{sgٜp"SD4iru뵅Eb٘\5'J# Z84KedL+WX"JX53k4E!3rE*ҝ1̕+u#k-s<ik#Y,̥xaê"+zbͪ\"ZҰF)))Iߞw%H{}Ӌ 5jN!ys 1e.9rDՂY12!]"yLMgB~8\s*X=(Pt:V^4(Z*ߟQ6=R!b!7C&Ol76Є?l"b]7Ʌ䚵g̨\ԩMKA5%Aon>}jWhC/7l3$7;GDX]޼FlX^L9qBn1F`F_< ͕dK5nok۶ii^vTyWzvlyʦցxz V+rE IDAT[|E% ˿Z~)+!"<uv 5;㷦q5s'%4y\|IH@3q^ *TT/P__ھS>_C g}j.pk7YNZiԁ\|#R3P?+$9ܔCK󨟚KopS;8*'ڻj=5z6KV=VYJ 1YA#ɕ-Z`u3VT-u9իvY[10\hƿWQRꉊJcfVN)c,#nb,\Rƭ4n^-'FA+ aXlxfˏ˓ b.q2cN`n:okmwT4ڻkJ,'Ì{*;%g,kl׿ک&"b9ʧ+1)SGLYLr`iH%דUޏ'cʈ6{ ""%7iˊ$1_)u\A `TP[GG>8Ls c+TPh;hWfi]~ZjW7vege]tj,⠒>'E[ϟ;U9@Du:=XQS, XVα \jB"sa0NdV&-*zҩsbr'٨M|)]6_MD-5jD"]6HlUk|dgYY1kf.YDD=,F ;-#!>gMpss]-ɕQͽ]Y3DDeFhuXAmݘl)>@<0q4#ɥt/> ʔ1+GTQ̊X"2/ZZZۻBU0N@5z;B1/8 g ]136wY~BYRd䶶V=h"hdu Y"6xǦp>وHW٨ܣ""[50DtiÅ ߟ0de."՗la[HK廠[b$٨lIY[wu1SlaFp)C*"WoYެ' "JR^+*3N1\v.0㴶Qܢ8ˆ$ V?\ED s5ku*!cgdI/\C$Iܥ&k{rJMHp]{\촜q0yz"2k 3rg"9)+a="8W1֠ܣS$^ۧr!HGV2co$EgJYnene,\rZ9BWEH3 R1@.j^B¬DYP͈!IJĩ䤊1Vh-4S^1< 46*K,K,+)%s3+ 0VWjvVR4oê VIJ2ZTEު0SaBSt)]*zua؂%Kօ풻j,;NųiR$uej!"UwW tj.4xy%]G9c,&^-5L(!hD#mr'CP٫%e [V+'l*x옂FUp_w .|)PCm._q " x~,Q jqPmWDt5W5k`^k[_⠒DdZ]:8mJzƚnBݎRHIV.(MHܫ +T)9cXӭ8g$N5 -4ΡW>]ADI*?pfZdʔTKΉ(dnq2""3.͞ziM'E[ϟ;U9@Du:=XQS, XVα \jB"sa0NdV ?QRVQߋrdqN0HOO1KDEb{nuJeIDNB"I P+sQ?4Ͻ jP.>X<Ȟjce)D$9/՛DT2@Kr)\3HqXä2"Z$9Rv ?,0 6.VZ:[ ?'"vu8ä٠%YEUU:uNVZ0_$>/%Bz_T>ڦͽj-w"K73+f-%3HG"Á)Wv +fz{""g" 3AD}SrKN0HOO\!{muV{LOUH.H4MZEabW;I3ݫ촌T(5=? u$WBDen5LD]wmWGum֍)͖Qi FO7\JW<0L_"zDŬ%"re=޵D$Η<"䤘qIԥHX.D(EIʽ*^U'dO]wwzzH/HN+QP}zY;Z_,{afWDPGt6{%"@|G8&C 71fFTr*̽k=,g\vJnkk*e" Z,f)/3x0?5M\$CoIJ$ ԳYh*DR︦ݫ+ԫbؕ-FDʽ*FҬхamg%K.dgd'+sDZFؔT L/fL+)Zvm̲غ ص((Ȟb yE4DTaA2rd5D'dT7,CF Şb:qB?[/0LX.;xW4PIFUD?Gޢ@Y?GODFvɣ[SDĩYHW^:$y|)5A^Alߵ?1fMZެ!~@ #ol7RMס^ܞ!it86u7 G`AiB0B|x^d_[PlnC[*TT/P_PB~A * *TT/P_PB~A * *TT/P_PB~A * *TT/P_DM\em&hzbBR4u pBSQ)J͕BKuuSd2)Q'4u,pCBʋVˡ?5u,|:]}]o׵Nh,:N^ 8X, hρBSQqhXÿ{@_IIu:fsNln8ZKד'+ PPdRxyᄀX2ע""2;2k9}fuLT e2RZ;ҰA_NC&''_j. kj-UDvKlSGv?>R]e7DW\jcn3[- cY[hٳjZ */,KDv{pDrYݎHj\H1TaY_!ծ];"ɹ+nL[=p:]tXe]2L, BDuuЄlC!a GR/*T~a*sB&^Fe˶mۖwLM2dȸq4n.PlT*%X,v Vl֚% DXX|ñaÆM6evZ$lyg;G>:;h Adlv\lЧ.ބ‰>ѢB(Q VG'>4{\uq㞻r劻%;++;+krY۶m֬[aI. J555*@,H---}~SO[vs|sHح(ֿ{U7wZPx^ V'ߑqwO[Z,)S&]rcNӦ;9z؂ 22~2eƍd2Y_c1 raF&TZުUb}BI&9sV׿wOBB,((8z֮SqKS47=OJ [raɷ5y./eoW^j۶׿\oڴi{iժ^;vgϞ/b80q⤞={v?pg:tPQnݺuŋ$eF( B@+JJ6mϞ=CEEe֮]{䔔׭{ɧSRDbT&kӶO;˗1nݺuGܵ3x_֣G},^%*7uֻO>ŲY$啓S_ڵk>},xs˗/?nݺkjk\FDsE7A:6־޽{w1d6P&OJ]4Wwn1X 'f₽] cwm۶_^|Q!{vP_^~m۶;X":p?oyQ?N,ܳϺ8qbVҹsZVC ۲y|ϻ^l6ii!& +F{ aX& l6dM襗^ F6nsGqdffdffg_~y ks.;~̆ KnaDTQQ?ݚ5u˄;lp [ϑVt!;m8Y}7x*@Y(zt/Ra3|T+RNGO~JΝ#wR߾}(9ߗ1y$ssuߟ9s槟~>|nbRɓ'_mٸñrJ"0qb=ЈCZbBd:...a"{ +9rDsD@wy7EQn%wl?}1chڵ\ҥKRSS^:+Ϟ]Af_Q6mm‰6fdf3gpI" *ϰuD spxّ>먻ҍU 彯Ԩlr9&ST0֣sU2uAL&iZߗ4-Fw g /B>vܯ~nY,$$gϞCDǏ^S~SZZq&e떭;zicB FqWBH$bX$ϭHDzlܴfϚr\>f =?k]ŒnݺϞ5v]z}fϙبuXr=>taD̝7/-D"Q%ZGf CqWUVWWyT]]ED*kקMS*K,ѣ%ӹ|7^̽NѲrwɓ'߷oe#G _ 7…!uuR=\.ej!ʊʸ8zxT IDAT 4sх<{wDte%^̽HD !x:o=u_R[[5~ܣ8%"=Ϳ|oƈ(CٸH] :xц>}x/ _©z$iZ?G{mɸ LeCmڐ7T"uqڵK?z?z`^/r"Jo5X,%_lvݧw>=z8qā ɓ'۵kwЇP۔0u˽UBeYCڷ?iT>^KoT@(Zܷ%d@ܣ/7PƂN6/|OCh̪T&!d'0Μ1Dwn\+2T fDY$ ;MPrC…kk=͵ ?]HDC:W7c ۸a%~xȑGNdID/W,_NDƍc›iרadI\iY }* AVԺuk"ڻggݻu6?rÑÇe˖ѥu6Dk8Uw>ȈNn/9իW\V… kV~ꩧn\fϙel69sC]s>}n:u0p@HDs]vmeef;yԋ/9xU8{T "͞r)NKDfjQd#Hn|C2]2K$a~8EV㟑4er>8ao6axϗ?]|gq\Y˘cg \{)3qĩMu:cƎK${ [a򔽊^ʲ,I_,|g~ᅳgΜ9o$D4g{ѿog1#mwN "^?~„k"IӣGޟe^!߳[_$=*OشiS^^;c /[>}m3pO323φ[ i Chjtl8 3l'Y!#4ƔďyFJ_Xm6֭{/o/d2Yzz/V zJV]z"ѢENʭT.{…h"_\9h@\i,rόӇ in6m贄A;6Fy2v2yܬ VMQ;O.\דDat\ :|v3=7n괩/%Oz} ['DjÑ;!9ܚ-d"!Gwהy>Nb{Jwwbʄ#̙3j RB ɢX*_Ĵm#V()wlp"F*MkUTA$jX,X, !ɔJL&?BU^OHf45u,MOVITO{aF.d20 ?q_Pxa$j5~hp 7"nAP_PB~A * *TT/Pf3*4=|iN\t::$nݻ   JC[ld249)Y0wfY[w)wּcN%pT&]p#qb]vku:">,tZ;vT*\&˛:Zn3k=sfɗ_8YgKD|)CD A/_nH:,z|o GIENDB`luckybackup-0.5.0/manual/data/luckybackup_320.png0000666000175000017500000022064711073050510021201 0ustar luckybluckybPNG  IHDR@()7(sRGBbKGD pHYs  tIME 8ک IDATxilmVwO5sG`̐Al9)F("ȲDbg(QWbҶEp$(@Ȗ"ʼnD"FЂnhBOpsNSUV~]Up5]KujTթb.v]b.v]b.v]b.v]b.v]b.v]b??}cb_`Wk%ŗ*! Ok벋K?s?NA G?\ڽ۽R?M?~>,x;/E?& /I@^^[xAfktF59FP/%uͪDQTCf%%if5M jdP2q,PǨ˦2џ3`c̻1]|l drN\q i@4pU"x"]@L3Soj)(|RN UYd2USEI I`fDjf)k8m|?K"}ŎK?_5pxH89b dMFXzs83!01xA-7 3ԈNXJP 03S5D&3a`E +t,gb7?○.v/&=+-T.R:22I,d$6b"f&b"j3Qb@b@@Lej*)̌M4 533j@LH&"&8 &Ј ZPْ%D @(PQC@M An֨-K?f3T+Gλإ Ÿxk\e| #H @Hd1h@f*hITsQE3V̌aX]mc2c"6f"' ]"%Bq BC@ X %%@J"vE`3͡VQDcj!Ru`%N~m?//oq;/a\|KO'~Wh^^$ ]DCt$LQ 5XjR3Jd F !W4;H[o 0h"D;; [F؀0:0 0% 2T0HD@B{p;{2~&ƿ7$ƒ*$U \ 0͐Gg2C{ulO7Dռ95cU 5#5.ϥU wm   ܦ"Z&H@M͙J"̈qIKS2L0gBID%,xI%}b\\լݼwf}迊77:^'DrIQn@ 5 C3   ̬PCR5qFQT̀0RE>tF #J3[dKW"c]e2Sd(D"̴dƂs&b3&Z0c΄9]1H/qQ%*<^O6]p9ӻ@Rn {Ypri`)qNDCj4RP C3Zwز>3G58DE|fVhQ6z`{UUt̰{ѥ`ɄɘɄHI(0a 3-RJf &̘pńKa`T09C4uՄ,eW?c?.W3jhz=O0Gʩ<f#f6)jY jC5Zjm Y^D.jv թC15m~ؤ?hU% k B$f;sL^)3a S15ݹ ˜dt)ĸ$gSrqWh¬j\A^yv5d|.4VSco7?#OЇJR:"Sb_afhĤ@0P*R5K,Q3j.*D8!FAւ^w =UNWOlo@r7/PvBfMXa[84fL A u'ԬAP0wLW^ ]:\0.\U/.&^Zr>?}+|W1>ؿo[?]/ʧ~wS?h5]+^v_ `HD&>APb.#޳f21vC57=Ua Vm+]^LϩX jv,LëMN#zayxs5Y{pW@oh hZZIEXp0UqJ'H/G3'|M㜙 L vc]Sexv?߳c\KE5\Z}Mߏ}?G7Hʼ2 T1!GIP; ڞTm`WK Vii hm8k ^k{el54К;37^ثu6e^cwf&00 &vBsg1]0R3b˪:zg9n۵~@na}=уmCߔ?@o$Dt @a'82r5f>2?%;oZH螆]cXnUl6 p">S5 ܀qO&jUcy= ]0B#Yd1[l)W.D$I8KDi{^PLOTg˔]>'X?7ow%;K[| _%\Fzbr|2L&{i>8tiq$.9!D m :tKPѡһno-kz@E-L{\=5*5xLnh9{7 Ddļfαz/=Ա&^BYPp!BgNTGLg \(Uj^/;o7? ⟳gUB^|CoK#>}#G5;GFG_?+{|X}F5zEkDjhMV)v Юie5}:aȶ[``Ԃ ƈ:hl\ch}l=c=zi?m QaںnRn525g%mIR!*ǠQ- jQv:'B bQĊ_cG&c]wc"Ɠc{o_ &&QZ}^ivG, |dv^2ӵK2ND֭kxco˞8aځ)mኽma>}6v f lM^nMzh6 QFdl,dlα j&Ҕ42}}7Fi^sI:'cr1H Z6zvgU볻6-$nˮ?榸"[MÏK[e\UWkYvvmd@m4D\Uz#z>PLq fH'[/DU溆m@GjL2SLÐIYGu_vA.eǭ;O?JQL/.O$Axb O wZ\7(ORܵډ+1s%y31bkٕgնbQȺzr_GV5}k5k5~=֝4UA+OȈLZ(ՍrU+'u,&ddiƒ$:O2aF~[OҒ'dMBk| 05@"f|puwKO?k_wqwx?-F\VL~0?yk߻`i6{Çf%,A?gy~Z}wU[BCŶ_).H5-UXTXf!BC`1C0ko2%6A0pR PȽ"vxi5uchݵ&mutllY[l0b |JZ2x 2i,ⅲaAo|Ç TD.x~qm7;dڥBّ$č${Ǐ{>ャt89X|znlRX F".b-\zvul뭬V a͜ȌFajf5 t>j[ Ԏ10XV[% fvnXU66uk߲0P" V-v]mL}|5_[#] {P˜ШhaDD,k'S(PG?r‡"t繼3g\.v oۉsx>2]]m[`H">t0r`'׋Ǔ^RGΏ20 #CZ@gQlZn@;>n-FXMn,uMTQ5Fm 0ЪO>iN$"$N;y{Vw+h3\C5UBd`!mrg6YF/,m|vJZ#FJuAh./ 8>Ij&! W7)Cl๪*|~qvxk:Oċ I7<8IуdtxzXLsiq>ه X vw1{:QkqX_K'V,,is P[' u-& ֍ѦC؂h#Tc VRIuRfmem1a$-1kHě|we"$@` Bjw@sK g޽vc%)|1*Q!*hֲReU!oR&e9xVE=r_p>"4{EϿ՛W_ör>r>!gv(w |ԉ$fnpp/<*_MO`rK#v~B j}^1@28.:ȿaeӅT6FMC41u U=MSPQC1LC mk{1@5dX2[W _DmWH{50 ٲF/䜃s$A8t"1QFBjMT ]jmyfY s؍Uz&gSE|(:Es5k'BT`{?*HYBy:$ ~]c&j(>'`rt %eʼn$!S^"go> =g*}LK^Ⱦf]ݪ0-Q0 cbh6u MbBS-CS.*.*..K bAM |TTYM4jǝ i#2wZ3uD4uY\-&,ދ} $e$쒤{v'=9I'9s $hZSG눦քHMQj=vQtNX v@ (XbljQB9/rΊ|<%NA&x63 sp]# hX[,-Z[Wl`m 3H76L˨Ց&@  s#4lj1,WQ&a?^_ C_oGo|s8dLJ6҅;`?f]+_;߫xKFI+Zڛ/4?~-FFLJx$)Flp*Iv}reh b7iUze&$m s^ȰS6PURC3u}^̯lMr1}^-gb<,.k9;j>Q\phNCT3~A6Gmӫ.Mlv!ef"`&ĞX f"!s)\S|̝[d_'KL,(8/ ·9 E;G I*<'i1$ى5?ږ6影t^AԸ嗶ǚ,jcjyٔj>*//ӳbl9xZϟQΦT/Z,ocz5>^| ~mڙ[9e̎i%Tɼa=KX2\$wY>(x8*0dH=I-w {E+n.׻THoojQ 5!Sf$-ex&I54.* M䬪=yA*E^Ƥ zM<㓤/IzJ:._wEW"q!1ԳX/Z\]b~񴜝=gOb\g\WPy3 ^eޫBuQݑN Z R˩ hJZ2FNyg’̙cɜH+\l CBTTer"G6(+2J;3ǫAq0*"4bPm-/lJ%.-kE[X7-W!3%Q4 +Bq<I'0!><#qq"em B;e;{5a7? e=ג`hf$>?$ H=Ά/@tm~@` L+PB |j~9]^_/fgOWgTw-.ϱ\\I].$6CbfI{+ns][@4DX"eUZȞ,;u3+Ы-U7Ue)"|Њ%Q|>B`֋Tw@$j5DOھNbL6񴝪&s ;aJ\.u`tO^|zh,E{}Ȧ{lQd0LY Hh-.dr?;|-= A6'$=1?Rܪ~_ mՈmwJlJm/,tWARcЦe9Wr>}63={yzvN\\>r6府KT.&cz}/a|{=|Eטnu5 1T+"r㒢,R4!q )PBS B]ԕ4u%14BSZdiv @0h0"Qk{7V+6h5hΊf]%Y+ (7rthN|:(ul8ώܣUKgTYF#6feH!"?|r$ltx:LA6|pOyܙV&tٶh6*`ߡeS2k],.56UXM9\Φų[gowbٔCt14^cLaz5{{*wS>xw_^2IQUT.#h\աMiijW-\·eEN+6"B\;AikmG`e`2 7sm2S #\:@6T󋦱F(`}r}5`# \$tF.obbc:816n}V|xGnt/= `?-FG>$?asD-^+7R_9QYӺզ 4Vci5ӳ˫o.>?rCS7|nR]{u_bX~u/Y,!iCJUXq0o{M $eaԕU-Mp()ؠg9z!!R;[Ѵ#ɮN =P! @B7)7YA)Pa0 T[\C`2c2Q$= ݤDs?p{gdbtq;I>Ab~kS3{F8R^jNSLRCM5bZ|:?:={v '_3TK u5T^ }n_}Uгp.vܝfRkjQc{XCPŦ|hjڅ(83Jx RG`r5umV}<[#͐nFu: U&UȂH  astN? !^@E$ E8c b5̘Xs1 ZkS6ѩ|w<.F{`r䳢?IiTkC` x0Q߈Q~1ưPCU^6|Z..['O~ay0?jBe+pi m.㗨_,˻ e%C7P[[MCTm::D]!eCҦ\]URW5ညa4҄g0~jM(bln®Ͳ=ZTQ9Db&E%""Xa9keмQ$0IN.;DfBj\g{iU[0;x8{OFxoGL'-:FMzM,NM5 UyY/tq[W'[7 bơ^zgyt2n1zm/w`hݫ͔͔MO clb 3 uMи:_TՒ<%rm]ВM*ЄO@fpFfR!ԍ!@U9Wl, JZ%[ "᮫qcE֎wނD&fĚS-qu*FQB7{,Ɲ>f3pT&:(FK?]~׶̼+;"_)hktR F%iq쐝?$q 40kkg7~n{go.ϡ]ۍ> Mrfq9-.O//9o-3ʵ--/Lwna+]"wxm/z쫤/J_~/\z+k/cQzvj=jT`1F$Fv%hFn%$ܚhk'geO73öj"##m}@dSEj-sO{mT M[\:ٚu?UGP Uɉ,Yiqn?;{GA@#bzV>{p/Of[ݸ>|9u>_[)PkѭK -v=],p_P.P{gS-#2U-U`(UXԩ!BEXB$t2gj!B; tA~x jJ%GUf]oU@TTD" \ė=MlR -Z*4h%xB_"oEʆ}B/3[9H'Gi ao d߮]4z_b]y4TPI/^Y(E{AWf|^sqc-s Xk|rcnrr7G?6;ekOD\& IDATHE~m]O A]]~$r!Me+V!_l=.7=޻=Ojcb~Y6*P}`W/w`lwO7>D̎Gtfh E}@0M!GVDJ= )f"!NjD;tuU+zhA5uL2 }eEh49.4"\s=7]< :&7`Vgw W@ܿM/'ѕWx NB_#0+ Mp`JyTeDxPH ~l=<[>7=w=}_<' {y/{YU oۀWv^}{CLu}b|B{1js*yjV+zd{P -Cn۹> 7/9QT*( E .P/AUi`W[^wg(]@_.|U 7Q>Op\{J֜0O6~Z3z۬](rvH5/5+JJ%e(֋r5珦'f{}Y͟_/me2෫]Wt!l ~wȘ}Ly @3E,(bD\UT)JR<4%%>B~"2DeJI[ ݁i M57৕ɪRQ\ }9F_ %Cj:`& Wnc3ǭE\PЗ?|O^??1Ξ1'LQOjrfFfwZJMHGU@J,%X~';كeb0J+1f xGػ+=y]l;/5VmӂpuT̴j($@)l'3R鑊'@HUhIE& Ri}4+ڐ7ڏSzbDk00:#P}v`&jĶo:1>6ӵ+W`8u9"S@ lyX!J>ӠB0t ~*)r2YNggG-ff'd5{BjaBY861mW{ݎJ/_"wp_/>ˇi(~']aqQUcBJTs!9bیf1aWFRG+ٞj^ͰXQo[e.USB"{1824Sh;t~5 FHg f^_8 ìMlUE(2VƦ Mz@~|[zl~b?`JnΤ * {Xux<O [Ng;ROZŌC7/ߡze#m?bR?=zBMpD<:/hQkgY>{<[<7=?zO2HK/U zM[x| ww^f(: ͿLGm0$b6Lz>FáMh<Md'CͲH֨4&CHVQT$Ȭ^;ߢ~bT+ڄUժJđgЦ%`{g"dԳ=74L5dFH&"sElrUS1P1mJ=R:"b~6[=-]-r57ȍPbP}s:rdMe+;]f}SY>J \;mV%vp 8\t@#]͎UMptl0l0!D((!FeQ|bD[C}蘰-VU_&.nB)j*SEd "AS^$Ъ{\t/zfG{?3dcgqvL }hJ*\5l`h; P3JUc!XU7]=] # BH9?zZۀ}z f}[wb~X.3t#1Wl+Gxȧn5Lm֋)FS39?>k<$㞱q攜 G*_F@D nURKI^\R-sŦl&¥Q*}X`lÁTiՇO~d]6&c&5AթhnYmkZY[y B`icNmnGţ{ك٣;a1}bj|r(wِ ~a^fo}+<Ǝ'Wo 39GW( lz#^ 䂈,#ATDHE6K7R}lf  j׾QUb '{yp-ktWM6L6qGf# Di2~ϹH6FyP|If5"9*Aϥj1[MMޛM޿].GM Şaoĥ`~mz,?~m#gyvqDl x`&7̵//g'WF㣬?:uYעЉ/Wb"RY 1jB)vѶ]>PY6J/pL, +BzmH]ƵT9g?Xze#nBl`~b+W*쭪{ΗjajvAjGX/awg-g)%PZjq93.הԀZp:Ԯeb]ɴ&+d !kk7_׮]^:>rz2ڬw7B5r(QQ\UR1 xbt[<3Ő7=o*YMu~̏o׬]C:}zM3}̍5cbvy^*$i snT=H&HO_b=+lr|,X͓%Fmi?t]..퐷vJoܑ{ar N}Ju|U{zzc0^9k&׍lkM]a'\3/6!Ɣ#ɨQL,Qmky2 wpSU>*@ 2 8jreެckv2EsKnaxJ1kX;$dm/jT'ck:Q]Lj(Jx\tulaqbrCyn*xUG؛(vtO[}nKAcd|F+7 *ݔh_^^1ou6|BD#c6lAYde@sQc D!:OnΛ-ߑGmxTKLĶA[ dgs NwmEc_ۖc~[%ye}㿣npqz.3<`ر: ^/R/)oz&z֌AW%CPc AZ g!Է Qc"iAZH̷i f/1yr2@ Tc!j ]Aj&d)_&e=쐘dx@{P8UT)櫪jDSi}sZ_rDE|(ɽޭ{d5?PMb[eb؁ǡGV {}߯g{2d@ ̲3xy8!WEZ rXl&Y/K̆1 v`Yc`h+-` bl}_b I8]9`%ϭimܥM.YnWD灰*d]df 4ڳe G`q*ʑDU:MTA+ַII/e*Wzh:{p{7go1|e C9G;K]ʎ8wEtwird31i/HdKWs3e.,$#,N U{!lTmDQ( *`X1Mꐨ LdnAL_Ef27nY]#zcox2MdOL F5>DT$@PihS*t j:VբX͖O̧]=y}*֋,`^9?\Q\2a`V8gAE4/^$u};Xgٞu&sΤÆ W¬Z`Cd T(ZD#b4)(5V3)!C ۖz)na@> *^xO^1Mngָ pTI^D$H" \+1" /et}`:p{ޭݸ^M]e]l+Q6.`~/ЂSc U1!2xf,13Mؘ1f`}cg rƆƱ1Xc1ư1Ld008} u`K"Z"!D ) "ʴqy>U1 R5]fR_=s?Bth<ج7pe>1sI:xMM7Ӷ\S / WTbPX-œ{[;a9{sFtkm;f~W_0 &LB" ]YU#LA'\A,,e`1d,)M')Kc-،/b%&!w)#H:e-gw\//n++`e~E+v_W6_}f=88 ~rUF+[fL#LLL>T4DCb A[c&ZkF֙:۷lX㌵:0V6Dj Q@ dl0X!Ð"u ~M@\0te? a ]iO1Dl8##"KLm=OݧT > PTzD-|hH >b׋e>?[.<лӞ ~z{W;Xe^L P|ǟ+{AWsK'h\M` .|AG@D}:$13O1GZ>2ƙqvd]CkMZ7`:kXkئ"1Jxu(QYDAQU#$ƍFk6{ Np1My :$g:f pdk 9 l+"QJ 6PReqE4&& PH zU,fzq/揥ȗ$1{w7bU]z?ݖV]e_O)_Ͼ7?lu83&aa1c4`D"M8>'-1Cc̀k{Ƙ͌1l,1Ll!Cd,UkH X-5> 4Zs)᥀_8~3?OO'%ceeˀ} ~EH/J+&#jzT"IRUU>Z=ȗӇ1_(5uz\ctv2wB-y8aȼ7wԋbʿ%/?5^́5 Y՞Q&0*F1戉#bለ&4a `hl:c5q[Cd-uj%쌲e!ưb2՗1-šqt {B_'Ƒ#Yά5M*tp!* T"'K uJkfJ(j^狳jX|I1x*]ND@[5~o_PE:;]p(@Y~[-1qNlV+-YxN "8"c":b#"،̀ X:.cc΂qVْkTccZƲ(4cj/Q%}}q3C>1}63Ʋ!CF FTSǛ$ݟU4ί۔}S=-e7}(\t>ΗӇ>_N%9.3w0?.C]a)E=n),Abe*D@DL 6%]H78&GD4& ̐]ol*Fh\ڊZlXUAD˹/VOBb,5"HOYܸLc?;n܈de2NiFoĨ}JHJivD3TM 9% ?H>yQz1-G~9{1xv FX=deߕqqne#~˕V [\Bd 0%@*<@%0%-sh[)1 *(F" {_C$R$F>@:fLg_7?349ADc2$h%|R""nMUC T,!gU/c>_r׳'q8ӲX5UV2mn`~?Gu}K%A^e[;@@ro^ D62Yl2f눍%J&Dl4ƣ11B:PH6A/=84G~|L)E7bP?W=(ZhA$rLzQ Pi(AIѰ0)ڎL"*!FeuYe|y&jK&a5A{oW*26xal,qV{ʂ3&TDSHyKd Bbh IDAT[D&uabCI5h)(R&ƦeC$ҧس"$8!A$Re"* DʬPCWIUDT4ƨ1\}b5W_!!T EvOq1;r] 2a!cdz;@PE/3K9ڢzJ&!`8l`&K?Iš@OUj,ݱb `pG@D8Y X%u75TgMUlĤ[@*3"I$D}(\|j|)$ n]CEѕ/ v ]ojP 0sY+07#E٣Rꉰ,Ծg90E3n?8/^?;z VHBݨj$ݲ?& TIՠuS7w$ SWJ>Pbr"b=a_>q~]F6 }Qx޺^knG"lY[!+4k~ 9:^yQzH(])RҤՃ #D49U`RjSND(iy2EWeZ|9 zc iz ^̩u@[KWt}/^t.2& >dWᇩ >ˡ3[6M NF@4 B""$(*) )X $uM#}T(^b^%H0v-{Pt!+/﫜_l&߭mG 1E}ro.O 2Lr@V^QE@1nQ{(qs5,l$J }b92_iE"|^[^ȻLNx~?lLǦzHC>1Q@l) D$ZHYI9Ci"k:1:e(WXk!n6G;v]p=.k[j  <.ۥ};my5(Je}8!i AALFYYUPBP !D__W\/b/5J IEo yCn/t~߇^ߴ]EMj3As Frxp%.zLYx b Y0 |BF#X"$9J(AU*TI=jѴ!t@,/̗֡\%xhU/v+.v0}kz}ǯ ^?lWlU,ofu>eV;lO*4O#i?-3}7d PڠѲ RDDU\!!&fef(S Q*G %UkԘH!_P/ C$V z=~? Z`U)+.VyD(W>&vJV?}}^X_sп=.T)W*V5kU^Zj hl5l%.<,0 ;%A+j]F`.YَcVf!aZf9jT*&J_HA`*.ˆZHU T-T=DH@ /ė+W,}!!z6`sgm_: 9}ɘ!cZHjX<֭R]|7 W|'k6C@*2Ue|~9WaY׫p بZ~O_4rt. (bŽP|;U'c8?D! yA3E r-DX&"ViШAD#KU 6:`+&%4FVb!P/ZXK_P8 ij΍db̵71 DO)c=>XTϹA/9>#ײH| $/"V?G2|IhD/zZY)vQhΩiv< 2nsW~dg|vG~ ݂s[4B)y/dPˆ*+T%^E :dX5@+ D%\"e(󕆲}r9/+hWw=ɈhpDtc<Us`<>u0c|<9nhLD4&/<e 5r*"PPvA=a~Xё~DCɲ`!*u| QW=.&.4mߚ6>kS\F=LOXzjaP'cDKtCʲ٬G7X  )E̗kW,6Or,y=?bHނdZܤwi% o4bQmu{ `9 R篪1wD>|:sd*h#/.vml.k{g0RPHAIIEI3!r*$[OdG.ːTl~`3Q (}vja]fX/WѓBclnӁ.}~Wc*O0uXL@_UQ ཊ8mzhcf@^vYuClGj."* ",|v 0$|pDKuI,e}bk![J/B.y e|(5FcW]js;;r:J&}Wh/5{K_\,_0w5`pDӑ&+0{Wkw<5cwFjy y}m3ma0|GhJV%JMgu'qn22WBP%j"e/$̉\v,4$ېNjwR|XWS-Chiy3믽=!z# yyCu@?Ou Q;LG-A 8]JOm[^$rJ+ۨn}j}5+/x;> `F |KO~"6zsqMvhG##&5ef\`3ԖCoJj8T ʠ!)%ռj -'vQNgqSkZ3<z'D1ǎhDi*I_L'xPRUVate)m€({ګ9s "R8Z| ^SM@un_? B=^#Q}(6e}Sԉ^ouOXsx`OaQƀCêR*z^f+=s  uXTtcZA>o};wkOes{ƘW{#KttDőD2W}3ٗ/V;5k$_9H򊃉P}=_ aUGM>UkVjNbJDdv;iZV4>Qҹ oxT9~ɘGD< "GL9.X)Pve8+(3{D7}Kxڣ?mz.Q!G{yz^+3bx򪵟jSJzFUIDU:[=Tʰוݬ[~Z "r-xOU _CjrW6߽u w3$v s}[m—s YIJx~:%FVVu{ |T=w蚡U݅h\;"N;M:i)@xPկaRBGsg>{=_e|׌yG(u8M X~}-ð3~OWWQ,"Tb|4rg}%c~*#zz9?Y ~Ho3n#JL2ɣ({z!u<7pj<`_a`Jhl~iFU D}/܌Wdr'?0 1K*Q`RJdz +s-cNGDqbm׹w#IS ,% `? HvpZO~rrl]TeB]s||>_θ;kAzߟ2,cDQRU7'V砏v F5/_bu08@- $YW3k3ynĹD~fͧ׽i3GW82^(g 91G75V3fw՘[1>Fbzk\=bI|Y>k a!;b~G7xg+c  |Z(opP-Fjls\0BX@3Dw_bDDDorZ L-*h`T{o>a Cjή*p+ҧ1j| aTP}ߌC=fD'"u1z3y$NRurO}a<UjSMRKEOWf֚3 k_ea%Mo WS*1T'~cPBu̡J_{ oY2k|iTԹ^Q.G5&p8TջD4VORr0i09׊J5(;[LUkz0#:N8i[潔W5yXO\#Q1?D9z0RJN1R)>ugO Bϥ?6'$;[|lVUf*g:0Ƙ,O2 " <ȶ־2&H0~Z4__x;jf:],<[ΐQ)xWUgŸ(*&R?wOc2C#ϧ>O*6>|T_n(3_77ׄ(vZ }O_FUz+I4="΅dʬKwUߦg;ŒV^Л}o$@ $JYLfo]1y'5LìjUIang|ȼE+R % ?egЗƈ#^f9읞KV^)?mKWukfv54>~ tz[ QT0?B@#o3W{'FǼg\9qL(P`:e_-w7j@*X9<כp_y As=b҉8BS@믲N+"]@ޮ~=5M#wh@L U͈qд1pRxlMl}!*1h~t^{_47_#u`DQODQ A-\8/J"&foP9|gͭu۝mxNU~!2&B$2W-`QyL#'B´>4WHpv3(8[W"-2.3MKE^]^ Q{E1} >Hޣſpޛ!IM$ryȷ{ӑnZڴ]!m긵8l[Zj=(gm5߷zG 6Uri"]#k;<$>ݣ(tPܩ'd`P}h%[%ѧHUOE -D3C?SO/?o zJ̟1}t}F|A\UzaUՐG\%Q⯙_@Wׯh|1#*6Z;y@~gPcW 3^#uz^/*L?v*w_iV/u~O& '3y->lD(Ϥ_{~Ϡ]GpDωr 2V6*àlX3 ;m-b!@NqwWYPGN3W:W 7]f;f~~D!q67Og"{)zXC.h 8Rv:vc!z ;6T/>v}fT/D^UC/լ@u0 xL!y/C!Ly KWHqYh"K@]-Cc#\"M|uIdL{wQ R1[D1w\A3a~w~@78FU\_ 9~O>CuZaKU}&\k_+EtoϨjYVU-<I\UՏ !ad?۴*>Eh:6ITZ /O[ 3iU"}ܧ_zw?H䬽 3_Q1ќnR;˜/gZZ 6cz[8;AZ#9 t! 1# {LUŐ~bܫ_.UoHsN{ụ̂1$|IdJ"3 p-80VSn_/ڭ2߭:Z Mml[7[ؗLw؀vZTI8s_u#R pf:5JW8"$ /U~29"d9;!\ ҁa Feyryn KDqG :Wnl2s2VU!ɰG )؇&\2-_4k3l k÷=(v шCu촥JlE;-ں@4tiN$Yԗ>+bxs6Ă!RP4UK>YU|F8. P*D$66-"~(q?;v:-77)>TцIX-h>vHGZ"`w2ثd2gM)nvH WVpq;v (I` .T.ph6>5Dg~L{oOѻXk.Te˩\a{d{π;U1K `p,@F[bØ<~[ڱ,pxvDka//EJEɄA],ZM&Kr76]i9q{ )+_b_b[QFu=KTB[jk_|ӿ\W7>o"3DP/Ty6V-%'(c"LEhq6j.C5ǤkhoE6ংuC3VSU *幪Au1pɪLDJüGݬ6BU{EY"mT~n6=UDzV.9𞝶ZSCleՋ7pcPUaa6D M SlBVZgOVë6W*S}k:¯ fZG UMƍV|:..UoE%d:Y9PD/)L5$U7Ai#gB8bԤ^JC {(iKvV@T?s"/6*u;6@P5S`)p=k/ps<8R%`Gz,[t,E4g4O+.(._Pd>Wzՙ hmDߖh)eh+u`ӸMZQb8WZm>GYvNV>!Kh|yRDS?=Da|EfS~DfLE^@FAKzsiVz',m. տ2}Ϩ V,W-5Px˨M#G5d;r~J Tu:mcϷzu!O-zo3y@PRQ5Cۧ䲕A>ؘY)3RD[EqJ:;9}"HK4]q@ͪjMo؊w<|9P~Q/c'& B LiY˓QNB@U~D/V0_nr>>tv*1u QY"Z+;#.UEkrlO\,?{~?9~ s;>)証e:>F9D_  mܑj wwCf|~h~$ dW^3U5Nuj),Dl$03թ^AH=JldQ{w-Ճю =Ug.nh/:⋦=b0hm?wW3/@ٵaH/D[0\Us[?P=ET N"BzsK\!P7OLuVxe g3P)M5Iߩ!p:T%m_q(wY{,ޔD`|14(+`a1crơH-VvlT}0f.D7f$a+%5Pc4ĭA58^MШV́O{Fb2h_!sPxeĵU\dz yL,( TKrRu N`I(+"рU?nڶop!喋VPϽ}(Ld)l1':rOcכ~1#SK$!p ;\ГUoޟ }zw> !<. &tٺyU L.D]T+ZhD&# P9`<.>q|7cF=>g ժ-QԪT4C4D^A썌1j GDw#[?fq!]cvp8c2 m.O/T?;lv #چz~eH4*8 V ]K=jajϺ Ya{:3<#m |ާ5X]&zb w.N ՟] ;Yvw@N8Pazʡ'mPhCTo.&B9YFVy=pYmI6!WIO?8J0NFk$ BPsNDn/LPk!ʘӼ06QPj˭HD6Zx-\ (~[ͥꫳ@al!Wß{$²VF;D6ɬ]H.~APb=tzNM( _|27qDU#_,R:SekN9;QYK{\\)Ty+O1rjy_+p4, u-%gvVx:W\co&U-h):F@ UX~,r3M(^)cԪṭR;d\b._k9ԲE$CیlPUPyz$r9F/*&"3He0 H\!eGn}@+U_TDϔhj8|v\*pT?YH2$ 5F> Y[iy_+!x$z Z[)KVk+ U=TX}smZW\o7uP^P5kn_ҜR.U0ЄZ֪8p&őS'Al=N\#kpѠ?i/iv浈l9bDsaT+&zҞDq4p_''";3S=JT:г>;[p{*0fSrc_<ڨoȁ^!Fzr8%6(UG"َǼ /'6h0OwZתS'rIDԸѶJz:9xjOlDk!uXCyizP9?W=?9;RXG,iPp(r!s[ìІ}d2KK`H2X\"gD-cxvTygKߝ3?}4d-[HTWZ ײT/Z[)Z[yr9Gk[.'"3R}]\%JLg:hP=zF1 ?:0Iq xu,w m OUg"EO[xř߫MXo=4|,l<^>?) WD ~Ռ8aKx[]PHdV}JDl~oŋ LdDwфB [V?Uyp2LTpp\ RVƩNϼ?l=mUsjc_Qm=06eڊj̜B\D/D:Bf1?W]z?Ldz֩4.L͙D|ߘJ:3m¥7L /E31OƸa2T \ pU?__?s{,j8եYWĶ2oTߊle> Ld+VD1фK̏Tk%%QfW[! 0sB}4?;9јXkuUnz"Ŷ![=je%Zzt/ѡj-lDP`<ĬB$u!)c+"s~-Ϳt h@d AyO{~:^_.ZU8!k γb<u;ˉ_൪V53W U[vU"/gKcW"YtbH"yZ&AmoHe[3^g9G,j C_Z/T窗3եC.KXejSEL._gce\T{[̆C_mS+斳%Q%QUDԵb:?,wL J ?9Dq VME>>†LDg6 w0P/DZvP{Kp.0av3N8q/OT_~jZqty mmvJUBˆr2c+|m+8CsU L;Q`KՃ3/^x?G"Ie{XmS秗s/̿^j\UEx!rr"UEd7DG/Fׇħa$(o:0&A}?. H}hSת[OX˶S@VP |Dž jU{]WQ= ೶K09UmpZu:Waz wTO{}$EvHU/U&aʨBDU3g"Cs':hTjP5T(jcժ\d:$:6BWקd,X9xn}dVd@FBc$~dG"]TѨRfwbIQ8,5_yv&2+ }1W`"Gh1u`OߖV|{[;!UL KcUW2AH]U 50ls@T;wx(e~FY4DZ__ʜ*cJ}$r6i+eZU4L'4t*^"/۬<W;`2W=o=8DP+kU Ld6 zU0(0_9@ʭkTu>Uu:UMN߇ [9@{9m2W8!C^πcB).VdP0Lm"h`ZduPpmXYRHC2uwbi9v6S6d@-Yzlyh]eP~aKeQ,VҧFe"lEqimzOU0V3>Wjr:9 BT8+61jJs.U/3(b}y5$K"c[j+BY qլlPe#=3>$5vt]@ kFEq}|LtO .Pfs 2jlB@[n,}*~Gy6y(}|EvutB(4MUkzP=7]B92O8=7ID#[65FiFN&6g6{l\JOvz IDAT"7S({}ÞVay'Ϗ{LPFrS: Gb}Oc'/d_OLxB9]ތ""z@mV7%$/EN1"g1.2lP()IFN/E&YQ&43zLVQqh~cFdz)]frק I e֞{6M֨q18U|f|oETH|hM߻8 G(p}T!Z2BM3.c+5 _aΤi=zb(Ub%^UtaK<Jzf(9ҤM֭[5ͽR E+ 9=8M) J85y.1r8sAic֫@Etg0dKOD^_7FRgʼnaZCZ}H^3.V>HhyȤ9'N 2?[_rZ5OxU ڨ^d( ơ6&I/yqȗ1[2N;Y|4=Aת^ם՘&(23e&tTɬwO!"ff6afb#!OfUy«J*FEXEXUHēOgvuJ7m6\sr{%9JrJY{2E d(ʼ}P=d'.g㒈2 c2f>0f;H}K L4jmӹɩLutkrSBReb) 2H9M>MG='șЉ Ur%[6rN{'PGUa-%-(3{"9ӀTEU zikx(ʡpM$k!*>Rd({ L|p .82WW&Q;.dthRs#MC`Ay|[~pk҈#n@d@Lc-檟5̙&+jgGͲ9I􅤹vWٻ}`{Xo醬pWO;q+Ya̛ЎO='ۗ[ Ϟ=3c%KL4sgSգiW挨T3gMX|$ע=;`}*ഁeuõD5/l,)ՐjHZ[Kd,1 6Jlaacac*"jkP/綞r>-IYϧE=f1cKvQw_8\uUpFRD:+]\yBz%C7y'HV:™([-w1TW.O/[YYFJY;㘐9i@1io?=IH%IY4lv/'7D!MLWW@̭4`cKEIEQ%-5lml k 6ցH{ryQ&v1酝_ hL%*#.nZ ( %t罐A$\Gз(.t4 g+]2!OiGrV+=*!y8C6ZkK@#, 6ek7f, {.De vvJUQ1AR#dg@qrf?{ڧƵqşC 9xrfo3AhdOS3+]4&,nSG= |]dMA 9GH>khTmmeb<{bvmK2PWN=6"ު2ceBmY0NE9ƖGOˤ0z}Rݴ c,.]QFե;A ^{=F;6xtU0)>2O2[WvT/'eV9i e__ueMrYT!ٔUEBKO'|%єz^[ (8?ÞxbœwRy O{xhPJ"?A-T|I jcꔼo`ˁE錱`C"~xq&YD ?}f9Vzp Q^p⑋ݦzWHwL4E}Y+$'ϏC._)@| BLC.VN_^76dnEW9k؊τ][ٌWg4`q HPD3]XzS@cJPm F-ŘBdlEM2i&9HY4k,-Sf@_jOVF:6ʀ8 ⍕ Y۔dIŨ5RWϕL!NWy *窓S-]JA6զr-NT<&#ᐆȄ}9Vk<EƭLII(:plvs`V:$Dbֱ)۰)؄/6DDB MTv 6ėXDP@ƀ@6Jl9:MvNU=W:Nl7`Ms[i:">_ZM MeҮIbȄs>Zx\k+s)QZ5+m"Ź*4|Wws`R4Lq&IG4]'͠?6!Ň@.+LJZy䏮Z2+W6Ò Ufl qIT$w$XUXÐ/CrHQ9j(T*I|8'ѥ>-v$2$+iKxA%.QzQM 'kTĠS3#*iQ3fம)s⺎PY{j2ᤋU1\$IJ~#y '>lpW;El}[JDl5)ڢdc k),8tBl<+V2"b&+ b6l ,ļ$BgVmz^]_;pمIhODs'RpCdÛFq Ӂr$s4p^ QP3(ֽt]zN0mĚZ9G@t$cr1y8JuG|\<)P̵ZB^LϽo(˦(MQ [ PV- 50l mсALƲ-JcҰ--R-Jx1D2SVjrɳk:RM3ЯblH&AfV gvhYa7b5KJuQB&}6,庘p곚?qaq3\߾}I8cI`zn%;ɬ٢{&l؊l15ppaMpA"%bbbc14b0T[ `E-BXgijb0UDOZ T#KdoUF y\Yd([aIB<ݟ;}W'̦J-]kݽleޮ=uCk3p&ٗh2a`yB :e$|&aSw8\&3E.Lv-&[yH b-F(c[FuQ (Kآl[~DBD"6Kd5lK[-[F[\ ƾ(+EX(Tٛ@e""ћzm'yE"uqbj9޶O C7sǩ(P15ɆJAE5Ԏi:B%v.&rtu;AԙCC;Pmv)z tP8tZ.䜟6l12eup[[mQU\-10YA ܶ V-Ֆ1Wm_  BYEՋkD6!AF&:$Dréjtvs+:?q4]3P2r3֮lݱm3 ZFq3K^x\zb.r.u=f9צY55k; p}f ͮY_\Mss(ͨ [t.i>F9CTՍ ks}c%asS 7 ؾX`k1U1Wٲ cm $) +3 _}3mA֖d28aj"hTD\E/^CP6p| ?4)0 q}ܪ/ECq? cxDekr0+G{hgo0sg8ڮF[c;lYd H5P_C,ՍY,bvfS7<ɉL'g:^b:l*v)#5e6tlخLdМnaD8@IDeI8{ܮeL_蕛KylK@zî{44޽ˣ;\  L9()a&^ %Zf)T3BhBXCvvHaLa c()qM.qK른_{W-Yo"9%8RH^]vЇə hPQeuwPc[2v{yki4"C *\([㙹&.dADՋ^L⢙|vfs?\\SgZ/f\Cy 呪ôڦџi&~#1 ڰ ſ:B83:\$<ްxņI7ױ隺qϐ7@ ]~w=]xUQK[Tֲ1&{TEz^bdXkL|(AZRvEM9 6d[pYO@[\覮3Л<+XKEojŝ-cH=_6 R:l UcPClhLschLs64g ;]r9re4Ť^'n1hٙ_rv,S\dYϵF}Ө8M#۠>z_h΅ٹ0$ ;_u}ϵ7N6jcnsm}zMTUb<|w޹sώpUFTUQ-eC&p2?K;dZW-[cec,KJm ]zM]/|b)8UM6լ4-VyC~WSB X`b0v<`3&*B-[.)|3V2fkZ3cin3&̜l1\̉[˲ک^I,.|[.~rr!M|!B˹(|WG:mǍJRo979sS1% ftcݗnߦkF2C{;ݷxw j8pP bPV)%f&RUBVM܎ o-dK. ₈- LU%!AQYs7MY!# ;7oQࢌËIjo{hরM(DT0-1Ҟy{+zJFX<nȘSX^X-Ĝ ;Jfarf,we-~Y[4Y4t,殞r6s-_/F/y|zYeh| &&#s|`spbdMtC7|t%;?~m C?o?;;f[k[z^w9cxce@.b1c,D d!dEɀ?(B?~ĎDDܜ_%DN3sn콻e/?﫪]g朙s%v=<ã<+Eepyr2_zS43B-B Dz$Dauw1!X7B,Br)j@mywCeo?ڎ2P5B5mMU 7*6(#XH2$ Ԑ1 1EvL 1fl CM$ DYC, 6 ؘF%4F%Ԓ&5u ժiEhEE2uJSS@5e"E }#\H;n׺KH -|"zD90|'~gay?lo`LZ?5.pXP!uQF ~"eHDT Ic,+3Vs aimug&tKOmC{[I3f`FfFf̛7Lfa27(aXYqbSdG#3Dfsd 5J 5fi,RcSIl*uBUX7Ml&6M!H!&2-u()K-Z?bG{[Djw{g @GIڀjs㱇?Gyt\^p括py>t9x91lf `  7@z@1!"4F:6˹֫XePtgnʬpؚச>`F@Ѱo7lޔ͔MՁ34 Z[jĤDlXY;Tv$HI9JQr9HH!j""*-KfZj*T%uU4eh*ĺR]Dk IDATRU-b>Rgtu'}/}ʹQMHgg?Gg> \ns?̏8s#<@G >֗{rٚ#wjfQUؤ jŕT+Tmu}L"99p@`cۇ=y3 bMZJEֆmäf *!3cF{VٜgMY9Ue`AD"{j<ԎfƊK&(lEhKD[LiWI* M]ժV\NL=H=\ax-umczhO rL,g3>v;.!uv]Sk/ϛ.#:ͺY2 )4z9 髴^hFL}η/ =qק@՚ 6`4|ئ !( tܶ`h]ﴷ gDzzl/@#v yټw=;>,>{N><(8GsTKb^Ӓ/tA$ le3sb2_#g!B#eZ }kR?r'#yrܑܱt<;Cbʐ:zwA::48o~QLL%ZBSjٔq\\J+kVvO./^̻!4.>e li1k7e,CS6Pq=@b@;lH&#D-:yG>s3Y$˜D}Fϸp嘖4') &4)&m=@#ȿ_@b!J>Ν+F. ?){>fG#v8 Fm}@MG'K40!#wN@IMU7yXNꥮfӨ8< {9Cۋw׎(*u_t.yLv`> &AaLL@9w39ޛ\{˝f,w>fb,<,q`H#Wb ĩbv;_1gL * 6d^o^'=x:tA /܉܉GD#m4ZedkQXj U0M)HlP\|r)ɕ֫%ܒޖ6 ~/?Vn">0{ihfwf"*&{m-=K_BFՍs[ X0At(]d4!D̐8v3r 2GY9x+C%(kNl9H\"γsSNZuE*_s7YV/ϳceSs "rПtuq>22-=voΛf! %S RijVIMǶ\ x[w6~|[)|4@hJ%5SS_wFv$n"|[l p}JYW7VJA4% fCbDv@C=dXQ#"!0a[AgHW0U4Dl ` > (OO.χyC_dG>N}O}Q;Ԧ]7 !`[\]mP5 )4.CZӉ%.E|>dm`+|]׾7k,A0{Զ$Yk ]~oڡH\S hE? ƛҶn @d* >I7fm :ZR0U M@uIS2.sg3ĠN1Yߏo/Qi'.AbeQg'YO]O9s'yD0!b/r$ ?\M] E|CgMίĦnrVqZN U5qh/\E|g*p1F͢v}ף?7m!c1N{;%q^˺E} 9Fed.@eB ^ K3ye)\Ųԋb1._M|pn|{1£";2Ϗ|dyv3wJe-[ڝxBB'D- j )0^jreqD @5>V6uG6b lqŭ϶p¶_ns7QFq.@#,󔼇;(tA `6eDH. qWr1Yǯwo.mTot7^~_ 諏>?~Q1l";??%'xL!*pC1`!mhФYMi1~%4U#>Pco߇XDx)ZM6mZԇlӭGYWDےhf+S!VXU'Bd&!˝|U{fJvQ_& $TP.b/^_ey ~%ғ{~w`%_ᗎHώ(d' {sΙ;#玁дKeʠഴݏZIM UT_"/_r6Y#]Ӯ(^<Ί4/s#99>|W>0 `Z F$@2GRSSM(Wz6ӫ^b]-H$6u=6Ҹ n}*j4Fb21hy]wu[ R7?윱ws>(Y$FbSfQ֫I^Va1y%%,fc*@7kCR?ޤß#C՟g(Y=?g iNHqa5q%5eB[:)6UWeU3zf㗶ZL08d#J4B^sS{d5vQ+'Շ4%ӝTx>~A~l{x=YkYR-P[;u$thTKaM9ͧ|*['Z%z8,xm7@YOS³Swz:,'Q>\39Ή(P r5@1QUN m}Jo}CwIRc)T)TUWٸ^_K]M)W$1FT]ͷ+\^f8,{bj.-j'u*m;=õ.5 h&dsP%R eMcDo`9V5`;ZHv]Oyy} ?M?s>Ea~ cc&wg82BAPUQCQC^ z[gC?ޠ'ujf6ƽ5 pS [rT|Ǵ3*1:AGL9cEry(eyľQ*n}^ Ux]M]Xom};?"+uNy\]H|NHgxT@tShH[=yv"u۸P,i2M],լZNe\_Y9PH۹_爇(n7DVLPT!%H:D`DDLs$DP];SLTrQ-i``QUC6 X6l,|?_ٯ1gyqQqNsO- zf(%"qL QDLUU[[pm[祧?BV\Z+ &PBXUr9~/?WM)K o~*_> k(IR5df%~½ ׍*XO{Qbk*@Aa݀C^]e@ʌ#!uDXnf9U`֘JbHIoCN>u9/>Gyvx(G6'(QbLjILۚ_ofv-ק]:sj0If岞]/W0|)ՊR  p=}ysKf$He`g'zbFԅ[8m LT[@h~}b $ 8U`jm*5Ĕjp&REx3!?~_?(G318z Do =HQmE9F"Fozwŝ.75?n; @ԬR].tZ/׳i>j14l,8~̃CFr r+Y,j!vd}}m*j[۵i_;.P\x%t-8]*JkةG gHQɑSrfGI"y(h۵?wAo(w7Mf}O_K};OSq΀ L y;ELCR m״!lr6;/!!#!jF%eX͖_|JCSJ܎?]a"ܥ^G[7 !!t$v%A[]}apFL-pK5ķmU{ΓIH7Q]RwiZ65>Q޶f̨&̤X/C9E5y~^~jŒR<zиؗ [=n@ƒ:롵Z(cIcd-vJg#t&ŰP'ڎdgH8]A,V2 qӔbM?mL܁H'pO?.s&g[= cғlr6<@@zW7lMc>Y]F#4!&JXzjzA3x.T9P=a:aA-Oj~#x̾`2Y5U+kSU5U>p-P4~˗=Y =PGjT N O(vEcR} wG&lrM{ /"r3##Ril^dh\|K+3 uŒ1vpǡ=;!;ܤ!K 5;AKAq@ L DmFe!9O.ˈHclRJ[_? GH lǺ3ŭ>Jilsrm~NL.ɹ |6Z<5*ؠJg:U!|߸q[#'~?/e :wjX d$=g!QGTj ˦q=]Ĉj"$.5Tbvj0y\aU{R߻cV IDATCm @6A6A֭B~YjE0ЦB tgHّ2!"*B'sm%:%֞F~u\;sj tjmbKZ(krGE;cG>`tƒ)ա}ޕk:jm@1݂I&̙);'̘a"5Qg"^\Bg &3j|I@Do`voI *i syOE>Q>8bYdv'PS@$*Ћ;l}hn=i<K I=KjOأ(mDdYH1Zˣ77^ݪ{jmQGrFb$f"ǨL&ҀĕzŴgאַ>|'L^j>H?wWoiz޼KsE~ol+HNVٻ* ϊ" \$!$mDTR&A 0ȕ)cu<# /Hm1 w/IgH65C̴'3BrdG9t@ +,d> u]殮B0muHPnI->=zzQ}YA܉E}@izOC1yLzŎc Z֝|յ[#r90OFKKMlpÓl0~!E]_ɥWs umuwg7+n"& /#:ZJ%̤YMd2?|ouwd6j>B[M8ke:d!ׅGC0kkb` 0lxH\.RXzN# X#*؎ A`{>o!.$&MnUլ3V-E[Øe>/رeǙ1>eUeTKߔ WKVslX]-e5 wͯP޷!'uIȓgu'uHuMd1HH̠5y-] [m]ApMoYG|!">*kݗgw:?)"Yz A4`d&K\4NDK q&V*-=VPNDD D#cC gy}Lv .uo[)^vvhjXh"u8x+ly(gH0TPjzMt8z|f xR2.4@ny?ug"$:5q賺&=)kyT5AqӨ Z(>$$J"8p+v&Rޡd @TB9ndwUz;sNq,rv;p jVC@}  5u VJE Tk$X,Mk˫POժ^]7.Q51'VIa gPuݾm-SAnĨ`Gk Jbdd8ceL~i>M!1&q&j%ą4M)6>3'&AB'^7|}Zo~@?s .a<=r0j9&Uf#Og 4<SI\ĞO O OFANF(&H5Yfr5+kr]I73ͯun7<zG=BPsid{݄CxKwoϬw9 | Wh@T5Z5-QT"TI *\#I}bZ.鋪\^^:&o 0@v YKB@@vH9́Pʎźc[H lmX|ӣ>Z CpT$*ݬj3Nu!ac v-1!zGy̷CY4Wb2__~ًU}r:᦮ioM}jz즽d[Gԍ?V!fh{8pػS;?x..?fsv$aA^\rjT3MBsΟB]yw_v{iC#m=I5Tݭn֭6(&CY|-6QA jhh &V*@s(deô iʹ4RS5z1Qnʹ0L=q;d`J3# F@r@LAFm{ѹ::6 RrY=e;9fxȈpfxƞfpf6G9{]b4~,?Qm_7O§z3o:)g ;vL r(lj#3;Q358G1QȃI'Uu&Hln=%9p\ٷ5?B3{AF2\zyYWϯ.>xgo/kC]ym| we_k4=EA9ҷREE t1U"瑈M CmPWI!6 T@{,%U 1Lf6С̙)wlh`dȰVi{&۶ٺ,,o%X??I쀖Ȏ0sGƌrsKuWl|9}|o>|-W>2؃^߾uv:ٵFKo3NNA f$3kD$ :n V&2I\Jb􂡝OYJM@K],eMՙ &n$V}KQH4a,mUq'L*ܲ.2 "qr6"gL3wTx#DJ5[R mS&7w;W, Yb4y#JDȈ-sΆZ)E$#Ov' f`%V  Q՚Y՟ b?_W~\z}v Pd-OI )Tl jC5HF"vNiR=)YLzB"DBI1%$V˸[͍}/ěaaoɀ7BVM{w<ۊ!M!5X..˗Wǯw~zw%.3:3|m=u"] Þn}M@`~D3"bG]e3 UK־EhUe*4Kf$3&8LY恜kOoGk$Hڲ^QwsZ6^ ̤DUKw3粌3yep$APy,qL4uf0%Ta P#DD@&҅sLjd@ IʙzT,,B- CGV9zil%Ci f-+F.LP\L6It(I*:#Q;-;IIOBғ((y #vMl'ۢ9l6$^ࠛk;b 2Rx! ՗Z\,Wwߟ=ᅮ/_bY-] Mf*9 ;~.ۡs#q "Ӂ1/hd_eݒ;Lˮ;-d]ǐ >k_}v-[s$dfDL -- XbT$>1[T$́w]4/` 5QQ/fC"P*PYDQ$IʒO^%EXDo9{:xcR>&S2aTc㜶Da@ĀbH1A"A5d dуC<cR;?n<9 @Hե^T+k؋^I퍈$"F2ߊ$?蛘mL&F(U]ےs:2i!#G{|{ʓVbh=ʁT,5_>?O뿛W|%.sFK-/kz' /߭31 7'eZbF)pa#o&D6z2L@,A21SUvԀH1O i%ob9j<^T;s<cfaH* QX ɜgt{Vs+i9sC%VbP+6"R; ;k!hsu `# F APQ""DRS1BDsVbXRj;Ť&&ۋ.Et/APoR|xDtV!Q]ʓ$їgWvŀVe}c;W}!WzviPv #=[Mp|t}z?3קgR ]jvUv0jw `8SҞ&fV%ФjL[V32(R*XU>))bL)Y]+m|h8Phn_ji[ k@vd VlG9 ݧOtwopS c7/=_;ǡ}U?63(o{=| r L EˎӍY. !"3ohldfDsA(1[*(*huAqxT/"Ik7Tҹ!("2䊱3c y1;2SvV gs{(y;Qt3f B- %$n0 %)N bLH /˨`fPYyU"楻DԋQ'jU~D}|bJfK""٠.sus==]0cGeB0<Ȗ!w=ޞ<~>/kK)M<=_X+8]B1pFI ;7Rc)I T9Up GrɈT Ts4 8$M4hiA\દĐ7m(Iqn0db6bl睝#;b{;HcqʌD"L0bDˆ/((LY5̄627.63NԜre&$$jyUUmj,VӏI vSAX A/yg#nws}E#<ٮAܶOǯ??wz3\mRf෦rscoi"N\ԟ\ &Fpږ'IU# T4[o$g{~ā*1!=}Ȳ0@ER 1ER`]Bd#Tꖇe+P Qɔ[SNL$C  B9Hٱ9&c&eFeB!&!F!"A!Ą 9),mddfj,Rԛfj= b?-: 畳gmVo' } bQ Α9]b8gp/t۞>}ry/|bl+;Th.﷤ ?#7wnhǒj ͠1L 5H7fqov*R9L#wcn'HN@!x^ea|T y]a1Y@S0,lB6]f9d6!0BD LaV.LddLnHX.`cD|],&f%K-P-%q%훕vшRm5eb{W" IDATb_A>`>pQ|3T*I RsקO?S7{sm~Dߜ5~P kfߥ/l "o8-sQj 6:,fL%ʍdgTS3";D"CBZ&5NS! xwd2j"Po+O|%4咕˹L*r(Eeu FYev_;4C. ?vֿ 48{/k>:k6܌g?2ziC+-rvGrD P?>}z_:_Nw_>|l[;bǰ;lrϮT~Kao3_6#u: {7sWՁ LkrfLfWKΙ y&3@ Λ벀=!(E Y maؠqYY6TD~j^Ή)A%@ eTC)7h#f VKa}XXvxwͺVfݨY?<^ ?ΰ*oCϛy;.ϗ L1CG ǻp|_?w?_޿Ӈ/4'";*o7mZz͌oJԮ@|ߔx;@םilqhzo[V5eQ;սwR2M{I W*:JARI86)A 4af s118F@wBE4RP$s63C: eek˫~)EE+Ɣ<7x~iaWydmw< CdQZvr((tNOǯww~~j'ۦ*R|m.sׄ0*Ωf7ܸpϼ~'T~i~pnȆ[Qs/3fҨi )3٫JT0[EF.^!"ӊDh^p{ƅ<X?|"XiE =S2r.^M0pVZ}8vvuً^99x]@w3뀗C]4&PC;u'Vy =ۧO_?{>{~t"ihd07g|pm\k{۪d {LL0o6N@IeQK2739ƷQiI|ߨ;}"ΩS<;#bOUi&nxP14!~"F0a(LsPlѭcV5fu|Sa..+v t6\j^|ixf |\r wZ&`1s_Ox:>bac3jA(ŎfzD#ܞ7~xmFGW_LDK7 fT$4*!.I$L3҂;H EdMga"VlrB!Z|켥 2U^؛EC?Eb$Wʖi.\,hJ?Y8q L $>[jbsx<=?~|o:}pOj# ^+}8*ٔMz"}.Y*k/Vm 5kPiLUA-ELR2;7g*~G7 bDb**[i9 &m}Tˆ /\"dXW.:֑nD.9DׄGkCG8 arvD[^Eudil} *w}̘g3jnmQ6cppz~>|yS,)7dǵU_ ? .Utˣw 43!SphVYMnZ m` %*}aaj=8!38.'j1Tr] k ah}Gwy$/KCY˰xXf3 r^awIMxyo5];# UGe%MkxJ)$ϡ~>4χϏ5_>k~㝯O7ݹBZ`y\s0_N\\p@v %H47W&4B$mJ !AMN؇];uq$FrV yGMˌ7Qߴg\#9Z偖'K AY!Y]'6.W36MMi80c%,ՖI$%4p{xx[}pCz|٥G_NoicnTQ-W*@sHl>` ̂$HQ &mk|(VmE5a%JRtXv LtPR%1eJ,O#T [;_`\ Hm"n.I|_VC4g0ygE۬u.d~J~:_ǤP!A$@f *$9Pbs<6~T?~o?8\S8ak`EM97Л[jC@]!MiB[8#vG9bL&4M)hR۪6jӪ[қ F)H [Μy}6_0SQ\7Jg}d8^W>t?{A᥶a].۰ sFŘܾ\ZjW ѯj]e.`'`A)j`}f{W8Fu"3i@I%5|O}}xZ?i?ǧxS ,"]8;.lLtیB%~k+p*-4Yu=Vॅ875"D3Kf!H2MI)D6J mjs80*s~X\U!*Kt[><,Gz'pᳺt~"{){}]_ Zm΁ݪ58_(,/3gIiLc#Ncjc|<>ߟKxzotx>p-$7Ry~zN 0;>9օ7?Q?ĕB hHDLPE̒$&&-ɮaޝn|y͞fT^d$}$)s--SݥפxFډbǜ[jv=]heB`n; wQBDb (%v5su"߼e}7*7{}%qU]E+bqCd"ua2~3/ryy%Yr/Cu^ר>_9h!vR#" bIE<2ǨSAb%ulcOϧt=>߅]:tx>`hOcK ޵o)]ofWݾ?4xiђ.TeBxs4LWɺ=*fQL(Q4 $Mܴ,u+M|s|g%Wvݎ9"]F}s"—HKuYݕg mK87;W٠T H(HlSh6МNPS}xcS!>ƹq;kF_ǖSzQ7TOPkψ%PI!4?L.'g1+}ns{~v̾ C]2#+*1LYBǗAd9dmnmsz )sjd1ԐbKDRM"sRxm/o ~SoJMmt OZ]Slnո֓X.*v_XJf1:ԁy;I7^ҍ'wvBU\1'vQFr. 9 yĮs%K hqswx7u^4اLL-nXhy 7K*((IλShblcԇ9>7驭m}z ~N9HG1$)̔̔3c_swm/:PgS{zKC{()s]،*s*LW`" R4A $ME]W)=q\*&"U yb琙"FyAlClI Ak [RהwnC~%;jodhW`2($$QMIRH)mOm{zm維ڶym{L1%Z%&)Hp U)f}vK!U 3i߸y7p;O=zj񚟚MtTΘab9|IHJUcBݩQĕ'1Ub"X!9_HsݥT :UXv]VfmCܧ@%HF6r#_XLUDLU,{"ILSRISHBcSBchNO1Q$5*4feM]x5][Յ+(eAoe;p02elo"_d& DTRDG9ɇ9G1w}g0'!葨OJ!q6&lYKՙ)ܤnG2a?ʇ/`yae5'IVLD&UMjD%HH*A$)6PK{J9rI=IԒjDyA1oܻwmW*>YNUz Noء ߩvђ-%P\QUyq;;T;LF5#CdGDy m guX y~vOH{rH̘ 5_aWy0Ҹ7uY̙f' b& //&$*IEDؤk!_RSuتHPE1 4'\%3V-%|kŎf»[bp R)^Sp;،P XVPP@*1"\3c$.CuQH2K{>Fa."2Ð<|KP􆛙^NW A!f;JPIATDR+)6*ՔZ@%j",@ 27C4KFk6.tUz7 Vf 2]/0M0A*:HȀXy9er rrH(ϟ?@bU$NRFrWHW-L-h V9DՒFUI,_|-T&DF02[.*j@Uzf ?\+55E3Xr5ly w {έخ <.N Ύ6C;Ō̄ O!b9Brʄu/mDfKeS-u9-Z^报QܵzX,wu=ΦpYX|*-A5[5ojwneT#.:6 1薊*s}%iĈ0?ם3h ;| sXu_(RٺZM-/7(uc'6)sRqcMO}PwȱӅv }( Kjpx[:A7:|a ffD_S3;4/FܠmޕplRە+{AW"G5Ky0<6sK;a%DZ M]jOpjbw@4:葴^]?pA*38l:6 "JY| h7|o zk~*7^T>y5Vqjo5k0u6fT6P6VZ]bc}; _[k s8}`]Q|g;X>U ƣ'}S S0K9${ՖX*S3'X^R4@>SMmK@p5q{g`wIk=wZ*B5w95 y-Ktsyw|2^ 9©X 9?*}Mx378.p,;6VS)ewnuL0_ sV5rk^w^|\;ҜkT\6̨©1\[-؎ 0s!XKOŃp jׂexMh:mJ7W] Ì߰EfʥY`n±w!NB餻@[xqeOޚ\}E wޒ[OUgBӳsE:pGC C1l1:E8T8Wd-Dӧr|o|dTͰtw 91 _ p.3p}mPSz[kyM^oʗoj|m ~cN}͸1uHUR }>+@x͒kvg\c-7dPiF-)ॅiW60)`L]ce8*ЏA@Vrss۹|cCҥ֖7²Vz6nE8M@lJ!xڎk %skSK#ks`"kN_8o= pJNSaB^pqyߣ#&*~Ws Mm܎ߙ#ĉB䥂5o=ąpx|ےƊjMV-)S[Z@4nP1Ss3VYNׄ@pN^~ѻ z|!G+aT>pUfksх0xg dK&s*`ug)㏧qsJ_q=5%תKFW)¹\ܲ[p;DUH3aRUPK~5pqmcm/.d*–>rp% ApsaR(tM&p;ڜ!kmÌ aPs9y?p;Zk`xMo}5eWhz1Ap]1emc ~0q2IDAT׀f eZU6m܎Y +)K_󗀲kc~p;P\2.v[Һ4MNs[y \3{MBZuo;c;5?z'] c;c;c;c;c;c;M :41IENDB`luckybackup-0.5.0/manual/data/trayWithBubble.png0000666000175000017500000010710611530436374021237 0ustar luckybluckybPNG  IHDR/LQ pHYs+ IDATxw|?>Z肢@PbAi+^^.\^^KhQ@ M:'!BKON/ǐuݳgwI}=μ癲𪫮BE#0v;`kNk ݻu!Uy^֑[GMb!u )0)I=k앆#Ut 2pD8@3228r$P "c7 |KFC2ľ߶zV +wwbxr*HID*ETOVzy^އPQc-'qď-˕e܇,8bJjZrr2B!D@H0)9y``5 1,#.Wc1i_Mu%?u1y@Gw)O|MPrUn0 t`;b\Z r|yB(x޴4A0jjj" hcXP lljY-v% 8r{X.{>6w~]49k@RdٓqߒPZ,Q mX(XU eYW˃w24D'Ͱ߹JSreoVvA2~? AK{@kr]'7ofghcpF//. zEk(WOC˕q, P(raCSj͟WzB(##}]ӬVkMmݛM3)bgJjۻ˥yA4îu]x\L@H&d".^w53H6sM^e#PSJS!@χCmx_VgrGqIYNfwNhlW6 O(@js8Ne~`ʔ)?j!$=='>|xFFڽ{~ZVVbXFFzH 7w]9iŘt8/<}>?(--iӼ^o8"n'%',k64ò H' pӝvz=rH6N?*9Քm!ܞ @B%%xrpS<+ȩ%9 ~O&~}m7oTR@QEQ<4-N > 4l@@ F(e Lo?޹~糧 'I O!Դxy~y?Pm7ԩ=裏V\)6#Y_/C233RSSW\YQQѾ} &9,.Qf̘dff~+VСVx?>ߴZWGX8#CHdgg3,[W[ h׮Ip$IdBBĒ#pw6zSXzhTߛ0|Uwf5mz2Ga9G!ue`zOe3*~}+b2>󙙙<ڵkE-[;P|׮]Cp~Grgy4UykN41"Z`0 [y9DW܀466U<2,3@Rb:t A!^#l#{QSu M^_ _.y'ye Ի{Jq#eo}SP\r]ᲯQq @ @Ll>߸RDM1z,^7Nx׽ g ̩ir5+*sBuS]Ih#Hb2:fswk-C W`LP>3O?mC&)O |A^]] !p$Xa^{9u>㰾}XJDLW[MJNp\!t"B 9JLgE">y%?|^^r\.qmݖ !ڣ(Pp$r9NZOMq=@AY^mV >m۶y!@A'B;3W f3q}'{wNtZw?D^?{D%Ls Y:J))f3C0TE!q;wY0{4[$deg: dRS)ڭk眜P(T|༟J~]֞$ܯnJ@7@AIЃN"l #d@#t!${"Ɲjr/%Vм%(Cu_WSSo-_{*(F@ZE.#,.1N'HbY董/ֵkrR vjmhh8t`jjÙ!{Pũ8`i5%M}5! l>ʱA=v˞5,6Lvp:^!p:S.a2!Jg.5jugsGoWYs.AK'X-{zzf3m23۶mtfu?LS 9zQnwpy!Uz@!B<fl%{*9) oH(;;wIKKiW_ݻwh޽{/\l6s=՚{EȋJFǭ #q. !r\]}6[, 0>yBhr` }MC8#I[˖=-{1~pw[5rUU'in۶ٞ4SA M %ܛnիVbCHm,j! kBBeKm޾KɞB !X^|EXo߾|+xk/o裏BPAAA)(q(2e$ Ɨ(@ l:\vҢ&!TK$ a2Q>}6%%j9$A $l:$nѳ}j{ck:ԻwB{PU|2R7*Y`"gaߟŲoq6jԘL'RS46 _EY.]ӟR^}ĉ|'O|5EEwEdSb[cc];sk׮billj٦MfA7[(>xoi!Ǔ{@yb I&\a-יkzVl ڷMO^CBQYbŶmiiiYzy3gKeees@f("y~̙f*++>}:?+ƴ*oA @MOуCizIIMI"Tnw9脁Aa7չm_0|Γߚ߇GxŅ]05 %$*< )mS6b a.]"!B>,^o_7o$fzvFME$8cxS ͉[~=|V\eur֬Y3gܼyc=qI(g+>k.KK0v_ctc䬸!An I˲>MbDu) !2- ! T>=%o 8^Ud\umS>~p9[ۏ_ⴜ9[@ M1,8~Θ(7{Ж+E-m3]sy\^}łJN#WXC)))AyҊijjP8!!G|,$yn#H! Ex^C>$[91yϲF $.vÁ?a6;s̙;w1c0X(\^GNf!D}IA$A^Z" 9޽z3,!jB} DXJy 4"caY;x9gJN[̿.} !>Kx}m^a],)/e- X/e:tz9sfQڷKE$+_۷WlR$ϋ 9{mqfKov]J!ݜ`8k?9W~@),9s.yGY(%9777990`]%B R^, 314]3 o}y@N"}X H3e6;t)idvticQ⟧**Vz kXyyp 5C+wl6a ]{ݵyyyYڵ8BHӧ_ \ӹv&c 7V"C)RD2""(z/ñ%1LZ^>]:t^wޭEHh׮]۷ed.њ\ gԤcOW /Zi Y"a8̺<~aP쪍:%8偐 @R)&a8;ZQ{6lJLf9$2#!ܺƃ룞7.; caN>J a.˲Ө:T8-}syhNĢVZ$cOWfZǾ!ͫ V/=\2EN/"<wNG1ozR%0 w'&3YA^H?.NSXMF-!IRsBM6l:xg:ur|^w "+q)C!#R९AHHLh@iضEl5OuXb\>Β>Iym5>t&6/!W]:YLm٪S<:9Jv[K"E$Ia=zA 'a$(}ѨJ #QZa G/q\Z-wʼnbC]_ۥNq4db6l,w S֘ev?!u)rW.(_Ӓ^'h )&b$&'H;u)O]ZTX/^S;ŋ&W(|P$+kF\"A$(Wg Iڛn$y-*zohoB!kH-ҢUZ,`ZtR]]-SQQ1zh|L>r!CKPI1}*^WH|HWc@5Z4;4֋o!rPXEQԵkד'O"V^zZrB7V+>^,3uu>$-{:l 97*A$(ux_cѣ`퉑^%8(JIMֵ#&NDywɩVluxK:'HBG;T@k SM+^Cf QcQbU|@[1D 6\DvPs'OF](l6AzbXӹsr)ޫ.~sbք *P!a:xYmvodM0 -@5nn2ޮ##˛b\xP5+8uXYӒvks\rT׏[H(ҥرck׮=uדDg I&$dɒ@ x7hР^z-[,)) DxR//\qQx6%;*^ .pm3U! Jݜ6g>͟pGׯZJr̬hyyyݻw/,,Ԏ,ޣGBl01c bX0?cɶ`zz1 eD"A)_I+@ ŝ0;8vuUTTH~񤧧O8qҥ~߿^^B+cXK"X g\{ĨJ^z#j 7iWsrrFpP5 IDATͲ,v8?}=j]dɓ0|>?p@Ёot:tjj)Oq8f S:|LhOv]6ix 0O46yiD:b:u `X<Orr2˲EM<_~%K`B[ `͛GIŋs /ddd466&&&]vӦM3fddd<~^yf7DAeYf3fMJy[+D<>;;j&;P@#6%!wGn޽{?!Ir̙k׮5jT~~ovرc4-WØ۶m7tӆ 6o|5xޟ~ ;hׯ3f̨Q:4q)S|BիWO<933eم os\ӦMÁG߷o߱cǦN:vXٻwիWq7^qF qܘ1cn >3l᯿jƍ??/rر&M?!CQ+Yhu H f(#$IaB7eʔo۶m4MgZ}>^` Bl6cdxH@1dyY63D+9@_zz1cX-))я=:ydq18.\0{^e~?0& [VV&yfdd3F(;yӭ[#GܹS ʨ/6S|W;l\*rGBw.V.l F~V EQEEE3fβ-[$&&uY*NQBmܙL&!Adt D "l3  1bS~W˲rwٳg7oތ<BA4B( bS&A1Ĺ&JxB8Pn PUUUSS#x`%aq!{ޮ]5Gofop]bt]:rXJLKb!S H=uzҕXT\(`O(៝:utH0KOي1 ò,\8awc A&  B60y Xzu~&NX\\\RR2dȐ nիWsw뮻sO}}ħ)o)))i׮ݠA۷or$Z-9ے@l^+X xw+\Icǎegg8pϞ=}=q ̲>[YYo7nر@CQbG]IK 1h7VnKӅaobI]Z 0`;|p۶m'MtR%`rHPlB&k8JA6 k1ٜb'IBlKh J9gxbPH&q$&K=#… vw UUUr@~{s| qEEE=fD8B &_v vL_hx֭&iʔ)x W`=BxaD4Y,eAPffٳgt oߞj}洒]nmO1n&`y`ÒF$Ւ$Ŗv^__/VkhhjVB  X,xHKKcx8^E&t8vN"E ;~RTe67K\Sȭ_ B23fR(=Xr&$J֤]f- *Nu_ L&L <כg1$??–hO lD /Jݧ1O iSBcE$I"imp~4߯0E䅈<|p~~֭[].>JcQ$+a%\}.4EXH{+'VM J] \u["rjT !RSS c<^>DÇ ' v!/[/K,O* yJ]3y*FW=PB|]J;K$^\鯠%PQ[(d t x9ƺq\}}={Ο?}`+ I:}tee%,rV i@bSWEBk$u$R(PxP#rKTHIGMK͊ E G:/[>$ rZBTaWԛʴ.NNQ%RUeTQ ]P=D%)m,9TcAъ-qB򍥧K?F1Pݣv1*'])hwQ򦱉f;HX[2.*1zQ N T[PyŅs${yU%D;C)/_-O=ѴTaxI:M]ߡQ<ג\xG[he`K`µ&ֿ)rҁe$q! BXjD=)ҽI5IJԛkDT@-j{vJI PzKR[PxRqn-(-M0c# E4jOژhBzW't+U&ŀ-C2W d-EcmђGgń[Š8z)/vA_(vkFR‘f2s$EƱqh\e\-j8sH$wA}y҂xEIFq+1vY 4VSIX\-$ꞑ'~T3@hBX5j(Uf(Z|!q8=񗄴@&5z;C;U@ZH2q3I` "Zr/uhi.Uviq$A>N|! JLLԾw@;r,Q;sY1Ŏ){MF_ާQk_|]j|l6H0LSSt:Q3xU4GhfW/j+ f K $l6l6.lf$t:vሄuQ,EQQ`kR[zy}).jbFty]qQQ%mh7nb_3~%f<χB`0z%;+Wf3ri!g˕ihsf6I*4M gcܹsyyѣ4z46 //wqBűſk '1x=1:@w)v uUNtZ$Z9$OVjy@a$I0tɓCFn!a@Z-*D'z${ ٞ81յc^Q GKgZRT՘1ʎhUM2ZT Bi &MDҥKl^o߾}Ν;|$1ؿR^88srPB 6SU}B 阷:~񭵧z*==}*i \Oϙ3Gt0 _reEE: rwb]kz]`-iEґ7rKuQ[]E帨)*j~by:zUR,A 'NĬ^o~uuu>]Ù85y>Y6up,ǻgIV6|D)'})3;b'8P+,[PP[oE*>p]+vz.{Cҥkc:(yQsTt=PaX Vuœ'OX!8}$#jʔ'h墋m.f8ᓝa׶MqZ8M^L>bf8{g222]>/o͵l .p7hР_~eʔ)N7oIsٳgܿ?B(---;;ĉ'v֍ M6mذK`Ϸ~;K.=?ćWTT,Z;;j&;P@#6%NdA{y>|JKK'Lp7bqk֬9v b6ufӻwoow{n: g_RR2q1c(C $yСGN>}„ *#SES15 ;_zyACi0j~CRV1:z.!X,7e؁mۖ(ې%&wV(Q1Ct80} Y4Lyp( h,b)cW>}/^^/˲ݻwq_{>|5\ӫWʚs! :ut֭ctfeeL&)˭!֭ Ç͕̀%F҉;g4F4H az2\<^m҇Rծ#E5l6͘1j<ĉ-[$%%j"K~XAI,1f3p} Dv"h CN7Aba Q<әP($lrnhhk뭪:wСC,Y"X~]߿s"Na___=*|A4>A BhH-`k%QՌyO ú[]ZZDRzՊi )OCDB"#oSSzzl pv3HwtHM)vva $%%u'WVVӧd*((>|8 !:u*gϞ8 󩩩[n8"~yZP__dɒ{ ظr)S\{ݷo߄ ~@ {z֭6l;_{&@zzzMMͪUVXQPPvGyDeY\Lw}7EQ555?':-u+Ja5f@Sen- [n &)!! m۶a裏EnwKE0 IDAT8޽{iii>by Pɓ=*w8[,=n1Qck]~|9^%&aDc.ލR,Uw y~2eJFFf=e2$^R15}Θ8W [ӓ=o{F[Hd3YΞzass&q'װx^׋O8!=z0yѣG۷ 9*,STY>|U7%$XZ2Ø&3[pY\$ZxV= Z.n۶m !!EQx 7##nϜN'~|~VQw(:Ìn2 \g7D+jwv:1#Xk{V,Ydƍuuue1~NPrؠLkj{K^T 㛐s}JEA=\7J$(vΝE;~-[0!ܥ4!Q #A2 t_ؓIo0U9*KS ( byn]\:(-"샑K\jiԢ8+OPo',ue޽!.,pѢE6 Ϟ eDbsyӢXy5Tu@Xo޴KT2[ ꏒvw1̃ k1JUrKZT5NE, @t| S{@TVї/B(a&vqR,/k<[n-@WqUQoiሖ`Xm퀺0Ty?H 1A- g6.IΣ.; KQ QaR" 9rdĈ[nu\Ah<kO˹W*6\ G-c[ڋ-ƽ㉽2exrY6ūc/-%%eذa[nkF9/l+++Æ KMMF@*H.(["%W`hJS1H*j8bɯci^>ē\H(y`ԿqGK/܍ a,c G=n۶R\\X,XsӧOh"A.VFke%jѮZK 5X]_sѕ˶!j>a_Aj.jh-w;\,fzu,l{"HR-X'KcHؗI쨒^i ̖FkT #hJ=vDWܖcj/>i,,v.DAQǚ 'pt7^LךHrKWH(lчf)uzNszL#J,g)I 6i4E\!Ͳ[*@Qu [b#-緶h1>l,ƨ.UֲbKٔKΝr//F1]XWq͆3 hƒ3"Q 1pN;Y*,@c">Ok/o;o1o޼nAy?Fv!?P1]vEܵk|:ިQt7o,)[lGo*BGJE$ O3r c\G*-(HfGQI*iI+Z= jN@4qdF‰Μ9v9r!C" 3և#Y42, 0 99ߞ?~QQkF{^z믿~'V_Z`ꫯi!v=gΜ7x㣏>j׮y뭷{aѢEZbbaX;v̟??'' ;weGQ#ك[۵k_ϟ?oi߾=yl6? ?}݇}O?K.X__`~۾}{!gϞ=-A͝;nNDze::u¶8pwYlSO=5c _vڵCEEEo6!4x ,Xয়~9s&B<ꫯup7٧O??D..w!tXbҥӧOޠABzWϟ3H*Ç_wy/ʕ+>åK._NJJjӦW_}駟۷oGyWZ'}wu]3fy~7|3DsxW^yѣ'N;+oܹ~xO> ^ˣ>/~ᇻ{ذaaÆgy櫯 hĉ/ѣG'Lp4=w9s=c?a„z*77PWyꩧɓ'cFy;ڀ%⺤19yQc)2ĩDTF+IKu3(/1oizŊ999ܾ^{+**:{0 ֱ۸q#BhoDԠA-ZC.\8d~qȰ_,g;w"ۯ_?r!a@2??믿izBKJJ$T )oǭ]7O}KJJVX:yd8ҥ˭޺rJ!k"֮]ۿ!;#G/i^lYΝvuUWY1cO0 q89N: :TQg߾}CE 6oFsmڴILLğmĂΝ;L'Myf|jWѣwޭi&VRRO?͚5w:Ig0)) Oݻˆ#S~ŋ_xsݺuzkUUUCC3x`M7ݴg1Vz\.`͚5=Pee%PoIIի_z%l0ڵkozw=rHP^^^RRB7lЩS'̘µkvmHy'cǎiӦ : oyϞ=A?~_WMMA+~W:ǎk.(rvo.Ҕ)S6nܸsqA t:%Ǐv1o޼Ǐذcǎ ?Ʌ۔`C|ia0-*28.Qb/{[n$ɲzKn 7|37f̘ӧs'P ^{mΜ9z+IobBgϞ3gΟg_bc˖-J,g}vy7x^{衇h5kXo]`ѣ]QQ5GEBY^~b|m9xXf ~Orpr믿ӫ;Ǐ>}:++TTTZ ʚ:W_}ǏODiioFc!y p8b ޕWQd'.K6vad@d(K <FdQYM μ7!v$ QtR]}/_ԩSz嗽^oao 됐 >~x<iӦ͘1c„ 6 gӦM_~%\8~>|8>>_o>E8d;I DoMJ& yN> hǽf}pQTT۷Aj 6 88qBgA)L].ڵk^^^R%Ӹ<ClR IāՓfwER d:֣$u8oߎ[UE@>C+eLt@"e&A: Ύ$*ʒY#V=H[ڈ(pIt06;R 8wy87JtUQj)>sJl&1z"f-~MqK<.ke@v$3d$2*uI%#`Ăڲ(X' Ic8b͜u-B'k:!NU+ՑtFԗ mC&'V;^ hն%)Q 3^!gT"ɤ!Ѽ|!r;b!t5gDIdeUy)!C58Vr GVը4(?e2b!glepDWK'b;k+5iI].*u`D+ EodWܜՈs"$z}T*^@' |(1NK#VMt8INWL=5Gf谘$[B'aG:"LBQqJYSMOQ6\_X0S`"AJ4R8l6j\cdgơHzC$5oea9:@8GS4`̇41GFZNLᐊ %[`:z0ɞI^ΌRG5mfLR3 Be"UP0jʌC)88NSJyyˋ@i+KQd=KSf_H)A4҃K'd>FV0m@ EōX ^$ 0˳~pWVVp8pz |/ &[Xl#+dd\`95$Z}1_YfBh* ?g-^lb֐KQZR9"8g'JxN:YYYTWMpҬ:[NF5ߒvL>\s\XOPa5p촕w F QPgf兆R{i5Ug$TIjc38N 3L6b|kyP&АՊ^5=˦CC#)zK朔3YzJE 2%6T茝w{,ZPd[ZZt: P lXop2)(մRFx߱SC,F\i0iXE49ք(&{^Dy$ݻ?_<}W"<.kqj$eD֤г`l?juπTx<&z4((%nZѫSkډ-にa뮽j MW\l~L- oo$E4mD2z<n6KKKCw6m :ZGf}A6fKq1qE`9]gyoEV^mDg Y-&eK5g!1J i2Gsw^l$66v11o߾AAAf:s6  Occc  G( `K5Zx6G%%KS: >!CDx_till,y oΝ;W&#l6[LL͛7=)q&nݺ;wD^8>>>11 CA{[fwNaN^yqckjS>"Ni-Zd6{9qıc*LMwq<ϟ>}$= RPP`+W//Bٳ'~S*)#q0RVVe珤, pK59Vʅ EG۷|f͚֭cƌR6mfϞ=x`@FFF={vd^y'xrJպh"7iҤaÆgϞVXJ=jԨ={BU?y&''iONN:u* 66v޼y݋yd29wN̙3K.}eⲳ###lٲk.\O$D.]q\DDo#fq̙EDǓo}zfyݺuߴi믿OA=].۶mkXꫭ[իW t^n6-,, z֢` [h? 6UVedd]x1zɓ(ɃI&:?gϞÇ LNN2dȹspO?;w\BO>YfƍC{ٽ{>+ִiS**ȑ#;v{]v2dʕ+7oh+~ F[d 4L۷q=?%$$8:8˗/oժ,Nzeee:uy}o%%%d{^l|AӦM[h7{6yx +VB!+W\ҩS'ش#G4nܘh䉤X/77j2g322>pY Hd-Op<Rq^cl?aw[|ÒM.]VXQVVVXXv{1رc-[`mܸn⩩ jwpZb hy}UV<֭[ܹs (//?{,jl믿~G%c:tлw+W=z:x`F+..fvׯGFF-Kll,b^JJ/ I._|Сiy"((^wYni⶘fsյ}P`2ETx@+,1zDxG[pUyVVVN"##~駫W۷q+WD8г4idѢEm۶~O޺u wC4H+kW>"(~k׾3?Nz.pC{lPղ2*n.Qp,++K4Qk٨4 U>I*--MHH?4iUTT$u^/((E/|0hy_[wrM\%n˳Y}muW l"l6?v4oޜCQm ?Tzz|U:uVsaaa ND*I~ԩsεlƍ>v;m4x |nԫW*T.wNfLzrkU?c\hp{/f7_8S/\ZPKcǎ0`Cϟc]#<`C\dVs;-ajOILْx9jnH<0PVV&'JJfjQ,Τ|((l6۶mۜN'ܿl6W6uDy]+Fʷ6s/*+l:s&kqq闥dbRˇXSt__u3Uzʃ`VS$>d0dGmHW"C}|>:M\IUŕ򕯽gEjk_Vl%5O從*RI"R{Ha^6B!Ri"pΈK^*cEZA\eg3jk'r*JCj1bʛz-3w=Cf4z.Xu kyPԩSO>C^o@-HHQŠڡ## gKAnݺ9rھ~:q]vo-bK_YtrFI.Y@yqk'%L? BF&*'~KK]\t +u^myu8p=z֭[dSx+2~eyɻs=9c"eH1' *!;=eʎĤW4LRz*"gw!Qm_PRw:ۓڲddzRfY=je6GJ~ʺ֣|JA=iljRѯ;m[Lڞ2h; L=5(Ϫ<2z2qlP"s2A5! &MK 8[K¬Nf{jS3tp4lFWPm @@"`21#I%ifaD)[e.߱ғ&iU 2&ksDw6b'҉e5{(c0+(,;JMvp@\u|XXرcǞ{9<)aL7 hPmN=S?8C*uh+)WyHM8, "hM?e<&mSO=?vP>}4壗;DY>}HSH4k!ɨ!"h.^'e)4PҀP* Ń_h9xӧl}؍$ UV]~/""b߾}}`ȑ=ݳgφ xBQ Ν;jzG#Σ` ,+8wLl+mܸqtt' z]̫:jԨK Fz饗7xc#Glذ! ZhQNNNQQiԩ7o1bĆ GWW/:dȐӧCeQF=S[n}x355uʔ)ׯ2e sVV?e˖3g{nRR͛g͚u.ۻw桉L3uSPFD^VCsœeSf[b#L@׷o_áX?O_B[񩩩ǥCLI3`HDD|IH@ՉIJ![SIiԖL8T~:::zذag>}ۇr8[xqNNNzzzjjj޽!äI|e˖xȑ#C]nɀc6ׯ]P%=&lE. N?].ĉ[2ơ!Cڦ&E:qHqm"=XjMA6UlC-%[A5*_ N:LN:%$$$$$,]T0%bo~ɒ%hذ!|(`.\w7lذcǎ~0@?nݺM<㸣Gs7hРW[[n^z_yeff_ /^oOYPP?hz;S9}WQ$֬B*d]/U ]zf .&P[gzĥ85 ҩ8#gݹs'w9f̘ƍP!!={Zjݻx͛7cbbSRR$q/gϞ$͛9s/xw̙3mڴ}LK.͛7O/zw}{ӦM{l6ڵkዠ;iҤwy_lk֬sΝ5k?Y4h0Y֒SCgATSDDUIXc5k ~,;** ~|W5*yu1#ZF򘬚HSm76uhSt:\kyN=G%wzGz͵Q5Uw#F y V9.Đ;G䉾2FW ڞo_P+ŠCyO%]^\ʈoh|yKeHYɶvdkЋP(l_(nT;:d;۞_osP;Odj/k.A=I0n5JiC*I_ׯ&h3o޼[s' !H x"GǏi Ê3)) ~R o"ȝmDvV:bĊGSEE =ȯS'ڕPUivq@.O){I&{:uj\\|>BGyNٳ_>}7n=z͛:]kSLÆ 4ho6mgϞ XjլY&L^.;v,11nݺ^z pرE'O\dI fϞmn޼I9Èf̎oBzD{r IDATH$s#SJ1!6glyGO_F֭kժURR9u .9rn{ԩjĉݻwOIIAn:rHzʔ) .Ǐo(C8=z„ /^D.raw5z;l߾^طoe,ORIRH鳓WU^\>_mlkժ'EE@U RF`#IH<=<|[o9@bbbJJ ܶm[.]gn֯_xۤIvY4׉۶mǏ_j /_ٹsg) *)k׮]jj* ==X$SEhHsjAdqk5(l%.ɣMsU}Qdy9;yǍSv\:NOO]HOD2ovС[n/oR+Q񇥵X[KJ&R`fӷ,%h9 $,H~mGeHe>dU"y PzBO>O>AAAǎCoH8px.]3g\d 'I~…?8''GT|РA񂂂8܉#ݻsשS0mз S"bwҠ _H +j4R%")bO ^#ExѢEs̙7oޔ)S~itef͚2e+b֯_/IA,\PmVZv[lǭ]vٲew܁&$͟?ƌ#FV~2s(8jcFfEAJ3?JGJ01 :_X 6oܾ}ry^ ##xBqz|dۊ3KyV>}Aw4kyGF0[C`jIeydJ YhoEk2# SH~*e1َl + ƊyyC](IJ1oZ:\``ePƑ+og~.3a47U%0MKCæsWjZ|<>#85j)AUo j*uld8Lxwİ,IaZ=~IiUyZZy,e y2]v5a2?8S$E&L0.Si,0F|@S@]O_0$;ymm,b;ѓYM*dwgSO<3U *yd#(VBY!ΚjkMדjcI'`4Dx?6ɠ5|\-C#%8,3h5*olQ/.J%/I'h|ǶËR]D?Iԏ)F2vcf[]a J|b_ dP,V1Je,Ȑcb> Q jy4Twd3b#WCUgI1c*.(T˂"1o?>AU"vp$pbo_ Ƞ<"jYc2jdeЌpmd":OGVwdc` B7-s 1-*fY&DdLIƦ9^nlQ" s Gӡ$ gLG Zb)6k0 q< \)([m}XL#=3kvMRB6.> *raS,CGtEFFUYxRK14bQ 4DE2sh4TW*NϵZ36cR'OlnkלNgyy9LzM&򢢢 iOZe fusTK5ߒFPRmѳ&dr:YYY0X,nzȈ)*_%2'XezHZ_7"4F;; /iU$z|V4&˳-~<44wy{=lF̚O~ k2&[2bF|l6@~Nj&S$t|>_aanT"CzcT-io-1?`e8:NSGm~~=v@m0dl".;Њ ׫Q[j¬-T-i>3Ln|>nz{sM&lXVl6~y i\CFɣpt\OU[B2礴yz^զO<2ىtn˟="o1a9`hb>VTT|>n‹`6CĚ?@-zRڢ'[uR5ri:ƯJ JGDO0[>" 8 4*"X"c (2Be7IMU \Ɋ?y2XIq)c xa9y m >b:#%==Jsi8Js)V'&H$D X{G4}-X4WrU5e^QvfD3@|L:iYҝ$9'&#OrcC~b8Dx?k ֚`81AX^TZL)ptA:>\I7Rf?n3  *;yf9 z<\0]94'Fం#d\zAAy8XE/E\ՊrdIȲh$U2 Q*_>d 2$zej̈́E@ LVЁAU$h) (SðjA:9_bxDlJMbEwRʋ^K%1$ゟGTP1IYFBrkG좞BU0% +T5 A3EAX0p JOt~\A*Q{Qpu2*ʒ 8l't8"2Iw'NRRXd'PRD-8E˅7i<H7)YxJ`7 I)>}MJud(/r"IENDB`luckybackup-0.5.0/manual/data/ssh-askpass.png0000666000175000017500000010570111352713735020550 0ustar luckybluckybPNG  IHDR pHYsMĶZ%tEXtDescriptionWindow Class: ssh-askpassЇvtEXtTitleKsshaskpassC IDATx]wf9* &`,bK~Qc116[H/*qcvg-6؝yg;<[^Џo9s.8jE1 4M'"TT\ݒRK,y웕Ҏ-~4#$0"v-?E6YW//Hߐ4Q"}bj<ᝂREUU0Ό'.Bpkkk:H@E0HqU#X}[iW $RWdz/1 Ω4TMh%GaR9 pM ng\}Y"-.f2wvuWX'v7$<$Y@[;!}n #PU(7uY[Ny_X ˹)` + ( SNq"$a[#Q_BmIIrO4[Ax޻ q|hBdīv P/ye=LyyRn[ _neծF2)F ]ojjJLciZ{{[ *q?eRQQVVΘ8 BqWU𧬴Lu4go5nRr4EUwj áCKK2R4 h q@V7ư֕7o vlټ|Ҫ=z=xoSӎWZaƃ4rܸ**5klܸ 466^wW^yh(0xAPUUܛ* [W4h |z~A1~q䗶f]): ̝Z!nC3I3NkN!#k[!G.BiEBÔfóE/Gg eyΈxwe%h;S f}2$n-j Њ nڸaG|pYiY⦦VZ~ㆃ4jCRh7 mڴqٲ%IiI)gfjdd!Cv@(ڲe3g2jhI?43 d3wH mۺ%00pSjCڄuMrͤ[q= ÐMU&7JinÇذaWϞacY?cd NaaQv(n%:wi<޽{>?֭۶mۆsNφ몫'M4zh0psM6_h+ DrJiuu)ٳ}E:R[l 4HsY5\ӏ(ajؗ?8Cw,€"fNt%I&j* z5vs2efN*VlF# ?.Wm)_oL&cJG5M ǎfPmKJС+7OK(-Rz 5)W2Y00Sd v횪ɓ'|a|?񏏞8sYjip^iӆ_T4p(0)Z[UU=yҤ;Db&OUu?ʘ'V "[.)DQL\ppn|}y6mذዌ{JHwٳ簱UWWcǎÆ [jզ8fk+: գ[nc;|ժ}/+-3 C_tNYW]}E55흿=36?}4~]]ɤɕҦ?OU#Ց#yWϟ1}}ګw3N?/WTuӍ7@$ۯO&MKTUBx~ș?~*Ga /}EQݻwY1pŜI9˘=$ \.^{UܬaEM(TU['8p7<7o޼yYfY[wuYkV /jkj}+Y]2?꫁қn?Ϙ1cݺ/pfRg27t;S^g=p~k}ӕofii)s=gi_|߯gru~GM6m4} 7B՗^zi-`':@aAAQaaEEF~9ko+OcN#D8{+jEA:ؽ|$kQ]$xtwΘ aҴ%Qy '{O=ǧm7|ӮƝEE`c?lekK(z&ÆV̤p&(pl0f^|%^s-̡h6`c*bR`XRRru=6u*.~z_u3 cC㾰'>iX<39tڵk{XQQQ]]yX 7BTEiiiF)w{{2H4uC78/i.|ҤIoŋG>8NoټyEo&H>XӴ͛6-\ͷ~ۻƎJMy啿_y啌_yg2W>3gϞ}WE`̙|i[6mZpo.bssW^lґOOV\{eo˧N}gx0d2W>\{-,\^9L&iӦO>_c 14mӦM >_ ~0=ƟMNS@[xO}LS!/oyIr0o6ւ2}Bҝ {_keRSJ&Bv9s. F ,/d??20 j{8ϖPJB0SO=k袋XiO?=mڴv=<; Ƥ _7uf̚yQGg^B 0Y.5a)Ppʔ)?آ /^|7쟱KDU0,q'2c)7n\~~>۝p ٳbm=_ e2yDUq=L^t/b4#,,(0M0tXn/;o_|1cySM6]q ѣGee'c&`$w  [b(P(t\p4-Zdɍ7xYg\bzRJbR™DẺiL<,0/8ӤӟOݻww#bB6t*Ch9uI‘g/^<~?: yLo(N AnҪe֞z?製{늢Yf޼.2%{LuFikkz I&J(/7g 'GӸ嗿S~t 4bĈfְsm[w6.Yx֬YS>:i$1^߹s֭[w-Yx̙S}dI`9s?ۓɃG[#G|7lذsɒ3f|OCMpݻ;{Wֈ [l0`s[@QQ{=xtc96vnqȑvܲySEM>:)ѣ744l޲aŋ^>dW fyFs$'fQkߺV b򀫌׫sϘQXX?^obbڒW?iƌ^zga4LbCÒ7޽iZO wy?H&0fvf$W/!&5-aB >_gK/>')ߞ i nJ#ȑ#}(RUu͚5sn,g1YYCd1;3>}nܴao]+/?/lDb7kO:9oT{OO?=I'9h,5kݻRtgOHp晧O>cǎ9 ('ӧOߵ{7O?;r$H$^W):iRMQ;)UƧB(%2g:tHl2\,V̩oo?:I-yTRuO6a+Ru=7/ mJӟ?<)//}ZۋOcC;d*u\e0?yԊ+Wq#X$ġwoϯ,= bŊ+VHW2,yRb(BJY&ZEE"K"[lEE$"eq#҆}:TnoJ7 wģGupȹ]J%,]2JJK Ӥ|& Z:͙0 /)IIoC+`JlG@'q$ItxaBFmEd{FKkp>4qNx`__G"P( Eug9z~72HPJ?l>2tX>}(Nvܹv 8`tZY LNᰎkgj(kqd'(Ab'a_J^'T6Uph2G诂f%ԓ\a5=>y xE~Ad bٳ % ĦY4q[])-U$REc1]י.y}CCp$N[+BxXpCqO(BqZ3e\Z=VTA^h] SfK(zJwеH:~;0$ςrkoo^o'y x<x@GFO`H$pLRɤ\<9<'`vhɦv޽dɒں:]Ǝ[\\cH$kT2L%h4ƞdJgP[/ 2v|{x}N}7psnceF qW5pgP U 1~VZ>FJs ăRF=mvڼr0@ {q\>U@RFaG6L$$-2ZuUZ1seSMl㧍kS{^E ^~x5uCG3uD)eIR쮐 a+/{lR i(tJB4MiikC,VGC&%jg['T9`{yk)y;2US) י  :Gؤ:B󈧆_!qU$lEfNYK2X  h(5zQʁ÷kj&.!I>q}&!B7lx)^G*#<1+Pvpe e `?0;Kr2'-;"g#|d_wD\`WG_<ޯV%:s(3P֐ہXh5$!':B G y F>šFU<ަL=D$5:֤cB8dO\T~,c@MItJ('ϔ0FXMN4L킖l?rq A}k 0ԕ~SXSJ&guaN򮄵ЖRrR.'+ /Қ?iIBmlrZ dr_uwLJ#qݷd0B~ŃpQQ\(u!PI<[YrYxquT!.)Y(B8Hg)l[r7^cRM%kI+3]/{>sj@/YN=~P_5}7N#fvM,;C /}G|Y- qSDq^"ɺb.K'@bI9XbI/8.= Cs!G" W;Ex%}"Q&Ujt9*դUԒvͻ'F@̽ hT\<Ȁ;q%f"k~yïT}Ka$=EcQdg_|{|l! Olo%?)bʟ`8دl~OpL'a7BjwDB a8~C 4EEr! 2cP5$>?yH5I/bUdT)V 脯v>vjax |) .&Z%eEVF;yɦﴳM:I|]nCo2 0w%2Rq`Ǟ8ڱK-FmiUv")P<,pn bJA@sDt@՜8:E4aU%/7# g쎵jFJG'Rx*5] JquGݕTƘέ na 4e݌ Ћ%6",ګ{3履Bg[^8͡#0hv~ZYvIʒ-C 1[ S4TO؜[3X<Qە ˙@>( =-P2c#gvy{YBglg*G,㎝- J3)CL>oW1}y8;xJ?ITz^SWB{V?lkC<<)PpOd O @l☔( @ $DF ǭX;<+M$XtR͵қCҧW`Fe[CH&?FS%7sro^l!&!DyP&Fpg^,Z=pLЗl)LI t8gKhs#6_ DCvNY!8q ,eYu-kgC)HG˪MH֯bCc ;<۳L2|;*V.%A3I(oKC쀿c|Kmwj^/RCMʚ~r <2e.1 y+Nqb2& Dg<:z!Ӻ_Cxٞkb#q2-\YdᓬQ_u.6iFN:uK3$lO~m~5E^Hm٤LfLI ZVlV5*Vb0jw)S.a_7I&pwHT}]uEU{(J(Zrei-͚B!bt bHtsRGDzCIGgWaR 8vEAzP_"FxO r[I @`D6ߵ\YoZ ح B5!u55ǗsiT PӐ9Q;!vʀIkfnp8LYlـ̜+WD"s.y:H`R?NJpH%+ -Yg'8 fVܸ \9vxE+p*x Xr1.G7vBiv e#C3) R&URj F#;O}7ZXހXM =&!hDk#k֬閵5D< 0 C9}%Z U7MSӴv 0hP8DMJ)]lفUUe?T[[RH$"=dwdΫG XávC 'NXC!֓_4v&2D/kB؞t J`KJhReg=)ZX9/S\ M~6QDZ0M;1Xhh挾#j*#Å wGrn `#txms%[[u²7^*)aE4-ŃfWZd4/9MPt^%V#On3Q?@{/T3d{"'wȐ!hF)]r(Ijj,m^[u@=O2&M`go9stmCU% r4G{AG!@|r05tkϑ ˣw7\ڭOgQwNQ֣FK-Zo :Dumx$|۞=Ԕ#58愽C<眂yX8ж? O!K5+Uu i PJ1jK^MkX /a`Hx+ "XUH g^XB hPH~B)Ga'vdauD9=5v@KZ:MAM<`V*ִ{r`ʂx؞m936Y 12{vpsObj A4<56 OA{|acA1|ina(z |T@ii)o0P(k."Vp.>%e3BU![=Dj(@wcV ӝ3"+uR ~g?痰1P%<fXiA`*8hbľ$gO]K]zFn>~ ܔR4U5ijb1HEQjkk !RLd07oLM8 A-$ 8.思">&H?֏F=Jz@W ^݋: N("ր:YrV sាݡd|-?0W_+"hHbl?-Ƥ/dډeDlkعg^ESJyͶm@6X[n]H$X𗗰%"tWs#5]O܍-Jx$n]]M}jG{LgӤ(OzCq6IHY4'~2f&,f%,Vٲ'L1Ae +7i{8R&7rk?V tTKKK(2tca)J^1"vH ^BҪ $DN8z$k5t;(99](%α{A 6nuq7X],_+ᾂ9i-ר hS]:u#qQd FF]H ,:8qZEq7{']SGjR`ԨQ')yEEE,cCR[砶ć^]]GYTT;%ߪ.][@(wJCw⎂%jJH.zd1<1S~ @' nF a X IDAT^^-h8wW4\i;4i_+V(»_=yFLR0RT2N$Z[Z#P,?p4׬Q[Mjv<w?CbK[nܹZ:u=ed<})Fvp;HprzE /eCٯ~;lv ZgñLqSD@Z/XII)moobݍ)GVL WY]96!.K6눿e3g-0`4jKܗa/+o3l()NكCqrW#bxoxk ~g<~󝧯DzgX(VUUu!x"z۶mc[1"J557QJVU㺮IRWWKΐ7 !UUU|A2~РJKK1f ,K$6]qq FѯF )UUO=+߳6P*ww`'_f֊9g2bNgP0L&s)466&ɞ={VDMȎ;rrrXMX[Qڭ-C 7C .,͓y&~ F{.7zֺuBٗWqO > 7 & a Q8jEQ juuܹs[[Z***P+!OIUh!eo_G,g9]}# _[%iafιp8L)ePJC(T٢(#Gھc{ͶNi4mmk !; 3$,֞3gNss#JJJu+Ut}K[{MzƔ.AyNBUr'zF~x,}tvtx?HHfA3~p:T*h=ǰ;K14MUݻwQVV֖ΐF{=+h 5S}.`R'M4ֲ"nmmaw&LB!6M3@^^{1|X ׬Y3w]vBi6|ܕ,gw<.좯IJi&r3Bi͡P%3ffJcF8u=774X,VQQQ_0bĈ<Ɠ>OpY8nܸݾw#"7ж[%v7QJu]ooo/)-ݾ};DUH&999+֖d𘪪tZUU*N1aÆ)t&Cw}~]vuQ}/JؗBȞ={X^%ҒH$2,M쇅UU4-;J2>D"Ji@d(ի~uu߅]E]N74ɴ糏eكI4wFYR;$ MFyUUST4eOX,P(iL!lUUWZ;l0aBjwQu:aT*HϮ!$[nƍͽz:蠃޽{ ST$u%E BR(b1\nnn}}ip8bŊ9slv 'tvuQ}ϩsM)L[[[^~~2䅯ƍYhҲsΡC:0漼L&ÂkpA9{s=n]oGt$YbŻᄏu떓O: :*a[,=p۷tVmmmw&0hD")B)e6'7D-[nܰ ;JmIEQifliiٴiS,4h`nnP__]]}ap8dbd22$ !,Iϛ7/֝6..7g] HӦa[]vE"٣GnniMkڻ7Ԥiv2g2w4e;߇ Bt&ɹs箫>3KKKuօ]E]E wr뺑LҚp8''W^=z`$u=L]H$^sg'If S{=D\cf[4;3$cƌK~B1sΏTӴz9 ;<.ʞB$p+L%7(D%ݻ{nN$,>% ;,n(ʮ]Be+*UL2eQ 6>=KdO9FJu۶ghm[5-??A&Lxꩧc=/R|Ơb_Q;p8 1D&ϕm[6 3i}HX,ol2g@EQ,YjЇ?嗷_t7Juuե^?Ey橏Nݸqw܉hgegϞE/Zg_{1Ȁ{C=4#C^ guї!B'ǭBH$n۶d?͞3aO2!?mmmv*/+~vuw~GoOO?D2<#fϞpѢٳgvoxMӮYfI&=S| {=cƌٻw-r|Cݻ`„ ]E_atĦM+++[,fް$0QP(P5Md_b7$Y }&v8^`AKKK~~^8aڼyiÆ ?sqʂӧ+?[[[٦gaa!r'W^y_~x4ǎwM7ڷo߇|0!C~O?ۢnзou '?y:>%K{Ï :ճ'p '[@Q M&LhƼ?Lp|źl9#L&3cw~w-зoN9gòs&;G>ܹsZ[[-Z, qct衇Kf)[zx%{ܱ&LF1Y}͟8LcR$`3>O\]mC?xbUU=؛otuUUb99hVXX 4e2  Y!>ُ^:'''O[na…de˗/sg.Zo4׿… ̙3/b^_K&G}4Gmͯx޼yk׬9kVAA'|gy&G^x ;\j5;Z믅{lALNwl6mڋ?"ȰatՇ2yÆ~UkטYYY7y9Ϛ_z|׿>HR̙Îu]gYKjv׬Xu_L]?y'keCv. r=g/$޽{/Fvoݽs^n;͛TѫYg%y2򛯀&pWj}u]sϳï#󗙸.{we tEFyyQ"eOS`X,Feh4ʞc4>d47o^2:dH"_|.\H$~_ϙ3g_>hڼyn0I&]x+g{ o/ .pƍ/‚ Ҳ_xn #*+:jQG]u?])oX1~ۻl3 cmw;رc0QJO? [l93;>l̘1Gw}w^^ҥKgΚTb^'Z`sYҥK+.){9%1^x>LQ/Mq^?>묳_o%Oq|P1{ӧz'p/RpGtʘy^zr{{/o@s{v.((D"چag7Ir,f~b+WܱcGHU O~%nI&|s-BGy!Cvፍ<`QFUVV⶷zao|hoo/+'K fppWO4yܸqM4~K.]'t2;}6nܸi܏`ɜV^r`G˖-9X֬^믿މ'o :{ߟHԭ[7X'3fXCmz '&D<~'r-@omzr䔽L!vS԰anV\qm}bK/6my2 0oȐpWϞv+|1}8C<#FAaK]gIk6OL.,(h.,pI&sϞ=tZuD"OG^[[|={˒-s܌8qb`wyg":ENY`3O99k\pQFQG@mm-{=L&ۓg.--{|O=4sȟgyf5pʏ~SN;wn"` vybT5k(˗-ѣ#,[RfUU+Gdׯ_Sm`Fnxۭ|iAu䑸Koٲ&Kf9ĨQn`ȑy¸ }5u nvHHD8(Vڪ*Zkm vh먣jZWm}@騲7leCvFB F&{ƽܓSDm-SSΗhz1(#G|XLex\^NeTW\\bV>#ˏ rѣGoD9bҥdgg$ԭƪ猎' Z;h9˺wPEvZYA?n_cZKԫNKo|iTӋ̙35/_qu5U4@sOҗ SBUzZjZZZuuD"wΨ_B@ /^DUfffFFܮ/H ׭[u„W`UUU2,%%%$ZL| bw+O?J>Z˗.YYY?yׯOKK婩\~~~0aDXPP\j;_~%޽ߚճo?pa2$${fff!L&E?~|ԩMZտ8}4AC^C8q8zZ:u*,Y̙[E"H$꯱.^@m\~=?N{Utig%t֭Ȑ^*hLt)S [[ ǚΗJ56fX%%?A7@sO5ީuO\&SrMMM?<23KKK^[[klllmmMH$Jg,PNX,EqFAAR,++c1}zPn뱟mڤIǎV}hbcoܼj*-xwTnٲeڵbAs߷S(3Cu)C].sU=x{{;|V.h"K/^ ]innN=8q¹=:aaa&j{T*uwA733sus4iRfVfرZ IDAT+T“Ъ]|\||\0cƌĄ/J}y{Utigܿ#WXXҘ&U9pK/~i5/-4 zeTzEMio/vٳΝ;WTTԈ#JJk  dzׇ߿<Ɔ1BqbBq]Z P60:u9s&B## &ZZ}+غmşX,.;p͛75/g̙,&IrMְ6O>LbW>>"h%%M+ yZ޽;uuK%$8dΝFYYY2 628cOصkW``DHΙcEQf?]KQDYֱ*Ef{px<ޤI-+J]Zfe.|ip8cc&zuߣ*_>q&&=w1 xcj^x:"$I[J]fDUUU?~qEe%$ t6zSUP2,//bڙx<&م$@xxUf͚xgϾxwƨQPTT{5kָܜZӣPYYZSSG{S!r 9\G0iҤ.iٞ{۷oݳw[sqY ^4gϞR4:&~Q].ԕ:4Vb^T[[SSSSWWW_/J2L"PCl:r9\OP_(UuÆoٺ [B+WϜ OMMx}y}QGا^6*zܷ? u uj 311D"d2BAڦh flMkn$/@[Nͷtm3f ]lٲȑ#iiib: 0>xa6j#Ҥ 8ԼB ]%T|nHVv!= | U?w?9BH ӯP=Agt 2|ui 20By $B`F!! n20B`F!kyBB`F!h'JB#n20B`F!! E xU!kW! n20w208F!! n20x20ֳ6*NIl_}/wK>ӻ}AH$%EB*IMC}-TaʜQnS]t:׻cֳ-İ SE)q;wiĤ]t܅N'%%O0J25c <-\-F{mǮ6eddrqU4B`0Au/%52dȐ!C!Ԁ*D O:-2t11kLo@cB{!I#.˳JD"QbRbppHtttB!i@>ik={fqpDB^T0UfK~~\*a’d2Y=ϟ?x jH$ڳg+W>{O>wtT8zRxٳrrs{TF/\`X Ɏ=YPXNNƏ}g; ÇSMIEk<\!nsܕ[n777*% 0EGE:yr1rСCԦXl % =#JRLJN U8zXbb@`z˗.]tiժPcc[n=vT99۷o>|hoo߾訨{AN(pP :dN8s,͡aM &*dy$$S >ڑ#GSR{fZ-䓠NJ DR=|1.368x?˗8dRQܻwoW49&:҅QIl舛xzznܸa?P( 0tбcr*㸸ؽ~ӧhI~̌ H`aa1zssHϤ)<<Jr7 74;99@\lz11MK 11Q9;BuƁ$uќY"b1֭SϼtoE"Q}}Ltt@S:Wp MS'KUرc`/]("хȍ?nqchilܸ!=-M.aCێIBhWl퐆r/z:|p׮]vztW?Jnnf`ffJz2 ӧMOJJoKпiӴ4{֬EE̛G4ڰa! y/ᰍ'LԷر?_ t[[A_tin[ &&Dm떅 ?vsscXl6OnٲdjiP(ܵs/'O^r~B!H ' k[8&Ο?~:'7G,X[Y|snz5*`̚wgVVVl駸88_Jig [nrRp&Ho+W=dٽ{:ma5K1)\.̙;777ߨǎG#ΟgX ɎPXXcǎ>mjly͛1 %k͠n#t;z7OVP:|8>>~׮]<Oz1 vC@,ǟ6oz'*4&&z ]*A;MuҥKURRS-[_=<<k._Lm7hJgXzJIN@MM͝;w N^mm-T*}:qRtU ͽvO7_nӪ>yzz ]z:ΠL ٦U;vރUO[vs^߾ݹ{?Tq#_xqfZPO9st畩r=\|yݶvzh\~pTlL,,]4+/ٽH- T*JerJ2ddd@_aIơ+/DF^\;c>´СS_j?ES:bp_ pXj/g0CC+,_ɉf͞MR޽ye,[w^L&O!˖@l\L* 8pli ~XG&iee ))&3SS~czW?*p?$&$@Ffx2GD^ѣFs\.;fϗ}ZzJq+}PB/!*8Sp\><՟RLLL[L=Y e JJJT׀HS] XXXDBex\0rUh\|\\|ܾ7w7Mз__: G퉉 EK_XPÇWohiIIIB/!qmvlLKVR*_}Mffz]r͗kZ<eJJ9lvPٱs;KOkyI!C8qbuӧO,*.^~txn/**< ?xPRRjddvvE#NІk],+pTò?o߾q=P5wMuF*II>㤄DJ5PW__?x;kI'$It噕}R9x`q윬=MmIgZYYΚ5*TQQ_~%>|X׮_v]=tg?Jnnn`fjꚗ O&`iqII߮zi6u̜n䅈bU|}h=ńsGBgl0x MOF[K,ݺu%`.ݻOy= Q&eŊM|m1ݹ}3*T˗a &h@_ t[[ٳfZ)&&ݺu<  Tobm/puscXl6mڼYRPs_G L4ߵ CGH‚O)mANNݜhνEEN/= gz;89a $sssQf05u)IIxWn0p NUUUgϜݵIOOKK0^Ez a'ckkKhׯ_מYYYX[s8[ĭ N r9n=#IR,Չb99p88OjU9n~r9ڒ 0d#tPpS`PFu\ǍB7B !d`0p#B{!zT7B !d`0p#B7B !d`0p#B7B) sO=P! n20B _Kjߊ$ OfeH$$jIJ&$ƻ@>)Ұ7R*mH)O7$R $IdcQo:1IDCSH$>+AI<9P@eo8LzP*WICU ,ѨYZA$z;7X~+1j /UCU5r'Zhq֨V[yrUմa'-6!W_ !P7B !d`0p#B7B !d`ڳ!I B&uuCdt]>%7B% YWEo*ˋ  -J}t<b] ~R(u |FL&F%&].ɟq ɠoS7gq#!N X$B.pEB< }b3nSGHS*5"|I22=-ؘFk3 IHS*X*ӌ$L.HJπëYhg4 "t}奏k8, !O=]$KWI:X777m=k[_/+B ROSu:g""" i̘1@ P9jA$?YKKK/X@{-mrKqFSIt:٘7NiwJ*e?n-ٳrN:uj8h)oMҭɝNґ nA;ټp}9 lyyy^II*%;++;+?k m;wΞ5lV ۼ}dgEW:aH*OI)Ey=\ZA)++xGI%dgdg9r8'Gq}aFH_:fͯw,P㚴;wrg g /))ٳ߭[~ܐ`NO@nnٳ׮Yo{PJnxV 싷V.60+.#C>1l"ϟfcc~~ yVZt7Bzw~c+*=;=^<ѣwuu=z쨑;`)oyΝc‚5i[Vf9sjjj~W'Loxӥ<*kjP*h 3jD"iy}: 4g+9lv?iyL tquuqu6}j~Rwދ,6lssiS- ^Z(-C499M҃$b={ܟ|oTѣĴEUU5>pr|訩,mq?q<555**jĉ2l޽M<,+<{l8?T~ׯ;vl_;88[nssrrv#aQ'~7Gn7_.xVǮUE|FUF,Zi*!ԨR(b²6WߩWzΝT*%bD.v7u{;-@Bߛlۺw>L&fP}vNZ؍,\r'oOfbbdo߱$!쯿`˖-G O>[~ϟW/\%8U^>[+./ ۛ;ER|9I*J Ƙ|Z ++++̛lqݷO?=k{hoh H**j{HJHB RR{9|cʊJw Ł {?nRxww* D"0zԨ~y%%%w,7R/C~EquQ:[ ; MƓ=T*ڈZ mכovR(7nKSJqդյ1qG+xbA}%\F*nٴZرc`ztQ};`1M'qƮ[zII:%[lѡ(RL*8RVYGff&ztfb"xJT}V~#ML8~޺͛7߼y3##kVK.]мdwww8u*<% m nko1xuJ  ednjdSNurr͝9sfLLH$qq3g֭ԩS[qҤɡ555ޭ[ڭ/M|#SSPhldU(ɢꘔU-g7իwQqє)o+..dΝ;͘1&⢢+V>BCW?R411iѢOw >:qdii\.J+,lƌw:r| ݇OL:kz)#NX3z ẍ́f.w/|8o^zzyoݱs'iRS%_=o޼_vVt.}'Ke\[ 3 <]ҫ$`+) HRXbO.LKK[[#FEF^䓅T&̜5+*j|7LIKO?t_~vMnW qFBBئ..'N##/1Ι+Z(J-ewR7|4;S:NƔ?SX*' eglj53rdRKMh*ȑ#Ϟ=Q]]d2 4שV"fXF}W-tGÁb2σIENDB`luckybackup-0.5.0/manual/data/OperationProperties_ExcludeFull2.png0000666000175000017500000020646411531734550024710 0ustar luckybluckybPNG  IHDR`8 zTXtRaw profile type exifxڭkr#9{<``JrX)l%H 3QKPj6Z(#Ozu~?{]j9~R,Tc~_EɈs?3DHzx؆ }wld˝ϜwJ#oiRwrD%&c/Ywz,|#sb m{=)yT"7tf oO/R@>aV8zMjzi k`htO' D]L-IM-޹D|&;RTC͇]"G===csͯ˰@Tiҁf,jP%EIRkxQ'BFi8.[]SEVmUuyShcɢL暌\Xy*5ܤ.nJs{z rj8giH%+VY7akWnRWj]yPF-QP>?HΖ1\wGΎYTJv8eupNr@X}"\p r Bb wK_v kmɡ^-j:9ZbhNl$dt 1#3|>Fn?Γ< E:=!~~QƶO\A'KӥV>W;d=%^ѐa=wXϧM~gۿ3umE! w|[sz,TieU 7Iin,9408w.boeHЄ[,Lhv@lD9ꦴƩH{]NP:IJsB:-Q|aL(g`%FyqA q0#m-xᢦ@V"/~{D)U%Z!'Utُ-L7'E43% }w`3QI5cAL5GT*:T,$5iB8b.5M@١sDy c#e19+]X9nEh66;J]dxdg7I&u␷hZGd5+'GbLnך(a͟\Ҝz A$%RNΌhAƢ45DI(:uXQ'qXs>wv32$O@.l -·Cvo`ia~JÓoQxfHlBBЁt=5lv_m&BtBv1t:z޽6*0\̄'{./h+ 'RJTSiMMQCnbg٣NJ@I'&@DdI ߪ kKsrH@kmVwOObn#jc8қTE᪓6)ql}.HSkl#E5y^BK\od4[ip;ȩ:aal MgEh(UԧcΈwTޢ )%MQvG`f<JFžd,ǭ%e <=vNB!M"cINߥϣ ;zƆ"dHʿ}[Фz\%䨘)Rye)n1zY&CgcB_j9H L4Ś~`W~8LN{U Ma4zx0V%Vsf L}+_*7>)}=Lr~-ߏ!Mxi5Ft%tk;bzTXtRaw profile type iptcxܽIr%99*r Y jR߁I:%*3_?< P(T1L?.jB>l䟗+87N1\r#3?O#8ȣ:134,6+ʫmTiǝvev? 't)vUÛ5q~je])}jo>cp- ׶N{s lם+PSr;y mLwʊew:ɸlG,R#Fwͼ1-ͰL?rثygsKS?#Vw||M$}`b+' ,ؓ+K.yMr'ϝkkO_rvgzQ0ºS;=,]30/Sx'$v#siΙ7~v.rw{gV=;{l)yV9ve,L-`yѪ0Ah`8T;wP#{~yj=3Ud2؈>UY޾@>!m`9?||o֐t)) u,^%FE?0~Xb3B\g19~[V?iap>k :B(uX|mhzmC #Gz}\!7*g*)ky<%hghapfVu!i6V`XsD3kt,(l; km֒7%a%0K#U?hyr5d5cX{^ ,=)7Sk@2 \xsEFꗖ|)rj{/b}$n1W1DZ`a9.윃oB9/;Zr X9Ք02ŅƿzXhVcט!?vP51`X=@ok՚]9mv]dp3J5t=TYRe/gjaB\Ə yo=]kL-Ο~[oɇg9}eHGVLi-'Ϻ7,(^EHn<"~d˂ DEpv% +y%zJ@|o .EbN`ܽnBF{S5e9V!$=`a+ZR" :l!kK[׼MN&Խy$ɭ1 Ak'xt=¶o6NO}+gp@]"@ J2m@qʓQC|fF.|@>r +xƌ`Nd-j#XnwX|(݄.b! 4O yk d!Lf!pg^2'ž KZ+4c ,]X'#*n.cfPDU; ^i+}f1,\߆o`b(b*'81]xS,Ka 80WiiFl`3C<@P[rxϖ`W[:X48m׮OYv cEvG#D`~ 6H|ײGP* ^`c1Ӎ BXQq߽'7A*c3gހ楟٤vPqƁ"{.rq+ :pXcڼ3wl0v _  *N3^ƅbj}d`#f_A7#|ɔ{pͲv{ B\.0hL|@> /|VX3#)dд13f ̅^O&.tF֡s$VXfo:X*z4 :1ND1:+}n8Fٚp]xA+`0ρO9۔׏{K#] "Wj5YTvl(~ړ-ŃA* q2u0գxq KL3\lO"yKVN35LG$:3iPԮƴ|XEQ٩E~џb0JhT]a' P /7kL|V]qgf4bWeGcOV}@G,1xN2LzWV;XV*1:+o[G1{3}m}1}S(91LYٗUӎl*%gxIhzWp++' s`1w/ƑeX>p[:AcC3:q_Y9: e/Ԧ%X> aAOv=tv0$+p,L@`sXa >[KlY(5Z%!'P5FbpOlN5Y4gvs T 0r& 5dkpgOuxF؛qHQ ,*] $=cO02&z$ܠVf׷ )f!}^)j!%%,  IDZtn>Kw DbӶ`w:} Ê=ILV؛]Mt'Ds-=w*9wzM]i^}?J`9]? -9/ h*uXQ7cڅ=+$ɶMBg&ѕ͜l\9 ;EqЅ\%t(7lZxp=}|6d.:!b,NL.`P`TXYpl* Ar񚕢BH3X#9zVV逅 `%pLgglѶNOY _S.Sʽ˶eeZ`e ?Ƅ'\ \>xplnܢcRIh"|0z][k06: uX}8ԥ> LW<~?sN>,&5&b%Pjs^nnE dQa륌XXRO >`DN[߁@U;_1=[F;v7A)@; anUn9nQ@klA!+ F?gB-:٪ݮ -Fɐ_0-TbT%eX(FP,h/w F2DŽG8.3=*`vtmu/n{%cw8OQGG'\(-oiyƏJgE;e%TҕSfm-0&0_QW]}3D'N8Ob(f5,gB;pBBd{ ($c|ꏟg rbdzn@lY1<ڎ9;$@ρزRiN0SfS-AL 7QGbQ Wxx412ZA-+u ,"XGscߎtrmqkkp`\#Ns8R8kUe<N݋MDJL 9c<5d (~ym^1|LDmQhW]/lv;:,bz+푷\:Y^ҫja',0XpQmpO2KT8ş,Ұ}lv,jcetҐ3eG(6Nk0fdu`u/bXkpgKL .=M `^]Ø1Z==^0O[e7H ut2>㿫PeU&41i nB:dKK罢PT*@FN<;&5` { hY4ࠫEYmpH] :Bji9w]_b]`q=̌ 9.)+5lOLT[oGBZ2w P~= %ĂcBފ+<Kp&pf6X7 b^4g ~,~xVgra 8hQ_zV:g1 zJu"Ly +bN.lXzE, &wW'NE$@˟ ٤ FJl&gҽ )PHS#Yx 6&ŰթXQ#stH Ѓ0U/X[L*Vzڼƙ !֚i%;t9\_TZ?(uMbS Vq@k 1<(N6PN c !(A.>?X (`EVsc_ Pul* 8j*p1Ť0v tWąBXb9Q~K ejqQV_0 6KN vT-W8ԙEcY-G7TxMN,2 :5X#RiPa`.6]B ⾤G{F}:ӈيلrI]SkP{E%4\Mq4c%_5v)`/z\(+\hbz %D#0iśoLrc$olQrVLGwE8@񁡁:.Jx"jsR1ċ-EiH"cmU&ktZ̐od \ט@Hu pA2 a8Y_q8{ۑv0]Fv0֬{PDž5EkQuC a1!Ө=A:3 뾘R+#+<*š sD~ЉN\Qzι :;"u"q +BFJEg:[$ 1^EBQ@z".ӳh p7ӜSCMT 4ٓ} L*sj\:|g5,Hccp]6vo!n _[q=XᦰmT^ %,>š r .&N2VG./VUX;cSHB+]18s5!q1MBy!RFUjnK( 8݀Q,THC{VMրQ/+8 u}aK۫n.:u]g@X[dz]<} Vfzd<)\J{}FP#Ʋ@?Qku @Q!P?h@0:u4'uwk+iH\,. SLŒT]Z!<&CvR N{SHԣج*`] fz\9eZi %Q@^6֣uWu6_s} h10{YIft!6[DZ`U'j |{d!|V! R9 +\ϲ3?|yӡ1 vJh@Ġ=>"'Kt4;M38ōh}.Uu4nSLiq;?O棧à oe@ itQ0=O`Ղ7WjyxCa>4 {"yxQ\^?ܼOW4nqpCM=cs0+n @Qd g5+JZbyϋ)Xw_<Z8 Wo`b枫 1P\s+=`mM}:д Aq{T0\K' ҕRR.s#&u[E 2'E6w xF#vhL:Pi 5~]@~a=.OM!ȱkbWbc\Uu1mPuBV#n7b)ȨSbNaaA>!CEi*ptSt;;q*ޯC}A[({k🬋Vyz??m?XOϏXϏ}Fcy+ e eԧW(~fB?xпO|2ygn}FsF{q g(@v&vK;nMe=q@ Q!4M&Q|bhǥrVTAPhJ*`y710DbQnS%BKa{`3Jgfe0:e u2xê|i):OSHZc= r%+{n ]C#N8 R*ϥJjY!Ge+R,%.e,4!t VFWQƎ)&;UNt;g,BWTl*E4 -R*r;bS~NPq7uu*ῦ".R7p+Oh{܂hH+zz<$ĭGD] qt˪KڪہrC[!1qZ]ձ<r===7f*W.*[x[G,>"X,k-olSֆ2M.*VgU`Uw_ ɶ:p2aSqW`uv U d!P40O;)PT6E,ǑaFCŞqGSg,wU)*w),(rU8̤tR8ٮN2!7JIOT(^}@0Ƀ0aF, Uqʯc۱YҽC+Xrsg>\usFDh1:X8mAK29n2 MRHZW6lJ: eQ~tf,Ut*[VIݴؔ ? CC1K/t:[86O$9WΙC<"_|!m4^s끺CM+$E U½o죢IuRrjxwRcՖneͺViVq.=l+6lt?ork샏Os ݢgrԙrMmz11[C`]9pѨLgg 4[3JU ~a-Y='Er3qk~[%!þu !uWM>DyT c7?as0M. UEa[EbwuU/m޺"Ik e?A ^׆c0Kl䷜njh)=Bq7swSQCUi,u Џ 8(7U1X-eUHt l"Tb` *V46PjƮ?X)V{<9pdns:W>䵆dWMx%)lWIK!X0̳2\C-xWL½_S8Ř(1k8J0|R> 8Pwxof+e%SP`YW^f6 OFc.fpK!JOg~Z~y%]fUW|_Ϳ*{3W|j ^̿*{3Eg'kUgU+W|_UgUW|zCSf^-ULU6ˎ "PI[uVєk0l"E ɠjW*ޕ>\Sm Pw,yDrQu_60x48m+Du@ux20]uz(cxT`@ʤh&@*huT]-(m$fa,FS%t*ޚK!H%e)&NW8;THwFƒ _aO_u@c@* RTdYɺ`۪'w[䑐:)QBhTRAREUbrsVDyUPPU*2b^*VjF@YWfҩR)6d9^WM XˬBRMTa Z2ؾ=v>w$Q8Uq>. +Z _T\'U'= I9BZ2|FKTi !IYɕTG5Q~LʅOYF6SbLi$8]BJmqbZ ,Q.]p.V~nbOЕZUpT2H JWRh~+CvM7,USB=qSXeQp멝M91vCo+*U Vl0ښC%Ȇf{Z7}zyQblInW|qƇtjziJ<)ѡhҽ Pt6 xۡm֭؎dL|"^9SBWUoۥiqsT+BNEGކXwbLkY]5UmG>ZXTt]( 6E|UUZPU,O$GxkoYQu~5Dߺ¡JDϏ5o5<~X}X5kv5+֌5|͚`f`_fpY{6kւ5|͚= _f5Y35یK,=G_5SYy*~v6_f%Yo}jݤ5+|bR,ϧl&}8. М} DT 6~:ƥ-3~ΎPCr՗EmJa?Y\.M5gj:nʀ*iN|mTSŦkwLE'l * l&袊.ǬRXI٩nJkZn7@Mm`~AluU쩢| S3q}LT^iJg )bqe0ZUjf\S+2*nU_UI'V)F9|*gn zE>LL(^] ) 2}W_}fp؝j) U!2'p6K@v=Ϯ].a!UqC }9oTr bw^Ci<%un12b˿z3y9o,u\2߿m>)n+O5?gH#kmIjbTz5/K6r}|}Cj=JԪ*x;a/Bo1v + nl9[ Ye_G,KՎ[jQ!nՓfXUT%AܪĖ T~hp5YdKeOFjPjX8)P>*>oYf**Xx%bnPm-9b$C.e=7s\.Z|m745tEYZUşc= yfhPծk6/PgRTIc++,YM*1)^EXoV RLfU\9:vr7 p-2¢ոLElZ^6=РlpefV>" íIU) < r#6}aA'sS-սǴ;H߳1U!QՠV~r'GDTE-TeL'NǸRUjgaUGDiGO>IpOfVMTcFUMRuצ0eCq%rr+;hIP¿Av.-;{]I9nSa+$ ew]ٷC˷fgSu8ejg촩x%5ln םA ek^4107{Q" y*ŴY_]> /UKŽܒL`O'_mǗ{@KO`*m?gBࠖt5/ nuDut ;yUy111111}1}11̶x=mz3gOlC0m>-^?|f[~̶x=mzs,OȸCE @٫,ZK$8n5Zҵ*3TPp1}MIu_y}S: :nW78O Vѻ?iII=4T>i'1#"ѩ 5J]n<ثw5'5*_!MjJd)9oTP*~(nCn+?ZlPV~R=Yju[1[}hph>ՆiTX R\By,v%Hz5M=#JߞWT$ղKVT:R+6)#T vJPԂ"l:uF.eض &V*5CɊ|+Gz-TJ)T])g3[wsڵ2"/T =Q=|<D_0w+hmq䴪'|khVQJy.e!>3RMl;¾VWTö!>0ވ@O~>[V_i]i*&@ /F|zTy3765_ Ke?Ou8cF^9/Bѩ^o~s!UW,/W3kX^wiv_h_iv|^]oׯvgexJ_i+2c~]oׯxS0 mdT4O%ptJC0ejuliS`+\Ú[&p%]T#'߅ߩxpڿ%i3|1͸j:=e@l [ُsէ;]I׀ @J> ^!RU:*("tSRũRSMm.(jrL5uZ #^16E fuUӹeη,]MVW`jq W=ߍĪ4@о൪d-ߚu+u-GjZ<͈Ū.qNmuS(}n~<ʚG0 ]%M jYYD3S@&Z5s1JT1>F dUpl㯐u]쩩W[*U(_;lO<.; 3d 6f7+0Ԍ"-u tfu;U񕥚&TBYת݆9ąZz⶙`{3vk*L(bm{"k~&MOs3 WLQn9VUJC^Sei4AaR{@SzV4I}3UBJ5 {8e`#fU[uC*|v0&<7$-ETfʷo. Ijͧ%t8:Y^-*O|s4MPTVA·SjFVoYBQvB2cԔ-VXڕ8)Twϩ,_XY5REhĻv:Zy} ڵNpbR;IV NL!V-LuAQF8B-SZɂVJv} gk%&kjt::jt<IMA{QIhT>Z%bU1 ^2>)iK*JC~%/qV:R5 * U5/) Ej} xvG)ػRM̌ZT&:\[%0 ݪWUʒ8 $<ɧy^IM2mzosP[Y(Y=" PW@O =(=T=h}j R0UMQ TcdaW.k.%Nq0\^' ڜV`luC86|oԹK8S Qw 6CVCiZDw#u&4/1ƒ/㿣-@r}? ݼ@w5j,K٥wN?!v͇#^G~|}vJԼ9x,51l'v`ƿʽwE-w7`MA$ ^Ym*5`86R= NM!ՎUŦJ`^ U"O4JsxNW8R:")0[U x{Zܤ#z=Emmzu]ebTm/< VdЊd3^U  :Yoƺ}U ;du&)@ 9;*pŰ_Tͥ$[I#&i2] TtWVgCJoxVС:30#3,lg?ٓpc7 "L#1*ɔ<. Wsu'.`a S =ʌk xVP%* gV/Ar1Ig"]&SGT9A/)Xs6B=SU/{x @59p>JlX@.!wxv̼ YKU0JI"ca)sfUJ*_mv{ԌZ5hBG>ODl n@[ O"TC8U\ӂP{-%Q97-; eb<[ \O鯓- @M/ЄOyŬ;v|"/2>@}@AIQ(yHLI;ĀҖ8Rء"=b>,$>a%y暁Up!XFFULa{bT?fo\UF#ynʙNQ+,_l񥾙lc`S#˖EC w[QOl)mqb/[`yFkdOx_8o=@F<*&H&PjUcKSQ8Ud4T':ơy6-N{MXzRP*Ż=S{tˇ/7:=|F.n>#7뇛gC~Q2ŋoi{30K z_kt]/4*_` 4o; wY N7d?<~s"Wf/wOSf\i<7`F^'l+=K/c6VUe]-keE[  nL·lt- 6S"xP=P朁M,@E%JSھLъ*VQ9otң  W^*ݩ<CW9OYCm3--/)}W[B_94Ր0Rnd`I Rn/yTW# .VdvJ9uV[kR{ly%o`{nTqlWO(Eil:` G9jEj}N 8UFSa*4kYe3CCf*;O7H%}f8 -T{,`oe3"'eZG[@dթCyiCuj 6 ? ZV_R7@t(xSMӅE#Mgb z# cj͏Cp<Ձ0/l>JV=FԵU<h<T!H6r<[V(QÁ1 yJFBVoݪZ5`Q4]l؃,ˁ%dEVShm%)+/54:'AxK ݣTOGUC3[M݇'$_+ЙSFZ3#8VxCoH{kNϥjD]WRrA_aS}w6JfoeG6E7q\iRŭmŘAGpަ0QmaP[Yj1l + DBw?H>6ސPBBjޑPHV[T=oϿ_Óܨ##F,wGZ='>c?iʪ?|\O{b jC0,E(eX1Yr,\}R?ޣ a*q9!8*(*>zuO5>g6vc]cqx1]zɍ@ʦ~Dў G_0ƗwOU ջ *rT뷿\KEhaih=AF"8sKv; ]V^ {}i}6bki3y;; r0=yoyaC5Wu7}o<ԑԽ}&b~oKb~&AE6rIL7duûtYs/s{7?{8ءZ i?Yw'UA! ߞTWTU1iF-Pk&ep/g"~)JzyУ_|!amT+ Trto OٔP2uOWmF~b: oby;^HNVj m75RAim-Ȳ:*Ȉ'V nQ+p8|JxQ p=ɩܳJbRKQS)^eDAXzۨΆ9}W_2S;;뼢B,)h9-HSϩi+O^QkPj$6]4Cm ]9 j% 3<&𯸝f0q"&.뫴~oI#!g.zyU 0v92LWH%ժkZ6ԚiolKKaVmH(rcڭ :bD>ΥD[L{yۛʧ.tG,q嚦گ]CwUpH Ewa Oy)y KDen {0>&nym5e_m?# 5Pc$̛,˪xo0$߰]3(p2T UamE/Y=[#R/P=8bO]eQjBn(>΃;GMӽq4N fu$g<#) M iQMvu 6!lz6`o# P7X0-,(6"ǙK*^\-7%XflUjF=kO)w`VtjCm-R8zt+=YV"*[@aG@ḭv񶸫ۨ';ϱ+0@\R/2bSz\"֋ᶢc*6 m2م:;"n=z pr34 }IUC|oL aH܈*mGmyɂU9 me*.xW:(ؘ}SsNIO hc8q ۝_bsI[{TWOH5'N/K ~x.1>lzCo;aBʌ>tqe惂OEr}<@y՜[ ќ㷣x=Q}3^*y}71l~?? A+1lBz A?E@ A+k_!h=6sHWκNgkrsYlVMz*{IvvT$|ݫY2ڻ:md蠧"2L*ޙw - F!jü{^Q:pug/²-'' [};ojɹSbۖ;M|w?y#o}R`Xmkҡ^4e'S͢Ӿ/ 9׵@y훶oOV8̳l3O"5(? xٶq!=8ۺ~2!>om`9IFI- ;I[}O_owxI6(|(,f+ NTAJ-^]eJd5RQS]K$\i' j牦j:BFx ,Op?\,.ZRY"Q R bݴ^]~nM3PDU0.T4>D7@QlpSOnJ .nƀ)TI*xtI]7XSTE^KNVMcR%\[ս,8/S%RP9W3*+άf+I}Q=)魅iUK =uKq U412.)w댏W٭J.x`y^W{Uo*:)pXKemnjXqwH (;u]{5S2Q7vzmYH<ޞ2qUKru{ @Vl`=ptR8GE UΫaBzZu- ;Lx+WʓeңC]}m2 ,Y<{=쉱ܜ'rvTloDfEmEʁ [mg+Ȧ[g(TwҺZήGU Ζo(钝nqy-tR%\?:!ĄN\ : c5us~DtmEȨY?)#jJUS[r)5JMXOi;D 4%5nbz:+5XYMT$C n*nt bqiu"cAJP98Q5:تU[^ʇ{q5/IaB7G962 Aѕ`\uuKzסjǭthUcǥ[XQR$ωjOVف*#Z?HWGd( z)ieMt7xTQcAtkݑ΃4W-`oQ dMdMXUPv+f8]+/ʼڄy[GL]r'B{DZyC2l.N1u棌[[]: 3Ȉow VV@\.}-gcSBA`WG TKx P0/W?ܚڮl+/I*A2c՗SݸT7zcL}bCdԔz(l,jؕ_R+}+tT9^Un$\IWdP*Q?[[b6G(1t6` gn^M!f$) ﱀKpWuJڑ&lU go(ŋJ]?=S ѝ골(ԳinބLЛqO) m+7oB-}!SYq2& ګxB(ŚO)eԨF*pøT<V*/v%q=UNJ0S0|+|1t/?uQ5Vw1I@YMt7h< Iv1WF/XZI<1KYt)(Q>㊄Q=PP([ڛJb8urJ(J/99S}enkbDspG1, }:֭OTn[,yJ_ũМE~|ꎓnm)e)"V $f㆚x%` ~`ub_ʼR,[-/^е/wdol+BPpyX%WmKzݩWE%^L*n*&b\{4޿پQ"ڌ`)tv+In*3gXQ & _johZrђ5`Ȕk1'em_-46T}v5--6I3`nź0:OjύTQ EH*r[e *^],3C @: bSЫTָ V}滗yZȟW/5_|F?۴-/5믚Kg3~R6J7sEs۵pcoΦ,(AqO%+Q_AHh9 8'Kj}o:v0PoPO.2rk"?Q lTJU&N`X xYWun~)T (ɳQdRK;8e~mHBSOcLY+P7[G*1sfo:M]_~gzŶles 6+L2v5 o`fe!ĩ#G|qso\۽i t@}kO+J-*;϶uja]Xs [岅P195B XD.@7m-_ B`sMP~KZ]!~;j[Ԫ7Y_emw*O1l\kyP}.8hct-j -oj|9jSSIfe_NϦ}4TXeLNB0ThxžguG1Js =6ykViߺ]"3oa/\[+`rh1[aT"@[|73K_s Iz}`Hqq>=(>o&,,)dt2SZ~'XJڀEb`bw^gSjdn)#Tbrn!vun|Y4 ??`7d1` ߟެKR͑Ɍ̻*ž|)A.0I?΁ʻ`R2=b5 dPc5sijGB^w^ӏ2sO ){_wwT)tf;6h)޶QǬ2J6@t:($/~EE.W^=2su^5oP*rbf P~o9; BLJX)V?J8=+[:lQ=5(^~ϓͱmJi.u%\L+g?40Jz)Wy+3+vѺS3x2|#*,>KONNԐ l5ղ &(̩[ ?<|zh*޻e Eq1硷a ;G|v"-RTګ:Eqz rDo ?|+]~krDj* JŒ`j,!v?-+mF/[Co;vvp*Y/hv$a~c}4A|QԬ؎VtN V0Air85Ef R.=e=>tijElQ8OVztu/1_";[PVSˠF>?sK |,[' )ݧb {;]\ș UVV0;Hvj/?lI`ʻ}»}2d#/g^쥮/vg^g^l{xyjizX7lijWy@8tZ}MFAH9yg2MX9v~1R_;.=n֖L8fx]'^XQZ6#l?ë%7nQ;E/He[ۺGZ]8-o-ٰmG\@x>mAKϚ VquD Byk.͛k_zs'[ o>ϟ2~{K-- _u znnAυ2|݂-,|݂ -e=[su jڿjx*1 n۷x)h2zUS5AɢE]9jOԹfٕg wiTXtXML:com.adobe.xmp PbsBIT|dzTXtTitlex I,V((/H-*L-.N.IzTXtSoftwarexKLNU033PPL*KW(K-*S0331QU*KU02Q0204P IDATxwxU I z UبTJQ"R>PiDiJ HĄ@z6IVvCd̝3wfN4U̙ B!BSKB!$B!BD!B! B!(֧( $(kuh4T*C!e6QT\8EQj !N%#UVR1=_,֫h$=-MU^OXxU:FڽmNb%1>Nf3f <<=%@zz:.jz22 hĘ+\PA`P%.GڽmNbUv14LU KALרIVfYYr7wwN?fX?w{ +3E;*s*UFVKw>Bb(}g]; T)j%+3CZV *[ϗl&&&-k4JhRckٱcahZi9GH Oqk5ZVөSחXp+YTX*ArUvv\XI OqkO9dX1b2bXa3 `2搓cD'"8IwI$Bڧ ֵ3 M9eYVnZt{311%N~/믗i} {2|޼랞*>hs+)nuTh}gZݝJ*OÈz/ǯw/_oLWrGWVR6,Kr*%z_MGbu5*WSNtܹ\?f~6m@?rJhт^z'Gh&իVaFbcc1MTѣG\ٲQV 7H.d֬Y4hC]o 8ܯ?r8AX׼ۛ^zbU,f iܱwnj-wAFj8%K~/=ҧGJ :uMI6+z 7b} ^ImΑX{6ٳ'~)zG:t(;㢶CK7CQ~}|9y$=7nfPrdh)9GG& >| ~/|4u*ʤ cƍnL|}}Y'ի{%ͯ-SZxZ7rYtrͮe///zi79r$_~%͚5V͚*M|бqFrssWi:)a}(Wn Zn޺3NUǑv#wYMr^ImΑX۷а2p@V|z\ov V+cƌȑh^2;wq}Cxk8͘!Yj2a=F'`РA ۸W?12kL߼T7ce/ФI֮]A,ى7{Ǽ3?ۧJ)Q{MەGlU7KhZ^6^x͛6SzrNfF&;{`Rl;Vi{%f=CKP]vi׮-Ӧ@RaZ4h'˖/V2glO._N!(;>L C9a[ǏgݻJ۶( ̝3={vZW^!U%Dv_ e9{P7͕6V*Q^=wbYGic9r$͚өSǼ댯׫WG;t#$'_xߵk{^z˶}]'uܹZ([qc<ٳw/OvFVYG6nHΝo>r0%N%\5ULՈn|bbK,\pww"FsQbE zE ׇ&-A?~ҨP"= {B~3jH̙lfĉ,?xzA[cW_DhX/:uС#CѥKg ThZΟgGV΋_vZ27w>O`0hР("ރ{ׯgOԩ#K^θcU( qqq FÐC^;v`ܹ\tQo]| CS};-7˿uڕ;O= eT^.ӷO[A,+4]jM{ÆvU>}k׮~E>|B-pss۟3mΙXE<{_?BcAlN/xFD07HK`…8qTjj؀Shq͎ocq!^ł2Jje-lܰSgΐ u塃mʝٶmW۶m>, JSOfZرږc2mXEQMjԨN`` k֮剎Ou$F]i߾}1-3vX Á1c:ժUsj?hR~,GRžZ C +r .0dP*WĈ#Df͞ŰaØ5k>>>|doγ *g~Pŋ!m}D˖.O>=Oծ8KF͛9'#0 7|͠jժ|<= ̟yjZ 8Aϋ_?k֬a2gl9q$}Yā={)L<>@p`Ϟ=z®];icӵ[7[ Gzz:ΥeV4mF={0Jιs撝̙瞦Ӭ={rSL!##>IŊ Ih׮}}1+%<צk;Zδ׫].x {777 ;zljWF h4ry֬^͹sӷxG6;Apd|s8z^Gxp>1ĉFov R}&ݥK_SNm @pp0gNa. wjr߳g^Z| sgoc#ϲjoHppejԨJm|n:%1rt?T ңgY 7n⡇dʕٽW #""©@iEvTF"ktWeFffmdvWa٫'L߾}t^O i}ddd{$22ou7Cb6Yl7"ۗmʮւ=kv3uR۾jpΐ!CZ*cƌ;9_мEK<=v@d箝ii޼9'O p1 >RdLTWmEkGg.-_x)999L0F pw :?gڜ#j߾M(N;ҧWs~_׿ vgL!;/ aɒ>xgP^oy:խW>ԑ:#gC֮YN}Y9s͂GE?5GE'NrIx{{GGG( z*ɓ'P}fvmr߽4n;`Id?lỦ5kVdְQC0JE͚{BJc-8iժ%[Dnݺua6iIDq௃ݻ;t@*4mڔ(Zj/N](ViQ,vRSPh!Uؕ3Lxzz2jԨ"Z1 ȺH;]δkhՕF u4n8L<ՠQ'o޼4>"O 9[Ǻu~p;Uay0v:_mov +pi22qBAz;tȐm<=#GsN:Ů?wjr%77kcZ}K39~6ajԬN||d5*5*Ayjۙ: {bi4[No3f !!!  j@YzTir;2 ƛ-<<<2dpQP:4zm+X|9+Wf䨑ٳy]k߶b(rrr%M+1)?B&19w=<=i5c*KQ&_~(4h%Ki~J0aXQ_4XвeB-x9xFFUח\+Orr2&f8raaa:tmoi{n"FӃx)NkGgW'עK߿д+UdWϩ6@tbS'x>|83g~FHH]Yg7mp֨kU*.8q8MiZlBc|BBB^żNa߾}jBCCYAszr%r0Ϝd6xrBE*UtK39~Ua۶)otԱwƨ(=ݠJA4lԐ;vWR_k?_V׵3 J}i^JUk}HHHyfU9z-[ CRѨi߾=8޳?d̙3Ƕ={E.94ii[V5E9{]D*!-U|tRz%%'QhZ׬[!:T1ٳ8q[O?wތ5uӬ'Ob۶mk) a֨BPN"& ҥd+צM%QQ=1Ѯ//_jUl 899有#yu0&LȜ9slvcQq߹^umWNfǰCÊ矹Y"ˬ'6mLVQ׷r0ݏ?}1|pڴicy̙ǟZvxr V 䩓$&&IJ… 4k8f8r,o;M۶Fzu3еDEmeǎԩ]-[ӨQCϗ%/LvV6_̛cЩm}mڠ( -+e-[AAƛoX\]\UkYliԨ&;vMkٲeL:o33رs'5jT ]viE6md"**6̘kd[T 6r(~%Z0If~V˖罧lfۣNg{|2cǍŚ?ASR%~{fՌ?U?b{jJ?weҥ_or/ ?njaΜ,[ DzF]^{S^=,Y˜w?'0nXԥK1Qq3ށXZpM?ن\'5o bǎvisGԩUn]˲e9UGv(6Z~cQ&ayX֬Yæ͛_>5k,}19m۴E_w޿:m9ߴ=yIŖٴi3ٴl8f8r,a/ 7kQh^]v9sGNcU/N=ǟ~2M*j5\1i,r!\#8x iii >аO!u܉(V\IfV& Ell,?\I*UxоC{f͚Ii޼9lڴ-[P ?ܳLp2O>ٍJ+s!6l oƭ./ _~%Yv:f3ݻ?i+S':8_B> 꺩m/;fZՓ_|}8q+PVm Yoճ'|7̚9T aܸqtɾ.?w܅$6l wިUj{=[ y :2iwtܙI&Z.\Ȃ _G޽<ݝ~vsXڶmo>x*=99lܰooORms'OPwS& Gcx=ߍ_O>iHYv-s1޶mEyvjmڶn:.Zh!5jT6 Ge>/?݇;<̚kXZ֫Sr8R_cT~ O);wbQTk :F!C?a<*#}Ge?fh8p:--Kڮ/q&ٝjOYlQҩs'~i/r{?5kVG&߿mm{xx2o<.\HT6̛oI)ڮ\b;v,f"))5j0uDŽ{P{/&QӺuB bY,XZEnNk擩S(^gJ72pBekWV3` (W@;SܓO>i^ϠAlυrDm=%]4GҥlWϟOHH(]tAV3}t[9??f͞%Kٲe jՊaڴirnN9b/WW7Ą13&O);^Ǣ]6Z~camll6S92}Gv^>ȱ^w_u||| gϞԪU~}$.]Ƕ-GQt:=&gԨQktڍM79|0˖.LJcǡ ա<39~EܰqP ԩ]nʠ78__cT|+SQΝ;dR>#P!իaᢅZN::pd~G%b#s`6E @u4](y ;_OXI o.ٓ^={v izlATPIUDX3u9P>Juz=; x dddByvsCš {v_mNb%1J iu\״u(>>&8ݺu#66ݻw;K.'-L! ^׏}nآ/E.] "gѢEl߾]ZB!$AZŊB o᷋i]B!%5B!ŽӦK57nii̙5GQqdc|MG1o<.^HDDÆ AjYz5'N$#=u#F 'J͚5bI޽y7^.Ȝs󯿈Ϗ[C+B ;{^={rh4'Nb۶m_Kx|]O?^sp)90wI.\ȰWeB6m:>k֬iӦ%NtW 7|CʕyZcFi׮-ӦM#*j+'M*B;3AOO?NzBCB?n/^dŊʿ05jDuiߡ 5oGhh(O<UػgOy 2j"pss㥗^jxU`AuKIIy|<ȣԯ_.]еKWbccG~.ڳg/x СC"=z ~;{U#V巳ոI*:uk_?歷 55,'wneGdŊy{wڷ-ZR !Lf35"W`I^ާ]ҫK-11w_FVSj8uգrp0111e\#F Vlټŋh"BTa{Q^=iB!P>L6mqss X,ٳU_OZRRx!аbˏ?͸ymmh &Z}]˥VDGvJVv6;wdٲe,YXZB!nrw >(̙3n/3x 6Pfڼet~7jשUlN%ر׫i6^}/( n;ŋ ZBqSĞ={q-[FzFMnӧY|tԱ5o<2Vb6ySŖo޼97of„ hقԔTV\b ''@ʕ8~cƌ]v/O<ԩS1r$6mHkB!ĝ t:? mۯlܰ???zAQfL:Ԫ]sQlѣGKT6lBժUyg[.=znݚ^OB~WT*5ڵsxzJOfx !PŜ9@ИXZhNrr2V]e޽[ZB!Xj?_vExxZm^ߡjO!B'!Bq%흸+V5/BQ AB! !BIB!$B!BD!B! B!Q!BH(B!nzP%B!h4^^xxxR9jו >p{iAB!L&4 V8I1xV{06挴"!BܖT*..Ԯ[VG3Q98^/ B!ĝFQBVǎFSre\\\neTB!jVn?" B!ĝ.++TP"I !BʢJ\222ne) FFFƊ+ =g6[?v]ԭ[7bcc탦퍟?[Gz̜5ÇO\Cm͌1\!⿔J9t`?..hn; .],Z^zwROO>a՜>}^+Ah!ZX&*sn.f'Lbj?wqVooo{)ϫW QF)B!ʙIJL$-5 /o/Io4̒KXz A޽i٪]#,?ѤSjUc>J+8 KFF5k`䨷S5t~ԹHIM_~gϞkϞ 0yo;PR0?`|||[OOOڴW_}s(Ye˗C1B!diԮ[VFO&?Ax"/^d׮]̜5f1axWj~K̙3 :_|G+u=yrssٴq-A,mtdm)))deea*9Vƙ:̘>m?^|!KHh -\^h2Xz5 5d1M~OW޸T~4BժU7nӦMh"9R<ڴiÈ#ڵu`I58wS_+\I6?d̙ͻo߾'~i6mdLlڒCoFaB!JfJEJ~ԭ\ @Dx͚7#((8v:}^O~"-- J'~BHWNNX,]zuM_0f|||ʤIokT Aw5СCt<أ|kRRRl㝉Ͽ}^K2SY*Brڵo߸_W.DVʙ3gXJV:uj3xP{Μ{(tܥi=vа2K{]r.F_UXg}mX{͚I(B8BQ΢jDqqqT Au /M9\pDfffsrr^cƌk2c zx!6 ק / 5[,t]rƕ 7Agꐖjve\ReBL&<=0 \t^҃Mbb"ɘL&[WKyA'v| .$$efFEEzz:eYTX+2eʔ"~CmŊ翮3u<%)) !NHOOFZۻww7 [r9nJbZyKQӧOٍX,߿ZjazZjE߾O ظq#W )) VK hР5jl6ѠA"""|yF#YY733uY{ !NHz͚\LH@QIpm?9ÇmSyhܸ-~8۷޽W_}ծ+7>>><أރ*Ulz9[5k2x`f͞?qq S>S>OZi櫄ՠ\f3& %pNVĸP)) rTŔX\.]J.UҡD^EIoĤOo2)xM9IBIQAcEm6`P2xwCvVV%gS[I>EkFeAE|vJ:ɱfɱ#\5 NNzԬ^i[V~'~Xǎ+w7cn+{1>1{ba$AB!DYh=4\h .r%ɬL0T4ld2*Puqݬf[aaRѫ"n*=z IH%PE hѡkqѸ|4b={,ϘNFۄWѣL2^ 8} ݟ|Ǝ}o/Yի$B!D bHFŬdar1BnЁ&\vM*rjTFƷwbbbcIp'AOek0jOFRR1&9ڀΪ`rlZ|y%ZnͤI\2 ﺋX wg~s7k@ҵ+'wQ!(1Q36${tZ3LͶ;L{T*ٗ}Ļϡz ~m;&@X|[6m`떭vp-׋$B!r FARkK3228s [9%%[82ժBM Kdf(V{?([1+`A^Gցej٪%o`;Vݷ 462r(8~4[<$B!ۋؘ@|\gm;vd߾is_*T7~v3xҵ+Ǐr J(BѨRP%W~]Ĝ9Fv; v\ɹEqS;L3z4|C%J3Pݻr @VU2B!ʝO* 77W>/XP'7'G bvDmxgi CBnhh6$B!ʝ>F'l޼:jV:yǏP1OOO4߈ЪL~ih ߰񇢩TmXJ?q!S9{8Fw[ŕ Tj5ǎgj^5_yj;77GV(.kCYo0uYǜ%kT!jb29{(Ȃ9ŖUxyya0%;tɚ  .<\Զh' KnXTo.g芕6B yl<*Ԩv̈́7T*ޅNm׮MHh0Qȩ'9z^pCA UGg}*kR!-˙$zٝ>v{ q҅r !qeuj[ޜtAD!6PFnt$B!Q@!BH(B!$AB! !BIB!DK###߭[2OLLuMcѢEDFFY=ʢNB!!CRu0TVXH+ڵkGHiB!v~t3 !ܑk͛̔@!BDgۯDFFن}W4o֌`6LyZlI}زek+ڿiӦ]_X0|VZʰa?koZYl=ze˖t҅ŋcX^#FCbڴiC\pbדO>ɴiӤ !\!|"5nݞ{gϞ̘1-YyW뮻=k6QQ[yIUg,X 8]ٳfe>[s%֮c„TC>b$YYYKNd21d؏&yݱ̛7?-[lRFDH+B! >s𮆶 ƞ{?~IɴjՊ>}Ư]'Ѹq ;t/._Ƽ.w7_|'NyfEaE̚5ڵФI$zdFrrr&b*V$((3fJBE!Nkޤݫ;RWF_~OJJ /ylР7o&)) }b<==2tcǎeʔ)nՊ6mҶm[iqB!3DGEFRSS9r͛7(؞f???k/ CoڰiӦz6IOuۯ2* *-P! A6D)r\t3z4aa!Æ # "Wܹs<装3ghXf .k4}Y&O\c صV/ԏ0ԪU={0wZ\'7v,w`U4nVߟM'^zBq{'qk׭cŊ9zK/Aբj;v dݛ^z0{,Y&f΢ZwL#GbŊ<7W@7p8>5W !4E":]&J슂dQ#_,V k/v~~$=7:1" ЬIKN:N^A.V:xzxq ċQ?"BTU-UQ0-XVTU(njb6[Pn((*:nFKDED~"+|~EB!噛(j2( +|Eth+6ĩJdDX:$[\!D* U ?QQK'ѹc7vA5ߗK?e5 ݄ #V3gOɽHmmۉ_~ʅ\ QKO~}X|kthlq!fOoR%+;ɪ8~2d9M~~5m*m:r&4?nŋ$}N`I:mhX[ϱldD4::`9B!*Z=rYT뀨 ^(xj)ߗht#DoS^}N9w ZhHMOatc~9s6sYW'?lB!*Wy~Tz@TU,gP |9̦UzXj*3g_jѼhѲ%gΜ9sN<CHH_|SLXj* 6?Sr1'ӧ4-m۶_"88'giڵUyvx ~8ioX.773lp^x2Wbj*ǻADG^ {w`EQV]OQçBj:\ޙeQ!De+ ŖjZ Q -(^(Վw#FVF5u:}){IKO%q#N8νKXX(Ӧ :>Og0iҫ 2VX7&j00v< ,/5w2Ypއ:uffѢ/!kIHH`,_:ڽv, FEej2դ;yzxү= GUUϟ##3܋;֛z|7cD7fqЁ+[(/c&gE%?,^P.?ŪWhY k:z==:\Z.)eh'_~'Od2s  ,,S16%юyZЯޝ3O'66ҲavӦQPPٳtkז3{lyܹ3+WO$+ViӦԯ_UUo펋TnV Κ8t$ @(b^Z5oNOwqHR(rWz!L-ʾJEUl* fEEء@=:hpա5Ѹ(iXڥsgzwFUU:v,7o ͛;Չĉ{b0si5Κo8̦Me6:v:UGmoܾ M9>nj <Fqٷv;ЩcW||jەN+BUnDC' *ஂŊŪmԢ5P\u(.Zln^(elS=͆7'N,~PPS}Kh4:4Q-!m$9jӠ}{CJj2nh֪@cQ?(\'OU\ptCrBʥ*U? ݉64/uT.?ϐ鵸zW  c}q9vJDDD:%WZ/gfa2dI7_,dz+Vҧwo<==uފ͇q@ࠚzGV_G14!+[gN1VHmq,kԩ]]{w(O Bv; Z\(џ{g^f͚ń Wco+uyT qqq,[ҿ_Xn-m۴uZ>!1?3gpIxceoo%3e7l X׬ع7vuϙJ!_|A}Ç gu|L&ZnMJJ .$<2--ړ]ñ)q8 I]N/BqDZm\qLDƐNdddu/%/TGqjxzyuV˗:~l۶i=z(o~jȖBqѻЦEzOqbVG^з=2B!DY~w괤Qf" &WWi鴷W@B!Di4H:/E\\]19tкuhnM% !UN //O6n@LÆ %$'s!rmԮE-Xz_>x">iDE'..~???BT*э5kj9|;wA%xxx\ F yJ sC|xjժEth6o̩'y={kΉywVW !j`pϗB(Jr3`0VJ EEE|;Nng%,[_zD3g|s``mNB!J`4a0Ͳ-G**Vj@4 |7|p!&M”gbg ڵ_6z5k:}bqyq|BQCע7ڷo/<3>c?ܹkоlݺ=Q/ʮ]2xhˮYDHo5nLXx8l޴IJØZn-{B!Hv]MXx ]tΝiպ57\_d7p5c;p _zv$E"-^//N:g6lQFNRis)|J9P!wJAjt(7 /BiѢq)4Odd$C%,,[Xvĉ4lOOO}v<1czz~sM@-+wC!WM6Nu4h@~~~ec;vt|hhּ;w,Q/$$A7/ MC!"777TZ3<00sYY}MФIB!$UD?sWff&O"22 #Gkxtc}WN5jԐC!_BUUv;6UC ozt:]^^曯=IrrrX~= ((ϝbϞ={oB!*fj\龜 Cff..vQm ]:w&4. >_x9u bg Z!!! !Tyy&jFQvQ*ŮCOp2Ϝ֟IK=BvZZ::';;EQʵÈ \HNN&\v[V233 `0Ȟ'KI>Jzz:nW2N]XD/qU|ku:|ٶm;aCr7hŅ:u@!˨ljDqCVق(7 !U,,^ siޢ^xyx窪u"UgǏ'''G#vMŏێyRgF+^s<wxIJJ}N eBܞ6·"3FV%??W[\ɡF%ݾ|ȼy󜞯Z ٌͿCBq[DEQ8^z%f͚dbEWfZj_ɷ3ro+P Ι]Uټy3NkWڸaO}SYaCSW!$ f3UU9s&\~z=F tFjqz&Od@XX(SNcl,K/ѣ;2i׮ڷ'11GxUUW..ԫWLTJr***1uv;K.aٲҳW/w5_2 r1vbѢnB!MBmR),4`$:yy$P?* O//Dž)iiiDFD鉫+X̸]sݻwFUU:v,uViۦc\]\#GJ卞/.dҤILl]vkmܸzSfrss:tmW!%>3^Gף( .l64 ...h4tz=f|.\hm6LXAAAJnn.AAneey~{Êmso^yf|cnj<¹sY7|6l [7ٳgѣGPV'M_|ҩNRRÇ #*2za9.hӧ;f SVb'8uS4}4o֔z vTW^~] [-[0nRxu_Bܙvxؕs M&:^Fl6STTNCӡjqqqqz~a2gG߾}  $""UUܹlOQU'K z~[$[&q&,Z<|ɧ[@ӱtYj%K#99>{gnLG}Lnn.Txz:wwc=\zZfeѧw/G=q;͖f/0ѷOocǍ^#??O>1ݝزe >>>~IF#qqqԩ]7B;- >=ͅfL&9rFCvv6^^^8qgb69>MU4 &zaYv9&֭[… #!!UU9q6l OѣU5:a78=];C2~xKn}D>j71.y |}O?D.]HKKeL>~ÃWj0ܹS@PU&{sNF#]o~Xll=?Sbc;Ȁ5>čBW!wP@9100JfEQ|w@XXVqų>>>^g̛7͛6n::t(#GUU `ҥ|8C֬Y)/nHHL`ҫ^F=gؼy3nnC% R|Npݻŋҥ _~%FwEj֬Y"sznZ)SJ]O͚7: h4l´V2 Tƶx'B!h@l=O.pA{JEs)jE.: m>KYRѝHoĄ{i޼?p?iٻhݺmڴa'8s׿INq4oތaÆ{HRRRɡQ^,##/@Ϟ=h(38}tpu':_~zKV-ٵkWoBBQbK=ϋ6>Oǒv#y<]PtZ  1Xxg shʸbo, \> cmLw :g֬YԫWٳg*tܙ+W`ˮXMR~}TUeɘL&`.7ŅPNJff&K/aJN嗍4QQQ$2"{ﶟAsB+*o#hC@{ 9̄UfEN}ĉ{b0si5Κo8̦Me6:v:UGݻw*q;ھx|~]-m۶2 иIc~JH#Q!a`+ŁC_?" ?)F>iuG_22T[×3g3e:uϏW˪0 QfĉKm_PP WQ4?B]hS?+~idQ!XA;#u\ Cw,RjחgltpfQOדpo X+VOxzz:ꄇw>vJDD5}tFF8{,kvsL&[&%% FBB5ӻwo~&C Wķ/^(13;s'? ~B;- Ry=\5xu֫bkj)j_. a%=k6-\XH&w1OW'_iPB"w"!!z= ,`޼yl޴uСC9j%&&c̙ jymk./̙9M23'|rCطK@ԤSδt:thOvv6k)U_~…BKRNddd;~ƒgB-ᛕoV0Ӄ"Mv..- Te]GIKKckZ<غe+atmv Bq0jQی^ (#V z w:HE!"t:-iT{UZWx^#ۢsu5zq&3B!Dhpww#@  L䓣59+b.2s uTH$ !UN //O6n@LÆ wJr2"(0///FJ@B!э5kj9|;wA%xxx\ F y B!Dj`pϗBYEf4`CB*D`4a0+^G*G B!͍B!(B!$ !B B!BB!*f!QUݎf%ÛNWWK@B!͆j%8&>>2 ܜ233pqqE('Q!"v;4i(X-QQL:|BQ器REce@D=5Cw˱T B!DOŏ?iM|ܴE2 _+[H@B!rfE ZZj[a@2K>(Bnb>~l63h.]`x3٣;QQl Ҽy3~سw/Ѻu+ڴiOp叧Nh޼Æ c=?QQ8-CF1>uGYFF_x={ШQ ۵gqСC1-[ЬYSƌŋ9%F}qD4iLQQlDEEN<(#F8㡃=D˖-oΞ=[+Q!-hACT hʵbo, \> c͓O> _ai__k#J:Z E*B!Dˇ!J` /\<ўYA3mu5s}knU-U6]h4:SG38LGYNcƲj* }uԱlx{{3qRt1%((D; -W{wƸqpElBHHԭmב_~gǗhS^RDS QBQM:{X\Qth@Q]yE<ƍ̷yqIPsU/gfatjg2v$ܛ/b2Ċ+ӻ7:aaݷx<<<W"""9f;jE#?^uB˶mm.bv[O?aX-69JjbB!̀xRxWk.V*Z\ xcezBڵmm^ώ_e1e33rBqD:- m}L\텠a0;6p]Hn4x,YHHK.k|<-fʔ) F+g K_׳`FšxX~=Ce%ѥ=Xt) 5kV0_no.]),,~t4~~~;͛ x &- 'ӡC{Q\+LNN!<<Ȩ.B\|t"##K}{86<j9;ӮoXʈ^r]AףPUF#_|U+vv QDQ䐔D1r'B!*ŋٿMjOSUݎf-_xӻ*+4 g*YZz:EDD2 B!DHMOYӦeZfaZ ySJ999ŵ>ָby2:-i5֭ BQF^^^֭TnSPP@ØFv,R멪j+v8{F=xzznxXʼh(s Dzzzr777j׮͠A4rѵkW<==t֩KfYy:6oL^^^ ii;v]huOu睲wPPC퉭f#?DArMfܢYm W4uBpqafw bbFxW9z(z={%qKg=>b箝:u ///b;t`O ^nLFjڔ㟥nMN9{nv;;wڽ{7>y6m_?ŋ1gӯ~֭[Ʋe?{qw П{nZjEtttC!Tܳif$הϡ 7qTՈ{u\mVy&tz^J >ӦqQj׮M]_+'BJ1N‰'ׯOС|ǜ;~ /STTرcyꩧ8?O)y9x >,S|lQ cȑ\p#~1H%y^6I߄ژ(bBa[VZ ExˏxG??;vPF Lh[n]c:w~$&&i}/"'ށ1 İc')2hbߕzsiذ!Nӧw/6mL@@`sRճZ㟣aLxsTcPb"͚5c 1 OOOV,_NBB&%wZc#Fshа!s?u߮Een3g`qKif8瞛@9v,)oIl>tMGf„SIDATƛl3O@v9-_qSv~ewԉzm.]~ؼ믽F~~>|c(..;LO;ė_]$Ĵ˖ӹsg"##>m[nq,3q E̙.;n\sfϚMNN_~]ϑ1N/۶aXfiܸ1 Xhot|Ws鞡_Ny|HbcciӺ3gLwF3vS۲e >>>~IF#qqqԩ]j^g^4hЀ͛6qƛ7WWk|'ǤI2x|rmÛ5(((E+;u{n:x\Dͩ*. 5UgC{"%7[#t;NeQKrbcM|63~N7;C0爌[\6t0]55r$ >p6 ///yR@VV/"ZziԸ1j&--Q?77ZSNiY+lܸqq0s}GFF9;wb4xZ-}cם .!mڴqӠA~ UUiҸQmܻwOsv܉]vu* %&&˅ҥ+nnnN, ֮]СCQ˗q%էo?Dz|}SۭGN3?%6 p]ic۬nhvYZ(6wqqѥKg J6}SnfެG<<<ر`0йsgx3DG96wQQy37m)'c3|Sz#aWlݼjm`j{,]E*$j={:*QAU`` :22\9^~7>Ur?=^Z -޼NśVTpj@%-c,X$LƚwޡLa!TU5XM\Ϗ˗3uT,X֭[]]P?c {|ۃpW%">\lN}e(NN3iZ,\~ZztJz 33y)w8n^.$xX|]wN޺\SS/z4Z==Os? s_4//@b0`zիرϵoȐk'|I or=ir[Uo'P&9`޽nZ"""݆T 4}{TnwGk<,UUUk0Yfq<+Sŋξ넎 W^mZ+WkIii)c<ń bu$?@Qx@XXEEEչm%=}7nܞ?̞[hZ&ƒEII1v",,xH}ɩ՞zjOd?-`dܹmJcKI-9@z.222xGHKMm2D5u#((&]Ϸ9?Bn SgܿroP g`?o)EXo?|L.\pbpЫw/^}U*+lpni/͛xk{\\?b۶m,]eu|9}qOd6˗sl۶)SPvX,,]To3(+/"4!G!O"##ۜ#FP]]mvݻy)ǍtjJ;w?#}׮V8l׶b]}88xk̙nTU^zx8uΉp~23s5hۻ->q'`ܸq:L&ƎˢqQ+il'v|xZ/^d9a'{6Ӿ5uc'|zk[YY3)?Bn 9q8u56aQBB@ SV~{xhDFm4!bn9]]OZZTVڛm2술hdΜ9$%%[h4z=i7yfC˴iŋgѣDDD0ydo!::@~lz3lXwU^v/oɑLF ѮXϝ;1{,rrrZaVy:<;= (--'CٳgIM@dd$'Mju~= YYY̞ ' >h\~;X0O`KL1|m\fo=eTvΊo2ѮHƍ),,$6.ٴR]S|v;ӧhW님:u Fw߱cv3IK'il'v|xR絵R"5k֢( )))9ٳg֏nCzz̝71s˜9sқm(@ĉYTU㭀 0LpP~=rNt:* tZ.\ȧ'55g9PE5q%JE&ki蘘lM*Dxlf$.Lj5CYq?71tz'NnJJPgfb }*+*xAٽ {g5d|tx!!y翠j{>Ûo.o~L{EZ-&?;ƪfwz:GDnMrбfZWgfW6ظ8̟OttސƢ3p@RoW%LF-9IPP0Æ %KI[RO<97 ֿZot?VdӦM mCOga;s)--婧~Iܺ=ɏ྄=_n׬OP?(zFt5M<'ώϿСCv8JJtGEQj[1;K:N5#:NNN.=8z^ _>H{1aBQ!~jjj8uš=\t֞TU]*m zxy~*W.rjN%'Bxx:t:f3fs|n.h4rs8y,aiרL&E픈X4U]+_6٢EI|<zKQ!ׯ=kjOZC]јi5 jDQVsTt@2 .]$h.%B +++~eeZ,מ1ͫ Q?UUA͛l6)!x{{^i\Ԗz("!Bt{ 8B! !B B!B!BD!B!B!Q!BH(B!$@B! !B B!B!BD!B!B!N%'7U5J!BtsFHvv:{׭h4;FoUv)9!BnHUTVVp.;>h4Nl6cرٗ>RzB!PNN699`6t}y[_(++jQ%l6)=!Bnd2DHp0fv7WZ->>>(K?vbB!莌dBQT&"ԏETULTB!7IENDB`luckybackup-0.5.0/manual/data/ProfileNew.png0000666000175000017500000005305111134631236020353 0ustar luckybluckybPNG  IHDR pHYs+ IDATx}w|UF)47AJRWpm? Xv++b[w]] v$J $^2ǭ3ϓIw33w=sy!?ykEYdOBZ-3SaQ]lǟEYoi޾ڪ׏x=lp[ֽ:x| MmZr naW @up$6 @Cv : A HhmA h@D3b\)@H!(7&yXylAB.u%`%Mm*D oFz@yQ.Ihfɡ.r&]4] g3l La΂u \ o܍&T܊EGl!t "55f@D՞+%xkGʰyOJD_e?bZ* !NkcMؿ(m*$pm3])- !b" ! q3b,S|Җ謉G6 6 r 5nݮ)ZN 'ADH"Q!V|d"5OBHQ \|@&U % e+7+֋3Po@hD$;q@+)( e=HDz KK%0R< KʒU d}"a"j&ޔ_c}͹cEG<6gDP*C`HDvOY ލAa\'H-.XH>!k@m @#@ECjąbeuGxGjb%"Fvb%8{Dr,\4/#Bq Dfo +!$ѡZ B\ģj|p 'Ćj >B؈ :ML@D(SٸtD # d1D%D$[HK*IET5t.HD$J)-2 TQYc0^Or,\G*r\!8AM1 ҥoDD@Pyѩ& &"@(qӈ.S\$LG^JV4y*z^yPTDDM]Sg[ KNzlR;ԧ !\bLv6Fxu]Eqq>_JKV`HVACI!Z Q+WDI;aX&R0);\5p!Qo}/D$XU:} sCPAB韨T`9((tIZVDh<*T%fXEyރR1:\_>"t$|q *،x(@΅KEpE T#rŅ[(:B 䑹 B, +[T[>2ec 6+ ې%m-!%aaxM̴oX1FlNE,|h ^γNҧwGJ nSߠ{}.F'LH{T:ƺMvoyr@7E wF'~uTG3BcbINd{LB^HAKCcO3Dzӈ϶>Ye@UѸr֋* 852q:J=@"nqZzǓ:jPkD> rx$J$(UYG·sB^}e3k2Ef@TCBjdU&$t ɨB拦X)yfyJ:`5 4YYF,͒1& 3b D s1 bLѨIp <>? @GQc"NϹ#{=޲b 4M د[lT6{;M.Bv!xϕˍZHTzHښ$gdbxLTlHvЈB\[>/ P?D)i$:Y!0AWBCy5@Ck@:ߚ=e\Sϗ}έp)tajd%i("Bt^]kZxrϜ'Wi{tm\$)ޓ>AX1SIY֞ٮ/y`Y ='fHtoAޚq|;3cΝ:~N:tӯz9y] R8ID-4GЈvəU1}Nv%4,prdo')d֘:Qoro;ׯS1᎒ 'ߔ~K8yt vj/eZ|>B VW~SW,]Y?֜Iv42{OVGLa߹ƛF$9Yue|HS{z͞2p K3"HY^vܓ_,.HxV5PaS<0B2,!t"bf@L1PL*7/ G)20,@D6 ۔柔u "b,nX'rQAE ' (L ڤ3$"g (DG(X# 8(fbEy* a`QN؊ 94D-뛠u kll?͛7oܹOs߽ϝsN"$5, J4f  8iF`ꔻO3(ΊsGvo<}+"NZlJj BHM#}:w.emd&4o!&fnae`^ tO%WZnЕG j+{EG;Kn?-1I/~]N }>gPǔa0613#ÜC_L۸dLKix{SQU`{j8пKc'{F&Z)wQJ$̥!aT(ڒOV3H w*!3R"ڡoHt!1(#R&ud)"+ʹrIUجE`"WDul q`5*8J'$ pM`8>#h"0D8}q05 kœ2a^ C|S*TMdo|\IX5HMӧ_y>gGwܱpu헿뺦i90V@A"t~Օ)>)=qMiZpdt\Tri"pʢn0)ܿsF%Mg룃jjϨ} xL5HnBz}:c|SF>k8Z6Gc=z*jݟl/]:W~C5+w8rgiنyr-+8 \\gG*:Fޯs un'4 `y]Dj=Iy :=&;2WCq=@3K54"썩2D!PHC.,NdTtA/ј8F9Y pEQ5fU"i*I 1 ! MU./H`S({eJ:#fi1{tNeMtX: u@vMӹ'&$,}]>? _yEץKNHH9 :01"n[=fw$_W{s޶NՂB@9wb G^tIFt^&lsP~ $61.2>*}i} %IG/vG5,2O u̹/Q-bZrjFt!,j<3k]b\pE R.%\>RQ s'ȢB_1z1~eŠZRV[OxӺ_垳*2kDK)C2FtVL} \v[pgi[,zqND7Sl.̝9"^sVz%^}eڽg:QiWu _Hb]6* ! @(pGSsQǣ%+cmQZ\8*m=%ݘD W$: Y gMBX" c\ eA|] ިc"FqC 8QuVy1 [Pa^_d+!jBWݑu'KBh +y[n O  (+R4މ|ꀭ(1)^IS6Qg +qLz_X0Ғ>(2=SQ̾11a~U IIv9ڷ8hZl! >؝ #IQڈ }:@+6 ZأSe!!D't#߁4JnuQ/̍ (  !GFeOtHn>75:߀ϣ \ABB𨋡H"QY@(FI2d% {!2X'M9 <""!]80_PUaH]~DZ>VE 9_kv\n#:v8yꕟToeVtt竪q OM ∌햆@£Cl`* pBlFnR#$Prqsi\D~1P|‰We -: aT=U=>WWxϔ7tlt0F}p~ma.й+4 dK ^) qzD-S\PTqŖW7]Oz4l{꫺ݙ-ϧteĞU}iZ;WN vi[yR8-DPaj<[s0*;5:LJgk0)R sVc!4 o>1!|Ms"V BvLudt`~'LJ!pz!k BK6Y^,d=ٳ@Pv(2;ŤLub]3սJu "=bAtI0~MND۹:o]}}XhCv{tRҤi7DFFtU~XW[{Ё55ՍUŋ;57Bw=ǿ9'c@bJQ#狫Jwo4!4 0F/)yp@4$nD? bH!FeuP'c a.ۅk'<zď9Y̌-lD5.^haV<hv'>=tcƅ$@X@J Hium Rza AA`d)|i|B<>2ȈJBY՚@q GޜqDTK$G[ /s;R[F/E}*$O0H4tۥ]]m#{A<~P]AAO=mw1 k;Р"9\Z3'lukEin8g3hĦi( Hfa !u 6,nb2D4v8]¿/IohZ6p") P⣨ފ&FαEYC-DvaళiR@@AZ+m|Cmz "-(Ŋ*\5Wn}e—{1sz QXeA4 (Z.CȅK<, g VPδ:%| +ObR$UU0D,X.N !]C@b283l>b7.3A 0 w8Tj:; DKյp9Xr<.Is:^Q/wӣwQrw%AȺxN&(D#"ޡ>szZBmw2Rp7dHTAQ1(u΂0E4cm G]V,_NГ贑-ԅ!N{dn/Us`2!_l0./*0zO !׏@J*." XCW'L /D,sʳ"l^fd/JbQPf@C(抸&ʱtO)yE@TM e& $9.J0p%+E_QodJ^6RUmQРyw: RnwQaqgLٺ@( (U+(.< @dhPt~f+dۢp޸ MY_AAfk TEEl9,w̫_x^644q r)Ivl_QP^ 9#W`аr>bHP KSm =Ny;HV]SpJy m"`\/}()T Pjj$|;MP:.zEJ YNiY35)TOx;S~eiw %u%ʋÆ5ntҽ[>5mǪݾ@A>SXLBXt|Xl%yk=ఄn/}LtC>}JqM1dpuLe^\2A]@t",b* k\ʖf YBt|q-D=ɽ-/ rׅ=C|G<d -EdX1^(ici T[@SSY罰.Yg<+_ѵ88ҸXT}DYHM*W#)Jſ],d`|| JR48pJk$7^KBх'URp:fZ*,b|bD( |%PdD-rs+':Sxc!s12;kaK裔XIG rL;hRKYS 8\Օ9ͱ !73GC($J(s(G2ZezsrJ8bH/*G@b3GG(4U25B @ |:FdVDdI%!97bcD'Qg c 4IP :uEqN;7D8Nܨ;f t`"uql z,֓Rح>ӨDpPJ%ff鄄ք-OGY|T%gD{\ec_d<QH@侈&S9R5rk&Z(#s&MԒ.>r)bqR uute4eⒸA8WI:IirU JDG-nT | +#Tt@.(b)mЌ)8q&tZMxAD Ui2@#71IFv /=%W\[FdGT̥!HSEa7/< +p`8Da0+6 R6#$@ )Z5AB74+ xat&28]y|@̓Z ~Qᅛ4K״yqMpo#]}]⊸3{1dM,{r'8t9BSx,s1|PeR1( qWaCf/.SC5B 9(Ą;QIhf@ x4'Y3?MzX~\&ZWԵPPa|T G y }D<1QC e4J=?/Ay))6Aj̀Ar1So&|Q A.Y _RQeh% QXBjşdC0QIUĢԢ+W% kA"Of Cu|)YV4v)}l~SK!`A~.ɀEH*čSŁClR P*lHҡ4늅s^LPBO p@ijlע@k0O_2T)O:dJ농6zO23 VZC{ 7M9owSD9U?mCys:QM3XTRh`L̗ C)(I@g 7DtdꡠxpƊ/.s>}WU)ɀ<+UfzneX7h&-[I'X_F+j<9/~@n]媥wfsӾ !"GԪ zET}NjFbG_AA~1U2BLdm'|-" =q!0f'BřkEkx󯋢]'jP *.˯I (&E0`?%R7㕐: SuEdHJLǣq gI9J0٭gbٕh!|6L |d379 dtHey /G m l9sD-qi*W =T B ƿ bD-ڴ.fnoe'PT@u 0CR`gLPV_dhК7a?{UeBrZS2eʆ{$X 9@aqJ":DM'Z:Iq 7`XGeA/0 Ņڛehk625!h2b*՟DmG.tYt [WVnjuIdՀ1hRv2UxxnV=oV&nj 32 x\e]7P^Bh8Y42~FI؎01-Ug8 52uЏs )))?O5bEJJ_HM.{]~̌ @,))MIIH*)!L Dq#*]xCDԙ#Q 7vyyiÇ L`~LLJWV^6x糲9ri6Oe"~IIni%''`qqqrY7mtm$G7RIIIJJ Fj$k9r)kȠ3}O^DTJlҤIGij ~:zy틽Ξ~^-[ ,;AGrss_|G}Tv!<? R*jYx$e B?jnNԫ~=;~cb.Zg~J&xShBVo%ѿƽ*-c lj#w t]a֙6R($=đ.::JPZ( ڷď|DM9GaaaQQQQQQNraaaG}8iҤŏ?ÿSSSNr*Sol{,Y1nܸ_XRZ:y?|Oؾ}̙3RSRlD\`Aaa#<~Æʿ/I9tgNINv?_ O?%KTVVB~ӓ i벳u]?}ѣv̜yMS|k:dȐqcǾbIIɄ >cǎܴ2N5jmƌ۶ou?7zaCqEEXUQ' cƌ&Naݺ&O6,y…+Wt$++O>MKK۷'3O2yذa .\UVRN>)=͙swYYٜ9s޶]qnj+3x֭[oᆡCN:5;;n+CSN4V@oHn_On2dH~~ga)Xc ^nj^:tY 6k?lB$[zƌ)))]wݺu??v;︳͝[VV6wμ۶DUGY~eeYǯ\rʔ)O<#l۶m֭{+++;|j/qRSS7%%%ʕ+M.999++^W^Wϝ;RPp)#]SL>|ͯ f2bD~>ݧ~6oٲ{k&mܸq…O/]g]lg~PQQ.Y6m݂?ǟy{n"U{gҤI7n\pҥK 1crssu]G5i%,X0k֬-[̟?&*@Eex⑇޶m۳>W(99jLL=3iҔ͛7?hҧڳg¿\[6Y?ƍ^{5UUU{O?܍wq=葇޼ySr6nXQQ!gëH's)+s6P#}>ߡCV>شi];/_|+)ɦ܋2}ᇹwY\\<YgWcFPPPJJ^Kэ!dРn/\3q" 0`)333sԨQk׭ 1$8?6\ANMv? z۶3\;uڵk YH܍g vO>9o<8Ez̙p8wQSSŗ3G =kv\\&nGꪫN_drLwͻ]v -zsnwfrsr0`׺\QF^6<}]g7޸sNq箝ii@)>9o\ !AA.MFyLӧ {ک^ t5&d1tN>OM d^>h,'PZZrĉkillLKO3ءCM]:WiZ\\"'&&['QZZrkLQMWXdi#Gܐ>(UPpΕ%&&מ!&9 KB>ܜѥKg%3}>'O̤M ! "BzzsO0sߟMP)1\Ԁ:$&$|K$ A.UjdIIIRBKӴh=ruov3\ybRjgϖ?~|=?O޹sM7dz8׷=v={O>sΛnɼ4|>vi=ܥW[*)-9~ECĢf:uYyYbb+cbٲ9s~WN81ׯaF4/z^ fԞjiw}/8qw}w !<7'nwҙ.Hhhhz 6L<#=?yf/~FuU2бSS%f՞'wb 2^EvԦl68w]vۘEE ͳA}hbPcGy6ǘ1c\.h~1:u]?W^novvv^{-22).ф]L̐!C^|E^*;w%!|rB̙!p >jjy!]TX(4Xm@EGEҒ⦖Rgm4Հ]1Q+,,JLJmV}Æ}W^ꠢCBfKMM]z[~gWEE `"G=//}b 2䥿H5$ZT >O#-{ŋ{*p8Gd@CK.}322=ŋwѡ}o{?~|YYY_?&LHJJ 7x<̌{w^eǒ qǝSSUBH|~yƏW^VӮֻwӧgddf~'أGυ>'FYVVԞuff"իϢE?*wy@A?yՃmv|׿_OOK<ݻuu}ie<~z5A0u8Jo1d"QB=;v츇|9bDTTX?wܑF"׊=zN6w3g1b\=ho~~?RC[ɚ0!))aĉ^7##g!ҧOG}tٲgFuiӦo#ŋ}ޣ~h~"ڲe?7ztRӾ`K#6nMC/8:|8=/[象CF7񓗟_xLᴟ뮛WSsT9' ά[~j3!@2 'N)zf];mりwVb}IHɾlXV^6{K[>AKC M `hWbL 0Vх xΝ:mɩۧ4 u.\wYy~L7D(yIvMɓ}9M Tɦ1۰IB/;\$Jg7p}>}.zhbxR-;TZ|as&&㡘խ{9s}ݍnw\\ܒ%KC؄{ܹsitc,]rA2Yk (l@ 1ʶC%P΃yѢKN,;;&f"6ƯASl\]TWM1֒]"觥g7@C,jd2!!4kbuOw̸??gANijb>lԛkt Z.xj,4SZnjMZ6 e_£j|yU4uԏ:D<\<,j.Upa)]~N{gYd+w-"(YHdE>Yk,Ɋ,Ȣ' ,Ȣ'"/Yd!2|֊,Ȣ'k,Ȣ[d|-wfE>YٙEYd!EYd}",j}b",ɪX[dEO=",\QjF,͐DYdQ듵wfE>)H8gIgzjgGͩEm3~=Ԓ=z^jWzI,j,$Ĵ/~9}FFf)S|M(--vuV;n܉'kȑ7L_ng=~.*,9jTUUl[neȑ3gܰa|L$nm;v]˯\3i҈#ͻ.C-+9sfhhWtMINoE5C]JzꩧX0?7'%K?S^^6mz~7 ׮}=oU{9jԦMe_?<55""[egw}zɓ'N\_o]>s͗_QXlZΡ{݄x8utNnq:iE͐D}TBH˥iZ}Cw7;oz5lI&_^anȑ#n,ؼySfLOK\a!ݞ¢"4Ӹ{{==?iEI;3E?!Vi&ީs'B4+ߚ"ٳ%'Oh{wcc5MݘTXXDĄ24L+}6Ujx;S{ǝw۷.Àf͞=bD2I,d(Y[{)i6lxuHEϋ_sn7A>*AEEvM#GKcȑ. b8('tPt]?_^nꧠA6lѢ>.C8a°C[r"]Jjlht:>oŊuuuGm>C_Yx9r]w1!aԩ&כ`|ATTҥK{=#fN6ԉLOO'@ Lw?孷;n/Eݻwo>n֬Yϟ~^ݷ;z̘>|t}[ .+?%Kr+w?z̘ 9G3W^˗gRSS?#F 0ࡇxq &gi;vhj-!YHԦE>{3gc ze˚%N ;6zX;Cg1x`рJsq{Yfϔ:Q}Lt˨ѣ}O>mlt8ppG۸qӼyΜ)4ͦG:t ͟G^bEqqI~g}vonxxkkky s6lܸvWDj]b6E?`WG+/?_.|4..nΜiC ޻w)^o>}yKZEi÷zKXX믿xbM]uUoZ;vLڸ1'##=22g5;xݻ=_|nݺKN 0oaQ"xaVչ}0YEgk-'ol~t`0iz:',wPWF7g\!vzOΚxMMMua ^e׮]w\~zvC#‹wa-@[Z//d!Q:}iÇ/'-l/d!Q o:t.}]ԓ?SrHY+S:Vm=;ZFN- ԉJB4ĉcNG[a<~6ȊZB]C}U5_UBpVP6j{ȨаVgᬪ޳kWRRr@2ېCgԍW;&ܺ,vlŷ^؆t'E_biZdddeeU +ZGJ@%GD;o0*-笵%i=?\@2{OLF[x=h.7qc/buPD|C]vLoxޕŨ#ñ9z/ʵj6y-+IENDB`luckybackup-0.5.0/manual/data/manage_logViewer_withError.png0000666000175000017500000014434611352706756023645 0ustar luckybluckybPNG  IHDRs pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&,tEXtTitleluckyBackup - tasks execution progressf$ IDATx]w`E.NK!лHQPPҤ)|UzHMM-TBI/$$]~33TKJ"OL&<lzKpN9}l.6M>Ǿ(BzGnݺwӧL<=˔-[jDZ*VhZ϶PgDwBF/jMH9i G!-R!,+yRh$bU%UjنK%sH4ئmdz[5Ʉ$12эE*%+$7Pə9Л,քc [_TâA']kU7Fy jiלTR2qvA*Pio!{VFJ$6H "tbmIhɘ.7PU`)ۂb 6 ӝA#1DLF TZu&izǏnĨ9ZkWP^奠BťLjժPfK3+Q}=q6 ,i;UR"@ki~𩔜jdeeeee=s&#C$*舉 "+0ja,/[=(FgN!Y!AF .H͚5v#Θ5!a,QBOR֔2^L#dHmH&MaCh!=zV9q(dt3ɢHG$ׅt>u'AjZ΂89-#k=Ί6QUTtU8H9*);DR_a RN']kҝz"K~g͸r gWQmX>qNll읮]6jؐaaOHg*gU" !r_TZaܼ^vࡾ}M:=U4K'!1E$-]G^UfEv uVA*/\x(|YQE!q>*B HѤ:rf@ewX="'_Db7s5, `;$&D'ʨjN0{7ĥ:  [M CkBGBKC2b'!`T%J.9̞Ya%aa6 cvJ=3:IJ}C8))Qjp݁2ϳn=:3K&j};ݺvmԨg>u{n}ߎlf6 BwHV3Z̴>d|"UMW|3^q҉޽{Ӫ99Ov}L<^}{ՈjUFO5m͛1+T S|CqM79z$))bԩ[w!Z>85kMʖ-p¹sܸyoѳ'O:eJڵlJo4i~-#1SLWW] 2T/q0L׭;|0VnݺC}ִbxlfnڸ{E7~NsK޺j׮#mX-PכL6J*#gVl^o@-"]<^cĉZr׮]y_~:U7uQ~}q#Lׯ_x&MFE->y'T-٠~}y ^patɇ.]Yf>!jU:uʎ;ԩkn pbbbz9{糲-:qI>q⤈bիW8?!!j֫_ȑmڴEUDzf } & OKK7oӧ?~oO8)88{ ,~5k^r9//BŊ=fNBCC`e+Vy!Լ_}ujհLhH0yƍ߿o0RR 55u޼2Z8irPPqqq?̘q9ԭOFSR7o䜕 2cKy7&M\Z5ܖO<ĉ4C[lٳWF@nnNؠoճW $ɓ'>LIMLKKHMK=\1-!H, `Gt :dB܀V NHT7@ׅ Nt ^ t:],)5Nߣ 9pz]CRYd <~NϖK%6 Ykz2I+W"UQ ;֭̇;~6Μ5sUowj* j⒛O@v8'<zכ4!pELrrrƍ?l0,tɒ˖9r400e %F%ϺWϞ|]op'ccn< j볧222{0[4yמ={|ۙ2t{⑅Wr$!(fyڴG ^dIxxwlޣHݻw> MW֯pa,iX"ϷZ#Gyӧ ջrرcgJ(iS9z4((xeUTaRv:B>'2Nv;*UdԄtb֭lܹܿѣB&N8s OLLLLLܴy;w`1'Mp+WN|<yҷ_߻wtUBd.hpb:%5kΏ=>ܾ}'=888h NMI={qZ"j#F I?v !տ\~=]JJJNiemv؏IMM޽ۓ,pK/ձ"+٩SG#]v׬U FԩS$E|||||듓S`g$ ׯgtH)>>~~kբ0BsCLpEC(-$! LlN9a($1%RIъ̐!'?5k֪իB޹ݷ6k!tՕ+Wv\_Bb>ILJ#&t?ѣG_g%&&N6ϟ7wy$iffe˖ۯǎE#' y}s#}2ƍ4m-<\̙Ι7o>̛7INNÆ gϙ[Jɓ&^v p$ђ̝1z̘>B yyy_Ok׭C?o޸&))1ٳvĮn۾כ$%&ű`[ JY")Oxk߲=I%GE"3.. zDD@ڣW&CNerCng.(@Ea*!.rH4K,jCvr(RqSuկ_7uةKn:.];fp+VX@5Ϩ^/_-[\zEwE\A:t驺K`22qW6/>zhff9ٳի{|&M4<9">>Mֳf!9?fj*Q}ߥKdׁ£[nLȷr d4-:|0S_6888!!O> ߠAB疖'ڶm;o~$=pO(W\ :v8dP'OK.]. :DDDɓ&}WPPPgOd%Ky;|0,XA͚5o֬9hpI<=={1xq~k׬]{3˔hZq)xKf͚g?}wX=֒b!!d aȹ<QDֻH횐i)p*qB*Wcָ1ɭT`v`9NXX9,, Iz3 +FZ?$8mpu$9 Sc%͏io_r:4wΜٻwo`_~$vܟ~ٻwo&"O\  Z \j$bm 5Ty^: 9s[ Ep*r6DRtV=vdyLW77]HO_b?χ.^}j}ʕ+/\آE3gάYfADPe>>uZ|xpR^^^FQ>o&)LCxCeJJuua6^Rt`^f4=A7_>|[.`33te˖/_Dg IDATon߾}ZjBBB:ujժ-tcǎ]vMrJ <~8̞=Uw5k |vl,! yrrr|17^^^'~rrr*U8PrJ 2v nݎ%}DR'h=y)A9z(̛7m<<< Cٳ7+++))1++ 7o߽GsgX5) e\aRl 7~l2۝B3߿'6m6lX>9ΆZB={߮];_?_g+{-*~իV?n|lذaɒ%<0h Ξ}~lKr4hV:WV7n$XeCBBDeAxLp'Sbϼ|"cf.g!H|`7 @ #g0 FcAAh4 |m4Fch*((0 Fd2أd2 f'd2-b((l2Y,bZVlƷي?l6cZm6flVfڬVl6ϩ 4'DM- Ƭݩ%+?/oFNj1rʕ m6fzF{e* ){-*eRRW^5n^zr6}4bħ˖-{2qܯ.OQ:*U G=1Go(٭mD?3Plٔ[~{z)a2۵k_B H7xɒ%K,V`\v!Æ ]tYڵ_vر^^^8\~`a&Ny/7nD=ydrq^cbn<5K4yݥK"jԨw@rR222|}WZ]N }ePѣG{JMM{~~~~NRSSOf`ڵ3~ᅲ*U*[=y\\<󹹹{<!` "i .>3N;޾}'@*|jjj.]rr$9|}ۇ[0<< qZ*%!!DQFJJJΝ:u| 5VsvvvnRRpHߩ,jݺ >X֭۬ZT3+aA/cQ+~(% :sT6H%k0bV cz;a†/2s R LPZ|.]:85ol6';< NbT_)S^l?ձg,Y`~O gQ{߫t:杪5cg/WtIy~7״,[K[\uPjv}h isgζhѢt LKݬy +Xf*+G;N~)Bh33===իGx{{o޴yÆ GIJJZ2xݛuhh5k}2<=-m! ,lڴ)5ܭ[wBJ^9,sN.cǎLU:i@>>>nuGILJZu:tHG&VoC MOK2d…7o>bЮݻffzyz֫WFd7oڵkܹjҤɔ)S+UGz(މL4_vYou=j2V6l(~w egF~֟}HPh7n4xPZj/^Ҽy-[ؾ?|nѣ#Ͽ~~;wZ|cGSSS ((y=zDL>x }W._f޽{eǎMIM 7kּGϞ>>;wZzm6[z>t>J9zؾc{fFW 2tPҨiӦ}4bCw `?<gϞO>۲eK$O%9My%+V,}6BY+B`Hp}";uV歷ޚ0qRHp0  ڹc3fykլ9pР &H^xJm۷tɒG`S7oF޽]nrܹBm۾7nx\͝;wmݺ3v,O_0PzD)ˈK'K%HxȊ@$?A]%JOF$?$MS::G{H8 B8bk"z=) 'Ep5%oMgR1FtC 9G";# s$;chZ,].zgbW`*%Ԭ3W>Pg5/]V/ֽ 0/1TFqD2C߿ilO)e}y/>A2>dx*UdOEJ9k'OԬU'$$ x ++oNDNWP`f@V*:$iii:8n5jTcb>*A.R(Tl BkL%½BP .PqXLa9h 5KIRL 4(eH|!0%&i>2Ζ܆@-qxye=T\2d(pzz׭[Wf̓)C^z%I W09̈2j c:D$'#?AكϚ a3.nVLPIdBRb ,TQvrwO^_~UtL&SVV۷SuFaDb3/R<3R  ļ䡤Οgk7b g:.ۤIN;cHsWtiwwӧO'&s6TF-Jxf}}}M&``2yqPdt3~۶m8Uw9A)%7^w8,SG:I-mR>!TI<+];, apz׈TlRԤlLT,C)Td>M6x-%]Ξ*SQnΆD9K%x69Ƅ,_~rJHjjX)[I)BLB*/PJ;r/ޔx^]S7l)3T)9V"1<8UJ*.C!̊d%GflZ%rfwjY,SAy-}e({~JT&K%2;"kQK8AQ Xq %k\-)С3fO5&[0\ G9H,LFRw6xFB}9aْG ɟnS *S!tfLj:"r&<%Qڅ(DbF ]IjGq&ZE9B"b$ ٸ?BAI[XebE_Nj!%*Lڑ1,- M+A& HJ)8Ed!@ IT+qz@IH[9V4^p0*Ry2JK^Ay|D%]7Hq&}xp?hPKT s4_v9Q AQ+$G'h2 U551g7d']9 99[Lq]y)UPq*:YD-唅 X H-SRqD%%<Ԋ#E^Y5HUV, y*2XO4(Ţ l$$gJ 3p-X.BQg9}!D@5UT`/#1FEtBf0-)@Ŧ#EG)$VQRC32㓆MQNr:|j@- S]% ,T q21Rr*3D+&$Wߝ VE3F uzV5]B)/Q9Njb%W_ DV($A7Q:B>kG<54@Pt "_ 0bYHEZB}dVyNf:#Z#`ަk-K vl8Qt AanSdU_B61fj V_ׅZ0 %0䴚 a@:(&h,8\j9蕕BW|ڹᐛN倩8(K4E5N}e)NE| M/r-1S\%]iD_+cbFtYr倅Щl M QdR"u5H,H\*CBG(1a5:" 9q@PbnBa{'R2p]/P/ } #x_ހ>-(g <D|DV&p`^m(.:Kb;H;4%Q^ fdl g,:S@+MwlՈn@ u>&&&4Cb ExoIг-tD#"/%yNH79>pXB<3($h}O U-NOg-YfTy?ߣ^O56)a2Y3m \=4U7nB5o̭c7xM[;^((I_mA?D@yiBe@FPe[ZƱ}l5e,B- `Oqc@(?B5FxFD1_KHljIh/{#+f9-5EK-oml'Gѷm۴ubB58ȐFfff_r<@QLjUvܙqӧO UIU1gŨ3?;25rD_d|9?oNA7\FxU۷ɣ~=wӁ;w{U+| h,$ѣN7 4hpy-[y=gsylK!Ooߩf"HCݲeKZZj5Lqqq֯о]12>'O4 gWNhwww䤤' JJWy={'N0L'NX z.vC 5B>}`)nޜc6/]4hٳ'L2y=`0޵k)гWOg׮]{6u˗-=egv&s 4/nq ~;wn;C$D0q NJ-3Hbn+V( 5={-] oB3WSAr>|AMWUP+91*XsŐpC:vvzj8h8FX,}?s)ydճgZhuv777( ?~;Ilv<N7 4hp=7/Q߿~.+\9]R/?󎝻:wRbEWWW5k:#m=:wsqq <~ Sξ׈Ny;uݷ_%Kr`P"._r!!!!!!&O^\;8h8Fpuumov:^^^-Zظio߱qG:u !%o߾۵k%K%HM hח_WWPP<"0Ӿ_⌟R/ѠA 4~f[p\]]nZڰañctE ʕ+D 4hP8p 7IXXا#FTr򜜜tбxyJ E4 4hРACIPbҥKлwgϞU٫\p eoK4hРA E 7мYs77wNQo}jD 4hPd<_~}#//aÆ9vW^өS'&+//~%7nR>>WHLJNLJ^|3g-[ dti]ѽ{KTTQKs hB?~<Zl6cIպr 3vV6nܱc{hh6'?8zxfbcc#CO?όOHLKpA 5B ̼pbrJO>-JVޕ Բś'O~fΚ(P~}yBχ$';wŋ}>ҠA t1"Koy';vswQTRJw8HzUTi9p_E-}ٯ[ƍgϞ ۺuff&V~߷/--YM4Qm rժۗ-[յA+WpرK YN1+5B 3wnxxOOI&ݻwp Q;vl_h_o߾ۯb#[ 4hjLhݿخ]{Z*/QNhHp`D*0+o@RR`%oތ;AnnkKnׯWRRR`Μ>>>G5kfΝ7ksbVjAPVm|*?RrObR={իfocǎ? .Zo*^if{ݳ{w_4hР+ooyK7[4iVLLttK.]TFA?ٌi7l9jTJ>|dEz|(UT-׭&?59sA&3 {jРAW/TGЁ'->F@-+VOxXϟ?/^;+W&!xd_c rUN>| ~Dپ}3~8rܸqCj(J:SDkҀɓbK,8q3g8p]uڭۋUT 4xἤgϞ0y{ {׮S@O7>pYJ6{rRĉWS._lXS#~ڵO?}+V٫VС~}lْfZM&S\\܆;o~ɓxŏO(T,g O^βlO>=yAYsϛ_!fϙ3dB3,SLrJjrJjҥ_4hРՄ "0b#a$nE~:_lr޽ݻuŷYُڴi `+PzVTiq!4~#FlOGpssʵGo\_bŘџ)wرǎ!:)LM"\sp{N-Idrĉ'N0͘asڏ?x&- _N/n2 UתY4 _94j?_X(sSNYf&ѣбK4hР/}&w^ϟ#!117cbn;ztj {I/^>jРAJ5rvW>UjN;ݳgڵ&N$67 :tP̍Q#Gر$&&DE-:z˔)3nؽ{(xhOaX>߉'sgϝ;дt~;vڵk;FEwѣǸǏ;wc7m(;`EG˫]Nh% 4hxK-[z9+V$&%'&%/[̙3˖-cee?s.ǎOKp{X,_ZzlC?8xphhE `ժfKZ֕+VԴڴqCC+߰1.>!AcǛ6k9>:x~yf|BbZCtɱ7oܹkwZ'Xb'J.=~䝻?pCΤe0p ضm+vg2Z(===ٻ(Ҍ v{/"رE{ jK4c71*b+R vTl([QݽC?LJۛl*UF}_]H'GMBP˖-ׯM,] 4$cſҰ\kK-kܸy&M-[=Ѱ{oy%[=a'''hٲYfr `K6mv@ٲe?v,pÆˍ5V._{vg˖/6|yfͶn.d]m۶Vڍ7ݻ.qkך5o^fM!FFF(6rӦMFVkPNNNdD$B>W<|@Y~]]*W*Xz5^|_hVn'OؗӦM}NL<#۷oֵN S˗ngg}t%{j٢7kغҕE<|GO=nBB/ ToBrw޺֫_J!Ry͝7w͛ Yy\ u6͚7}Vll˗/_֭[wUFNUtpsq;;;'&&N6VVV:Q:t<4$a2!,, @OO 1!C%kKFKH]lܸW\Bފo4Cvޝ-H>|}۶= <ɓiii5fff/"  gpR˗1\Ⱥ^=3wʰ_իɎ͛("! 8;v\ ΏM6?m۶׷;w>rȈc$juUy)"hԩƎ~Xŧj5FM7N8AcqǏ;~/^:U1}}ԩ)ST/]WvUZu`TZfMf8iАDy##)b! vvv+&J.#UUE߫w *bKKڵkEpA^\\\Njj]]X,޵{ϼ_~aںM6A;vYW#H4lp~i__*ppX= !O]W#GwDB): H@C<"D ݼ}׭^jgp)'N4_.B90l'{꺉IDđRJYD"|&[M^*JM$Ju둛+rS>|`?>>]B!%FK~C.]܊2B033kٲU"BPG'BqZXA!b|׽B!Ĩ)gB!dc| !B%B1B!XP\B!cAq !B%B1B!XP\B!cAq !B%B1f =VD?G!(}Gnw߿,&奒]| / nmmf7o :(͚7/c^QddߨQYYYˋqq|}st);/R”N_xS?}|d&hּ]řZnYyyy]x1۷z2fb=^yO߾<{zm L{ ϒS?i+6Ƭ>k׮+BH c$--m?7iعBjUxhݽ{ݻz5m˼y]v455u.+ժUs2 #W1D뙳fծ][`Fnj=F斖_޼y&:thŊb[xzVC0 k.={!C}@jj)URÓ<|We]*Wzb?T.UpGs 6۴_5ʗJH.qu\R>{+N ޽}[ѹBr_zJVիUSM5;ä'OF RzӦMMKKFD"9SP\b-|mWzm۶׮]¢aC-[*>ϑT*p?"Dyp~BwA߼efq!*oծ];<"TRȋcu2o^Ϟ=nۮ}x][ "|}8qBA͟`;M:qy›w:u쐒?#dG|}|֫{JHV݊4yݻur…{mijרQ#))s[ls?w^9} q!%4IIddDR,MLLMLD"D6!~X*JM$Jv햛+ 3_ `%'<:͞m{G)_;޼E;wR>|KIO;wd?~3zcUܶMؓ'aҥS 6TK$ G|$ɓlj+oF tɒs˻wp)))N͛5e_:9:89:$$`_~r%yz6#N? gTOcr_;wVcY=trt4q”) %bbZjɾ8!88}>'GOϞ1:ѡ}{'G{g(|Tmެݻwٗׯ_srt!0V-[hld;evvv5n&$ʘ[NۘWQNG)~*/wyyqc޿_"\tMVN#G~,g9ξ{9"/]aӤ' ܵsн;|pءaG߷cֿ7o|Dx!HDyo&7nؗUVݲzT1X&`_|ejjʾ2my=㤥]vuǏ=z)А&㏁i+ӳ̈́HTA#k¦y,Ғ]RųΝӻG/_ڱ{ڶٵG >^DJ333?IQI |T7r>c?3fl۶uժ| o+HRF!={o>..Wʘ1UTquIKKڵۂ~sqqIJJbb۴is!7n\7NNN޹,(55f ܻt(sDH)8yהtFmۃƍ윘8mT +AIiӦm*}۶ .w!C҆jnݦYo݊|˗ܺuα ok/A" R=uC2 bccӷ_W4Ժ1t1ukUfffVZ%JS.Zg9:\vv;p,ޡKqRKh(YYYyxx̟ :a{N>rSNWP 4 f̘0̒KG{>}ZYYYYY;Udڴic}`'NR<>B]c 0o5jǺz왔b\\H޴>}ʿAf6z#DDx8tDcMu7n MOmׅ\~>ϑJO.o9"0"k -h7|}۶=fngoٳ M 􎈈xuNNwɑߎТiZ+WD˖/5ʏ7RJ%=}ʕe]vSPoouۇٵ 1h ;߿/J/_BՈ=Fݻw?[ o=zx4pdGG[_h[1`L(''ѣG'MТA|}|Μ9.HN81|ӹ ?{k뽇y! {}&@#?-;49bK0}9ձ_O,u!i{T4wp8|8͍#ûw9}>-x=I Q$44dرΛ7id4ws."++kAGxX(0-7KNNJ5kG ~[PNX(񱅅bTR Cr)g_֠oϟd_DEp}I.B}POze`ff:uUeE߫w *bKKڵkE" .^/# Zre333kk:uN83lPR6Y[[{xx>3׍.]oG}.B,ڽg/ԭWںM6A;vYW#H4lp,Nqpp8|8GÆ9U#to$v7?W^]lnnooիWh6(oOOO{X\r#G;14ӧi޼<(іRHܟ#BO$ lEBe?-;ϗ¶38xʔcĊ.Qw"hӧm߮ 7BJLLL"u/*j>?PMJ(BR4 {*8=ϕt.])J݅Vcl!(.)Zlrժ) ݅cGQ 5,!%]_B!cAq !B%B1B!XeҊŞ9)LHA۷{OgeeZe5iDx{A OD|;>>>xǎؔd[[ML2u6ļ  Ν;K,>wܧOU\]} 7n)GtpF?zg޺Uk6m3{Os;7oAn|ݍ/^~#aVZ)0ό 6(^?6\œϜ]lYӦMքpY]ٳfL劃}SYk֮vFgΞkݺMnnOM.>BN|389#RwkJ{kx;vX,Xɓg\TڠAs~h߾JYھ-]$,,KKƍ?vlnUV {my3!#3sE//3f.]Z[(fQڶK.)]*Wx,Ғ]RB_?0VZQGK*[1E? ;|877C"__$=ycllY޽maWP^%B*ц 47QG+/-D"V+555>|?ްA}SS/_@H.sɩ,uCS&"ݾB<#Hz{?N֭n<goh4{K. <("2]HSL>t wVVVlllll*U`fq!'[6&&:<"Ra uЦUIII?ϝ۲ed5pm۶.X0Ҥ_}˗/׮]{> `A 4qcgï]v2=o&x]^^)));޾yk+Y7r̙cff\ؓu07&R(^-!D3;U\ß??Iz$Ͽ*S̙3g3PZz}o$?++kuk `%'<:TLrΝ",? qqqݶ=Ĕ/boޢŝ;wV\uɃRKfBAZdɬY8Р~r_mؠCf͚x9ܹ/ʗq8w܍:<2ꨋkJJ5k _x[6%%JlQo[UWa 'guNyiX @H} `ɉrrr=z4e:LBJ8)KBCC,[_666666Xt)АP{KÆ˖/pbB˖- c6_nԨіrOJJ0~<0]$AAlڼãtb}ӦFy{<!=I]0 ɗ{͛O>(SNyge7677oҤɲeDEEB@&P̿iӦlzVɂoN4f͚LN ڼYjѼ% !BJ:A]yOU/(xxm Q{cΟ;7͛;utҥ/^]Ծ}͛7ϟlmm|kr6NVgZn ɓ'/ |׃J| ?_regp\pݻ..ט 44d ֬]۪FM vۿm۶666~~~&MFި#=:](7q͛;oܛ7eIWܥˍ۶?911qڴ0gK.aCMe:N>|PL `5UV333Vuk޽[`\tQn~)xǩoEm ol[paTھ][k1۶M?>77w8Hqںu>IzIҒ/_PF 9BJ4%ujdž5jVLvh5jj[k]6nQo%>ֵ&VVV/9 !!Ak۶mlʕ+˗׮]gTnh8StuuzxhZZZٳ'+Vwn Aϝ ›G=xF6?w-| #á f̘0̒KGVzH*ft,{?vǏ999ϟ?ߺuygV+W9DUWV-+VLL|?Sܕ,Z%¾zjrrc-TrXbO?H$Z|Q~E&ІP~~nLJvĈ.]zQ'\"DL [[uj0rXſ,?[D=` Cifssskv{>[ & 2`7{-[4s޴qpyTX w˕+w4:Y`PkǏ:D ];v(0۷o ~X,^h!wx \~NݻN;УGv_v< #""jQIml!$GM,z*aVZ-wspt@Bճo†o7q8Q_ҹs\ĝ+ldE^zdaa?׭WҲnz?ϝ+J4bJ///++2e :tC`N8pW^fff..SN[ZÎOcP"h}{]BXliiYvm??kZ!?i +Wvvvɏ=zX[[>|Cj@0z)S;84 G%plJ#;7g$ѼE sss{//G)(!aB Dc$!PI/!B) K!b,(.!B(#D'%⢍QIB)hB!ƂB! K!b,(.!BB!ƂB! 3z)!BV8K!b<pB!%{Ϗt 6.'8B)b!!BP:Cg!gqt[K!b,(.!BB!ƂB! K!b,(.!BB!ƂB! K!b,(.!BB!ƂB! K!b,LODZB!|yB! 3W  '!R1B 4T ͗B!XP\B!ca2t+!Bi/!BPz%B"F ͗B!XP\B!cAq !Bq IDAT%B1B!XP\B!cAq !B%B1B!XP\B!cAq !B{t~QB!E /!BP=aŀ 0!pޱ_`:*4_B!cAq !B%B1efb,T XvHt3KB h4?h׮kcdhM۶=+QL0yd,,]Ǐ]e]ժ JqG;A=l4chۢuVČ]b4MÊQ /!۳@V*k/cйsdN>꣱;vvիQ owQ [[̛W(fJq #!xz_co)H Uр=CH<=KXI27GϞسϟwU4;50| ;q(bLTss)]{`j }Ç)'89al(;;WiS;acG5j ?ԟcT%KШamFl3䥱t*G2e䄥Kk  [[89Up"6vui||"i@!.`m֭eQnWL}!tefHM-i":LMaiLAJBVTHMɴmGYchz7]}ak ;;?*8ލ\m{ʔARGYoffxB4١\9STwkn@QN-bI23ܿ'߼r.!sulӻw~0"# rX}2WiݵkeJLn3WhH\#W-dڷאaNT*(CMxz)%سiDiI`-uS(ŗEh^abc__kbeuӶP[pD]6 80 cb 0ɓ mC;k@:-wYchg;oo0*)%ρ0//6x+PASmZc`VP*k&`fTʙ%|^yvSg<:_֎+!s~)*=W஝;=;8rwp۷yc⣇cLC__rD"N`]! .]r~=RيX2|#- '֭kQ* $;}5jfjU8 ei[p!W-_ N;w'|` Z%(CMx/^ct=&&JK[a)f."m/@$7!S ,,__qVpը}{t NFn.UCn.Μ_Φڪk)HXgYchft)=CꈋD瑐ݸK ? dܺ% ZϞaɒ@PR&0z ߭i#ck<:W /KÕByX&''ٲEr. /^*{%066  ZPj0̳g ԬUm6df.;v0ӨO5B\|J[[K!-K"8I <3S2WŸ f>``a b&"Bh#hRA:HgG@%mUh;mu:Λa DE߀b10Km#o 2Hԫ]R=d͚ ܾ-{L֪EKl@Ql`b[QxD$|4IxԶKپ4X[//޿Q!!pwXt숆 q:j pPl05UZƛO寴 5%l4_r++df"566 SSQdeiːF^zikF!-N1Kt*B~0 ޾E2+c֊q/>\P?F&xϞbET'O=JڪTdw5*u07CKKH$HOlyzm9YYʿRA6V DږOǀ\ G,Xc⯿iS|IGxuΆX0?{:}ijj]T) ssSH$21~]#f~H:}#J] }G/=<T `[:ukܸ\ P.T3 cxϻ+r4@ꍦxжN!;MȂǵkJ;m]!WuKO}\]!kW\$;zS}»B+@Km[B#G`٩ [[ \Кȩql'|W7)222_a^5.T㣔D`.PqTt!m&O֐Xqmk\ɴk!D 7~.m!D"4n˗HXX0맔K oo ׸PB~Y{BR8yJ)#$d il4uۖ5+Λ~ ?}ʘ2kF-{a][ԨXX0SYBFڵJo#tlQyƆ:2ffLJM(Evky v^щ0@0U1{66mRJЬ)cuY,FD-CÆ :v:f bb퍊! aUxt++4l%Kss}2T PöEh0h50r꽈VƀppPqFUEٲ]u_]ʖա8 $&myN]cNwocںJl8w 66Nn H1cdWnq&d4NYR0|8oWʡdždmuJAP>)F$|D;ޏ-[燙3la2$æMX?XU!pܽs't"E#$C-ٕ+F(aox2Qyh(ݻ`(dH>8Ӆ>=| VŒLXXhaeeʪ~2J>7ӳ'-jQq׀|!,i_¿O:uݼ@!/{'##K&!##?S%B!+++yB!B!XP\B!ca(\Yataж-f. P4`=2ew.Ft\3 aXTss8:gO*%r3fְ@* MÊ5\,^-aby%̛j`aj0o^c^ŀ([hV3Ws0T}xFBLb!gjj |NDϡ`GFx/]q8?Y~\'MLw/ך)0dH(_رC:(ݧ>TT} }KBB_:oodei͇;]f =RuvRڶӚS~~ BJ99u}ijjzXw؉9y*n3ӳk[ ) R)nBUfͰn܁Dt\__07GϞسϟ5n]̝75}P4"#H.P~x#=p&23tȁWT6=hg!| ލ\m0;WiS;OKXh˖)}-NLD߾ƌAjBб#`a5Yʕ!n]h1q"`n++#0^OөgOkDG vvFֲ_{aɿ>Pg#GL89ɞZ5-J/9ʅ#O166praCT*(=!c75ɚ58zJaFyΡo_X N;w'|` ٯk.]gP: y$$(y3Q*Jq2ڴ[XPP]_.gZZ^=DGc|_n*H) AV/%?*a/p1}: %-\m?HKu֔ MWr2T]=h 'T)*.]p9@pck#$.E>k8v I*48,!p1uBffWFp:4|rwǍص / /5իSw ** 2@qeKE4kCr2*UB͚` SS;Ria??\Q9903Xs`oʕTMv,xz_}a->}ҧ\իWPll4SgBPM65En.rrwrsaj SSdgrr0hYǏNa]zHJ'5CNhVVݶl=UipmrrP<޼kWBRq\*{>}4$cRZػ7ܽ =/7WR%x1lQyN@Fذһ*k@$=|S+m6Q%0Br4=iiZSrtNZ[@FFov9++YCVCϞO? ºL@̛]ƞ5AR=UipmNƛ7ZU}/A İaZڢcGٴiv ϯP?k;W$X=_.dG-[P&P&la]=Á>*2n[E2m^׆X~B4QKTZ ~5T2@ 7Wáy- =IqHMe/745ʛu6+VȮz STHû ! { 0]\BHu -nsgv-0alwJqlc^!- wc„s:'Ede!.N۶SdgC"{ظ[koa DذkHн;īWǏ]x+]p5;mi KK$&jIcx- Ep($=EArrp>F6ma]T5b1D"}ƞr?B ! ѥKxe!h"|vVo2^=C*2$IYYP} OkW |QQ07۷h(FJ{˾wS`Z͵x65&ptĩS[Wr0ލ$T97Y^^ yTzD}Z{ o{_%GB6ٯk\~JΝJ llptT923X=wqAwg݄ xRx\c~ahlS#?vN(tCG]{u5|IJFxx$X,[ ai t(ZX :޲BÆXD oػ7ll1c4Wgw ]Fы?!$AK!B B! K!b,(.!B0c 0 B!~| !B}t!B1j_QUhB!ƂB! K!b,ߵ'B)2 ?FA%B1ʿ'׳B! ?0:B%B1B!XP\B!cAq !B%B1B!XP\B!cAq !B%B1B!XP\B!cAq !B%B1fPu`Q1VB!_$F/!B0S|hKL`2B!t=`t\ `"39B)ZL~Bq!b,(,\D!򅐝; WgtZK!b,(.!BB!ƂB! K!b,(.!BB!ƂB! K!b,(.!BB!ƂB! K!b,(.!BB!ƂB! K!b,(.!BB!ƂB!/8.C&0 2ɢ"lɢ, ޼EE\b*0 *n%tO5g om|̊Emzk,` _<1+@0pV@E0Xu38ްx`KVI~É>{,# )^M߁x? HA@'`uqsu @.}YHddRf: H]໼gSyt2 mbh^ ; {h_VM[{K$B` Xe@Z ہrƮnqC-`Roieff:   d[ Pm-?R_'WOd` X"Tv{omg o)WU3gcאKSS'O*UD$LLd"iҬO}999\T5|f  >R2,8\ ہ2V_J78V7mSīS=|;J9'a'#bxx yoHke{d%:\$@ ]}@M ./(>! xl{4+ *d 6Vjx.0P\$e [paKޱIǀ௼ୌP>qkc@:sޒ ZrX;u '-] a im;`+ N-Λ8m"8ZCw~uW;HҀk z!xx{kˇxT pH@%-8"Laa2P y|SU?Ot ]fpA(#΂.TpfGuTDA*R@veiYEJ{II&mron_#=9͹%);L^Q@E&_x  r\ p=+~z@9DK)/SɀLj HN2S(`p+00v00ˀU+Ѱ~/RNPpgw?X LTH00 X\FqT,u@{wk߰t@c$`O0{V-5^Pu~lW7=ؖ{U B3nJ=A$(Y.Ӂ`p3<|*Bjm 5{K%Gw,P  -RE<Ȝ8콥 x yk>%-DK_;@`{,Q~\b@=핡L;l 6.qρl5o&uyb5/dUs;/)Z> }4[ 6@^0^>B<>1h(UsG M)uʶߺr `^i=!'%kS@hAH7NaRkּ_(95t㚎|K5)Gg[P#`k}sS%-tGyO*Fה+D8K4=H 5$ R#[#FDJlt;[C" ] O8pוa"a&gz;VsWTlH.2kCfͷ/t垘l `zHu'T9-{Z8u; < {M ]AnB %r&:-Uo]ՀtƵKp0=HσiF@;wMj@= z~FA]k)&;~EX.|2(ovkfCRRoJՠ#[--ۣdmT"@ ⽠*¡WHѭ@-ȧWBⵈ=)Qi؀ySt`1wg=dWw `45kxX*ݪ+ӷd#`N6?X4YTrG`~3=O;xUqsyX V`;0_]qzZQy(a*`[Lu?V{n-3{P & 82 >)܎7QcKe{mc$>pUIᯐǑG3m|:~i%hzU(z<|o @1hq;0S:<x=9.`קnzG+{ oKuOö́V/Ə2= MtxW7x P])w G5msZE灛@4>ygFߢdWI)2I>iFħP^) >aXʴDvpωf˥Q8ţפ\5@ i )@1,V!T%k^/_[8ݧ.?g7dP{-Gz5' [`<&0x v%M~qx h i 8[ zoM@U(Re6}`,Ϛs?S( xFbsGS7]5 3^~d: x}Ӹ7. tv?V`t)+ֻ߀. x;fv=#e(Xuj`19ph`(1]Reqy #^J Eq{wuo7A,V>%BJ4νnޗxzX @>֠K|aG$iˈgouD0Wv&Kk)gPx E UypZ 2/!""H""""K(R0.!""H"&""l6pEjU* Z#<#q bךfCP5*:)`4xorKH)F#B}C}\\7:  (8]m6ѣG-h>`\( ffffffffLmt:NK}-7ߢVEWDҔN٣zCPA 8$ڝ$er:H\Zl$Е2ӥ jߑZ-8^BDDDAӪф8%|ygK"P\ XޏCDDDAh4* *hz$B22333333Ֆ. Dj\%DDD4^!""HV^a\BDDDmq(R:E Z-7^j\""" K(R//!""F8DDDT*^!""J^Qx?]8^BDDDAAftV,K(h(|r\""" x ˸&l\8DDDVGDxN^!""Jq Q#"""j+4q @6.} ^!"" \!~"""jC%JDDDm^(Ȍ/!""֦\o8ݣ) 1.!"""*W䠒I~0"""5j@jf(j1ktZw`of`0h4v1۷mH&Vu}Q&F6 AyDDDF/UT^j2éR5h"Bi'$ٵ&R5SUUz(3u7NLvq]tTKHʊN;th}~Z jƠg\BDDDAhΝ=Js+E %DDD)Q`\BDDDa9uԼyJ_""" ]EEœӦ-ɓ 4%DDD"6->>>>>~Μ96-Q(A ̙Jvvn_A~""" ņG{,=--3+ޯ۸qaB+%DDD4ZPP'tJXUY:nx1/!""&NJ٣GuUښ~}Zm0DQ X/%DDD4QztY ՆV,""" EmmobMMu8er~ E %DDD)Q`\BDDDq bү.~`Q˥_}rV__?yו{=wB/!""ŴoCx뭷7o\A#>Z/!""0cƟxs~E_,mMx1b9^BDDDxᕿoOKK۶m{Zzȑ#gϞrP%DDDʊ^ٯ_n_=(QDAeXS]% B8=^ʾNDDDt(~_l^2lzPt:ìNeZ~_ܹ>533nrwPas[p-u]j:slEE7b{(]t-++s8~S"/"j)cgjo{4Ԕ'levڼPxQS[[Yy9wP!j86Mfݚ~ PyH `s^v ϳ=@Ak>r_/rÇ6[Fcbb*+oFӹe֤$O]ez-[u:Rק|ʼU'Oe]wN4YyēYl~o|7ϗ >}L<[J4ktäpoښXWW+))5S^-f]h2M{Sӟ~̊:uUsrV\ZDѣGy|7ޛ+f Q@J:I ;slJu+%E̝<~" }|?!u]C :̻1.YIk%\bf/L&ZeZpi6ޯ_E+Vdx'= (N>=//ϓԩ?͛7-^8>>~VZbYWWWCGl>={<9|6mGy MזgYf+no߾}%%%_VڵR/UJ{p8Ξsε5׾})C>}Z^Jǔ V쬙3߳dͪUw`U%%;w5ko/ۂDP.NFW]%|C5p::f1@cmݺՓ{ݻw59(;mI`k"-W`좸z hN.k<) _zҥK,YVVVxg8|ȂO?-**rmK奦;{-..^߿w{|rB w}o,dϞ=;pΝ۾}v-X@ɪ߰/o߾K>bߜ/ҕ7^aۓd4VWUUUWJMuMG)_?-s\qqq_1 N7PկWgmUH^VV֔7^[蘳pV;+tti5>>^ nݺ5::9svUTTx3`!uVRރ潊 ^UTk6m_ݺe[vFcǎ*O.B3gGsݬ3{gȝA?/,:]Vg^:u։" Q|бc],*ۯ_VV]V0k;e2ELQF~iLy+|.m}|Wkߘ߯RZ*]y} v]եthznWN=_VVVvnwȷ'2 )S;~\rMxĉ+V;y#>ڿ ~JۂD#NqMfքߪa@V> +8bW_Y `Vn't[opڒ:+)Zc :9fy :դ ĉsυe%p'À>}{zyQǏ-꧟~r y˟$E_,0~8N8֡z:lP'Nhʝ>c͛6m4f0%ҕ7^(a@j5IN̙3NVu:t…8V.dgJKHH`X\*\O?֭[ߜ?@=KmS)W$x,+39s3VzTִ;lVrNpmÆfStڒ:+)Z\% FL/,80`/Η[m():*СC7 'E@5z'&y63vX^2o y+󢢢FC5p:Sn}oO~`rǎO: [K+oo/%'ONAPTtb1k4FvSTtp&w&F+X"PW__S[cw+*ϗW2-HD)?w:ǩ I@G4V|AsYYcVɧR9=g%e]ekt,WN- ®];xiIݓv1dM Ϟ{ ~@ZZZE.]TTbE^NNq f͚}{qE|"Gn޴闿Mdeuq1VbBB"GK`4 :lЇzxȐ!Vҕ4>@(˥l\OA (,<(8ŤdîV !9YV(SQ;kjj}sΝ=szrT*Qn8+m Q@:vӧN#rzj: ZQOz'-+ˑ#oIDAT7|;zrQxwV >PIm1`0t=91q99FAvڵCR'EɿxB^PP2[oU&ĉw}s9~aɗ_{=l&y-0~xG `VkZ,ŲzjWKs+O׮]λ6ԩg͚]#?df'j10QS緐 7e˖UWW7668P?3`!uVjL6z~`ѣ۶m[A0 99%%%vm„ ?;v{/l_[|}3OmˠJOO_+ޥKm+巓&mڴyN~W .\p!aÆze˖-[x/;b~~kt%/0 h߾#Gt:S;th pVVV̞ iӦj^'gL;k 8u&MZ3B-HD)ںsgc $w&+նS;>Z]U ApHKn;{f h>`!uVRރ0Cx(99 q+TPACycǍ5LÆl¸X$^x>xt:ݭ{]KO0vqcO)E^M{jZNz`0t>CN>#qqqw.aGj;>ȣs̖ց/+idϺV"?p8:$'Z4Mj4J#"bss_ۯ-7?Q{_[YY9+7וs 1"..?c]W$tt/23;uj妨9hⴙy='&&%'91~ i?p&ioo?ߐ9+)9FǢZ-?<|? mbq8gَ=svР%|S|ÇZN7|{y%ؽ3qqɮ|SeoA" (b[令tPIk5j/h$&\BX3»|<wZ7EF)5RQQ-jd2zB-+qZTeiSGLkضW徕H7 7_dv!jA<\Y%jci0Bqq1H+Uk${ EoA" ]3t,A%**d*^Q&""H""""K(R0.!""H""""K(R0.!""H"""", %gX -Z7\Ud28uC}ݥn ],hSX7pȄښkN" VT߷!8/uۈ* GVd`a;Fܵl6GGGշkR|:.1)bnݲ-#32d-3nIENDB`luckybackup-0.5.0/manual/data/InfoWindow_ProfileLoaded.png0000666000175000017500000001633511176021345023161 0ustar luckybluckybPNG  IHDR@P pHYs+IDATxyXTe{a7Y%q-1AD@}U5,^\\R4\s\sln, ,afD3ys9]KMШ5vDDD/FDD#""AҐq ""j}1v!""zA>mo2H`DD$H 0""$ FDD#""Ab 1Hzue֮[ѿ@@@UUիg^nyzy)>lxxD?W;;N]zӦ=wSS{o`ء}M 1,oJrr^fϞ=p OOÇ߿ǎЧo"ke޳g^_/Z8p cCCoMrrsgΚ#,,zI-^qܼ3g;b:MxԩSlݶGEE͛7{*!22Rv~ ~* h^HJ,\hee`Ŋ=zt\|ܒ%am>Dpƌ=6y$ K ѣ+?n\.]~ ӳl_1bott||| $8K^Y&5TzĤ--۩^ ~ڸ[n!!9U)F+!ڷwuu-**oΫ}>so&N,**C3ztGk߾Ȿ~߾}.{-kfffFFFTR6ήW'$tqs;|BbBT.rH$l,?_PQ@ç  D/B2D"37i$ ݻ~ Tfkkk``O~~~/OO*++Դ;NA$ 0ֽkUU?٤INN =99ɰCTbXMM~KMgfQSSr.nn;߾}sKA*nJJL<{^z 7):t1cFjr%bqXXnwUmyڣF<{ݻ,tvs3wtp˽wCnݲ?HM&Qf""7S FDD#""Ab 1H`DD$H 0""$ FDDeee%%A)DDD2zz::: 괴YeDU߯7-mMKK66o/?ڵ{u5=!{98DDXh\h󧧣ys[Wk0Xj* ~~}=´iͱjUMao ܚ|hj\]%Յvڶѩ˃ wwukDE>^Ea!D"ݫ;w aԨ<< ڵCA!!+i|с@"Q|j׶}ӃSGE3L=xwѣbb(-6N,6Lիχ?nˆJtسgalFn.ƎEu570r$**l{HNFDzĘ18q+Vjb03Cx85S --[Cp*&MTծ^鑯(" {?O?av;wp44X\Al,bz==ۯ0u*zFn.$}O?_Ыw/G5 ?`84m ]]LRPmC  4k!}w <|b8PӮ_ŲeJ^͕""gz{k^v\XQѼ9ݱ{7TVtvsl`tئMk6dPUlpqy]a1ǗϙMM4m ܹ̎ k6ڶxZX]?嚗/4n݊H\b̛Wn^BRSk^J$ ( BCqbڵ쨰Z55x楲E"Hߒ鹔ړ#5sͧJ63lGy9o5;x1H _ ./FNp>6mBy9p*,-WXA&&Ǒ#X g%Ņ"9S`=֡CF˖ظ͛  :z E%'CSn=X&W]?||ptu1r$zĉ?@z:,,c4ix/09v֯&:v>ljÁXVu``ٳQYeaa07ǺuHIV׮()-Ct44ik.iSeDDk)/\YYYfV[N7^yɁ TTMF,G|# ;w6v)DD—r%Νt syczlEл7q231vlcDDDo7:?ሉ}h~ &""z3&cj^u4" >NFDD#""Azs66outqu+޾8;;بEC-,(06j1f;СAF-_n.sOE^xVq )k}mWڞks榋^޺J7ȏ؟?tDTk?w޼3gYY^b랑RÇe5B+_A++%eook Q"nmS5o<5 >R\^lFۦiXfFF++W>2RhogwGǎ]tG?s3ήvС}QxW=ʲGnOV]QI'^ 76jQYY){k̘o173}ǎw/ZcÌZ$$$ڻuvǏ:4̬{ ˸r%g s3.۶nPg]ncqyu!#G073 TTFӧubnf64(0?KKJJϻubfڪ}֭?|yL_>lP+K VFfȿX7ni+{;~Y߲~s[=_6[:iSEMM~w;YmV-kDYe3I/e_궮>gm6Dkw fMOcJ^J_ÌnjQa%'Rh냷 sJ~)\--5-:}4555o \BJx}o ;u]v&$&9kqΝV}Ɍ/^LLbccMk׮?`QQѰaC}'}y!999/G싍ݻ lyM6_rG}::00iiix႖ֈ#CC kOQTTxեKvuʔ9s&((\t-__Ҳ=e;vƍcƎ6lX2JHҤD^ZZZgϜZڳf~z % Vx|:yǧǡC.{X qƴSքVL\XZ8p1.cgo0ysY1vxZfq潇}Ηųr<({kXaų_d͉'%>Zߵ[)kOM??e +Q8ƬiYm߻-ׅ:nN,>~a7nujh&"0uu9s:;;6lϞJKKNu++ciiiwca:pIjjjxv1&:Eo߾ ￿!ǹm߱sYfٟ͜8[OOb |w7m7cǍH$G= b`PP7hjjn޴i@oX|))DSSsot qaD2a+W~k.]d{ihh;ٟ۷߻\MMU8Y&֏923###7n\{n=""#k YmcjdCCL<ɦ 737KC˛7_߶eQFii qf ZLSSMUHޡgmMHޑYٱUbŴ{V&>v>*WpϮoJ^ʝwlNZ~m"{ɛ8 w @N֭߿zEOCd߽ k.z}YYYR411Av;̌}ݻSYy[-,p^Se˖Λ7W"jժ!CQWRR"۸r% @ɦ>|d?˖-4Knݺ ׯf͛ʔu>y.ݻ1 oIOU֒PsM2...|ʔSRcb^8>2"B _^/nf`;u+G|0153{{uv730dGwd?9|W {a#hG\o;=!Djji5"/ C7쫰Qa% 'R(BC7'm٬EM[趨MDr/9s>|x…9 V Ⱦ{w͚Տ\Ң6?~\~SʟزX,>qDDxرce<-,,3:y>x-mGހ͛6;w@}[0ڰa=dc5|)j֬Y~Mcǎ5WDG/&uku/cOUV[n֬)$ uؘ+WT,L4~[XZYyl/^ ڰ!#=CCS||22[Z.-?zO ?:fg:;99TUWEG~pJwN|rbN"_{7".EUKO:vžL⑦0}uSxeX }1[ 0;[ƭ30""$ H/鮁IENDB`luckybackup-0.5.0/manual/data/InfoWindow_ProfileSaved.png0000666000175000017500000001660111176021221023020 0ustar luckybluckybPNG  IHDRC8 pHYs+3IDATxy\iib)ie2,ʚeFFI%$1=89͟?С...ǎ!zkV;>NN_/_6dPa80tG(̹溸tv 2u*+VlݞyRj3?5c ~5ٹ֭[}Zf¦M{Q1[!^ K$Mゕ˖Xv-^ǏreU'9<={vqqt'N~Tcc))K|UXXnw&Nѽ{Hȏ&1G lgV gZUf'H._\RRҥKgtO۷šr hD$߸]F_菋_6d)yyy4ip uۯ~t)...+{9`ky=CCC]]RjqqQ/]ݥKg)>;A!IFo' NH$PY;S?ܫW/M@nm;v '===OOK/EGE;;6rUUmD$zTTT,Y_oڤںǷ9bD^~J@,+((( v/]hpΝ{KjU"l p^x7AlfϞb X?`pE%yyݹ}@vv1c.\9GG-MM+KKXliaZ1bĮ;?_"^l7Fb|sKZϓ&""zM+1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lJTRRR\TK!""֘ $YeeerԴ'DJ|+__+Uef>,#Q(,,|pHIinnn;S\\<""vHFFn(/+WSSmڈQVV&$STTTWWo 7""楦('""a{uIڵìYͼYD()CTlDS]߳/ MDxuI&yyl*s"1~~7Νk|9DDoFfthPzuVwZa˖W=ncԬmOy3:t2tu{HIAa!f΄TT`d`DϪѲ%ӡ\uLzOA]תΧOS' ݺ>rx,,=* AM !$45q:rs!A޽ cVm"˟sg >"ҞWjjĩSڽ55 1OOܹSݻ}9ԝԄ$~'S'lߎ/!3gꊥKqzU0<QQHJ/2 _#3&YYDRƌAY"#e //ܾѣ!<>F>XFPlld B,!вY o YYUGuL g' WWQ\\m9)"" I1\T;%%'.ŠApq8 Mͪ$۳DHf@߾DA""Y789XK֭8q{W<,| ƎEP8-Z@]Swd#F@M -[bԽGPMC~>jWVcj< |)~ wcܽÇH2'EDD55!b1gt<@YLAV@y944典8$'ck}elEi[{UoqJϭ(T(,z[Ճ"$UޕӯVrZ+W&_pֳ/e"Xx+Wb@YڴA~>()a^X_a`PC2  uuX $'}1k7.SS~&&UuH,U_8~W\*0ctLs>:znnh۷U+}U0w.VÇ(-hC4 ipR}znM'SP_a"L#G0mMØ1pr”)XO1jںCa^cV(+@9cc̜+WбcU&N'ƚ5HIAϭ(TUUl--̟g6k lABBz@Qv9 S~b>+q$48-_%ԷLDvHPDyJJJRi޺sWVPF : 7J7Pv6퍽{_w)DDoػwռpݴz~ VV8{0uDDDo7+ɞłvkhhpޅ^VZ%^gwdf-ʲuMDJRSRYnyG o$m0x+KS'O^zu@#C{}ڥsrr8$\ԤwΝ_nSHzm]^^.( `̌ g+~z1dԨz={tٓ'Odddkdhثgeźjdhhgk]jmGww;=yRZ881G*ܹs={t724득UuSoA vi˖-uBu99m޼ys&ۙR}z&}Om-;HQSZ{ƅ/`by U]НC7^(TR)1Xep%WӯSkM VT:ȭ#fk4j7Ue z+ڒg_}L2!+aAzz'I?(h͜~6j*m[ՠ/pi꣬\wӴ_cv7gϞP\\oX[ѣ̞ܽ}ʕ833n޼F1lם-^?/##s(,,p?ѷoɓ?o֭[՟n۶uݺ|xGᩢ**Gw8Cxܸq}ժUݻ>?ϟpbo߾Y\\Rt#'OLJ0!`ȑux\߽{}%Illt- tv||Uys?KJJg"2agϜqww|a^J>ēfΘaii1(hgs۶5խ3357{lnVnephGs+|汙v1OO>ReJpydVz/Xf֚E}ʘoi??>Ƿ<-=kÝd6LتQi)=1;˧ViܳVmUm-DT%EmllFy~3fRQQ9~ UTT{=bHG֞2u.vvvaaMáC&ᶐ-^{޹sI?7w/0dƑ#GD#7&N,((8~D!>S||}FYYyGh!nbSeeaK,YƱc &Opݺ?ؽt-%%~??D9YYYӦgƠ~:z̘ԔǏ7BII7߿߻wMj Nnq=vm 7aYK3&&ro̹y+ێ~#Z=g( 毝tuplpкowƺaᑐp];bvYwW|PTT֭ڷо]HFÇv$$$d?3]EO&Hbb>hhhIOMI9addԫW3Oiia 77<|2)++KIMQWWwssKLL{NxXIϞdn!]Nz@<>5܇=t(@\DnSNҷՍ2'nkkpѢ//mHe۶G?sL]zJ_^sKO 66 .CcB?yq3 ۯi/͌*.61\ߠu6oLJdSSR3vgqyq؍0~uhj]&xlo\699mzImkZd'y>HA@QQգ-/326pS_V^x"iμ"B\\,ZS1jԨ'NJV^w+V޾}[$׳h٪%ԴTiG߿C^{s>Lޤs:\Ys2'>} aι#._)86͜ɜf686dXH´)[o;>4&t~'S'MZ 'ӌPAPߠ "I4X8)7ֺ2eV"sɬD&;o;:kоE.Q}|l…?r/߿q'OJϜ9/?>~...CB>yRzⅳ?M=X|ࠠ i܌ߴ)`x,G֝:;BC/^[n۶O@ɓ5jlr@CKسg V}Ö맯/Djn_~˖-ͭRDxu r&R77==iM4i⮝;MLM oW\m[ʽ%e%zϝ')ٛPYQ|Uj~eEeEHTȝGw**+t3&V/8 6@#)')jpIyI콳'twi\Ɉ5 k+; 譣\n?(_de_ XlIf%26]&)["hT__sdڶ6]…rZl_߾]3g~V?p(";vv*9**k֬\tӧwsm٧SWjhh̚9ɓR%%%/aVV5joo_\\߾:lZbqXX7m NKAx KrzR CCí۶iki/߂H333iO={~UV@Zj-/""o rS_u'QފߏO81qĉ'`AiAhLɷ&K7^ٸs+]Yov^ۤeҷ::'Ɲֺؗ+u]"HOC_&GL\oř/i9XYuݨ6K>֩M'Z*Z'Ɲ8{l-[]{pDfJd$!*8qít㕍DLDi“6SSRfdJϲe_j_~G]-<|KNÇ{o])5fnq5/$'ml+V,޹sq [8~;wjrUWVaV㎿Z$H$?ڕakkjշ pԩcG:::hH*%6A6O ;/2MTЇ#_wPF[Xle2(Sf*B|  IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL2""6& IFDD$#""ac1ɈHؘdDD$lL]]]KSSRQʪ!""&)R ?/zBވթ(-)142)/(mT<)k򈈈F $YeeeiIXM]j#""jXqqQcb &Tiiiii+/""6& dC=^WDDD/YugIfޱk< IFDDr(yIENDB`luckybackup-0.5.0/manual/data/scheduleEmpty.png0000666000175000017500000010005411354335323021112 0ustar luckybluckybPNG  IHDRv pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup - schedule:(/ IDATx}wER1eeC ŽBaG0!vM#CA):"]YD]jb=D(I-JQ]kc3C|f)f&Xdi|1<J 2Va|(6TmuSu>7$عPF4i`tQn S\]؊hZ0DӬE,"e+) 38Qy&h1EcǵKJx 3~}zۻG"ޔG=GNyKJJjjkNhnni.)'}ll էA;X3 4!660B3{h! c\"*;Q]'&$KBKuTY(ū;e1@ڜZ{b =+uuW, Z("*pԵalmܐr )P\:,֋$٢H+ʈ 4h .ir51V$%%o!..N]ӴbbcbJ Z j%%%Ac9mj+9rVМh*[@ݳWKKgUƦlZA)Q[ϚjY`pTWWرc߾Bb:wRУGvvN0GY<9% dRt}* Z΢f$Ŧ,"xG@E(;u][ w0cH+ݱZe;9 u5@6hQ^d9eQ_e\ [Yj4,K+K%D 4p8ǎVnݶ-Vٳ}n{%hVuC #''7 3,rMӪRУGNvI4|6r(!ġiǏWЬ̬`0YӴÇ;|457{cwUCE9Evq46,*:޽'=-FfgeUTؾ}TӯknbݎCؑX*--urcUm.ޠ(;sr857}w .;ULIMջ?h%Ê ]AGm]&. 8z9$%2 g |RBT(!! "0mϲu9'Ah>B%$GzFx NIi9魭- tʊEEe䛟Ex4N2km۷mnW\ٳg/jGIII]f >cC>|{q8ݻwgMGm˖-=PRR;,Au}+W\r/z}!4~x 99cNY*smJ CMiZA~>AƔx/(//wz[z ?x߮i 0(vc0Ie[a [F4vc| /T;QEYSyN)(/PWl!'AޖlxDJE<X1VXsGrgewrB^ = SSt 񙙙єA[naӫWHܹ˚5_$$gdf rnVOcEWk׹sWZRM Mrrʇo;#G&GN4EYA&j=6or<{-!GǛګ&N5jTtt4?^3wwVG"±ce[iS׮%h{RR }ystqyOcC͛jk#<Ån޼i%A()n޼)66GNlٲzj{5׊Vhk1~m]M/R1*NS 0(i՚&7nnذaYX@-m]޽h ʆ>|{A9tQݺw^bŠխ\S&L%g]9a_]UU5ws:ƌsVХs%K!C ^f-{v':uWF@]}WZVzV&Nh&(J>|xĉ͟Z5fɪU=wӦǪ.?gϞ F%ÿ744\vnWXQRZrVjecZ>wQFSJUUxC ̯Zlz9ÇW}1c !C*qjMy]w˔)7tҥիy)S<4h￿h˯546~al߶ 1ٳgU'edd[7~׿njjJKKte~[˖>{w%--m͚/_zGVҋsoAAK/d]SSo/o>38 .t||\\nn[K^765MpeIII׮]ZUxbM#.qKt]Сâ o2xa„ %%Gڷot/YYYϿf7r$cǎ]򛋙o9eGyݷ{{' S׶[X X2NP*ϖ-,|5C9nvb^ 5@t W4k`ņo7,ZO> A=H4=Q>? `bILLϸs7Xϛ?i\HG@'i2oe~ DD@ZΒAN )! 2yM}啍}iӦ3g^{5A]g L0@SOC: Wj5%k.]kG|˫|ݾU=kK (OlKcco'ܬ.1Q׃`R#@OV:|'xc޽{ڵtf@_:֬~W d:Sn~:v8~%GJ׭[-[PJWСCO>+WN6}ܮy饗Μ94E8f+VϥU@mKKS<%55|z~ѝ3ܽg0߷6?,^رc˖E^E?ėkN<D,cQŋ;vlw>XK/[pauuc{#|kwKK(]eRaԣQ'(Eꬺg'vp[XPgҍx.)|j Pv}ӒL a1 §@N䖧@un JyGĐآv]VhZPK/r9ϘP2\3!ág̘oP͛7{MIItݸB&sΛ?޽ /N1}_g/\ZH1g΢F:B]z0o4hЦM~5׈r=4 2(fCgM(5y[."6۳p"ӥu>&"wj`߾}pB:}iӦX|9dddNu֭K.k\sӍ?G.]:?PVV裏#F(.*wںdw^(8(̸sƌ;g@Ii ,{{dfda Vο`F;vsn#o/nCsŋm8 tR:vС|: >.\ Wo߁r%_zŅ:q^|0lJi.]ahѢf|E\Cc#:VuС|6PÇ|o.\8;1ؽQcD555 袋tFSJ@֭[vիW^ի׬t@cc:x@=ttZPp8ny,p~~ƆvN4 ƈRp: 9"QPP@D֮]RJrJAA&fX$SrQb &hD.8 #MBAJ_z*Zrl%Pi <9z8/Gyk ǬlgPXֲeڵp!h1::pBnƺe˖MW_ЃL-o=@`kG nq%%'4,ID<.o` f%*7ܨH^xo\6։)Il@e} TSJ _Ą;ֆ0efe',8Xz-V8pE.^xǾ_a.`lkYϼkp%K,_>dȐCEeB˷m6Rz`~0`@ee(\ŋMcڟo]ܸqW_}SO==wܸXmAŋ.=6_QQ1 _\rx19}r#;kmۖ.].3~'8! 4 N6L.\fjTK|tL-JmY.xP|hh71fJ@iYԛt@0.!}ӻ`hnn>mo bX7p#ZGݭ[7ʯ R &$!> "! ;MDIB-*5Lyn e ,kƝ'NIO>oMKMʈgk hVmiQQΘXǦMEYccвIrDݶBփ@ &6avyFIῦm۶7>>Azn`{_\5qbuuc;.{Ǭvf&''{z}j7_M)0@ pES,3gΜٳqެgJH7LuX___YY9jԨ˯+F~gޟ"޻wqƭ]oӧo~~~ me_~eOc/1@bs:kgw0b7u˅bm{MHH F(%~SHmmP`  z.]X?$$ !\@ !jmݶD8X?1geW^51 ) ]w+KNNn.&{Nc]^^Q5rtdyβcD_濹52ujbBRIpݞ(7yY`PKK?|߷|(o۶5..k׮Fs@qQQYYYg!ٔoIJs.{u3 LwKKJJJxlg.Ł#Ϸmnݺ1k~mf=ӯ>}|qzk׮:;>\VVֹst1ٔi{ں=z$$&ڵ۷o_y ݺuBܹ]vڊ/)-݋$O{qﻷsgh7twh qo3V0;wXܼ['`!~@$qn̫D\ phUBc8N˹yӦ7o>|x\||/:u^rX}.O>f@^ǎy;J $` ر.Xh&,=%Ս;w)I%%%p-4=9 'Aa(A0X'9<3D^V Pv( Wҭ #\ m,7N'ÊWޣGO+=&B^_@B !p4~ &LHNn' !@0@Aq+J=*Ӿf+8WR>\TuWs ĄK.g=d_\nwUձozPknnvܝ4x𐤤$?@LȠokGbʨ*(CxvI&4911E(ǓdF}T6nڳgҥK&Lؿ v}ecP*V6;9dlml+hTwQ3{vro%[ihl=A(-c}*U#:r㺲 G ! At.@ttXԄ"^Ԅ!dߢcb[ xxOc\.W+B|fێ"ijġx+Z#ýͰQ 9~\Ӵ!Z{<ċs0X6 I XAiinf sKAiRlXA[! ptv &o/l<,[Rxbbcimjl iUcәnEdebX!y}>x!L:sAZwD~;RXlx(^ 9PT9%#]5m ro V~ZG !~spiw[^OP4(z1WDry"NUM4UylFQ1G8RQb3ouevS\B@ms+|^q\ @ z 0[)SJ|-^/{{BBbB| ^ؘoqX}>xÉX@<©yׁГ"y8QGP-sL|EB" jLX×Q>wؕ~V恕Y<|c뺦3`4>Jx/A]Ļ|IJY! g '3[N!$338DM3,@)[(>_[(|RUNE:SAi[e(VKʹޘ9s29Aչ ښ) 7{my.Ǟl;i,=Y4"M,+H65uBPJ&V B.vlTVXn*f~oo;?lz55P ~JĦkJ@ (Xبi鑘[`'I 1iHep?O35%ҧ)\}IgUDlKW++1bbJ kˡ_q .A<5^)Jq'}4@8k(-x1d>&T""BJ 诰eȔ6`åPjۀM$h-jچM{fx| l|R5 D83?% +:ï-aᒶIȇe:_( qz_b(HT*dI]XؙmWZENH*a9K-@vRBJ#|m6y-_ɽyo7N:@1N\(U|JyCC!j`?4!Ү .NU4L):AEOI+-]H%SdiYqL@%p3VSPbJ0-,G]Qr&Xg` BlEwU}bˀ1b2?4 XL^&Dǡb{TLV?͊J|)<#oJw朶L&8r*nu o QԊ 3tUVyyP)$,sW {d"fO1#e MF暠ASB' |XYH!@F"uD"$Wyq!81[(6@w;x {8JAb8 S|'Z$Lo瓑!/6e!z_85V )Zk-ɜ G14 S *٫'cXO7w+#A FP9/ؤ} B&( PkZ 6YˁeK8NDK2 D6ǜ&x@AH-v!lW4$o]X6ns r_$%0M?#Oeu6g@/"V HZ؇Yj` HSJTd1*J6T'rU(%T!6L Љ=?VOQR7m:[ .Ek_tqQUًQئaH~>JȯSD |7橮KlD>:5"62 ԶX&NAFh@?cRH>OX7<`Yr T 1CxUjd<q5Cӭz|aIтjv"Y*rX BAkx"] -YmG^ _7 dch:dѲ?DL ʞMx:tt$ֹȁ\8ទ5 ChU7P>HrAw|c$hȘa[Lx%VVM@ifE Q"sB;\_470‹3&v%`/k"Ŋ2-O(o:Hʤ*&\VU[)~U+r´b/P׉.!">Q0AZB|g$b 1XY$2b@qD_"QG$5Z+ pA85QdIi~G DaJۆb |F² RߧZ sY B9ߖcmTB.luy~1}$[0PEx}[+>["ZfgQl^\` lVS&P 9̌{ D؆6k( ;Ū>V!:ˌ"BO{ckQPO&Er "nS0z݄ڵA|W֊m+8=~o`4a>c~9EP&}2KS ,Ѝſg̊`7PW@0\_ǡC7u!6tcR|LTK2>y쾮X/*RL79rrqE\(uRnVaH!3[bb_ge}e8=)"d"J1<7F1{ nM9$ GEݡ#ظ=AԸP}LI,Z@uxNJaP)+iq+(YQWEg@lJJJ{A?a_1XFY?1[Nkon T؅!#Ҩmp@ ?e:bpU#ڴ{y*lSw|0 x򦁱U:$`CleNjvl@3Cu./-cxap{86b@@QK(EI0jI57G=Ve*82jNs&`PP^9Y~Ut.-.@ /̞{]_yd%xKK {w!PaPUܷC| 0ۺح1 [$0D`lEg}Ys Cy _#j+#34LEFFU ^>A(e~Յ #"CY(i Nu]d:ٱ0`ƨD{B.-p!KTDk@6^<Gz&PH>JHq0xj*`B<6R+q* a_'j)p8ndW3!a!EET_{b2e;==}Ҥiӈ y*bFҥRwZZYF [)-㍊%Kɓsn7mz',Y8bDW_<97꫔Ҋ */f'qs ]G}b¦}\ɹܓ9ipΑ#b\їr 9+3b2_E;##cҤ3k%ݥK秞J:T1uw=t]@iٷޚtyL&ӳ}e\=.'ǔ CB^y\iiY7ߜ{Dt߿771u0A7pnYu]E9|3$s~qC#\ÀhUa^- !P QS˨"P`|KZ0Q%Ro WqY],4jE @P*&3˥@C< hج=3,t^=l'II;w2.{K;#sk!EE/Te=d|aai\S3 (A)-7O$Y_:=+%e}߿\zRZ>oO(,,ܱ#kf*? jEߝyƍ}Ϧ={(G 뺁JJ+6)=gSǏkW?\ٜ9< q>o^޽_Tso'~CvȽ7Pftgeqc>kصK rƵݻ?s&áҹs=X Aw̸O=U:>K_*/ϾavVE|ʱP;_0~޽{ﻏy[ϗV֤IȞ: #ڶ!X} GP ֭:!k<̳#͢-A$Dl}f8$(-#Fu~I@h4o_IKP|5Dq yr|VI,sP}W&l6#, ULT\;Sji P>>$>.oXv|t2Ⱥ-**[bٲjrȹN-::kTXjzƖ5c5e /^ Τf;UUg=3)Ru#:Nlu\))N=ƚ **-[nѢrnYi?s#&& p`c#q:UU=x^z1OZ+9Oջk\fsq1+Xr@EǏ>&dsJ/y<@bb1WX9ӧkg̰$0$EҪ Lc^oDRהyUvP1I A]R'7R IDATb{x^+ ޺a嫋Rz},l.:>(JN_}G3%RS_Y)UTRΌ#1K'_86SC:uJ> s-ӈ%M}o1~E.bPꫬT,૨l B:4.Ohzfה)?޲2Xˉez= Juwj ޜy+gr̠Twpf Wj*ԕ*dZL$im%XQ p#%y!1% #K\ S:`At1֥qaw@T'rlA\$̃8E /qGK ]kw}ŅJWC]%#gR퐢Ñ|jWZZ\'Ր;+{?|/!r6:r3%С-횫 !?8SRDQ~Q h0 Q90 jpgfk,-kʔoڽ Efx';$*/թKa?IOs\r_U;=_]kՁhl ~!I;#[V8^NK;OF/{`lUt J GX0-1Kd$X%]dLiLz4@v"d?zR5u =~Dvڝ7<%:1߱cO< z:tի/v'@uoKɼquh:֦ݻzJI nJxH)/}KQOF]5 `:V:mYͿ ="D%x--F݀5֠`AVl i)3VV{H=1KؤwpOgeSyP6a@XpDl=LWb$Mv[JMNl/p޽S,,zab_E{}Nz:_ eBޘ'U%I#omZsxS#_>tyP!|ɪ9aj(Mee7J "ʖ]-^ QRvDKg -6sf^B?Yj^!5`*+M%)F$dbBNȱhi zk< T'R'41=YZ 5Med}`sGzH&~G9',B,-OL:O: W/ Ŗ4k]qn oy;33?@+{۵6|H(CC*3o+/ $(=e%_ } 詉ffPxgn& K}iwDg Cͯ׬~dra> # CM`T$,P%$W# 7J2rsf\}uUW)Ic}[ Ӯ`zv/Ÿ0UC)OH<1VhEPUO,\qTQtY Ol5fnPPehn%UX?I0D@8ԩS [i To}lm%K(w`UX?R]8rkHJdm@RkyHe=e 6ʔH%2xZ?F60!5 3%BY>&)ԍ|0zZ.RkY @!@J0$;;w`7ճ(:(22=-?$G"Pw PJ+X6b1PBu$8rې֊zHL"$ПD97%:ތln9QJ$.=h*&N̓[]"Ģ!ȗtPb-dYD(^A*5YGЯЙBSh"d6ѕOWN ([4WP_JL%` $B)ޖ{IbEJ'+r JpRSВx첷VAp#CFAC6mvI$^s Ԡ~8Uda굁/@5N%?~ i<#TDdž !(pl؛4[NKmG#)eFYxHꐝLE0?ȱժ09a>^4xY3_ ՅǶ}+))@"ڟޚ'IHΓ:zJv_fSֺ  7ZPˋL|-RΆ fd[ߣ4uRv#w*;ݓ8щ ?~x(`NCr)Cyyy#G:ڨڨB5k<Կ?۳@edfk|?YW[[YYvSI̜SBKmFmF)5- zMMMj m#*x' p9Y-ۨڨZ(Oll-8Q $.꪿>>%͗Oܡf)GGddfVVk.J1O}555]zڵkE͛OS,8Zׇ~CsF JgPgۦYAѯ^___twU % `_\V|f?כZ__<*}~o)9n9}˨ԓO=rZqձ!CW9[\T՚F.Lhnn裏FݥKVVV駟&%?R `GYi3ԬZ1 |cG?_!ꫯ1ܛLYhQ:tGЪζrZ%$$0\s>:|?SVV֗_|aȶ#`+VႱr⠍I"0 m;`3@<@<ؓEoS7qڣkV!uuuWڥ#F>smiiH8c̹Wxw_ڳWOVsˎxtV2f/ ?o.,++k[v; IMMh-[.}>eEŎ;ƌJ92mXYYYc/_ܿ\f+}쫭Uvؾ}Ъqك⠍J͙_z!CZBZ uኃ uZQOQg#j{{9E+}v'|k2eJW\yesrrn6-<OS™|E/xcfμ}u8Fyu߬0a¼y5My}lccc]]8꽥w>~;zgdfxߨdժ:$W^yY=袋~yKO?//ٶ2x[ҥk^wv{ `>xp8=/DU+姟^x&s*&jh[%NMۦ1uܙ]mFV:dGz͞77Z_i9ĝveHSobFFѣ͝C⋔P{e |wn_JE:,Qm|`ʘ1翷⽑֭ƍX&q]z]gμ?;;?3ztff];?cgmbȐ#F7={ܸq<\\9jyYY v%%%D[c )|W\TSs<66߰[0wl5rW*v?Q::6eo9|H6j+QN6@j"7Þ`4yq)oK?}5OA [r+۷8q_VTt=z?s00`oG?SRrrn [jxu;t钕y;Y'a(VPUBttѯ{a3SHޜiyuοMC;aJa^#۹sΝg5M߿v{rRrlbr.\/*0é6j.:t@Nk_w'nOvT~bmnԨQ7M\WWeϛ|ŕW~W\qyZzD<<"ogzdrM\ ' Ѓ|~!sˣ(:qGP*JEFFrr0v F5T* C]qJ8n`SbG Er<P!լkl=B3!bY !+BFN9"˧ ,2 3I^Uf!劊kB m5,zuAX'Lj uqJ\TXRvw d2bb :755 `m6++accRO o<QQ555A1BÝ(a.TUU1d̘q11_~ӃLJQ=غG w(:v% aAA 7pO8 ?o\.dWy."CNu94]|uuuuujC'O+( Z~ p?<{7})¥=ޓ9cp{{[>ѣ ::[,G<+/(Q))I׿ckj`=Bh ? MG>u8NFBgV=7Zmg}?ص{?Is ߍ?.2wgmmm@TꬬɄ)?ѽ}mm]qqoa0 | dbA~/{:pxA>deڠ֬\^t8k[dGrOXdp:wߵd&SNJ˾sҼ`z.(|HqQGl߱sa2:3b,Aw!PH֓KKE.=-=2*W?#=3|ӧ+~衞7d斖֖k]vRo ӧXb|gi鯽:ſKK=^[j}'].w}fc)~ҹA(ip:κ:նwn'3&QR?^__?aА+ӊp10Rd6_/;֬Q*S&!]^"?p7i]{(<4#eeNӽ½n߱ zG}Ļ'yGFFf_39(H#0w>̉wr:d׮z^ ̜eVA͛u[nٲرcs:a!4bxDQ,,*o[nv/=::66ȥE3r6/X`Qyy^ܱ߰p֭[cAx8+$fL`RXVw6.qףSTTXqbߏ sns-7;:rrr<_nP ;w7x?4‹jƍKQN44nƍvCQԂo:vQ`_ZPP2[}cSnu\yE FtZzZgiHTju|ϞECaIDAT=߈01+xBȘÏ?{ЈiBPPp}cS8N|ǂ&=vb[)Z0tEEc=Ǝ"T~mrܯʸqI֭(cOC7v F 44DP\ 2w(ە$a&(&6Gٙ=ZW~Pk!0jFRoۺ---->!mX(+)))) W54x:bgB#\EEE4URR|8PghU*.B9w3gx\@^4ѨR6$$fuqJ%qB.Ϙ0{[(\q )EQN/NqOn¯! @Ȼzx~Ӌ1B( `G!{ B( ] i(,0̀&{1qeff:~k޽p]wEGGKJZ|٪+/Y?"""V^ B?>gʞ$Dؙ9<V"`9נ4Mє67b2H$2Rʰ!F !PYYgw:n޽MMM_o}m{d2YsKKkKڵ]YͷgXKϿgYj ۶m?ݷw_ϔRe fEpB?gy'Zⲋ|ATuX HI,24'H_'"tb4Vu_p9] $<<\&Lj1dғdddLZMM&eLӧ+jkkbn3eA?/l#F OB, "(9]N#JyZ #aiNNNYtKGWUU\Ƚ쾴@34kDQyom۶WU[Nf=S {r=TC; `$L;AYY6mJHHdF駟޴i]H _|իWI]vz6̛7oڵf駟  ã%LxZ5iԩOJw.pMpaEr:i?"xuC"@SHLcgRS&fS";W嗛'Mμnf'I䔤roYjjhtP^Qqrq{`0 k!775OxwӳVů%1];%wi2`U+HIIJydkt.T_qZ^]MPd){T&$_\TX8KqY46476Sd箽QԣGvpQਗ਼Z'Ļ<555cǎʚL.~-ؽgO]mmfVVzZNIIUTϜ:e Ī{%)9n sM˽{޽ ˖/0M?7?p箝_ @֬Ys4%*,,(ݯv.WWW[Wv]5ښ5'ֹO>' E\AʺkNؾdX|ٗ_|~ٔv…w>dٞ{>;3:^|xx}z"$7Wa;6 n;vGcC(Gr"3_UsTP4k֗9&$įxcV(d:/xZ&?u߭I uY^먼w֔~|׳{(j/|w￶ l>$Xj[XimmiOfN9SyNRz-=3Va۶m&kjjME~o_ܓ3sXpGnnnFFჇLʚԙ7~?Q?iԩе!@{|JKK;3_B> |MX?#ĝlϬ=3T[o3VX~%ܼ+W?jnh#q/3g+Q+պ\|KkaX547SM@E 6w#|Uq>+ay 4G_ft|’w.~ %Ņi!l{֯Wkʱg5͜uwYGGx50.9b?vGt XGxPsWS[ri)ɬT bݱ}gnnA`]Kn&eLӧ+jkkbFFj[{K03'wޱZ---,{0m4̢X<9{nϿx&QQ:]D^uo@8NFHCJɺ3ғd_Ș`ZOYu{ӹ3eNq2aa!~h9{lUU(,Ⱦᆵ>wl6xrQ<E햂+z,w? aaaE?}m uu\uj;{ѮzVӉQΌޝw.vst٭7}73bvokWFu\ ˲ *2ͳoxglP}-l۶ܢwv:99eҥ-.]βRF_N̜:eG~$ruOѴrZ]0^󭪪qouהy^Eyf[vyw3.''gr:7ye~4xez s6jLL*"RY.mz@"t:K W{_fիVo'g w{nf'N{.Q0tKK+!"ٿߥ }{鑄 g5̉wr:d׮zbe)EfZhqc:? XWWZF^hЅOϙ7E0>:3""hꙂ+?q ]JfCu+WRg(>@0alRZTt@ج }{oD>ouҤI+W>8{bcg>\8܃3"\Zx?wsQ1))O4fV*q8!}u 0k9钙5iԩOJw<~)g̏>(kd=eJyY6${˭7o]pQDDDYY'|0ҥKrycwF^|jx ,=zT^ޱ7llK[z[VB_pzyd*_?o}3&qlrn#XPλ%%EEEEǍJ36ײ⠷垙~Wdʕ ;t>UU APSHm]jm˫ uzVlr:n֬_2:s̲+^ʐ۩e퍳 +++sfy>|@G5jLNdrv[M<}t(Q"> ,ugv%>o8Xێ9P_OѴ$4,S*Ylɒņzi}Rq#˲f?K'Gpyh5u8gȟ:yD}T[k 9c^nTS:X,%%ŬMMKu`Q<<_w$-8p0iX9(($%erԜ0JV*HTjuqq[^p(a1B}(+)...  h441ôtgyWkGA Ӳbcz> xqf9EEEQ4m4:4PQT:'QE&N@ рLΊ>5j]=ӠiZV,/8S*yT;zP )m.06X:*Fy{tパ9ErY[REE:Mf? TT=p/],B^(Z-*EBJc!0#P@pB=B !0#P@pB=B !0#f0#Uf\.p{AH!|O.0)"<!tUlrd2}wGBwXݻ#Mq/#>B]Qn)8$rj}ݻU*\.-BbY64,f|@7W{{UU!/שiIENDB`luckybackup-0.5.0/manual/data/popup_ProfileImport.png0000666000175000017500000012442711176022521022322 0ustar luckybluckybPNG  IHDRz< { pHYs+ IDATx}w`]űJew \ P 'B^(y/ I^%  Ǧl w˒.]scwf{%K y^|ʞ̞ٙ{.r6ql_.ڡvjڡv Щ_3vh,^uشbP;CP;uZ& ޾n%;}~QՄڶD/͙1 ^9O=Fqaʒ&pdAʆܕ]"Bm 4stC-(׌4Τ@u E#%Vd/QJ鎐0*HT.U$ynL"YَdH^!x)]f4bۺ9$I S~Q@r)JnH|dE-g%'g$'R׆!'m&5!hHBv"/"؂>HШ:lfKKØl@(/WojL& \p)tT:^= 8gNc~VjCK5e3B\ $b.'%ifLWmp),lHNGe¾E7` %-@c&t7=SnAhrMcz!ҥZ6ЕX 57Y6y6 iޛ%J\ExB' zGT-ďTsy NpqQ@ -'Ӎ)bpQ@#SXk ->N*>PCŕu1Tw*H h9-5%q`1خ6Y"'͕m[ tlf2tyw>(2m0|GKs嬐=M+(1-`,%>i 3 r2Ognl`Z |g_xYas;SfW} HY @rPٓAD,쇠mg`(YnԗbVf /^]PR1TSBe H[ôVY\`[{2zsB"3{ِoik) W6Hp!ݲROECjH5e$qJ 0ju 5S6Bh1Tp9#sQbDDkÄ(0iX+9A@~GBr; m8+g+eX@RuGDYV`SpiA29r˙9(U h9,4V.kq p jL_:a{,(#z1#Z x:l

eR-0R46L#+;Jq@86!.HTQ,1^@KX%ؙjbL\ F9S*'cD7 Q0eh Jba,<@/Bpr`1 3ywwEfyoLL )ÍSuK+P[ZA6lVI)U 0PBA)6!pM_s@1dsʇ}ϺU0VT 4 J$$Ǣ:*/jT *EZhj2ƕ>iMy@D^G.kESfIg\4#J(-Na2_GsROr\i hf-zSfsgY?8eLQ5u>/5S4s̢Y4w>썰"{yHrI[`AnFwvV&ݗJV3a33%8|#z+ ~p]SFd$DJՉ}߿p|M<~w @捾0 Ìd1V5G* nJa*`HA7Pc cJ(hHg!&;!:CZh |*"`:?w$9j CՔ/YTxfEEq`Ҩ[c_Qwݹcw'D/GRNVs)M#ju ֓TOJSUPQ $Ϡ@aU1(A^bďa+ǣ'% 0$! sf'%@PXJ*@lYPTMLH#dR(+ÚRiX)aIN mn?2^#o,`/o7뭯-ifmӻ&aapO(pxN]Q*S2qJ< =4E~1()1@M׵~'|#R+J1 KܤkT&Tɚ|" `VP |[{!)ؑjg<_CgGl2U5Be{٣)gw~fq%IhY8ep'N( ؞?(0@!]&ޤУr,u|j49`l=V~M64=0c1KơטB/nGˊcU |-*,v>Zl ꗨќ>MnHwjHpC#kрb ˔8aB&XJ8I8W@ H̔"^QuΒT8#lif*"A!G<1Q KSr$1 Q% bdι(-Ru,hΓZ [,S1pUeVw̺D_]ok^ws #pZHLH2c b/m%eT !L]Ztq.%|m O=8sU֎|?Ǎu3nx2sV_~[|j۸뽧v߱}Sckv3q>>Cn):;:eSP#SmKum- ]$'%c P5hP*mpr@Ȥ тB SQ*X\( 0I+=$ܛ;llJ^RaᎩs;S—,p*&9A7{D-T(1 amCu$y~HpRN2M`C_9#bpL(ѴbA=@-t;9XrP17 HBk11iSq\>Kp>-dZ&3Qq, LV$a~ƒՐY"7N,Zr@o.)aFDʙI5@0ܗ6&X# ]xF$hx>k&Ur,AB岇ۉ}lۇo/8G( Bȃ 7謙3l͊+ڛw}io~xzOyq~PYڻ5y^0={>ؑhoh;cIGhh<kwt?z3+'W᭦GV) +ulm#|nVE|vwC[1~ba/ mE l08z\iU,M6t36#+D~"G̟4|aOٿKFךGpȸ[,]>V˶> d&Sr]7 ]wΘRYwfՑC+u'snMe֨Hg"-ۚ#FUF8MgkL!㻟qo`llm#|ѐ֋]9,1h<^NY>õg޴`06O(Ϫ<*9ќ|֎Ds|?tα5${I9- <h䬞d[Ri [OvaҨߴx*+?66ZQ|gkcp #D>ړغob]%Z{Sf:k-; dѸC$Ⱦ`xei[ΜSuXUD 9y+k*VWDiO;//2J#Hd&T^:,"^JRK4Nۇ/cY# Ed|ϵm:J^eօ?Sh1hl!!r93``$$؉IZ49"bH]H7õ@+.&&Bn)E (A3DW dRtNpxe!U|Jh!pWUErUĕSQ@qe/C,^MY ")ֆǗ h8қ%BXTܴ\6y T]GԏA3~+{wUOfOSuwÎ۸竨҃CEe&v~X?a|Qܓc/6-ޒolOepL]I19bU$1Q~܅@#@S2,3Y$*45Hi) "&22fM1DC _UlYRd1|9W-yD2 R0-qQ}nksT#ŌP&&9(܏f ䷟6Z* %9LLqqewN쪲3`Q]%)+"π,kYϸEU| @xr],Y,3-{;ԍ4ω[ųY"w nĨEgۊ't>KrCMDعE̍ؔ" m=K.zC?ŘqYYS':{0c1dk݊2UEv5>_$73l:U [4UN9.ߋ.L"?ܟc/aHח19ўˊSGƺr;%Q?lN sƗ9/cn{QUG+ə*1I_@+BȵR`E+l w>9'?$e%VnS<-,T /V`KewF{]EFDLW+@E[Pj0ycTbM·S}6JSPaDq4+It4KJf=i9WTjL*ZAkJʪ/GLvQ qGт#ϥB3=w_z8&aX5ê=gn6~!3Jtq-s>+ ;Bu P /-7 EVٛê[{26t|~n玬xbu3{oGV}[u&rz2 "j>L(˚om31dv=. &ړyγ:eVau[̠) @w2Ǩ&a-OӂH\!m.,EYmYLav@]EL A(""VݙgmyûX;e] yݰt崪U)՗u;z)dr3-Vh9wz+3>3'ț!k #4`r !Ų$ Ae KQD0{=apSca +ǞxK_aU !.K7>mQ+9 .I3ɱJ0Z~Å+~ؐˎںΒwAS%  Ei8 IDATYP+pG 9 hR-chkaH͚ݶgZ'fkGcRm)"ӏ912+kθ;7;X7lb(6_1պ߅^Ԣ~T_7%3rBp-9Ͳr%8j \6m3xf6/@ D?22<,awbq@[OvPW_Z#ǝGǎWML=7uES@4>+ÊQcv'N;=^+4udEG+]{O[*FTvXeX0̥ÄK%%ɌD y  )Q^t)sd 'ͨ8vR8ԑ}=bIJCU֞,/aJ}$>;|x,ؔ}4Lض z?ړX4|ڨb%ܳﶠ+!G)2Po$xK !1"17" PDdJb<tHq q3 l$,}?Ye%>OcT5t(%x|'aRv SA*Pʩ@C<WEl:SXMTXH䦥ȌP0{5gT` e$+oy,b ~jaji Zr-HPY _,s0M:CH'*д{SycWΤljɝDJU: Z|XݗsA=Cǐ?9ҙiھ6Վ8%N<~t_iG,zU1lj_Ά0bQK+GVV|⊪T_7>nf )89Ϭ4 = x&g=wwx8ԧW0|9>?:`0z@Sg3MnkDy'ͨ;1HѴaw=;':jaۚ/ dҗ3&zoGs^[ٜu֜juҌ Ǝ`kOk*7f*n<1Xf) e7'Sz@v5飊ۺ3ܗX?ݻ)9>6qxtSC}/7dM $;&Ͽڝ94(?-GЗщ9y{7%M{}MQ9g^޻!1axҨ5# 8TA'0Wf栥wZڬݼ"FٞKs@ #krP橜0 9C)!|G6p`\}1ZY" ~܍)w%gư *&/|t?-`[DnQ3!p-\A -zq >(p iKH苸DY"ÀDe:9K1\siM. pW"}Δ ypd]J(tB>,@(7̚m,:zf/ɬ֛xoG U_P q#"YbBs&`zQg~fީ}b)_835򞑛-Rs ]ti[WgC{xXgF%XT֛ؿcjLwf!U'Ƙ@{}[n˫u`s O0G{=4 P:RZp OXd@6^D(|R8aX4h\ ڤ%"Fڊ W<ޡ}P8J-4!ø!%&U()9Qx|3Y])Qyf  a1V_z3Ji:h(nu<!푫Q>!i.yrgX_Y{Ipry1Dv(~ 拌QuШ(~9+j)ݶǃ+Lۅ (CM@eJ°!$#Ԟk<1WZ`!\ƫ30V,"եTT@Ul6׾} J.Q,pwj |4s=!+Q7jRe<\]5y{"ܕnnO۵1+)VM_|HC>f@m(P @ a 1gZ ]E/ZT%}V/&G q\m-n"cpX[[6  O GBlY\N\ N|-W#j*Q&!ALSUЮ,?X`9IEZ6EoD24LUŖS$& Is!*`GK@_<Hw%.CW5XgB>/h3d57guV<)(- Wlہĭ -c($ܟ\WZffQ]i>؎lz]@L]*R?OJtH pUֆ L8E_ŗF?xI&QP dr|ɒ1.--D_V ,Nq,* 0n)ޔ rNj1#Y*ĔڶQ%vkJԷG$A 6T$m[IA,Zg_mbQJ 2&h=Hw 2j91B`OtlP8^ܿƎ̰0p2ޮ%`( znD 7-`q5,&wz9t߽[vofV(R4|܌ G~6VV=yxRCGG /c1U!@ϑ:'atC/Ǫ‚Zng JY X& +akTsB45ڬ 2{,S(C&)Fƅc\Qr/fڤm Gጵ25`&ժض @F4_@S95s[(o:&.hϩr:h•юm]h\㩰Pbs)n$T@֕ʿ8 C"SNgvv Qzm8+&a#JѬ-]:VANPH).J x@VQ./ϤSޮd#ۓ˥-4|>?.*EP :8("6 0wmuq\1VV}؜SӞLt2Ƣ%呢o*JI$:(Vj 'J:*跞nj'NO 4|= ?{!G}[m/$c$rrp 4Yַvh8p p'Hg8dֈH2`YBgZd,LuReZ--k Aeueiр z}\5G<Yo^F0Z(9 \~W[0eqЊ̒nkxFeݶ(U>'p].  jAYlpg`̒ e*{%y`:Jq )gBjRLA1%1v,~ÖBkPO@HIe`Ƿ 5X\H]e$ a y:D$R5Iհ^j^Kv,oQX#U.;\*'2 q *a pIJ01ƁA`ČpK'IU5%ķ.Jɫ0s̐J1C*r%FM5f` ccBim`+!’an(mQ J';F/c"":C"[\Jq?c+S1gfeЉ&%KRdAZz fn;zfcўan6 ikjpo-5 ]}h] TJX! ΌltXLB\AR̘R9żrϊ rl22b>?Ϫ$ ٟ:48%<9*O'.SWI A#ȘĨ) |V)T~r4q$ļxι5@dѷ5}& 2 jɪhxĿv去eLԢ#\F,ȵZ5dU]żSe^G(*Ѿaں4Y d#4^62M#]9ǕwB8 3̐ulߩh2tUr9 `Zk[pg8'иm SjxE)P`_詠uw{>=A4Lx>:`?^uW+(7AYYfv(?vhp}K?u/tiԯWQa\?7_|]m>Rbra5iRcE]>eYSC,uSҁj6?5ҟu??ǀ&@15}⪳c$0cEPGJ@f5(PC3y>pK-r AN呯ޜZv]WG yZi0V[;M=b-qIDZ=0.t Ga.G4;'cЯ<}:׳"J{^f@VI \|шt6若Z!@InϽTf n̋ѩ.Q # _=V +hznh_`㔑S?d^tPfpHџNu r"f_cx4OH#u?d":wQLzZ90t?b %{ PAeKggڄSձK> @Ge?.<;P,mᓻ0Xr^vyꩰ_@^?uet֎6c'뎃NTCUyqMC]tT;9櫡R0 Z Yq~R178_eWBEKwt .Xra"İmR!_hVepz=q[wuP0Q q;u:4q]S]t!]PpaV];ZF+?4yf):G<踢Q&((ʖA-j*ؖNq:V;0pR , +.OfsDX [䁷|&eT?B$V֮%֠%n>Ǟ8:;} `*laT]$`S4~uL 5WJ<6l]%aRgƺsw;1:@B6фVC~Yyk< . ? |uRL,fov\)O;\|yM݂ar1"=; ntgG^c IDAT~ -#FbCH$>dLzx;rT*UYUUZZP;~Zggg[kk4||`TRܰ@J/sex3VRo6*D8Luvt=&T*D" {d$9Xvnr}ᇛfP;~Z,VT\\e˖Ғyb*apÃz!+z_< ~qU}GՇiCRdQQQUUUѐ]T~Z[OOOuuedˡvjd.F+**gE|z@-_͙Zad#(&]U>:F #Hh%Oi]&MJ&'vje2۶׆M{>ꉓ'UP`J%5˵UTV|{BYIk˖c,ܰi c&^?9.Gdزl ]]]y??h~m߾r팱 \M xcϞui;׿͗N^xpdoNx~v?Р";!p6߭kh9sF{?~O"e~Z|Y^7E|~VfOw6vO"{f{={vOOwǍ{@C43q℃v4IeOΜ9?svۿ܏l/龶_Kz#ǔTWƪFddUKv;m"IljD55ʊbX,VLsMM ɜsnYb8} Gh 5{',9lذ,}qw zik֬y˗{k[H|뚯:iS&]r|Z,ksʕ+7ĵ8j.YkB얻8ۜ9sɓ,F[cEjRh܋-kX.^qp7eWW_\t)c_Ajjvm~pRg d6uj2Xl_ dE,CԄ~\{g$z{էq/W8-7N 39nj|5T& ޯ? GDN\yի1bae3gnڴi="S|8tAʒBٛ 3+=q?ؙ.gF&U߶yK/8|>ݹsM/9eҪW_?EHs ~?%-R%e20|!~h.4޳H_mvPXb9|',ZTmz 'c>:ykw즛n ن ==H8 R)k}KRپ?pD09'~s>|R[׫ܲ,YǏz~Q%#pG_RZZf͚J{.X~@^h'ecˏh-A_z,~/)oQ?Kμ93Sg/O<#F^9ݡؽͲL>ep8sN5jT*zii`K_;^uU߹ZcCj\? wg-pQbY~NSSi8 3g|G/ vm9#Ni׮otlok3v޽{'MwKot1P.yWĈyjd]]]_>_^7j(ʊ O~9˼ 5Mnoo?OZYGw޹ӧO?(l$ 3_ Aaʕ iF"EO>3cnoYy>4-{WgU|me_t d=/bofwwg}UW`,pd'ɧ-[D"xI7=+QWꫯ-^|72o<4>ҥKw/򫯹fC8UV՝p#O?eO=5} ů|+p}~ƥK3֛/I'kw#=wZ0 +'{u [d}>p6m;iIY3+^..hѢiS>ܳpxgy&,>ML]t8:uJMmݻjkkAI9+*J->KvÆ a0~‰'tM {ԍ:|4;;;}O8#}>߷-2%K,_̼|R|y'N4MsM׿׾)@&+LRW}k``媕#/Gdɒ'x_?.qA>9製R 7`f{GW\!./~ O;;#7(vuZF.K8_BQ-O,u˞5({CJm0h4z'<f[{ඳX~$T>zƦ}n]s붽m-[Ӳx& 1_|D8lѰg m`g8mAgK_)[^^CܶԍA#FԯY"v&2r^?!m?(ruk?vo[^o޿…d29}H$R;|+}RzeO=H$f4yuL4775ʉi>3mmDl0'|4-0u:AD8t:J,r`YVIIH<}˲~up,{?ݫ7=orw=}Φm^lRl>ȦMrpH:i@?O|q>nzs}vpEKr!`BƄ8#3onj'|2pnTd ,755|1p} +%M۷o߾}erŭ1{<Xf͛cP:XlXח|h/pEŃiYl;23=E>/ !zQ?,t`S 9AFjjj "Tf&9!R&q{+ ārղ󛛚xl7|egqE`E"o|۷?:[ !6U%t"+b{pѢ;v>GҙL&yXoݲu[oq?h͠=4nܸcƘihh0-s ƌyʫn-:{~d;#X8ַm۶8cl6_|YKx~?B_2+*hiqǏキ'L&dԺ߿;O;|pdJ,Xd3_˒*z*O>ߝw5}L&sd2ӧO ad-G7ѝ3׽>%w,9glW&d2N3LEyܹ|v:0-X|"ѓL$Xuf3T:cX$ ު/Xv3:z;z|?^- Jz 3,L k?RWӟr2C@tGd1K.QF=Բ{vwW\Íg} p8vW}#G|l67~„q>'(:/B z˯S8.;0 c_en0 cÇ9駟rSO9% -^xƌ;w #7^73gh}5qeH@do\\huT.\v^VUںj][=Z+C) ٗMcB^G\>w۶}}w>j;諯~k}5LyIɡC-Z(+4iK xwܱHOO?|pddK|s5*viv H nz%B#'~u*KaQO,ieY___eh5-h޼yאVj+:7(W}6يZ2}J; &kw;AL$˲SSua;k^^UZ8~OHQ l< DB<1{#Nʤ>}xcwBjt݊UPU|%CD#4E(R:ѲD%E*SEQ9Z= B!:0U:z/]^xw%E>R>0 3d5jn O?@+ٍ"^S(+xza xx[yA޽JeVVVVVD" Z[oܮ^㼂_r}+uTmvٮ!yT8-KXUَbG!2:u}պU\UԤb>"KT )knrw0Ye !3p0bJW@JL ǟػR۴kVB{/ 3gBwnYܹe:^..Y0;lL*,&/Z9бcǎOѣ6X-UŅ*JI:餤DfzkB())Blۊ4moo-GGGDVtB֍H\x-Gtz =H!D_\</3INNWE&H uabTZEkѭeb/E9))5D"P4.W(A?t:BIQ/,ĭEhvJn vvvھb;HPPU[K_Zek/b](BcYH=G)j<֨Z?4n/aV)uܗsgnE j`z燷pR)/ȊlܝDhoA:72 ,kIJ;U !(gB_(n"+X=׽[TA;ї3g<צgB$#Bt=›[qͬ5q{>~~I/$ɲ)N-68u5It(<xs|-^MQoF*qP 4hе[7'ODGGBS߿oE*>_e8wlz#BaW4 </ЙӥFi貋1wx[IU:nUJaJ߾}=}7n/N<^b;{{BHM}ѐ!C+[aARif窔xD*6gjz~}^ӛO5IPMδ tF&B*<O,dbc IDAT߆TeFu ɖ 4Ŕ[vCoGxB"u|IV,x<^x<E5{8w\}5jy)|q/O 6(2Xu5YDBQD\ϕ%,EQ>/Q+\εkV}?,))>ŵ=N=#l>0qbg33U̴}KǭVsn.6#Ej:S#.bJSP4:V"h~щO>+g{||E׮] !_|]ry&M>5olAPU6[vz<ZJSMQ4Eţ)BSV$)%oiQ#Λ7v؄cxzx0 cop4q֭۾b}/ZAa 1|Xfͺ=k2F,x_QQoL:ףN8[o_31ALtsnݺ2&sx{l5ݻ۷gB͛7oݼ9fXBL&n)=!d-CB&.1+{D:;;GDD,YhmF(h[ly^{bÙZRkB FMb闥v횕+Wroo>}lڼyOΙgyy{Xuxi9:: - oߞr…h}ܦơÆ5lؐk䨬Clb„ϝ7>9pE 4SKd>}\h4xoKU[,YNJJBfPqQQzFfƍt{MwJg͘.urjӶm->"W(rÔ̌'yy"/eediS$&xyIM^*.*hd;O Pdᒇmn`N@5j} ?X:L<^BЁ.m0}="bgT\\ZPTj=J.Bt jYs2&ED<"V|ߵK?J[6o^d#8@mk8::d2,egEAuhP(ѹyyM;w\ŕCY;/z6M$''x7,6G4uƳ,;ię3fBFmVtaZh~k׮ jdMճ-9{2d1czV˚ɓm۶8aJO~zD>~:r9BHhHķ;~8BȲe_vԱQ-7~R3T;xx&{,-558fMO:uʕzj׶mLLIgC.Ŋ[Dܹ˃Ĥ˗Յ h+!#GO?wT*m׮1*5+W>_u:D'Hʙ1;;ޝ3gNrÁݻw39$9%K~웷n7lp[|OqĤ{~\pAzzz=|IgL;mZw-mL ];6mtBP(k׮qF́͜9#-5?&zQf5RjeYR,JʾǛ6m:bjݚQg~ 3{Zn㓜c]KӦ+ig'N;޽,Вb6PRқ(+F0LLLL^n !D$ 48&&fG={n~鹪Լe)ؖ\0$d:&m?,/~.ax6m;hhXKPۢKu 3JӔNǰ,k<1S㖦G}M]G9mVZy{:Jt:BQD#e2-ku֙78rMqo&M!_@؟Uzyxx&&w811ӳ+?@fs*A}wssi^|EBSn޸A$/+U*U^^۞_hwک޾FeQ#G/5/.׾} n`Nat:0r{޽ .Bn޼yBHDDDRbT*Zh2HOߡZwojjN3? 5 !dǎuX߾}37lXVΜ9oO#YvAܪZ?guwcrٗǍꫧ?ݴiSBD"9Q:vyJ2"oظd⤤$YYY 41XCyUYÐG..iS;a|}} !1b>ܤq&MV}GP(;u|wOc6}Gٺuxޟ80}+pViy\R#|Rayƍ6h:Q})Tۼi{wW^c$'%&&z{{IQN2gDaSzꕙEEQ>fΜ9ӽ{w[u҆RSTI%ٲ~NyKZ:L8^B v)/_J(;~eVW^V((([2zX 6+X)5[Sl+Gz 3 jn2lEAAAr>f.2;l/HAuw͚!>}(jذauRq$Px6lF)ĭ<<xz9 V$m[Vj3 ֗"K&ł^v.kt^ [Δ]^~):-jCmy>&\Jyy?Ç :cN8qQ#Gn۶U?a-_rEIxc-Ӹe Cѕ)(3lA̟|Dܹ˃Ĥ˗Յ h+!#GO?wT*m׮)t1Ԗ(ӳyrE_HV/رcnnӦO }wv57ذa_D~'-5?j(}3}xXl(o Jז EY_[iCmyqV/6++QF3 $+.OD Q*G}7J$/S[>++>jw˭`;j|+V70[;&&\cc}S~snđ#GN6500UVf\t| P[ rfGD{ʕ**//wmE/ZvO o^|ղ(fKǣ<\$@l|F t捛*0X,^aŋSFfee 0lxԖԳɸ1Oihaኢqo[om ((Ȥq m&&%^H$##bI3g/̙熛3f4n`R#]v'N2U?Mo!͚5"MCս ֭9PL(ZR)Kbmj<0v&.Z݊!nZrE(/߸iŌ-`#ϥd{(/&AQ&#Ds3E۳PcXvqMw-JjZ} ܞY @7}זBӥ }OB8,v۰sN'NN",Q?4PmИ1!s>ڤ~t!n`jGYצ4.\ RS Ǎ;TXp>=, p*L6ebjxqwWU[ᣏ:̚uyչ^Brܕj… OhnӯǺy'OOK+8]-;w*bҤ#=:ϧj+8:KJ4ռ^Brθ PXXXǎ{jhhhYǓmB?|-!y_4N&wzlo=gd\0p`\E'q3׭{]?{~>=ʕ #GO#P+jF#vGE=YQQ-gFD4.ac~Ξ97wVn?Pz {xjAbGGB=rȟ~n]P#pW M 4mggWΌ=zhʒիgw蘥KugMbc6]2fLhh֭=|d.__GxsaX=:ΝJwGկ/Y3߼};'11߰GG.Xpv{Ш|_Uzd&u2 υFUt;hPpAo.t/_1Ea~}-]˺|9%0 |%%ׯg?֭{okؿ\y:dР-[Bl:yrǓee\]퍧 Z++0ðg5 ;w K߿Irr U*ه;wxVVJm@U+F\1RU)K%_2-YVi>=Ƿx5NN[,Ô$'x ðNl=*x ^^Ҥ|C^*88lvY-6劎eNGxkʼnQ|jf׮LVn8sn+>֒fš:X.{_s[Fju=a,~eg`Y˫whu:JauLWYߵ츢/z {Pmnfh僝Y[y+wwbZc/R*jWfn*cPBGY}-˲*B*q[1EeŚԅP)rJeݼĭJRY{QO8-Cpq 9LJB.^T+%-u:Nhj]MUR,&&>HK{T !4EXx3k3!D(6jؘr'ZFsv_MoɓGϷ27JLJJrppT,5lTVaJ6m1 PwwckW$<ϊ% n-Rʃɛ6n o)|>M]tjw >aݼ۶mٹc oGCj͛7,^t1UYחUzT)_̝7wu|K|gYJed@ 4BӴc z=z̘&fefv=66vXj~3vL߈EGZqϻ7pk׼ۑC?u;1X刌LyC !ׯ_'߯SWΝ;o7k׻W~;f2jZjm[yY9gg?ud۶m|}&OԻWا[q5kݽ{Z.P$IΝ;G{ƫjr06YӧN1}?׮]$8MJ/ʕ+ծmۘhBHhHķ;~8ǐ:xyUq)+)YtgQחH}n32=zԴiM7o߾}۷uÇb%}=?6l+t%5=&23{u)S&ϝ77//Ϥ 0r|;w7B\]\V,_۱c˿Z۵99vvm۶~G_Z*4l׎'Nvݷ+222,4v`!ҟ ,,,z#2rHrK֛/^>{ԴoVvw0d'dc?{/fgg{ONy8`{64޺QFwCɩ_~>m>Ν#,0LaA3g~غuu/^,*,7~ڵYfo99%9K\ܡUgo3f 4RP_QQQ4MwܥYӦOn҆=M7" 2ۇҬYSwG- Jiެ9Mӯ*!$4$kHddƍF ;vq4MѺuCqqqqq!![.g <?(ͭeːԴǏ7o|a|>Zҷر7zom۶R]uww{xB6}P(W^x/aaaoDE܆%8q E;vz#*ꧽ{u"xUe䉋 Lwsw{%]-GF/NJ$o.E=z 9z Ewqi֬٣ZyvɢE41蔛k:r6|WJ2e9hV#Dy /}t53G:kźl(;;+++ͳDT([ پcۿ\Epp˾ di|>yzy~uΝkBZmQQѽw5onaWsrr\]x6mB*aoo?/]2^BvvV@`A`@~[mTF]t cMǏwyxϖp%!'';''g UV&-y<zqq2nׯnAM7P%q^|y@@!dіeݺl+4,ȑ_Lw޽{jzu2ZÇM&2 s玕_ݻk)3gغu늕+-YfQQѱVXQVJu8-5&OLL,Ke:څ'0jՌnݻiU>HѢehR5bҹԴ؃jF~ z 0 @믙GZl1"Ç&""")1qm*JV_<{'O:${_~޽ݻvժCqqׯ]#=zaQF{?3qҤde-GVT*LvR#iӦf[0!dǎw0Ed2ڷo߰aÍзoߌ ֫ժ3gȑ#LYWsvv .\boM0̲e_d%W^;x{虒w^JV/_|b<|ghpOVmpd͚5g_~^cWJBO>*j1ƍkٲeZj_0-g]bcݸa)e„oć#7i(IU_MQTLa!>>[f&sp׭[Yak !۷m}Y}||Wr^wPӦNcβRVnz1>^3sttl:ͱ - ox {{@`@VڤAifw] gHzc{ѩS߲hѢw}W*ǓJ%=z:e3fnJ*l۶ڷСƍ(<;[ӵ6;{K-Y32j2{Q*i5 l2޽{Of~2`_AZjjxxjo<1{;[V'LVj9CFzz>}n?;VÉߎZRoi!^f]`dV{kժ;`8./dn|jɋeYy|~~~֯NT\7kV~W;NXfdղԯ_7t/#`*޽kj(pk6uX,J$HJN Հ|AY ^vʗC[,UTXh]CNS)>>1ۀi{ꕫN98H4jU5kXV|-!Ǻ@Z&;:6ڊ㹹{4TXXx(.. AB(BZLSSyz;99!nŲJJ5jPZ=;;;ooo3z:Vm$^^^fe mT*$:%BQA6tbH$|"liXlggÜ(C-U=j%\d 9-Cpq 9-EJt:NtG@ iw ĭZF\}VOpfed0P&<ܥkpÆ cj;klܸQ<UjKhHEQw6zq:ܱcكK\*Je%%Պ+ڴn["0r޾֦mo۾/) `Y¾۬]AegVYy0yƍA-ϧiKULyJJ>5bRQk*;VrkѲ%˲g^fE[e~~~b;;BH= VWwܽx!~k֮II~(̙-Jϛ_}88t}ÆӧM^*T<6[֯KHH^^^{0qB.,|54 *@ 4BӴc z=z̘6o0p@޽{Η^;w7=FuqBH!iiisY !#G:}̙3 3hwdefv}ݯz_N~睘X">T*Tͯ ]JzcG ?*ҋ?yѣZ:|pBBڵkJJJr)[nx)ɦϜ٫WǏO2yyyy׮_;~ΝN<9gl&s͜9Om_cc}}}-[~jxo !?۳W WZhAa߬Zu+ f;F `f*!%Eoۡ+W$k֬M8Y{왶mlG|||TJŪ+ko>> Wzj޿g)ݳ{wlZZ+UϚ=gI";f[-rknhx=Æ {~D gYgh tKhҹKMO]">}:;''IPfMMpk萡UXG=jIt풒I9qx~y<ޔ)D'O!dHddƍ]IY 9uɓBT*ٳ͛7ݾ}{4M+Gi :rժUqqqqqq6ntƍ/=Ϗ6$ԇE,䓙vv-GFFf(S?3fPy@L]D8uDλ4ճgАG5^'ŞGغuT*ݰq;[}HII;xR` oau~ hF->=)c_%on2}6Hشiӗ_. ,0LdGw_9vl\rĉ޽z-*,7~ڵgs;adţ ކ_}}\IKBgOzܹs;w*捛f;f*Hn_ ,= 0y'ɜ'ˆG'O:=޼G7gYgϞ5z/lY֯眗hfִ{Cd2h&<et9yLVCs֭jҹԴ؃jF~?~CT|3ݥs?hԗ\9z"Z Z2$D~#Ʉa֭[/oߺuر>fc2}cIDATqq^n@~+Eї\f 9{ܝw!={~Z$ޟg(N,9ğتMkF۵C"VkTjB~ƪU5qIvq= ᵤxZ-7/;Z3SPPG:՞g4΀b)עU/Q0x,{Vb !DB$}$=F7...:&X,չ.--imzI.mg(Uޞ*}9A^jj;Y06I -Ʀf8.˯m_7n8Q[Hv 0<f難P($IV IRP쩨lb~<ðiIlhh)--=sLzoD"twwO$e7Ninn cDxFdZS]B,نڬ,UK~8-Z{ov;v,KJPK/N`j^ܽ{7]t`"p),ܒ,)m`ں?if;O|h維۴}xDB@׷gyjjF9>~GK<(++//+6YiZժ~Y:BRRB^XXhzڵccW33| /99|չ!fTJ{mOa6M/?_)/**`C!w{a"^_p+V3֌vξx?vh plMM˗J##yɁGH$CeK\ Nvd*..޼w-c(jjׂYg7~@H06 q$IL NxBh{ _,,(`~Æ]<lV1~rȑbUbQ.'7nܿ?rr/?0riV;supdO񽟼|Ç]f%*2''ljm}}V ֬Ys%ZR\͛~uYYY|RrE(^.*񎎛%W1 KII~we2R4LiO8BH@p5V=m6Qñ{TsKj TVVVVVMmͿp8ܒ2-meZUzwssmZL1 &"L_C$RiӦѼ-[dj#֍n߾=66ƟH<]+/qq< ZJR; Ϸ!\!nlvBI""|.W@dxyn?rP°Λv 8ߺu5s^~pU qsgw;7 |~kKXX$x#qvTɗ '\mS 0 CCCN-]B0a cuuuݹ_IX<[ ~uuu޹[xHY,=7P(DH$:7-[`&y駞  <؅v?M JH]@a|>ѡẑbM=ē'lFBENtp Sv:G `a8sm#nk>t jZy<-9s-t ms-¹[`axȵkvnMSOkG;sڄx_"KBp`E7h1MMH;H;<X*YleM8B@9H;3GD?XC?[\sfYpcf=F#8|O(\!ZЏ4b  >(FO0?,!y4o{k`}akBW뱡^;1ߦIENDB`luckybackup-0.5.0/manual/data/InfoWindow_ProfileDefault.png0000666000175000017500000001314011176021312023336 0ustar luckybluckybPNG  IHDRA\ؚ pHYs+IDATxiX;a'ZA MV(ZvuAZEE.XEVZEEP-D[aNSıŕk2yt.iSSf3 V, jq:srƸ]vԩ.\ "$_N&8ooq/zgQNnd֗t81̙1..o6y^^qqs{s„#DTի=<&%D}ǎч?y|ҲG2Mb٧,]?6ͭ޽{c\\~dYi+DFF2GY7 dj;m344AD{!3fΟ??=#}KkWϖ/_. Y/%^=|Xֆ]pᨑ#OUh˖-Xb%͝!i@F6I؏-R볲nedf*** wii>4/qE^Ea;7h}uu5YZX m-==_rukM29xɒjYh挙*D`|;[;---ױ\]¦F55ǧ,(( 'O1|MMMI2M^(fdgdfttLMMʴ({os85VOI2z A/XLHܭ2{333SWW:SR332;]*))uZ%X NΣZZZ~smm?j"x<.믿;U\mZjHGG{J{N[6|H$:u++k2x/3d-_*-p&ʰƆ*#C=z=Y~ej s󚚚2-́]RKs{osU~~Zozuu r840#C-́̏`?xs덛6]vh=H$zYMMM_7c}v\RIiYqIisK~ʼnXUUU^^ݽuoznٽ{O_7ca JJJKoQÇC~8srro6m_>&4 ZPP4w;,%Č IovvJIIa?nw}'4/Y9CKs`ss3ԂuǍs=ud޲EKsCQZ333ǝFljHD~~z|(IKegߚ6uog;cDfQ#466ɼj7/h@=>ק6RRRF|}>y<[WW~:Q#:6C%+HіNx]?C}c#ùsf?|@2?|{{{]m!f^=KJJd]^?&; 113n ?+0{W,_~ƍ[&&&o/U]]56 [QQADwrzzNKLH;vjt=ɳ ϛ7LJQ^nnAAt7}%>!v)((nD$eee2W7zxL)~01!AOOy43RZDTUUٺģGhm:ڦ&755=,~2eʔ ;,2n8>/ f3XMMhjjON:511E2v=fe][[[Ƀ톍6o:eʔ́2@v xAiiiIO\[[@r@GGG::Æݾz4r+NO_RR%#S\Ddbb嗻?~iF𼼼3%iWGgg""]]֥/%3?_~||h玝GHI"*.)fC>߶+WXAٗ8z;?('7/.>/-552"B/L{[&M~}Zh뿞8qS7mup֬@~fWWCM4HH`2e6}##JK_ξoڸ̝t$:y!>>,,D"Q+H3yʔ-[6GD1 &Npoܸ7l yy"0{=;~LlѲeKCvJNH{&1!l3/BCc\~]DEEݻ}VQsС6</>>agJJJddDcƸ3$DUUegŖVVVV1Ba]lLm=<<.]QRR:ށf̜ID66el}|>֯HO711aFrrOBCC]]]dꚐp'Mr?ss?ޱcQK .\p^ Ν\fkebB33s%%[ m>"4t->ېByyP3#ow "fߺ^WӪ_Kd;?}#AAۆ.^ѣDdii&;VQQakk?ֵ /_p zk099̾tm۶o۶x WaV0`W3\>.#hQsKs,)l',Ú[99:(ssݾEF۶~zɫy&[MC3lڻ>Ws!noe9}W. "p9'۬ V_Y_7Two^˶t/dg1qֺWuOy_oo󲤌o@/#YGy ?8fk?;ČiO Vjh2Fٍߍ*˶#ߓS#߉3KZݒe%L:%{e~zISW%:sNΑHDw+_괔N2͑x*甌EM#@^սmݳփ #ϕi9uz}PPSTk lulcc#\wy{u={T&(3m̌6 e,]P P&(:\uO Y+uz}O]I6)777FQcȵ3A9#tG,Hi=Luy{R$Jд "p i˶W'MlTu;pEb l {%:#cRXy:tmS䌑g~e~o +$%s啋(jjij]JBӢEUGQe[0~棛YYvZK[M[#w":G7[O6J.o {K);4 0P٪ƾQ?~. 9Ps+[CF}FmG5g؜:q,6}N˶u̼(Z<^GXH &}71fz ^R~?=j@[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[!aV0`+d2 l B[0u55QK @BTTU 1Y,kTWrq/NKKKC}=_OO"6FVh m@H%''5H^(cL'&jl4ϾʰĄ>ʰ!ff}@w?L&IENDB`luckybackup-0.5.0/manual/data/PatternEditor2.png0000666000175000017500000016234511344511317021156 0ustar luckybluckybPNG  IHDRvj" pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitlepattern editor}S IDATx}yŵ{ff`}S͠DI^ܗ򋊊D D/"(" a_gmXmk>t;>V:uԩSݷ/پm+Xtmع<#<ȣSiI铏?V\\D؇O'~߰aZRRu9zvv!#*~ XL)+$;9t&”R>,LQJ!Nrp1/:3ɢ PJ M:Oj̕VR{_$%۷m}hfeg:tXn@Bj4ȈJik-0J Es; RjAҸDBYx@82(,G"$ qn^e҈Nm:$*t#jAAY{|F}Z0/ЈUb QNN,bL{`k?ʢ0RqTjqE GY}H<|P{44Q &B% ARa+<(w"@o`uCH$gu7nܺmo>Nҳg8XƜ{4Ǜ[ш壱XKsS4ZtHLHKs$fHSBU0RW^FxKKs450`0ثgCRrM2uQ=z&dWe|hdΝ9r=ԥKZzzznn^%xɨd.[oe.Ypzi%6Otth1Uucny4lJjDQ,vJdR9Kq'>oHq^. G3$jW 2l9"LĹώ0JC@X=^Uv㤌;Z97m`dP? \4X{}J>f)$0 l%Y ?}6 >D;7>s^n^amE",#!y%%LJ|~8ڽk*{I~%;ZE]v5`+Kۗ\);vhkkޭ +nY&@CmA=ef܉ v68AJb1+@|>]Aݻu'󒔔!ŠAݺvcB[b|s3T. Em~CáM69)3`n]b1u/)i|S 55|R G2A}c=;@H=p));wԭZxݻu/(hjj߻gƍ_-SVQeS A& 7˶%XtD*F`]{YL.XEq<h 5п?|/x#"T+`6T\}QÐ$b`Bx-9(P0$ } 26QaD j:`C}JC~) $!}*)@ +.!Ν;wM"l-` ii`Bnnd Z5%nz_7.AO#P))--˗/O>}Hn‚CmټyţFNn^aACjIP 26l( ;i }>_SsSeW'#G2wڵ`Ȑ[6o;x/.*$ȟ\y‚C WTTGP VrE:!9yEEXL^(MΩ bY,`qMAAi-[0liQ6-- |N(7ܓ +x0VOҔMdg뾪o/7d&55_tÍxgo޽m۶lu,$9_֠yA*tY4>8 6Ϻp}ɓ)%~q}+g+VgcذacYYOD_}2r{}?eee?ӟ1_lذd,lT<<̒%89j;︳ diS՜9s~-[oܸə5^{m5ŧr%Iwl:4s%?@FF1rn۶*QJ t7pB5Ja]29{y'ÇuwyWII ~}@כy7|c_,`kmmmjn:r斦#- ----#'l^(y9UJ&_(J-&T;ǷGL6]W3!{Nڔc6<>qX 9K#2Mm=`N5fQB(,˼ d'램"\l%<2N|> D?F{qI!>sEEaP}2wk?>o瞽wnCZxXσ%@ҧ/rZ!ݺvBx v㋉!~i͚5}cǎ/8λ~θ3׏?^XTTaknDBl{8ZDlغdʔ)))&AA ?958z%m>_KsK}}S /Q#GmXoE(h3λnj%֯{KJJ+ª-[h4v-) 1Q `ګߟ@?o ݻ_ƛnzb߷]ZG/]oٽ{W^x0cXjժUT9S-ݻw_rOX_xw yid @333DBqƙ:4+D؏M@YN##SICG|V҂&eQhS^qCb NڀDW+ɬ:Qu`ZǪmy♓=")בgSM\x/yy0z ׶47J{'f>_sSqؽkWIi)fA_ @OO<?;x(KHiix8 O4Uxfat;x'a?5k_g xVIIig vu.k+*"-- |r5XƍSF]G~)Ҝǀ0(JO"2iX,6& iܹsڴ׬Y3O?= CB 촜֋8[FzJSO=lٲ+UYw75~Js(]꫹ v} JӳࡃO9kRDiF,oP 9Rh~z /UnNa㱨_?=޽{Bx//` Ph̙ .ܷ>5J Ny%0{ٳgcV|SO=UqԛoT-Y5YV`K. BH}?4 /]И~+**>}<_pyK?>Smc(M:XacXPv|0!: oSp#mѵq18 #*JjHxu s92y:+eYL 6 PQeG1uD,} J(C*L5BeK )mEG ڷ{%g-pKOH>C z6pJB>pxٳc,>/n'ʼ1rوK;SoFnnO͠^ ={L)$07+_zE.P$Ԛi6FlȪTÿ*-<3/ Y;Ğ?3gNj0CPS$vix|0ElC #- GZZ[[:oͺߋU*$/7 eV^Ĝ4Y@C ԪID8n=FZ\{fU{R~- -U &Z_#"'Ld wE 6HlLp(  0:tpz!ڌρ`4֎G¾y59cf˗򗿺˹&$LD"LAH{( ݳggyC&O7B[H D`B%`_1lAh瞫\|ܸq믻^2K 4Gf<.Krs2@ p7w8ݻ7nK)Oim=m %LE#/%+3 f;wdY,رâEG?~Bzzzkk1:]q8V_߿um{PjA_TxRZ’Rp@;x`]]]EEbcbAmyk^.rL=&mY)⮧}Bk:uj^~^܈ۚ8D(Wzğ /wۧOH$n{w'"ZuA\&L|ͯ>}FѺu˾Z698묳w}OCB 4 F#M k]y޽{Z7t3q$;.+B!mWc&t3|O#3ZfkNQuh@vPj4$% NzPg $$UhqbV)VG|RAVP1T Nl.J/N&9^+KX] X4m[{ooofϞo[9bYA^rͷLtN~K\F$J !QEwxH85 HH9R񎍛_wKU9s-,,cʫ&On* tB9>9gBտ/Vu 1kZ0p@8;o[TTn֣G'|ƍ̤8MP(b1cv5P~&D?^z2rԨ{랒Vu?p8\Q^q~uC7 IDATw}1|VrVXXXo?~h׮]PRR2z.P#іR} )(,3gs=駋v G?fڽ^G/4 c@?˻4){hGi;sx?177wܸqwyW=Q k[[[[{{-{'+Vlz/2[{P  9`V梿BAı Vt_4 Ȋ֣K@@x@ 1 []U 6Pl(~(!V9߈=b%.DwFm%U@w%N 9oMؤv 23>yfff&Oy 9eS6lP`D#|ķa6$d\ff*RrfՉ7*joǰԹmmGV\ɔF2f%dr.sٳg杯`[nFAN^_GyybR;JȠ]~>0pp=RA6p$tMg=OEVN"l1ث'֯@ĀwNi%*u$Z$A" *dn"l _PԉO,-X%7&vV!n7\;'T(nj:)Pm-[`}t\\: hv(VO9[Zr \+-Uv0ц]KK[aAԄM~]&y C.]ㆱnݚş}:pАl 8`?>-}]tà=RSSYw,$ގB8fgdnş}:p=RSh8>p`UULHR+I–9 4w3fkj}nǎソv}u[[9٣F Uf?323S.]tFloo{36/// J0u>HNweG(Ppk#PgnW@Xc][. 4#VLTy3A)x&&O`o2B?SA޷R{7mA$ + ɅxjϾtp e÷0p+ =ֲ3/(uд)Uw)$g3< JnRE' 8P~mOE`S\sqs`.9Yk8H323H8…al'H @KӬRw6%#3355]p8ֆebeΛX,ppCC+,,gD[ԌLJx,joowIMMc9nKCXk %n'V4s@LG-JAU=~Xp*4R#2Ϧ;ږ9o3/TqxQZjHpQƩ {8࠭`( ֊pda6ة4X`)E jK0h`0(e)x/LSߟeNyd(t?ªGW9iP/$|XG9TlĎR0|H`ds*tBCt"bg8u8Q#dh%bzUl өP᠘)1ә$A>U*'FS-?*I1XLwdщj/ă)C0k1UĬ NH\yztK4ԗ%G[ ۡ6Nqs-6j~hKyN2_Xj"RS‚J$fDž aʩ JZKAtve 8.ax? Э@ !D5FE9(eG͖P0~oւ̎PLDS) 7܎RtdWvЙ57X>v@5^Q-|v7A _(!pҚLh:}uaU~A'1Qt!i=Z: } Kt؇I/hQv!^vs\P*z8v/FEc2L We@~»0|TXKp̬>g>C GdZ{& fR& 'N ڣ%W *V\`$a-(Y8,ln *S ^ H|DXb J-&:I@"Z),2N>lmS qxE B3[;JP # h(ۄVD5S HiH\*"nP>c$H#m$tH'1.e$D\gN%51TEůNM{8l[q-$ W7N.M3VBr!`-/d AAG$C :ڕI%>(Cv 2rZzIC*40d8#+jEV h"1lZBƚS6:i'!}4 Ԫ4Y1єT¾WВQb]l÷{s[)3!U4 z9΢5WSjZw IN*/8D(IJР` :9X.FZwJ0sDk!h^}Ć"!4Xr?0.c3.*ZAV%nQV9$.rO~9Y1DN S#:5iśHD\;  !7@ľl%U비cW5Y*EyM~LӤ2IHA@ҹd%&mp WB*f(%8uT+O)nb* ^ aDZq"HSU4L+kڲU JpQ[9AdXPݻa,m+KQVJ"R% HdR*waNj%I'Rd RW;C_K|}td8zǍ:['`Y[I 9;+&Lm\k,VF`SĬ:| jqTcŠ$Z֠^u,\m2xE-XNfG 8Aɱn2_Cs[`tfÑ@t}(ةr]l Ԕ:ңPX>zV7'lwva]756l(V[NX .[e8OuKNU@uZ|rUd. #X)ZUvt*1됕ӷb%RkՏ?KQ r\ܠ 4dN_+`@[ wT ]"=JSb^;jScv(o>tLI0hFɶ:ҐAT\ STn$B|iΎm 2qFlS`&X|ak 8j>%^L;(Xu>S+-CGiȄ|>ǶpDt.} 7I*lQ*b#-Wg9h/@9UU0v CCm' L2Rk)nj81. M]MN.alvW'UŎ hᓀUw|b*ƨ;@bȜ|KJi<wޓ8}]G$p(u_pDCs1D9SGqnaɤ"NmDž=jSm$[ RRR|>d"9SJ)bhtoՓ TK֯K!IJIKɹy±kMX`%S[0*Gm`0;Yl, E9999I}std؄ 4 [1w|5Y|t|zW2x1TBd29H&26&Qԙ961* 766q]9],olj BeUQ>m5&|ÔTk^!Ov9K;&޶S,GQs!LKY՚  "\7p௢WeQ 7TZ<,` L)VQ[{[AAASSS<h[3JwBH8aPaCH8d(}`d1D_ԃ  JI\cД ql Pu'"7RUt DHtӭLp( ?Nvޗv[Tuq6@OM6j.AWg"ܕu^gvt6쁙`LDqW`) ʵ1cJ9hNuk߲چoo,+5Y" *ƗzkMZ|& I}ž61UK. LےmMfn]cB&Д"No r;k.^%mrBd5p ҉RB 5?oh% )6b"YVj_NI- BvijH2ű`ݕGn4q4Kأ^[knu}6 5 W[R5/y/%'صLRX.D/0U$&;0s$`6?v|\ j(Tm {m눀@U$D9!L([O6Ib;@n4gjNT@a,^_E h\<M"Et4/"+7Dh?%TkUKkn! `kJ)d Sl?:mͥ- >mWnsQ VftvrER*NU& j<4<9sA# 46mLc8TOJ(X]qؐ(8?`̧ǟ}6~CSKf hTA2@ĔV`7L:%>Pk]9R]+GTPL@udXņdTL@%Զ4 x+ IDATd$םS-7;A5J;=QoRzT'k$Hj XĀ& \}%$9d:t&Mh:ء+ <ӳ-\02 HNB1InIJb : UHbB6w(uA)Vn )muUOy<:oZ`AjZڥ\_ /yޟ3P(Եkɓ'tMYYYN˗,0 3oWRR\/|WVZDxw;GbӦ*m![r?9Up)]'O|7geeWX裏~ч---7lu?G ]rɥw}}b5Yrգ255adK"[/lŶlrcCH,=}Ųs9O>ᅿW_}5PJ_`ԪO>FffKw&N\駼k׮rsr@U^Uc/4u?Ooffd!!քa3+G}}lԌCfW&MZhQBo5R5ΦMUvQ;32p@ꚻ~yG~(nN: 1UWD"g+V,ƌ3{s`t8P| x7LZI$D9{` _YBg 0fH$uN[ IVH$YV)1./߶u+ozÆʮr?"5{mgԩWڿ?/0a!CR jkk%e/R%@  jv98Ѽf<=/Pw|ᇫVk`X;%%3f\ru3g7o~ge~y˛of7|cUN2gΜ5k-ZF la}MU6UmTJs̟?ţU._n۬Y8yo/YnV^c}UWW׮]WUUM:yw_oYyUUɜ9jbj~h*Xvݛo=ydf ʔj媪jRK/X<''[rʕ?egg/[W^Gh;eʻᄏvO?/F/JT4uB{w-36An([dP󕠸/o=객ԝ$L兒SKĔ񺭵k[z*TWѧ]~˭pOWZ)uzt-v|hknJ6mbjkk/_[n.֭[CCÊ++Q (+뙖v7-[X9c?>iҤ@ 0x|wCaæ?| 48ti`UH-dQmĬ@J!C{qUi;vE-Q(L1c FZ<Ӂk㏟8 PXX/]/[vȐ!ONz^Qq?a"+0qR^^^ %G@$a%)VIƹi2޽SSS~qq)S`+_O&}hoog]6ٳg̑#cґF] K߾}[(b J^[n(d=Z+i(;j\}6eM/6/6_ŋ?[39'?`C=s}60q"ǣ&M۶mZY5^~i󤙢 '({pǎwI>Mo1zO⋲;uhSJʞrΧ:@-R9jJ$AU|u!uC邲I|>/XfWfKR'~4ƣNXG۷ }o߾mbŊqƙ˗@R{??vgfff= 7y8+R F7FTS="Я&Q~ҤI&MάMwE,ջwmMŋL?SݻYgeffBp9EB_Nݻp*?K*Щ1Ԗ{HJGúP!켺 LZ֣, Fg 5)/ؿUW]ŎuGu=4}:L8 C!HMMMMMݽk״iK srrr£-!7G %W^y޽uuUW^w&o_~e{{{[k+{XXA*+Q^|?lkoooo?1\HOԴ46S[3 Ѥ%CItyJ]7:Rݩ۽jO ş-^rů~K,dQ\s|VV6aA[-D :D]h zq:pegh(TRJ #nا*"j$Q]"$QH+ta?zhޞDUTVs-|ثW8p[vV9:5ɻy9y7׮Yz1jԨ.{?>O.D"gq~;؇|t`08s~ߍ#<~(˗-kjn[jmau;z1i5kE.#8@ŗ^z*++[9售ުьpsU.kj2 _~ioF٫~p^ :S@hAcLI|,;a;įS ǩVTn;o%ΔxӤI:_^^~g͞ .]~}턐쒒ݣ'$ mٲ;o5ƲdJ z9::6QTf ˖-+//OIIzbرp$ڽsQ^;yQ2^=QޑWO̟L/%jXPT@;ɀw'n+A'^6 FRdJ< b=:yIbv#R.b8U:C$8c9zPL 0:l16(G dByy-"hL *H<`CV~m:b'.s3G bk-b{J6nn''o$-T's0dWߕ݀+A zѷ"b ֱB222N"}(**:r%wbG =JI.m/WJK%-DkB]Һw8DGy3g>=swf W #<ȍ<4Ӕ@R?#<:tmh<E'^GyGDžǝhwu4<7! j zD+nO9ԡzԶjCEѬ姏8=55,Xy_~9!(oVCáMdعsǺuxaacJKKp06__S[H)-..>z~V̔&jlj|~u]N G"/b,ʫrss;f&Nrp'/#N -Zh͚5x<ڹ|夔~O~gϞp8lFSSӚիD"0~C[lfM6op(++f%ͫ ñX8pU>8p b={Hf9Xlƍjh4ګW/'|}=X<ଳ@JJV^嬪6;;{ܸqݻ444|tV1ԉ'͟?ryEEJ啄2Ksb ۿ_zs' ׯ߹sg0ƕ^ n6yk#lټaÇ|>0 cu0|cl5Ueyщ.];֮]xUUs]&O ۶nek׮w~),**ѣlݺȑ#ݺuڵS[o=nzG'&L-_999SL-,,T9:s漣VoܹsPXP8rH^eukmljb]466@^;=ܱsڵk kײvxzݠ 0"6@Fz0##<_Ν;ٳy榦O?K/퐐x<ί#H( H$DQϪ/׮]+5 ({]u߻wΝ@`߾={+}KC,{L}16 5ղof@JZvv⢬S{x/ȣ{JIIݻwG:hHyy+ \-^8;#_}Ւ%K=\VU]] {ne`0>l07'ࡃ۶mׯpbN>⃽Y& ᧹{%Ŷs6Vm5 XзOVI1!C #Hdƌ~}b؆ %QBiG#\"0 ÈF,@6$)Hݱϟwꩧv o-, :dѢE=fliIIzz:H˞{~_n۶5?~alذa+TTW毾Z.]b޽W^nǦB={t5z,((رcׯ1GR 6$NYW=_-sޔ~Cو 路vǪյ Vxd?ӆ;|ׯ_V\\|>+%%Ee[iZbmm=zH8j7`{Ii(ڳ{Wzz:]K)h֯߰{H$٧ODgyV^6n__ Bw>XdI(ֵ+ξ}[v/2 ';v}ƍ{p[vꩼkBa]p}D:hࣳG: }zF4vORr~~/G"[6r_OAZ~^|쌧2 c„ w}wYYYKKs7|j!b4N8\9TbG7j 55W-[6gef:w{ <:Q%%KJo[ZZRZ:eTBKǴS:i~iÇ9H2U>0\%xc ;w߰iϲ?yܜpH EESܛn~}Hr$/?ǎ4M{uBQߜ䓤y>񖔔.\ضm[HHhCC3Ųc={~ɧ.\_ƌSRRqFغmkjZH$zO:u…-[:cEyyy1*~\ ,pshVT~"pj5~~*u`-od0F[8.K .0$6Sy D~gϞ={ޓxx={v˖$y|rMd0n>ܕ!=$ɐ{+@~w41a^g񌌌bx IDATdn huY;oINNUU}{ˋ\b_p8;v |=<<8ȑ#8t ڹ ^{ˋ'^  1(T>K첹ѣGNHH`vʛoq7z@7^cܹBP(Λ7^=9B#FN<ԥ>tP}}رcGNp%iHy'V^}wD S$BЋeg Jgߨ-E@@cCH$2PܢhJ @M0a„ F"||w?16~ܸZ\[[W͘n-z1(k&Z Iu2ESAhXEg-S'&_z++`Z4sӧ@yEIW;6o =Q#.; 6h(h4v^SMYPWP3|cU/,,L|YXs ڼ| ,l5[Νw)屧6hg (Z/Ax"0v L jnjκ~Z(dggGEEM6Ȁ@($K" msE^^^֯U5 P>ipOt9#bFc%dJ'ׅT]]'M=#3alqѣGϟFz((k&6UWW/g$ɪg@abAhhhyyݥ $ic#‹ N81l _'Db1<ȣi#| I EK=y .{lŃ-%0Qr$"\ZEO:N fuksssz}NNκuOcу'sz**+%K֭?z}vvvjZ޷wڵk`զN6,&&55>A1Ş%HR~Mߞg:V5lx԰+Řք5BG%Aֶwrsssss-I|,##-Zd X|9yם m+x'O8}k^ 1b⺺jEPpp%íjbI{={TU)LbO\SSH{ &> K,;vÇz[ny=%+/s?sNVvVddݱNi_nٺe׮],kԨe˖]`so/WCt0"oNv6A&';G.l9ϻ>sΜ9^[GgZOϗ_>{lGGM@\gƯ6oټgOJEEAr|K,َ*d#\|օ)qkV}0 eee'ORzngMmS7lk4#x|K|>e4$Ԫ5'˯"U+M'z\|XRYUUU]c]EE*+Be0+\,{ ii鑑Gl:nduǞ)}Y/ %(pwJ'7F>~OTxKq|FcF*w ǹ_ *%ERi`@ ju-<.O,G.{f 7޷~5OV~mBY%BƎ۟hHH$l6[$5F6%|}}}}B!840# 0%iJTTԍA>1. Cu֩ڌ:=xyI|d0k:H/BH$>>>jZ)E<O 3cȀf3歷߾т res{OcET*mG'm4,O N:bbHd:"$^b,>Ś H'z9Aܖ )*֕ɴkvwl!}ۋEAܦ%;+z&1fh>0*A?z T&Ѳ r:s'x{ynȨbA#Er<ߟ/hY9Z(MHл!E鏐!J-Ln#}H$J2ZEBpBaEq_~ŗ_2A ЍgMXAGYF T  }b5zs]J%妑UkV)7q͡!!+HKK+-+Vx%4Dǖs8_[Z|}>& _5I[Μ`0ʓ&wT:[!2 ryB?55-22ͶFo3`0uGʾ}9EA>U,  };AQEQ$IǧCt:}ƆmϦx0yn " 8d/5zyyD"6m0.j>s}yy*s1c\Z>pm=sjE@""`0\`0^O `009i \nhLTW+swaڝ;wܹ4^~)SlƶC24߀]N.;Ei4^UhT*bbb RiqKxȨb}JQԴiΎsgϽ.+@rrn "@AP$$YJBP!0.b)7W7Yhy|B&UUUzzzڬ=u}fϙ3{ݻwcǥK4Zm`@̙3_X,Cv_ z͛쭬<|yK,e٦g`tBpq:f@xJ_>|5%M:^P "`^~ӧY,֬ٳ_|E 6fO}i f= ;v\nmucLNe0~ꩴ4 {8uXЧuA>7hVT~~RFבv>ZF*T*|^ >iS.?_ܳg~qjZZ?1cJJJ޴ ~g02oٲ%33S"޻O>wqܹ-[6?h/WXTǎgjZZFfmfμq Cokhh mݶ-#3s-%XaaM223`&j۶iii"7:~DFf7Ϙ1^z΁$]AMKQTWW^wּAo2-1;Ӧ%|B߾Wŋ3'O.lȑ#ׯ_r]f[kv\P( Νʫ@ʞ=8ROnټ9''gȑ|+!"8v(ګFp8+&Lp8.&jk}^^^'!!穳Ă39PLӴV%Ii{h VkZEbbbbbhp|WXx_bxh"kkk]11u5SVPQQz8©?ɓ'N<_d?0fp!"qƙ\ƍg_Oo~4Q|]YHbAA^^FQZthШU6OX{oW_S3R惙'MI:x?xҥ ⭷t1p,na&>3ً%bK ' 7IjX,0"1t]]_ÆE;iھYf:yr&'@xx++ӧO>GuK 'aAhhhyyyffǏLǏi# /;vl- wuAX[#>WQ^AMZ{x6yh_~Lu^z 0?O?䮝; zNo/]xz@ƹs4E͛7֮[wp~JVκw`޼w)cbvT'֬IOKWTǎ"0z;ܜwY4Q/X[u=(u׫؊5] O )4/u5Պ`sqpUJj胼< G$<$;x?kً%11+V`.,yh'ϟ? /?rq*|jjjjj[g-Gy$%%EPINVSS&&jE'Ow\GG,.aÆ-[쭬 "L.?oޒ%K כ~s]Je@@msn[z!"o[3g\ϛD?|֭vﮬ`X?^z{]Ab}ܹ.>`0˧$%u)lZcV*U EM"<2b.O4"jMQѥ,L&suB;&62p:c}}yQ, C *)*>B:X2|rRTvet*'OuXlOcvAD">V:e4,R` @D.m""Z(7CcVHd:܀$I6]OdBT*l/HDzH$J;;:{&}bӍA"P>_( b _mU_ٵD=b*D3}>P 2pYO@{ '`/A~EQEm4MKry8s+''<==E#+]fGMMM-+/c7tӄ *z Cͭ(7q|bHHIƳ/8 ^QQ^bXҀQarygOA HVWW\jjV\e4쩫3jiiiiiRT͟7ߤe豣`0D"ѨQ"ݳg{CCCޔ;K{Q;~񣣨j{CEW]]roebDx8mjjܺ:4EU'OMHH0R=P(:sL^^^QaV\eSEDFMVOfgg9Sd/ /gϜ>}ܲF& [В9sNjDǏ. 2^, OOaַZ[[ȫPYUV,&fPTX3gΔ8`oz6.Ny--!ChhJ P'&f:uPRа~`SJz^/-+=u+|6wFX,TvY3eoJuM5#^eEuaO HaT쨪cǎY܊?x萹{Ppp\\ڽ\r,TV^Q~ƥ{X B0w7 Utd4v|dPB\}٭>kH7wnn^nQQI{{I~RiB\b+.)ioo#B"6,*>.$kŰKҤI 55Zq:u P(H4iҷ}g+ǗW\.X_P[W"QTTرce upfy g )St):[!2 xBԩSlX6ׇ6 Cyy#o9~a?s\Q  }5 ٕ0\ÎS IDATm8dpc5F8nw.jc# .3n Ph~ ҧ 欮U, H_V54kA# I$Y7ZAH=$<CF ỎTUip8!b!A{yyCmmooollx}W_+W<(AAhT9h4T]=D $ e{Q $I oooYXXLL M]`pk>J4ϠltvvF3`B@SS#u EQ]]]]]]YYsJMwG1Uh41RVѮmi~%%:pU}FZ][[ֶo{c U젂iFiE 4Nh $X,X,֖1w-$G}eeez~̭KZZZ X,3fiؙvRi\|\.7 Y0qQ[ZZѣH'ɽ/XEDt۶n5 wn=\c#7 OL,7:Fz>33b 9t TU`g츱T(&k#GTUVM=zё;9EQ6y7 m4SRRL.------ by&f!WDDDYY٥GcsE^/_ǎcu lH;^9.=qxYY)Q55558Ώ v iD`` 0=6̟ 0(Q3%%'M f٭i .0j.{-sܦlx|J;yyuu<orRRXXTUU:y6/77>!$  )sj EgϞ+*,ft9.I' gX-YَA7`~\ci.܃9 ۤ)I!n\Kp̙ry8%Ioƭ3`rn$0{l{ᗔ0DEEq8=9) JJJH' UT%WJ2 00 f\dII'3f,9=^Y EnNNcCT:k,f{3cZU$((wkp[,(KdkQ 5c! 3:7'7&&rs~ֱl|7r/ؤ)IGRTU)233%Y|}}< \b]iMm7#WWwOiZV}]-xzzZ޺bXO(g7o}Ij9lNccwLD` Is̝fPŋkj:::N?q]wZz l-99Jw _{㼽}l!؋t*DL&փ^^M{RYYe/Ӌ^-jEdDCUUSyF\. qt [0\vT#}GRyBq:'*oW5k'Y@i`P겳|#'9}{?>8(X(4T*ꊊ.\8,:%5e4rܜ={,.(0QQg[[ROMBeP(RSS :*v YhOBAH$v dW]S4 v}FZ{CJKKry?"hjPXZR2vX{P!aG\q& H4k;Ғqbcc EMm'ٳ||ŊQFU)9j]+&HHH8z(EQbcwtKal:^ՊjEpG$RH$т ~D"T*t̛T(x>>>rYXhkl2iD\~FZMGPP`Lt $ym3khFjjZ-b͝WRZND"X_1bcd6S4 vuu:N$EEF1N^|G ظ5Wϝs Svvv?`0***d2  +*+bogQTTtĉope/x|XtɈZOfdG؈B ##m?0ío9~Ͽ oPAP$, E:α۩TÇXV[ZV ÇѲ ڑAAH$1R.wK.x7f71M0d2//+ oAm @  & |fcb88(0((H0T,$0uʔ- T $% UՎ= X(1N'%%ZZZ 3z_6me˖WÇ'oO1q-+**ks;hi^z;v}]LPI~16|"^oO~dh*vB@ NM4}رҿjQ(w,\x*+*- cGFٵ{wWW㭰P՘Gqɲr3A555556BX,9((Hն^ [u:mnniO*ucĞ69ݡA OPXTTZZ1[ JOoh5!1SR=p}BsEE%H$36779z<ʪJ4ib̰ܒcvP`P`}CCSSSPPPC}=M aF +V8PG,CqKpr/{A3f@EEϤ&{Aĉc}/id$IIdV+sss~fδ'c j qxkf bcO~>>h"7Rigc {9&N7o^DDH$"If{{{9΅w8Ͽ}0xla|>D4:!] BBCM!%8o3iĈ]j9s\|i:; Nx|H,:y#K;1 ㊥[vw;v`Fi')hd63@+61>"Y,(~44E?AdPb>;}%H|d0B4MI]2f}v:8b$hhp2 Jh2R$i{ 6P`0p.`0Bup̕c4O$I1zLjdBE?뀟ZfNuѲ r(R~_7PL0r!Ƞ)ovl| Heg'C 6٬N_kLQ,4bQ4EWMXf녃uFVggg3F 'v1:A4MS4焍2dp:\@ HHH8qbi& Y@ag6wz, W"Ƞie# 6`A4ES4M Fh(gdHuGb(`7Fd@42dp:8VC r'lZz$*X0#:2Dp:XУb X,EQ4MSA#$A)bٛF:8~l"<^xp bhv`# \yq<fX4M!(gv@ _+ߌ>]K;$Eр dBP4M}K; CǯcU AMWyͱ@N_3Ku YwdHup!DA>U,  bAO@  }XAP" HuPKGGgeeJav3/ſ4MF%kcqN@T*jjB<==o, ȍ&scO F Ӛ.eJ٩j(1%DhA27W2Ma h~ͷ~ +J^_SSuUVuuu{jĉ):tz:LrMwAT>Ě0YhL̰Yu:'|p`u766?R"#F4ǢG9N5rý$ Hhh=Shp\gS4F+ N i+Oib~j ڵAA=رc|~IIG}?ݖj#ROIIIZ'XZ}ޛf򙟟wС_~ܟXƤaO>8;;T*?(44tٲG5WoيC,~'/:z%--5--zhرc/]j?Gw͛PT͋69Yj߾+MII:v ^xG>|_33YY&ONjkkx ;::$IvvEQcƎxq+\ \)tܹs>p}2wnl3֞-\.w ֭:%I,YǬ[=j/42\`k8sU??#a×i^^^_mXQYUQY᫯<==O:a×!466>aڔg}$Ism[2>nٲ}oaa6o)-+?tȄot?ȱ.qWG}¢ں͛g-%%ŋ Fƍ,]_otiFxgtp5u ~'ݕ|[t%m.\ӧ)):szT^Z/\xȑںܻ[1駵Lݷyݲں.Xf=l5[xhkɝFʹ^qM\oi+CE*-rdF.GWVnxb!6;5xz3KKK`'M2}qV,WL|"""?(**bܷo׿]wD"Ht{!||>RiRXXܲe3lsJ$i{.r/?ҥ>>>\.7116_?(޺u ghhh`R w[͟}ocrqƭ_L=x%b2t%'2Ο?ʫ@zZ:T-*^Z|m|| ^p־}{sfLΘ`zG/233Fw̴Ȝ99YYY& 6ZrQ;rssFw aޤ@^n!/FIY8Ci̇|ݣU`(JY,֤I-n1'vҒ=gn %%#G2_|}l `\ ±.^;ײjΓOǫf83j3/رc*Yf i?̬b]UBNvZܨsI@~ ] 62)+c"}bo 9acGDG(O2˻|2 3zRX7hnnt"˽jV>x˗?f>y+W'ɢŋsrs6mԓ6v"(烋gggo꫍_}s5:xĉgF5gEjU g}vUFqU\.sf2]?3%wߛΝp1uZ66v3*JGYҍµz={^zEOX?۷V^^nʙnG6ddڔ)S"""~qN6lX $w*JHaǹ$ H? Խ ΖB>xI8^^/_#zb+b,\=$8~|Oɓ'i0aŦIx߶o߰۷uZڦq?so3ΝknnfX&MzE.ʹ|[6uyp._j/RZRbƌ5OgsfÆ.f߰aÊWiMO^cZkNÏ8|0˝;o;+*2Ϯ]_}'Nx ]μPM6vvtu]Ͽ޽)2 %K9Z%4jpX\I5sI@ 4ENKx)_/x#Mk,zp zfr?Tccc9ܖ͛_yUs!Am{晧|~4o` e2R>FTvqPP ,( sjC>1PH`0p8O@R?ŋ | `h P#zDBȑQT`s]ܜL@Ul+itYÇֳ%ir=alqv7X,DѾ7eQ#] _*zH$dgFi:gp8V!t>aىyt `0ttT@Qo:)b8? 0P=mVN,Kh5-|6kkn0 d*I.vYq|H[`|kv  @]_$L\ӏ  Ť5}~  MP" Hpu^}gAMb/AAk;$FAA^,  b;}..*tPV .P2}՟p@A UbtE7-t'i$7cGr6s9$=Oϝ!B>z!G5nR׳b(ſX LJXz2R(aaaRh0"ckW?7WWHdjX\TXj: !p2L"C]D&PWG!!;b P[O$J$b(:t6pQ!׮ݻ`FTn5:fhU+FK/?aAtΚҒ5 iZ.kgg*tyحC4oܸ[__/H"""l7vVVVeeecbb-]RGOjtf4$4zjD"p8U0"ԁ(3gt555555Yٝf4om칳BHMM>|8m +V|@O@W\BKD+J~zPf3:B$yz{;880aE z:Jpw77PHݻo?N >ݣ,.LAARO//Irۖ5k۵/l[x I0Ir\R(`|V+seKRS!"77G.;883щl6!8883I  HR?ݻnJerrJYyׯ_>>a|>a)S(rpU&%2ujrrJaQ!AӧMkvw5TXTTr{E2qQ֖ݺu$I'GLj^n/Ϫu:f6i B~q/ CfVwA^Kf"7/""";""")))77l9yR-X0?-uNŌ3I$I6h4Z"FXtѠѐ$wg&-f_fe;R)T5ggԆ}/??CJQO~ADկ+p]^\R ..,6KHbsr`РA><>f;;;4d04ب.t-%@Wwwm #I9NXXufKhYlH,9*+*ZjVo?d U2WWʌ2[=0^oI +M.ңQ|e/3Zf{tG< w"YxI ٦ )22(J ΰ[iV}kAsP[/PԾNiaeII H"K$vry]Ž{tJE]bƏ{Q ŦI,*QΦ+λ =޿iI6sp5N 9{\ƭ z٣G2sqq+).6ؒbh㧝`,7لggcj>︷!$Hbcciu:$U*UNNn~]jbbQQ}EqaQabb"n2o//HLL"IjRqnp*XB$AZ<-*=Zzas8N}ʕ6߻w+z,kѱNYIqX,o7;ׯ_@۷o߾}Ɲ@QԞmi3,=mx }晳gVTVƝ=cfmOob@{]x<͖ŁǍ dp޻W/GG'rz5bذ@0j(/o/.~Fy7b_Xf\CpncGaSO|.=j(Ó%ОZj}|| x'mٷs9l .]w3&aCΎfkgn%J_}UO:7_/X`(CfL01>g.ZpmBNGyo_|9GV*,*o7888._^\\Ǜ5}A5>kh cAvebķ KKJ|}|lM7,!::V[XX-~ŗcƌ>ϳ>k_bXbƵzP1G *7_D{kl9Em}G|B!_j_}UUU)ry9}]]_o:NFFzz̥^fV}!!:::pݐQՠV^pa!jUWY Bvә%~U+ZmF9XPyTkڢLhØ^gXGV+}fR)svrjh0-P(HBUcEǎP m/"Af.fX"H(X,׶!!;*ITՎ=ҫG(|2!!;BPx|MCEQ:ͽSBzhY\}*XB&0"B6!! !M`E!lC,B!dbB!Bل(Jt6l B!qx<c Azu% B\MuuiI1˵ lUju>}5 UVBu|;k)؊׿[bJFbsB葠htq.).rppts/w"IR.W+nB=ZJL&+Ht[kBFӠ4{i.B!=B,B!BXB&B.Jaqqg+лwo:߶eBPkB,xz4]董Jjew~qzC/0_V,=Ξ9K/lٲ_߾V? !LGr^8t6!=^ HMRRw}`Yy۔)fΘi=zl媕2ϗ\##͛;׺%'%ڽwd=;vkLVWW'{t>iҤ#G6RB6ࡃrٝ;k׮o޴~yWG(??\~+WN0>l+bcc-tw!v%5%h0_&LJ|҂ tի?9yDիgX:oۺͺv$޵+˰:ibѣG}īW!8vxFDݗԴMwB 1|n(:԰?{񮮮\.q9tzRruս!!!<G>_٨:a޹zժ=\U+?5݂ # D+^ު+Z7M BBQÇOwn^B$°UuuuӢӐ-<<^/ȧ,tƫ3g6͙ۨаJ6]=ZZs1酦 oێf2m3PTR }ҔB!:t_ 2D$TA7on(q&o]uEt5n݂nLÇZv-4B)?;DB.[\\rժV_ܺIDV֭/N|nܳUgggG/ܼqɪɓ ^RrRCCAUUU?)SZS=npPk?~_t4ۆVٻWӣSz=iU׷oss锔6j99;wZ0A+w!!zgRGcǎUTTdϟ?x[\,2رcϟO˼˗@rrRd{{ذ#G%Xᡋ. aÇ Fc!cx:>A IΞ9GĩM7XB&0"B6!!V\D+jc) _F"B6!! !M`E!lC,B!dbB!BD^7!ZpBXB&0"B6!! !MܼzfX,__KH$ oh!VT/qpphBUWW_Pogg׶%b{yyb G!څJsNDVgBC*y!PJUUm^r_$JqB"mpr&;%sB/TT_ mUZq>gu zD?G=馝Kd.]=TT̥ *sÇo_p_P'N!ѣ /Ou(JVVV޸qc^zŹsTGX :8PLQԟǏwQUTVq޽s}~}QQcǔ žl6><j;:ʂBBBZc8j6ܹs#0W3Q;I|̥/2j;:tN>lXǁ{yz4440;.9mڴӧٳq8L4`wn'latے蔰K HJ3 пQQi<==O?R>7سg|o/~}֛444|g}8֫m6ns݂\ƌ'l{kjj|}| IDAT y D_häISfΈ -(p℗=ji/5t׵fBS{أ@ޝ4q±GKKKuZ\.?;ek4Wݺe}ѯܹU!ayJX;VjEE})St:{c$mgϞ".?5$`̘tfTnAAݻw;Flي‚U+Wnݲ2i $Qh4w1|xNNL7jڼ+>^;_+WjjjzBHIIٰaCg3^''W^F߿ߐg߾}´iӜ&QwM{ĉtϟ7o;RLw{#?v ^`bM>}_~޲v~AqI#G Aډ'?~< d̩gy&L.\P*jOP(4qt)T;e₃ !ⶭ[ػ!C_F/lC (((t\靲qAAApСBEt?m|nCNΝ/.)]lkyL:Ï?ݸVV~7+;>B_mzRK3Dl)*.)*.9{ܧٳqFݻ`BGpfwa;}l{}NYyJѣo̰e;Pe}Zi$%%?,,lW_O0Q* §k=˗ r2T`` . _6 t"xB?|gT[U^|~Ϟk׭  |"""|~DDĺ_щ{~@]\L|}+u:ݕ+W92\.$4T(.z0:<&?+xxxp\gg&n^:::A9{huMyyzD"Hhqg voPPȑ ///99=zL@@@U0l ###y<wly/5lYw$YX< /nݺE/5lgǎ?~F;woÿ0c̦DFFG/d }" <++i-ez-9r$T+/o/]J_&fgaذa]tQ{r CfwȐ!!pС#G@xxϧR] dZ}}!a6޸q׷kDD\.(@bbb<'޳v M;UOeee5N4uݺ[wPSSn:zy„}rZ k ;_~o߾?|m0IcvIw֭EUEʡ;v2igzTT nF0ѽq着[WWFf1l+W+*㏬)&]g!:,ۆ xy9vJ/l޴Idff.FyfϞC/,]CJR$^:w:88=z)'W ƌ _p\Ŝ7t7o&Mpz}YYٞ={FQPC4ivz LRO=B> Z ~`b|K,sʙw-yFr {voh4<p04ѽ&Ldw^pwwM&x]Vۚ/\n1%h&]g!:,>z/?U9kluk׭[ smtfkzTTjjklz񹹹SLAmp8f/5rH77f 0`2p ];ǏMösνt)ٍjy̙k1cϞ=kh0-\Sm&:u*}Qdԩyו˗ Ϝ9+;;8[bbbӣ tNzD y^]K3k 4uԌJKR +&]g!:,b3򼽽c6K>^kW?'[O_GG?~Ϸ9rTtfLva??J5합(3g2\-%z<>7ڿcw,绸sYum~<󌓓qrr2dȦ͛nf|uADFFf~cǶAeҘO|t2jw. x|||x|իzp_鸸ŋS"u=S|튕+gfH4{ӻưIOsʔ)~~BdzKϝ;ϰŤ;P ]p#n@DAAj4ݻx/믾Zx񧟮i6>{]q带u{a"ړNʒJyP(۟=sϏlSqq6o@1r')44w\t+ʽ{(K+t{B٠'IBrVܒ`͹X6CQ$r/&4~zN}!pB+ {9`"EQI-ub,EQ$I6( RpzܵKB^o6QŶzklRs :5 -ZhnB 6 JQz=b@1ER5]pr@ W"H|.w\RNX`g5h5=BGB.WsfIQ$PM $Ex7j4UF7G!:,SB (C,Ķ=?!PFQEֽDKQ>PLQ,"B!Y5XMR$]!PGQ$ER9PLߴCljBuvET;޴,[#BŢH0"(v K˝Buj$EqbpH=IQ!P)Nb"(ʪB=2B(^fXBEdݴf)G#BEnڡ/wBӣu;Y3bBi_BXB&0"B6!! !MXt'(Jt6l#Yl-up1`>`Yû! BqrrΤrɂbc ǟnmjKKޭF׫}^V[QB'coo~-5E"s8:3a2:M',"bx&*J_?^߀ B(yyy988< ԙ~DCCC;7Q'Phnq%IR.W\\ j OL.JV=-!d?2=`Nzx8$4hu:|1 @GMI-uZ84J[qyEY2iiEEJ|}}d2m8P{piAAA3 K:Mwq46JSPDqBoKYa֊v׫.\~z}}=K׮]rK;v̐p۶ΝݷoO7J%$$$$$dggݰ}5At+/Ԙ^̓N )՚?xwy8;mVXĜX$2 11'g͚Qpŋk֬>^"|f͕+W7jH`0ȷVX&~jaPEi#Ǹ:",8pjp8XS]R9իV0Ӊw}7b;;) ɓ...p_CC6# 5DշS*;?1䯊c UjiE 9[b؏'~b'T}ԡ*{{P*#Gr8͛6a7nnVzUHAWTT;vN9ydYYY~zfƟ"C{T*gѣ]+ut2R{f:я>g_pɒ%G=|0Zz)N<W?Zwql^OQ}ܜ"IuJ TV\%H]Ţ(M@ YYY0iĦ9ܹ@^z鲥gϝ={??tGPd~RUުguw sg$U{'䅚C&V3FD&=vtD@񄝋Do#*qaȏGHM .]t+[PFI wUg^~ݺ2oe?%X2DFݧw֭ ׮]v-((ham80]R߷۹z ;+ V^+vs-Zx𑲲2 ZmAAi^_VU*ՙ8߬kvCpptWS=ztXgƿX[_))搼o.s$LJըmf&Irڵ+VT74̜5kȐNž:С Zʚ`zYx|~ϨӸ\EYT TR̵ngQ̪h$M7dIzz+m 0LD͘qK.2[*m7~ܸ{eeecǎx,Kӕ8q͛={7|iM2|#FػwkתlOdd/ cǎ]w'^T*=ܒחЅ>^SG !dC `(~^dx2T*:e Ü :jRV. =-^Y~z.Y9|!l ^Rn{9~_)ypy]|+y^P d~>kz#:7Sqq6oj݁bfL2e/^LOOrrv2xO? $Qo?BK&7Ͽ&Lhn{/,Zhrtd98o>r,Z/֘o;9GEg?$$^2dHP`{0|, jV|4 Yr}Y'Ak:͚prX,W ??iiުv0 :BGXB&0"B6!! !M`E!lC,B!dbB!BXB-jzC,B!fj7@?&!BH$f!HvB@VB@޶e˙3z#BjW(J=P}`?FYB tdmhhD:gkǏ[B=J j*77ȱNN * B,mK^ BG;MH/u(IENDB`luckybackup-0.5.0/manual/data/MainWindowFirstEntryAdded.png0000666000175000017500000017345411344502315023341 0ustar luckybluckybPNG  IHDRw@` pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackupF7y IDATx}wE6H)x3 zwrgT=;a>LQ( 3 %Òv_3=a]P:nOU_JͽUl&j&j&j&j+mvw6 ,LWJz QJvPk\e"n!)Au Ķ222U_|Μ0P~Agdff69B IRs&쬬H$˶mo%05\14 4c&k:_ R ` WLa^ug8vA>oP _C>RE&$yM E^]KuxQBPXH*IE0b!u 0,J"D3oؠO]eяԙr]8N6y(Ex-&xjMqJ9䝔FD#и%#xG -gWWXb * Ja)q bd[ Y]nG0*3Sb#( Uٽ\pxsŦ //_ղE~Niۦm۷-_ݻGw\01z K.L -W-[MY]:j@HqkEEEGvs:,  pTnv=VdQ感ՀySaIJ܅:Y[B! ;_ayhܲ7pss8=$76ugw_ZGHq[IIQA(cd"mRǁ}%Q>V'ES\= pSK# xZ]@)!:n>y +55T?PҼyI=z~E gdTk7y,x|8TbϦJ(_ s챞0%%%%%={ZnF.-fee>dY7۲vևy);/+.l|ɷw^͊=,_%R`Us1c[϶N:]| ֭_4zS#FVԛ+/Pu;w+VXbʥK}$9֍ fHfLbuP@@a26 JW*//_5x`ϣ:u6[nM"imX6rH._+Y]l2Z|9sGWl(IRqc9r%$S8쮣{i߯;|޷ז-\g;J(N)BU~.w.آե%%%}˖-o߾s@SwmrtrV'ڸiS2ٳO9TU˲zɓ&<3>ҥK?{.W޿{t>7y!uvn)S쮬d"Bo 222:tsιbPՊE&L7nܘL&{uWQ ض&MXXX8zöWZy#BvԓO<˗B=~m~򫢔qIz^Hu_Gh4H]&A Ja'lbY"1Pzr^~c\L$a緄hF_ϱc Y%kB :úQzi q,1"@ .\@c[!e^u#'yj|mKB Ð¥;o_~[iۦiwb0 CPuMEʎܹ⬳ 7>1+ &4*.PhELŝ'C/A]"麣)@,QS]y[kyxI_kjHø) BR#}S^>b] y#Fi;U7PC.jӦ_ԓOR~^xK5-#WiiƠn}\=S>qmK;)X﬐;|Iu҇yc΅qW'nԂ62tPoy8KKt3"Sqj%gqS[J),܃ -vew' ŨBWf2 E#4ևA&$Ÿe`7`{N;l4~+O{r|Qae[۶nx vynjy>hѢqs~›AnW<O:qrryD U#n}˶/>}ݼyn?."0JA(V͛/&M*ٻe'̥4 YgOVVl~2bk&ɼ|#)fmGc+ {e魫B۶,3It7U 'gÏ<һW/Vҷ}imۮןv?(/ώwu̘9ö}NNNmPEgy?޹sG}y}ǎgG}wެ3۶]֭[7`{@2{5.;w>kW_ 㗚NZJyMe<K5AU {&# vW]Ao )8}Ȥe.RSw2M=}2 hbP)G.5b4u$D8} B(*VޗOb |y*E_i2xCY{uPCrz EbgړJZH* >zl< lnݦ_3O?C)ac^3f̋?JJJq?Omnxŋ/W^ NF,ß Wz'p2 ]vټロ7oމ'xEaL(ez7|3ŪYVQ˖oo٪UmfU\:ԶmnBnG ??LĢ BPdFƏ9#a[)M&99x<Zl,V:r^ڵknȿ\~}aa7++ ]p/ywgt93qW*+ǿ4ww߽ӧOzdPYY ݺuoqKuw}" qN)6+P۾C:t}q6W<՝֠5\]h7A;KIyp5@6D~d. -m 8?@\HbbȪ!30( xuv.dQI 8Ӄ"l%l -H^)!LR$ *A ޲QA>Є3B4JPx,>zl~f͟?~ro|Ff$Hp'Nl߶m̘yEೣ=sY͛7dfd`>DLC,FX<ݣ;vO89s?.FDBu8!nN s;vDь:!kx<=/#AmY3BH](a-Hp~^>eYFX%cfvڵg^ZS>46l؋cƶjْRRRr֠A3f;߰gݻ S-_ڼy3{'=vJSqM)-))ٹsgyyy޽q(zxdž |߾}]vرZnM]eGlE-vM6*6mbF"lsR)Y&atAhIYy'*1lToJr,Jm?4u7HH T61.U(D!HRF_Js}#M4Kn~ow2ʢ|*ږ|>C<#m{_{sick/Cnn.{TWԇH]Yz<裵l\1~zaA!uYIx<tf6mⱘ 8'BȳG?ܳNCUUհ+www?@EEW ۹sgqq /ؽ:dѢEEVv6w?a1@Ȩ[oLaŊPU]}e\YN)޽B6nxŰ.˜1c{G~晧ZR>#Qaaᴷn׮íTuRyAaD+G-ԂӔ #CZb0IFKZENwĶG~*LʝT5>JB z\ׅhԩΛM@pu%%iJ| |2ǎ e^~~E&Y6mb1I i4Һux<bU$ڳy+_|&M9hsYG Lo6EӻuVf}ջ߿a@·3 vaf'pB^^b|oۺMk30j:hHuܳU6jґ7ք!0"KH5&RM'[ҽؒ ][x IDATh DRkT&ěfa`G59Ήx,ھO<1//Ţ7ڔx<0H.A>uYI&yR\BP 3bF1r5+.R0e(ٶmڵ'pO}QnIfE4n^e~nUW]y+&%\j%Kg]8"Lx"{+W|re7lԍ$5R20$fE غugm{ڴiG $?B&( "RϦ u !t= `- "du FfHYoD8e,/8:=@,w^wMk:gʵ”7ݴ LAP7 Y;9.wgsoiS`{j-#y+sr-^d֭{vD"x<{n'BslJFm$- z r4J0V2a ÈŢqr=D7s6UTLgX}glRe&Un^^$3sO垯jeĚNw:X4*539/:MIX83j{TV޿gyO?=Le[*D\6#$ 6ص{iIyl p2ث#=(+2P N7A$`?+d7u%mC)+?u ;ft:rk2P5xޜAlHF.B+nRLb{ʧU)[kw\*JMiCHNNNFf=|"gwӜH$e#xHR3MՇMˋ&ODqX3gkC#G^w߾{ y慅|#7#[ <2h,rr#P(01/!.rhZ >D"O:SdCK|E$+URٝn)^}qMRsE]϶aCLk$G(H]FflT} >Ʀ6!bgL.NGkPYV@t4O~PĆ<@4&Ғe+7A8cn(}tQڀg7pε-& .H8ҏ.qfqP2y+M ]N1rUlC:Mwj)Al n7P a κLlѢcXڑPWWgZV4JRW-@HHTL#W2 NG,sR B"H$ o#Fg }T٭ Z?EDvUZligta6;AZeQқK,fKwq))h Vl]}X}aqIS/=ݲ^M q#q?K!JzkE"HS3bDBG"34X,L$4TeH(ŅI)x!4i_2A)' nDBp%A(Я ֓0 9%"8_~Gv+J!Fܲ.Xwo4)^臷@ZJ>ь+VE #uk<êNS2.EfH ȿG#80URc&`CCE#{$+R{ J"V5"~!w륨Pۙ!^KF" ֋'noG_NG1 66<8!%ܷS~Y ɫEiAA&U\iR7 sg1Y@J(32Ʉ7/ZlР0 Mbаxvw%WM ~6y݉}S͹%LL˦k7\ ȶ(|+knb6Qshcp_E)DyFJ%YĹ:=~P "qyiAxKsMtWb7Vڤ^F BD*O'WADqV'nąWMhХfԗێ)G3l6k;ŏbs׸/kYu}vrͩ&jR wa73up+i\5)$ehkaL񑶖IӝJ|ܖA#x0G<=E) Q#rwRQ/Ak*+tIBQ_&~GQAv.bLD彵!>9!5My0R^;qeHɡp_HdEjlA030\w@W!UY>:J/ U H(*SNXiM4qU~A'q8Lkُp1Cf VBgÍJ^ѹJ҅~6t X@8I<驇L\ qA=jlst΅I048BqkDTFQD)xaU z%< !q﬉!w@Dpd "YM1LVE`}PaUFJp} h%XuV'/8"~5#:v2ƹ&t& <ͤr?M_:$PVKk-ӅOH$%ǝM;wNc w F\ HKL|KEM0TɮӾ`hWK܂b ~- w],Al置%'[N%-N_k@12"S*B1L -({"T%b5V `iK\*"#.\PTxcT3tK.2q,t)AZ/7*"6Oj~l]boQq>ӅWpKvӪP:\0DKa%H015hWH|p (I M-`=tҠ4 PeՄ)KJ"K+i!#+ U0氍W+^Xr dtSUrR%! 0+եlt?7z<UOn 7%(BPb͎<"0ZG&JL]n.MwAtv@č`%ԹW#]`JuVd=( j%M4&Z"dnAY)USEtΪWk.<tJFS,XW'e j!2J$>G>ڵsi->`%@)=dRɔr ;婶J`: @'e +k3 UE\&=ǁ>M8&EէBK;~4xqd#`5qAH`+!Mj@O pwMG>ZL202F!E`*:Wҫty nqhA1(hpU# R8 % qZC t+|r}W_MɆ40vr08 %K-1&W<Z-V|cep#}K/[ti}}}˖-sy߀X[bh 0\|fcbJ*Op=jXgl4 6 2Q W)KDV]:Jjq_+ JF*.?(I)*40&&[]޵nS/ 3Ew!h^VbfH #ŨkJZ 1OZVAe.\p'|SY}O}tBZFRUv:IХ۞T`ˀ#sc!b_aqT^%3t.Ux¤ٗ ’ƥԍ.5i;H HeJ Npeuڤi u^q#D?>bcj.OjPUmb<= ewoc>{;Qr^߿@jo?܂6[d)һw/XtKEVv~@"RJy)۶?Gkkk}7okI8F|`vy-9{H/m UH8V-P'AzM29mx?5LFX/r?ࢇ:;TLMl]]4Љ SĬ <\MYPX7mzzH,p ZazueR ͚QNR;{g߿ LN4?شi#t:p8wY,,^D[޻oM{kժX<޺U\uU!-Ju~XC"ڵu}Y{nٻvdesС'ϛ1Zhȑ>|gnڴ @qq3 :c ;iVGc6 0/K~~>ҳGwýX|EϞ=x!uoX̛7֬Y;o߲VQoCgqm9XXb%׏=z֬YvD"{zeq 8z-qoL}|%~^'u,X5kmۿFv{R -U4nls&*"mUrB6CZxHqח**+:J`XV-Lf%_!V`pgnD"qW/X^jUsy/n{yɖ-_~y|eDIq)% Up#fҤݺu#}l~-~~{߮O$׽{fhr֭Mr/tԨQ.oa_/'M,C ߸H6O>X,6vVZ]r%}{^z饻wfloMrgCJ>1Q2ܹ̝…LE3J)[}w&ƸqcW獲oO?]Ϟ={ٲe3H0ˁЁlbE,ա@ ҎTNQj 31_5`~`W s58RTU#-+KFnsV?Jg؃i߾<0tEzjժ1c~N?I&.^'Z_UzvO<_`)S^;c֮[7nXC]XX9c0p믿`?}3? ns]`W 0@jO?#MzG?;%A]?^s-c8p%8 dn]v=[ۚkڴi;Λ7ɒo9f͚5/>UnYק.Yק۱cرc)"JNsCi?餔:f{-*)Q6Rb*QԲ]H>R M7zqߊ׋a /3NjIкW}>:~PP.:W7S%i[VGY> }Q?c 1J;۷oFF};4̜3<;ҿ4xGN9唼p8ܽ{G~f2[B۶2k18)]eddj;E~`3 &,]g?_μ3O?sgpTS_tхZE2 M_heGtaW 2-[?{"=[o/ѣ}Oݺ==Tbe9+f ?HdžړGHp)Tv8{y7%*$H,ч͵(2 . 8:~FdFպ zdU駩:C"ުZ$mX:xYY]gIj JU'i .I>c'N{I&Y'xٳΝ;?5b{^ضv`U!vփK ;^VYg՜9QA$S+ʢOi\ېAڀ?f q# 6NϾÏ***xؒA U+Li ߻wCl]:-= Em_+K@Fb (>9x-<>B]'?/˗eAX-3mS076%k6JKK7nܸ` `?`@VVizꩧ>_~+= .+qRS8#([l38Owȩ3? 'ؾ?J˳ IDATkՔhsEEduAM9 YҁI^K^%S\7>%`pKR *(Cnˮ:hUS[T-q"ЈHKIv C*[Ua7s僢^Jy^rZ\}lU\ߤV[?O鬳xYh4Ïxt]7s;vH$6m4mڴ.̯Ҕr*rKdfnݲ ׎ob/?BaxQ%\r-Zuwƛ~K"rkOٰ~}2H˗[}l^tE0r3fرò,nC0I `, w ۶ D$ `;}˗/K&˗-{svۦW_}_SG}3; K`/𜕨X.wygǎe&69K.9Bc]a%K,M&ŋ{S䧭 CA(f9AGz6SZ $Etl;Hg{ǫ)?6@ C . K|^̹6uJDmtEa@ly 6/TOm]9y*]H 3 pSq}KJk#'e0tЯj…7r .?ㆸ :g9+WN2;lHNOoVBSJs-0ĕsCm?أ_42dHC !K.s2 cȿ2x9W\ꫯq~Y1,]R-Dy-s~G\{nTqΩp~7m,3gΜ9spŁO=b#w)䰖?yeɓ&~mZkJx~vVF\y gdn"JƑP9(c޹p5@V NSmIiHC/Q޾(pӶ1H 2fĩ.ȇK$ duoª\/gMHm >s^xo8KH$rD.7x?Cn(5_0p`˖-p$) /y avBuc %5}X|r!\J(auV^Ŋi:SkL3ߝ̳_;)`D/ J9RiǶ^! HUϑj6|nݺ/WJ aʂ )8^SS%?'V IT̓2 KJl~^[O"a](vC){SO 5 FtS`RNr?i 3z*Z&a2"WAȚGisMPjB 68bdMn)7kMw~y>X0O%nNEb@`Lݨ$oqSx`# O?NTJIAN"^مZIԯ/k~ / )]B9>9<zCVE 5Q(˿ߏ-ZpRjTJ"+·!B.^"廸- @/[rڰeC2Mw#g<6N6]7&A49!=Uӏ?rƏ[RޅЀ-(ޮ2THK8 hEj D?5B)3k үFԋsUɫϒTHi@u@Rm,M"ˣؠ)s&: e ~Kn3ꔩC&apOt BIߴNmvV >jJ5A~~ ܦq6t) &pP)`9eFt>aP> -b҈߶_b-Qd J\$**ATB  #T~'PxABm[UX(o? 1Г-5xyjB}F@ZK$ Iڻ̞iF"a)^UqAT<`kEET;h;=dkT~< jgڠaifee0tCP_lfff$@<&[MJeOk5γtgXBA HfE$7* jN#FIį^֚.8UoSn/Q.f&HSpibgVySqpB,7Z+IeZFaYZRjf"T-nq|D>efdLݔzl5:c4 ôL)ɱU h@`& lXpruFq:s,QLj4M3hٲWz]H$nnJp~8LG*|mkg>BeY `Iy6-cGT Vo"~?}Q_3^ǩ8n bZ&1qm6[+161uM ,BϾB7JQ" #vz}jYVmmmݓduUT(';ΝW(((4 QS.DԬQ"w1ea-7UQ\ ~!iS(#μMLBIWS%UAɺ<7d{4 ڹ,iL`ֶjL&kkj76%ɂ-[ٽmiIM(D2W^m'L$U|V[#ߍ شR`j(SJ%[xi1,NЍf:%aX%ZU]]ݵ[_-RJMJ&? ?edfYld5駳M(D?wAa&pD6҃`h(j+jI$0,2 seKpS3WՈ5L>S*=cx"Wi)iXYIIA6?,?UWWﭬ`g&X,ޠR˲|ߩk&:agE -\\|v97[K)_Z`Lm1N=q]WNiѥm?8?]/=qreixS缌[U]{N7!ެ| nĤfr?ʡ4 Ty#+\y{4~qmޢm_%@4srT[\\~E\ؚуeYunY֯3ir3aZqަb#]p@Vwz!G_MtǖCfb˲ˎ8"j_PP"+il ጌF ,_55Z,+MD5-[ޥ{s4j>;FTu$SpLiJhGׅڴ&޿ܵ'ԺU(';6Edj!c=s(d[L0اBZF2a%C_Ҭa{nCOTU:sL 憳H#uP֦4%F"B2ibɺiY642rF$3dB- H&YU4S׽{_yD?%%%kh3,Kp$;vkI{n*wIF}"++ڦeI' v4Z;}:%B=9p &BHf$S__huBn^^n]v^XXXW_7L~ۏnYۮ!۴9VƱ-yT]iTJuoݴ)33Bp0 #"K1  BaPBlJoZe6GL;+^lȷ HɄ}g]uue!dp87+08377ҠOltX<ĢŘ֭b6u5BmO$AYӲ,bu:}Zk޷'v4.ֲo8c}M睗NmXHn^^2fϚ -ڴ~9_gd6WC@<O^[aG} ڼnMbU?._et:{.4l;jY!!a1 CagU__صkH4X,VRRҶm`ʬF8s(PC=+쩊Y@I0†&6 v41Z[m'gG2#uvvGv|ذզt(8 a*++k%?DڶmZiIӲހeٖeYGeek>s_mYYeoOucѽ'殫hݥQG;(=KM nq[+6iӦjڦiYfx\|؈ک_xW_4We%s++T߮oϋ_Q5juŅ xD[k6m 0(5 j0͚왬LnT( aGJKs5k\.]XU__̜f͚4P52* ld|H ;/X6ndr "p]}@ æ0mHZފ֙ѺX<ւJhtѢŋnHu~r $-(09~PcAlfi"aBsD4M˲,7LՕ{|uZ:s`n![ m8 SN1kkwOòZ%oy'sKZv ŧ<4feg[m؜kJ4#D"~ͺ}=+;;UUwo7ڊu3yӰ2ۘ3N_٪du13+?o|T?lt,Ro_UEEV _~.m{ڵc!P1jٲcmL55-Z,+nͤSҬ7TǞ8/t r?^MϞ΋ጌN?=VZ5F;,+U{߲gO}8##&JokwՕUQJh]k/^SkURtG9/4YcM:uܸqs Kul= fɶl˴I+HIӴ,4͔;Ƶ{h}KdX<ʾFn}EEW|NqVnzUGPֶmB,ͤMiZD2LXe 0C jSiټY# ̜9cl0MPZ6ݲes2 C-[޴aGc1/rz1_,55>{_RdK|kf]H*Z~mZ8LYw87id2w/mޜB \-ð333m0MŬpZVf]?Is4 4ZVuuu.]iKJJ6ldoj͊!3@n翜͏>.[I2{{]w~SPKie/[s󖽡p%̜pŝJ w۶f+?>˚]4$RAfF#.E͚N:uuX.G׬+a?,ZtÏ/8n92OK ]2bjKmY4ͤiZv(,ӴL!V(mӢO{钺h}t F|{E?w蝹,&<B?{6g\轈Q*cDM1$jn)^4=%$jڍ^"*zu,'8@~?|gyfvoCQ[c-vvZ1ñƘyXl6Vb4VՊEi>! jƅKvJenN={332V s,+q`Xߵgo_/0n7i&,bMt|rC'1=wܗ^zI$I a 0~BˈjZD8QF&rr "H iq' =(Bᡆ.f/-)s.rVwO v0BQI53u;f~~O[CҫT[K\m1TW^ ?pnZ{Pbk׮Y|eJy 4ŗ^tT8}̗_|efѸy˖!+9ٓa[_WdER!00 "ϋ#:}UFT$GdHS ^o={ܼ;}7/^zK^8V*Tn8pƍ7[ܸqEqԩׯȸ6oܽ{,[1z㍝vI- eKv˖YցhQTX8zl+ *X;מ:uj˖/vE7ߴ}s֭['8_NP(0c/^v/ϒēTl0,'-S  ,0(1B W xH*Ud#,f(Znm?j_Y/ŋ._vWqsVjdHJHO<$]Qxɒ%0rHXb냃C~N<:utoxUJjE$0y$Sx^&Nyegg\2))i.VlĤ+W4uuh4~'|ɂ 쁿5 tyeyxb 0,q;hus1|x)/'>@V3 `Ie?Զqq1u JRbI+hJAEBm~bl< <@06A,--ɸvxi eY2:um׮k6M͆EʸvX*βWL|XAټX^*"+t*y3s}F휛`MVd]mB ===j:ֵ5~K||Z刈8>\RRl\\xxKa߷kN0:*ݻ֭[zk]ᬙծ9mt^߿~#F-[:uܱc,ưsN裙ڵ: '5?(Ϝ9kƍ.w=;HڵkԷǸ50s֬?$t/:ƵvݺӦ4ϿٳJ4Uނy ֵS\'jtϟ? x׭_90q$F[VNX՚xXaAI3$I-- b,(XĹRS(Oi6;FXEӴ!Uoɓcb\LR)88NQEQ#.^@ JGM%ߴ +lf[i1;;aZC2$y_KPX, ah6iAT #%1I6:P ?x_sgzu^:9NM|$aXmb!=<#G7h=[u+2%A8sF̤mZV)}'VBp}ĩS'Z #`BͧeNjhEB4QlLI*,MO>/9sj>}xzV;WòA6be])<ΞLwx7`}Ku OVMP5H6Q^;})S^YdILLLe;%+UIdzYᗃ?+q…lĨofo,]$ ]U͛_!ɓ'ؿ(,\&L/].]:ۯ6AZ\b٤vyP9L<+WwZܹsccc+U궐꬚5sԷٻg=?ShhO?ԦMi'>x׮]yVvւ <<< 8c M$!b-~> _ 闯畊P<]X!:YTXkZ9E o,bA0IQѬEAcFmйQųcJdNnNNnj#R//"uo^WT$ %c9NyUI FmX :)7pԿ?nfAѼ"E}||x@@$_NY_|ߠV<|Kߜu䑮)*FMyL&ݝvsXf`8R ڥK|l\Sh4Oӧ P __U1R9"1FhrrxkY+}Z-Zohͱ06% Yĸ 1AT]jW"[q,m0E!@9 1! HjjZAHK):jq\@`3g3]VB#<<<[jA=^}￯e+ịfn[w+++JRmcYwrGj'k W.+BIh"$4ZI"iECKKV3RPFTe>\pxғ r|@X@.8uv%|,=< bʉ&޽۫]ڢRfs^Rg$ytߍp&‹V{*:P"ݔ nin^;vؕ+W;wneO<6uԜ3g39w'yr c@ׯ_OWv1mA16j\B)(/x *' T$)w-\iٳ6mkZjA ˱qq 0,ð,Dz

V~z[DX}gVVVp׹߲~-EXnQnpdzZ'yl6s7nΝ z!EEbV.^7n]vfRMJ¼.9GԸ[MQ7K(ZVYz@oA̭'WpŋybcƌYl)=uӹiDHyPpW"% 4 BjDh] zؐo1[||}g+ExfϞ'>Xxq lR*Cv]N*5jnKNn /L^fmVV,^zuO=dn۶m6V_N~g={3g*oZTJ?Zwm[c?̚իY=}̔)/;<ӧOwX\ :ȸV]y:&Nx!jXv9k|נRzAE^ 0 3+fc88a/5KM5{Yj9Oq(/XF0(|HPc̚Jn,kԬP(j"1@ @@ Aa q?A V@'!OQ:^oppiATji #|O{՟@HR)v<<< [EM?5j=_T\\,Sv9 o 02n\mZRD/,]/)Ź?`1ik1;w)h&INҎ«*:W%vm XL&N!mv``5-kSs̙8q|вeK痴jժex~e!O,PH^`5̠!a&D%!RH !'T*A/&DGUr!{ 2̚% ݵZ=W_W*Bzkv-ƕRRSw?44tUǵlٲclGGH>6*#M4o 3 ]6lؐ1| n~߸nWջwwrٴ>}VQ9a pM1;v߾yd3>+W_}GYmyGG$''/^Xݿ*s:߿~GAߑ+T* fꑮ ME<2j9NycfK˰< EAk-@4,v(ssE(n H7zZ`0& ?LL*iN&DAڦ ccw,<̐-y$(@@/AZKl![m5+V+[F"1o~BѯO:-n:N믾˝;v,۽[ӧ i?xuW\!I]W9{9_[-։&fgXᇎɬѪ ?Ǐ3L~~C|_1u8oNf4܉eYIm k1UA<_1`@5y|-4*VTxy=/\I [ldNꫀ4Mܤ*=F@`,"Ex3gcJE L$$g@@@_B:/o/__DIIrsr)vfFyB bǶJC?r.uC4d"HAE(PkOlX W7CP04_7nȑ<!⯤[~ݹ4 T$ LDzzzhH54M_&HBU)1{'LyKiFt:ݨQ#ڶպ{Tw3g w?}Luw]P9:)}sY=u fTӴ^O*H!z+={TpT^ v]8a N3ֵk]Eɓ0񑕗 _SÏ?NLO? gk=h7n8>$ܪ*>>>>c(>( ccii.K$W-籯E,RЎ L,Db [ժV-OHr]=|0hPTKSU*o@a4nژ(%Qxa''B'ۙq7,0hDQ+bdAZ:lCPRHs7?Ժo#hI1  }p2PJ@D4Բ͘ ,bЪ)ɞn-[ ɘܢE zg{(R(4MDMoh\lCÇTaԢR%$zj)igiwW5I|RcMmպ}[wF4a 0A$l Ÿi$dȈ aRCoLEfF 8qFq(:l6//Oe9&9l$MjjZnP\@QnA.nMLLt! 9޴h@TIE-l .]B!Aeqh7ww,0I.OmP ;vmY%[&AAy"MpH)_PJD 3쬜ܜbj1@ B"P*m۴L;4MGFF˗/_NK##0Y-cZAu궂qBDh~g΀u緛;m-# Ly%̓#|;"$4j!]S( IDAT6 Ƹ#D(A4RF*o*ݘNZAP6RFR".]xT F4 Μ>}0&q΅ ӳm6Rk[՛LnԈ/ 0-EUXDrY@4^L31&To޽{u+$I!pi b,b)/1cTX?>#AnZ4lh0Χ(:wjvuN: 6SRZZPT_]XXo+lHiH$@!n |}}z}I˒R(M ^Rj[fd{O<ܑ.$&<z?5ejO`>HVq<R2FH@ȤR;Fvvjb,/!B VEVT* tdž5!Fsf PMa-Z` LJꧭ>E;Nrr/ PjhFYB$*-VB"IRb5ݨAH;eڧ8zPRHmHR[uMnCPm_$Iid`?Dya9eJ,Udݢmaխ!VJ7qpk$: )>mdZAjV[+NV<84?cX@^{H4!M]VU"y/BPbo߶mۚǛ%iS.\n0P$ X|OLWk瓒EFC*-&'%hQy1IQO7H k@LJT$IiԔFv7AhY1Ty%AIV]ξ#E5 z^{VjkJ:][;k":F@Pqb r֩))' PA /LyYTE 1M\UH4ömۣEF#|JjjA\H1H4jT#!撷.B"d4Ycx/- Ҍ.AV꒬Z $pɓ'22U j'E$]\?N3˫ONu1$)MoX Tj҅fɭ5>E\c;AzBBL}X 1IQ_xmifyɩ2Ʋ-0jkm+cAܙ!jFp>BDĘO+hS]AXDͤ@`ϗ4(lZAfWbD.m4cd"ۧ0˖ 忳&ԓf ڠ4j"- e%&@u[Y+h򪉴KXJx2w!Q/+?E2M , $IbQifyɩ&F,5GEA.!ee4c$M+hS]$Im\V $=$H2M1E5Ѡ4jT4c,fժŸ^44cf9fWb2٨ ?=2222Ψz2͘:L蒽LC!{YB222222 eeddddd 4Η 7o lXCw ;|I 7_w7L2lCw8󫆵򔌌Lc,qwې:4M$ۼlTlƧw/,C ],).Q(UCeU^XFFF@q\qQ6翎Zl|rNseedddFc@@q%w`Y/7'GjZ4u L&B m"6'[|e4:&n"SbNtyueNy_'Eqq3g|||eh edW|aRRr#Xdin^VFFFv22Mew Tz d##@TJUx4L3СCS,˶mvʔWv*X,;rssJevƎЧSNҋF7?~B&47/[+T/b]JG2e}#V,_qƫW3鱽{Qs君7n̙3c$I0`[S++ٴiӚ\x0~?~Y~3c juppHƎqےiǏ_jer|Q Nq${L68x嗟yͫ ܒr=^2iDӧ_|(xm*8Ç\>tЫ²쬙{FNDMXeYeF: ~kv6{Q믽vē'OeT\\}hڔE E|gn{3֮YeչS'Juҥof>s ^y:D*SOJSߚd2Z_?HbϷ_2nܸ1cF՚̌cǏoڴ:W/DQ$b{3y\%2MN:7otT啕uݰq3f4?޽MC4 ˰,0 #/;fj +T&+W 6{MGin߾9s`޽{`i14Mknik _~e777ڶm_];LT`PE=ԑ÷Z8 0eOJժu1c?Uj?3Q)䓏%22wA{sN11ݻu?_}aÆ^HMujܹ] M.أ.\ḲVce8cceϛˆHV5#$$7n8E_.3<]ڛ7oL8{˓rsq\;??~ܺU)PRRꫯi{_6mc;Vu˾})`]dΜً-( SzڵСC'NߺukFFƇ}lr(6-7/,nb]}i*Udo3,c[ Aj%d' mLپm7mڜYyW Ǜ2m{^^^ϛ?uA*Q*Aw:["#sWXv-fGΝK:rhJկ_wyWrӦsԷ6lИfY)/TJ̲aÔsN kqEX|LSZ%dzAAAx=$11Q "%,[dU#2u?~EQ:~w>|*%֭[՗_=5nݺI ?Y%>}fW_El6(JRyf:}ɇZeϞ=@};w +WlTe^chNnymY0t_[sM}*` dff~m/HJNy\R_|(0r(xW7lؘ˲22]q`d\$33~#+WV'R 0?UNR@})FN%q,oGܐ^Mv#{ J\\X-VGL4K]fXAcǾ=mQg͚w?U$eO^y5cYstO<...00c|q%U^?L4f]N֛o 6hW^yWVbN:3^1(hoy[n.XK;~l2?0dȋ/XYɳ>Ϟ=˯Z'N,ӔVvMe>׍ Y]Hǟ,]qƌkH3vxȑ99]ñl>}ޝ6w^v}̙}qBѷo7|QޞNB>Vܳ>(tbHͯ&NWI7Kc[A!4W8Ll 4|fXuW|d O=IKlCN8iƍ%,]k玓'\I/--%ǧ]L'Fб(z'5o oof-2eVݹsk5MFFMXFTW5jԨQjl*2n<1jG]I&M4FI\mjs M圿7)Mw&̽eeddddd 4iҨ5jyʻ*n[!#s#{Y&j/(8hZ}!22z .9m;m2ۡgdD44!/~JXXX߾!2222ݻү\ر7rϜ;շ ПD M >o۾o2FSm_s=! Qغ}c E{dddd;v>>Һ¸$ս(:7u:~2~nAAh%*iBuYZV`2.w(n%###sy7=8xZh4uV75:bvXy^7vL{EBOFVm^: i80`)':vPT\ ecQUI Veddd@StHhS<cq^I˭ph@,`yɊ; ?8dǴElIeX: M.keYUzvM ]ׯ8b3$zI x&L=aK0_!Amܸw3nB;0,C$ݙW~XlJ rԣ,\˒$V=eC|}xt?2 j^sCuRJ^4Zdz97 KkIϼl?EXz!-Sw jLl#ƽ,oЄHO~i(= L14MHuϹyH߈q?ZΉ: ꝣMˊ".Rf |exݼ{vq:FD@7\ E[==SE궦A5"[B4Mvm٢֍ɧf\l^yBpP(Ŵi쩐+ ` ^lxjӞ^/n߳Lhъ?pAvmqK.I>ew6C;E/Ӈ(ɔ~-cà 6s_zoT(]+QWpJ _\GKoբ::ZۮSXp떰UMs LbSΣvtqnR!:oS< hE`9Bx<'O`Y6**޽?CE 2ߗ±M&e%' uкܱB\IAY݃4 2hqxDozb9BE>M4U[W&)r1὎=.iO:ZPVkzvMh&]-;7@0c}jDz>~q/Ǣ"rȀ`ˎ ϰgxzx-\o!u$-fFSi.bw{PQqcHTsɧĩ-[x1A ѱp*Zރ;S.& ۹Rb ]g7x΍>>C2jٱg>vn.@|\7]I@.Z:d6WΜK;3mW]𰈾tM7,ʺ!ݬvpW'OmzTR31R@ΥM/H()) k2fVVw!||`3@#:UTVUsSNM0~1PTT4zl+ X"P[yN˖QHV AVf CPZȞ4BX"τLъINOI lQf5ٹYϕKv AҩZGΝ?c9u}Վ[Gy`C(۴BZʖTX| IDATk߶̾k6p{,{,0(hEO/I>;7ZF*>)eHfY׫b@hp1|}snoe[Df|V$\|6g6#x{?u+n-,*dYC^"}R/gaԋwE[FiKKhYyڸm-D:dNyed^xŨ]y8 EnIB/~m )AgZ(ܵERS A\eN2wJMW]S_rnuz7tPϛ'7o^vvvhhʕ+/_~%kkh4Ѻ}&b\A꒸EGbGEVB;ρRCQXCη|A#YzmoXLT\aYj[8]l{ ̙6lD"M98"T>bvrvG5?U2B V{DJRr[Lo\)g%,c"VOj2 -_.Pk RV^..> H0/; qv\YVuYwG'nN:7A8]P\XTt@ )ԌT)&*AkW*8߽7%ol^/>?\jEy]Og6W=ۆ5q'MFVƪ:" Bݕn)UU/txjԃ'MM(vI=~~>7tn#< ֫ rՎac =<=4=l}7f'6[Qq5sTDk7wEw&[HeA߭\TVB?v3GǑWiYgkڇߑnZZ Si NǕPB H4) :$h%a!MG.nD 4o V-p*wuT(KDuUXxOBH)#1Iwwg Ff*C/B_r5[IÊϨ㈨8QA.ao~>3 H_S2  @ꒊoz]9ϧ-_P},I0qn#ё1QFM$xyA8z0 2j̈2,đ̓A&HD/ՂDTṿ55Շ/:Ҹ ;qhpȮё= t^ѡzv|nioNjWEʾ]s~\*9reԃ@#1tL*;pdSӧw?Tz:/gˎMs_x\l݆#]*-ؾ{k]}m\xz|e }G*ꚪ}nl]}݊UߍLeӹwoG*¹3y9b~CBG'5Z~^P}}W3ӎ?luթ6ܺsܜ~}B<ytq\mmWmܶk3uR)DX9#n', &"d \.IXGw߽۷_,:6""zj6l8wԩ %III/a1cZ͈ސW^ʙ訨ظz\l )L"iL&9_4ޞ_0QVSgijV\*zC{vXםNvlmvۑDD==SXXcod*(,{O,-xf#Gd^^&S{}_$ p#Rٽ7v־6ܑy3DWPDwUC?bC¾W:žK0jjj>cn2t'QskZ8zqiW?}% naeV90.kzO*#CniucY9˚&VƊ/rg$JaJ!Uj5#an;v<\~͛Zvۑrhl[WNWf#>ͪoUm6k(]Y&5F^7[ʲ,P(XV[ط+QdDT%["svH&TYYw5+o;&RupQm>f,6<5fx":1ג8uhe;rBb==^^Dtup[= iuƻKDr1S}8oO׮X]Sd x:,8H:)N|鉏>mypXZ Ȳ77Z^vຊ7:[רQ8 Y}u퍎֡Th4|,-a^^bc8enJh+dYwApdYwA'[ Zzq8N.gRi+=, p3Lz> sNH bo+ B&s=W"8ѣ's7:[F5''K*V ,ͭ&008V{chM&Zй$,7#㪪zti<:?(<4lѢEDjiӦ^ox'SSSddMٳo}||Fq ?2kjjf͚d;Us-.Luuy= Es)>tb{Oi3>9p֣Egs.csrXq"Z/aa_}333~~7 nݺ5==]LoDb9e͚5b˗z{{'O3O8{pJťK.V\Rj(+w-`A,+'/Dg O驑}mݺr~;22J.W}LyжdIIenqq⨯OS‚"4rIIDTPX Nԏ>h}_zVL~PxTncY[CR{yyԂJTʔj?U1h)7gl$HVUN @}zOJʘ1csRv"hO'Ço޼㹹>Z:U3Rr,+d6l݇imL&S&#RK)(U*P&!#nx:%?.}RsjjWym&%G$HJD@Dd"2ITRf49$YJ$LvϮr9K%?OS8Djy+t٨1z2d01ucRL԰J~Jt-h;8MF)eV{dgdx= FbryMmmVFfdd$CA8Rvsq%ٱw\qR\ĕG2};k⫈*A'kySn%HXOpnJST2N>lҒk>lxUpv#}c"xt‰+] 1 VTJ%߆iM~5dYkq2lo\ZFa8^-h#-[Y,imgs&VY볬m>ʖ Ih꤄+;r{ܜmgD~n8oΗܝR4??|CIx G,DeFVg)*Tj45o(Oi#RUS[Rqn7NdYTxj<7oޜB.e") $#@D '++k^^^^ gv\'JH$YY FۏdRAƒD7rέCjEO9}N09g-@ks+-ɤR;wrx q\Uuu||Vp3m[3yyWgq pAF<"Ѩ\ncYqy\CI}S8uzVFDD6e111D`gmܴK&< ֢P8c pKh//>Dw嗟 tݻwk[>`k5,kwP{wu7xoxUI௟8lکFlNoJ(|ͳݴq#}7CdmV-/Fh,koqz#UrR"bAaRQ^pLkӋd*.....Vڤ6tD4|x0mjkks:˚L&Gܚc답2 HM`Rƅ+R ,+k-Т69 >vX׮1!!AGSS{e2\$.68;oo۶]Ʋg?={3W/XV rڴ_~`X  (**z eϿ޻dnj?iF˕&ʼnD.ٻ<{ljuS9ʹq\]}}rIm9v^0$䭑y,xzvꤧc Nmk׮k RdժU'?|HBv;gή]>(<4lѢEB IDATDjiӦ^ox'SSSddMٳoY1cƥKĹk~qmN7e[6o^O?yϫWkڑ#FDEF:PnR䩩 L&md4ԫGwĘz^̘SnMF^|pHhMmm+8HHٳ_T=p?N+3g|[x&Cii֭[ӟxI"zg$)k֬K._,55O?=yɓ'.\uȑ˗ђ%K.]f͚{̙3gX9sg!+W qdٳ[Jr"<_]]o4,\+rsBUS~Q'H .֛j[^F֕ʅ/]ݫiS8اwΠʤ/ٽw-(z##rų>KDuuuVS6yǍRU*ޜ7' ܹ͛߻,+>kWh{oiiirq-[/^?!OζL+9e:hy2+Wʈ1 $0UWya.Od4:=,; . }555{x&}VX9`W^~IT48Q8qԷRՔzq% dxR р lQA<];qtDӳorSҵuW3 #H=0:H4[98##c+[1s0w\mfT*4E~Xhje\V$8xPVrߗ 0$PȥVxpB ydQ,m\!Jħ[TA8uOlllҲ2L5jXRöjDɓ]޴k=mkN ;eH?d̼K[JꫩBՋ$0D2 Us$Ȉae3|Fh5D P&%&&.xWt q쌱x$+N;JVf 0 xoDxyirGݐoIJCT2 cDDO˲KVw$yy߰XCԓTJǵERmr6(U*R#*)Lc&TZmFc670< Dd1'^6c aT*px-FDD"R[@b^{MC3q, pJ%Ͳ8cQ0x'kaF"犑c;Fx$&p, pxtBz?~{}60[O_? ~Ox , KuYt?nh%+8p֞]]WpÉoeN8pdYwApdYwApdYwApdYwApdYwApdYwApwoeZIDzremgo8 "4~líA̲fpuk&1\w26;}]WpÉ{7@Պ8hKZ6--h4,@RTwy'˲, #%1p1p'1p1p1p#R)  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,t,R8QTJ华HvWdeJ$( ZFnԁJH$uu2Y ML&Z7:p BQ pdYwAp{e'LnqzͲ׷gfl\ll{puYwApdYwilMjC:3ٻ݌k 1FOc,  , +oq8bIeR)0.ft5L& mpիd2̕tpSs.qWןLZm}5M^OqCJ pSr.FDFq&VuhRTay{{!":㋤;]X".l>9m‰,|uuMV[s_v7Fc'TUUYV!WϋS~^paQ_c2x 7Pj%YYb&;x5ҜڜV>\;+ G]I  PrAɕʍ6^t)!![8BN$qOvܹeGf 2ؿ>>QE:C^^^Su!^_TXݵkNu|sZ@p% ߷^+(**(*j&kWR B'߀8Gm]] 2˧8O>S7Y%^E%S={# ܱ;oo1ևH $q9Jl9q\B{dhڜ>\pvs@rmIJ89pS5kCyDoNfjw}۶m{כ+٥K^^O<)vrS}J5Ɓ2 uRϝ}\'ܷU7І\~LP{tgwPHŋzB޸qKEc/]x1RwK,n͝3gر,ΛU<|Z٣^#"_8УgOj CB+JB߳;o)66gG a5#{ bcSL&SQQQ҈ZmwzӹIG2;*/66VP˲ jx3blӥh]_siO"u 0gYBѭ[7"ڿwouMI߿9LJB8eQTi'Oy=F8]Vٓa]#2Ųlm]mSaaax;nȲR˫jM{ld,ۭ{CƲ\-YYY~^^^x,n;cT*$##ȑ#-9 (0P<pqDhXt-W*J6t_aT*RxB10ȯprOT h,  ,8"++K|e,0 _/ſɿ={v-Y*=#?<"© p Mȸ;\ĉ,[XT>jXbm۲;peKQ %Ӊ*#ۙRTUGcwApdYwApdYwqc s"0 H2eI$'%JJ/$WڛlH< n)*jR(("'ۖlq%R*)0g{5i*p,YZ(STD T^N&G TT!iZH%Οuh,G(ӕ+t-^LÆє)TWׁ*hOȲ׼o&LL"3i)'M#"̤ hǬɉm$Ӄ҆ DD}T]M:t]Z#F:֮ oէt4Ͳuuu|~!AQSmV"2OGSRRfL5:*<,t1{5W"-4._K4ѣ(.r֍~F "̤K]Xs[Os'Q|~X>}[No;!!!}1=zM8E7ItRslw0PUL.deeÀ#q9 s`BjmO:u}?`ĉ&ffd4W/bСa~1]Jii`_T_O\sr5[3sr5[W=G7;[lMk#3V| ),,|+<edkZD-8Z`Txq0j=@~09v|챆߶NNk8zؖ+zo>`W!6>Ԕ:#L&e'":p9片 RP;{W^v"# t‚s8k^|}iJO?M=zmL=Fd4Rn.͜I۶AO?j&))(=mZ2-vGmxYڻt:hz98.\e(!FGqx_!@r];wl4aDq{I^?/>|ƍl5jUmѴ3N:xѢŋرc @ǩPDԩ͝k=] hxɡ￧￿nnaK R"_G qmMD(%6nӧi /8ZɴbIsUBU[7aD__L/I?uuu|~!AQSm6'%%e]BǍw^˹~~uuus^}5.6&(:wc35:꥗^* K ־_"#DV̋G4[usz}HHp`s 2$oСv 2߾S-qK,?~GGE5H~AK.%Ʒ_~1h`bhHp~}}Nl1"ڱ}G#$8(6냓H^޲N{w?d3gΚu\ Xݼewi9w̘1[l1bkz갡CJJJSu6ٷ&80c7đbXBOӌ-6~{];~GnwSYY-.yDu'M8hІ lz?5߾kK,ir]VQ}fÆ KnȐ!e,̜߯^v-˲a9˗/ dB"2N|A+V, V{'#3 `˗/MM=wٳhu)V\vMDD߯/(,xi]|Dxݻw{zz~g^(iqYտiӦGfL7qK[ѿBŭ۶O0&Ns׮ %O?d_XorFƯ~b-))ںmlʶhv6srN+ڲu[DD~ZZgn+_Ҳr#iFG*4x`"?C?e!y:)g k47PZz7"mڇ|pZ UTYY{ֲcvb-Fnk~AܱCj]NmBsۮl8S,ko\jW*jF;뚴cv?'|B~k׮]0 f=sǎB?ܖ6FEv<|;w|'?𧊊&Nٻwy}ĉÆuQM?߱cF 0tqt}?m"3=mdR|[{8..լ윀\w\;hn rE߈l񯘈:с̙~3Xy{]sVI<%C1 #維}qcǬX<77W׳,k>dS{{{Y{SraMK;e4^[5){Y謧:p`V5LW\ٷo߇~pCSmob8Hd%]L(_ CdCA%TStI}6U>m */3 c7e4>ܙٙݙe8$ ܹ;;suJںѣzYqǎs=55ܳzo9rdݺcs={vӦ_nPP:tС6}}5]xVܕmf?xᕏڵw裏~e,Y]})4XY)B2euc"}YhSBXpW^mf^F:}7B_|Ŝ9 !\{u<B7su߾{5 پsϞK>e~?/\p!nqoe޼իm?yg~wn(ܳW_ǻ:uG Zgg},Y;::xv,ɓ'[ne߾/ˎw"-i3G=sPo~(0k֬qN8:|̝;wĉ&L?[mzz3N>o>ec\sMKki֯߰seo6y-[6}枞nZyHu]7l6mZKk3|r˖VB5a8>3K3@=Rbw^sYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,RbX,"e ) HYE@,H\.744ʵ7޾񦝝B_lj og GrO?yG/󭭭2lkkkkkgU ~ ) HYee^:S7e{RW);kKY\y. HYE@,x4M$BB!6[R4MBZܙ4IBō4IC(5OCHۋc!_CIZ> MBHrB$ -WXʆ+NJ]g_IiYץb$I4)O6bd򐡼!M*$k[Z1')]n-iҤrAka?|>JXqk8G&IR\ꮫˮbZuQW0^UUa:-+ժVIT]c@"lش׈hY:3oĹxD@. HYE@,Rbp R.Bpر3g΄,e.wIprso) !4~wĉ$B \{{{[)S6&Bdf]|tC]G4jko{qNA ' ?<]990aes>S]aaaaaaaaq B˩#Q;yOފs\Qk^z_!;$򨝔P'$mK~S jȵ5*E8g7D"&[f, >"EP̢IGPKjwx\<O @AEЉuXѡߑk걐"M=i$jKúZJ]8w`aaaaaaaa1 F$ĚX+JZ-y"=uqQ֥VjNL=рN6Rmaaaaaaaq@$9t!R8U \5 ՌWI5WnSA}JpWQLNHAӅu5<k쵰0ȘLG! ~%;$|3!*5kGjUajIR:T'!f) Ô \78jmI5 N'Np$Eqꇔ{bz%R?(HN=Pn1nz0Հ:Lu,EqtC 鰷L$@ ѢEn:|/VWntiP/`]5|7R aꂦnBQYUSɞB_JiUmc6~(~JM"LvU/%P,厴L1\7#HЯ 3_Ypq#ۭgpm@-5)]j/yhQwQgJe~@Ajj G2RgkQ~5\f91-m-}?DE0 DVQV*w3z*EV;u!zDJ2Ðx%ruk2Z{}"!Ѯoիh^(> DT1."a[(Ey~S/}-%,mocXO1cUe\:.2ߙ`wN¢sGtl8k󅊑T+M^v_z[#o7C9,o8Ӥա0٭c+ rYù~C~bᷬjUQ,sﺾ\ۖojEs<}1՘o|Rq t@-@[@>Ut:J*6"J*lN-NcR=Հn>߷-M CƦjM!5GxtҵWUm!0:lTVٖkX+b\(T Y,~տ?FweG{+-?>}ԕUh_QJO~,X%g"ԱrH*Wrcq9 cP3Ḛ>4 B{º}>D/8;Ƞ%pfw}HB(t6+$2jC#tQ}ObHHŮs><'N{Ь{bvֿe{:aG^ *J)T,^ yO/pD592l"rÞZ}Qa [`Lї*US#ڤE@RF"[yV-Ev $ӡELR\D:Stq Uvg܎)YJpW^he4ZÌIHס(RrΟ?Oq|Z(#ԀJor MZ"q(~#2)W"vT+{&2_ ]/^wtȜWC29E> Kv(vU]De~6=GIgycϙSg|/VVs (ńVcC98}f'|uk4w S*ML/^-FύlP/0U > U@xZ"M_HJ-~9wȏYȕ{o|_y;m;$b7/A!s{Sqk ~%kȉV[*dehTݺLm3Nu=}]j#Af[]G)DB5m[]GJ3b[lIgN!^؉z!-?:A~qdC 읐+8|G~\8n4-ͥalR42b4y Db=sk/׿٨-l]Gަ0^RyoW|QYXU9F gx[f w /yKz4$*вחG#_?Ey3uQ %.4D]i {Vxab ]t?.˟xԢxĚz`t f=S؄i8O+ p&}\ȧ>ſ<җ\N=5CEt;#jR`B8]''{){ɫ.9RʔkWw]*6CK6x1s]I2G0 2+ɨKvoq,^ Xyȵ 5)F+_қR)v#O34 O*߻+OzѣwG{]>)H7!T\U;Fu>YeU6cM/"QB|K.b2+/89 >j`rAVO7 B*6(~G> gS|ޯ8C?H)y#5w 19Im>M뫤Q'?|v>EvGpӜz_ ;ֆ]Xa7Z>t$t8r81&D^2y)z=>29" =$2 =rh)>Kj qGFc 1NSM)sֵ #Gr.` (p|⃟8C}/gO:??|3p3TA**^zkQFAvi"v3wM6v2P׉[[|/}y/r"xhlE6ZWD_FV~iS(vJ!di՛.ȟ!_Y~MP^ $٭RWVd k22/rE(Oɼi[rr99g9eHOv9 vΡVq*=1=[кބ7C)Sy _>/W3|S+'n<<2^#䕗aSN٥ }d*]07}3}d\K)^췔8c(_@i(ӕwD9E7%{Nn/)ZVNZmO&P|j,V3_*qMFv r3[dv>KkveT %CK9pC75rܜjx헏_Qeolne{M 5/{K_՜zo58?/O3sbM9?aX݄A8PRqwV~3,Oҷs*P20fJI2GI2H17(xI'+ RsIw`C"z"ʩ/ǜBJ#HD'zDx+Vb,亚`FUWV?}_/ GU&ڣ5,:{Yl/:ӋHQ1Eڿswݝ~qmǕvQGM+M'Wd5#i䏜բ 4?g)DRE/z\ճ6B\i;Z]IM(;+nx_+OySygBUdGG._DqN˗F#?qIO⮻>'c~_5|ns+^w58F?-fZ$yCLwAD9 '@ qRL5]ϽV\)}t(Q jQd8Iu"ZQV{"փNaRM#^#duV@#nmlaϢmzy=j]}]A:)* Uī_wR{7tם?_*vyc=@aRJwY;'> |L*Et{7M?r7,{1:^gڜp/_pX\妕AMnM,vy÷Iv"fY%F1*_t:(Bɸ|*K*#{fIm̎ՎQ[mug\/JGJ'w~d6h%C^Nv*.#;'?ꉡ.鿴/f9Zژ^Q6ZY^ߴkyQyQW` 3_&}~o׾ WVs/^O>'W Ξ=LJ>'?<)O[yϝ㖛oE/%lR,r~k^6UAŋyO<;x?ɑ"N<廾׼>hWj;~̓_Dw^Wl5!wO۸6GFJ>rS>>%"]1~W~ v&Wt|S*QYG٥[ri *]y.&6 _^M~TӯZ^vV$zd;=?~~7~~C}VWi4<}&'O`eyyhGXpWPRJNVM*A!Ԛ̟\B=tVK}^);"Z-"^/^,}c-A"!H[hsvl2Y2,BueuǙ~7ؚ :>NY} Qnan6HKl(=.OabRBT}C z6-=S1E ѵR5mE2^[7P_o{;p]4;n0 wp_гB4%N{yӛ]G|S ox=_ |u3>򶷿 gs;o )~'<_TGt>)^וls]_IO|%VTVbN>?8d7-1gRGuJ\] #95۳ׯE#Hv!UEץ5PV/3(gk(?/MdG y0V߬ +ܑigCΰC ֏3|wƿg&ٵn|.~bIb{k3;Gc(ʾE~~=q|+_>~RvLm|O?_^omr1KaiLG=u"K`z4ګ4֨B/0q{Ku=pኒ0XkNg:=&sƦ5IS]%bܗLIoZF'imrL.(VLg:aezpPTO1mC mBKc*&;\lȥSrSr02NdA,*RX$WIwwML8DQt:(Jȗw_~}cxę3gӏ|)雾[o5kԩÿ-oys&/y1Wnn o _կz5{񦛲aXOo]k)#@%GðLf_l'`J;=.FC.liNP$^Ix9Ff5HIHm+\/))G=ކ%Ŵaȴfy]ke\;6âOЄZo\dcҏ/.͉ɹ -\ {teɷC À|.klmmeWnp&@y~HF{7}<|%_}C|CfiO>\^3?3 ħ,ݍs95<ϣ1ݠV.z3o~{fq:;xkSq]G /TiՊ\ݴ]r"SgW"Hv4T=~3I6MJ T9⩹Z,/r@绤'EVҜ-B.2tyDآBA~UOSL϶BC'ܟrn?GiZֻޕ;iO{zh;%YOyk_9 bS%2g_C EBw_:/GOzӛx7zpeH^W>￟'=;8y$3|~+\yٷ>ü;s!4Qn|Pٝq9PhK>3]Pq]V?)hK\qtE~q\ps-~yZq~./?䟾rysb̞Fne㿽tZ,,-Qt^—'<juj:W5ܚk-5Z!qwl@0[(ߨߠr302bzhŦ/mehB:^I!/<=F/eN=gVN6wwZjCQev|+>t%z|* n6Yz8j5ayt.Wqƻ6뺸Kt]^;xzkrQ7QJaboM]/0~-^rv:waBˉDuFbWb&m.8s:zv;ekeJW EMc8t&mhH'A4q. 1=4NșwIuVg iN _뺼7sH^o.2Fq'9 C'9(ďc@Ƿ.W#p|A7*7]"穽g722…Vy}.jrusA"6cnE]Us[a^41vCn>_P .5<#y=>r\|!N5ӊZ}u7W˾tahB0XCф" ӺL$Ð邞b=MrJwRPs f>]8xabP}N5xԐ?DQc \\ot2Bf7NE5҈D:(rO'#Zc\rt]8H*#†7^ hMK4)@o+(39qŕ8rh2UމW#2[YJI-v.J@Kk} t%D^LPs˵I99ݪ@[S_˩[fZ5v:!?A=Mb^.?hd9[z;sOJ5|ӅۗO\ }r=oR;9h^O}~Py]9YRF2]==6%ȴ>?J 6%}58C6ltاsq8@ؗC!p'T.j4KD+ObLcJ^Es%nПSF!9.N8{ 8yɠ`Rq;MFNi iM)zTu*wN)6:.F>R"[/ UʈVoHvaSAb](P# Aʫe5O<2Y5G&Vc46MrYw*~7Rds)HR$zDxzr+thHHUqn0BdSIB.N@KwAv캾"-'r9?k:d|)u"mYɞYz_?hRbiX:Aʞ L<l~8d1j:Jb &?*@W8/o"U0G+d梻I;nI9\Jr2iL҈nR ڥSI2/zKLޤmNU\EVN+:r*Fn,|pZ-p9|v2V.]}\\ Ň Ms}J&,5e$ e`Vnl־Kͼ?e *z.~ wHl"@r=˗UX"d/aVV3*,gNΡ0:K18. (t!ɵ^V0몫|(\\ —Gɷq+f"%B_|MSnԱZ+#en}k*HvOb/ dyaMiF=Jfǎb k#0~KYHI9"c@UYUEԒ(^K#3F- 1ԧ:{suNv!i,m@'U&{Sl0M.zi]b|lSes?iy]d:7ž1Ѽ}o=j3,uTnרZ$qx:MY0:;1}ps_A{GEA ߳8"W_ʃ6/&T?=Ӭ)>OӕflzUbtc]mc{AѽNHAO*d=>}e¡ Q 1ZQXaD 8u,2UIlD.A& #у kxp`|A3Y,{',҇3&2*뿶|q% *9랾^d>v#"׺~2^pheݫ|UV5"uҋG /$aOf.t y˨,:8܉g@Iawx`),Cֲz4ecGdI!?5DpSWVkGaG% _v7C ? 'w4&!ܘ3>eZ& %]\E[=c9ҁ nOޛG["=^,>|RroL >YK,?(z8yR8#n6sĤ1ouw xdtzoe%W&T[ O9{w o=h8W'wt V؏JO؉ p$<9($чu ">j%W!f`C1|zǯ{z hȲG'ۣ"@H0Ɠ;}TNzI=iSZxtq˾Ht^ZKc|T_8nރ]Գ_]fo@p ;\W]\{B+] dpDݳarƍcI~REnwL]8D x8{UM~&yyoy<rBGVlcߘxRA@,.bzzͱZkx^z6&z6ޟh]_`tnG_ YO2!3bC}Q$Їorm$"UK js-nX[[=j &!F믿{!EuDy8}U:lCHG>(#}6Wo}x:M;&r ^ݐGm`\z}}nxvv}+v>}ґslutYа'xP+L:.읧eI!09Xm1 Ca*zԷ2cm;xAlEEVW8y$^mh9@>Gެfx=_Tƣ{)bC{::,1ܥcʩc8zH84LB~vq"#@)E"6*9HvE[-9F[ մ#&Uao}nC}K_C(W+bB &vHP0WJ;5A} DO8i96zT<CNE*S2}@vQճ5e6rPK0&Lͷ0x(ptGi5zXf5O@,? tI6fQA#qxW6 ׋+=:lLi>Zf* { %0M,^XR}5K Q[OGNQF˓86ٛ-ٯ}Θ/Wrb"&L2q#fŵK' O HoK@ŇA-W(5daRșOfOGu}3b $lԲH4sxIH&1*La4{,]XR}P$PB)t %~eLUB\G8#'uGt$ G+ڔO&}T[Ǡ$.~z8ʜkljlq$I"%@neppaǙN83da9^v!j|x-?˞b-+Ƕ d ž[hBS͛,,,T =BEa!R'՞GMb?l.Av\.*:"R=06WE3۶#w1d$QI[E2+sD[)receeCk N׸T850׀pqu3giLBd{#@Ť\2R 1JW%m'~6laē^B(e,"j)  (5nĕrqՑQ mYC(T$CK?A9q:M ɢR!CVP:-6ku:,jrb35Igt]] CՔ9S{5'jGq$̭W&T50$Hu@I!D+rY'2YC:J6$-JIDjG%wZlm]T"IF(FZ[sA8Mé{ȺCpiwBE'H Àh|6ڬlgytBa1\x8[fj&&XlaqxR}eK)|R:+,,U#TH ?+BJFH\.ۥEwk{鷈6~'趉N;@*ǩx)SL2=?4&sZNewnKE(8W;D (N'dssz3!'>sSu57Z89:H {!)j[s#4[XL&T5ԏ(ď`7pY,sl)KHQʥuNl+tEN]E7 [[mC>F2JLT%4NmZ}FsQj̐|S+" 8jl-|o N.rS,b鲶bg JֽCd(ٔQ$ SnH953=qjtCXމ*Nt?vTu1:_{$` K-,,xR}Rn+dvz,Wi6:(&JSq2m26ׯ;;Z-De49 !WQl\`ˬ^>Ϲ3Kx`sM(F%tHJh t.AlzܿqqjS5n=W\$wg⠱W`ɸq%`N>>": #dXlqTVJx"R#pE)fF}2+lnVNCigj !r:IWR-\![u\dw{N87+`}]}ER&;HFȠItBiLoޮq*lt/Kaj[uM`Ērb k`R=J[e>T#Ŧ/Xx, 6C?WK+$ML4;W.y567bggN{FHs@:.nn㸹U8zDZfÖJI'.;mv纛\gUn 2yxXEufCV7|TS:=*"c#<tGEA#K'ZXX\86GwHjc[cwCQBEN3?HjNȔܥ]}Clo[[۴mArEcy.Qy{ ϋzꐒxՒ0A@a_|nqoSgftYe %*YVprYmQanHWxh6 "EחJ\#K,,,,?6R*Zdq:qʇFנDu7w.!.+loEKζ;OWУўy5FFA٠hh4/zrlLHuiaDAt>nnCn;ZU6WC.7tN?,םKvI2t$g%Ðn~PS^굕v7%Tblv݄PRQ 'Nq=AM  `gA6VW\g{;yfdQz=&SSMIާbjjfIޠ^^vs$ |?viɒ}-Zmllm+𕐠tyΝ!jJ ,[$/J%vmL5CG]Mx’swն` P8BmŌL7PJ%QK5⋄z(8nZC9`P8.!⊈zImAP.VK0Ns077< 8shzMiTOM-a{{'6YXK-.]ʃ"3u DExsJrDvFYxL7(%x#uAJyI]zQ7׌v9 $;Fa'PALPx=q]WRwh^v?+=C+PRy4 fffg'OdIN8NVX_\g~~.":u'Lȴʭ!XOaF0Uw"IF'O:.zz83¹YXXXXXXL>(ͮ`t8X(D7Msh"KlƄzgDtz-N}ĉ,ZԩS,..rjqffhdd.p)waaaaaaaaq10P v:mߡ(d(H<'!E!PB8.hvQۗٸ [[h4\יbn~EΜ9ӧ9}4rtU0ˤp#J"$W{,;SՈ]B!eME#6e2!εz %so @%PQ$P(GPs6^!v6.6;;t:m0w\lz4 :}3K,-̙3E7Y%Huͷ8n|RroXF)Z~D+rJP'ɟ(G!PWel/.NL>ukzL8}4KKg8{,OԩEfgg3B]|4rW|&k-I+,-1`{MgK1QJ *y()PPt-PZ:2yQ&U%ɿV0IN'—u!4ĹH@9 Eۗ^_a{kVkN-O ph4bB=?S8w,KKgYZ:ɓ͖;숭HVVZ|+Wx6!.n׬\ ™Am]mN;"%2D p I=Ȗ뭣eKZXXXXXXXWL>>%*:C$%>HsH!Bm+n-N 2B ] N:ٳK={3gNPOMMeyKgfxԷfncumv}Pxuj&YyPviw]DVr0GQH)R!e[Bmaaaaaaq1)B2^wQHHrp $_@볹buu+Wtyյ]wlđhQM?1E$\4=\頄?I|}4*!k c'1RR%HOrPB9 * 8uvw7iU>($dPq\ej|FϞ 'I = gpͧt|vx_XWyeVth%Rq):5Eg{(w]Lwzս-,,,,,,,+&Tg~KzB0DR!ER Be( w vivG$qzN<ӧ9ӧU>fj6󛞌Z#q\GPj0;rbadnfࡇVRAs[!Z%춒U=HdLJJ_. j' 8$[P D?,) 7T.~kNM$)ZXXXXXXX4w <uܚ"%rJ!T%;O$xg/nF:8¡l0?7ϩS]Od.!e&RJ 鰻b{{x(pD!QvW |jH15M'\G9 )B)$8Qb.2qq<<;xI9vvYB0DqkP!&A!E%&FȫD0%1"T\cL q_fwwvGU]faf{|Uugy׿X^3lxMS\pAHt@IPx)MLS$# My3|ȁ.p_O(+ԕw'wu9D+O|/xeL_'"<#"&h4y^-,_oe2YqԺ[,bX/E% Fm ǀ$G) %$)%Jeh3\vzF^'"|qpEȓnr @q>~%< o|#ݿOq|'B<'2,+Ȏx"yE^oh4T*k&bX,`9E5'* !J_f!(aCӅq2|T"0qCV)O>_r [>}~ycPTUO^8DdB,#I8ou Ð(&1VP[,b~w͋E+ o~3[o:hDm&'ؗ'x:woM􌷽 E|d|z<ݏҺO}Ob7h^_OdLnom(V}`U|}O~ ⻹[z+z+_F~˿3[_m.R4ٜ⪫o]zI򗿜n{^\\R1/8ϫ_|dSNAbXG\z^XX MӉ Bp7MVǢ e)Ihs?_Z?.^,83+_!}}.?WqvW|6t׽~3N|@n, wo,3YG43+w>6ysJAݭ5^͸G\x!Noy ۿ}eQVy)~xh}qGZ /~0zЃ׽:gq1]yșg' o7sβ|Cr\bYqz5ssq+֏՞Lkr4n8n ]0yNb q掯|[NewZ$`)ۭ8y/*[E= tv^uf?ߎ_\  ֻ%LOݹp'XtuG?_מi&|Cxqcc?Y,o˖-l۶6's/zn_ЇxaZ>/~�/%&_qgǎ'rY7`W Tq`(RE2<&cD,D*cn"/y9^]Z?e~~~O^iKoNނ)EII cT{> \+ƴ"fŠ{T148^N2sOJT_Anr×n/L3Ŀ}ի>@\~uYya)?sEⓟI_{8'xn6~d)۶7tӊIuVn}3{߻djJk^>XVq|mo*G^+>͛Wl7xe 7;M=b싵S}%W`+Su;nwضټ,`,;]?>B~ cnNKӡ2s+ƷʾN=t:z#bzaN%q"7mb8 iYHÐv÷t:uڲ*?O ^{~YqX;_)12i\Kk~/-;\=/m,5Yw駳8yZ-6G R-#jʫ^*M7Ϋcؽ$ /ND4*:,GqrΝ;җg9/?v꩜v<~@[ecz\r)ԧ[s{+mE*_\}|=|Qqy{L+7߿'ᐿ|Y1y|>Wu?bX*R}(X?: IDAT;=|!я1}a܋ C9ln/^~m~)EmΝ;9iO>yF+t7[V?ַ't];Il߾}RB>=ǁxu_sͿO_~%S7Vlcvfgg1&p0DH?3 qgMfnn׊}ggFy,~?~s 9fi!hv* 9;E p~:dYJ~1RlW...2;;Kq8P9dd $ܸS?Tvڵ9l۶`I|ncrX˦=_o߾;WgO@)*)/y1)og?9߾;&YZ4Y~u@Eew{Ox7m6>rR߫rlVnfЇ&=7x#ow1< xcÃ8N=b w~ڊק.'?~~XqX67a_|}׾x_/ |ӟ~hX O_ſkqȋ<9s~F&c/3fgDynI>ru[-8rm4ru(&Raq~c Y!\GNlܴc?t-1XgqaNH9'tye91oxW_}>7˲u9"餓/~{ڶu+'ocv{8w=wۜVNܲe[5/N?S{WbJj1m>n^Ǡg82 ˾nCݡآj1ȳ(QR,M$Nt:ROGJ1xtصkٝ2??O!cA(bRH}Rfģ8шQO./37;],30<},C*{h8nv{E,ygYџtvVTw;Iyۣ׶e0&E>aem[gߗ9~inv{o_I^k_{{9Oᨣ>~{s=w}|BrÓ./Fl 1NVzN!'n)xR{ʰ17}m-Q\tiM;;^egY,!aܟzܓhAkMgIL' MFXģQ!F73TK%zu]2]*Ԫ%o4K G C,/rfh]8<'K38!IȲB; 'RJMCf *F5 $2\RU7"7,ㄿk0d82??O!0ZcLm/T|Q .{u+;||3~}~^{ Ng"tO~(YO;!!!K3!ZBfE$,'IJqTSD%A(J&ϋ㺮KK TL! (~6hP9Gl8 ΑR( c,vBנEvx{rp繸r\ .v |2TH.qìdYFgGDi4t>[q&;wy>B^WǝŇ[- |O cxScΫމr/| 'Ai !͛A:g=|sLы^Dຏ\WlSy*^t!}6NVsٶ};6n'EϽD#H>+䦯}VM!y(ϹB~b˖-| <}X,རVYPH@*Gホ+ pBՁ(ƭg[>u غ')w'=]s+&*yp8b~~~;?v:PH) t{]0EUqhUk4MOsNu=|떻1|\{5.+>aX,=sc匳O_07!,a1~  4) R 9K]>gʭ~>`M`W$ eGяEU18K*Z0"M@\RA)E^VQr ª1ARʊ=rBNzRSDQ8Nz1*0,&OEI9YmQl6JW<!&‰DfzcjEH/T)ʞh: HMXW&T1}#D*cAet\]] G?Uzd\`^'b9rX7P1m ϙ%Qa$IBVH R \cF)j5^{YFRa%jDZ-[&} S{}?T"ըˉ*Zzhqݢug:N9Ru $3\E)(Ȳz\}ZOT*!^$)z=ϛI*A2TQT~PViHv1{H1)N&'lNu|_/Z_}O|a:#bX.Gm}j:RJjx"!5y/-bE_; R*") !at."J/R:JMJ"&\AJY_DU΋ɑe<5@ʉFfcRɞ^S*0hS'()mu1YN>$G iN&g8,h2@I $8œ954N$ɓdYע.l4I mc 333LOO/aGo~s7'+VrhX}Q})ʊ@JEGKPzWQ:/},VǂS)UZI nkE/cUj4^):FcR)snN&)yď{5Y)@ێt%JH#1Z)uy^^.zm4JJTYc|gjj_X,b9\qz9c0?;*īDFLӧ^D&pr|\ip2(1REXGhV%@%D$sB#Ċ,y@QYJ;sWsojD{zJ6L|QlӐ\<%Sf*4+VyȰk s$N1q!2HECbROl,%24#-A, jUܸ/j-bE֍+(KbWkΊWįZ 1e Jz.s*';M Q'I%{}k]`km%9݁b$h] A rcJpEFd٠RgdY1I1M:D;bX,eqĉq+Ƹ-c>묨b,EHO%9HQR#(Y0:Fd=a$ ɳ4Х뺥ϷQe'4~by׾0,j(C),T Bq^]=  $*TR!"0<2|k  :qNwdNwVGGJ{d.ɰOȲm4t"a:kwtŁ $-͛Ext~TNxHX=b2 T8vJpe iRߕTdH tRr8(q<镱bX,zc(UDqQ,h ^R nтL<7q]m "O0@,<|FfNx 0C<JTLXT`b7>dZЉs=ÎN\;3r ^fbAw57#Yh/ +cT(àtAqčbX,/ºhVIx^>Bw&`h19IШ9E<7AXJnOcnH2J22]z(篘\#PcCE0tvne~nvE'I"G98KT Q%$}\Ǚ]X>bX,# pٰ1S715Q3t1h-vؾ3`TaaCh =94cgƴ[B;iZrd&(%,:J-4Z2XH}v|{(-o%@H0Ň ƮCrTUS[vZ;kn'Ezcy:`jFRS*bX,{G^>aQ)FɃ IDAT{LרF>yEI9.=Mr:6N`A6"0Y^VSj <1:%!VfȆ9=656ŕʤ¥dN1px1 $ `z#Ck1ع؎I2=)s]TT(ס/.l5]s;YXX1 ɳ%{@Y; ÐjJ^Z]j/bXu#waO}u\cL!dY*R$IJde29ьct(IG)bZHTi6BfS>SUA-r+J,lU,#ȴ`Bt9~J)I#(&gJU\fiD"#<ɆbS% ċX,.tC,%ϗH$Uz(}X,b ־ W׎ y!, ;8qp]EjHxyT2''MRt)4Ѻk34L(KIG uxGTK5pE;xs)AkCjÌQ3J2F&3FINjrSUxe(. s*w0Gw~ s;5B'TIVaR՘hPж}X,bDZE]SKcX0Js~[QiF;crm41IR$!+myWz G S< Uܔb39f.[D:MatDSHr_2UijrNfYXjFifr(pT!:SSSL5h6*X,r ܕzPE]Bq*RPT5B!ΐvFOP~ ';>l&$EtS`A 3RdBL}ڪl@S եYVe)lUI.^bRx$b"C=Խzavm8Wv^`0 I<[Q.D|CEU&3f0 q/ɉbX,$֍>DŃI+jQI-:Kj5, RJfJe,FwpaAX@d&K2ti`tg-P M!\MP F(3$5z\%S IJ3Z%%QPzCIEyZtg˄.~`X{y>H}jT 6i&6l@٤EW\ۃHbX:FTݬ8AHCy> c($]h;h37ע3q:A[ṒԪ uhu G]_ #ܠ8nɌhY4KF#cJ1]11T8J<ǑKb E"IawA]V #8&M,/SDZFJH`zzM7i&6nt)Q ):!e 6QbX,d͋1s@8Ry>R+pfYy(P;.6v@'!IR%4P~G8aTnt\Qt(ǝ!US]U+pGx/qW)2h1Γ-Qxe41'$NH+ŦTqJ9U]? צ2 HC #Cb>ҩ\z(uq=U0ڠ P"<=frFEKG岞X즁qOy~2N5Slذ 3lajjZ6 WJrbX,G VT E󱇴R Qx[ (>Mc8ـ\/b,.YJ[L3$B8 H%0: 'SfTMr2^OytQ9NQq}HGV@)6zzjzNZ#|\׵bX,k?fբx'6{cw J%$DT bNˠg8&)Y)dhck186! Y&YZ^~c G1]T Z85]iƊ(wbX,CЃwk[EƉE7RըJբiqLyFL ;ZK92gMO#}JTTsYxc!Nn"lubX,ˑw'0bQT^Qi۴"he]ezzV>RDlek*AHVVhi44a%w+-bQ}0 |p=qp= DUj:NvMӡN4Ȳ<1ݸ'ح-eShQVb7]DTUBjuX>-bXqXBd-JgGߧUUk4 zN^Gۣ?3B4Kɳ,/\;1yIFeT G)RH7<9UT5jjDET* (qQS".Ī҆X,bYcQ8,1gFp8ٜb0!h\NI%jc/.JIN*ABT*JU0|u'bX,ew־>ȢY}5u!*Ne޻uTցjZ[ֶnj{TZ7n$H$Œ|ss7ɹٳS%=^)Qڤ: 6+/&Ρao=}L@cB6IdG<(ll8u$NNt}B!H2?fmTV 7W׬ s1kz֘tap0gϞ%WN :9ak+B!<Tqy*Qp`~>y7!xS̫8y:!Bdo'ieccCYW7W:$s/_>r%S?B:0-&ՐX'N-aJ6r!BXO3b_P`+B!UUB!*2IU!BtZ!BtiVQTeu(i#GXB!eIRDݝܹQQQ< ARboo!B=(N݁ī)],1<,\9(M+(`g'x}Lg6g$?ߤ$ !RWgK?"#PLBBk I+8;;k˔J% <ȝ6EHH0)Gk3H oR2'B7 ΌlIuT*""#ɛ7/Ϟ=s#_DDFR`AlmmGRSO>!""<0y(Q›( |vnsF2<:}>B}'Z&&%* ZmV$|Q~Z֖'OF#"yyVG>}Z#|vnsFi!MJD!ZIxvIJ:8,ۧdzg.}3H oRJ'Yoo'կ\]_V֨+T i>C$=]jhT**%lFcjt>ZۜDZ~R>YMRfu Vk=R$ #R)h!-5n2546̎M2D'MJBdINcCpe̚9A)kʕ+x:^^V΂Oy:ssͬ6gvܙ]24i¾}xY޾ !*'?j5֮c/Yj%ݺuKqN>{GRLį[%Kҳg:|!U}gOj*U1Cm n؆̎;#7穒3ٓL@va~&**5krpppRi݆jժ'L>BR Fҿ!_t܉۶rQ7hβKYb*͛1bH9K1c f͚3dr@*U8wN}˪Trei`$gVjnN@@6mMADJ߲d16ڵKy:3֓˨׶4.LmӺߌ0Œ7<UQ盥JO!DR>Fc|x͚ut IN^zɒ5k0v/^B}Xx7nkvh/YL߾^/,sTRiq}ĉHˏ>b޽5kԖԲ%;o&qG-[ *X~,*^8e˗qaא_t'ǫ/"lI/6mLxx8۷mK4%oTX<`_9xJE*U8`ݿ?'}ׯ3nxUV=wKr] ,Hiڴi >M.=gh4:龢RXf5#:::׶mj5֭g_{;uЇ9sj1֏Tz),Z#G`kkK۶mXlWSq?6Ap0֭#,,%2d(E==ݯIu97էʓ.^)Xt Ᏽe[n@N%Qdzjof2UwZk׮!4,y2{,/FWSq'NdҤ[F5bǿÄqXf5ujaүo*W9s|Je\ޓI=s9g1o.ONDnrۛY I5ihPk{[n=ԮSժQN"##YnvOsϢ>> ),ZLRneʓߒ%o_IBC QFF5"((G!L?"E\ə3ڵ . ˁuЇBN ǟҩlsz7g+W&GЭ:umsqS֎Ȉ>yJ…2hpb7ݧ_^鋛;ywڲ?M)FOǶ[پ};r7VϝB$j]IŊpss)wsw\ {7;-ii֬)?0~>Ԗ+_೮'D@ܼy%J}?J%{ŲeW0dv놽=zddN I[wYBPX1>-Q}o|}};ロ׫ݻӽ{wjԨaS#znLrq-+>Ks!POibbcx(ٳgԛ/_^ݿg[=kԐ_~Y</{K/&FLLĨoYLL s3'/L 883س{k׭ӖM:( ƮMiF$e| '$$Q/Xh죏>bܻ֬e[o3eX_; 5d⅄GDELMő>з,u}/g~W_q<}B*GBX|9*VЮc`…G… i|O" ֤x`F׏bŊW)6OA|ޭkH.#G`zK,eKuڷk-.|i$HPO.@}oF>Cez54i5kk׮ũ`AҞ=ݮ'>l/^Dk7q٧;x @Æ ҩ6שKP<.:d0 -b89_;>ɸ;;d)|7ҥ3S Q(Ŋcȑ@_ӧ:1Z4obYb׾11/˯sڲVF`񄄄In]Gc}eN݉}|ڹ3B>}?&9#}oYz4^Y7M.ٶmsf&&6'BԮU/GоU0T*?`vyZ>w'4Sl z s al `*{p9 =GG( rSnpըR\dvPJ+/ӲUkU IDAT>BrV{xmfʖ+m߹sg2Ɔ*UUmHiw-7>ŗAV7-Z`Νi.,i,Oi*5 +!,"^BDDC^CtĨ!V J[PƂm!)x}SAHGn#S]N?~<3BJ5c?l p$: :t .NEx;F0TgmicIu:? %YZcq 'h}MS X{-YA/u<c5zsjT`]!oHP(,ZK.\(C{rB!rϞ>%_DFFR:L!IB!t*/űnXM'&!BX]Tc'Zͩ>B!DfTkt$(Ba7Nm,?DH.^ȋ/P(h4{{{{7>wG*U@Q(҇N(4U?G!<}R)[|ROOu5jGGǴ)B񖊊"O<>..Jϩ-?L nnn˗/CB!JK8M>S$ՙpF=;[{B!H'GGG koVTB!,:qvqz!i2ҹsV:u̙3: !Zs!\ Y|*̟? 'fH}O`ydu(B `EI&7sBXD7JU8pᏳ:L~:֩u?6jU+WRF $$ߤ7CoNڵNU\=ϐz |2:uīx1+JpEu7">rePřk׮#w)e\ Q ʗcС:u'ŋ/׮]Kzƻeʕ_+9sӷ/ O߾h4fϞer_f:J\_3g0t0=sZj,7қtÇmOwWneTVOw7k˗山1>(_,g2:mxws5Io.^ϟGr!.]wu߳9Xz 'OEDEEazzǼ'::KPJUϟscܽwѣeL?.C7_mټ lsxy`!^6/^^'_L6]!G}Xr˗7+;~Eҹs녆>HTݯoƍغm;'O4ټe+A׮Ӥ1\[O?r=99r=t :tHcǎ9m;l4!Aj!A66?"ϟP!&Obe˖2?<=4`!ʗi]>!ۯNŋeߓ#GƍΈ#)S t ݻwgXKqJ…Λ76aaaȑCѣGFn_ 5k4+6}fH8Űañ7F#;;;c<==1cu#Ŋ#w0sel'ꊫ+'?X2""77]]݈4ϯ !U%ՙ1ښ~T<|ŋ]}Faر)SFZjԯ_K/rb׮TX ԑ8xC&ND\\Z[~)ڷL)k¯b|aVѢES888Y׮?^W/:9!ƟQ/ݻqqI` {7!Z^v8L:k$Υ>(5@jU9~\w>/_> )\ XիAL8AIWW7m6%aXn]k׮/q|-[~%%ǏSz4AͺRTkQBQJ`֭<}IR̞xַG"##;fLׯoƆݿ~Ӗ5nܘJ*e.YL"Eh۶bccU\Y\@|e„)͈xDcnjѣGر 11,?H̟B`IhZϧmh;ouCǎ&iڴ۶nYVjUΙCtt4wa:{ի(J)4c̘o !$$1c5/d%,?PBCCY0>K,as Vߗ_PmJfM!ͬ8_:QfLB6cL*VĀiQ ީNu{bѢ<}^.]Zo} 4`ocoo3glРAq){i'+Ɍ?Y0|/PBEhP82"^s%Q֭ءjLG|}s#T(_G0o|ԭkt={6*#F`gggr?'O꜒nٷo/}JѦMk|4٦y|y7Kx1yd/%M>wԯGFQv#%KdӦM}>jgH`BϽdl `*{p9 =GG( rSnp٨bs#ߓR*\z6mu*JzΝ]OL)\*eJ˹,X0CJ,/jf̘e5Yǥڵ+<]\\M|3|E;u;uj o3R \r[[[Kdƍ)S&UW[ VFCX D((%8QC BSP~uK'O5C#5mHa4 {ɓ'c bȐK$v4 &661cG-6G̞3Ot~8;9B!1s^,>VXt!Dը^`}/*VXb|~h޼FNUV˦WBX k->af Tg/IBXgfu.;O /Q/D`,f"QZ|!2] pIzBa=23]Qz95IWřһW/Zs|Q v_b"<{ Sv-zzS$ݺ~Ç39b̙k:4 5F_-kdR[OfEIš$^0#Q(͍޽{euXiߟO|ʵ7X 6olv=`ܸy]8}z&GZfeL0˖\mR!DXORBLgcc+G%޸qݿO)Kx݈=ϔ)V Jz3o\;wʕ*𗄋LŹgϢ\2)_}I\\6DEEQzu(_}h׮=7oޤm{?rʅs!.^L…x%}Jq}ܝ۷iCXTĞ=QxqƜ85q&L=k֨otU'&c}(J?֯rJzmm(Y@T^Q|JTn\[fZl',aùr*{`7_kϞ=_6*s!Kx#mÇ6XyةNBm.///%Jlxw,\z5Ca- 40m޼yo8x?`o>IFՇ~@R1uD\ @\tFMQR˖-#<<Ow\ Nxx8˖-YTߤ̉~`JHHNL)b2ևBe*Ҙ\z5I֫P!g ̉'zӱSg;qG]󫒇7o4XmغeKX888K޾}[籛׉@T\;w`|/Zĺk77;s4 <͛#)]~_ʔ-˰ar ٍ5Mߊ];'@ ڶoύkAFTv~8L%2$XREvv,æ (]tr *Sɷ.Xvi$ޙƤۍOro=BKVjJ޻K6m:!Hc9W,#VY~R-T.-VKaccB!IbI,)0+z ;T!Bd.sffoTXÉ B!D|j!B!,LȌd_B!3Y%#B!B$B!BLH?4zN!Ba99zVGa !BT|jFS{b B!eʓ*F=+NB!o7O)WB!!rB!8rB!"g:CՉB!137ZNS-BaT!~3~.;jN:2sLHdBYBd ֓Tkp3g;!D ̟? 'j'0҅;omozc$-MN 9q-R9sfgiaóُ'2,{jZg͛7icjծu6SNc㦍:n݆?wiѿ]C1mrA?}9p`?Zevy߾}PN3+_}mozc$PfZfeL0˖V:$!0T+^kv 3gUβiSҫWo돧'ԨQe˖WNN>m舳 {|55bŋSxqF5.p &ϟpMoL?=bcc=z˕|=XmQnC#Νr,nܸA_Pڧ%nDpa|7ÝժjJ۷߫NNٿo)]'OIex 1>(_,giZzj*ɠAiR]SAFoeƶSXOvBCQβÇgr[WWWBB~#GPZ5+W`9<{O2glIKL矸z {g\x3~Nu={cO:zУGwz'Ξ ͍k׷C [lݶN}K =zd ,HVXWuWvS@~Gݿ#G GY l޴'OT2edu{"4q2o7OAB1 Cȡ[|;z4?:"o|ŋfO8kPһJz~:&MM2:WzlX&;&Oa cɒ% 6kҼysCS~}rI|5[ۧ-QH?ӓ3f|;osiڵϏ3gNszlR_OƏ+{ʕ+:/N~xoߦIqu(#P9yWZr:+`=I)R$hs 6=b[>J]Yx1%K.wttgϞ=%OB$ʬsY>+JoJӦtNW_h/,?ӧ mJfM =<lܴ*U(б#&M;ܽsI&ҹSg+Uٳx)O>e֬T\h{)ꇴΏѣÇ<|ѣUVe9DGGswwwnoV1cDGG7o^r{l޽zqUJ%66Kٸq#5jm(V8UUcӦM4nܘϟxbT̯c|KHH!!!N=ݻ`!ǥK̘>BI3czf}ǜT?N:uƘt>ҥy/7Lٲ 6\?o^JM6i~WWWlukqtfΜqS«8mڴ޻tiޢ9_| ^L4 ~[%ѣ޲ݻtb0z7;=|<=hPGuזEf *N>3қ2xeD^f͹Zzϭs !Yl`;59 r@N;my \n55p gN?<)RɵkС/_2/ѱSgg!D3fpYftԉe!YӶMkI:pEv)#nBYJukP|9vvv-WukW㓪ܫZTLWFCX D((%8QC BSP~uK'O5nƥN!2C>1NM.^۴yKV`v4 &661cG-:$!Dr\iXAf=IBV&Ѽy F! !$+n%թNXš^Fa͹my,?ܥf.Ba2-dj!B!DqB!8t5j+.B!n3R-CB!j!B!,ŏT+^k!BXL6dTkiB!,}j!B!,׵ײ:XQRI Рo=!B~o>TCmH;+JB!f㮍Γ;0jԌS;PQƩB!2Wz2C|ޣoid5IB!x}וGB!,[& UoܵyeGi3B!#|#o icIB].΅:!xco>50LZ!BX6+o$I3cLB!%(U*=/St}ɞB!2Kc>j!vjʕ+k֬>r j@Vӏ?Rz5|JdРDGG5{,ʕ-CiR|՗˼k!x(3!oc>䛯ŋ;7M˂Q6ỏW*2yN]d:|ׯ3sƌ7!H!&7~:YQR-֭/ǎ%$6͛6p1&$+W`(V8 qپ}N]'M 777&Lĺut !HdI ( ! r 6l9s}:y p=ީ[B8|@W_ۤv{0lҥKSϘoGLpp0cMOˁB,a02Un}kSO m܈ U!Cv!e=BlbJ<>wvvy`cc^ꥷădu@E!x,GB![jFS;9x!By\ى$թ}}B!ǜzVh}p!OiSVWFŕz2_,ϳ?ANz2׬gZ!Doi֒sk !BF 3j$gsv U]: e"oOBXCrax-  AT{5F.(D-^vVs G6jP>HT'{nhUƮL)c;?nn>ߟu;̚cu>ƽ.F+'(>N! y\b2sR.QY,Vfȯ5`'C~ $V.sbyuΛL[0aUJ ܍SXpxzWėcj.>K!d Š&)}]*.hS-?ʌ/$D54Z>YV{qe:) Ld5oSc \y19)#bRtͧcn* n^m0+|(I&Cokݹp7/+&s9ex%׀Eh&n991''7&3&mjv.=FW' =c ^ cܘJu9% pq4h) 1HK }=Pъj!DzY/8:1o=IS=3?S.pʩE>hyR9mUiސ'UBEŢn h<s0cV5߬?A,[tyʲ~hmiB;+% ix]4y6 N9su=$J.sbI/kw1\M=\r(T|^߽`NnEQu'SLէbl_Bd?2Cs^.?xnrcbT#D3]u x1~ (q X{Tctns2e)iT[Skӿ {I9PS[_"59@w<u]Ēvl捍~<έ(Ja|2m/∽07L1U_}](ls.rMr3S/*+Hl`;59 r@N;my \nVzn9As tƹ3kt+rRtڔl Y|rygHMj?t~PK~ i3_njաY J%ZEҥSZ ~[+%Kqw5ox QQJxqX%(mA JM$ISMB !2_|PoZaoEFb3jtgs=UIR-xʇ |. !4IYb_\]ΘC\ x="Iqeϧm H爋WN·AҤRp3_>xɰu9u dūw]Y_0aUJ ܍SXpXO?w߆ߏy5Y!2$B,;k-h^}'\;L%5mu'_aҘi\ ~s)oϛV)܏xx2!9=t1ͪɰu ~:S1GEC&mJP rrrcv}͌78x)cscVS*5c]6'?G?w6)'߬~5VuIF-Ó-9{-`,7]眜ܘ;od8"V Ԇ)6&57r`엖2wlj工hn,G"PP\Ɇp^x`sss? 鼷Vk|qkۃ?UMPAT7*JR-}piY4ޮNx:pHsﺠU^< ߛpըYž~]࿿'ho˗{/sZzZ}|FMyzioؕՉC[h[ug\3ZQǑB iSe[j8Nn*lmHIjz6ܝY9*ؠ->Iںf/qq# kDAʂrTW_& Ow$g[2s-WYa*\eK?BzpE'fL0kv`ߩ6(:ҭht#KGU_ (bҘڣ~"zx#bܤǬq1GRҴf*7OH񫴞M[K'fItuss.Ѧ8or _*Sq5Vܠ&&uY09×g:.|.ݾ٫wP=gA@jA8qcҍL.d⺣йVy ۹L]nUxP e#.vFiѽՉj9듟~vLݘG_''."'c޸q;;NTq ^^q5V>hA."7 tz؇|v72x#=ʠ}?a"#f7X7&U,ZrԧFV@fONעhX 5+3tn䆽m%ZY t'ɇgѫͅUGu\f?*4-K<&n|o?MT#/,=h2)]55SjC$ؽDSq5VT[/>Ga[xl֠-3ػmm4[xnN4Sy~A( BF_$[]9}>ۃ}%p vlUJpqWGpus-^:u=TmT^^yaK^K%$⅗co/7BEfO1蕇i]MT }.jN˂߼}YKU|a=ziܖ C_ NҲGK|πYp#n܆yp;Ƀ*\ȵlȭy7sw+(ܔ =F~ `Q멏uq9-2Xw~mү ?LA(Juk:y}.Zh :U.ƒ$Ղ ) "r   X$Ղ  `%>V, SAAx`OAA#I   X$Ղ  `%T  HR-  V"I  P)ZAAEjAAAIAAJ$AA+ZAADjAѧ"Ɔ5kďv{{W  [66e\7TdVJ?PӓZ|VyʕQ:ᥢOAACVK2?wu|nP\B 4J  ƒT" ]i8{6v5ks3&G nDE0nٵ}M6l/sz$*UL,P^?AA*AիqVƾƍ6z5 oo8%UgXWٗ_⬳z]CO> Ƞt._O 1Ummcs'AAT|'}=l:d_D j /=P..^UZM99fXj66D7x07mj{9LRF  }D.(%..] @֭WΉC5}&L+Ǯzu4.,XUJ&wdOJNNtKOgf_~fʚݺ裚#O7U%"*99JNnfտrJj),ؖ7JN8 o*8" IDATڳ'_{̢͠Yjcp*|nt^  #ejU uWH8V42NIy+P666ӹsޞ9:uG^%jM%A/}"Jg9Ue,f}w̥YTu+{XWZ :oTl"#ӤqM9l*X üػNmqV'k˴NZu?ފ&|ˠ]t}C^ c#h./_ͯNPܯ --4imDuqz|se $V0~<%? U-/-?t@yUue>F=kNk6VFHNBbpp[[:''e K/f޽lڼCGos>Q`ܹf޼;euA/(( 55E Fs|a1xyy1YV٥;޾8}4.T1A♳bѳpٹmQDmfܢgϞVR^+U t2v͛6s0y̙="ղ=:@©ѓɓ>ǔ>S15R۷oӧ0i|Sի7=!ɜ`g[T4ۢ;~ UY?0[}ũYŞe#[Xr'v֎?%#*ot&qq/r x+7z ;µѧU-Fꍷ#Ӿ8^ ^c뱫1'r2foN07:sfI/.ް%hdZ//-%#V?η d ­Rf˝+@z p CC7С>ÓA0 =a~_X<({W-f{zr%;;[ٿwzkVTrrrkU̷[h{{6f׏(P33(kF3(gʕJM?C쑞=oZQEILLTZ4odddhn 'N9==]iѼvU8qBiۦAm٢brŋѶM-=qqqŘ\C\p`=S>.u제:uJnRo_~|~FF]G>SꋡZeJ\|Y.S31kcK7)yZx;VXm8L/e?bLA*ni/e)&YyKߛTE;#W*] \t@Ѷ<+o_ -?*.ms7&~O+e-4Q֮^e0:o^\eV^(Ҭ{3/ ;Cd <U.PG p楎y]aZ#7*ZOr3&[?r#?}::vUTGx۷8֫G7Trtc߾M`ϙ8ꄇsrZGES*|Fnoo[ng43R֮wߡQS'jczHV[3X.|N#&̷ׯ?ϙp*vCeׯ駟2}Tt:Ç̷9vi/ٱ-vv{ ֯gy|0\jfY))Zzb"|||[!xcc*'9ųp899uw5ɔ>SZbZjieVs)%m2et@LjP>ׄNoXtҾ4޶ٹ8kͧwkkElOGn횎dվ~왛Lq>7 ?Iܝez8gM{ݰ\t7p\F#>=Aޖ|,\N+0Ajޮ%R͉ӗoӬZ1KplE_f?HY֧Td kSDM(|GG7mJ^ZkQQT^rmcѣɻy]#y 5jdKO'JξO#Zҥdddpy&EL*4yMsHKKcƌH:uÏ[ ,,v] #Xt "&Q*ݸqKЬY3ͱTV ggg.&%QJv3"yD./sIr 7j6ZzfDNH+ 2棩9lp"&JBB999>"` SL٫Kbo^Kb]Z39}$''9}aT*X|1v^`8q9ܼ˖?.ħ{6`#Z#|]#=3_exzz2~~)|Qq㸝q}$##IJH]6#=E~^ HshSB -7f0rpjժرVe_.]ҝ<W%t}!IJJ"0,`݉#I.cqĘ-?y69|4#}:GSR%iϴiwYsUc)L3e,z-uiax4i2o={T~DDL2X_e}wgo臘gSɞN7nH9{yg[&o8Ʃwړ jx\{QzUeֳMԄF&b1]x/G&?ϷKe#[OfoNV <RhA052 .=|y1 h}}记im<֋qj&a\R].WXk7.|+;{{T.Nq{n?ʞw6*//Ӊ0x%/OccNK$O5䦥qnLjKn(BΝs0.^GU‹/@؀0oSTlCAt (v9eqiܖ Cԯvܕ 72ms<ȁ΅\[͆Jg yC>wMƺFVo{mBQPP 빐t~-U  $*<=[W1 {BEA^^zZ)Ǐʜ|DE]HB"eRW,  HR-  V"I   X$Ղ  BƦX F5wԩ;w>Y*"I=ןe;w$4$:nņU+ʕ+iղ(uڵ 塎Xj/\5u˓O6}uŋ4kڄtNA4iDdt563g6[Ŀ,11aÆ__̍+sk׮!u+|Чw/N8aP>-kUPPܚL0 M4iҥK fhN_эՒ%iԈNyq-KNS+OkTvATGq͚մ N/t~_С};NҴ1Wэv}r aj~Z?Ɨ01ז Cܱcwqf"s&lf8::ʣ⫯֪ܹZB+C{Dѿ^ϯĈϜ{(֤|C:9]zpgGDLyf8}zS^gݺ4mQطo/K?S+4+W`)t _ֽ;ӧOcʕF1cϞ=ػg/?}{/[n=\HHd ֯_ǻ)%3FDD1o\^5ի`g[T4ۢ;~ %o^6mL?HNN֔ >#Fr_>r///f;Kh6 NӣGO&OdTߞ=x}lwM9{\̞pٹmQDmfP9al~ڣK̎DoA]>}E C:Mk<]3Sa}t@x4cmD xm᫯&izIw4WэgKᆰԌ/cacv3l7wil%@Զm ԨQyʘj#_l J-`T*@R<Un-C}'``"{Yf(]1Q˕leYRQJw7Wo٢brŋu(:ve꨸*g$*(iiip̪~Wm?TJ?Ա\tIQEx<Աjo*nʐ/)J>J 2XqwsUAw7WU%tY;S<ҳ7_+(J͔ EQMpmF.]vm(qqqJOOWZ4o%ʕ+ ǻnʅ =Աr)~jjҺUK~6mJkhkO8aV\y0L{ߕ^>W3uc<0i)ݸl7$T}C2SKm;f.kƵ5[2v|kcڵ<:t~Y[f'KAQ֮^e0:o^\eV^(Ҭ[3/ ;Cd <U.PG p楎y]aZ#+u׳kNBBӡ};+xUshΣpco`og#={P^]ك]viʓ[t t܅ʕ+o>࣏>&33m[o>\p!F@jyzP'*n#&1o\yƏ/뫩GJJIԒ޲Çֿ pwï/W\ѪDVVQ}>>>ZIII<Ա_Mq%MyJJr  aɜеG4h`UbmwK?@x4cОGEcݘ3nt16kGRUR;'J|[DiյDL>۷߾eZRMJ&{y?xZhgsd1aRvm/Kfǐ!CI8uۢ2e*15uիZ-"prrSN\~E жm[zIvXh!׮]SN8::jڄ$&&%KpR2_!,Kqz}ʼ;kc2x-E;Iֽh짦m09X._I%iUqá?ԊՕԫr/:Z={֠lcs25>wY'۔PsL;fKMGv)]?c)Ԍ/SvZ_kKFi%s;ՌocE,CCCQre>"";W6ǎaA?TC\]]IHHP]pN<.4A5 |ׯ?m>Yu1t`?N&M4+^Κk>h)qfnW;7/v'<,<,G*/"?/իͻ:פCm\dccC.]¤IT\YS6 HNN&99)o٪-]JFFΟgRD<ӦNs1cF,#6ժUٙIIDe Æ 'b$$$C\\#53"III!%% 26'̝_EƌH.֏bO)kX8}4m۶353nt16̝˚e9i.X>e*_~|HKK~5QΌ IDATF :iSh1r$'ʞ=unbߙ8Un/q$?Xު> 2~o6,lyy(>]sҶmZ4oƊ+X_❙oЯ<=~+ބ8nxOd֭4mҘ۷3kֻ 7iiSqssm6Zq, ޞ~п_=zhY4mڌ0t~@4.sj4i2J4 ""M.'*jT t;nڷo'i׶ >wW"-Z̬wf>=Ý65 w;co}FEXMĉԯK. Nw#r36'̝_EtڕАt_$T41`m]С#c”^sƍ> ?cs.f|.-a|wZ;"u_~%4o}ڷo/?I]Wt[2lpƌy|V-[Ъe ~-ƍϸqq /WE`v``o28ځ=T*U \fLqn\'2r s!r!BߐݭpSFݿf#+Ղp)((`ݺϸtA.ݛDd BxM XD-O֫kNk\{6#OBjAXA,G eEٮT VnzE݋>7ueо$fKZt)dK(]$̙o[oJ}A/&TRSSkWmsϲmm)mQƾ7.KOBNrb+; ./sh++yw,:oG]o2ٹSSgϻϓ/ Aүm['EM?nEf;uHcL$eLJJ {=7~ə #F`<(zSTTv2>m6Ih,#Gp %gβo~ x橖q-P>裥=}w-A?.W̙M؀|qttՕGW_}WPPܚL0 Mk׮!u+|Чw/N8aVe|Bp 11aÆ__̍yxyy=ZK.ǖ,YLF3u_]^^șu7?2^sdZ/;w$4$:nņUTӥcWgFkxNNS^4Ҽ|x'ش;/^Y&Oߊ5E6%\{3rʸT~|:DFNI 4"2r:zc/fڶ%>>^#oƍk0=,9󳸯)~986濡Xg7o(05"--͢)c{צSF VʘW^!66`}sƿ."XNO0mӼ.[ݿyf"/79gk izɓjgn~m+W0|0FcqQe뼭%f f.N>͢ MYx1ed0&~yeh&FDx,?Cf.2Klf/\Dbvb[T4Q۶YCDDΥ@Sw޼Cзo_֭Lu1駩YESjk/ V\A] 1gR!Aʀ#P^\3x@ <7t!d lc:CdO5TQEٽ+F=JYb߻`5V*999JYRuUPʩS4JV-\rEx1 ښhL!(#G*#Gm[?qҶMuh׶gs7&~i٢brŋf6nӥ9w3fcm6Z6ř|xgoVEQ͛)e?nEu)NOOWf~Oֵ]Ki&8D)I9r(hBQ`~:EQeĈ/l6P-Sqa8Vs6~c#!!Aiղ(*[RE{9^UA3g ֳd\E~XKNNv*9ׁ}{eJ(:EQݚ*}a]O" Oևo- :4tzU;99ii㣵a#!n5ʕ+}+ҽ̞c/d___ bz999???X#~Y~=v$$;ڷZuR#8˘.}Xkۛњ1eqḃ7w.?gOɤG՝ۦdZjL:11$]Ćׯ1/_N)sT.]=xo%Kp(6.][Cbm`|\֞o>c((-??@v5aڽ9{aÇ3aJc\裴!BRXB ?7YLJCuNc5mlsq`,p4u9O-]S@fff?55Dsi}cR7gΜQmɴ_Zhgsd1axe/ca,̵8UG˦gϚi̇޽{c_2Κ؃ 2Ġݹkǖ1d[Ɔ 4kԮ3g6WR89:#?/΀0S~;05Moj,O2jh/~qc5e|O=gKUƘ1pu! )Sˍ$$$EZZVaÆ1U!..X>#6ժUٙIIDDLG}lՊ.%## 3I7fDBJJ ög6)wР6u ϝ#--3"՘LkpN 2=zaaT뱤EL֧_x˼yF`?=XD] N.m;nڷo'i׶ >>Fyެ1KkfɲO-m҇߫3☊ĉԯK. N2M`kk hT*mֳf[6W^cӦPG֧'4u&ML@` ={ҳG(0|#rUXRSS ԱU6姚c SؔƢˁiߡ:F&r4Ǝ^UԞ3K^z>c}㣏?6XZ"{m s|JPA* ݚ׎ x:魗p^w7y ^| ҿSL;^-Up[6| S-S4֌;πYp#n܆yp;Ƀ*\ȵlȭy7sw+(^Xl{$/ s!Ba PnZ<=[W1oA߃$Ղ ȥ& %AAAIA!ܽ/ T\$Ac\:"'JEx  pϨ`OA*2W3g6[Ŀ'85 0a<Zr֮]CpVxסO^8qBSsNBCBCpVlX^lAzR] bۻM7{5e.[ݿyf"/79gk izwʘL Y~q b͒- XGOAsfy_ԬYw?Mxԫ_5k2YlVS^=;nGєqe] .2K `jA2"99???eIII<Ա1xzzj>;99_~=ヹR&7={- X$Ղ e7gΜq%|||򫯩WE[hg֣( ۶me„;Q*AR B1hL:ΑƌaÆ1U!..eɓ'WȖi P~`YA(%Ϩ;n3nӷddd0idMp*U!9< 6mj}!IJJ"0,d ZJx=3Q^Jp:?5%۔ iAAArTWkhAA7>AANO半@ݙ_^PvCcTMQcT$_un݊ lÔ_#0&JW#אn,Zh{ yK,qP#:urrr}: p|[ߐ Ɠ_C>]֭C޽8qv͘ SØl"#ӤqM9]khc>'&&2lPk!5_5۵mK||fƍkVKV< ٠vӥ/NtKi <_~fpͱ_|A[l1>xW^OOOFðÙDgqQf FBtTTIe:uJ6mдiS[[5kFppp[}E2nx;47ؔs.10|y&IKKӪM5"--ΜR.tE1A♳bpٹmQDmf\c6ٳ_JkzeAӧYp* t2v͛6s0y̙="=:@©ѓɓ'e)7צ >d|<ۢM,\@>0K}>|#F豿8|(^^^zwIPDhh{ 99iS?wk&csݘ.K+Rs8<Gڵ쿓䥤pqyR$11;xgK爉':zjFraG]Q15ez .]B~~>-]´zo5qM,YL&MTP]=XzTsn7oB߾}Y3}ƀf͚ujO{MVp[+@z p CC7С>ÓA0 =a~_X״KSEQe[(eJvvn֬Z(jqwsYM-++/W.^h]6mx~\\AUpznZO8mƤLcu제:uJnRo_S\P|jV)͕&816c+-73*Ә^S'e(ʢE FuEQ#+QKYijcsҔ.]ٖ7cveiʲO>QEQxqcQEQ,XL>MnjmEPJTjTZt9w(0@?++Ki?wNzK5:F2f(z[}ŷM+ϟWU^:fNlc1kd+9$!!Aiղ(*[RLU)rrrW̹ۣ(W,WbG)4D z@x>xChAա sQ\ycajWE9JunzvIHHw:ogt56%%___;_-hyq 4 %%٤Lc$%%Pk5iĥK4OOOg'''̶ј S+XXb6>|o~ |r:ҥKWboaҥ|KV/xalN.s)ˠAظq#999FvHyl Hnkk ]ן˗SpuuۗR%˾׬Y񮃇>u~:k֬[ؾ-:u*7ndʔFZ^NkŷA*/m66)vk1v ;>*k&=!@$tD$(~-⺢ **P *ػRl_Qw].ETJ iH)3?&R&&|<.S|99s/{ _?ߛϟ)SR'ɷ/3z7bϞt>sw&$b{oCy?=ڮW}nWv9HIIoJ ˗/#,,9. 4 vر#?c~{ppw]U~VzeK//!5usByIYRoL&;t+7sF*?vXo;|sg{mc>C&M̫]Sz]9%~%==o8={8Ǒ5z榑EVVsU1)_i~s^>}xib 8|SUXUƍ'uTӱX,ܹ'5>FIڜdffIڜٌ52&22!Ջ76yrqG_Ϭca>JmOO瀻b$ IDATsӏkve̘1,\K.K.O?Р_?>k2dN8eˈs{y\'z]{__+tc>ƒTi$%%3hK \_c,3p AܑSOO? 6[.qm$WuN8+p19ɓ'1r('3ڭÇ etуԊ?qw |ǟm~YCtLNbĈkKjT7:Gr]ugy R)BOO瀻s*ۮ~4'OKpcX*$uK.YMn~)/6zj:w\nܸqǝE޽xp|L)S buV,_Vm2>n8V,_r8CN i$o˛ovG~ؠ_SşMOqy2idJ/j\}ӹKg.8{tl[p !Vp ,Pdb+XZ V3AqqzNo^goQC 45k?lD!""""T i|Tܒ!fmʶm_""" HIuSC-""ҀTHB3RPuO?1|pb < /_ٝ*Ow֕?x#w߻w/nn]Ю] }Ta}wqVx"ڶiŋ\.?]_eʗUSeSV<OHfff>w1n˖Uٲ^cTeꂧ)rp_p>HlO.{_|ZƗmصkc@rR:0f ܹ2\k_yVu'yyy^W]j<ϟqWK8yӦi˞ ,JE'NvWuֹAW_ӫw/u'{ص\\MrAIVYvvVX…ױUi˫-6T~Megqӧ$$$p&O1͝/-v^j/6w/Þ#x>U n#//UG|׌5g~ڧe|s݈kݩq^Wxۦj-K h &{۴q#k?6l83fC+Ke]mۿj|`Ԩьs_I߻/+o󧟲qӧls ?Oq>sdddYa#֯C[d9y$[na0ƏmM?/ ,XBY[n)c긦SOUy駸}$7o^e{{Y Ya#;]Q} [|A^^{UծoƢE/ҳgO>l3#GV,_ qos ڢE ~c]GNnn./<<}\eEl6^ZsҪ]](㪍ׅ K 5u|5EEE~/͛?OSo6orm:/oR1VV;=5O޶nb0 Q@ #!!:4q#zI0 \Ƥ m8U\]lO5v|k._JJ{g ܹ0 Xc„ 0^xޭ֛oa6?׹\/??u9;|pe\M9Ye fo5 0222^c/o*}J7xM6 0~oTYU\˩g<8taѶMkc,20w,ޭqAƂ'SΝ]v,ݱ&2'M2uqIՖg޵ Ou; O=??xG%)}x8~OmZǻlF6-|wś*2YYY &x]71z:~ޞs\mmOuuW^Oxۦi˞Ι@bXW,6櫭b1Vy:0{w1]$C8:@HHh- h^ykY[-{Zn|Q#G~4/x]v6m*>d;'ʬPnN-kAl߶ o,ZwV۷3p {F^7]:*NɩPVbbb+M9YeRSOaxǹ{*ƛ}^ 7cO\.͘ܣmv;vtY4&&,q*r+Wرc$oG|8۷رc\eM>Q>{0nx̞u=5k.oچ6^Ymt,hf͚ͧ7s_xc~eI>-6ĸ7㪎+P.X{-ծ߶mB}~yeaaaLvNn41L$'wdWo N<ɠAYve)..wWUi/~Uqbhh(/iΡ@]@\\+^~+IrRoچ?+5뱨dG,|Qp/dРU4h:+m_p:ڵ{K.%.y<ر#?c{%.7nw6UVWM۲4<%$66t7n<ӦbaΝL8"t77,77׏qFPܴ9n:lFYaÜ"::H~>ri~moMqu\M&RYxSZ#G$ml233$mlFoN%+;F?P,/11^^}KIqq1;v`ܸ[}*sդCDc͚5.޽;:ٳ:Xxs[Sjm&_Ey^s ]ѣGZ>t?L /i_̼>/[%K%77Kb f̜Yz~e[y|ۄ L6[p N8-_0mTƏPSqZmr^#rSWtL8+[oK$&Oȑ0J8hC\ʠHNԩLOqNJRR2`Kt :Gr]{y 2Թ /Ȃcr#F\%_ִkPP:u1cܮ?} vaC>l({ 5uujk|X| :uĚW_2h:vLf1:ߒ˗UܸqX|yhg9ZGpa Ytie5emcn̘95kVsE19뮻 ,Y2ҥ k֬aӧ8_ Ka㦍^Ν;]WV6JMʫ.xs7;<@޽ӻΟϔ)w3esus{*}56m[u]Z@ !6 3Bx0D@` H7?}[/;;ZYz^ny,!!!~&UsՒt#G/A"""ujoѵkCBBӷo:t&88/0M/vUG No%p 'KEv(5`5CI'{dpϼ"v~G3bD)ODDDꏒjz֦u<Ё+VzKy lJ'Qsڇ"""gu4R*_mMMv7},RTOԶz?"CIY`/8?$kΌ/|WU}Xw5gEmӚŋ5t( ձuw'^ 9iLTh„cջ_}5F晧n +Y^_:vCR'N>EDA'Ս:Ҵ|u+>:u"44V\;b~sγ[5ڶ Ӳe &LHll 7l03fЭkzՃE^{tz:񭼊Û}r R]UVe޽_ݵ%W[>##qn[.ṱ%XE^ֵ uŤ͡Y=yVTuc\_?- 7*]yꎵsL$4|0jsɀN㛯2,]ʖ-_vZm{Ǫwƍ#cذ̘qnzE/W_~ɚk233}]w1id?GnѶX &0nm,_g}#?Ͽ`Op[orUV}51cn+{qW0coǵ-RǏ&~,\Pa͟~Mٷo/yck_nv˗E~~c 2ڷK0R5?qq2]ػwunnq^^ϯU\rrr S}/عs<)޽5^{U8`t(**2 0ݺt.ҷ|{ *.8|Oqx+샚WO;x|~~s*{n]vRR#o ܹ2}ݷk[엒Rp9&+bby97_m5,W͛6auY5pxf=`L: ;z41!A| yjpiZÖ~uE|ͬY5k6ag^Zɓ&ΪU9r._a7z4[[v>s^[uIN\~w[<<ԓĴlɣ>ưm+Wرc$oW>@vv:tpKNNRNbbOMmڴq>j~\ݭ_{~A~~w*,S~uؑLUaN:UYp}OŬ*uԤq"{j{|){դ !)>ǚ5k9j$%;;l͛1>ިi%W"::H~>riU֛77,77׏ΑF6g6dff6g6#Gz}ScQܴ9>p94CG3fdט1c:iӖ.Β%KL8̭СCt҅ٳx={Ǐ{}Y_kNkgZWJne,G[,Y_eXYf7n8yiƌ33{6\Bpp0&L?wcmgoԴL_ے_xE͛˄ӦMk  4C.ԩ%zӧ3|P1֪9xLܴ4 @pp0wM͛.ኻsLD|Wӿ\iRC!""P'Ս^""""Ҵ~R-""""TԐj \PDDDDꎩ$T8%"""""5ZDDDDTH@3KTԐj :{EDDD.5|0jZDDDDtRBNv """ ;;АA7t m6\Z4t8""""'iӦMCҠtRAqq1YKC#""" *2A5 ,,CDDDD&=ZDDDD6(!%"""""5ZDDDD? 3999nӶvi@ff& ?SFpK3f(l/9 HӺM[`'}㫉lE:x5|^H. :q'337`JON+'oT+""v%>\ˉ H<6KlODDDCSg{ zIDATؤl6<:ɴoEaaQC$"""DDӬY3ءp'H#""0""""gɄdj0Ti*SDDDDƙ/""""ROTԐjjcEDDDjjnR{-?EEE?apxbLa:%"""">(#kW\),,Ч-%(6ÿ`2ھ]m Nv̽eW G7a:%"""">79p˖ʲe/7z9e_䓿h 'wߡk-aj%""""~J\"38|p?Et*~?N\E^ɺO޻i6(N1_2e qqq1)_󃂂Q򈏏gywN6mwLfg}3ɰ{?ws؏VB+ %%ww3I| =yQ'6;JB۶믹 <ěooAf=..|-5^oa:/Ii wSa7ēO׿@6yGi۶˲=14n!&b.MV@VwI811SQ!)y~1n˾.cѢ/?K//q9cȐ,~errr套^b >ʁX, wUW̳q!ٗhG9S-"""M D^P@4ߚR4=ãa,aaY 0dԨ2}L7Voז-λ0x@n39CCyxΦ}b"[=Սj?^1M iuadכi͉ٳ z1 {wBދ騨AAAzXnels?σcd<684g2暫暫\3%"""">nIXN+11W ۼo$/,F9>g6ad"xߪ6^q*7 7lpꄒjѲo>} |={reKјON&;1ոJ˘h'Se>5tHuBIꜞ)z?f )xZ֗14RxL`cZDDDf#s["w//HY *-FI!!6y=)xC[EB-|fgV!sH :'ӡ=vC X 2[|R.""""ld6c iP$îZDDD)3l*F.|R/""""k `'K  1|3A%"""">n *ւưEDDD4~Rvԍ6|0ji_9^axIucf"""""ucՄF6t7tv[BϿСH=f ƃK 0qzL&0b -y"o:Bb 2x@v]rhSi>I_׻a8F?Fc{6{Q=&"""" ,l +.""<ӱ=e%r_ֹaM&`CId 3/ycmfS?/",2 aO_!k^PX! N|C+t/s3CHXc0AX( 4Aha-!* XJT!/ 'N`@ Kjk1zJp$eeSDm7jlKuM{ KnvPJk `@H{AH-+""""VZ lPPVG]b͑GMəgR)uSMpʙYmZlf9v+W``ˆ)j& -G2}'mP@ihki'+ JMsB^ZER]tov3-`qlp1$jv 2ɴ o 3A""""JG2XKzEGXlq$6caqnp6U[]um'Օjf#Km&08.Rx^f;`JH ZDDDɰ9z-%vءV:~ %ť@̎V.W!c%5MK]9{!OVۂkVȞ:J, A&%""""M詶#JAlPh/T[]K]X:*|:.{,Wlu6{^6TrI5'vc 1DDDDmTpJc! FcHPf[zRDDDDWYo4Y6V 6(1.)r$v3+|M2c]wT,MPzv(P0JQ1(`VR-"""%ÇC<16겄f*MLC=u6TWwW6[8z CPxAK 0>r""""8%ec+əKQ%A`;~:Q1WcER]T>X%ѥɵ0KM(i&ҋ^Qb儺,.T\R]p\~j.M_!"""tyK Se(VʗԫuR],9.X;7/Mr= 0E^FO HSXL^|NNW7YM+ZZNO'fj""""tHh.MWM+4:Kb]yh Gm2Mu1Fi"]9iv5n^jkW?`XhZDDD8^5v5yswרuX[W~_ HSݵ.o>QX=.pԇR*Gȯ as9]gt;[ts" @ISSCP(fd_ÑٽǗ kպUFf._O\(_QI"mVV&Whn'}T!QJM9HׁsrU4K؀G\r$HϺ _&ڮ9UiY Ԃ|D\0/EN*مSA'JA'Dna}Vy *("R>CY,BoT+R-f(=,px9:)ih *ILJ~R؉(p2@o`u&@8>7%'edf^s[!|(`1"!EcH$xPQpGRqlBP8E$hT0S ׉^.(.x >`c:)L)5P9&s f ;2](\leh:H2 T 8)ڱ렫jHN>M9v‰G&\hu&xZ\b욲lK|e/ ط%%%jRҲsϭňe!euBFZ Z܀<6 }%U>*Q6T݌Rylj!8wO|>ސ*{UdƮjWqvbsEs-a@+z2b:TNj9hkM,'ㆊY\j%c*Řab0dRjrNx c/ݳ%䑐iiiLJ8|IIPs%!Iȁ>/ ߿ҪUsv޽j_.L޻woYYYzXE XZqe|>w[20!iժedf6kּUVՏF/a(PZ86(e`2D-PKæ(Rl;KqYtq'b)|v(^(e,eg{;Bv= <ɝlxlöpi(u8罦&b9{@}!ۃöC82l.fQgXhĵ5F!5(+@n%' }e)ASG2A.FYE '"$cGl옟[έFy!=%ɷn]^X,F2/INN>zRn]n=&%W>89scr _(jt[:)ӲUzuEQ-[ݻ %%|RZ  C'~ڮaj$]1)9y=k׮/SWt_~5 tp˖-߯c^pQf]dbp,[EGb$Jjڵ'䂵\+e;eaN"o//}M۷7b1aM4>vqhDl8Zbb0n{Y7D|ۅ8Hco)`Em-JҾ9/{:qn]sU is&" ϼvZe1 MEx3 9pLa2oi Π VS3H @`Wze^ ӊ!vw:ʗn R /LEgæcXˬ"$7&|(+޽{o>-޽{wޭ_m˖X,ָI{׮;wlCv. <פIkΝ;GXI>j )tB~C8R'޵SL( n]onIw7iܘV$qG`X:RJg^r뭷v⊴4J'Lݼv9_ ٳgOAoJ @RRRa5oq^fclSM6ei n6cƌi>޹sgyy-[1cޝbDHz`~*V"0/L q4ړKKBN8sfcAs۶my鉓'7jԨasׯW@'OIށj$o I;ﷅ4oЩVHUC\¢7oޢY{u]~`\{ߗ_.]6ui7bC7?_}&͚53l9mW\T|С=68⿈:vyӆ ̳m=[-[M}<-77M8UE";w92O"wqÇYɓ'\'O|谗N:U#Ï<"oV /[6)>r;aڵk׮Uvj8p[|qVpȑO>tҥ3f~˅ 2xɒ7MOO ZgШ.WM@Nө$Ρ#> |Ij+ofibfډ&e\+[^+qC%[ Iߞn.7o&ju+ׁigNE._GIII,?_j~믿ǎɩ:vڼiCqQACLWTXd&X ߟ۠tbI(AC+$!>E^ye'xv4h0 A<|M[2{'G5̘1j֨abrsTb7|i"h߬YxѨQ Ţ-[ذIX@,IR%%deebQ  Ҫ̾@Jj$vrE 2QF\Dm}QB[XܵZΆͷ<|C=t뭷թStC9r;oc;={ 4pFYD[~zQǏoÇsݳgπXv훣˯pe˖~SSS;IvP5E_ʉr0" 81 \m厠(&TYɖPDPOʡ3|]8:H%ԡ6֊%km`L;'JO}XX^ )*0>P; *v6QUGHQQaJJJVvV̰n}^pYf ^,OY1#vo'ûc;Ͽvڄ'y _ !I>&yw򔏺^uqiiո@"$e4qQY2bзo_Jorʼ{;U[ne޼$J(]:iRvZgFuJ23cG9mudQH$==×dP 9R('L2X,+^֤IBHӦM ڻM+1ѣG/ZCy>~OHg^70vرcb5k/ʅ^~W.()))7~C&Y31c֬f˖-٬Y3BH-4믓]iL?Yf@H͇u]|9f{/B- qNDV5?k=VjU$-L=,n{vT%\9HK~tG\b=o m?ꈊc4Her#L,,&he9GquD,} J(&nMf!mEPD ڷ{`=SOlx!%=8Һrq=;3bO;xcTzF#223y'M):L|>_ J 3XӧOQɓ?zoV. <ԃkRVT9fϮUoاOk&FN̈ٚ8D(WUVZ Ǎ7~O=}M8wޡ}ђB~裏7_yŏܒUF9k~.HO !h4+3aFvخM;^}駃u띓ݬ:nAiܸ={KZZrr{]Bh$_ߪe+>[ߒWL1c[{v[5wMhk qv}ڴ7oDݳsΙ1pe} >lxF3`nb(@ oڲe+U׮]? 6\.tڕ Z/ ]# ֲ]e⚈#/m?Q'L\k-; 3zKMЀhu1RIJJ$j_IH[+Ĭ""SX$BF9q;\\#_~mLr$~/}HJHwl{yy?>vX|##%!>گG+;<bRBHDѤFN!>=K~:x v_3:LY[?]v?iqO=-وr]cƌjժH8V=)/oO _WΪN$RovmJjz?^:㩹 2M6mk322C8;knݺ޽odff{cy>*ӛ5mVP˟̊MRēOur$[%#^ac%S `|ovڵӟ)x'/^n%+617M4-(ݻ7+/ c[oZ|ɓ'/ҧz=Q kKKK{{{'NĹ+Vlz/2[{P  9`V梿bc +tA/E~RO[&CLB֩yW%;0JUD7bXbɴ ѝQ[g)zR@. cMB|>}g*+o26Gܧ@BQFf~5==''%Md0Xnh %[вP(XިQCU&AH$WA|,/CB.MOTE Vlg:>Rejd+[첲k0e"a Ҧ]=vM1;v<}Ѳ5e΢itOdTO{6mYUN qӆ_/i٪MÆ SfV(-}jiiA-!m4hº d!r1;zu06nܰ%ZiаaJJ BGm6)68BM [Eaf %L5g[kjcf޽>aS~YYbY;vԩ2KY===%8zevш@M:w E׃%bƍuY; #\(AhHFk k}dW@Xc]['U2 4+.H <`fy J$7I [%NӶ xpB&ӝaifYUWh߾`ZZJNNSvڵrBP8NIIIIIh4\#`GJ9q&f&FVd f(-C\jazZ:e# IEE5TmA眄ðj ;W`ÀlR\ 'Hb[>c1h6̌@o!jiB| :c JLn ӟt"Z9S\ZHtϼ"$_ -a"Wrĉk-~Vk9 `-(%%0Dk-Pab!"/5f`^Sj( q* !p8RRRRR232322 !H$X^uO)  C!IH$ EYI( )@JjjR^Vޗ`;'|lҝAk'@$-++ ǾHUH`0}JX*y>FJ+P%3cUHïӞRkK͹&a h 2~=k/`?Rf׊Q#&oU#ShkB%{)U>\[Qj㨰0w]V|8ݕ) LE#ފoJjX M'B1TQ ca:/ 84TtBw0@nH7yid:85EJV4@ڌ 0RXXiQKQOGF,w( Y@$K-> A2, w( ! 2ץn!A`+AXwa|WQRX0˖BGX9Jdc]3 0_R4nه2)&X/|rꄈ+q*&&j%\Uj/[-n K7ۚRPJѮeA嶣#3|cVx<ݒ`Ngj“U.6Nxk]n3/+' f& [ x egf ֋{)jg1P >Jߟxvkcw/#(O抖ܶ|>|#>J)Si8R(Ԗr0@ 3l_~E)GbQ[O Wyi8թb}'BknpVC+]! C$́/|,sʖUiHt :'ҋGner:0r[3ԡR_H$,r&9$VbaTh`oTG щQO ag͏xϨ]"WP8 z./H #8 k[I#YJrb4 ѺA=4z81Exꈏ8B*ĕW]ʺDZJ9H}YrXα:asoW :;bwXDGkutTٕ"P&T$1;NLu0UNm^2X +8Y}qC~%f0iBEroT'/w/V" K5\l'Jԅ\H)C]x= @ !D9L"YG2fI(zޞ ?7kAbfG(NG)`S n )}ph8Lg29>O+̚k '-~GǞ)\xR*7E%8T|d\+* 8bHѲQ˭ B?f(͗P@*JX)c"T_*!|==t өӢk:jI6,q+٨u<| qVh@TqQU3$0׉ 6諸 >K_\ pZWӂx ͨ ;/-;d3=.p(#Mڪ8v/U2L We@q»0\|TXKpՌ>g>ۦpܣIn 5J3 n3Ngj HВ+T{ Z+DW.P2]8-欀lnJ)ڈ dK/MNwQ w%m.P$yki{)cV*b{E B:3[+JڡBF Qo:XJ-TLf+"!Ms52jj>c$-:FLNŘ%g:cf3ײ8{@ hPuUQG:nX񗛝v@S2q׫Ֆ=WD2.vqZ::V\M24wFltb˄@Nո e;ԑe5mGS `9Th_>OTlWv a]746l( V[NX .[exԗUUiz.V]lXJԲC@Vu*1ꐕӯb%RkՏ8>KQ r]. B+4D7h#M;no_+`@K wT !]"=JC^;jUIо*JIpFɷ:ҐAT STnlj585i \NMRC0!x*@Whqv՞9}%^L7(X >S+-CEiȄ|>ǶpDt!} 7I(mQ*b'MWg9h/@y\`҇䍳4*%N'n'dR*Ԕqci]@l49lm c;==yOv@?.$WP`q53s-)X{=(Is }=-.֩J,sqD{N͏ aɥ"NmDž=jSm [ }>"9SJ)FHuo5 TKK!I|q角sk]X %%S[7+ꭶVZ|vR HJJ ˳Jbh(]NVVuNry.<:[ժUj#h0QFff$~T SGIIIIN \JmZb⢖ZG“L󒉠 ft>/[q/p0C")oqYaJ&jARN!"֪Gi pܤjii w!;;;)0w6hybbH̟ZFmj:MFI3I0u[[UT5Bq ި|ǪjiiM6-ߖCTX...sNh4ZTTTg*bp˄Hp U"6!F!6K]sR(;N$HN|#WOu(ۖԤBqU%%5j,It ӭLP0 ?NޗvN[TUq6@OM6j.AW3: x-wvv6lL0&"ظ+Kajk%B#UT[VG6xyc&Xi,)J))2kbɪWo⡩0+YhSU[pT=)Dv։@uX 6Uz uLPY%u*qF]x@.!Y:ZjR^hC1 Y_paxs#&¿Bl,e!@@)T퐦$S뮔8euYZcK#a0ak) ]%KNZk$Wc W)"◎\*ISIi M>.5 uD@ *GCVRts'k$_bb+@n4gԩ6X < T=ړ^Ĺ~UE䎦X1d%? S0V)zT%XTIXuU _9ov!U:wZAmCtl3^]kN8i`C5 Zͱ j1gUkJH=Yg(Epaу8WNOč)Q~ǵp(֊(hʙYk|"I R,_~w{V?%. OTX( IDATWNYlٌP >*MuwLB}ĺsڼjNPw2:jn[Zfu)AC=u9 lj XĀM}%$9e;v ztn:ء+ <ӳ-\02HN@FFp`$@FjrUH`Y[!ڒw(uB)fnӶU=}4b+JÆp”[o+s̞1cf~`0Xn={>#NڴnV׿…a\r%/bnn. +VL8q5pUVO=t.]X[~/nݦ-dSnΜ3 SgϞt_XMVY+`QT᪞=y֭Zr \m@ٳ& >[<֬Y[z뭅 ᔔ .֭;Co+_~_@) Npywƍp }}+)߮X1q6R[~/OpyF4jc03nu`ɻVhT0И>Qδ믓wÚk[[@*>K]qժU~KYYE|xĉÆ_ׁoB i~tÍ 6F;w.P8V~rŲ+򫯾ǀ/@)s͕Z5otף{Kºu~gYY*}4M6jlݖ͝m\Ś0lf2I zx:h|򔩝:vPu]NO'jyW~~<`|6洩3!S~~A8W^%Uuypy?eT6RVA" QzOQ?''j֬`IsNp$q6J[#D> fZ['x*h~V)S۴nmֶnݻu_@F9n{[l% ۡi#~ Dsy~92kO53V>s̹6x+Wmذq/xǎv6NqnnC{=VuWϘ1c/umH$lbu֭۶nݶe6T*dgΘ1wo~{eު 7ٺ`[E08r ֮[oZ٧f,g_`Æ۶3fvxw̘y۶峏3&3f̴F6(]x1cUo8i={4oVL)ͷZ޶-~W1bĚ5k׬Ykeff\r Yz̙6l\^D"Ǐ'V@Jw}kLuJ0|%(nK[jPsj)_ ^YE_ 0nѣG|}7uVɧ3g2SISU y Ҩѹ}vg̘#FѣGFFoӦ͈G_.t9hР ڵ \pA%#ۺu_nAukB[Ȳ[6mێ1Rm!]ta5 lV( 4K@%#FtĚ9xM r WVZ|ٲ |qㆶm۾1Mu3Ĝ Ν  ^iիU~7 4Ι 07Zn֭;)Ι__P!U&L/t\S}XK@S.&(GB'|uW)QA4>&2x Ʃ))vVu$2C4i@ii)+IJvTEJȻZ8]ԨQ۷ݪ69xc; M9sw cז$J;uqe;v׆5͡ %y.zүa[5zQlɟPO'޵ u({]? ,cX Ι=G)p2mN NaᎣ/AD;-:1;5w\qj?28œjyHs-X4gɩ-)+3TҔGUB!t:8ݝK~x-5%E~Q<3@jj*U 7u)f/_+VZ`{8` >?ا:F| +;ݱSM%Tq(|  jU=ʩVS"'( JMxUN0LSU8ĺ=P-6o]v٢ExqVnRΝ;/\{aTtc)R曷n:yҤ_C~pnI(,_leWm瞥_/]f_ ҩS>}2>R?ʺu&к{6Q QE'Z^N!\ oF̰_%"FyՕ+2I4A T%Nq3@ESG"%5ɻ[yqe+~zGTTT_~nnVVէ~0lުU+كX<ȣ?py榥i]~TVVzG(55^zgZ>eddԫWU.=JGUJpj{IRzz(---#3Sϧy/Gm۴iۦ͙֢ 7cG<#ҞW]5}ukD}V5߮XQzC._u'M|e7oaTzA2H$Jɓ2y+$b=ȣ3C5k˗O0a mڴ73? z=222~֭_{},Z%ڵ߱k׮͝7o< 9bdV~93p Xn-3{ 4Ϸܒ/7F!ZK92oȊ+Xp~;{߬ٳ:F={f̘ѧ_[xq-n{[^_|KN-;ؿ!X 7ÇO #Ȇ ~IVVrG/y}:uSqG &X, @VVVZhd$IMMMJJr&//oܸq6m*++SNǎo'ai#^yRɹkE_}]wݹl_9`(٩S/.X8d<пX,>~sݒ8M7:-bhYYyÆ @8 ُ Ғ{_W|uYf͚5 GQo^~eLSѤjiݣA?ZUZRr9u~91ſ~>޸~'|>_Æ ;tpM7dBȲ~+|K. I'͙3gIIIm۶۷/}Ҽ"l۶ ##[o;ex[h4ZRRҬyh4RRRbX8JIIiܤΝ;2ӝR[oiFnݞ}F̛2*6A:vtޭJnT4!%vرSǎoۥK.]:kF!BN?f4߽w}:uj9R*.֭] tG3\%x*X06:7B!-O(JI% r߿/++޳g_W_s\y1ʕ+/rat|g93g|"q!Uh4:uTi FڵcOQqn&o܇с_~>99U=_ g^{ lذT F W$0a{nhܸ_ק~IYgx @`ѢE zBٳg{/_@{i]<:[!6 !))V3' 3(P(TZ5v::uߞ"/Y5j[|'YYY^xז-fҤIHv ΰzիWUbiYTk A\Q'OoÇҿRH`h*j`8~衇׬YK -[>f&~ ,6m?y _R.o֬ٙUƣbJiYYY͚BdPfZeee{=Fյk^s;onD%;~2eʺu>7n|2yYo\nݺuӦMo\_|ݺui6of$E%(MxCP!>|aFLɓ'o߾}7nݺuLS1Pkĉ׬Yꫯ+yyy&Mt)S/ܩSCV_:J5 4+++KDKJJVu떚w_ wq$k_pƵz޸:Xo\^6ϷzeڅoU ëPJq A",Yվ qiA;w*7p`A^{mZZZZZZ^1`̛&-^wa"yty׏?NU%3DѪ;E?{5F*1-_M4KKDhQT:Q#mct[XE8geg9SΝ{J6'2GdjILV ^zKR秤;w֭]zd~=kι {] i2M̈́YզwA4&0$1^S0?/4@^~HOa~͌Pru>-L~E(1aV]pM䔗W;jAQ2=-';'շ Q'-igٳgP$lYp J^w  2gE+/  0}^ر˓ "++kᢅR#P(? 4^6K[k#GMd<#܄YզwA4&0$+U36pk77|pX/\JR= 1Lo<3>PSlO^&)٫ IDATJtbfs eRȹf222222j d0̩1mvcǎU:u*:c7n\LպL7fUфLr̙"uAA%%iE|o޺ukĉWSSS){9aDr~!TuO$ؤ ®u:c٥e%inn"[_-ZdanNY7ouiO}`0z3,-/L˧LC7u1pZn#kNNxw9cv T*߿߯__Dk'ŅEnnT(!V)/trvvqq11mt5nvٷOmnbSID͙sg_AɵmmƮ ǕU<({ uvqqpp4pT.kg"`X,Pɓ[JdB{{V66666wl$ Z F !D4JgvAB.gmm-Je2$ <>x52-}C5odD"Pn` oꅛmPQr : A nz-j}j򜱧_jDffxsssgE,BҥkuY IZ ,bB [ai bBHl9  bBFW!H$[l.ץs& P׬/ ݸ*W(:u8{>{s_K~b7J|kG({!Ua> ;'CG?LLHp8rVUUU\ޟ?>vfa2o}{EoXuLK5sFX>///4_Օ(S͗tY=zVTTܜJL$$Iҧ[7|K_|wݸc%,Qs!oY`(H23uJMIq)dhBܽ{w_RYYt=СC&O<@oifJBuNh*JsP/$IVTT) LVgY# ,,,_?2!Cj$;}cܹS-kgD"xQekBz칂|puu>b؄ Y,zZSg>3D"ٺekddÇx<^ΝOo-pJ׭[d2Ej$lBb"".7.(C>}*//$.]L<) PX:ݑޅiAMį;毑*M\d2rb]DuT$2 d2YJKJ:PoΞ=R\\{_W U 3OOIIQ٘mv3//[,Eb811111jڛ$Uqqn}j3Ϟ=O>|H=~ؿO27_ݷޅR*s̉W'HNNNNNֶut/fwHjh}!HLYOQD"iVV-d-V"_ 8p-:sRT'8~ٳg~޼9.>>%5ݺw{ޮ;AZz:3氰ss5fffIIIaajǐ45 ndoONIٷp yjoR~5?:oU?~%R5MC''}'5deggع39%VB߿/>>^(._"䔔oսt:"P1eKdUUBW‚R9wv񊊊.?oƍ$ D"n:t1ӗK.:4D a,g5|Io/ MOOڠ_kڛ 99vfH(?))oDE]%Ktܙfwuɒ%Lt鷽4ֻPN%K{l6g?7|jDRC3cʊbd2AŨ$E!ɴVѳgϞ={T7Rswv ׯq5qckOXZZjx00[Vgx>7K曯cb\ݺuƍ=;tЛsMaP(La=9mbRz,EͯW EO 200×F$54>j<I*Y 2vڵk׮O>Ç FJ2i|#.]JHHHNNxhŊ/]CM" 48УZ&Px__BՈFgBĔE,AL&m[+zN dH(o.33h1:(-3 ~mWݐ`H</(((((Kg^ZMϯםۙtN]Ч RRR>RStOR' 枝}'**jX]=g^^S` Ou F>PPPrgqʻ_.)̬ \]]s>u䃲2B! Ï4q"yIIIj':lĨS? mUned(U~б wF~˟=Sii/mytjkֆe\ϛi@GC3&)<(+).wpPh66S\\X-|֭[nݪ1`̜5{Xt<9y4kZZZ4O…Ə-|\\\\\Amm9z[7M={H=I``@II]\vmeki=C^H$y&D6u޾b%%7oD `gNTXPRv:a5_>r$=-ӧL&ɩ_Qy૯='ׁl߾=l_ٳ pqu>l؄ iPڵItvC >c9M`iiן]ӵk9ΠAKuq^(e˖}:} ?dz{{O4Qpk}!Hw><$ JWY,uH `02iuNΝGgggg(@M ظZdy@9}8hs߷n1} »9m[ٵղ=~es\\P&@yxV^[%0 a:$)<=<,MM_2 sss% <~\^Q0=CR1LPhoƦU+kk@:65wstrSdBwl̴97JgvABgme%Jer9R1L.|>p +{kD"Deeވ"F?* Սu7GTn\\U6333{{R/X 7Bo"333~}ey#܋5e7!t0m+V6 ILXPKyhbzsݬIO^w&E!&DT۷o1}kԩQ(B_~8zt޽zѻl"ZtI>l޼YrN8g~kI׮]ӌFݲYH$ 6 6_~N1U>y`ƮG4K$vm;uP(֭‚I'8k`99rQڵuwprŊ X\/~Wŋϫ/[M[w _f+BMR;wN|BzHrJrrJr4\>cƌ(ɎݶufvK.| TWWןƎc34sNKK5{VhhWN:&6e+G\H+ڪېhkG?~Xx3Ï;VQQ1{]?}t}aaO?L@Q3Ïۯ.E=wL&} 23oE^tQ6=oܓ'NУ Ettttt4VV׀Wb BpQI{}+(O k֬133KJJ ?>uZ⵱cϋuav3_>x@rR T*ޭ;Nm&..>9)y_ؾALf&M G{_0~„R77 #JJΝu[3..{C+-{p)r޽ܹM}xKK?v/(/(۷o 5?/)-p1bĈ&YXPSqiXd{giif}||6mΞ;K,:d@ !CC/^ gϞۥK]x1*?900 _*D۷^X[T*1GJg}ԻOon>Ovj%Kcbnݶuʔ);+M4 =Bݳ{WwrߎYYY`.ڥ3w!C4:47XZZFD\\Q#G+VXPR6iƍw/,q17O8ήhرcNpbqxQPk\noŧ Nϸ74l̙yyy 7.f XPSQ/!11\UOenɓqq7o܌:ax<^P`/ܿQՋMaÆ\v#UUU :@ƃc /-ZǎjL?@RDT3x>?D\ S-l񢈥(UzFV:qDyyBHOO0,$qUŋRT*^paժU0lX[X@rr$/^9\.))) Y RT"Џ>1Lv1ix:t5_-ZP(RRR.\`ʔ0nC(JLv޽н{ \'$D"E }4:**J"TUUя>X,e_A5cǎvڲj0~B՘_.zv?={^4kʹE^80!i -/ 0rãg^RΙ;7p8|>͛(}ӣ\mffT/ zѢ` [Բo 4㙙5jjeKCvlaibNbr]kX: 'r7^ kkSN:T XYYM8q5Ҭ^&F۳lױc)S\\.hx˖yy{s\lGr8ĉ#GZY[X,y5.3g6t(rT* 0J,4Bp 66f4< O}ֱcJƠP(--j}8F.\زu >B5 :*&jQj<$+;;хPseࡍ'FEe!I!;9V#PSf5BJT֫aBM˩kW$ >gXj\nUXTƸB4J% 92iaBMͦ/^w ͟!omcd^;T*lixC!El3T*e2y֭---( ѣ\(, IDAT.$w7nk!Z,bJUY)RTIB]ogkC4mmeծ}zg^>O.iJC)"lӦJJ$z+J@к?&JçO'Is.'M PWYP(Ο;_PnÆ?A}v$ǎ?*++L& ?vͭaŭYK\wߝ;oӻV"lۺ-22ߥK8P,b' 2֨|ӿ⋸8u[|(j%ΝU)..ڳgwll̞{BR7wnBB:AJJrJJZh\>s윜ظ-[j>ƥA#:m:ͱcR4((H[-6v+W@uu_n̘1֞e\+V,^kװ!֝+64N@w츞D>~ܹ~9&66)9yݺwwޮ; BpٲeW'%޳'((4nܼI`߾})k~Zzj33}tD'SWJ`׹,:b3<Ǐ>,,lԨQo>X% }{kkkJf.]dŋcbbbbbm~ztL2E!'e2,=zץ_RuʵFKQ/qCt>>EEGE|9Hm<$x<(ttt;fN"DR3Q:F7`gi怍7o!mڬ_Nzg;\lY ƌ{+Wʚc{]t>HM?n|LL܍J3_ƎAS>x%*jܸꇡ[жtzWqk>Qx|{{{33HgfffooSyJŊ%s\.ңn܏- 9▭[Z)#B dݺemm% l6R,κuͭe[QQq>{eE;jmVLŋ:yN;wicg3fL}m۶}& KSd4,b> Ԕ݉E"}{{{>jkjX,Vnݖ-ujmn 9ñ|HZf-1^JgΞ9~ִiS/bcc׬^})2Ν;Gg۰ڵL&388x_jf.Hmy:w;nu$ @T1W}јܜ<@g5`@&pau͇ͽJ"?jm<OotA)56,Yz9={ٽ]zJ]1}Ϟ=2mÇd9+WFDhtZkup8o޼u;˯_EE{w nX,Do&I]֋t[i"ϝ?i㦘W_߿o_nݻkן)?~| tO|NٳÇNNΡ{C_gϞܻ~W11ׯ] :護Cw 7n$D䍛7 3+zvsZux#5?jE5? 5k -Q4 4 |ӹ7ڥ˒oќ222:_^[<}֭LHNI9g@j n5Z1TFV#}9aڣjySV/T\R/>i=^*,Yxɒؘؘm۷;;;_ӳxud223 %9vȐ!6nLIM,&ӽK-~bU,Bq/Ho6n0a]QQӖX(zzxfM>o){𠤤ChTJ-7^"6 'GǼ}!t_x<^``@``Ǔ?<8;;FB޾s'44$}@>O>}Au\C=!T'E5> ;uJ\./((jl,QR  (ANz#P@1B; x@-A7cbL&='|f( uu͆'r=jhPE1AAP$ERuD5G$E{x@-áU$]!(}'b9t0u+߇C_xPKpxYC(fIQ`pS7 8b$ZC (&d$IQaj")&^,Pˡp>qĆj(j! 9yqKOoXd2)#BHRK;x@-áVj<؞v$I>LP3E`0'R>t{5ZOX!#0Ǔj9:s/0)>h'Ԣ>tnBFE,B!(E!!P"!jX"BԋHrEEeAA~!~__$Ix\wWW33(&Km6czX\TRbaaaB!㔗8 B))RTtOs`X$䩧@ 0n!IH$HTR\,Y*JRhiee`oiI b"5*7rB-'OtQTħ[wJ)Jj( T2E mn)E΢N^^ii7EBa=zx"\m+籮n LgCzSV{qB5@ }R,;;TJT1R ⇪GҧO+dYbǬ8] R*|>؈&{8==ͶM__SeHޔ8km+kΣG?b덳Iys77BȄHhժB."H%:~Pz7Jv$:!9D|z%R!۶jUQQAd}kUlmW^Ma#ySMG ˛7on^yMћB&DduLPJY=ٳRqD\Q%H"v9V$@TVWHd0w]j"vʰ)qVgteL&{a||/;棸kkhSnnPUX]Q%+%Ubߩ6 Kdf3\`jvn2E\.OLH^\ųgtqv(Y_~oj>HMWVTT̝3ǯO<6mǪU?P/}wFj+***Yc:(?o;F]pά_֮m+ֶ\>}9ٮݻw5W׼ysۺL4ȹ\˘1c.E^~;5ձe2]k۪*zH`@m+@kUU]k[G{LNtln먨qcǶk8,d(].L8Ź][ T|ٲmں}{/^0d!Z QkѮEpγivk>O$LRneƠ+]0UlJJT*ةٳf={R/lwp6md? !!^23VfK9fg͜.þ[_6D"y&''ɓ?fΘ~T=m~~ozRs釟i B1~+W~&**j 2lӦD]9yĞݻ? BCJ$aÆo^=p?_سg޼y3*  }K -V5޽kn޼ѯ_gϞݾYYii7Ir5m`ȶc|4 >>>ӑ#Gc=yX3y>>;wӧO@uO8ښsP4G:oQ]ÇӧNӧgϞӮ]חcݺu7>n޸d2{]cF6n zPT[P`m+SkQ[~eDŵk5rd޽2oݪJCKԪ\3dɂ͑V2sTrw'vEcE\6CTH۱/^lBBR5771ʈ0-OOSJe`J5$R4ۯg^IׯGGG :mP]vlff흞~[n= cǎwU$՘bm[xQנ[QQQq'O[`~ĥH#67B(=Ҋ|,)caݹOc H.QQ17z;9t"WߋOu\RD@A= cǎp5&Oj /25ұUjB鴩GN_n;}-;{J'$$w|<9M"[ z?lw$ 0PPk\8֋<;vw??k@5燄|" ##(#vKPGp픖6"N%Or,U76׊'ve9[ r\npu2AK?T2p`ᓼ/O8!H$Ǐ/Zx^L Ǝ9tPIIRd ݻwXP7VWW_嗚cG .<+˓'O>U*jY{v'/+/>u>=-LMMU()))-!C \.:t(x[Zj5eTz߿/#bDbbԩS4Ϧq3w1g,3v\ZZڎ?9vڧ^qyjF4} $-/'J?>?U*gӧs8zzv`W鎼[=v' \s2ۻ3}oֶWVf&S[ t̙I'kԟϙ;7r({{{6:v8eʔ # sԩͷDG޲7lCW\I-!M3gZwE-YXP`nnN[mƍoii)BBBN:meeeH<!8xub5[O4pUشͧSq#F| 1cn:>uСCՄnۮ'Fiemb\\\_fdl?~d~]x9iϫo],lP{C֟VX"fٟ ,4t%*4AM!ϛ7w9+V4|WB-ByuU*.=TW*-u<$ JKJ\\\ K[m5`(J6}5*oo8={v0vܸzM#JCQ*:v ii66BPP( u ,6JlDձE,ɨr)8wLwС^Ӿ)kIPBUfi}dϝ=׹sg7w7sʴ5377Kvf?{D.63h;C-ٳVa!dBJ\R%a,<= 23%Zkӆϫ 6;ƗL&SV]-6:C*'R>(-y Pbyz`qlkkk% <ϸ_*bLB!Ԥx?$L]W>b/BD]ji!B5`B5tvF!'xB5wj@K!҄W!P"!jX"B@B,.,(V AE5ƿE\WW3u/kE,B8⪪gW ƞWyyyqIP(ly55 (b)J&+$zf pE"|!'OzzvptttpD$ak(qiBwJ^(jcgܼB/733{233+WScL~[ D5(Wޖm݌B!277ׯjiT*BНf3W֔CԻ?xVf/[Baރ{ݙ"\Wc,įeqqoPί^sZޔM3x#j bwڹc ;w1brRTtߧ%lQ8.)̉b ~t>WDȮ5ޗ5D9H-JLvɨ{ybӵ!C^wt?d7|ࡲem?тs8'_\\sάwlmm5wJ%HJT#>f"3/i7n&Yb+beb(: kBT*;R[rAeN;xrZ/TUU o6gsaZ3vi‚uk޾}v2D"٧UUU|.]TJ XRT n5=TW@!rʐ\.:<+UUe2|uvve?~5:rddXXؗ_~uˑO633;|HqIGN:uӪTWJ?C\Yf$I8w$+**l[WbʶȦ( r9@gGBTO[[!Rt]Qzyu=zt/?utj̮]`@ɓDqttB駟F"l稨(${?oH C"".ː!?[[u./å:H 6lXJ{g3fO4eN,,,tssXoâ8uQ%vDlcoأbIF&*v&jXl(J~wqw!{xxٙvwv`o`o?rH69ݹk׭ѯ_߅ V)QLjx_편QVVvuũrvMY֫Ca3aDy9ӵ_YYy [[[)S .׿?…׭ ׯmO:+;;;9s:wvwp8t@^^S&zPٻT*"jX!Db@(Jzz wJZ:qR@6ĒR$Tƻo/]K>ǟ~V'6lA.℄Ąؘ ||ֆbx7o8p._<܈&_ã|>TVV.\(%%EBffFffF͸?nkV^%juk_ffGҬht-2~1C4~3$»#l`[`Mz k֬ e=9:fƦo߾AAASNE9/zU}dpss_ WzT3sggڵkaak׮9PVUgcRYsF5 uk}J̆ ^ȋ_~%,44*2C} !BB--6ozCǎ<9zhMȑ"#Νsuu'OÇEEF:xǏW?>jxp5<$?? ,;0bcb˫D+Da6d """F /^ԠHǏٹ,䛞=d4'N~iSk%ϮI:WX$#P^AA~u5<73 KOc`ag6|_oo5>>uӦ6lhѲeVf̜9&/_TD" @($ VQJrt)H/^ ?5TKWQc l/)))-)1jԈ pnԳGK&G~[FHsqРY֓l)o <c"Pr}d՚\ (~l%NǤUAۄp}z\l ~137u@_ݿI|D"g:>֭kמxi[IbXa{NW&V&9UUI 珣}SMMKuqQ}֩l`ڷ@)pl* VWͲNw萖禥ɦ| KKm?{M^TRx]SL%(~vJ>ڪX>r5@@}VRRρnw>>h\jr Ima!LUVVfpX^..\\&Mnذ B*Ge,˥`O 9%%{nd$(̉mVf͘~?.&&lml?J\V"UE~=PRUY"R=MwԻWԻw}}}{tx܇V}`ee-AFhR7zrt(v`IK,=u$9)l4 iR䔙*bBSN 3,ł\jPLROw"[&&3hfn.\ p9ڴ9vtH8Ç͆7bkBWV\/{?7idNG$d1O/rrllmRVg?yoG:طzg,CCæVf_wOص͋\CW~s{A6b}yzBZ*)) yNعk|jMSZVFqX))+MsGZs5ocmMu=iP[$>7ݍlmBH-6|k{0gM6n,(xcjjl :]t>_TTt:W?޽{&M|:WQ:g7H޶C&:ۺ|mh`nQ&BFeP!>Exnp,--izziii#ZF5Jkr ۸S_gmI:}Fv͚8ZkC>j>Vu;={Lfccc/p8GwWk5Klhiahan١]eI,!#P'kebXpHѸ\.Q1F\qb"X_@!iib6VkT*-..bPg4|R!-&Q&_(t weee:K%!NT *b_?Wb#BC,B!8"B:C,B!8"B:C,B!8"B:C,B!z D"j17!Pd2ttpbqcR@!깷/0 ^6©P (xA !Pg`hض}$}} ]!^(h9B!Y M4mj<癑=I*-B!y)--115-..Jn+ *U_B5JP(!!BTB!Nh >_v팈VPP@_INN'''2gizH!>O[n >QPƬӶ]WSBrRUhqY,E^$vɓ&NCVYM.X,SS]̘>VNL<~ٳgssLLM;hYl6Sy @ttt3iiiEEEmZ=zkMnܵʕ% ԫ /QiӦ@rŋAgL8 };Aŋ/^< ;v옽۰asgܿ'%}wHAlܸ1YHqqq[n9_WV۪U R^]}!eINJLIpnޜ={6 [+I||^|9֭k?Λeee,IIO?~+>pӧNSܝb*YL͛7nz gΞ pJ&dgXWB_bdٲe-[dٓ<<Ȑ/^nܸawC FFMF'NlwWh۶-lӺ.^HN5k;vd0V׬"|X+rZ)FWB_-] 5ᎎd" ._YRR*e[VOʁӱcGY: ONWeee &O3#3J:m۵)e%ՅEvbb Ov{WV_mɔW IuJ /i\9raӦM{r...ڤy75U@Tr^Ql^U-[HMM [[B#0Җù#a099VYe7mzX,~MCUkwBݻTV3\XdiD@  80fX- ЗbСC`E-t4q|H'' ';gg稨(6}:aUCxqΞ5[" pEH[5 755:tY.T{E-+V={ln^ɠAf͚E>K}w˖-۷oR\E=s;w_K$>ooo߹sgR]vs<=)[ZZIvS##ZO!]EEEO6w744ݔkmz IDATb_|ժUMk8B!T' sss[(Xŗ7Y,˵x2B!TxS3& {{yzJ~˗/͛>Qj6 .X pv JJ ;wSwֶ\ :eT*@ ظqsM,{toH$2dp-,[6--ݰac\#Gٳ\gÇ{yyXz-<; hkc[PԨ6yGm,-Zh>j䈐`*PypÆ+Da&BG]Lw Z˖.e*+_ D(}##9ҧO.`pũS.^H.L~4;+a-[H4v̘7c8YYYVYew\qaٟ%%%IIIIIIv4W/F(!'9xy{+ȅ &W/5%oٻwʙ2e?XTJJ*!ToY셐FS ;(G+WINFyΙs{Ir|mݺKs^&%G}ɲP@V^4b~HJJz}TYzm۶9q8=]8Q=rNNΐJhXp3~p 1䍮;*SN,cG-['4(9@qq1pCηёb9::n}xI֭;y'ޟ'q]U-[۶kp|`>}ZSd80~xKKKѸq, e?{ǎUVM\.m׾sF\Ro:\kB &x-Z@VV۷{4:88(;ޮvwڕdܵ  TRj^!EePS/7 ^[YswsȽ{Z*/ф:PoO SSSrpp /UVV^| {QtQQB'''"t.++c<|\j9&_nϢE W)+vկ_&MTTTKO?}$իV(^{ݶ];8w\YYAСCǞ=]j*WVVF1&RPt;޽{l[fc'ANHHHuyW9?:{nՓ>(**ڻgO^^xL:щ$+ܲe+Jo߾ݺe+SYtW|$:>? GO:~ljU yI`%EEE0gns++A؏P@VB A}Bb?#w*c6k֌\ؿoP(KđM :wT(&ܺ5} 9ӺMcFWehee۷o1~[;"(5%' 3b$I^^ީS\ ~}=z4v$%{A.x|B=z| { pS`٩>xO?X%1cO[흚zJ:2toFFP(d2ܲIGȑ#MMM`aa1b%) ~1#&&B,~ƍUR+Y >!ދ}?{շLJ^+ۺu֭[`ڴ鲛[ɾ-,5k47n|a ;v̉\\_0SLݼy9h+L{(GYfS)] :t}˶ӧOy3|PУGeӦM9pHYȌֺ0Z-T23n8rRq㪤3s欋/=zHS=z$-!!2&@c3fef~){J!7nܽ{!KT*PeЬBBb不geeY[[wYesjUfvL&~u[:Fm۾?`СL绺(LLMMϞ ///0~lS:ߚ8880Y, 2L*hLĤcǎ'O :ȿ_Cwӧ1N766ݻ:,u( 'tUv4hP- T2n/oorJb/;wUIb.XƆbۯsر?\z5x>c:yN6Mydk/\oرvv`~M^^QQ)VR+M >ZxzP0OR!XݯwEBzҲ֭[3͛7m߶mܹ֭<ךNrrrM>W_VoX!H$z!@7r8y횝]Sطi4%R*} TKKKO:=<_~+:pPHb`h܁&btx(7&+rGu^B}bDFFkr'Ht],+iyΙ9gΧBB,0D"ՅbMJW}-N/..fٵF!BHwRiqq1, BZGgYQf 滷o+BO}B!TbqIqqyYT8I B f'RB˽tzPX!P}섐BZC,F)y BA!Bb  XB |nY,]OOJHAE!9R^7ɇv)!!: D>XͿ!LIث 8'вE Ƞ|ԻczX*T?QRRrȑgOی3ެzr̔҇馋0-,dEqqQ_?i.\/`Xtq2rN:QˈQm>Pmb)Y$߻jȐ!, PؘÆ o,W1 w%og5u_%زf̘+ yᣇϝ=?G7o oJs^D,MnaYX@q\\w6׵yϟ;ݻHQƣGNȨ9NչJMKԩc0gXnܸ72rs]ftzۣ JPX-e/dFΣ_R8 9sfnfs.4-߷~9sf\p81ZOy'2:y/HLlym..^ج<9 5]꯭ MDgLKK7^/^ŋgΞOncu{ի׉VVVFFF,N@%ߚѻw[X+LU˖rM/_TRRrrAsxP^^kW^;N6_*7$w-?,<иBN˓Ba)윲gO<θc_Wy_v͛;Oty?2uJnߞ5kVIIٞ111޾XYYٶm }=h@u4{K/kQgLeMeya 1g }K=N$9ݻ2l ={6--u```&M@мCcǍmUSȮ89%g˗pܱc.Z,/O?qRѱӌlMI'/_':Y;IIKJJƌl6M$*8teii~fދ%I^|}}4HIj-aA^^^!!!Ϟ==|PTTe._DD=R 43wfd!-w1iWQ)c&z~G}.W>>O?-Z(4ʔ)?111sέܰ~c O&ujܹ8~~nvv* KQ]iV3}~=ϋ1Hį_*+=^ۂ5r X`Aƍﱦ:+,<-'O"3::Z֭[TݻnlԨ{{TyP0[ۂ^Ns8 ƍ:ߣG=z!!!6{}vzzs:;;gdd߿"^VJJJJKK NeC2}rZBȃ{OE,ܞm*/L!x,`S 9_{P%pOtǟ; 8hйsiiiׯ_2dH$arl8~xee%";3gҢ4aoo?o׎-^H/DZVFVI 4O*}>t˖MJ^yCr_JDu~~Xxݻw'O Agϒǎ600ذ~}|||ZZ+PC,~0 *+χ0D\BO#X%g N3F-,){0,2? v1CCl׶ݎ?w+WLLLF#Is]MeCUz&Bu!qқniݨ؂o+ w=f7 2h%>~֐ë)!C>Ϩ*>JKJt烃3ؿoAڹmvL&bHJJ"WmΥW dȕWtɩʽؽ{Jtoױ@غY-[xl^ZR|JN]kkӌ̛72ȵA`1c52f2Y:9޳WƴP:D"!nNHII Šb)F#B,(O[n>|G377Ylmm֭[2"!OAo?e6nޢ+ny%PTőr;umjPIR޽+.~׸q*ǫ%K :$[%H7|ȓ')(E}ƿGFG}`jRKr ;REy (Oǐ{mQ;ٍXŻPU'V-[!7 'Ouꙩ?gCaAAAeeD"pFeJ@,Ep/Wz gXS:$6QxZD"WQׯٻwiϞ=[r% eJ&Bu!ddkeV_H E&Ӿon <剴hnތ*.>ZhYJ|[ߺu˿%XTY)еk7N} AaC֭{+SN%e"u,h f1l,$,P@gu.w}fμw̙?ȯܳw/yJަL*Jlٲj `){ ?o~r9͚=["L2b?*({c9<YQ w Zm! ͖JOA,־ϛjj9Ju(dǤIׯGݼbŊ*kt5%^| 2$u~xxx^^ޠAL&FDyyy/_NMMuq!Sו+ p;))zzz66]v~ __'N$ܺUZZjnn1dy瑉(VXAD­bB!tZC pc0~>8&Rkm{7,,<3qus6uW iӦu֍7VWYK7X,VV,_ޭ[7Yd;7v Ř*ecm֧M^sE.=ok5gEMf҂N473;uԅ/޻dZ[[wq2lV뤦f2`2,6p;;;CR"ӠGcZ:w슕+gLěV *25y4 9¥O~]Dף. f{XDľPLmhgcǎѣGLL̽Ӂ 7ݫWϞ=mmm? EXyzH-**%>rZ;|ZF4##Mhvo fjtzڔTʳUxa|P }.4mے {nAQFњ*N҂ %/ê@5`tgZuF=~ë:Mi2YYllE^ fff3PPIOCd04bi4>{7N&M D"d޹cmm-%P:Ǖ/=MK`2K4bt:/**Ʒ~235ix"`S+MiӽkrXZZ5H10003307p8:/5pTAJӘݻFbx<lll,/100p8x!] *Vƴ5QLѸ\.WF:<Vf޵zhЧX~B!!! bB!!! bB!!! bB!!! bB!!!M!P{.z H>uBvttӣB!TTTp9ԪE\ï7B!4F%W_5736,B!rd\.CgΝmԸв<u֗ 2CcƟ:!B (:lXP.K3^NNΧ!B!kڴr{@2IENDB`luckybackup-0.5.0/manual/data/Message_CreateRestore.png0000666000175000017500000010157311134630136022515 0ustar luckybluckybPNG  IHDRJ pHYs+ IDATx]wT?loBS]Z5"ĂADcî1=1¢K tXvefq97oը[={=Ytb Za/T 8)NRMBDxWR{}qSZ]7~AB#Ͽֶ[^u`8!oy\CwGu}N h|U^# jf973F@! \ -,$hM8#4fQ]R!P 6$YU:4x&E-RCBDc:RV*؈ 9?TT U8v47.%4AȹtOVB/{4bPٷP c$rS*Wn}E~HJ d}1hk(!Զ rB[=vE FyUfC~±BT!8W㚴IA@btw؀Y0b1P/[Ah a0$jm7 oGbr^נA9> 4t`W0)F+BR04EI] i1i H GQf!#)N$Ir,a6"@:0}p$WE.ՂA5x :#ܧYf`` C&Zx@\Ʉp7)vX Rgh$c(, ԂGJ͉`K;È䯆u`+PX@СKhiѦpucXC}S$t%;thIH5?PV7O%S(@jPS ɻfٕ.Ȩ!9SfGrƊY"ُ)I" ׷eT#:Zm3dKlha9%w:UۨSU{@Xk\)AMy0=qaFh\Qs7AbVL `4d2ޠу14@NAiSX>! !lJ+نӠrx@[Z3"x#dcA<@ lFhpG(O(8g^JS1Ju %h 3fuEmBy BᖵO2\_wdwOÑ=`?)U! S3ە};B414JG@2FzٚvS %ΤHZ<9uG!t։OVHH } m\cd2[uo"=EY"-Ymi&{% ( |uXׄұPVi0F w2A3@sK28`"z&"LcSb=cfX/QƥFi84Qɰà?ې$N(KM 8]zr FTo3|rG$DT+\u撡 %"=Vs@uAԥ0aLГT AD`0D80Dh+tp,xu:Ck1aCU <1︎u wo?AX~r̦%u~9nvX)t }h50GIttiUT#3~k,9P$`t4cޭz?#;'q'Pѐ+TjGK XHFFFiLAh>U(`}wUٞv f ,` '2JWn Z| r(D2se͈ x|4ja,E2$+JEK&t(DMGZ]C!lt ScDvk谊ldmu 6TJc|9V Wl72}ٛY5b1y-yt9$1yvR5eG!4#%PM^UYvF[+s:wʟM85=o@nnoY]7d`ǟn+p'B//XcpAWP09#ӗl 46a(6pь,}^]Yf K XupjЊZ6R'O|x᛫*>z,!+%d~և-7U$Px'_6`kVK;12VT (P k8M,d@ '(Ƞ m &' Ǔ Id(HlDE@sTzҽQg!G53ݲ(hj6="(f&AVȆ`sF*(3&GnFBQ dAu+=FE:luV dfdW{ '弼2,K#&q2R wl#yE PЖV;' (Vja_18%$nU% ZPKvUd$rJ,CiʄBU C*8۶,+99S_^;Q4!16$-MM"%%\潟ץf%ffڴBU%LˢXI!Km"m9,NY#LO$TeUMOw v2jB=gM}x(FBM CI~8߻!/>;cegiks|c~IxBm u2P#[D.Ils8k)6[ИH "-Ψ9uQNo ݴPF'GrPEqZv͟}G&uA6ٱcǿ/q׮ ?-D J,2]_jFȂ~Ǻũy UwsMS:)-3K"V+ ӯ(-ʃkVf'|lDzm1}TG[f}X'FwLI Rz}GMcߢ}Rܝۦ#75ZfޚJ` HK^f"XFjӧKfruh˜5 S:8=/'#Blb|uڧ$Z 'ao:n{MA iﭯakt)HMIniNfg*kfOh#>ه牌dQۄ)RԌjlSfJؐC= G:t< 2&甛 |2S1`"Rrv^1ȨRDѨ8'LPoؤ*‘go)Xવ ffU4_(@֢\5*#gi D|jD0nRl .K=š>!sFƌHʼ83w>3k:?VRqߩ*a|9p" Z&_5e˖=3;vS#'%%x/:QԴpHX~ʅ#Z?OnT6//;uV糘K'ߢ}GBS.RZBrMyo#-%'v˒iNz9۝ӿO, pŦ!dh,_8;-a|߶"/3!am8dh!9 /-_EGstnhJ'1;Ur% rD }nBaǜ4KxS*0Uy]X6m(h˓6m)+ ?n6(B\e+CreF!+*-psq>rj$mPIO)CdlBˣB7 )#'JQ2 M)M2~Jcu'z=g]@@Dkؠ K"hp$]C8QڝA8h6)fd5Mh븨_ *Tr'GztFR 'U 2$yΦA)ؔ9lD 0,D ?p(}p.].B۶-ꐛ$A̝$A[;l7T=})%N}frJ|ϗݮ[$}?z9oX Qѝq,>xYV<Ԕn>w C{]uе0 n[?rtևzoOs9C:WZ]:In h}͕!;3wLbsVWlLQ]ztJު&e^EXK7ymݽc:Bʗh`N̷,%Ϊp^/*Z)'ZTghu-tb|dȖN*[ G<%&כ[v=2q'. Jǣ"MNGx@._4nՒd@bP^Px@ H ~:AHLa|#dV@7}dy2@BA[I5?Pࡐf ˪@gȔ0B<ŕ2P7|oڶ+A|Y|“+ׅjefU("Z,WxE8 ;.md8\kv519Qm]jKAI0ƪ20 P~0x@r1OooA? }B>-6.X\!@C 9ʡ[э I AȩC ?mۓ~UJ㪼C$6gE Gd%sT'D[=HPk9{nB|PȥPxprDzSB@BiWmMٚ*r~"*:Z`X2ZT7iھ3{〈 pղ 9/hDjQAAh%)Sn'`NAc0yȈZ^Ij^4!?e"hiZKJ=)~;Ogn!Ow}VoNYѱM&@dWݸmq:M A$DnFBEu D#PDD|rC^9;+kZ혙GuMaNԇNl*%mN[u&yס&aO @r]~ $}9 p^|0||/V ƽe>njfـywx!0HP 3<Y6@u&k5&v_j5TyYS69T~fLKT/_5gsI$#[ Nxd%W-aQɓ p\ B$C -(wd8Pw?yBM66zT'sCt/˸v5H8U9H _(TBTL)̅,}LȬecJj_i!rT:pzZs|#+#CXmymi#6ٖs=ښfrIw^9'XIᖦT;\D63HEz 􌬦]o[ئC7|Bs9=:˓;GyۭVS|bPj5<1~`7dWmzwܲ)hSnY0;))ZFIO8 9I%,I?Y{Faweʆ3F}ٞ# !vjNnFBwB$%oA6tJ$-#>6* XC)QZ%(h'Daʩ@=K*ϒKFI<-C׭cu3I,)H4I6;)T P>ӌh&9?PF=GfgTT^{Z猓ڧm]lӑn^e^=[O,JOMo:z+2Pn`-VԆ,RgmC0 u!`egu1j4J7;gtȉ+KJ)$ y2%H@A:(:CPQ TrS64ZE~jq,ROZѩ! mR: jtU2i~?9v sue{C,ȸ;NuΦ-s6Ky\+}aZV @e5LWۨ솇5B@A`CɾfRMwTxԠOq~,:(6o$.*3ŗٯ7oI񠡵uu-V^$1cƌ~?s9nv|۟\ ]X臺#Um;bFmǸGRF!0M@1Bm1wSs|m{mcH/ #.!jUQ S`cGv!Ģˆb+6臖W5nӄ ̈́.m|ڇjpN~<ꀊ1<D46mzs2BO$ @!td۔/:1bE/A`^+̿)jQHh v"10.I}i0ՎD@}gA8UacRA7[%v#D0Z DЋ]B-L̰UBHB[CV 4n# 5G$ڕ2pevs`mnYGOP_e]O<5#3SQSSun'uOJNtǡpþPkjH8/^O _$voݳu5 ,z뺥HtAPrOԑ)q˲m{A.ASpZ2vU46ih "oAOjJUAV =t\(-( #Ȃ%AATh.A烌dsUr/?˷vWyRGqѦ4vi7`RiN۶BF>5t=vƝ20DyoBŝ? l%# ]}I1/ Ej"xYT}B7F՜Th!'W!Ywt ZaFK[ehƦdI&!M|jf+6mr~'P TvCLc2@J584)'קg IDATY <\T=)1ȣ *_ ، R}'9%w}ݯ$!1q QN}C1H-nj^$&!lCbBÆvv@UǵU2E_U I@ lW^JF6ivQŸ֟S\H 6H'ꖐRa4V:iz'ETIiHIVJHK` h = sQJ"Gp1ܘÇdQ ݯ}ЎT !![ENdXxr06%JrtpMpT{bYlBGDKa}gDtJh)'a3)Tg#J)9fFB&@4r,\N hlRC g:t'cURRB4ClS 2-gzD hc6G|$>JO dbK.KHJ}I%{TNc?pcd95lF|K0Ko>Ec\R<yp9{#9i7fj@s `tpBS ړUzH·4^J5髒0' x0tDD{Y9N:8K=tYD3sIUB.阬rxd K4C,K7!QisL{*P-SN,zi69Ao ,43i~; ,R _%Dpjd隑مޒ S*1Ato*Qg|X]:ē)lml %BY?F̜6?ZxUzPbJZaӻ9+=NTZ*p|$9Щ3AJU:-9wjE @p@ʡl  ies#6^]pA=L$Y%@<k-ZNT m h|ǕXN r*ĉ2$`ȡ F<L'U#SӺ -lܶ F3#s(W r\8ެ8*R` Wl==\Jkw3:O hxV4lirBjC[d@&|T(|<_Ml9)K "F!7b2f(vA@#DRy6'uzhkˠ)A7jbD-~W)N7c@&III5jZBLD+&!:uECᦺ ̜,a%}L v nutcARsD61dq 'ç[Ny T(/JPEè%CPB<4~3ā#-T-?G|"(SPt@kFEiFD.qQ~+ *Ya04`ASe&HW%WvN7#lnBfV̛*!眬|$F*&񗜋6QYkp4 @mFc8\)"ނm]ّ|NVB'KQg9% >d>IHqأKLlP~:$l&!?vS;IMM8lհiO]u~%6}@@[k#2H9uq9QsN;\P1"頻朕 '̌6#fӼy21wu P{@cT[R }_NZv3H0X,G0em%'D@[HZ7W 3Wh/8AF=E/lmp ZقčY!SV]X(PGFÊ5 6d޴D a0-g p""`cz Dr.2LI.L=pHBi$ K}AÆL!@*DbBB%m QnG |)~})KmP*2 a_’ih6KnI-,(۶m^ᐺD!,et_UZl+k|e)Ҹ` ja,Kمy!!$Ǧn.&98t Gd J56XBAmA&r+aB PXWtgD-PTh @ ip(J<0b? ͉Kr@n}﴿`^lVMtg$g4H2+v@a 4;4X Jj ,GḰI e˒%-MML0lO꠷ d RaK ~&( S%N\ ^H@.;Ke-[#DiJԜq@QX XGE* l\P^W}4BrAȥ K/qz98ߛêK[**ZXVDN`dH\B]JhEkʇЕ" ]Sl rl.6ai}qVɊ7,av[qBg`0+5>jR} ҮQI yH5QsD(s0|/nJI=aÎ[ l:: jzLsKY Agd !C9, jBB,v\!%˙4y'H)HeVƅn"*wLE)mQphB#sGSB-%)` fFgvm@pm2c$q)>KR2ԏvZQjI7r4WD6 I^~i'TBІܱU*cgp5 /1D X'8ңY2vl Wjo%ZȎ "Gd8B:hލy, f@^+QŭWKOrHLDdF.wje%>oBycR4+3,JoBAA@4;t!mpbȝtd8}Ughd2^ǚ 9+z]ciK lh{ ҍ#ywbl-!{5(sglxZbD4:Ml[gm HIX~#}˲0˜]KvQ V?{g ؽwOq“ᯊ\yZ(T8fTH KFb)݃Ra޶f4<<˖w)aHU㯱"tEB"VHhH`=Fe0'3Gqgǭr̹L᭲cm&k䉐KL9et.Gl#f"SSm{ 3 ɕ y4 ]CRQ?/, 0 E t ct*scic*y$,+O%Pܥ*:ɓŽv>cbkϬܡ~ڹ1u~LJ7+ƣgܥDFcwnbG^4'G49Dz]>&hLu|K\<Kh{ j=;J[tl m^2HV@:A;!'bvo#3"+8fsVgyu"_bQ{:7@$ 5>aƆ 5RUpz]10]%:weQN[eF([67Oh`y j1:cFLdsr3 Q EԢ0|LܻcW$ ` \zLbq[LmBܒIIdv'o+#Y8'/v{U\ԣZ뤪AD2E[WVpԟXc!Ƽ(L)|epB9/K2ǚޛrs΅{&dua1''z=l[_*9Φ`Ieu&" 20z˼)nB2m۵|RVr38&̧#ŷ4ۘ5Ei&Ѻ7\k ; E}'H]h#׍zʝl4igrC#mb- 4a3,h>\ Hg30DJ ƞ1r{ k!|$v4KX:T%R!7GPQ" Ms͎l1ä;_m\KOjgKaL]@d Ď\ ·or$0ϻDʝ-/( "UȂ|/JKW z#Bg"ҟV'i9w< Q-FS2'd>lKbA0r+IhN'X KD+2CPF;j*P[m% x80Ae tV깱L\ #yd\]^ K@NB'=F ;0E 0=2  g$"t``"Wb]g)7#9Hxe$Q>{''9nNZԬ=G{anhA >ϰ29sv)UԀ7< i7ʛiv4X s29d${\#bs1^NG%.}! E*IQ0pvpVNKWNf+$f`WvmaWۺdU@D"i"g)ݟmzA.,.\"px0b$V!S>-v3ίňG 7wq ![@[Lj,o3Ӥ&Qp}9dऔUrIC@pɂ2lE:i +dBwlljϠ;7bWR"wN< G:26c~o!oD)=x@ol Vy 6+T2Yå2 `Ʊje\]]Az m`4ւQҎ0a r.vnzWUb;魧5Udtuqǘ8p:ɼZ z %xL]"{} ZǓ<`g@b: ;@4#3Ak4 Oo1)p`P x'nɟ#'.Q\ J]ỹGEܜtאE 9h_+Ru9k7fցkB0V}ꛜH3{%;@QA@GELsM=!>RuF盤`rn\m"];Ͼ..Np=kG/әuL3@/q1RD d^L a< b1>ܿ9fLL8_(K@FPAW# zn2kp{ԗU+n K3-02rEy W]t}U"a ff-/: 0bW8tA[gƨ=UH5½gDtu9Zz=j>u˖~\ XUUշo/StX-ի?<<@K6m/b̙}-?K@7ӿM:gggmF;g=ztٳwW^{_ 4O=f~{<z=N"+ׯo޽._-UL=˹z^Z:矗;sw Bt} wտ?e_j3[\<ht=O ֮O>aÆw1z(^?!vx SN=^=;ظiw*1)+`~qm_BsN:MHHzM7j7xa^vmvd;=jڗx^_ uCT%x=zc7 }7~PǰzeO$ ̕b !_]_L/^EliN2IzSA*9RR\׬j Xj&E_oᄋ0{={rʕ+/~M8q…KKKIV}A䰯ȑ#KJJ>=sǍߧO3<#g?{geÇw=q+_~cǍ;o^d O<1|}^uV4y5sO8Blܸ/ׯرcΝ'-r٣G۷?(%Mž}{ow{_ӧτ ]<8bĈٳflݲ(D={1c{UZ:#?"WHMI dggyyg}s.Դ@vvvNv ;`Mu;v풓{}M7>jvFzzV $&%&&%i|'{.Cǎ&N|w7oD *5551bΝRZZ!;';;';#=]MbŊs=w^cǎ]`".Y{7dȐ_|QƟ|饗\ҧwc̙;W 3Ϝ5kրl2{ѣǜviÇN\YYy5׮\{N^zC*>k#FWw ͌k|͵Vĕykee / ~ 6^C}q㥗^ګW/ -[>q^z]x֬Yjo*..ϖ-~Q a̘s̑0gcug뮻k_jO?c g5jT߾}Fܪ:*mw:o::XƠ.Ј!a Э[k߿O=y]weffn+~+Vr-ӧOߺeKk Û6n7o믽tٲ5kVWWw>9rȑ…vEEkkko1c-_|u֚{l KK,H鴴4tyymOjkkL2f+VL~o~uk7lp;/_>p˗ޞ0' z38c߾7t?ﯼ[կX=Z_|cǎmMM͌3v~O>sz1 4gקo?**2wЁ@{eeUUUB>gSj *u\|ih3jEGmܸq}w%6͙A/~^r_˻k떭ĪRҖ,YOo[`~mm_7fܸWzkH{ﳲM[GO>>[qo_|1//wmRnٲj׭[[fϚhիWF/P<+WJ#i  IDAT7,YO+sͫƎ=}C>nD3={wt/V\9a[nE&@H~\=pC=f͚3fu]?HYKU\o_|f׏;VZv'|r~+V4HYo%D; ^TV?I)Fc)NMI$?0M3!wz<11qA\=977vsա>۾}Qš O6sɒ xlHCK|QϞ=ǏC +-={葞>uT.wޙ o_tE ',XP+liisڴ`08g$/Ztx:tXi ,C)'v=k]m]RyyyϞ=KKK/?vΞr >^_| @.ŴJ/XR2lpRΣ;̝;OPR2aℲ7r9۷ -jlh IzF5|04iҬYoz/x='g@:1j/&{ޒU+&򖫯[nᓕ +DFedgco˲̝|ع<Əygg TTܺu1cdAj!0ݺu[=LңGصkW>gϙ}D? 86;{Z*ڷEXвvڂ@k9~qIW]y ^l3g92;;nᆳ: @PLjZ* A@sF pFu6hZz%}{}C_d ةSe˖VTزeQd ˲ڵm g^^ϟЩsG!,)w8Ф'=TyH\.+(VVU9}ee+-,|cN/_^Qqp֭G%4f ԰w!"VW[ծ];D=8}9~!33YY?7;gu}ETFmˡU2s .(ӟ`AҗGkJrJiiijj*"fg==ڽ{O}?W_m @QQ_5}QyF9Ūb"ٹo-mӉ}öCĝ;wm.7'o߾?\\A-"b +{<}%9!OH(+++[P5++ $0)}N*Bz饗vi݆=w(ʃqpٺj~Ϡ ^FJKׯ_o-˖--_T>bĈׯ/RMMMkjjlJLLJMM Br}CC0!Cر:~r!l[oM6]ve۶m;P+VYϗ gyꩧ>PH}#G.XPV^^c\8zk^0زtFarhf=/r}}}(4oB:9HcSc]]]mmmMMMmmmmm-߿رcGuu-[}޽zEW?u[nﯾo߾C[W_}Մziֶmﯯg6$555uuuuuuH6^Zϛ7yɒ9RQSS3{ݺ_~iCdÆy6]v%[IRM I)))`EʩL6JKI ̟0@--A!Dg|oV(\d{tj}gjkk׬_?~СC6l0g7^\=bҥKWX 9kVFF!6nKm&m;%%Ev}}K0(7`l0ﭷZZZȑ#_P^^a_L:xvu {O̼wƌ[npWOr0q[ 5j>?dЩSoxwRRR+[fg<<˻7ܰ~ O:_A ϙ0^<կ~cVVVsι1֒߮ K׮8 F^|Ygz Sygɛ> ڵ[h!<=fddO~'/ڜA͸^~ZOq?i߾K/퉙۶}]<Ώ!"bAv10/(({)((N8OڵtxjZe^vg !|Gytƌ{|mIqG^lg vÔ_Чw򩧟D7='~I]AU<`=[:TQZZ>ГO>Ï;㞼k&_[R\lbb.]~~w3g>(/KfsR\3q鲥kr;ݻW]SO01/[=HeeeIqɹkށś'Mǁ'1cƌ~?)dgY\~ucpp"x=2q3@6 f%}W'{4/Gk u^8| }} cp_-6@r97|@c$y36P鮞o:L &-K\v ZQZ0rq@F^k:"zܺt󑒤}1W(6&o)}o@i+E/XE;X䗋zm*Hum0a~`AW?=p=DM`8NNB?Hᢱ±bD֜g:UC:t'.Lᙶ*zHg.&+18):fl{αOFw](Z:Zj7\ikDךTQ Y<:#هcfcInB bUO(qF)6`ZO#)8q)qׇq\O|K)NqSirA8)N+2 >|?NqS|?6o8(^Sš?NqS~p 8)Nq7|Y8(qS8)Nq8)N?8r?!8)NqA?)?%NqSDxx7xg8}ɁZ8(qS8)Nq8)N?8O8} D%%%]wΝ;`EEI{v0`707CӧO+g$׬Y3iҏcƌ68O \pU^6{ 2Ktƈegդmi0{IDn~w}w/OH{o`8}hO=g5};ZjwT "ǯ蓚?K/tF۶7mOZ\\f̘ϸp8970`޽{Z3~P.*/_4aĒwOo{`ժU&s}weKϓ7n\II7\SSCԭSRss_w}4⹨7PYY9e>ly>Rڱex뭷۷oڴ;f8b򓟼ksξ}{=TUU1b޼ycǎ묳?"bVT3fC ٺm[lTWKV='?'W.\y啞lGss^i3&sЦ]XT$o!bMM6uы/kڴG~xݺGo+Vv 6݅'F<{С^p'MέZosӦM\CsQ%V(*Z٬dGkqݿM4i5fځ%̾Pɓ t9SG*==}ʔ))))={Iee -n޽{VVV+emH]#2X_Z#&Ŷ)cN>Lf#@XV6m\@Sqb۶m&L_hYּy/Z;v( ~۶m޽u]׽{w.,ΖBy&rAJ-Z4v͛?;'󚚚q"=<g/%94555{J/?;{e3'; } }Ν;%t'

sÆӂJr7|B TO6n "݌Bm#ЏB C?B)/4zO+))'rdӧOAJZ] Pw#띗YfXΝ;m8?Sk[.fa/ƪU_zfld||ŽMMM[!ڰf9cPRRv9"bvvv(m֘1c/_N*55uҤISNȸ+:~Qvvv(JJyY~ߪUQQQٳgYYYIGn "/ɵ.--]xqqI?,!iiJK7o6PV ׽b81KWSLiYf=!镙g ;;";;lP(ܽkՂ ?Qr^Mlmm]\]:Dyߕ+r׬]GًQ/]Ysd-[\]\Ȅ!JBڣn,#DKKK7&''v78wlةSIInܴi+,--SSSjzŋ'$$xxx"_!'>*TrJݻwe˗}WW P^^t775iP;8&'A-sҲcǎwܳge뒱(+-((]9mxNխ۷ n݌;pm#Cۓ礤\v111 !~}uܸ~CUEk!!!ќh%\{yB>s:\_@ hDӫl6ϟ7wUSSSG//IcE[XITl.Kpkнeڽ [+K+>uDRR ^`fj:j(N4xq#:eoo_=y׮EϚ9SG|L7X$@2Y|L4!>cHD3PqwҤI/^ IDAT$wn[ZZIr9;k<OzĖϛ`0 4i } i9\R[[;2*.\`08i׌ .YEvlɵGNrs$2LݤYFwN_O`2j$9޽{ף{ѳ]vUTQaX3]++*3pViAa/utȊ={6v8xMM'|aogfPQ"KQVZX=}bWqe@^e߷… _s7ޢsϟo={pFKW翜Pݻ;z!JUo -^ojZ VU(+)I=ʺ(64|j :tXcG zV8zۜRWx {{{KӠJ;k,,(2А!;w 1>I+!{k.ࠬ,9Du[VIÇE'‡|Pann% uuuz%.Lzޜ!&C{zVWW^ŋ+/P_ݥޑ QҨzKQodkv`%Qɒ\{u]OK<z2-9\2BMQ{_UJJl6/xħ]Es+N=C/)999%5㆟9s%%V^uDqq1`mk?y2sgϞ7S0agΞq&^H WLmZ_=x JMJNwvvf?xN,++,!Cí,-ht=~+s :AgXuKWTɸ{*씻]K ;l}+*222N1*(e]&2~WjS>T#FwqxOK=zT^j۶mcEճgO_BBꫠ-[$s5Ҿ}^fu@@@iiPW aYW>XJ7nabbp[CzUz+ٲy;7AWWw}f.Yd5̬vefU0dЪjKO^3Çx{d숕UQQшn͚۫5y^Nwc.*7777|\TTTw Ey-IYF CW8)Ї6y&''‚k͚5C~<>AAALsϲRmɇ?Z!hч6(6WUWOdܜn#?W9*E-W&B7|eK׷O |dMv?=||~?z+)O{D>7|0KB9[EYUok?B!R~RLBH`G!iBH]?B) !p0#ЏB C?B)!_"PDFxQv&G!!~R8BH9  B4Kn ЏB 4"~R8BH`G!)VV_K,is=[XXhg?\A㔼}kckܽ;e:NM>NLJZpp;{f̼pP(ltҌ;B}G6F4ij]F5z˗=J׼ e>\]E2[L44|Rb)))@hhCϛvu}ee=]P42xYpÚ8M\ԅgϟ  ӦOuuuURRvr5'oo U/555 {u9n@JJʏ>>[Fmw7oެ5\׸@dDxO;{J4>MeQ4AFr FkD=Vu Lr ̝{9xՙg ;;ƦޗlKj~sI+3%5WWSq͛7UTT"#BNqb8e>>>#FEGG ɸvݺ>&&}5kҲMWXiӖ7|`7!!1QHE)@I֙3Ou"9%nFFCqVZ巊FWj`ߧ[ZZ?󫞦ffIPZZk׮:Hˎ;555w>T42VM2,Y ={F߻/<<䉓IIɷnߩ5'HoqK.-Z((8Kӧ>| 92V,庒)z,..9}nXG|-60OMKM.PNYuGϞv?,^7 RjDH[HzZXXܾ}PQQ ܹmh8F2ڵg_W-͵".xk;DzM?o>y㐛չzO>:|1p'r9<@OO LMM=cbbĉUl'f:U kDӫXf9,WzWTu sVa)StaØL7N6lɓ'r<6Ԥlh(ewF,G4\Ǐ)9}n؉'\\lmlkWĥҺinnAҠ$S^+,]'Od>qF?~j`` D@}_rU;;_1tuu;{AM8KAܹs’|IݖD;w[UU;w?ah8`yE[G Ҋ ?5~|(c~n-}riQ{%7d4˙:ڃ m[Ν7NY[YPv@wQ!N757EC |ٿ2w*ۆ5oUuuy{/HOK[zu^~>Nc0,ݘ^Xxգ̨+Wy<ޓ9s>1%99--=wD5T())l@^YY(6t¢sϹݵkP#)+ÇjkwY`kϜ=WRRr-thd$@Yǰp?[;^z㦤$$&8;5wE)z6!!ٿR^H(f<|(N*{WktÜ8؄Ī=}TZ74@b(5,gbcckj>hUUϞnk+e}v@m,͛7"lϞ=EFCIі-_>u,sʷS:g@гW3f|7n Taaary}PPA׮:ځ޸1PWGuzS-eFYÿ}$ڵýWޒR+0 Q'F7_~~~;vn/..177=jn4!9Mgnݺ۽gz}n嗇2cG2"_|ErUS133l< &7v((錬U\,s.ݖߏ9Ғnd1\%+mV/GnnNl\)ue\b&|U7mq\PQbQ˿y㆏wi5559Nnbq81#\ hy_l[bu˗{ׯ_n jӧv} C>y7|[s!PsqGW|!¨`!0A#B)Q'G6({!pZ4 d?99Ny/g1 ;40Qd7~[io߾odC޽;mڴZSRS͛2%7ψÇ{m6 ~ udjukcSb)$#>ɓ'vCd5˗/_j Eh5oUyهOz0iRԕ+  a?|?,.(,\v֭򲲠`xѣ#ƏqF2SOdTImF}.7nL6~qqu)z꼼ׯOH/JDջwҿ2~ƌ…qNNNd{$krYtI@2_  vtrr5#GH5qbuu5u%KH&NJL'H<弯X;;{˥MeO)DŽry ;= իfiiP]Gvmݿp~?tJTZ{?۷kjjرt0b߿v_%%'߾sl+- ܴC%%%Y)S][dϟ=,SM6m2jFu70Xh9~iѢhwk׮%Ü@ zu:˧Ovε_x1Pbۥ˗\\>IGxo߾ <弫YZ'$$[]N5E9&|>_vRΝs0#Լ_KS3;ܜ܁F44Mm43Qn(ϙ3Zܹsu\+:?E'jw|)6?@GWL5G/^$q&Q6/R^NBJLH_"@ JԹKis>=zl&[H9'Ndkgog"r(1 !$Ҽ{NNN؄ĪsE,e>r*ʚ;o/WYϠtxJ2U())+++E&l>|xUQf"'G&v=蘚.K"0Z]NBn?}?B*+-=tpEEEƽn#)GC l݌~Z糞>թS2֯^}TG[[K;kCLL#>|XƁ6&WVVSE͹Hf17n\ iWj >|h2kfhvvYO**>Vڭ@苀5ɜ;oN+~?5UkBVFF Z!/#ЏB C?B) !p0#ЏB C?B) !p0#ЏB C?B) !p0#ЏB C?B) !p0#ЏB C?B) !p0#ЏB C?B) !p0#ЏB C?B) !p\fh4ZW瀡ɫra^\X^ WЏқ o᧿V,vcfvS ~$ʅO GoT`X@Fk)ǟi֮H`Gr+zc3 c% 7-ugzܞ՞H`GrK ‚ꪪVifϳ Z2̀U5ViBKErK`ܕ@uk*~$!!$;?6CH-!EH`GrnW!'7F36,,L(O0}ٯ_,Br C?w#G~_O߱}X'P矓BCOvU*%ArL蛟#^ ;fx& k׬~8:ibPGm#V;qufog/~OV֜h XyF!ɷzwd%wڵ WUU@_vc<\SK377Wx^^!!&{[rŊb[5~ٿ_IDAT~:9)Y/]o< 7 YЏ,::>>>,Ͽs .]4}qHΰY4U%"RQbZ%J, V—'x׏䌪2MD2;2]zB3cu^﷘|dr+QIENDB`luckybackup-0.5.0/manual/data/manage_calcDifferences.png0000666000175000017500000024233211377457127022671 0ustar luckybluckybPNG  IHDR~kC pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&!tEXtTitleluckyBackup - manage backup$Co IDATxwx_\zHB"J" T@E{)"*XP*HoQ$`Fzm\ren0'|^}3פo!s|s  9JU4 9k؈nUFT/*h|$HjTkӨu*4 @ BVaZN=MwEgP^VFAFqoG_6PӦ<.L_pjNy8菲{}PVkBPvWPSc wwrkweAqG+h0w,eYe'c8w˻6uGc_* aT*8?'2e"Ti;.ցʊ qOwB9P(-밼Ҳ>5$"6W>uZ"Ge=)]7Ɨuˇ_!*(>Dit:Eo.&NGyy9Vjh4"""BV$@e!}cXbVeY H,[ԡ᪇-.]?gl<[['P"Ou.VըCԨ$"Y$*ȫ'*$6D₤.H#؃q$Ih4 N"%%M/..cjՊP  I+__%Į!rXX<9ɁO>(+[E<&`IJ(,oic9hF}#O|KD% T]Mq) k#cKE@,:}Ƽ/ #c7?~_w ĬR ŨCT8ڸ#vJ&3?bT [dcK(벼n?C[?)IOܐ8Qy'),*❷&af=mOwqqO}?LXоڷvS}v9VUYg~7Hn]ҹ#n ?S`୷$%%=/?v2|PRR+W %9nѪ.歺Zkpi+ѰbrIJL C{]s5}gnEe%| 7p=]:wCvrp˶)`7^'!-ݻΝ;HoKB|[ߖmoۆmXjÇ#C{:v`:|{ጼxn:6Xl_w-It܉z,֮]]KRR"]vW^JL/]Z:I \y|tt: 8KgҧOoM^KDqnGRR"W^yeff2v:oGv) z3V4R0aCRR"ݻu㡇СC6 g#- {>lg|2yoKv)\=*>t]*+*dtn::wDߙzxu޽%%&`_0^I:%'%Țի[ҹw̽Kff]_Ñ{JE-H 4P G:*!1?¥{_7|矤JUWWkߦ---eɒ?9>W>@3w\^|;|ן?D~CCC4gϒ6m}ǎ%,2NGs}$ڷk8 (Ib+++-($~eIbl|K~eO|Q'62llP`'>9j$ڟC9zL6VuUO?֭#))1~x-Zȝwiŋ˯ 55*FL|}-O=N#FfW]x`.euuu5O<k׮%))E`\?|>CVe#{úuIHH0X`<8U+WuV 0믉^3/l<.Zg}*wewvV'`>N}Vk>曬rsqI^͛6b ipx֮#!!lW_CtM]j݁|=5纺'x.ZDrruscL裏Xi/sV6;;`SY;!ħ}cꆇ#jȪ` ;r Z|\=uTJ8i!!!z|M<|&ym~>`2znZDZ| ʟ{}eWҲE Ξ-U߫Vyt 7DaylSdelTV.~Gvʕ:utW*t:t:zFk͟?jzVkz?f,#^PP˙M$'p"?AVv˖/뮗URR1Ynzb$$$!jՊ={߿mNۖ-DGGs7[KNN2o۷o߱*n}yvnI֮3Nh:ٶKII FdڵՋuב`0_IZۯܼu})S>tjdY}edҧOIVvgKdQʭHLL +;C3y'?U}~EՋ-NnI;]t]&Oɓ'yؽܼ8xL_u}4~uM;w6'%%kuKJ2dw\6m}a"SK[;;6B$g | .NuTAW_ͨQw|;-+^l:ǎcaFzMf}%{/scʔ),[kEED3l0_y͚q|;7MLIr2e;cSR(i֌^LM%9ޢe:yũoڔ-/Ѳ4s`ys6aK:c槕 į߸ fxYڮOK3߿?VᢋzwٹaĈHߵ!CeDEFaYR{Xpnҟ0 v”dMUUǏ5_QQkJ^hۦ5m۴ 77\u0s,0 $IO|7g]egeqa eˉm"{Mm֏>J1 k׎)S>͛]ڛom hIN!%9$#n{ARge%7^]}sr>&**y\˺ibsͳCN ItLMek۾lӦѻEmӚΝ:s-!VNQ k`$˜9sl";;[onbbb ׺loӔHINFѐćN-[q߶l>V ۉ@@"6 W:j=v %n(9:/#,] ^˯O1H|k֌H*++Q՜*C}FaaA*βx),,$4,R 0~[mtw ŷO5]X("[x.2F>}N;Z}[4m4k֌|`g1Lx˖-套_&""%K.SX坟?Og0Y~f?t:s:u .;Y`0hl^:Df Rje^K{lꕔd$$Μ9#;i߷=өj| $ʀ&83/NE]du#jbz>MSX]v%I"%%̙3v,)++SsdK̷ ߝߥ#0w;X)oײ5~ yelDSSn]SWdAq:wLnngR%绤NK̝;bΞ='zcdgڑ'LL|G-_+kҥ:f!j~ž(T*23K4i+?ZB\\IRR-Z 11@޽v&#=pզΝ;y@Pe{n:%`ce˖ݷOQ~f΢yqY'jIl, ٳgYb{\xtŮ|yYq+/X{y?nWZ_~Y:}cO(lM|]$;SVTTXٽ6.33*摚*5o.gK{ '6:8}YfdcqIΈ:j_g:mWӄM=j`-c-Z[N>|ւ#6(ׯ_5NI|~wYY;<\˖q9b_G]6ۉ:3pi[gHq !4tTnV(GbݺuRxO|9|G2r=qwB|+V"2Ȼƿ}T$O\)C3Qf&;5=iubĈ2ku`U%Q[yǷ~Gvqv",,P3vb[v).O̳Ϣy/_ g˹[RhDAAAXiyO>e2sk:6mJhӦS_r dZyO?5syyy\{`^ەyjtQq17b^'mHi+9Lu<3NpDez-]M9s;~rswsݧ3fwǎW]KIvZi?ӪfL+kv%0k.L䁍rq˷F?u]KDd(k5W/Ud.n`w^?vF+'QtaÆ)j8t,[gIl,11є|2ҥɂzLo9ߙ|fGuj'_+xbM<٘ ldmSרHG(3ʖ?~V8Kzbүo_n&\EQZZJAAgϒCUUᴍ'6&VZ+De=ݟݝaL3ڮ6k@qQ&<F}=%^Jdd$YYY|٧̞=v%-gcA`_xz #""0YX=N"4$ ~_Xݷ.IZ4r~a磌j]h(!j~hu(yXMv)deej~궮Zz'c;@<[ p!5Q·qFYP6/,,`ZhA&Mz@^Opp0V7#@ _ fg6}WXpyu]Ϭ/zO9{ vmۛVd걥rPp%j+n'C_م]v)9zwi@z*)@-9?uԹ;"2PմjՊVZy* ZZ&22j@А+LK%h%W=[ryi'Ŷ vpjoccR[ӷ 4I?zx:3/aO+ |*,Z=})hZb?]Z ?~>̱q$rl=@ p!)o7^ 4eC,켵upl IDATޛbeV8( ̱/ݸFL%#et{Sοԗ/xme5˴۵ZwpZQ|FX{9mli{~5Yd\@9~[q f8GD>$`}K=d< |YOo}ԕ ^| q쩭H|KrLrlӯa$[omk4۩O<;mޭćXv-ig9˯e)ÛAA UP{Yq }aԇGuk߁!@_PLa 2^fK[2rD\l ? g'~<|Xr5s˟_+3eV5ϳ=|% vW Ьo=m!@PD3oo1$0{ ݞfbIxv׏/f]̱Nhi2n_`A+?5qC!@PP3q9@1|%^Scb*|={ħ]<܋6 ,/J{O] conbßGA]"@PGM0pY_x)bg=r~\r >+bCG4ˬا/Ձ0՘q,4Zja]]#,6F4+ZPUS<$ri} h>hs%^HN؍)S8W>2qlV7=_?|=B q,Č@Pl𥘕,~C4 $G2)؇}v%d>YΠȱu"]L ,ؙ<].-u5/G mE@C;RZ{݊8c\BeYfOK--bX8W>uCem#̰9ᕘvsKɝgp wSyRQa/BhV}8SfQ[X 8WQ_?^fEqMi;cbOZJN#cr MQ="8l_*׳ڞeL{g>5|ރ=6oo3AgO ؊ȏ`J.'E ̜=S?퇒tٓz48y&>{vj]?_ z,X "@i6B8ϊ!]t2xsӥ_/j}[Q0ߊzCE ӷlO_~ =q/Y_MI@~"ı@ B(  l1X`qS.[}9[,ӕ_o}lVb~(Kv_֛f}}t]X 4pPh4|:cSNc߾ѣ;m.+\M6r0Gy{/k(8`oj'W; ޽). bȐ xl|uI"uG36Ǒ]ZD,k[ƿbSyCzD/8?Yݺ%؍hٶ@ 4hGS?~]ᐺu?Pˢ#=>^_PQf=C5ر`M+eJez bXɒgwhB;oC&<-ٹdp}Olb{}C]X  Z(_•W\Zm5xux.X]oԕpvWcع3_s"߄X{?aê Zkmn hrq&e|^ jMg\~ױvן6>WDqc GgΜ`UW~FJceZuտ㍉@{,kijLx֥JcT2uZ4'OqD0[r.ΏV ft}|aQf{]H s` nb>a3ưB IPGر'a \r /"vewɇ~HZZeeehZ̝k9v))xӍ=ه .{߾}ֺVdɒ8UմiݚACQ{iVf\73wn${ HEd=[M7.19Q,[CjΞ "2R"5UK4 ^InZ[rnN._|wEL۶[#Y着T|<=~$//=GW0n\ qd=厹)s[X^'%P{]l۾gn4-wcO<%_l.[QQg}Ɔ )(8IXX8=wѣ0*֞={?~3X$+>z4iӢٲ%S6pUC U+ԔxgQ?- gS[xW%*.{A~>*x 6%ݷ\yp8]vmIƩOLpר xbyܛ䲄o{vt<@ИPK:4 xUlڼX\\K,I&N۷F###]6N~}9 za.>IxiK^ZOjj*s%::Zrb˒\$ 7 sF9,7ztL.W0eM~Ʒ-H([Μ9q~4Vŝ#}{lͫו d=厹*-1a!!j͛O׮]xH[ȏ閇۷Ohx7mmtnߔ#6?+&(zR{n]11]@XX57ܜRi5̟_"G<ڄ>3K˿mrQqwՔ77pA1^u9լoţsAퟘ~@e*T@> y6zdnG],||!$u1d޽@~~>mWv|޽<;o.2ܹ;w2i$bbb]̛7}Y VJD~kVӧmvvυ]Ç˯}ٶ52޽ 6p7oe6o K/ٽ{7 ,dРA2%~e#=6^?nhlΜHHAGd8It`p̉$$ɸذ!Yi?YQY$TCnU͉0:ΐOZZ!59.[ηE"a?d 曚BBU+ D$MfLgj7jS}9}Wqg|tҫ;enpmqNΓ TO򫯾J zګve_5.!!!}kV^o 22H0Wj|)-??$&&5]veʇa qWXNZDBB$|4آꉈUr+Z%=\ĉ`?.{b ^%$D ~DZ}]Oq5MJHHqqqksL̝3{[L:իxP|:c^w-$I5ߵc8',XX'M, } LXۧ.>>גV;k0Ɖ IJYc 4LT+- G7iCƻ_,(}˘Af`DGBHvt}(ȿAl쩴> w)U|KY~M|".P.Jի^mwv;W;vՀ5es~Ӿ0j(yc f/s@snҡC$ f6a[!Gw-7XeV_>}4cQQ~VeޟY[MG]1o|ls̝7իVs1j3^-[زe }Lh*:w˯gϤgϞڥvSS{k|];z؂K7l XE&{t;0Hlmӣy=069ͫ :cF$?.A CĜ"꠨J%{؏}S Z|PsSD 7eY el@ 0#xF2[dV]~lذ?Θ1c#++7|Χ`cN9C9r(^cc \P|ZUjUJe_2XҲs={ֶ?Dqc݌LENjx&q]Mt:W=ޔԭNI RWy;+PůP T(gddXn|(WBB"~7c[ @JJ;/2%55%K~b}7_ay~A ui#GVp=yaC /vߗ~{wձ]ܻGTk=[+3˭!bz\bL۶_{ٶmp /…ؿ V_`U^ݱcmJV![[obK~inݺjK|caTe ~ GK֬>c矏u1@`NgBB\Q۠}")JZuQ,)-hX T(˾Fӱw>d^##ύCλFee%_w}!7I# ?Ɗ+9y$:FYx1cƌ*FlL88}w}7/"zW^y%{H Mط/ާ嗛X V5 2IcG(Ǝԯ_'PZg[?i5:K!>XU¾CRʇFUy!8RZ4߼Vx t%^ y.JۿN{Շ1,O=j'@ p"i߾we}o\\"ѣǰeoޝ?gwo>;jb?.X첼]2_r4}9>U3sV4ˆ͝u*vG]aY|_r}[Ύ8f\}wG*f%S0eJ cǔ[ ׷/?3>P{ ݻ/7SOrg4hlc`$>~m{ugl9;wb}]oСS}UUFޣn4RqUl$e<6qbEZ-O s@yys;X"C\{] 2ÆV2fLP530qb)<E":ڿ٧8:CqNݸ  3@Ϋ] @ ( bcc`|ͷw("44/~:JXX;uga/-/Mx/ӪU+BjHMMew2B^ ^[e5i믗liF$%YGxZ -[R <}Oy^.G-QQдK.b^yο"D-`z,zBBzR^KI縇xR%RuF){D„ /1h`4ib5o0h Éaذa7q׳g6EV<[o>;v,=<$1i$K 3tFW\QMӦs_jf|Rϋ/xJ]w|"IzHD?C~"#%T*vp~[DROE|i1Wx|:3_32J]s 8<uw}@*..*]t's+#xf\r<^q.6'O(RLp5Yla~@PDEEve--}w9]U+=eeAlk׮&^ミ@nX^$36dA`p˗7sRS Eˤ3P??-VzC^ iJ58ER y8qx^BX liϏd0N &$Duk=}h3޽5 $-q^pkA^9AU\\=@  yɴR\,nt(¥kd-s(1, qK=U=#v>!q @ 4D=ȵx BLx@1!Oc\-,ރ H`B\N[^@  @ q"\J qk0 nQ#-@ !>YReAF@ C$|4\TT?MYY`H$~g Miڴ/>+!u t!X@ FU\T${z'-[ &&Ƈ ٳ:}.&Mu:@ A@롎=Jrr2\z Vt5_'HHH/Ȏ;8z(^xa]%!EEE߿hu: U )~)~zv^ eUP-7g]j‹.BEn t:d]jRS:QZZZ) |HII ;e@ ݻ={lEB92"NϞ=)*.D"7@@B!$%'g:=ITdd]$!G[n)έ@ FDEE!!!>]CUk4Tʥ@  ՚jjŭUPY@ 111$$$3>}$0 jGԮķI$:*VC|{7yԡ QQWs0s?{e`06mҌ$U83C6'w8%t'gJY}<xK`;&:=Ѭis6*{ǰ0ŵm['e9gvsD~AØs`IIIl疍3loN2Q1CJG6nIуnps/X 'M" m}^%uݡgϞ_>Ȱ IDAT˫!ĮO9ȣ\lS+:%u~NDxgW9|<,gO͢&MpմmO^y.)!vh5ķNګ>m9a._T\ᣇ>6NŸvRu$xl h.dA^*Ug=ART*6iʅ=+.}3+*^=߿ؽ7r"uAߓza?UǺDT9{⚫&))ݻ:z7xMDHh()Ɍ.{q(b/_j8MҢys> f]w].@ii)3g~ի9vԸ.9%!C~ҹ ,>C+Y;SxpߨhJltl?XB:u?ҾөCg3;ض78(qd`0Y>s @C~Jρ%/DiiWBU-WpMoS.DGUΡalc :ҳs Ihh_σiHQk}lLCc#[[}x/hfW\qEg{N37`uT1rSrqgMf䒱{;ϨwRXXt}Jee%cFMvv6ݺu??.{dgg3fTVVz\\ e<,]أ7N[폎2.3).._\\@TTC&䎹7mY9'l*!|9;X.do6+iW??%1>~-?+4M̎][ؾ3=}w#]'vʦ~v.qR99<#y%""@yy͛7sרQthߎĄxpYHӧV[sEI?.//_w^mӚRqۭ7ki+[PgHJJbȑl ]u|W/;gGSN^("##8p Vcǎ9rysgS|Zrp.碋1 cU9:VkTS3 Q8k-s] Fz"y>(--U8_}͛5Ej2,QTf|AbT*¢3{]ۿ~6Yַ;*GdD$QH6}T.;90^#"ʄ/.`Y Qjqq1}KZJ`Q$^~e֬~]vv~-͙Ktt?˔رc;vzI󫯾/l̦U\F4yqV6ǏgytzGq5 {V<ߙ9s&jDZ|W:##J>-[;GYx*++>cڴm˃>@uu5۬oo6n?.&$$G[$'%3}TTT0mT{c_zGXdcǎ2c'l3k֮3?U[29 uW}NgAAAVMjfWVӺU$IE~:mg OifmJ&Xsϝvڶ'" ̟?tΝˡC.]5kϴiuV222Xp^t33ߞy3&֭HOOg Z_M NfժܹQFrr2fѢ_NᄉN#cwL4۷}v&NHLL vb޼y-jwl-???vDV6>/Zh>>kLoFӦM/9vǎ`_ФI~wf͚i締 ;v#> SO=IPPKLϛǒ%IJJfyd9JnI6l~_6uy—_~Mfi8x<֬]ǐ!Cdm֬YwB_1zz)+4wt:KI;_`}n}IINh*߮&<=4h4뗘;Ýw'3>+wСlrrk>nVZ-Ψ})]k'q1rrX37tzqe K/7^dx쿚r8{\l I~0> ֎{Mlhy+R6ӪbyM&^˛\s_؝;f0ګ`ٲXl)ƏUb1n][i3RvII N"_MƬga߾8{l'}޽l s`cDfuä/\\iCu:m{;կߠs Mgdd,ۺU&k߮Qp]$;п?J.Ӿk0 8. F =O=n|7x͚ |;)W@WC;8j=~سg/^zEdaq1}vJ8zXH'vI==z 1̛7ȑ# @+4ݏնYum/#z0[B)Siii8u*SNIزeuכսP}/res]nnM{[܌MC^To*͆Y$Ւ{In k֭߇BQTR޽7+^9)7UK/C2e+[osrRw7C!++111|ij!Cw:?q'i>z0*_Z4/ڶp~;QЪy;wV^ubܹ8p{(L"sV?;LJU`UV"77M4AY P(^٩Kbvg%///󑕕Çk֬9^w,YD]uE?>HVщ 8ꉊB:u;Ƹq4Ə9͐pǍzܦm[l/^+WǞ={0p37iVSgWZ UVM`ժXl9n]7)0{n|/jCYWN\6ֶ U(dfIDꮝؑ WԮ;{nmH#1xп6bvobB".X yyy~h'_r5(%k?'妪S`gvN1;ѕv{ k!z-[4+yE=iǒ i˱g[4=SV-lݺ3fFO\\Zj֭ZM[}v(DDDȣ0bH4oD:IC5s,_ ڷZt Q#٥\WX ժ]yũj{ƃU^=lܸK-GJjN,?~d-~j׮?،_~={YobW>z~O|HekN-?_&dfº5tmogr_}pXܹ=v[&|PkiNݽ;w@VV&%YYعk&}9vI-cKCKC|c8b>|_;YzI8|0rss}3gVFVV233 &,^vZWGOCcbc4Q {c8͝,deeaΜ9x|yu[ٰMEo\zYv0?|=233/7=s]6m<\dggc׮]r$VwCogbϞxa p{ z!''k׮OrȣbذÀI^۵khB㏨\2z2n X~=Ν;u3v` \bWuRn &?zJqԓT<]^uPظ8b}xgCoelrRS7/^LdddLU|I0m4ms ܺ+VD*|Crr2oߎ.;aѢEDVV,Y.;aYpfuύ_DvD)kΝHNNƧ_GZW`~{]F`XrI]5%cxDZw^SN;{{= Zlm oaC7n7]ױmx7Hly~(^oez˟{Y,\+7,xv{'iC=kŸq d7faܹ[@tt4?))={V'ͷ'wyvv6zիWyf 8l+\0?msO?W;b^aϝ;|Zm8}CDDD`ذx1ϣfΜCupG]v/Y\|` )Wr7SR:ɑm n9D܏+L Fv"vi0kvQ ?blY#_~9&|17.|mǎ}G/SiʗGTT\V=Cҋ/Ir\zѦMšL2ڵ+x ݰN}gyu111E+3z5 ˲eˠ( .2bcc1cL yuoC Hv˛o]vEʕ8ԫWÜC=~%%tݻ7>hhL yNHH@1HDEQ꫃t2)^ٲeu55nx/_ ر#~'\tE~7ѹK\tE~NB0SH\r%ܥ ~yVA#~tܹƸͷݲ6Nح} IIBj3{etm.C۶0r(,_ү\XrW\%Ka / ~}#>>RRAXt_#Yoѣ+8ߣ|&vLErr L9*_ZGFvNk $J.߇F߻(SsgjA/+ꤹ)SOa'1KUm#UwK";ǻ$(nu8bQ^Rr&غ\|q%DE)" ܼ\:W oKȰ7T) ┿SNjv|Qq8eLɵmv2; kq\" W7ŭ:iI'//X^~钢O{?a۶P7g|U\q⫸eLf~Dk RCW֡[QW (p xw:)G"} &ni" @||N@2eP8RJfJRKR^BeDDSwSY IDATN">>޵8yDDtP"qp}xQaCfF:3gQc؜`2 >.N>Nk"!!džn:L+,Y}KFkO?f͚{kiSC|ieyם8YpܹfٳfaPpXx`Ӧ[PZ awI=TR8r`99r f6ӧcҥؽkq%O޽+ ַ܂X<3pW+V_BzL4ޜ^ pM7zsRn`|@Nm(=Z<4Wy&) ~sC=ڵk#&&qqqhp=f aCY?h11h6lk=X[]x׭[,KI_TnzT2nx+V^Fozג% Za _L1>@TW`zﵝrus}v  W; օQ)Y?CU z-?tF^տN9wɒ%<àI[jj*`͚5٣̝+rz? Nݻzu0ԯ_?씫[m@WR2O=tP]"""""*:{^fΜcGTT .++ fcUV;4ނnL4^(u/sPn]`aVeVnZyyyeLZǓO>:ux50{l\ڟncpa, U-z///.W!(Ϝ9?v,nxdddٳHHH(X~قpozz:6_H09M۸ >_{p8喂{eUnZWɓ'PZu4Jpm8`X`h+vխrƍ&|R"ֈBWw脼I4y(c;z\2RSSw^{-X'ZhҤ ʖ-ZRRdSNy-7ڟNi'm ۛos99ՆƹQbh޼&NW63g4CUw4lݺ@Qw|;ҸA/_>kݐ6Ǐ!C^CDDF@7W_T̛7׫1o\@ƍڿx 3 :ش {n/7ٳfp~zrrrBQjp9}ӧOcӦͨxqETZCDDDD3gpuF([\Pqo7#""F5 ۳g/L>.6lf͚aʕxwx2섓xՉneqӧM4Add$V\A?MxT6lQB\wv5ĝ:)W7^xChZ\tQ222~z Gǟ| BժUUAǟ27Z<$P j=Ml(х?. Ձ֭g)lpR<4Ć2]X֬:8tΞ/SHDFyBi kWZ'"|CYqED%{*S@v6c0~":΄iiϭ[ZZOD7ڶ {zO11@:cy'VeXV-`h/.>^>0j|n] .HN^}<hP\=ƍ`7@Pm)So'+deԬ)Zl1[yN<3S!W$iӚ?Z5)n׬Y@n@r$%Ig̰_Vo9ɓ2 4N'a([0!D%]ZZހ_ WvJUؽ+UYp{*ʖU=}\?z]mx@? O}nws礗a<,]*Sgg))}+'M2ȐƍKդIpy?6M>׭ ]+YVdY^r[ gX)W@s:O.[f>-'eJxmG^?\&.t>-ehХg > +W99޽@β㏽A[enUԽ`WiކBTE)g9pQkr1YDTޅv-=kyy9R.4}թPr [nϧN+ isr۬REVX꫁e?ȲedyZigBMO5kcl&2W{.Zj^[v)G5o2᜖Qj/] tv]4wo4kдgѣ%oƘ@N@LN qsBT X]Q\Y6tA8~Ϟm?fz1'ΜW={/\a5aP7^6}[䓞j{Y<|-Zntu^^xA&- 4w|c;Fu |[^v#g-_tR1^{vl'*4Yh4HaŬ-Pܣ 8ϓ݌So](b(/qc )IzObcdo_yd=#{^]իCv%p/,C$ա='p)]Z|\JޫڶWR4~&OaV~ߨYly#+LL\4j8)@瀷ޒhV-ihG>8!GE<&Fmrѣe&ːK.ZtF #NPPciii?QD]o>ԲQyO27DDDt{LDDDDDD(Wݞs=#X{\I %&""""""`CH e""""""" 64P&""""""`CH e""""""" 64P&""""""`CH# (G=6:yQ8(ǠD^, Q8skC4P&""""""`CH e""""""" 64P&""""""`CH#@DDDDu %R`2{*MDDDrQ&""""""`CH e"""""""(=o '( =#XأLDDDDDD2DDDDDDDl(iLDDDDDD2DDDDDDDl(iLDDDDDD%oJQ(AnODG󞈈‘u8@ Dv׋I;=X8\!pV諸JIˏSzK2'Ƕ0>=  DG{-' DDEh"[$^з/bEQ,|˅z(Qy 2-|7'/ Z//x'6ȷmsii}>`DENVyoΝ7ZN(6Ȑ!@~>Х uc?z6 hٲSGDD~](DbC!'))⋁޽ŋëCΜHL*V^~yΝ偄Y3`8ʕʔwkt` fM &Fµkvҗ4n,KHϣF={oJ2xaɃ;een:iySw+'ZIccڵ_N.UWyȲ{<}*?f<cf#n <8Pwc+7x=k{%!A8>4<0$=*]gzH\V(d*'OTvJ 5oem ;oS͛>jԐAeÆ)ʉAhƎ}EG+ڵvtq~=(7l_֊c>?.iFGee7Vǭru+/NiVTVuI}0(}Ѡ>-aOP.SzkYV:x~9)@v99Fܮ+F[..T}{󴹑avY߇VRZ~6*bVRd:+-e""k+s:Wh;wSOɲ[dgHGǹe ~j5+ggK=wK.Z~m?s2E~_Hr^B9R^'OV7뇷SVVpZZvqLɣUqR|ONOǵkͥ~MJ0t'KRz͏Y:9|غU#QWl(=ٞrx}`\m'~Ju+8>+кLz|oRoyE1 ; {{ …ҥ$&zoXQ۰Yh4 W~sx/=[ժߝ:)Сd e7OWkWzy˪0ÈYܡ<UqZ\7u%^|$E8Q>쿽md[IL4_rr<gf z.S7 4?zۨl'j/cb/게 7X+!AϜj@qq}h&@+;q1euQମc() ( DF˫m[=8^-=fif:vrKӧ2 ˚5N(P8nť <) ӧta&ma13V/c0J^zƑ]n?\T߷qqѫU'R܋JEȨGO`۫>M*P[ϸlK{rgYBЭ۞ ׅ+Yש3֭Yv5FyrRVFyq#n=fui}Ӡol;ǥ7l0WlO>|~ < t_=nsg٦Mø7K|9>t*q^/(uqTx(""sqm2-'G&qnY_N`fe{\}|ds2ʀKyQz22d:KtX#Oy)>Et*Vѳ:TJrX1+_;[N6v럢?Fܮ+c^Q6ml9όP`4*'ŪL܈˭Y]y}~U i}qNӣ }EG+ڵvr;{VQn8֭%'8VqI6<:-+y*o#͛6'O*JRT)E9uJ/^,ZC ˌ Eq^3toNoo~8W: {ɹfTVD~ֱ(nzxXmcUWSʕtbF=zadYٲS6$tiԩaZ´li[y.鬮cN+WJ^0ֲ['{ɹ(QXǢNaŪ!aj_es0^xA>oojb_^^:u| C[6ӪwX#n m֕giKQp@D.e< V agّ#,1ѳeo_N}U&:uRCeE ,=z_VՏsgװ_}%7׮zdUYaY$|^S/޽ٳfw5YynʷQ#Y6yvnVi 5W? Xsiz:VXպueܹϙwk￝m߅ ;1;Lƒ/tɑ0QQ:Jɓ''^ߵk7W۶bY WU0r_Ѷx=iiek3f!Nғcwbb7wL >޳<3Sdex6=].Pt9VZqqGzBq< ;[Qi$?=zȐ{DF=&RRR-2S uK"ڶ5h 7DB<^=n ޲S徿|d-{RyONv?}W\!fSg[׳j夬Hy&y3FhNnN c߅y@뼝znuO/7z| {鹦6,۴YqXsIzGjԐ+DlH=|пh~/WN'8{aVDDEy 4I&x͕j;vd6͚ѱWVL>O&L992d{iSNϵy>\=5UuEq;םpxsgy_zAϝw SOI>׬>8x7N-m:e}:rK֭;wGlVهnl:yℲs_̞ԇ$se/y3)QO=e=ξ|_}8OOtL}l;{VQn8V%;W/ge,N(N0sgFש2ΗٱZf*:on(J6i \U:NNϵct.ֱ(nCu<ۭG(ʥw+'iPE7O+?aT)E1yn یQ) TDFy'""" gl(QXqiH>4E(:6 <PTvd~l`PfM 6Vއrrnp @Ryqm}sã;)smz}_M;Q>}_<Ш F {k/:HYĉ'ǎݻQZ5op"uf?p5uכ}/ 4l(Ll$S:޴lڙ[s[0JJ…@V=zqVBHVR@{?={3fXm'Q4i,]꽾wo`, #<-b-Z˖6-'O뫯~< NlW-_]wY/:hB:֎+Ub2}{yU3fx E+ [_(<f̀ eKUﰿ" esV- ̜)=Zip=ˁݻ=ˎ^AEIk[ut=~ZmC_jl 3ظQzK+97GDP&"W+Vo)ݷ8fu*WaII@۶=YYk8n]zC@:W0#x}A:^Bkժ@t4JV]+@r;tڲE6h`ZWĉe_~)Rssυ$=7تTwFީP۷uz{/ H}n˖rM@^Zz@SZ꣌n> Ð!RFW]e@;!'O+]Z~Py4:6(lhs۱C10!y¯^߁m[4_Nm7dEDSJADĩ.<䳞M矽_{V{H#3dO*Wˤ^FّnjV &ewtص[uۈM$j_l/sÆ'u.T#" 'l(QwoV)> ,\(fQvަ pjrXOB<ҫo_sw˕szF|ݟ Z?Lҥm$2 y߾&*J&*lfFsDD=D({0Ohz""e""" iii6-DDD*3;0pf/QbCt$uDDDU\@TX=[}hLb%"pauk+9DDDDDDD^P&""""""`CHd^\=]o={"""" 7VױGH e""""""" 64P&""""""`CH e"""""""(( ۞x^󞈈u]Q&""""""`CH#JނVܞs=#X{أLDDDDDD2DDDDDDDl(iLDDDDDDU #"S@DDDN(|(A O0FQOot(DDDDn,cmb2g""""* x2 ^=6{"""" GVױ`2DDDDDDDl(iLDDDDDD2DDDDDDDl(iD#%((=gtn'"""pduk{4-D~<(Y]e""""""" 64P&""""""`CH e""""""" 64P&""""""`CH# Ŭ(mODG=mDDDDcED| .9AnODEy7 CDDDD.\Zk""""""" 64P&""""g㣨>B )/҅xAz 뵂z- xH.(E RGj( I?fwlf_̜9sΙ3sfVDL((P1Q,""""""b@YDDDDDDDe3"8ko{ɏ]QFe"""""""& EDDDDDDL((0^ bt-]~/s~/zo~"כ.\ߖ[ȟF:Υ\rԊG=B x9땼ڵPj1/2>9Fu:t׼3{j/UUkͮ{-; e ;f=t-v?L`– >\!FįԎgd[x,cL2}P2! H~@YDDB_"3+N7ubdT/^ӗN,iI^O$_HLOi/j׃ IDAT_W]8pg]#h~csc ]2ͿoW]fb#c=M(H: &P2-Eڽ9;;zg>H[q|$Ö #++qJGGf,M?kҤ>0{EGۅ6s;v=G((Jmnw9 |ii\9cf,o`lFEzFz5Ig:+*DxVh{{h:WM=h_= .d~ӎ8ݧvP2Dj(U8Vmˊ+Y&OfaŤhE+GST]Kg]izMkaS7qʢZ~P!;9zf{ewSD~elre>\!|z *D웱ֶ!ĉY%AR>*T( oX"6m\Or!*Uq{ T+>޸ 21}w^puٕY;fe[Qx'r5,ꁫiTQtktf9җ/R-oxLqzM=9hR/vR[_1֕ZB"#^|;y$ 6 :#$м:nS+g9+uԥB llnEK_ԞS[yw/SuZVl)oy"++32%qKfë(R.>w8[yX"[B 8cfG[ico>쭿xZ57,3UG]lv_]r5,""r˗pJSULNsȹ#~r7)L[`– Փ n ux*>H:ILUzs۱mᩬI#+GF3>jg%ux*k{Bw`,߿bW{^<ǔSgپe| f+Y_Y$SXUWV?ģVa]=mjfɚ i<3IZ^f0oZUj->SP92z3 OciVێooP<8u Wx̬L223xW)V'dOg][ico}ؓͿofKIjFh" Gf\qxSY*j[E@YDDB|t9iۦ:V؎cV o1_-{ӰlC£(_N:,KZ-<=t]zf*HSO 9|p@V@>䯟Bv223| *_;/b""r9GHr7T =C˙{Łw>Ħr|eײXl:) 7J=rs>uF+ߙ8r1df#4o+쨋7V Txp>hg'=qcc}JZ ZliTtm%fӼqEyOx>>6icO|> zͷl=rݜy?X̮e &0fvAT2pd}@ՃbE#&L~mºCHHg 7N5:~r{Χw= '2<0_9cv_ oNJZ )i)L6sgKW7a]`;FəV`;м.XiS׊V+]jtay ՊWc."%- XZ|тǷSxu6oipc~t-_r\μLTvŸhYSW~;gSt?n7iۦ5䜴zCهƝ6_Y %xsś\LȞS{ u{F͟fI^Cilt̺CXwhu z׃ʷ]v1Su)vf %h2Ie勔ghЛ{.Q4sweŁ+VZT\ܚgp;]|$Naϩ=ԹFg=NV[9i@ŽxcM_m.88.*9}pĻxd#wO;G E*0젧ҿA6G>YL{,w+@tD4om~Lˊ-)[Vs(P۸k;}_~l8kG3zh}*T( oX"}Q{gP\]r5,""""""b@YDDDDDDDz-""5ݛ,"""ViDYDDDDDDxu""""""wEK.)P^ݺDGGe2+y._^K\μ/J1ԾCH`sDH8/H õv!:tPFgZߔ{c\duJ۞O>mܧ[ȟF:Υ\rԊG=B Wg/53sL @bUZ+ ~ow^ΩWP,""n/zϢCDe*?ƦZ>.g^z3ߞdfe? [&0a˄\nR;=myD%2a]@BYg^7dH~sQ:ԙ0k,""rpyo{>F/}Yt#یzꜾteIO|B|ՅgPL}F576'0V\%Cf|Յ͏o&62YB9ZɇΥV%)ɰ%\/fNO7 Rmt5^Xg/u9v=G((JmnwK| ᯇs>ky {-l =7tkyka\9@E)vaMƾ3rMewSD~ſ-㔎ď'X~֔IK='0}qw摅b9h[$ujW U 30[ DZF#WľK웱4ۀQFoDz=G)i)ď̻e\&3Ooy= Sݗ;.3/[(V!bߌv׷s;k@{Ug U#9z.W%cK2(vTNN`B $L @bKѫv/~CqO&d? vQ(qQqږWPdMv}eg~^kDYD$zpփ1 0>r$勔[O;˔)ٶ{z/VbyzxE aL>ݕ&=5%-aoKz%R^DGDƬ<ӪR+N_:MDKg)] G6Ir;/svq?k,^ϖǷP<-m?[YNlɫi?=QF9#/zYœ$}3_8fSi;-/϶|-lY糰BJƖ[B72~o{:[ۦr6,5zH[}nvx(ct==t:~ՑE{e[qV?qw??]0`/W㓟?a-(Sܦ7~+^PT E╖>|77u^kDYD$:rM?Sx'ekg>cJ*WfVYzit=*4cm-hG?찳OetOn9/_ZTlχ`dfeRX22OC?gK5l;ג:<5P92$3rH60Oz%nYRRf[߳VO6<| &=3wWq^6sym O;+!d:V^MDnX9ŢU89νx)=ϲ}`Mm^Vrmos@8GtC:)UBQSq4+zl<_O\iG6zVhJ͒5mo_㍿~i榞e▉l81% 3o3m<c|4r]ngWjT)oO>wOߠ??=nDld,{Naڶi/c)ǂ?|R)TSCQg -MɇꖮyaZ|[wlDZ=*Rx5fA2-K  wGn(|kمXx=aᮯ܃rhvҙ$Z{Vˊ-s,539q2NB׺)G=㯏;e%ƱvGc9u'v=^XNv}7fě`|_z 8ۥFQ;?VcW ͳm#.2ZFBe} dtuִԚ vɊ+r̳ebAH"xSOݩK(Z쬳FED>{zLcYjI~&YgmOSHy9-KE?ݧvʹ҆0Tm#9pOႅy4?gH`<}q&ض׫خנQQLIBVVR1%q sM oVddf\o帘;vz%Ksi=AiYxmVZ<1>_u{Y,[ZwO#""נڥkz%z}S6K.tх@ʲ&,7#yo{dfeҦjTi×[uWdVd9 r|ez{z$鬬,K_pjϩڎ"p.EGqV>;*̎;@T&ʼ=ֽ9\d ײRZ+_V\/~|y< {lo`Y}̮v/X._X1Hc[-Fl}3svᾺyLcGs[+NV\]Ur-_y0 FW^$̳es:O{Bw_?N˶>%--+7Wb(\7 @)r˗ 3/z9]'w1n8~۳Ťp>a:ᑄYg9."-#5k6m_nuɘ ?x`^OzF:g![$d?O7~t>M7a18˩e|%Rx5N/Zh"RR~%--~|;ՋWg`C#쪳FEDAgӑM|#ϴ ,`9;??z]|eF@ĕnl=jq_ %h2Ie勔gh}mкrkflt- v1sLNZ0 J^/4{)SsjOcչFg׽?k.+^9ַԊɼXxLcGs[/4{ɉ}j75v-xSGvMDCHFMmx(ktx﮷=;C\tW ~=2E1x7lIwHSHfw,ekYzI,ILD Kfpcc:#%bJQ |;?bKJ&P*MI'1.F\d]jtayٞ`jG|Cz$xLq|*ݧ>{Bwb#c_~Lk{cWW,ᅵ5:G l8R;(3+Shb"bW#¾ s< 8,,  dW+} ~ltv/!0PJĔpTa@Pl dfkqqԊ9}|'qnoU*Wӡzb#c)RvP,X]HԳAR<)ꕩGLD ")W=zc#WeL(A[y-]Xb#cS/xfŽ:Kh8qDJ=y/"""oЪR+=AW"W@PFEDDDDķS*R/rY&'N晅z IDATV$?="""""읳sv6r=Ozei}siS E %*<Ū|s/r=ЈtO{=y] F#"""""""& EDDDDDDL((P1Q,""""""b@YDDDDDDDe"""""""& EDDDDDDL((P1Q,""""""b@YDDDDDDDID^@D$Paz%+rSid3w󿓙-oy_m%""" E$d^ k%^ֱY{h-gR`akCiYeSyr˗:wr`$*<*['v0k,fźC"k]덹w7?m{ݮ[iss+@!+2c vVW7ȤX'wABeivc3inmODjR,"|s-zt+#~SdnvrCӪb+¼ߖSO1|]{={}s3Ikrf-m JE1a㉋#%=R~v44sr&'Nf96F6ʱlOϴ_1$z8w}y+`Tcsr+e ZNoeŎ6|}}G}$[RrJ5G" VZL1'wgK;9XbDGDswջyL:)[mjW]2Xן~ ELp-u"ii>ſ-㔎ď'X~֔IK]wEĽɋ'sl UyrXiswS{>B(z0UUaXsj=!PD £~8,Q?;(PۅtMnǛ+$L:g=sMVV8t`9~w39}4Kr{yۮ|rg0 h+_> 勔` 8{0; tĶ}`{>3nmηuXFC6~FŢiUNls9z/:y5'gÑ T&z$BƮcqǑBQ2{ksw[̹s+S-#Ʈ˲}D~w}j&oD8~S/vZ׽H~@YDl5qDт͇r`։~hG,߿ lxtSV| @RY*҆xSG>)_n羭iJTGyS)Uvy勏gB FzfkˆFp92:xL٪VeoζйCTmC jvƃdߙ}GV'fm}uzλuq6|c2\/g^棵B,;fvm{ynseꖮvIjF*W6l}t8hjR{{>x_agDD"byE{k2o<ۚO:|Bò aن|yTs{ۉ bъ|3BOn y!mϝ۟1s$_пAWLI;+!@ol._ &2&rV"߇?`Ʋf]|0V4,ې͑Gx_58Hs{-Wedf"iVdfeoV?jfCuw3*UԌTXF@8r>jDD{[}ꗩq'ܓؤ\ln+w{rqz;X}ەOn y!m7|ſ-fѭ=n2Ҹ|izQ)Sxp|sZTlm}ld,s1"qQq/#V+^f1c h~cs5}FfyɉurWhli_E]kw8ZMf+ąTL2Gn?~uֱ <{o+MѧNv|y^ϰ%~  {>î\MQz!ŕvu*Oyy*Vuf|=QFfFѯ2n8Y8HSp9~;[)ԾCoHIO|y{~; 67s~}Vך]/F1u}>l*SOLW(*bfocZy?PUDDBIHQdM׽tkЪR+׺5xܦn麬=]OzAێ|V y6ƽ^Zl$0Jp!ZNDĭN!RJ` Oy~""e7̣AfHHg2wm7^._re~?;'}ϫ?J1l>E ^ V'U?/VW;GF۳VO=_nuߩ<7]ۘct i{`|mڢHʢ\(@*"RBႅ}uN󎎈&:"3Io޸9?zo~ܲr|mro*[,Y5*SST-Oo""V kDYD(]ȋ_bъDGQx5F؎ޟnwY{ŪCDĕeŖ%<{>sF/3W;;W(RAģ)Gg'gW@!O=e|>{-៍䁈.\f=LӲOV^Jn?@]JtuJ#"":/aɝ@:p rV:Ti/]0|pX4pH FCDD ED$tv9~O)J2-acVnLr, Հ0" G<ƈy/ibR2^@_N8$0uJZ_rgv cdFV5i[,^y]ǺMݏy9 ߙһoqUC^#vwyp0 g|N/1>#Ka'N:|(9 QBynnxizQREuK*c\h ¸OٛTa1H %/O˝:sL˳0.:9b%Mm`Pzo2y*Y$h#9@&м|<'/uJZ_8+FXcDzs[:;|}io#V)zv+|-A2(G0ټ3;]܎mgh*|1"q3`<1FTRr5#H.1w±~grTƸ;1hlw0Z>VcܟIO`#AvK56JHh cل+mjw '/߭}iNVoqGz0< d8.LJsGǦcy0BׇvFk;+6GkuI|V`H.iDYDrЈj>=ESҎ[<6cg`cY0#0̚51D)fa\;1R+S=Iv`ԹiS|]@BYe7vۄц`^cϾauJZ_ޘx_aK"11Y#> <``` cSǴc_d/zՇmh?5Jۅv%`̚|vދx`׈eAD~Q^cKRqn۞Î S03ta7IiDb y1sNR_g30>\qamw#'o`%o .>.XiS2~1cZ:|+ ; őDT0WW9ݧi>Fsڔ0#8?C aBqy;1^#,]"h굈\[Zc#`\x)z 9P\Y}/;~6ׅy"UP#XK:|\WG`Ӏ,@ugOcxZCxvyqY>ke8aZv<OU5g3=fZ58tYmD<5O Uv^lMŘ. Hs\OK(H3Cb0Fa?r%H(1Z1‘>ڱM='qbC1~Tcdx"Eb+=ʴ8 5t=ut6Z?)1#<B7RyI!F;_Zoy[aG]ҦVU07 =ű:Ku q%HcHc@ӈ2cX ޕaxS9}(m2@. 2M?@;D`';|=t|= 耾Fm5d@)XO0MSD'OoUDk E`<F/aɝ0F1F?񓏿צ @ >0hn%fG@YQhʪz1mAi%axh12(T^"txcdPh|D^\rl؟S D;s Ku/ tyH6H˜Zȑ@ d0=sZ?OOw<8P&m/FR=.7$0 p=cT7(~eݎ|Y.^m@MG~ξa|`#pu= HwKkx-NzX~kGο.~L9i_eD3Vb#X)G}/M= uY>} vW<΄8q<.\CQBynnxK^Ż@FibL3x”G_`|j"ӽ˲/ IDAT1Faxĸ;c}s l'O2oi;s֕ű Nb}emeu YJc_,wGtRFO< P =]+c\ ׁ򷏖r`*7/ibsܒy(M*FBdx* ܶtŘ9__6R`'[yr<"@#z퉯az; k@jIN>DJr5,"љIDz aQVx8zlru^qQq` ώ+0*?oճ Ω&c| ;<Mwݟ YX7vfTHwtƕr粬'6ˏˎ1>&sdƪ_[H-7vٛ0._a@}a;ac;N1^sR0}g+}] ǣ'<Ӂw{7 xM_YW#S1dsZsa@?DziAorZgO#^r<9g+T }/0 _~o=P]# EIJ.Pq?m0K$'1pNUf`QY˗?0_ǘrBWxiB(_bL/`;=mI}lu9wyc5`J`:qQ/'THn_7+a|=7(r_?QwD) $bUͰ"/~?);3e @ ӗPv-'*ٹ fZw1 SPQ Gw)>zB4 Dr.$F#3 לnG]7Ր=<=r)ep m 66=F^4S 3뗌8-ٽ{Q#:7m{NE]z{S#VϢz3qW u0i`#xg}Pu]U5H]8viNzmM~dqVl4{hoQr_O e4[ДO6ÊdH̬cK|Oܣ 1P(H =B5U+x<ɯ9QhϨM&r!kP?zfjzNE]s;3^cӒ5>'" ->2^c?o$n<-x?S7iwm^KӿCqᦢJ&YzN&u6;UCu$jKMh#jIgCҌۊuN; Zj f?@? $}|-3dK4}:N/o淠dR퇛?L锝uli iU(WUWѧO?~?>P0$'mӧUU ۛ?6/C8Q_ FP^dǁmգc6tA < ,|.3>kePp޵WolzfU=2x̮_"f[YZHՔ=ujGzTWqj%^Q9ecpKIHNԉ_z,'7Sbqz?OA6f؃o+EF!VlX=7YTc984?J締j?lFc#3-=mݣ ؿ?&N]oEh'+O>nݺa%>&zǗ9I=Еh"nh= {g"z}#b(zu]Bq^o-^P(,Mjj Qћ֊57 {>MQCPnUW^4s6h OBw'hps3E.KL/F==Cd,<4[6 MN޽lLA$W\q%f5F!{ hE#G'8FoB4 k!i(%Pjjjؿ[6n9gmxWPAcI !Z{|FgC_^*6Cң&\zej(rwl޼c,3&OqC]^d&.B!DS\z2J"H +C޽ѣK.ѣ|V }Į]ٹ#GΦg <ә4 3˿[oY`ӧgaB!(7VuMu{1CKfq{N#6 <˗o#2G=J"1%!М֒x/Rߏp; PhCY~~?`f#˓tb۱lt L2HcǎKW]]]/N4aB!7C2W#z,o`S:lө.v:l6B׃=t9t 99LmD5H;YX[!BgBң܊8?|Byc46lTr `֭t5&''Gp޹璛vV-i<œj>- ,8#.3~$',v ^ ga6G``ip$wa 8R~8… C!j^:۶QUUsύ>Gy=+)0Avf={V4.83(((l<"36N;ST #񹴲b͜?\|`ٛg u뭨dnGl<ΏE$o2`8p_2$TC/L~ 9/nd? < 'P#$ J2f3:"앨F-@o$whw$L3uyxCLdRgөfn>ddR1[6fnLOdf<+V ':">@m_0IwZG[@gu7YTqOOg[=_={ҷoѳW+S"=:".\… Yx1| kKRUUa82zO>ֲd-|1/b|t)JqHy42]>?<ˣ$l4}~!*~]$9 gțxnRyP?B]os%ck*` Ht#]K@5k < ~b2=3 u/~Lx~L7#H]Y@[^8GQe }VL8&<=_ęL&u6i6dMSSIl̦ݘigM]jS`%u߅!<=egs)G} FQsC`m=9|(b?np17.] ٣'v{:Į=9Z~χf#;+ԥf/ĥh=:@t"IgqGm#Pg}ƺȇ:'DC6˦i)0.n9c \"VL'@(u33u6i2YLI&u8eiڙ4)Y˚VR ߅$+?3"'9/IL'-̪eKʇmn'j(gux_MMx~DǢC8lCrD?:ē,L㌗i<^ԏ{ 2cK ׅ?%Z{=uRA\W ԥ7NUWQe*Ff3:Eբڍu퓱fԁCzU1JU233u6L&$:TigR6~3g.k>XoO;U 7[~f|LG55w"unj([:B:~Pi8Q9 Z8jЙAwKP(Ј&1O2b4zƗ{m7JC0=Pq+ٜk}YfE[o Vևmj(cRwBݎBg4㋸y#o!T'~^KVjVjt蟓;jQnWX)}2֕q>7bxEu.| 3_@Xa&OcupQ|3ݴ2L&$:l+Nlfs3j/U݊|g̖}nŨ+ ")'7w"u>YPmlݲOV;+\'+`G6ԙW$fxꞲjԙfle<[Z2oK;[>5rß_m MPx5T-2szR5u5(m HzjQc(E[ oE^U7a&OcLF>qT(83I+MdM2V4Lxo6g=bD7KU~~5[~f:85؅gqa;:}r(С|o?[+}B5O5,3ztFAA!6[sGه"?x92JC"$l<? S$L&q&b&)gWjGQmzQ"OvKT& ]?q*t/DR='U]IzGt#2Ǫ4nq*;m|Qq&iM6)9LI&u8eiڙ ?Dl&872G%j|;1_~f[pQg6C'YV PSS}P~0 w U*ں_a箝l޼BzNVqĖXm loPJߠăD|:o`!U\T)ᰩ~jDQ=Gk6dҍԥdr{'9GՒLVoA  uV▃#Y٧& quuF 5j*kGFg'ԥuS콎:0~uՓr'tpQBfg0.R8_{Qq&iM6)9Lfp2|o3I;ӲcHs׳tʹ>Xo2D=Y`'j0QG2-tw/-;˱;:R :tꚆ4B6Y((ȧ 99&Cl( XŨ^)PYK[0/B!DSHj+תFlr;L\z-Dxri񧦅h'75bbIvB!=J4+B4;2|i^MӰ-%!B!Z% * H($ YB!l6}c{tYB!E4 / C:!C6'B!K^KKY=B!B7zݞlGNjbhg{ v~ee;NMCFB!흵 .;0|6_ѣGq8͘ѣ~饌1" 2I~l/+:;iIg㴇y^|dEАB!hDr>Sz[W㔞[naڵ1~?[6ofͼl۾=6Gzch^c5N[{s}" l\7c}N4=tI~EQQQ͛M$k2Yx1, {|]]]͓O>oݏSO3f0aTF!Bav}pR+ IDAT=Gؽ{L糤oo|IGNNk8r(:ۉ3{ppB”^wݵ?ӦMK;?o9N_OnVՈrOXg ㍄_.Y| MKDa"̙3?݄aHq$P^^%|L8q"}QHTlj*ϑ4ov#qM4> & ^{-7~S-Z4.+h>Gsiee;(*ň-IT ""wɦ !B}KK߾}2G^Xȥ׍4Abwwwntޕo;a IOh(nOn۸is\xE=oeL2?.^~%}:t෿-˗t=s3 .jzio˖elu׋?]z*O?êUY~o=FuV~esϱ~zoIiz_g- G$/lufҎ4^y7pd˾{_ޞ`uD38Y \@p14Ix/0 ïD#ml^3&c,K0_4_b̵&Χr̗slƦ'휵 e~v;5,:{ hf h [YQ@NMOCrrB5{W _`\vt5r'i"_/'` p:6l(O<￿8e}ч<8A2ɩʬYfl#fϞ͙gl|\=D޽q{vm|mo&BuIJO2g Ya'Osu9v P7$<=gx1,=8x"`V2T#,9Q܇j4ېK ?̖y2IXg*žIzͽ~Bqh(^ ] Ѹ@8o@zkL;'7#=r y|vQ[[wСitĉK0)hL""^vIo߾gnƌn̘1iGgO?ݲ?i|jjjLm3iϞ5n,Y’%Kxꩧݻ7O=N9t5L9 T/O{Rnx?>|i4gn,`" ܆YnՈ]걝l?v9p2ə!ӁWPiwM̔y}%~شL{Ee9l+Bv^zm Vϯ4 ݯ  ;褓X쳴裏e㦍1P zOvˢ-D@?36Xiĝɴtlnw8.]_Wf̘Anصke=Kzg??<#南/c@ԥ?t!;|TCh!/ {4Lv'[T:66>$.yWJSD5^ 62>B~/n?Q''m Y^۠O!PvMбٜl!l-f,.r0 E4 MO!D=Gѣ[W^-[|͎;q6{lp4McȐݻK_ݻGmm-۶m&LMu]\.ͯ?KC=[oE#x}>֬Yw 7`g;w0k0:| BPtW] ¼y7~^/eeeL:eَ-߇bmI >O=>iCiG:=if󜪎ZW&L?f>s?n']L糖H= Zaӆsk ہiu__UcwIuY\/N[=t]3\9Tvq6ɏq_M7,ՀPt)><-ՉˀU^ݨ^~?ʋw/4 & <צM6kp7j2qmFm5M^Dm !D;bm2 .fzBvL6[찙N`N/Y~4l$qrwDw%ZO?/u?*qLxUẅ́ kl8t~ƌ60mٰi*wɤ*n[]+ǏRG:gDq[qz:Lڟ-[g[t0id"iju)ϗz5ן Dλl718"Aȝ`wp6w Xk?Tgˏ?O/!J:Zap@|ck~W~͊7߬oPl7LKu^HxUV3D52TennPa0d^Cuv4aUzFBc`^X2WuZ/V`t|V8H+vW_c,Z7q1N'={bQ\r%ѸfϚ].'&L{3 s4Ӝ< Οώ2v;'|23f8y7L8_5Ti}އXcǎ_K&ܹsYv c(**b`ڴ۹S'^~e~ \.L= NK0=<'ʸnt~9kXJN8{zۭ}﬈ dzCӎ~k]Վz+KNWƠz_nG5WԏI:Z巨fKP -',L#Qoju'F=Ӻѣk 3:\AݗLxubƅP~rd;Mn̍%!Vzs$dLԕ3UE4 NO!!p_&wI@Y'>us#HfCN~EEp8a#F>D:~]dQIԀFP/kHzH[ i(NH)f=Rٙęj>w83 F][BPW+ 66DiLxԞGP&]o2>u~j@RG 27;QˊrA]*iQ ;=gezlZ?!hZ%{o>ѣg/kQZ: `i$ )[76/By6z&."smN&hF@55Խ?O>8dG5tԽlߋ鹞 Tot6u'sO!h;H]no$[F牛ڪLS: virh$֪BѠ @ Ux?1jacc#깷Pwlds¯\ Lֱ3u2OK߇OG _e;5U~MPޚ"5ׇQ{ï{:a*ގKhE'WFTyurO4S+Q@wAf& hJq}ԈU@-jGE5+3 HO!9Kv8N+B۰9뀙kPzTw`"0uy>,\KtS9lbGi O^5s;tB!hn(B!*+*),(GBAzH5tfB!DcICAui) і~^_Y!BQl^ee%`0:jC|> ztt6E;!^ !Bچr0#x *:Ůetp00[sL79++Aq _b*$M{{YY#! e!BѾIr*,Cwއ@ 磼Ν;7g5k?C !1B!BFʭ17w'&X" a9x do4$Ӎ寷ma~?P^/_=+WiF6mҥKy9zN>裘Y!B!e_"^_z9%PWMCۏg3Q<{NHtVshoÇsΉ zq1K^EgXj5o୷1r(nO?~իt=o&Nlٲ5-[sXr:ug͚Y{;_sƍySZ><_B!Bw2u Ǘ/:d{ egRScfSϪ{k USmZ&.Nyذa<1^ O> aOpqbf=BDzOr0gy&FOs<`f)SӧLJH׹{Lϟύ7ٳ93b4g!B!Hܣ܂6;=-\J1wppAPWq~r*8!t̨F˜#^vIݷo:g%Kdz)zSO=ccvuO͛8a۷o7O7LEh(yB!D}r8Ȩ-WSU[_7?I O,:vHtv'TQ ;7FGG.viM||Gs=qOkq'GäGuƝ;Kf,^]vqo,,Du%rq#۝2|CyiҤB!r i6;zVeA՛\.\.Y,c#Ġb૝;(<'7]{ Se:N.wٳg1wn1Hii).' 2.P 3axnFƍƍ Bhiѷ_?l%KbO5v:by [VRB!8 yfF]ǥY?¾tĸ^ma̸ү.+AӮ5 ߟuJ[<7:ꫮ[na޼y~?^2u|39TUU`ۣu +V L ߗ,^jYp!=4S\L, !BYNg Zl6rr(*Ñ\ZYz1bfΡB!}KK߾}2G^(xk,]$zhOzt v0,=B!B^HCҥ.] [:B!B!hkFYvXt}6vKB!Mitf#+5kț9.j>֮-{lXB!% 圜+XhÇwoB[RZZB^~>999PB!%(vM())"Z!D3@AA]p=-!B!Z% eFnn.Zy<qhB!X6굦ix.UQ !4B!hCɁB!BLFB!B! ,B!BHCY!B!0B!Ba e!B!Qu]' V vv]FB!e @ ӗTU^տByy9;wal8?9N!B6Ò`0cĈѠ>+B4;2|i^MӰ-%!B!Z% * H($ YB!l6}c{tYB!E4 S!BJJ֐!MV IDATB!% eׇ]Gץ,D[z}f!B!Gut=5MC_h3կ__=QB!D{gmC9OdBGCA:[v&k۫=АB!hߤG|>5GpـPMFxaM:[˓my۶oh۫K!Bqr /YMww-ٰ9s A?lQ[~rz$B!h)^ӫbSQQA/@MM A !-A_-z(Ó#++_!! Nkqiq}>uN0 v޼kqi 2 'Gرhː!C8i@ӧNʉߏN⤁:d^rJP|^/{NʰC6t(SLgOo~ɜv{=TUV&]_K Rx܄BAKwB!B4V(q7:{>nVZKEu.z&/Kv;-w.]nlr{9/I&{ |/n Y=^ufΜ,kN{9,YBqr>|8W38Gef6oıcn:BO9ӕvz\\"fMٴi#K.t:)?|+J,{78|^q󩭭dW2B!ht]F%^7nnb?'wӜ2^h\x|_!lc*tHW]{-yo3cƌyxU.z'b^sxؼe z*~inƌm(~r%P޽/\珧$L݈}9\N:1k,ƏĬY/x9tO۳r{i&zh@ee%!B!2r5:.ṳɓٳgK7G]ѧ2lSC]4̓CvAqqӇ60`6g]i)#F_~Os< ><:ذ<;n￿w`ocmI ::˗/wwʕ+9)Y.L݈`f)SLJH׹{Lϟύ7g3O΃nW4ne-B!B6vɵ r:lȣfjN2y>84MQ JB>~3eW\y;;k&6i7˦/Ҥ۷/~ȑvJ׭]gtڕ)_#?̊+@)-YngȑF8lYxt[~ջ}vuQbŽ5^"Z!BK\z-rssqu'sw =sL>ێP!|wb BTVV2|߫m ۡC ޽{ٱc6mpcٰa{e 4ƘVa'=B!B=-rt[9Nܓ9Ǒ+p\ީzBvN]Rٹs'NdE^-_o^JVVVm6p@JKKyw9ii5z6l^  qYcuƎe޼wx0z׏-7t.袘0| GuzEYY_ZسΊrժiR>B!BHrK9].|AB6;3 y9vgg z}i{Oueӧ ͮjn͛Ǿoz)++:&ѣFoicǞ=k,0z%>_S%?8{6-j.\C`)Cgn])>uJ߇:jO!B 7rΦ2W=#vw9!(?|oXZe{gлwoz-~?#.>mٰi*w_| 4t 'Ė}#G4]/"᯽:.]ʪU;3f u 7ٹs'W\qy4yΝ;q8R?i:hzhyf;:?Mc. 頣kz䣚Z1j/3At4] l$:WCWg*M=ot=˪u ˆ4CuXO$Ƙ:Ǯ\]$-e#F Uun{dU C.D' >\~Ʋ./Ӵzg24Mݑh} gjC M3FJ|ÞHن_Zt?H4X$lxqEcAŬ͏zqhAE]yԭoÿ̘ՉJ+ogfDˆ *f#h2.Zx^eE``^`Iil8^ҡs{Lax< kXb+$aK9v^ X12׉}`[\ ꅕD;xo#޽ &M=0{7DZcp\].v],6y_1f̙il6rr(*%HB!NGYr(,,Sǎ^ci$7~S|GEE [I&pB!mtRoСCZ GB!BƒeFYv WƎ=\N'EExp:~6t}6vD!B_QldeyXf x~y´s;s;&9.j>֮-{lXB!% 圜+XhÇw>VMьnJii yHCY!B[ܣv{ڥ+6M/NJh(;vtvB!h14m69N:S[[kEBfxrB!:`@0Yivk٨ךq{pVE)hf@B!h@ ӗTI^p9;wal84q-<h !B!ڣ`0cĈzH9n&{wWe?ps7.U㊲9 9j.h%:id,+11geTcuJ]Dp EL Deq\Ar}( rSo^K9Y?ӮEѠj]ܣ,B!p͛?P^ShT&MI;GcmB!E UdU1/I쉓ôiݺtoI|||t'8y˖-#58.!@YUbrSIڋ=7akWPWW22Xƛe]P+4:]˰CBzZyB!"('p}aBM\?tT08( O&oMOAM,>gUºV+ABB5b_г4lNzzqbYvmcr (6.f='FP\\Laa՗^xi*<3$L^^sB!B U-yӫ>1\: s748q%|*4g_!/= %wTi[kW!!!?֮YAEfhތC޾[ҊYx16mԩf  Çpcepaa!s F )oXER1[,4o>=ww*~(legs.z/ׯV: +0h, }qm N_~-B!Bd̾6 cXzܜ;UczLFjs$?Ri[l l\<`V\7`Xx嗉=XI?Dtt4b 'Nd۶myV+g߾$'*&L`Ӧe:{ -"**+WV`VӶP|Sn+ݸ^/݆qNS|Zf !B!yE!hē4իwzGՊ?dbbcٳ9r$#G5kİdbTUeΒ ˿~8Ç"!!իзOTUeʕlڴXxINNf… ևy frs_%:z7z Z;),,s޽3bīeݾ ϳ/;Ne̘1lݲ,x7h@Ϟ=y?ZiEEE,]{rrF''Znt (իŹs'z^ˏ}ԷKefMAA?Ά~={EQhݺ5=7nݺ;B!BE5=7)}wޥKKŵ~*QGbYf撙p_(&i&^1Lff&{vGs.]ұcG>?V0gڵkWZW61gٓ΄'T;^Gq=P_”)SHNNFoSOUiӦw[f3>;2yyW6Ҵ[[/'!7eff7..DGE~oو;L\a"#wR\\D=Z\jj*cLfc=tLz||`͛7'99>\m[sN5a̘Cc^;hi %K8x cڧbt6 ohdذ8sle/6VZa0x֌W.[p_ +z- ݻ+m~ccƲzjhٲ%S @X8zdd2¸qo!*GƇCd(m_~xzz`0h!N !BQd.i\6@PV0⒐Pxׯ9Wdxr@ݵkPr4HHH/&NȪUHJJBQ|A6lHRRRO'o{˸իDI=J_o߾M7b0vfJ_^ɀ땖9AۗIoԾ\޴K F]a}/^aO9Ć.]/iޢ97$w֭\K =WN*vs/tppp!B!([N.bzX=Ӵk׋pIL_:R8h+VDt={РAE!##C[˖ݶ/g։L2UG{(NRg@TU#KtUU1Ab5r$c|Gtٌ(dff˺uX|y?0[ݜ5%KŔS ..Eh4oZ㶴_|ж;\HGX2C?OtT4̘9 :$N' !BQUc4=2p7q.,poM=qc,o'$9WpF |Cb1'WwEi^|hr:w Æ{a=>8{GҹSG lʉ'?"20w'8;}!C@Zjb㏕)@eX,΢V;IIMay!B!j-6a`8/l$/;}'(|-N(\ кݱ,[͛7mVsU ~tؑgyHs2ꫯf˖>u FCM0?/{^7Z|9r 5zTi}>!B >Wj sN 4z˩ 3Fg#g䝷'Fv|=72{>Yźw|>w.&ME$''3{ry>3ϦO_ᇃns%ij̛7&.Gڶm{:4 CBHKMc9t0/OפIcNLo믓c'FEE$q !B!6Gݣh^!B!Blv;ZUUuB!B!}AU6-B!B!~6{QB!B!hm8Z!B!of+hYz-B!B`*rB!B! ZUB!BQTT2PB!BQsBl:!B!2Lo {B!B"QmZ^#B!BuEEEbvGJTB!BQ:8.]vd"ο6#\5(*4:d!B!c0삊KZwb^XZaE +{dIENDB`luckybackup-0.5.0/manual/data/OperationProperties_ExcludeFull1.png0000666000175000017500000004556211717122351024703 0ustar luckybluckybPNG  IHDR9 bsBITO pHYs+ IDATxw\7a&lCj_։"(j j[[G]-LC$@rw?Nc$s>7o{}xr˅&I0i8cV]]mf3 :n!AP(t5v_%  2v_`4sU;0ڇ#Jp6m2#^lhJ&m꠰It^]Yf L< -ɛk+# 'g&t$acP̪*83B|>,i*^@M͊4Kwu[ BTbզT,4n1%i1L "+/+EM*kHdkc`0n ɎI+R*5i0{jo+#bKK?ܘ=2R1Nn->10 qobNGUVVb8Ng0n Ɏf"VF*Ub&y<^qQAQyz9b[[[U!s&[5B꼺f"o+aĞU8# L7^ ++qxq ?|?ӻw6^}&[5B꼺f"o+U*ִ$ޞK] gַYki^k MrL6K}ǃI0i+L@b"D1;w>ΞmjlW @[C%ܮꙫQ 1nqk 0&٬H;d0{VĨo+cWX"W׻aV7#h4s׮]Y[4RN:aJNБv ֭[śD2UڭQ׺tI? suuWJA&y ýuP`W_}n3Zgbc233Bڵ0~v#A'C j ]j 1]k{oj._]vCȇwEJeLL#GRiHhرߪЩcǛjiOPP^ԩS Uq<>..Tӫn}XW__^=&>rժ5kԫWRUEgϞ0aBm?˷W{ϝ;7pDB.\;oޚk]x?a֪^ #GM xA5ޒc؀ #(jݷjaBbn:!bWbYB8:sB&ѣG033B 9# Bð}Ο;WQQ42hP`_ 'jhY"7;I}/^|` :TUj輶\0q Z`_߈yRĤԴԗ/_zzxL> QͰ+g!}_i`|rtg=VGjyy޽aX&OlemcTP_4hߐ!Rd=Ǝkyn %wРΝ]vU \{%m۶ӧ̙3?uTQkǦGQh~pFh41!Yү7n&>|ݨebwr=dڵkFXC0==޽bU[Cݾuk [6oۿ?=:vȱG4a ={45-UUQ%'w5:::zBu~ܩ&@L&kʕ6lܸqӆV\`0 :|x-xɓ':wțAp !tu,4x`BB|v6daQQQn[ИxX\\Bηh*/((6ԿsN;wӧwQQQs{RlU^8k^PS:U 4wӧOϛ?O":u_ee)S\ɇ=hîD"𵬠:zV۲ySᄏ~QAէr>_^bo///7q?¢ǏyA4G4uq}6UXlv&&&ڙkLKǨ#Hu[dML+brFX$⑅E'NT=Eŋ%'̳ۛ J; B7WKq U.伫DHUAaIIz}5p& !mjA[GhݣnjDdy׬]B׬Vt9sܞ?|rx}ƊԵ[nE>bU!$U|_*'5{ye93gةEǏx3t+#j=^բV ^3.+FTWcΝ}thUs;vnZ; ٳ}]TX8cƌ1cǒ>X>٧OYm۶Q:AJ FMUE6.sԩ1cǐ ڴic\R+W+VQbJDJ}n۶@*h_!B;v(JvYne}[OϘDݻwM4# i~DϺvUAةc'D_贈B1vۇwrt`jW^ӻwXX_|*F3zt=T偁=Ιݳ?~EjYmڶȐWɋ 7mڤ*GmŨʩI{ӐO>p"tƏx3슌3C=Z|ys]U㡼JnmTۏTiȨjEQ5Hb`#4QdAh43٥K[6o!k~[ZXX6vXw_tiQQq-ΙC6L.7o\.5rꝌ[Î:L<0AAdyٳfIǎ9*6.nijT:SV?k/ Y2j(!W$[ g<<fF1B=Ԥnս}t7nژbgk0"&˃bbb"# o޼E9Nj,W^ܹsT=tfquvLܕ$po0<^զO#vGTdaïS_u-\]/KHؽ{7BO>\UZԨ9v1c48099o޺5[c[~I;DݺDo1}:ըTilG=@)߾utn5hcǏe鴎>xÏ>D[#E.lT խƊnA^h*WlV1˸ ԷqŊY-B4(]u:Tm8mTjV*ZBS鼺f"ŵ[meTym2# &er:j}܊D{ SۭTyufE;k`O}[_Ul6[V(F鍆SN˻CJ$\^QQAH.zu>U2YrD"0 }6U{yufE ǵVwVb0wU00 g.dʞ<~d. 6mx{2,/T>${ ,-- KSHYOx{mڴR`2HL&Dbx=`,bFhL=R]H-,, 棬ëX$a0p\^Ya/0 WVb8Ng0jc 01:f!P#+i~*ƧZXB[TW0y:fϩ+FGOp\i"V0YI:@HU4k+zF]txjYiȜQdHil=.]|zz{?|GGez.ŤPq:z*ѣG32aÇhuJ3{={_[h:{zy͘1ヶmU5.\4x`KLKK۴y3N/'M [@5󨎾ݻw붭YY Cݺu3DC) >j6^^>z_#ˌ]˒HLLe/_\_fMjjU82YEbbSBBB==&@냼/^xξowYpёcƌ&` &N鵞jP֒kJOOW2!Ғۭ[W ,-=z@=\f>6brB(%u}m֭lVBW^ZMwߤR iС}ԊHc#` |?BcT%/^P#l6P#t:BqN3ywǏH$/_|l:A{iֹs'=W@c3W!ķ߿LBOie Bťv;K,),,\g EpZ ҿ_OϿq˖-Mߟz0h ̻B z)9LpONJ>~dLŗ_L< !ԧOߩӦ KnӧMOJJzY\5{-ZBB&qW^aaaSձ;BW^&L`dB̙/^}RuiVڵk7ϷO/œ'OIHrdI>}UϞ=ChBu .0#F)|͘19ϟٍ=zom`|YڝwRgmm1cցߣGFcĢ:=_#BϪ'wS"׌3[^"ʦV"B,LLŪ)){vaٱqq؄La՛tquޫV/ƈE ÚK ͇]ښի322> 뵮jlb~7W 8|Ⱥ&D" .]"j%F۰am*:Oǫ;~)Sy<ĉa\V=5kLg33ÇUTTN1ٙ|UI|>G}9깳'ED@0)bۓ1۷w؁fsqպvjnn~P^^޵k׆ձF:M:{g>BLCTRRZV0kL=10!U~\E 6mLLL&CU0TK ڦMdff8uWQل AA#G8y͛h͙;{Ud}C]aQ~P=T9pBvժj..䌋P/)]ޔ#T=ڱcǓ,DtjwILHE—Y={$mM֭Sߵ{ ?<2rҥb3`yIaY=M iWylNjjJ``Ѓ•Je@W7/ѱ)GG˗;99i~תU+rƞ/ /^B浿-]6vwJÇka3 IDAT ;w{pYZWJUcѯ*);/?Z:55j ӡAz~\Ug!jպUxxѣjZC[nx_GwX,yLrbΞhUO *MzJ2WW*ԔG''R_~Rpkt_h}\^iaaaf)**Z~"h4Zp1uEݻ[F˖-RD5&A3"h֬/^KJeaAa\l'ڑOiZUNN͆a}QIڦ‚u(CREcE8Jӡ 'Z N/**ZZ)J >hѢ2 :E!GeIaa}%v)<<0oQA#1l3)"!{thΞ5k۶mK. q3h WW׾}R:8-e_6mX,}+4fFll<Ϝ_})Wq,ԯ4ϻ5: 8;]'N,,*NV4CTT[G Td8-,,ZhejV<'G'WW7 .D?ihA0PAР{,!ht8TVVRU377,ht;xkw^ӧx #*h4.0t/h4e@P'f>%x_5 jy`:߯Bo`LTT*04 Sgk+y0 8a b0mD@cP(-=,--HgYuޏ DKJbST'uR`2 s0@3>DzNe^^RD*`ԤL&,+/"5? ff=fF_ LdjHӽƍ;pp{o'TZ=`VZZfee]TX0'O2MeV -s>>vΘ>K.@ 8yDc, L*urr~ƍ_8TBjfLq\.cϖj#'Oyq8׎34ںC!&t =־}{rM  FA2,55ʕ/BvCuر^n̠f?kh'5߁WQEaϼw}5!ҌQkVOOjtPRگ|5R{LWըGǎf呑 TTTܾ}'))So`Yz4V@ƀ7ЇE/^hoodffOKt:.8xԨdI^^^Νwn0SǎӦNFa7)sF>lz;eeԩS^?t|> Ν'O&N #!cu#bdPЩSܿ1iYa؜s}eR BU8q鵲nۺ-22!,T_n*#@}ڶi[)j:;9..BPkm@␐7iRշ~Zg^eİ@*dan1vرcrŪ%K~A92>>+ݻasA=DZ!;[;r lmlUuQIPw.5@!FU8yfUV'+DLII zp~Ĥ)J2 `DȄ bѫD%Sv Y[[1rT0Yp.+F //uVZ5o|2`pbUU9BH,/ e˖ ݱBA5*xyz.^#A^wuI{ڊ&smw4jժehh}GVѽۮ]?|0stCFL5kF=_wyyy5@o*uF{3\9HRW8:9)Jwwe˖E%=[+//ߟA>YqQцTվw֭t{L\ԩS)idIm3ryQaFB11;JJJJJJbbvS|XrμUrQԛ[b 028xԔI7nܸ/%6`D_١cɓ`TK.-,,tuu۱d_tmҢ-[Ι;͂z鮩;G9rd*;;nu;{Y:ҧOoU!8"p֬YRczx7PQqqSNCը#5*ĄG0o޼Ef" e֓AFg޽aJ=_xAAABѯEu !dl%B} gebOU5.ײ}ׯ_STWA~UDFR^.)+ÔT^V&Hx)P y>x0tD-P=ې"݌@}b V UY[[I?'ۗ_omcSVVazoX ;w~G6vGB"IG0L B.+1\ǏӦݻwxi+˩jxbwfVZ /ҽzg]%>^qJ| Bhڵ)"??]TQ{ҧ)[{i:7FjT:C*6m4Y,q+k֬h6l𨮮Q"k}jӆ ?fscǎqY~ܹC---CƏWՏptt0pzE:}:<,rܸqWS]bHHoۇ\pI_ UAUcA!!!vvv<Dee`ɺ;:/$!Bz3|\Zc*Pg/j :}܃'M:k_~^a؜s{~?Iy9zsC;WRRTO$ܙT*"T_ ...ڐ3/.. Pթ%םqqq))jV(WPX@ P/Zp_JJҾ}yʻN`/8::Fv-[@5+T((gA꿤hB ]a]zv 4KTCWkȯ;R-bUUUq8X\Zw;: j#|N R&T*=~WPjBPQF9|C/_ (*y9).*ڴe}{LaAD"vs&6oޜ[]]鳕Vi=Վ/_ _ѳ4x{+ Ba:ѱV?Q( h4:WRIG:x<^NN 啑qR./,,ܲe3RZ %|C zqQH$R*RCQ+.\XR"$ ZO8;/]tϞ=RR[>t)SbW\ekk;ϫ>:_^%_h\^ hQEncGsY3Bj8bDllܔȋnݾ]-22EfЌG#HjjrÇϝ7O& Ղ"7oْaC_PhW\B)ʬ'Yc}R8*~VUU"X,_ xY\ގ 9~rrrE("H+ aX;uٻ+˓`t+kgϞ޽3Y^]Ummm^3 \ h a*j﹆07wsu?rPܼK9@LBCNHh4gٺu+>߾RNUҒhz@v515t:LGh\ @3@ mK4D:L*rS 3ص+BQY\R%)eT՘\ =ŢOU88PP"Ţ}{ /<<* ysioiC3T*W'N޲ub WnXFYݽUuuu}O`L0Ύ߰~ݧc\ 1G߼q,g0bL L4Iڰ0GeuyaE~gggggg7~8w'NW6av!/ (`Wq<>ciSma3gKT_5IVbbbӧR!…SSҒS!&t~ 9p4*~^%8::NNN䌛k-?~@T츊AٽÏ>ʞ9sT*6l~[.)BB;j^_mk=wᯯ\`mܴ qdgg_TTLʇ =r(BȑCj ,*P*2ݻ1ukDHīW1Ufff/DoU^677WT"kz&:"Hݏ=/D"Q\|BN+**;nnfQ(`zΠ,*JJL*IOXjyE%/գƶx2yr\BªUmmmdyEF(..nb \%δ:KBXT̴НHw숝2u4pݻwUO Ih9 IDATuOk}!0Y?._D)ʬ'Y֍kJo߂xaaaBٯ7ryeYY)Bb%BB"kkɓNNNpuji^A|3ediecckme}d5E[?{l1p5,hbX,V]$d66t:ٳgNN!!Bɳ!D D-,ȿv"'G$*Bt&( ?EVT%\򢰰Uo`n<.>~ذajE||B w޵477wus?v옎xdBHVDR]pqqu :d2 B Bu…SSҒS!&t!T\2bdU}+<ѠV66 éHII9g*.*lQ^^^YYinnnѠ\Ӷm۪JR ~MvL@ Ie4Luَړ:U#-Z@4d$<>}Fuu56vw^i9ny/"33ssϮ^677WT"hTeK ֬qUUUOcΜ9;*8 P53.>DTR"{i!i;r S;4j@'!agA~ByЯ{vYdԊn-fΘA4NGEEςh4ܹSX[4A T:m:;o84- EnΧ:f޹Zh\R*YOFݭ#!3{{>P\ ?1ձs=;=?52 IDATxuƿ4I(zEE1OTTlľ q93?v{f pvyߵ̬gk͌@Npk.AZ 4hРYAeڵkˊVW\& z}{K]}=)))6r,֬9(^_xkrթQ>YMFB!צM]_HSEFsbjA۶d^>/x=9,;/m۴h4'̄6pbׇCZ`VMd 30U9CWZV(IjY3@_IFYz)|RZ6a˪/ (KIi cț pv}%TW}?X0tz238S0 D)$I; NSN ~'lNGl<1zňBYMFCj0lWZVA- (-+˪QЈE,)RTU㧥P 99IB,2q0c+D;Ec9q 6Lt؉6EmOZO=To߾ <`ˀ̋${: 5DQ NzeՉe24fuY5e#ԍQP֯ƒ07˔S bHqKBENSfhԖMb%Gqnp:ncbc#pʶrWVEM`00LԐva8ڶm@$,6il:,†JQTmk S2eNii)t1JM~~>&IuJCAAAq0Џ!)!$={TC <"mС;u 殨`G!n׶Ɏ;5 @yU-nll۲|?Wu_}KnvRQkVje}tޝtl6Vջv222ޣ%aZ'"BW{2lLvjO$qƌCǎ +ˌ3*IoG{V\ܞ'}۶1D9rڶ m#/5e}˞*m؇ۈq :ty SĀCÆ@>m,d/^v)]tK\v%ݻ7]6qp߾}t;hŽGwNIIqЗ;;RyW4~۷=nӽGܙML&*@ZZjHE$ߗ9PǗX]-?ѕ|?mbc~c)v=jE\"{G#INV v vVQtrGgDQN áV@SPA;aӥ*b $I&d2ѷo_u;_~Y3n [֗~m3Q[Sq}eĈHn/|Wb*{jָyV+s㏣}pq|G^w  }vt҉.zSOa9rm۶ihۦd#ӶMÆCq{l6[f2fhx9iҿ |tV+w̚ű}zSTX}zGz= +e3gҧw/ ӻ}2VgF׮]PܞKaA7w.e@~)*'?ŕOO;r5Wcq:X,̚5>}zSXX@>61Yf1':t-'j1bpzL6~a)*dؐo5^G "_}%^2Cl2-6mĄ ׿n[oe_dO>Ç1u DIR-Z{J&;P4|6I9~F)++#=-o ?7_ʢEԴ4@P?pW]0Gh ʣߡ̙3q νw^̌QXl僔ns9SO= t:zGqŹӧ])7ȡHtkuyy9p8nuuQQ^$)"EmGۊ8Ot}DzoU+W2{H̔)S(ٷ'6 b\t+)l?."\`EEyy~`QQ6N;sĉ_,,;p[no\a֭QXI(/ [o1iz۷do<}2?ϐC'GYH.]X}nO@fro'xV٭x?xHKK7~ ŜСCY!,V|)232Xz5.rX;y睥pw#+/< KOi߾=-b9\3Ϝ]}9Ùn 7W_ϱzhǎ^CJ0=Bt G>1w\.} ,xs'O&%%Qt"26e{/B# :u9s;<"X"L # !i."ф-FhFIr]A8:vyW8oy8 <=#z8qc,y۷c{׽r-dffr}y-K16{Os1c dQd)~qGCqlәtH}d>2P>be,YW_#;5{XQҀL&e_P@l,(Qa7;N'(a;o8o_fmk0nW*3Td:U vau#!K= QZ>sٯΝܥ V)O.#`ٓ?;_{Lt֍?t:,^SN .baAu޹c']unw0u%\~mxKCooQС#+W y] PRϯ]}3#3QǓٜ(J82^x!?#Æ %% {‹. i'P]]Mviժ ~'g}?ww>#ؾk':\rɥ\~8No1O?;q:CQ8t=(eeeL> HˑȇIX 8|ϛLNYr=wdzz2h@~Zn͓O=ů4Bw!F S^q7 ԖB;5|)m?AEyYqχPܵ5ռdggsEVEd.]JqbvAGƸvw9+WuVnVq:t5N9apN; L#8}I5y2cƎe t0a'ү_?:\ ^dQٽ;3I(?|Ʉ޳vC < #Ջ{^މ9srΝ5#s6l{v`y 1)ɲ7 /K7=# ի>K͛پmkql/}%Z^zdo j΀~Cݻ\dQ޺F\8k9$\ve2~<ڵkv{NgLdTUUѱcGǟ|̞{Ysz 1O8&V^zꌅ W^,\ 7"CC۷oo#`rME$Ibg+ge_rÿpP3&Q#5zN0a)XYg$lT6ӘPBD8"K6Œʼn`mԳgnu0$Q^Vl[l6qֲk.^}u/e}u;JX^9 \JWRdg^.;|6yXv-?_m۶c+tA`*,wW`0RPPq}R\\Lnn.۵ÔA1@eaz,֭]ٜnf~^,uBǃDewP!\<6Miv'Nlƌ)Oıc\q4RSS{ٳ˗/gȐ!Έ…"IrV <3^t:پm;vm۶,zf11|^2x{iӦwGwc;޽{T]GC$n&lv't"FѷMo}L j7ifٽu֍^zyyt}/tW^]}1ho]xܼڵgWS])Okh4bرwʫh4rбC1-X^ Yn4peee\tEWWW{;K,[̵n7vcFz0 NlV+{(wOGؿ۶y7dxg?Kcnt: 82= Y$( ^OfVׯ9n׬%335^Ώ[˯w.*Uۇ{Ƕmݽ/%%lksCܫ(C >nk++O;vLC T#izVٍI5AzzLEĪM B{}`K 4ͥ۶ѶmsMiW1??CK-gW?jmev6jdׯk*;mݚ?6l\W-_ <Ȯ]߿?sEeϟL=X>LUu5F3nJh׶_pY@;r:Nnv}OΝ7d~)֭]O gyȲO}]=2=zdR~0U\w!HqYg?99g9 Y"wC_AﺡEAz)g):vpm n9nڵLv999|&&qEȲL=xxصk7}9s1LAP ' 8쳹⋑$)b'yA@s1>*+kʐa>/$ypAz 6QCx&T:y)*biS76ԛU8/W:7wQn?W^;~o۶6 M1p{aCCpNFK١C.r *9ܠ/8̪Ug1zlw[D@IͥN[9-LziӦyS "`GZZ*]voh$## F^(,,-Tk#<9W!lϓ~ )) $Νt]lEI"U*<񧜢y_t,8NL&v QtM&tn_ALӹH<=S&FNYtXVƌͶ[9p:wu"I{aٲп?uzDRrKΝ)HHc4UG%,>WQI>(>g1}9x+N<$&v(؂9im6_>(IVk8}(h{V烅,qUc=Fqq{"O 7ɞEC2'X:6;lLxKD0k&VF8a߯y$r!ۗ](c sHw۷/]:wV-׏UmB'2C zТ&x*Wr 嶍gN($ʪ`58"C)Yx`ۀa 4o+>A?FDDD>WOó(PSaY %$(Ԩ޸)XGg<r O_d- (I}OO WhxOd!(Y~_E魈Z&72s8J:)&b6R9X'K(&2gWq ߷ [ۈ _↙Ag}GBHjnv`/x.B?AlIs:uka'u$O`-WhM+XUIg#G2:a#0҆.bb#OQjC٫@9>ī>91 Q>xҍScIKJĠLaXُ Nē&n  > $a|$O w,Q8@1s+*_N5<җ;脮(dg{剃3)d^m$ HБeӉH$mADO0qxhM%kJОJ됝W\cd۷5${} eYYGY3 G4s#ԁ Ț܀ UE}esϽq8iۖ3gy,yםݳIԩ3s%775]4d0z*?=/Ft)jۖY>Bnd]: \@NX~=<0V AyySLal۶ٳfaٙ6}#GՏ?sSV^!ٴi3 8M6ӣGw<,Ne̛7;kM3`78l1m!!Цfhthѣ;=ztg:TRSSyGq &u6O<|h# ID>%á I35E?q/(`5lݲywi @zz:?ILb䈑 >[n%~;f#/s+3p CD08̞=G>ʷ}pA6|mm-7l`„g(w?]1c Z@k٨56(# nfkH{4AO)%b(a$ 5I@vI13f 7xvݺtSdffo=SZZlu… ٵ{7֭⥗^䝷62zYj8ƝNKB7 $ H5%\ϫjՊNǰaég)޸}6lHNKPk|ͼ{}2Ӊ^ɩsÁdn鼟'΋,pY ѝ<6uA%AzLJd<rCL43yH̸qXiN'L>>p8;y,sٓ56SeU,3fN'6^zc5u$cժUo/eud%r)tؑė$ˤӯ_?>Cd`Ν\q޻wҕxlf'~O?E{=fuk&h޳ ʡ  D$L-pRWЂse1cm8ƎÄ&0|>,@`3kLϫ;v ]|fdN:$N?46mĜ9sb1t҉9sPבkk~f|̜?k\wut҉\9}# d2QR?>| cƌ᪫d}c8 Aύ78O?0zh>cw[ZȾIhbFC2!KWR1psNR]XAzO㴐hгgOY$hС ihR9%ұcLjWkFgbd 'OZJyVN1]1Z:\BG&5~W jG I1DB+&4tf[: } Р! n3-Ȅ#HFq: 4CH4A&t4hb4q1 b&t4hx4&R4hh2hBGD@MH)&D4h8b#tb=ЃAfmנACEb0P 4hpB:4hРA#ѠA 4Є 4hРህ&t4hРA G, ^ӜG@sf 4hРA} dYtt:a01 }K4hРAfFaf:7,%|Ah)/;ٜ#5hРA E I]]-]vC${cn֭[`n:A 445tg設ֹH,I1je Yh:dg4uH4hРAC G 3(TWWsTNKHNv6Ո&ԠA 4ĀF_$ ՆaG^p:ZmH^op4hРA5}!v 4hР+ftsdg4hРA:ѠA 44C94hРACWkB Ϗ|{% 4hРA=VNH*2|Qm0iFʓpTdlL_q`G[O֌V—3R|\:Rom4 \ρ};..]#l̫ؐSeZ jcנAZ# v_}5ۛHN'%9^Iׁ,wQT* HNe$:ٓ/6mm}THJJ )))zf| ƞ86ݎٻw$ؗ`W^qV 7bZL?0l tpBJlcmO'ox>iϧck#̟lw+/F@)_2ҟM'x9mq{8kʠҶEE]~[ O#@ٲAg %morJ3V*T`l wt)+Sp 4hР=B3 TI0u:jkk`@dA,NB\FHz.C'Jo'ȂYe"ڶի<`[VuU~ae/<أv\x\~s=\}Օ<v;߇NtPԦ zFc_z뮿[nl1t:?|[F9&?w>vf=wL:GO|ͷMHM.=_8:@; vsd] E*wRJ2BXDwP^=Rמ~Q Td_)W"㔸.NE{&PЫDc*0+l#P}#g^U-;+$Kq] ->I# `JVo=[,fcRWgjjbڰXXmVlN+Vņku:9i-;K=BBUUtDmTؐIMM K^^g͛oҥpǬY,|t!sf-~֭[s;8̳xGyɧw¯ٲe o:yyyC=8x$ go}Ɖ'ŋ{yG*+8{uQkAՃծ#@jhi)CBWڕ$ߞ6653/ tU!3R!@ ɵj1ߖRz; F$ ~v^N#!ԓ6 8 D ȼ3 R:hРA 3rWTVa4Q[[ vt=^BA@щ2:D??(#@do6GedQBFE'VMVUV=s?ټiSXukײu.g٭CenK/&L .'?AO>z2330p XVEu!"qs e<=Y3.S,ؘ4@j-)I[FR>O["pF+Y2'Fw@8oD寕#vT}#4?¶m xdGiQ[_,PT%}:2gjV+*T@A#e7 T%j2E'Ap3:t:IB'DDYF Ȳ, X"!cxޭ]w-{I : K}=]viHL^yU:v.7L!԰sNq餤p#ү{YlWf(}TP F=b'vଔbkMeuV˅؇4gzZ@_pX|(KlWE!=/Sdu < 6W|E t%:_I6̎,W'T_&`1 4SWjajhd?fRobڱ;8HݐW IDATll *+݆nnv ͎iٰ;\eV;$cNS1T9EImm | o:^zׯgʔ?N;λgY9YbN'uWbʐ233ة˗-Rol6S^^Ζ-[b۸aGbS^ l~֓Z7"veҟ'ƸބP#`cSl 1# ~2!)3Z,Y8owNteۏ5XԔ~[)AAʹȽ_%idi̛7{ϲGc_PP/߿>娱|7Ak-TQ)@f,K\í/# d_șadўANGZz:kVLbK?YlGGb.笉/`I1;u::tnpԻ2%dNDo0`4o)*ʣ]ǎz dK9b'EX-FC5|pJ!%n l UqdTϯ ϭ/#Tއ 4ă&\͖NwLx6k={K8*f)&RL&L&AFFSf20 MdfO]}=_}m1h>3$Il234hРAdI.#7/XvCb>|܂"tDV $"2 NހDmMfqܱ};aͯRYQF޽eMhРA GrsW2rT̛o,nc©'SY^?4Z䨣ZpTWWS^QN}]Цf/\E?Rz˔)bN^[A 4N]yG$gRG%ټu+7zߋS?OUI᪫3vHtݻ߆olۼ2Ʌ_EO[1n@LRJKAA _6(ϱ}'Kז-1Oy8cOfw8p8 omc?vYm }6>Jdp6e*1eQwl yFom6mkq7z5 iV>3F a|(-e<'tpy?V0l߱ʺYnޗt` ЪOy 1ȡ;Oe«Ƭ4i_~¨QVt:1m `f#"ϭgdH{*?uӽwMYۧO W/ ,3((hISQ= _+>0ÇuJv%d|ϖFN?TWyLӽd@a/NJ̴+j9i=0ʣTx۪S''{8t <\Y$ Y/5oyR8d+K^*cfcreJ ў4h i$--?.C^~M[N;T_>IgIcEFbǎ}ڹK]Ml E$E'c4 :@St݀cba+2_~. /˸/zؾSrwQT]~fkB1D@h{U*UBo"E;XJtBO%I6}d̽[fѣGOl"ࡃX,Rn]ǽyݺu8a"cǍc׸z[݅H^uNJniٲ%o!?6(%.hrbS㈉Q"oT51mZJƿm]ߴ (ѺUgΨ8 ))?ɴiZx4^XaOy>\EH%/LվtmS+m=7 HuϹwOA~A,YMݺFZDPC[O-ղ`7>jw 9cƍd={=mGN@ XGGΗ?W/ȰaCYh1˕C9y4={tɺOЪU I$''CbrYSA:OlHKjRB)Q L2M4oc߂Rd"߫WGt-k. / ׯ/=ݻS߶WՑ#G6>ѢEs3ft 'Nd|;lVILC=>}uV|r|n$ ;^ 27O5 Ģlڤ)k٭YGoPx1e/wx՗|?81;,hYK\bΌ1<^G'(k=+WFSZ_ʕǴo \Qzu44s՗R?NiOFJ cW'Qէ 9U*vm#!֖Mh۱ܝ^@ (%u?j5ߧs}8n47lKǵQ|e 7nݦ^ӄGVP &3h4ZznPQ'' * RPr+f(Qi0FܟF`08t o5͛61o\~7/_edΜ>Mg_|p"FIZ ɓ  С6'[l{5k$>޺H\n;ڭ'ouz\p/\j^%rZk>fsǍ::'s-e;v˝}kY֩c!\e]lvmk^Jv s({' ;TvGV6ͱj63}<ȸ\ӕ|IoK>M%3g?V}V@ ~VKu/Jym`7;{5kPBySHKK *%~4 Fw-c4FUB,Z- 5P)HN;j*8sU4i҄Gk}wp3ggXzcnj-ҽ[wGٌR`pa2j \WG.!C]y$)|} )S\?Y?ZT oo٥5Ùw&oZuMqtv`v\KKeh4r<S GG Aũ몠ErO@ AT1<[<+x$OQRu%"@ @ (GG ARɕ+Wjťj5\rR,@M/;BBsz`0 DVٳgB!! @_2[jzM;sJ%^xx㗝ԬQ7 _\xeBn@ )Ŷ#I .O/.ł^Mr)W,6G ( |}}j5V\z=HT@ I\ʖ $I88@ <`cG8@ @ Rpt@ Zx@ X)utk蔤c,˲u,˙LaK9[Xkbe)SIvŶNvq]3MYAV2WA'p.ٶ,۵;wPWvi7Ϧ[f|GGIrĞ{u;stcIΰ^$tkЙ9s 2RlaÁZea$ )㍜ŵ鲿[Ƶi$v3)V+qm$-oWxCL}vZJQ,Ŗ03-+G8.3} N ,~Y|bB`nAAfj42L3Ɋ<_/;=i&K4[Ռ4~_ }AzIIJ$%94{ʕMDE1sBl_~mV,Å jڴ f/ GI@ wߖWHydK\LD!sD*%~^SYD IDATػbYW,s/:͛?穧֭[̞;h2RB9Z ozx`HOA8yo&/FefΚETu,ʡ;v ҺMڶmáCybVԭ̄իGΝ1LqpI>} L#q<ׯ/"3ftOa&1'>!uzEXzcۖ(%/f`'0cfS?H&Hv)8A+g&""{uru{<>#U4mb`֌5(V%5#DZ=?>]Ct_{1@S=E\qX( 0`>Os+]IN=#PaAgR I+oʥb„ n`kҢEK&N#Gcذax1ϛG!HLL, dkCxF 4K.q5<<=z`;FL2|WٻST(0<o=ZI8:a2Ƨ轼h3;I'3h ۷/,Xe9{_5o_||?ÆZj̛;s9c: /pѣӦN!CsG6mh3|ѫw/k|||޳W$3\׈X8.~~6oͽ^/so:fe:o$ &*X܇i򋎯wY]6`6K|.~F&<<ӣIOrYͮݞEbٳQ?ͷ^R jSPze-Zs+]1fq!^A ҴJiIhnxN ʍDyk=f4 WܹsW_y Р~Nʁ0|07h@޽ѣ]-Z`ĉ\x^={rqjש_ 14EڴN5-6m/<,!hzy7oXf9”ih*e8v.]b𾾾t:ڴiҴIS6thdю _>**G}hZQ~:#F0{,~;p;\8>|h׮լI||<!!!9ٳǓ7hqg=l6zUxQ,Cf]}Y?W~O7CDȨ~VD[҄^\CJ> y6JɌƾo^-WIIIǟtY -[vtYUqqq{۷?[nsY}N o,ή];7~~׮8r/\dI{|swؽ-Zfl,'Cը\2^^^\Pݻ^$fϚŵk8~8{fu[EB:Pd2gYZfgNa2j ?-#"oLjJ _{-G9y]Rhz⠄<ϪOI1.>?[T oomzwJ zХK2ع˓;tEb jk9޸d:4N{7k+ζm:v^@_GG$OEVw9[U*å+*р٬q C P K6miڴ))) 8%=j3YgT\wjqAren cȲLV,[DrRoy;vVk׮ȲL=z41YȲLYf5& ki٢Esm۷uV6?q ]۶T o\qęӧ1;~\KbD[vmy%( *W6R obbl.}bc0>-R9$˅Ζ^ܼd.kY[,X/sI k7^@ XBWOm_#ϋR09w.gHM%=6( nt:ի-[e˗//f2GgРAo,|f+f8m۶ceFF#+W|jކ?HRb"_}~遝^ Ms YT/N\J;>}eVة$ѱcGv,Rb[6|8V˨F!A>}Xn=cǎct 1v84?s#t'aY2=FV*[>zcvn$G\+m~20h;g?yn^^2O=SFvWblʐY4 YW^N`/ +$W^;%wd,%;D24iʹsj›Tr-!A*}v=,CpmRؾCu3ƌV@ wL Z]_ ^D.'UuTx$@=j3*c z%>i0cH7Vl>c&&N`ҥh4jONϷ'L`Ȑ!U*ʖ+s~(t7n&N eK {: ѣɴn Iҥ =p3N ;(BDy+ҡ} 0s͚=C\l,Eg/ocHT`ih׮x Pukyo1JT6r挆D) mBjČYYݓ -Qt5zY&f{zLrsˎ ߻=^f,׋"_$P~=r :-OO(臷ZqysҴiSJbBk׬A%mVҏ @ !amUPTDǠyk<;*ZΛKAe)7< <.n̝Cdd$h45m.2ZwQT( ý+rGG g?vؼ&$W IBբɓ<ݰ>=U3ʡHJJAUyfyШU6?VMf#Fr+A@`cst"8JNDbbe1h2@bbfloРѣGwnݒk4k8`tӒk{9}MQ#?󚦢8^eYܯ@A\\-[4w[E07yP|D~hѱX,c0UnV@HZZzg?~v?fΜɞݻDϓX$rӓqcٞ&o"_lCQەz_r@W6lg6l *Vi%mCEboɍ4NŋQԴ>ewaX-Ir=GvܭШPXLJVEҮ];.^͟Ӣemʅ+W.ZF^Q*ԪU+0%0ySZeڮ֋[5@ppp ["xPP+/5`fqEi޼yqL܎|JF % 9Հ%!=yࡔP)H u`|&@) |ܺu桔LFW#\ff֬Y :[hU^^nٲիVnzy8q5kŗ^ȑ#3nCz: ԩS.(/"۶m]v׏˗pFzsN̜14j5|w9r{1=2s!m۵chZ=ן'zŋ=ʗ7fpΝ``0@y$>qfS癇6 /8}鿐FaMҝXn%&s#9r޸Cʝ_`Eoooxwʻtܙ9s`Bo\f8kwŋ ȓҥ 5{%K9=;иqcGd[ի:u*=i֬)K|y5sz>EqfYԨ6ld͚5n:uUX~=cnj6or w{*?Ldt>|kfDFl1sFvלdfWIԋc^*?φMfͬ3s`tڍkײd֭[OjZ;fdETT)G[!22/dΜ<֭{.;uW_ç+W+YS?M5ѣsIL&G!qcRRRp̝;K?a̜9;0-2f}qk ة,[ شq#WcN|RXYliӆ{b4Z۱c;ڵjESܬCxvEVqٺe *NeV~HXcS i8 2C *TQ)R+k(;\pE-y hӮ-2PcKfܥCqg^n+d׼pgWqԋ&3wWVy6Dj DjMd\Qrr2gϞmv@`2|a;IJ>?4l <Ӽ5y }`I|2|kPT=z!C9Ϻu} Ƭ\Y9y={yQJUe-#_aFoЀ_;u.9-)))\8VZOWa28|0֭ݻu[!<̱cx'8vF6lv]KknV^ݻywʻqQ/[$I7ի9 Ym/eu1B d51-*x(xH*hX L޶TM{z\|O-'$Fq >L&y k#p]bcb rܓ3suN<ξ={X~=WrMC~* eX'F!o4P(0 Y5r>>hْF IMM_6o63ґό4)Jdqn6/tcWdXE& Yɓ<v,f32fѺV.Hs'K8n+]:wq)R!ݵF RY2^Amvlܸ?OiSk}7Ria6*Tرt4{ޙ8RaHw%**SNۯټyz?Xhit<9-v'?%OPP͞iN IMMenuk׎];w@ tن+u]WYRjU^ʻ?NX,K4n`j**}իf6W|=U׬Ox9}L=m.Z/sf3&D~޶M61hʕ+0L$'%1tP~eKܼIHH@<͋tygCWϞL2եšL&z职L.][DGg'7"ZFnۖ&֭,p-ZdMX,F#k׮ĉߟ6m7Z"umK䖎k? k׮d2a0XzZ4T˼pgWIԋc^ٰc7[W^t:z)~'CIJxwFW\رJ rUpcF_Σ>%\&Mظq#Mΐ~S/[NXX=IKKc]4m̡g@e;1d0bcbh޼9k֬d2̘ѣسgO6dNnݺؾk׮1ꭑ:u>}AJ{kg7"`v[qrtBE!h_Z͟pvLJRRm۶o~IE%AW!Oã,o=UB_! eP]P۔cǎ4i֭҄۰~Zf̘N6l&]ҷ_?7KN.qs ӲeKŋ /)G}#1.]лwo}~nj[n :&Qܼy#-|OGџ43vJݱL3:zծddWՋ0ײϳaܹ3۶H[:ruIl߾.0rp&OEdԩC=w*{6t(={ &&^a:w?os8JÑ6[Ѧu+ڵmÌ鑼ƛԨQ#K#FH}x__,f3ÆpoڬgϞ0կOٲA֖!C2~X͐!o2dP70ۇAҰQ#:t萭yeٹ͸c?mƌĉx__ƌE Qܺu+[ԬYVϭ-R'ȃ_yvmh;&F-[kЀuW3HINqx$_Ltt4|liYdHNϯ"zx'm/w민3q"v*aaF>|6l$7l ::7|mRueXhyIMIu +A1h".4޹Æ6f%"/,Ʈ];ԹSaKTLj IDAT*r j f@Yexh5k.TkT\7Jeɒi9}V//=Ǐ/i?,iʕ+hEUr [* T(t>}@4Z &qbILHe]XVӧ B!5j|6C xWx@*UXن<::q~,}EP南۷ov͚ܒl6yEΝ?O2eFPH:@ -EÓʡ$Ξ?cGWlPe˖>Z)A܏ݿ89:hy? >>>h4˪Ot:=Y48|H̦S( b]Tr,_eWM#O 9@ R@ (E@ 2#@ @ (6od9cUIn`|l_"9cOS nd>$2&s$ Y˓lXz}$V6=pܓ5:Oyn# ',.mW$ @3<y{ݻc*[픝4%LQ޻/sc4+`Uľ"yÆukt,^m۷mv> mκekq0$&&nOOOƌSdJ2-v:M*+eX:3deV8M//-K`NJ&x'Nڤ {W*GJEJF| J UD ۳fg T}t{QCoscR3Cnڌ$vY@aEc_{m$vk^:=^yl1r;6]J,2%LdIS^7 ~p[veX'.q9.zɦ(HA R~ L>F”-ɔ& <X IW t7h ^z@FJIInޜ6m(;a^;!}Li}x8") S`K:S۽>#Ne/ļ($GsP[1$qqÏ1ͬٳ8q <&M0|H6lj:K8:v@֭8r(g͚5nnذۊV`HrS1  2sFTBHHeFz|s޽{̚9nV  ))_y~1_\Y3HO7`0yNK-$?mϿ`E.?n<-[ٷw/cǍۛiSѰa6 w)4]BR0ydBBB}v 7j(vڕ.Pv-kׯu={ѿsu^v[nͶlo߾Vݞ>}rn܈g^\RW^٦bŊ|G F#qqӛtss=L渒d!T8zpԩӗ]4nđ#G0g.\Hll,;v$&&Ү];8@ƍء#FXFMJ3HlhNz.7o 3Yv*ȉ}UzZX8v _Hiޜ&md/^{ rJyg<Řn # 3g5kXv̚=+23w\}֭O?Ͽi2m ]taժU,^ >7,pZ0ݻ`4ضmw͚7#9rN?d4i4DzʎMOի㥜[=.&O5:wfZh{-d„|<weYM6fE̙3K?R.+VK.X5k0z[,-HwNQ<Ճ>,e'ii;v9s0|*g9ѺSL3olø{8Ґ,z=O?5~eHq+渦WT׮ar(RRgnGN#c 3m* ȷdrNqd5YqqP$&rr۴c5O}ofɹ(0T*Uqu:ZW^!<< EÇ1b$KgϞ֗2b^zYۼNNNsi2eʰvmֱOIKhsQ֭ˑGɩhҸ)>Y,˜8qc载Zeh@DD3g(P7o'ڵkT*"^AAA6/o#<`p]M&bܹ{.hkv䥞FQ<ՃHs'QfS X駞v8q1?2gN77=(PpxW^?~6Ry4RY[puAʞb\&)-ՍnF:ޝ< =~%f{E?p3ҫQQ@ ܉B;DOПD"4 M:?6YS6f |߾%uYhv(i>CQu[WyX|mv97_{L|cٰ{p0:(~L 食AIY]} n\hG5o6"dZ 'O#[ҭ[XVrF'L`[j2TUoILHzzs߬LTUK|/e̪+ҥK5+~)vŠ+K`` jŦMHNNfLfгGOvm۷mUK.λm׎ ϖMGU sԀ=z8Smj*A] [Bz{p0.pTpI2MVu'Li{]{L&#aÜ)sǸq㰚-׏ۑ}Tz_NGbb"'OGO8!8 '4y2,GYmLUU1LlٲW8BQcԈ[WB\N>O%Ug}ֿvU;}<_Veė|\ q#mSt\j*OOtO s"?y)nSQz)Zgw~ :Va_y|p_3+&><JYsfֈ+:EL&bbb]gZ-͛7TZ:S\G_ù9w|߫{-#>>]0r(NOŋӷ/:ѧo_mwAԉnGx=ZjW||\ q#QO@ĉL8 8'&x":wD;b$:Ųhb-u1~83(0|Slذxog fMo2կ_ :fiԸ1'<@ynz- V0hMώāYNz `C]yjݺ Q.CJW| %J4 hԨiiie=o|ndS#ǤgΜaɮ;Ypb&C%[7^yLY!*yѢY^W:tX_3t g.m?-^\*ݿާw0:7p"6C ԩDDD0fh-_Κ>e;ѣ6mbkK~jӺ5[6-I%_UU쓲:>2227>z""#ٰa6l(^!6Ԩ+:/YkV*x~b3jU+;gN̿/ѷO^yo,\l֮-Bvח0<}RezWhԨ~!}:o^4z!֭]|m>}X2n-ט>}:?Xj%>ؗ˖?dʤI}ٝrKIL#^>x}Op~i}i7*믿o߾^c7Xx /_̙39pm̝똅x%ZY<Ÿ.}oϺJ'?/ϣL/`….gt27!3kxZ%..<@֭1}}w{jj̙ 1 /q[ci~,^zNχPxGOt͚5#3+}q)͟ܦpT4O?\|~^E3Z%f|nSz_z1C??9~ N9*;vuW^y¼[hClpwz't;G cL,b:p1''cǎѳ`Fb,5.iӦyW)oYytddxݴihv{ٳLw^׫uXn͚5cbD>`_!C,wEoǝ$W`ycƏ}||o//>,?t*:ՊU"yWTW s .]Zj_WiEtV2iZvEQGպ,(Pm'OBhH]h>\Ǝ[%N9ʪK!wlU͊N <ؗ 7@>}P`Ks3}UXlY틔0cb .eרQtHY鄅j{{̚56wyU%hñmOˬ^IFǮ,^={ңGwZnÏv=_f]1X^zM&gfx{Bxnj(oZwU֕((('{}qmVfVtJnN'NdoͻJs{Yb6իҹ˲Ug4nͺu+ U=)C}6mZW Oعs[n#W//f2p@PUӗ \IO/}P` Zb7ߠgILOv[V~W tL&h&777$Ki&׿3֭.\t 9F>;;:-=&J_t>;uu ?⺱r#ʪqѣX-j?"KMZ@n8VOh4 v _5ս+:]qgX2gǎb/!Cv^ɿJUL΢_B j8qbJ]2&LϋSп?'ӡz.YgOQ2¥|1G͖͌76*aaaly5țn®^FeL2~ xfh2}t6o#t(l?5bFU9"KY@h4r^=[*^.DM4gf%ͺ`Νd5WҮвeK ᥶c;Kٻg 6 66՟|sc#6U(vロ@vŜٳٴiU.7FCxD$%*kcrEKGBBfV1;\Nt*V` gb{ZޢCLF1;O?sݔ_럊nw_Q41:>*BC]GTYfq{f܅@-h|2F'Wt4͆j`Gq}٭ti!o( cPB!TUn>8B!TEAU>m2IDAT>tctDM!BxIa|QY>jQUc/B!č֕VIrues?G![Du #K#BPU+<^!8^(sBQYvβ1:"/B! ]{ct WB!>}GS@(!|xOh4v rBQ9N|fd:6_$%B/I*&B-|xB!ĵF!BX!ƒ@G!5:B!|fd!?UUlX]kNGzwmrYJBo'Z6|  |NhZt:2-+"xP'?Պluv6L]kFhhwj=?TxoKBCC=jowCQ-hl!'^]܋_LAȩ[`grssi3l6+vjbPUFpqBC?n|і9bS}M. U%QW_l6+q!Z~Mfl6Ϧ٭XbW1rLv I{F{Wfa4E~_}ڭhn'**Vu/rM30u&%bW]0_/]瞡a^s-s%O] !\/݆V(FcbaܗrRzibd}t8łjiޅTUd`)VŒƜ3VUiXLXh _|VSJ6 "%'NNfJ {~r]I#^?ufxB?N ڵkڻw/FF#,:ۣBX'/ʕ+W0ݻnݺLo͚ظq#~~Mf=;ggП>}vsq9za@FF ٶm+F~a>_:tel`Z"# <ז,^W_A(,}%K^…*ь?Ȉg~ q&9 .C+S'ȲdqOdbO73ot蹤?01i٤Wyn\r8u4flc JFf6D ;䓛CFf|,+NvtR>d5QjYa=;/]||<&4'!?f%ѦM<ȋϿ*,~JzO̘ĠH0uk1oޫ̙37|ŋK/9Ӎro=JcGg=ٖ,:׎9!kL?b[n/tFpy5c71rH 'eHNNf…&,f W6 FEzz:cbݻ7;w]򨞞-on҄1>G#Gm4) S qޫW'>}:& Q#h nذa|˴:veܹh5, gڴz t7+:l߾ݻ\덬[NǬs nc6!4!4*+'.:h+<;\l3l~e  ..cCmזGl6ۮyhZ{"drII3ݬX'NT_~:b̘1Ŷiq^슧_ο]9Ş+?!2\5EUhҒ7,$(4,5cBhkP~c4ywSn>̚52{V\ɲˉ$))Я_?nʘ11r3G{ `0Y3U핣M4|#8| аac۵fyLy~ C \|O=ETT .[gOH't=.SxEgoo=g6aa޽e-CQ^|q*㧢5lB\ Bz lg`V P9Ӱ Y.R;wsl oŶ+|UQ43 3͆Vb)tL>`:wBv#1qbj4nlR9-;Ј$ʉa#+?{?]L4ؗ,Y;,K;zT=ڷN+oUL>֋OI!| W;p%+PJh4r!z~UUU_]j:vEUU4hd";;eZwh̙35+əoxXxf#O] !W^r-9sٳfs^_Οbc;b12Nk*(Z Nr:5M@G`S˴V+?>U޽{3vX_AAA N<ۋ?x [8Y~CASQ第b?w՟`ZX,YqيɘrMˉl|\ջ lENc;fL"7_{~1۴a-/)~iZߟĉGW כ۲pG΍Kz#Q@]62?xCO'])Ca*l;F%tXw;/sjw_@GQ p"g3g\F#?>&S'a #`NjU; $((;Hփ C~J1vL>A3n>u/C>Aƕ+9?Xf%1d^|:o^Kt1>I>Əhf! 86+ع7_FoēGq%v+?N^P6.ii{'ϷJֽ GUU, 'j'!!Ӧ3##ݿ0l0{Ѹqc֬ppl}@'83 Y Z5kΝ;r MX! YVΞM<) 144h?{Ri(B@`[6CttrPlM^fv`{Jl6\l;U{hsRGeә |176_1;suy&j,xY`>f?&NHGϞ?۶fg9z7xNG:u f&dW K>|ęf}7ovYE!(8c2mi:uKgm6 <.p"~q< +z -3))$͘N =?W2vmۆÇL}v̞5ݿ(<?VKzzz~U{Wd,[\!D+[ @QM&#FPƔ Ȗ͛:e^&iA6jBpp0999M>AwQh"j]ECEƘ_**[/nkznmK! ?)O|6K({⟛KR6q];5#I+sX8j4Xm9Ha#Bp)kcUU ㅩS1f9Vԩhq 'pFӿ @ttCzEm ||ݣ BGѫ]!!7J"gB"Q.Gƽ;MDDD,ZDI v;ZqKskTS$BT9EQ g`(6_ݮUS'Z-yyy۷` :::u1&ƙV`0OHBcr1((t솊E9m9u[Ave2-y 'k D7iGS@ۤ ʢE-Bj=u*ںu=ϵΓv:B*Wl6n]wEtF {)>DDxf( ~~~]OJ @4ks.:|l__V!, mx+ڦMϘNCU\MA5(L' aJ0LZ+C ,&^&E$[z"zD2D'" *5Ex5@U;OAAt*R(jF!"1+$Cl彅FP3E԰0nR!AAYz!  Ahe ? 5"]l?yaEbUJQ8*pϡMFh@)x8:)^  N B=T@D "* {Zʭ0i$S[hF,#0j_ް@Qý$ *@05<2@ ͈F#F32l B0=&u|o-T}B9ZXx\?PzHA}z%4 P<AZW#*k(ꫤ'wCmpb> z# J d0/0bEҮC'.1d]7Db]S:%)^qןo"Īv/pׅ\D dz㓥)&$X硳bE|n8Q2dцnxm%^R50445PޟxCDD1B)tA+LF C#[h|Y g { = =ujkmi2+dk?Y="dܾ]1ǶH 3. LcŧpxzDa4'mw>͢%Xg^8ʓ"YE~ _1_l:կxtqCa3  =ݕ[ d Fz#f!D4S tAh|"7ToD(0'=jxHr@8??a3 <^  fv(QcQVV;_`G("iD'LwABm)Hmrc)"t9Ildwny׃ʎ{u5goc6ݽMeJX?TL: a@pHm 籂H8Pk|v!Qa˧[ Sl$ Vo9X%Ov]>l1+^v\7fz 1r,;+Scϊɴ#Yo=TR#79,PY^Grl۱ _;kwB(`ҵJXwh8`bOENA􀎽}@]2^62Hq-WvWbA/j˝kZ[z6L ?βahY3k@(Ex[z1ٰ8[|e8cdZмa@yY% il8clc'n' E7܊Cu%c U0FwfchK&ܱ!HQPJ / aT8YvB.6G/\ś0l\R^OY6Dm#D궄/6 yp0PR/r{:1#lǐ1g}^a+Eh pEga5D5'#1I{q >'lb6RwkIg6y2U1Irs % k dǙ'ބ:Es is^i9h\@%^}؏o_ 'zV`8 W7!nD,fp6DZu\1XVWFCbdY93sԁd"Yg9nylpׁ 3<ſêhv!$EX\7d?͇^y~a Uڂ' I{# cns++F nlbC8ڶCWq'~霠CDš *mPb C "~lUJlٺ w\e`/0qdb*S\yJ Uv͎D:F/wqgSX|O(4˧k " 4sXĺ fKZ^SSx oc\hwsmnXmeE!3ڮNv,W- dLWEAi?|ԍ_9JJѳl lDӮ h$%у:Zx^  .--y+u),֜"cO-Pi:ٵUDq͗Ix1(PL,.ۼ0Jٰxl[$21XwUUdX9ޙ!1gV]؉!ڋ.P 1tR%= Sl=m+_ז=sn]w,:w ?iY|ئHp׬U.rfXR(\N:& ĕ[Z̽NA#v[#)u%-uqt{uÜ[oڵkO۽"KmӦt{]*z@ǵ޽g@ګq;m6zAL~I%cV5NvC45+>GAYzwk?%رvBum$r'h ȣظ@ Ԅ>Fpm:nsT(]؃% 8nwqL0-/kϕ Vza*iO=B=3.>Ha5hC' ^!~ cg񎗋~vagΩIYa'D`[ě;x`BN[.{qAMۼȌK =PTk~وێݦ-[x#mXc=* aL~ֳ2!y-f/b\ :YJGnG8 vo~{0~1uy^$_d٦mۊf[;҂m۶l!(~D;aKגM [(j?^u5x 5>ya<3!BVVnBc0ȣ<n`-{DNPGN ZhM?B lD@NT"|"ڊ` `[vnX҂<:Tks8}mDP`qӠ(R!KKr %/Df^qq)-(7"nŠ0  XK^ӻ r}7xGO8 !cguڝ8K1TmaA8㱡ƶGAGW/0W&aA&a ^m\ 4'j-[;q):d0&L8 _}We}4zzUWegB^uu߯/Ǝ9> nyϢU+(1°vAzQ:t8ě]*/fd"S#iz19ˑ\(a5riB+$lx3EsClEux7`L$Gg(b2m}݇k Mhinƌ[nsek-i~m̚9sn{/4nȼJʫxqy… ˯ 2^ZT7jٶҺF PG=uh@Qc+ַ`Sp@fkۢ@AHץ.|---+t~1 fͱ~~3 w XUy2Ki ί;|?Ƭ\YmzMc`!w+m-i,̰n򃯜k0{zxXkQ\xvm?ͰkpX_]W_[/ZnyfL>,\ 8߸x}^|w8jO3lZ  q-8C7b̘ӌ6qm~f2z*~qf͜G5C<[^s-OUa‡l[zKs( !o2c%)n ]r!+f]%_R.VNź`|åіB"o<1"aOVLuG8.oYڊ{ _b{;9snECc#n444`٨wη֙ˈ$_;VIԑRY(㾛1RCrVO=f|auyįㆵ++} g~9sfcڵдϔu٘q-8蠃qI'{,gt\wp1O999.15k6 ~ < rss.áu͵lxqT~/{_$>",5 6ėYN&X7z)ոYעf$;Iyp1q_׵S\[!l~lgL3~ɕwZo\Ŗ7\Lz0 vo„sΝ;lvOJĶTok+,YO5>lW^ECkӶ-?%=M7 tV# ~a[,f6sX2d).2̞ϓ, K`h*z?V{OPף@TxpPR1yEeiE3{8TEUq&5yP]SLJġ1*3siB|삒fΑoK.Cɀ#^iQcEbL6m<5Ww9G A 8:s,lܰo&k>_]~ܹ[p?`~8]Ou0ݟ/u 5ú7ߢW4|=YgcCM |M̟'/Z>(I{L Bʮ>*Ês(Ui6|:l6 B8ei'mONJeWvs1l,tކMq608ی)M۲4lߟaM-w dRO?]ucr[b+nX'j 27x#֬^[*tRګxPQ^_~' WySJ@6C(L*Ѻ{ z -<\?|^4MAY =dCN^NbEx£jnuqi ]S|6Gk%>.͒'mkijL8ۼxf-|ExRH%:|"䅹cBgb=,wyllN[˥f[f׈cїORq!o#sC6 KsK+ظ͵ٹ`ya9xl69X̜9g[TX6ŌG޽ x7n\;l}ݻ?Əo裏a/|A7_ٳfa-E^Gl}bٺ]$> Yvsl׀Q PwZ>z 5/zEݎY뒏W/.,Xd~Z>+zzK_G8 /@V7A[3*{;rPU}dXvjvpUMԺ:lY-aFJTY#iU~իl[[Z1{ޛ5>}ז ^СCbjߌ!+!) PBxuٕ?tCMk0y1MEJLq4y@O?|"Ï>~_xMæUK U3V3-|%ԑJP 뮚n(uiLcC= IDAT+oܗ5opH:oYZy7_Vg*wG7Gqh][Bl澶FX6Lb_ Ř=x5՜9 /ҒR=gu w͎a8SpÍ73 #!FG~sEbZr۟>F/yl!Fm̻60pW&SNdKq1'ѣGɓ<_n 7k+s}%ez޽t^֋sS+kT؟˰U|kʻ[]c˥~1cc_1\Y~߳`1Fi2`dO96-})UןK۽`(l~TlkDaP=*>_][[>|۷oGS-n[^) Gٖuޘ:?4ʠj*>[vTF M܄3;9j<kNO wzܔۥ ]CQEaI9=` 4(9}G!Լ=3 M((qZX3ayF 2[[ F^>7 ͫE Ӈ OIΖcHًcb&!_=a.bg槹%ⱆjYp,n3o`_Xl[z+f|u*>ǿxF~>R<ּB]Tm4M!B!D~Ϗ@ qڧwnM8,b( <|2lm۾![5UU [^A3f -UUQ`) I=G0Aqʹb{^.ճB Tfd*3P{~+n\}Wր5^"x^gub`??`½]j 0 /y52¹f,BP0 EPvMu BHOa"> EUlqk&\Lk[wY񛶽\hjLQd0Fh '򚍈CbE(P< |O3*ѧMSåRh'|̜]2B^A!;8 Kcp~sчtwE|+7kXڜD m4k?,eٕDˆĹ&2Kޖ15|k ye62Mwۼ('uf]g~<Ƙ($V8sQ,3hϺ޹뙏YzkmbPbA8W]8M 1LWAa|LX @S'qi8AhK`t) T 1{Qoq<4-<սm:v،**FՅ<@;P Z0SałvX8H&4w6fXqN_ǘ/_]a }wBZYϞ5<˧kB7J?ƀCގu\:>lkT$Uܹu2$^~B|Fm&9y.yNV5M|eIYM8=| [nQ|}% WS]sD9lUVWHh$vI\nBssiCB'?VTfV7BL9%-=_`u*G&y+ר*1N Cɪ-CĀ p0ΤCbnòL"L1YT89odRb=^CCsY:SI{z=- XZsZxaiV f\# Ď4c ϶JPٴMl~`<{uHŚxc}g7i:G3Z&f;}BluL|v_AM0l']_ EMHlRR&av|욤W1ebi7v{u-t~a#A0 @V|Ho.LDִ[tR,mOOz;`I[T?yFGo2{:vL=M0d0..SYd6PLb6Kܖxk_Bc)A׸62Fm7/g2`:|J~b:>ď&1{mEw-!wrmb0^=0H]/">"þW;%$H * ze/IY]8mK0o=?d_XA|$%IFۼSrF%:f $Nwz Mf/ #Hm/]$2hY2+'Ptywj|;nĶۄ3lȀmOP wR9wmv9\YCrKO RA .B:^wϓ\? a81O%͞kC!n6?w=dݢ1XwRIB;Iv AT :"0L1iEDg6wdfP KX:.cۏ;w0  %FXZHs#B:_Wf/IbΰL]CgoY,i$tf^>](OŢfJľ Ҩt븰nқT=u6"CbH / d "1}v_qȸ~dbn}S hi(_!ASѻWgN0|:`j}wr"/ #a@{~;˷[' ƶx/`21΂1xe犖/20daΝߊoZ?3-5WS.UM 7 f>?į7#mNc?;|eW =jzYڌѾRI[l+PջpJ/ʎ{N_9Ɇ.~J̯u[2Nvt4vpv̼HˈQ_߀/#GBUUU4G[j^z!//J7۷ojBp '5cqsaCRׄt6LR#!ߝ<ԝPi/>ߩ =rUի}FaEEee% J,(.;?b.y1xr2B̪4:a%&*"0Ώ A0ưuɂla؞T5 yypD"g+!jEGb|U$,P$'(U ĘJ%v*; 9{>kH6Ƕ%aDLnriZN}C=/] 5tV!"O<瘾굋MJTG&?k5=rO y"zYb1%ϿZ91b"!]M#I",b  nMb8ZoMӠ}e }'}'}vOu>FDiϞj3G{va1t}P\\|A w_b1())Iw8i!WƁÆaРAѣGnjADhllǚk0'-d0iHĢiׯ AAB7oYi2_& ׮c!Btӊ={& L=zȵcEEMw8pשּⶌE93A90p>S,\(a$N,  !3_܎ebrđGB͆6~z p #<3gFk /cÈ#qڤI裏b„ =z4&Oo:` /N4 |0N>$ܰaN٩@ DHf 7t3>st㍎m\s 6oڄ~`cnj9(شi#}=K@A5d x݋}woϳDijjºu?q_zK{|` "E=]j9z(PGuFua>|8^}5L4 t&NK1ưt_C ^7'W&"ʊ \yzJkOkK.ƈp.ĮZk{(wǸŰc=*ʕ8d<xu?ѣFbaӌ[hmu!|駘1c ׋ҒRr)x}Z[Z0{,4z= gBkKԿ[L{1zX /n ]ߏaq5W5 g~ }&~8!?0,z9@k+fr3F F# SϝO? S_CO?EƖ͛w0e9;w~߲x?oo6֮],pc.n9u_lXu|wX>ʫX:n=}1 .4>,Z+Vn+e_?΂য়~[oe^{kޑ3'㣏?Nخ[5TW״+ob]O:Zrucin:իWSN78I° r/^l[lsPQ^2\wu'zsM|7<>3:am&,0`@  Ę1ŭY[8l8sr_Pkǜ[(,*ŸfβpM7$=86Yd0^8֯O<ٳfV\o [ٳieg֭8`î{ ~:FGv ~c۶~{W]ںC}Gq?m[m6'>{۾JM'֩WyY=7'-p&{ }{߽(.*Y1vdiw4F۶$aߞwƳu?AtW M ?O'pcÆ Obذa0$ҕi,(/ vq>ŋ1nx`ʹ:ۼy3h}شi#SbuKJJ1mts.W^|hhhѣUUUXnw_E㬳&_|99;v8⩮>c_Y+ᡇ}L?:fsݺu6$~޽{'B߾}mc&\wȣ1]>s~FӼ~zhh"'l7VL[ ^ǻN' aQo]&z9>&5P(!f4E?~#}$v£=Z܄|bMlǜ30{,l={0wUUUXy,^=~xG܌6f.̛{+n݊[b[1W\cO[o-[`˖-9x6$+37t#֬Y@ ~_qy\pW`iNx~:csK zig%6tcP__s¸S cT۷oGRs# RB,Q^[nf>x@e'/ q'b8蠃1}ǁ((,ė_.QGMC(2+QvAE Њ/\2y]]7|3+W(9;w˖aȑNd5de .IuM V\\_) aH| <ׯLJ~=v;$ STR}`Ow8i!6TUEII rrrPUUƦtDAtczCQQrss02E°5;rQTy=z 7/a; 5\:o°+>a(JAAD'%  0$ HY0 C&z$/& "0yx 1$ HY'IAAHAAg!e+W" A4hEOOn b()-Mw aHݻv᫯¾tCAdwW_BImau@C~}>4M붿zd0d']k`\;mJਃ{l뺎fa% 4 C  CZ0VeV4݃h[{yE!?WCy/+ I/ tyaɧ=ѻ.\ "{0k+ѸM{Ը -؛3eO>(}jW ӥJ .̼yqfZAAd.߶[6?l~hb9,~`/x4P9{y4h 92^.|>3χsm0ؼe zg3'isԨQ+VXlj7x#߱m6|WzO=֯_-\m۶?ă `Ϟ=xpI'6oٳs˖YVVf}6@>}oܸ0ԉ555OAƜcQ=iؽnB£*Է'amԊ<`ֿC0gcW&ɶDmm-ua@UUl߾=aؼy6mڄA9W`MxQQQсTADgT0%OD-Pkw`&h _m7|/1׷|>#w7GmYЎcR\px7QW[` 5sƍg3qb'ކ<> wP_ 8%s`wb-س{7nk~w6:4mĿ?N3mGQ;GA!!v$:/D'} X&o`U(7v$˽ؿ=dW g6@=i ?uvC @YY8㷸?XL:` .]^k0ydkYf/ fΜ}b9Sګ&&O? ~ߠGv4kg<̳8SF”)S A1LACOm¶m `(c 0%EYRbyy4-+l2_vst /^ȑ#hاM:| Yq?u 'N81n# 0v`|j4WUQ\CIqJKz(++FAA>^ooH Yi2_AAHP5 ۷oGII1Z[Zh8}1W֬݀f梢=Q\\?&~n 5Ed0/$ BDUUb/0a`^hh ߇\x<%G _ginrK1q躞 #^۠iJKKBXkX~,Ƕmi:,[ 0PZZf|!immANNN  2cРA^_w@~~~le+Y# ;L/DlrssQ[[neOA8uuuˍن+srPY";z+I7)̢d8"@E^uFd\ Q㪠 Ci3Фh6I~>|s>yL#sOL6$$$PPP@ZZ*11 &^!Dy@h2ɦj fij~R& PPd4@QɡB, F#pő'w˫|h;V2FC!h.!B0%0B!@0A] !B4ʓOBCLB!h !B nWSMB!hkc4hٳ{7&F(T*yWyWymBhv' P>CE|rsrs^x.B˟;vгW/~l6V:-WӡhPzr8d#+'0G޽:v$,,Bh8rSzl6JEu)**tFVV[U7(Zu6DFF(B!Ddd$mڶnX,-. :-WӾCۇJ"$aR4Ur0G^hhB!077d,3El6+ֲbJO#ojl2My>'':CL{ B!XVd*A?jƖ>JO$;R*l'>b&22lbbbh4 W B!fj|Prc9st 95#Ʀ(OqjRRRfP4~FdɒLkڹI>cVZEjj*uz * ]vorAf3zbe_N>}snO޶m?KsSOҥgdЮ]{~!ng6s&j]яy?5Zfc͇5-ȑ#{M-3eԘ.!u7{ Jf3=QPON6 0օ !2V_9MQT߮!zH6m>nڵ<\й36mꫯ_⣏٧y'ؾc;< _5&gUc`m6ρmlO=uH/,*bL6>9sfxyV╗_.cӦMۗW_}իW׸LB!f&@1zC 躵C[V s{QnlN"B57neJQ5ز8{}ܪsɓg̘1\>MAA>!Z- T*zͬYj]iӧW_ 'MDt ~(CvZƌKDDwq~a X!+UɆHRzѝZ:Ԃ:' t?'SbMPJnHi$$$ǝ:u G0>ct^}wFΝ{>Fbb"6͞{n͝/ȷ9sIOO CcϽfddԨLB!?Ut!aY DvmId(M Gs D]89|"C:eXZ_x$0IKKeƍM7;o.O>6myyQx}\~唙Zj9q$Y4KL$;;$_[!7.96/ȞLJV)t!;|b4*:U)?oEi٢:]|>recٿ֮e ѣo`֬7ͥ3fاy9x :ve}0 hR} @xx8eee5gNi]ްa7{QXXȲe\>}8\#B R`%:p]!VZE͉/"9^KVD(++\>Y?Lݤ^r%hZi߮O?4C q؝={51|o&wFՒ}oOzTϟ#/u_宻ǸqLEaXnIII2jԨZO!hh"Μ.@[Jn ՠ-%*HLt$1$GCLLF4MU^١UEH54QB BV Z5u`P-@X!pt`;cGk\m[ѳWOyq"W^V+Bg6ܹ!CCQ,+[~ˏ$7P(=QƄIbB, 1jVbӆtB'Ÿ;$OJӦm;NowW gM]Ec"3Z L6(5YR0KX9? /%bB!DPR59{HJJJ 0δi#'1J4CbBz 2Q3+M`X@ [!EqRg֭ J #eek:KNKhѫzmۈFR9,_Q{lX|`(CgZPBs[h%+3>zӼjF:v8;vlǨF۽|`(?SI C6^!4aaam׎Ǐ_[eFEG"96mV¯BF23dBjyPj5z(..rCCCh46^K`(*>>j IDATN8A\|B!O4"sm_=!B-j/KS??0BFfaZ)++wQt:4ML !D2ͨ[l劊HOl6Ehҁk OzR;7huw-, V:c2S E tЁRY qInJL =l`(}ݿަM-rݝj\.DYYK(Aii)E˖߷oMm \>_;CvYߔ ]ؿ6vnmєZdgA~^\'(+-%*:lbh4Mr 0uD O&0哒srstױd"77bEV_oSlMΪk FII V͆b QjZ͆ZiL pՇUDXVrrr(Ej1bbbl;7huwV][TI`(\(rn5\`h0Uk(jV+l򎬩sSn\wgյEP~ӭ[7vbFv+acʿvqs?yo3ۢ)=i EQP%Mٹsg/]]Ե/h@Pz$65:竮lU>, fo\-P'=z9gu6s'Ə\SC̚:Szs}ѩS'ѽaܟ;Ӆ{gk_8o/ (gkJh4<9}p-7]?jx5 ͟z)*oMٙskuui _Ի|9W \إ SNEZ|]k t &99ؿ?.W]uu,\ɓ'4q"Ǐ癧`ML8eޥUu^FC5f*^Kf;yUϯ~.cu=H a=6ÿ7`2HMM-_2u4^}55kVaRY8O^nxW󔕕|StٓG{w~3gЦukqN<ɒŋȠK.<h׮m9~8gf֭X,Ocǐ_X x˽{yo2V _|8~9ⲽ6Jmga|yø͟Μٳ=_|+U[5gFog͚5{-<c{xX7Ç{U!Cϸ;ap:;w/8qN?je[(K믿0\(,^#|r/_Xd. w1x`f̘_}ܷo_~}{̙qۨ^^z}֮]˞= ϳdb23{.^?Jܱo[sfʇ~JnXYuZf5'OYƬ9v(׬vv eӇsl/UL>jg &OĖ-_?R?W_}͔)j?w˨}􄅅3}y>c4o`dww^{yhǹv#!Y9,"߄D߰q޴zpYIJJ'rY'wm3*lذ  \nW~<y۷9kPjsT^>-66͛7s״i4kDxD&N䧟k4!ddGbb"{=-[:.7O&<"ɓ'9,ʔ)Ź&OL\|c:͒0 tM:te{9nJ5k2Rxчywye2yaBZ[{[VEtO߱/ouo};_|=wei#SRRwMRrshw./BQl92]ٳgh2U떜9s .>Yo(?0NkSLf݋+dff:n3gNWGykngҫ?s6(VηeU9i_wzml+o͈7O?>!~8?pT ПpjcwE۞#6/;l$/1P6YUuեdaO;} SLqFVӟx1VXW)ӧl U*NnErs22ҫ˷b\VV-[$W?My z=eeen\vmܰeZLt4W]5W0qb_m̬*mQ9w2ZqzE!t3g#$5kUb ܷ7sy}.R6owssBB"N}8~D<Ӹ3i$^zE),,ʫ:Dz<~<@K/eL JMm6@f<_ ZnmoOWTՖb\\\RwUƕ/|ZsG_c3<.27/^<_EZSisCNNCzS[;{Q[kF[wdxA٫Wev]vni[(zvڹ(WGc j 偈:6c6ٲe K.uXOgdp3fXZ=p[۞#w}>B7At( KJ9|0 .d͌;ƞ6tPf~Nb9v/=^XTk瑑NaQ! -vՎ-ZDVvYY,ZWGFFpIЏ IfV& ./ip_vvL&^y5.g‹j~:wbݺuJM>ٳ\9-:{-< %pEwz._˶PW'jْyc6j^kO3aڶk1c;f ڷgT{œj1O<ٳ߯SN%WJ睴hтѷƘ.y mZfqn1?}֭Z9,K.ane9n=}ܸqL?K\umd@̟7YuZ.֭o tYR3͚'|UywE|o{ڎmncXTv2JA'y2))ykoPhO0Jx衇1Lm=^|N={XVϨ#oElܰ6Kp=pW0zm5ZxW x6nܷbatbPKܷr}y~3oj*bcb[_Fb…Lkow=}Ǿl oۿ`u;0k,ev]vne[۶mk;8[ ;P2 7x*zLӏ?K.k)ES3wmzd' ۷/FMe m! ݻvӳWݩs FowW gM]Ec"3Z L6(5YR0KX9? B8X1mqUˠȐV.ou`ojmє][(6Ez,TǛ6lαGîaj(TV|jA=$Dy֜{U`ojmє][Eգ9h'Mm muqbk&00.Jmy=Dqq1P(VXeoM-rݝUn E~~DQ.LR5mƿT6eSYVVZmBѷ>%DASn\wgۢ%mhXV4 ] SZ>0Q$&6#444.B+Ǐʫb$ţhOP׫O@:l0`Zw+BR(?TRfC])0lwiB!v !B %ˣO`B!I2.T\ !is۷Ԉc xW!S s s !&C!B]VoF-h%dv9|B!^bEAh4j %4,ЍRP9 b_-Q`?CEB!FCYY<{S'OF\||P<Xx<V=\BѸNnũHHL7xuWw 9hC[Bf\rssQմiێdvArr2!!ZNj%@˖-Aw ,O!D`8bcN9}b:=ϰ>ֆ3B #66̳gHlE}'Àc B!DEvQ58)bcXц[0BdNgӭG+:0j 0 `ǏBR$:uZ]C(ХKt:p3X,kێ6mZWYF~A'm۴UV(±cHKOl@#嫯ڥ GpvfqAN>JMB!jCQ2ϜWmۊVEX&0j\Ҿ8v8ڷ`]tܙ /Eqa>L]8z9yV#G-33E8yzNA9|:uϛE)tZN8}'žb.gϞ*"BVL~~>]^HJjT7ϻ?ekйs' zΝ:nORbbѨUh4thߞ̬,{zzzth $DC>u$G$$RSS| :u̙3vrFFM6),ȷgg˭ܹs= 2 Mu())&$$d=e~.V>@@d41@iisAA>8ײd"4@O8IDFF:/58s|jZҭJKK B!Dm搜LAA>9H 6v*)6fڵvm j|tAOqOMݛ߷o'Dp`GϞ Ns]dr=BQO /m[),($<-[v\֊q* .tnӪ Bxb2hӶ-'OԬ"2pCT~mPB!]~~GFfasw':B!D:s4;wa?('""L*F;C!B4TzE~~>EE.N ̣?0 FB!wl6gлϥF^^.& [ Cu;Sy6HB@TZVJ~^.}/ܼ\ʃsZf|۴8sP] Q!b BqAiպ5]ºPTc 2wy66~p-BZ***l:ALa_>UB!6wq\*D!@04 !B4}H<*Y! ٌFFi9vUr(hC:yℿ BNj`à7b00h4r1 CEB!d2Pf.#)Ξ=4 PbbbP9Y~|V?wbB!D%"2 /ch({vtzqtzcbG IDAT{$9C!Bb&';lj5[%))]$1! -Y|{|$B!9JZ)"""رG!>!:x;T*2tC4!x9UW]UW]b!h" 1GnN# hOAW_miNEB!/Zi_{vGdT$j!xC_>8j骫2.`0!ROqqnoh:FTs.>F[^z*}K,_͓ymL>߼e@Kaz&φXd1Ֆ/s|s_vCO>}4>ȇm, 2 C fstz!YXmVCWi3.Z B}||c aar-*?p\r}ܝwIXx8 '7uTb∉aԩpy1nV5] &M} jGu?ZdA EET*'t r(qSSSLnx6|͚%Ԭ|i.˴w>~m:Laa=Lg„̟iӦVر#&MWB8egg܂|rsw'0M]]^_8O\\<\9ONgUO<{yNgds'fa7P z(7~\{͵;vm۶yYre5BTѵE6 wO?4G]v`C B4z^{_GE qM7ڵs\|r>[F~yGIKK%!!AGfΜ<n2͸qwe2oK3d-^޽jѝ)SB!bٳtу;wFw *_UEH54QB BV Z5u`P-@X!pt`;Ɏ׸p{v.8 .ochXju\|q7 8{:<0.֝l&$$x!DDQ1 rб9VPXOQa!:v ??Uu4h`A4ҟ4:gƌ[ryks PPݼ8nZ-EqQ!xrrrX|iDGEjS9d_0Cp'4hۼ;߽|i#7lYoomC-l & b1L̘1{3hס#& MA~AGGG'%ɓ'˪zTc/ӐJh4Ԝ>)曈uˬ:z1wn/-M`XX9N.k:rÏ<={h׮搇2l:qdee`B[z!NQ ݟL&RSS/6}:͚5Qycպ'Xe2껬=OVSKLSG>Y|wű|r}Ǵw1yT0y$}YYYlܸƪU|fJo30 رŋp bcc ty+//33(/YDD' c:YKVv-{ Yr%gϞcҪUKS݅5Db0С:t ,,e˖8=:[󨰩I\EqϸC岻;jNP~E… h4|M>iow푚?wbZٳ's7QQ^ß|5oH7]ú"PӴ,{o99p |NǢŋ1XV_48ߵkfb }Ν;yXt)VgW^n5K/o>{y+/oƍ\6nr(ƍ0p asVZɉǙ~M9ʪU@ڵ<ɼ().vE{/WO>̞3VuhSwmiy?3g͝˩SXjWئ䦍߻[yϳf*O>?>U۷/g=]z?Qkc^q7u&skZebc>߼Ӧ,aL8~ɞh"//u^7az V6q^8|L28:u*| wOtZ;@a]qƌ4koC6<NB\\,qqL<묻qpwӼy#SRR=MRq"C} 4HRyur>5y( n/`_q״|-\Ac}zʼn:6[JEA aժU5wcX[8a"9{k nU*ǻ'&&ܳϺlb3zviٚ /l5mx2(?wS׾_oG!,,"F͞)_n:^B AJV*p8v4+6,3%ŬZfIIX,ڵk?GNv&bs)Cm҇oɉ')39r/=_-*V޽{S\\'`4оCs 8L/X@)}RXhW8` s#O$jWGwmiy,\DfVYY,X8;xP'Z]e`^?1ra/X73f׉?խ5녋\=Eյ֦>À>k=&PtzO7g;{߇c][~ C$^[Z] j3gEnN6O>_|{*#"HOOGT_>we>aUj{9222hѲ%cǎOw}y8} [.Qn^W1|8?xQ;wpl6错\7h0e& j';,cQh:6mڈAy>9F!C:vzN~n=fiD{ЩJ X:x.].q8-W/&Yd@vX (. J`րjhVsʯ5mglxu ].CZETT$GcҾ$'?9ȪOHMMc@,1ZU2`~zF4NҟH pNJmGQ`xBCCiղ%RذS <Abb3ZlIhhH0?B @VI{ĄxJJL1 G`0OqzA0O hC_Hѵ'jF FWPTK倏2O?jc>ks.E9?8+P|z2'B=DpCT~!UDA uvC@!C?Zߨ@(O0Y@$";أڴRip9+6JL%X6EsMM&{{Nc (1(6\nnM޽0~<*g~Bm _!O""#ҹ3'N$9/j aRԔ/'1s fa Slbcg_k׎aCyg~g~¬gRZVE&BkdܷбϚU5BcAo̞w@\\:ˈ)kqn O>ff͇|K첾L2^dosIbbb5r$^{ y+//33ȈH,Gx' ktϛKhh a8>*G~W0~xZmWn]wMeڏɦELviYg3о={-[S]{Klw_+5L6?\GNNڷgƌirDIdd$7x#}x޶V++W⫯QFr@{*nK?yY=nf3K,~Dp#jTڶum_. =>`SrrrxŦ(aڵXNE0tX,-{]||gڽ>.jا9s&#Gdٷ=Ӽ٧|yC7@ýَ;xcL?&U Hum! XEqЋE\D!! ), wWA\&$L2!I\\I9y*?jZΞYѦT.gd3<ءuv&b9ggId2|7a}xm/k*^FI``5={Xfq˙_8܎h2D!z@ O}ݻv_l/ѣGOOOF:U!k?+趶'H4SɷغZeMn9"oTgȐ!+N#&/2b0K/AOll/k*֡ZW˖e+[툦'0Ldee9s A6ֵkhٲeuW5Zt6Yk޾]ΞiWי趶'yn?Ϳk>&i Pc„Jd/ԏ?2z g_JnS/PUH>AAA9}:!!U.1#*&Çr Vހh>^1|g3Xr%3vmۚt96"ȸb^ 'pdoC[Add\{1OVSZZ5iׯWfE桚*?8?-;mo-/:?C8)iTr-0Lz XcBBCt[oEέOo_uOpB.^N ̙;<D~x|]w*[nqsuO IDAT%,,̩jhZYֶyIҲ$]r횖eIˈDS_$((|~koObҥdefRPP@Rry^Nغ5RXpͶk;ˋ/YLsi]*lڈx$}LR9ZzmwgkzG#e`EPw̢ud&Nz|WYֵH8{LSQO7D*ZPA w5xsWw/s>;}g:v CRzrk|h$33N>їnBQs5;}}Pk495(bbm:9|"DB[x֮ZIN-`0p9^tg >IaQ[6o\jqqq_~<Ե8'&6mX۴… tܹ^KjB6 L ~E^U._yO{nii0DEF0|j 3zX^Uڵ_~Wfz,v(t:)))JIll??+nG{sOFFV!==C]0~8_ӱr*@dd$ f~}+WQCg'!9xׯb2ͯ-[aF..,^W5֚NO?ɜ9ܧ~Fzz:3~,Ơ7v:/ ~ >^Y3gyVlo[VzzvY߹k{GiW}UAlXh^vƍDG7?y7Yf5ow7Xf5</k=z3fvjzt%wѣos a:'tfE:u2VWv1ϛ pe6osU~e-WtVe(.. IztYG͛ HLL#k_LҶZ=jmKJrII`5v׿)5Jbb"?Mv_Q3DÐa-0LعE3ɽdࡃ( ʰqPrrrX,n]YLOHHݻ=z!!xzz2|p}w<_RK^^AAAL?ۋߟ;0_n0عsb ͕}q ǎ~,FCtt7n!پ3fBh4poEKxc4}|SiӺ5K>ZCa豬X¢"ۿ+KHH F7{XmZ+I?y{V+b$l۶?p}_{U>qww駞駞d2qE1/q>Ӧn^P-[DZ]Z+veI-/0M6ӧON4/LhreeZbZji1ߙjk_ΰrJΞ;GAAmےsU~j3m41M6& Rիyg)La͹1lPX~NPPӧAHppw ȫd|ᇬXܮU747'"2O?1cF#=ì]UˤI.̚5xyzWk a' ڵ#aFT:*V]Yff&m۶5p WWWBB9zɆ,ˇ;_mm˜s2d/쁇<0|[[[F3{9DÐSɵd4).(`Մ`i߾oLNεk&W]yYp!/]Bq$&ϝ;/߼.IQᓛU FQQ17WW:ո>k) ִ oл5s&wEjftk a'>pzz,VZo\uwe))h9BQ5^g[{$/O={fGK޽uأw(JNv(Nk9ˋ.9OE%%l.Zl1VQQ$%%qMVKRRQQ._[faC'(UJ!WESO-̙/ ׮q׏+WT~ׯ/JٳgE֭:iG0~lڶi˔ɓ.[Y5IRnղ%uGbCgL4 C u>ls-YBii)~~<ܳ;S^|eڿ+ڵ+L`0AA5^w[{x8k׮#2ԑHYݺ]= ")9I/J"..cO݆0'yW(,,3&N@̙3???bc9tz2x0W`ԩՋ(gh۾]O7D*ZPA w5xsWws쉯NppU4o?ӱc*B420t۴&r?ܮ/"$8VmZVQ6}q$88_zIfKwS T*Bӡ=AA,抧'F9vSVnДI!/:ITvN1{'P(~ly|"hh20%EȹL!BP!B"C!BP!B"C!B]ɵh4b4t6U(JyJO  Sz=nӾ6/,,sY|BH>kch FLB>HA~>YWlcu:IB@qNϧCXGo| + .Ի]Ll\CXۦ~<ň U.#Eݒ|b싲ߋdj e`XCxyyR_d~:6r%#ooon`0zU =Z ƛ oƢ&U,B4 9PC&F&L6״SƩSpqQӱӽX-W1=<ß۫nQϥp;wzue ]) /6t2k֮!=$%%OHyYl)jr̚9Rɖ[8x ״Z\\\x׿uZ /Xl9u۷'$搜LRRSLv:d!RXXX?$Ql;ogjW?^'..?/Νc4{1+x; ><==yoȴ7Hqq?HgM20Na-(?SEIYm3zHOdLj燳m'hsrHۺHjfv%EEE<#5 F'X|%/]ϗfي]jfxzzcg,Z/ݭWN#%%}R)_]|eee7j,Cy<6 lظ"'6&Ʈm`s #-mFngmkqW<ґkHOO`0P.7/oo|ʮ#(g:[oCӑ7ZLL +W8m;vh6oBnu:0~xUطo<7ly_In!mVl/v[83.}+/A3g.?c"Nǎ;x8y$+V,j"z+W3_{vn?_%W_{}'2"\իWK/p̱M1&xz_nqִ46n܈ŅEqO2g{m~Fzz:3~,Ơ7v:/ ~ >^Y3gyVlo[VzzvY߹k{GiW}nLFF/X@bb"_]}^^^6ch˖{c߿}i1h̙3y{|KBB澺wM5Umz`AO>JӴm8pOJ֭Y2 FeŊUYgxx8'Ow^j5n o p\\w\ƕ+;rY]ѴȩZ`24h_} '&O&M`ƌY &OLqܮ^~ZLJnݺ0b@2niOG+lܰ7Ó tݮkӦ5m۵CDDFpAo Z-[jiيk״wmO}kٲQ?[m[_~9ʕ+9{=τuJ/rr_5h,JW+v47T}ֶIVKHۼ\ΝQ*C:]tѣxyyr߽qww駞駞d2qE1/q>Ӧ~G]ve$^ȦMӧ{&NlxV\EdD}hd`X L&*իWߟ~bԗ01aj+n[w) > B\cXG^}L&?dŊvYa=|g3X*  33mp~mg-zȸbFȑ6l}$‘[m[9s2d^ ya5Z8 > X#deeӦMkhrF}M5Ubk`Р'.7'ٲu ]t&--'VB]v$JgZʹ́игGO6߄w#?ڵXj ?L4ѮMJ& NOQA!W$8$^O>}:9k&W]yYp!/]Bq$&ϝ;/PT$hlUûQTToՕa5w(SRjsnޅкY?O,]L HNIq(fkS}KIw(۶wE%%l.Z\m5~&+y9***)䐓CrcrM%))Hej_Q/]+S>Onħ8~=~ai|g/~r>pzz,VZ_mݻw'yy ݻ7K?ZJ 5m+Cwİ?AR99z Hݴ9sK/vO>dffT?~T*={6YnݚC6wwΦmL<ݟEƴiRYA$%0PTp .bcc(.)AIi)CƩS 7OL2@dDݶ+8a˗3g\!șLTr>WMɐY,n~}?8T~L:^z18\M-/zI^~ ~ժeKޞ6k׬aѡ= P(xr`|!/TqTn_Yd pLyjڵ눌yrdd/R/{׮ۓ?*%Zj͋ͫ._񧂛G" P-BjՠV\[<[+Cйwy7'8*1 Je9{cG7th$332}bn]E 5AAhfQ/nnbnBCCk~E IDAT/Qw1mCKζ=`XkĚ'ϟg,[7c,"~Rtޓ5+WбSG 7 ={{pED]ۓ@N1B uP2(1Bt*ЕN zh:1lJ%>>>䞿m|1:/ʼP@`613~C͐|R9F>INIat,w{VO4F_~Ivv6~^q@Npssud\`ǎ߰%^^Ӫu+!J!DSP$8(M:Gygjᴮh>Ipp0/hd`R f77W<==h4ұ2rYXS$:?kI;IJ7wp BQG"!?'B&E#-IB"D&or.S!B20B!P!B20B!& C !B ܕnh4b4t6U(JyJOhƚ 9^; p%E߿(O M2z=-.<瓕yfOO|A?^d.$!9|:u$?7̧o B5x;5b͗!Dc 2 ˓L&ݯ|˻`hUՐ/9u?%w!DII F &״bY@IIr>y]G0^ԗ' 777BBBNl}^6*Gu]e5eźmeժ5  q6-/믿2c;,h11q3iw|}bvU8 زy V >㡮]h)<hܕTISIJJbʔɎF(h*!r92_}5/8ٳ!$8H *F#۷$a})1bP*W58v8{yz}k3.9sȴ7Hqq?HgM20l)(?cQ#?qyZLl#ζm!mF#裏0z(4 O`\t??_ӧOe+wM˛%i)??&hpwwZ_U 6oBnu:0~xZt uqv{t:RRRط*yD13g0s,b㈎ou QY}FCX0`uL"`;T?T:Uۏq{t\}sÆVjuV?>r^חo|#Gѳ]e?N?1K/CѦMkcɓXwǫ>E^ڎh|Z@&}[O2g{m~Fzz:3~,Ơ7v:/ ~ >^Y3gyVlo[VzzvY߹k{GiW}=z3fvjzt%K}o%%9er#uf222x9|[?bDGos!*|kCPҶZ=[>nORS$&&ٔjwV?޾ O<;vUNq)vbc`>zFTs,\SNQVVVuM>yNN˖Эk7 ޵{G"8$OOOΡT*rsr#((]r{c ;wb@tU6fBh4p̧Kθ3Cr@سg/ ȄVۯiloEKxc4}tk\{`G~Aogr=- ޽ݾ5wLl +3H"#ʲO6ma1stܕu۵ SiӺ5K>ZCa豬X¢#F*֩Э[7F hwvUƍ`1"+lܰ7Ó tݮkӦ5m۵CDDFpAo |}Ϳk4Or+Wr9 n#V%44wV-_m?{o'ֶe>Jnn.^^ohs&>nMNΝ]ݾ5wUG5w|7n0(~;v׿c* /*woXݝzz ŋٚƼLCm ?;*ߍoT{!yǰ+L&9~Ȋ*[U{G~z""#3fݱ8jܹ 2zÃBy2V/ Lڶm +\Sf^; 6'Ut{Q-{FX_tG6;+C2_ YǎU9OV3x3=WN vڑ0b#8"*0d49+O<8.Kt:_DsqE( mJxx7!̩)-) WWWfgpbez"9%65nߖf͜_<6'=wdv~<ϙKj"HJJV5$i[g9ۏݷ;!!tlAA/_7eڶm?e:>pzz,VZIQIC'(UJ2!7'r>dffT_(JfϞMff[fI=;%;;m2edVg@t-ym#8j $/_Μ9s#.6C_?hI)LzT*qq1;~1̙3i  lu Q>ILl FChhKwcD||n^u& zI^~ k @[}VCfL:^z18>8l?޾};C:}q6l*_yد__U!?gђ%=3k~x9@E?<TThaP@4.<< ]{~oh޺ӧc0T*y^/g:9wrF233))ѧϟ)).Fu}|quscpw54BGf%iQj5ݺdtb@n08{ג㱈( a{W)BC PT%F(ՁNR)A}2z},OR*{ҶѳgOBn]l2BQϬ+0  $.|":z8k0]BNpssud\`ǎ߰%^^Ӫu+!J!DS DTgG Jo//4Hqq2nnxzzhӽL1J%nn7 G:!''B&Z" ZQ[$!{B! B!-20B!MOd`(B! !B[Z`41t:˪jJB4r tH~ oOY{߸A~Ay9߅*Dmk O k`0w//O 0Lv &/WIhN$}RS7/)**GaQh4*늉cl޲넅u`sO;ʟ*Nc̘lْFNnZdܘ1dd^!uS*W]#,&NMvLj燳m'hsrHۺŢMo(**bxbcb\?NGRr @Rʕ,ܖNcU۷H6 Zm6yamh4+`5c0xkƏ]N#%%}ocllۢXUF!Ca axxxn:&O~fLM]]#GA~}f7=r={ܖi`hO2k6krKuǚի;nK/V~~>'Ld1gOl}>$}{̟xZf͜OO}g3hb zk׮Zѣǘ1ck׬G,^ġxa~M֭YM(|w9 ֮Y#?ŷ'̙^n˖krKuWعkvѻw`ўz6X4a8CJEnN.yyy1qx]w1z(CBdƌCHp0Μ9P<,FCtt7n!vg'Ƅl﫯bQɈ矯6{1b_岕ڳ[  0 #ٻ[IBB3bٳe_0.]:₇; #;kў={ g/k/(+IVf&?3QQDEF?ppTZu_[ɥEώ_o~2 ܹю]~ȩZ;-Z8, zWظaoX'#ޣ;W7~Ey[h4Ey[ucPP`]UvŖ%$ujw,SrZzT*˷li/aʕ=w[j_;{eWLM]]_ƍ l1}ў<8_Xk}M\Q}Vnq$VԦMkڶkˡࡃp]ֳ9Bᣀv.24sq}YL?{@ǰ+L&9~Ȋ b7j}ZMii9^tĨPT{zP` WY@VVLmI۶mȸB@@y=ۤbL͙;!CRxxxPXX3; 2+W?(V_;{K=ծ':K?x:)juUUj;OُSG lkVG~z""#3ftb͹7Tr`2~٣ok"OSTTDQQkB}ܼܹx"zEOWO<8.Kt:_kNHKFii)YY,ZuVӟXl)YRQQ$/O!''Sl'rM%))|:&))h9h9$лwT핖+WYh+;ʲdۊ>JKK9{,I%O=]15uuOݷ;N۷yK,jZ]IUqTfmp:7t_[R[?<EE|v\] Vr걵͹7r JL}|ɱ/(Uw'F+qOV-yG0~lڶi˔ɓRddffѺuk}rSv;f -dSj*~~ 8?56b^% _Cfٲ$&NzJE}?d`XԩSիoa6ڵ+L`0AAն7q/gΜˡC֯ (~ Su;o7ܿ)8BF!4%û`~">>OCZ|}v>Uٰq#䓼+xU5.wO2k6ֹb-ڳDg%1mZ1تz6Ǿ8{GQO7D*ZPA w5xsWw3|6}O:;v??ӱc*IB'B4OMaLӴ=!BZp-B,4B!20B! B!-20B! B!ꅂ* !B@B!F?0l ]B!F?0B! OB41M !Bz!C!BnB!l2 ƆCԱ @SpA!hP--00ѢuPQ*aF.2!! -Zӕ믿rj67hB{C'j pp B(]\?7?8NnnPɰwP!vӕEvv*vUq<=FRS7/)**GaQh4g۶O䐶ut:RRRط*(?Ygcnjf-^',Ǎ{؄B4/Fҭ{T*%*jް/OF&$нGw2nh5VKhhVZZ̷ k|}Ϳk4V| IDATlB!Lwƍ! ;Zr9>gϞ#0`cXG^}L&?dŊ1}WێwPI۶mr|{ڨ)[uۊM!Dv9~9~eee4tH9\C}_ ~2"HOw|flzOib,JQ* MrrW+HޟH"*خJH/fdIBM,y޾L9sLهsf: 7u+dffv0TQb@f:rسw/SM (\П9s璛Gnns̩21Q_iʛB㛮޵3zn`gI 5tf͛OAOMXzF:Æz}ټ4errrh׶hdذ!l{67!?}vƙXڼGj4੉T#` a&& - _X?_pmNΝ0>*vٹc'coM~ !$&&{iyTL&y.O;vMUUvM.'}ӭ7NwlpyeW n(uAlNkp.p]*G|9Nπ]NBQ#XVbbI喪B!8>dKN'(a8`gG@C!B4];sgt:t&Z BlTUe<4MݎF`BѬ2RTTȁ)*.VZ]}q^!J`(BfW\\7Gz6K+2Vk>=6 !"h (,,v6D9P!B !Br !B@C!BQNC!BH`(B!I`(B!V*FC!IMK(V"@׍EQZ|z.| s5JBrRRӈeʕXVCy%^ˣ( ݳeKpιē-!B5誛?0 ->0ԛ X,dmCց|b9Eō!BhRh7ELZ|`E!&:s$%'QVfvBdKQQQVY[40OphX@[~/Be00 FPB!T!BCC!B  !B@C!BQNC!BSMܓih9dBQV۷BQ"vEx0t]`0OM(++sb(Mva}X>/-wne6Zu !U}v9<z?I'DLtt6q݄ڭ%5*nݺy&.B!D}Novj vvj*۶mSOqzZZѵkf]jDة3Ey(.XNޯ,ϐÂ!k9ҷ(t>Dbbb0-rx_K/=Wtjã UU),,"::t]{().&&&"TUm̉V_&ポZګ̛7xcͭqx,KʶP]ױhлu]GUUv{U , уC&&7:=z3yߐX|{1_t֕nWcM*,շ)2ǯRK?p$7pu+s;{ s5{I% 'ү_?_Q#y'HOOg+UU?{OIW\`͚yG4%RSRͩWtT+WbAΓ3bp~[a˓HOOrj-!DM2$?3$l?XGE`(" 6xSN= &&&.䊁Y|z JZVV4?0t؉NujdР+2j︫R>C*.Z_fcԨ 2r3+V|Ln^˗-E4/^꯾fѻ9yf<qi{=Dxk3+>+V_iVWo|t/Wkؾcyi;ڎ\.ΝwhT:tH镃km2u VéʠA׷7χHOϟdO>;ϐø;Yt)tԑ{﹗O&T,M7| 4M|cu32gǨ#Kk]w]Am环UΝ;y6tW]u낯ʶbP@2y21Ѽ{ĔKI|hW /ᇋ˖c0 &^r 7odǴiӘ6m{ŋLjrw1ټy. PeXt''<Ϭ7g[I?dʔ,_O>?&<ϛ3@uB/OA;g6gEBb" y8z\|Y 4kn5k|7~ۭk;jxUF ^m^w]Am环UhȹW_~>k׮n#)1DnvvtwiOg8c(k^AZZQQQz-UvmUry7̏?ګ9ccٸ Wo2xG;λ,x]{QU@coHLL@ |c=za8Ŧ r:#oG6m[{=wy7/f2]wEjJ fCsN4Υs'11[oo֮N3SXXHrr2{ϵ|:?[3f>x_u-{]viSsZ]ӚohҔhSrwj~~>ѕ:%--wFF15q;:IًSV)::ܪi{֗WN;%##IU9=We\ر knJʃe_of2`|"n~0vK]eZ|mT?`<9 ަ_߾}ZEɘcuס:,[WMgy狏~7Uj9*UէzE~~@5oz\}ϗsŊpt9x_um(۳g7 iv"h26pW_qGoNHH$;;vp`V5}51L<ЃdL\e7krݵV7pg+II<'OI'''͔S=z4 Jii)pcfٽ5_'୷fsHOOu5%&VYYuwhֵj&˝sټB~]޺m`N[oV5s.U>V;u'@u~0<< d}={ʼnc /(?fϹv/f[8MII sT+d믓?.={2e4tNd7,MH{wS5& .Ϝs#779s\u栗>Ǡ``Ԉ,[#Gu8_~v9t~֌s.U9w {M { yPӹKJL^`5,^;ukg]e 3>fcQ 7׏' r[_cDQ!P61\l\(F!Ca00ͤӳǙ:}G3Fż7n}aȑmkӦ 'oͻ7wڕ?GFFF@W:te2F;BQ&MDv!ڴiرGﻏ91eT6t(?xÇOPZZ꽷Wa̙\9x0ݺv&++o_kk;9bh42l6mβwT6T  hyǯ׎bg1cL }VOy9N?t~TU_߾1;gҤɡ]vx5߿_-DCjw)1v= 6ž'y޼}|/ h5 [l`xͷ-̛7|ƠЏY , mڶZ"]DDBF&{-ݰk=&8BxEDDk kQVddw֊vDҾCGq= k  LWSUnb c޽ő\N7]v&Nݱ;K59nݻyF.W$e߲2m|}܇ַ@~A!DGcEٚkns3ѥ]g9̎j(k#C<l^H5$s-dBM2zو TVf+4:v̆_i5Rm;1&%`L9mhFm2~Hk>0ۛHnF[^Kv)*Fu90X1DD'ӈncyϏ?5 \5"]d}٬nS,ܹ_M6pgrϽpb%LbX''e" ;>N+an (nzzIVﻟYfҶMJyn"LS=~>,7b*/_N<*e9*M2Ѭ{s吹?}c<@B|<۷ཅ ؚ~ldCSpysٶ{?E)E\`@kcg| q<;A&tfG>Sb>߸۸K9r~wZ~|_lFfEs7ͬ\_]w޽{,㿎9|go?(c ӆ`1Y|=\s0FE|\qq5aÆ2gז-3dP>p}rU֙UWQ>2m۶-?,:'M〦,.怦i2[']0bFMJr2aaaz)L_pqt2> \wɎ;].za pB1ǽWLПޗb1g`漗.f叡:0a ne%i7-;Y٧^㏿RY?WOKxY[Ņ|L0uʴ*̞3y/sn/Z7m]nfϞP9I\(kB_;L Y:5b\66#e+Fwpq`qiFEGqU/x\v (+OaÆdb>hIII1M@~ef2o\fϞ IDATO?Tez][uֲnZ2.ZĆxm+|Bno5ۯ Ra{;kBw;KO_0D; Fp"͑~˯pe3/_;fa=9~#Onz͛[u{Ӛ;>#F'jiԲL+vm}X؏:C~ V$VY83yy;D>y cЋ)J=eם{gF#G'%%gᣏ f3#F fqHOO۲j`y}HRb"{_|?Sz!҈{uI4oRdЉ0 (Hn.`+SHR2h2TT;4UkÇc\.o-+>ahƜ9oqg`2i[o[cE_|L$݊O>塇$5-wŷ n͵-o~(Y=3d=kĹdܑN$BHO0~_XXHBB1,YS1i$?r:Mg+7j3pP #3w}Vн111!#j·sr֢E8.U'׏˛b0o|65n?z0PzkNЅ.مg>WET(2}A8"fS;7Kεw.lo\П%{pߛ(+%% fxj́is߿t_ c򜚚¤^.99L:vp<Z̊0v*۟iSXs[Du\{-.Z]hl7=u~?<(L):t' H 2bmC 7\ҥ:n-[x]^5mKq_v)7>=J(Tj>)S^ǟ@u3:`MF_rQ@5@}DDlD)dG^| f3vp4&<{ ;tؑ#G} WlKM0|57Q;c;͟c=}(ij4੉TZ6bT9M|Bfef۞=Eii)XRN%uҜyFEp7*E+( QV+?3^z1 It>ۖdeLn?3 M!&6.ڵe6 j3Od hYʾAeڵ+qqh(5:w=aF =5qZe`a&1qq;hcZɚ5m]1Z&iW^KX1guO: ?RKNPv\i)  Bs^ޟop5lq٘}jaTx9r'1)W PTTvVqbЦm8ȪU(.*vk1Ѥ&oK6>rk&t89s(BIQb1w@rree`gfDlnZL_cBУ( u/`04zHK68CB#&I:IB!1$0B!B!qM8v!W! :vpSҤORR)**@uLB!Dq]4:0DZP 2N+B!D2@|B<ၽ0ׁ!ll6;B!-q}B!_ 5M vB!LZð->0Ֆ_B!H`4]j BB!i!- B!| ; B!  1M C=^!—Pxn!PB!BeW CB!|ӴP ;5B!}vy*Q4B!tg@`gçBt-BQl bP55tW vVB!x` P*eμHs !BF`ԍ[[=QPQD忛]К "^?]snVE͘5!B/8oyX"ݝrV7G+TLJJlymr7ӕ_M ɳnӼR+%[1k k-h3^^[=7C<_4B`=>JW5B!)TO,rWz]TǪT{yaQj*4ZaScx *jU'L`P.=0LA \!th_.~JA*g2 knFnp4izM4oS2`(-nAy zf]ynɊW!BGEZ:.9\KX[r g78^{h-%Ԏ~lB!FOXV>BF!DYQ #BQVT!(+aB0B!ʊj!eE5(+WLMK`箝~~FxIIIsrr_oݶm* !ʉa}~2<~]",!zF׮_7?~_ccsRNHHL5jӦO#k~~{zo#&N4g//jq@`odd$0fz͚?(OMK-w_F/" , p!+-BTT]ffv x2x / !o0xVYZZn۾ƍ 9y+W>kn_,ɓ-׉9sf[(**ngϞmڴyԩ}cb~mia|Ǐ?_h@A2zMk׸\ 겳ffe;:= /wo_MTFwAҡF'~յ @WF33lСAgͪG0}ڴ#DLpxy{yptmhx;p+W22bB!)ZþneW{+K _Ǐ'1"@> GXzU~6;uuΝ" LMц ?,1,Ѣ@j*8ffMwΟGccSq$&Ll6`Fq^mzJ_رC,HlV[Sq$&2;U9A!*G6--5Сp8Wf76r9`FFFrJP`@`Pp1M'N^MUPVh,[mmPu @6}DZx1BCeMfΡFǧyd"zѣGǞ...m""XYYpqq153X ;yrD=D[kh/a` jzzGط07̙/4G8~0kkܺae|V<~ ee,Yi)7=/Ο; B^B5Gǘ~NKK%f׮]C*_r_KQ[;Q]A 6))8CM Ѩѣ`0z4lܼ;`h_"/>Y97㿙y顗>ݻ>!Wa޻wɽqo9E=z莨훷~YKK n,ˈ !;!C 2, Bpr¶mxM_aҦ[@^m>?}X|1c成njק-mګV>mڠO: #ݻЋ㟸1xpAKt)͍0`pn #>BCqOiӧT؁˗1p !CB! fnCףIvuuuwvñ #s;fWV7΄BHKT!(+aB0B!ʊj!eE5BRƿ}a{NGʊ ADdT_e\m2'5hڴv&zp133߰qֻ~xCߩNBv<~ !,EkXxxǒo]Ѫ99.֩Z~ܹS9`{黓;2|BۡP kll˛5s+ ?{e?_3SޮqqH\񲸨H||W))7o=j[fffܹs♤8luuݻ14 _b(NEVp!~~{r=w|2- ֔y,͜zןn kianme9q‡Ex9[XiӦz LMM kfj:xР{v`3SSg;+.*̞5pPAcc#]l:x{{<+/SLxx@@>]l:?@YYرcLM=L X۴jNxq޽{H>!}P SUU;q׭]{j=z4.XVV&{YYٔ)/.S8l\i]zU]]-# _2bΙ3СCΝ;׻wo#&G|}O߾/Vs>}{߿ɼy TUU~̙aÆ&''QWWo2%ESCc„ #B?5z7o[ݽϼyw*۳gφv4)i3f462}={voڴq&M=z4c7|x:K/?pG+*!Mikkw1rZ6-mZ5|Bһ0LRb-JѤW!7}8rZabcc(hx ,751l <|8Р?0́ dZڿ[oWÑ#vDE 7C|E–t`F8P;mhh04PVV&m,at.*,ds֯_ԫ͛xРC.0̰`Cձjha|2РCRb"}PP 0w54=tvvC!u55fW2hlӹSCCCQqx+)ǽM$߹{.󩭭szqQѤ$333~:::;*++ors'MkOQv/sn}.]̙ظc^^੼;J[R4??_dcǎ&=2do7n~" D>]Fb( 86L>vT;?q.obb ;+ʕ+ryxx_'R7Hfy(S~ /Zйs7/[e̘1lْ;r(A߹v*?4ۼ̜XQd !jXmmٳO.//NOO ^I֭?>^̙K\RX@@`eEźk+*g s#7Ovvu2K%S:%E${CCÚ5Ähg맢"cbp8۷o;giScO.C577?xLLHX62zNiqtttN>}۶)S"2_,#**bo-3z[&N2}/ZdJʸy>i߾xm^bNZen$Qd !jrttܸqc>v$88xŊڷo@VV .\]⊗tuuǧt#;+^__?pѤ$.6v?['>] '5?WJbZSXălhgjj$$JJJ?ˑAGG'!!100ĉ߽[˵N56lبw+=^, 4lsEEm/+/Sx##?[zUU t֭kn65lllݧ/xo}kbbwޒmsBlQQ996llDUaݺo/3gTVTgƠL^Qp L:?~\QQeCq:m͚<_LLL>hR[C!0q܁^O>%vvvm[rƖ9;;[n[gD!0ũd8FEEJ9 ``a͇BB娆BQVT!(+jǰgd `»J_Ba\. h"#af]UUaU۵éSA\~Æ!%ZZz47h %VJN42޿Xؽb֬HKEp8m:+3!ޥ50>Qp萜/Vڵt By/k`.]r 33̘BiKJUø\}E!]a`Y TT$GkBQVT!(+aB+հ⢢Ƣ[Xx޾U"S rwBr)ߛe<߀W|q_СA_Wۅ:hӹSJ4oEʉ7nx=jبC$6633߰qܰCrN0s{bMѷ0/? KLъ̄;v,],5-]-)7;jv},ZV |2oW_ fJnj@@uyWr)ɛ}WO<~__& SSS`***j ]]--Z~:w+:[YZ >~f&]]D/Ldlwu?"A uѣFZZ͟^Ϳr{tve v('W''-9rÅk/ s3fԿW<E~Smټy1e#//?>|ϞC:TU_ |ȑvɛa/̚9s tX`GLRKJJ :0 Syy90Y" :}N0޽+1BQaaoz)\.W$Ν;N0Lʉ={̞5acǎ&~G\.[VSSi̙3?ݶu+MN>ڪn 2[0355͋xmW_1L˕;ΚŨ1Ly1ӡg3n0N10*4X[+m+++tU__c lIDATڹŋ@Qaل?|P>aAj\K.rrr899ٳlK"9i%7nk _yモܟ?mEu5C#GDŽ ض jjFRؽ'N_?٣;~)S5<< +w.X_%;JNN6p,\/s݀[7o;t0,| 9H$M𓑭OnGØ1cUUU_♈ݠT}l̛ p8=z8K|9DkyI~~)pn=j=z8sZZϠ,qv??oo\.WZ.WP8:uֹ}ӧl첳RSyVVTrqrrrV\S:EEr!<i+oe<(++<.--;TTTzHUZzFvnÇ;vlر\"C?e+ۑ@Ee2iUϟPW01ݩ0<ėC#V>uu Diϟ?q˖sf&ѣGwDmX[[[}ȈfK^bwx4o/ȑw{UVV(.*211Ѥѣj?ص a,Z LE$*qO`$|qS8u u/-ZAt:t0NR/X0ٙBbl62 YUIvÇ.\v~VZAKWW7p|zzMN<<9,,48x~W^5}ڴA+V|]^G amMʟrW},,-D̬6Lյj < D}H!DYQ #BQVT!(+aB0B!ʊj!eE5BF!DYQ #BQVT!(+aB0B!ʊj!eE5BF!DYQ #BQVT!(+aB0B!ʊj!eE5BF!DYQ #BQVT!(+aB0B!ʊj!eE5BF!DYQ #BQVT!(+aBr6B.%ĭ TWUȹf{5B!oǫ353cx\-%0lɓ' ;=B!D*q}]ܖRk0uz:Zگ57B!DE d0ב!w]B0B!ʊj!e}Xm!Z&%uBHm4!V!(+aB0B!QzIENDB`luckybackup-0.5.0/manual/data/OperationPropertiesSimpleEmpty.png0000666000175000017500000007570411530434355024523 0ustar luckybluckybPNG  IHDR$oV pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleTask properties IDATxw|u%RHHHIMX@= NS < `=T@~w4zEN)JҷHv2w?c~>ݝk?Y ' IW @ (tܙ/>dq߷? ƥYln.՟cmK΢mjSZJ)֜ۦo]pͪa,ijjLb|999Ne$h=qJBsz aEN9>X7hPmk!~H*~[|;HcFk]zWWƆCm?&#Ļ SN[1?@ F>DMu ߐtIC||W/,;$IB8X0%7@r_c@ nRfb 7m]blC>#c$_c/l15>㫙P?-ΙbFR}lSeF„mɲ_y8XbQgC>\(vJvl>O047rJ~ IQ@n9JbXɄlZEA;lT0$i@GI杍$z8HH>9sƝ TK FHH$G<  B]}=5FL& Y+.޾/4fi~jۏشkjZ-tD루=E\|㺲r;<:tVoXQhjnpsN(6L^_^,ri?)hߥ*** ** IMhы% i[A3X# 1kNc}g$Dm_=͸sj|ɳWtͥs.kjj8t ʗvSծ Ӯ/elc-l~vyC? `48~8ytUr/ڝ;wb`ˤؘ8sFN~Cézt9lD.}x6 1z:Q*Bss3G++)**B`0\{ի۷oSNv;6>uNmU<OqcSs:yt\z]/g{1]4ҽ{9|䨣c߆UpmO;owyg%ҽ{9Zyl/j^ qFۃ l=JAAGϞڹӥr9GRػ׾p}~m5:MMTVVRԧ{D dю]@U-bx0 \~Mtzb6Сͣ;r؞\XJTTǝԢk.,1-ncZ-={dΝt N\r52!"L ^ b!vܸq=:D ]nčZN@5ϖ{׎|ӽ; NCC_3BM#ƥ cC}h***U_UWWK/W_1|px:tV_8Ԇ/,(,/njNfg{U۾>EȲF8z)5mIk1$O9(Ӽm-%ɓy'yy?0{o)#e'Whm8( 'HLH1MnMHD||<'O9`RJ% {wW|!vod .ZE̴;ٳf1?r;1?>V9vfرkK=ǏW_`08ԦÆ SV&^p>sݽSmqu]SXЋ?>C.b;1p@xudYf ϣsN6;eYvYŃQ#.yOǍt^)br-ZFFQdYg99ٌ3vYh}(և[/y9~۞)!DWigǻ Q'O_֑{/475d*66_)nڰi9jfvglUW'ILLi?̜1榖v#O?vBU(.F *9'vW\1x4 VCǴTv};|;~Kh(Nl$466b2>ʢ YǺB=ysŻQ=zW=X?*nѩj7=[dlnyX1-b[sS0L̝3PoYx={dǭ<أ?vNϯƀs"222~/a:t(C kz'N[n!.>ysoj}/ qFv?&#Fcn&]UP~w;vdy,[NUkrM444w߲hBOoP{Ut9׹mExqYa;\*psP5 3n}ÝKΟ{-Q?#HOw:u#3fҵ[7_u[nU,Je;dBuuv{֡c޽~j7&NK:Q]uRUۺd*9s}̞=&?4?xzvNRۺwlc'ί֮%kyĜC(t;S륗|-DaX޾уB&uFi&Xd@܄3eee.oillBh5Z;!jBӺVl봋ki%< +~+jqnqN7qĻFPj7ퟐ_c'bc yhljb߾Rk9@=2e =z!k)++ .P/ZswgO?#u&ɘfXlÆ]Duu5m;C#;-?eɒ%̛;/ҥѣHNIk'/'cA=r=×]7e mFsB6xr\T-ƆFd2ƍYJ|&Ѷ>>!J_9 +套^&>>ILLd6&,v&~vݺu+,]3gX,r-u{V,ˇ70~X&N,[DEEzʶEc:w/O>E($+ |=Rbc:x/H6*'NIcI ;(n撘fLf3Eh4翾ɓ].6-Nlmg5ڎֺgo{ʗ_qWXGwoΟ /Wp?f ]FE^^} KJJ(,,xM|, ]/0Z>c0x, IIIу;wf#2]tmv :o_v1-}Y'oCuyz#sy? ۚBԎu]zorlGḙNW7͘L&'z{ôiX~IL&/mT=f/̚5k),,{\sU u]Zu=iFqqq rWb@Mu>m7B8Lls^hhnnHcJ L&=+ SN.5 Tc%%貳ݻ÷K$IHdtpV>9ihѫhJ%Gc09^jODEף~fÏx[x+fbƍ\} :??,>|oh˿vdVZ/zhh'11SNL(?66ZRSSw804jԴh) ZD~;ҷo?֭[ڐy݋VMu5̘b?~i&$jD\{n;'c26,&Zsݵ]_W 7t7p=zbu8~cz(\nիWǁIKKGj;;Ee֭|3e 3f<GZgmq"1%ECZ2vx.8 ͈\3y2^v\v%cUW1h ZG;(YZ-QQb(/wyNeN :* m<8T9>;sȾL_UΝǫx_%ޭZx_r:\ZF#̝E_Ν;i$+2v8<蠵xر}sAKiPq12I?d 09tMKK]]Z㯢SNѥK%..3fOZk׭e+q㨨pzwsJ|z/hx=9vk*@>>#HjNy>VCDEE< Y:y(kA;*:A2}}.z![#Xm6j5~~K\:dQRRg꽮Q夽tR6o SZZK/d>yD>vz \5@$JsXqt:= 0<;v$/7t*-hP\\|v:VKRR[l!::~LRR PnMg LkTr@KMn9 Aq&Eᢋ.ZNM[ZWW5W_V宻"73kVf.KȲ~Fm3g`8{6Rrv9_ WF8Sn->*ni{mmmD|0# inݪ_$'c4\DU`EՒ]_[˾{xw9X^FG@}_hWu,/wȡC]⶟uxMNJb6 .O>@ف're:h323<޽],dq0Pur70,\(ծF:*~Lrrrܿ­5z@uU)477ceG\l,HЁyvU2H^s 37CN x7*&MHrr .zJKKѽdATVV˨Q?0vXvFzFͥ z oeł^h4"2^$IȲrcrki}O\bFb8|~Զz 4Eb6#2jUVCjղiIMK$(ùroXp̺ Z젥hжe6!מMHy(5a$lBTڲ=ѣGپ};11sN7dʪn19z(;v &6k_h2Bw~ֺ=7Νy.)`4RԻ7YYYkf:oǖe)&?wWm__ճ$&q| LnBeVT\\LfFG4-߿?tٌ`7ծ@'co_yl)V><ʄXxic{*YeH9[ZobfIbx}Ox3[( F):,Χ;J{)ԧ?R!,T&pq ܀%j^1!_-?sLccYFѴW1.7#Zn޵jKVmUgmz>k6mCłF҇GGYpVC6}tKA1=,GT5:EժhaZ ^1%ONVjJznNsTُNKn pswX׶=|A>~WѴpn#"B~0 I-瓄plrU*Ϗ)I6C_[Rk_OllÕls6pGުGlLV>QK~8{ٷ( z^k7ʽ:5ǟykF jz ޖ!q:ۧ TQ޿nt Gp R GZa %DU-Kr<+~(Kzj שmgHnڊ1_}׼0smO`R3)>\~ %@]Uێ * up֓EwMC^7|u3$N V8Q<T~coNȱR+s|rs$ "+*y~B񐯆9?]9u{lF [[S'\z 5pcjPqJgo#T]FZ'϶ʗ0J73}tJHVP+aI ̈Xi߆dLBMל2W9R16(n55)nr=ljVaq CA9%0/4hѓ@yǤp{2+jhpz)g mmML椴psUvVYJ{7Nd AQ7?$&N+Xbq PO A;2>鵑Po~^[hhK 4"V v^5[;V-X]{V!̉ݟv ^g<8gs{sURIlR|6Of`x/,r|Tl>f`B&Bm2 IDATq>G{?sGPCl0!#$jtԤUiĜR]fN?]pn dT}s$kWi}SnV\\\'ƩyWI`My IFƏ?@πآfBk;ݳÈXfy1C9 Q}9G=Mk?}qjEqyK{n;joPu Sɪua~ݩWޯa$Zm 弖`N EbJOɄC/ځQs`}7&Cdވ]_>ki[TjY׏K{=YFp/}1=`糴rj!&ELՆĊ y&1zO;CĬx~ L(q?!ɄPUPL= H5U _!L4'!A5_m)_Z<M̷W06 l'x*ueEۉphQt&$ =maN L'vmԠS.~nqgTZzt6mⁿʡMB@#y:ƣttj^͇v H5{BbHرs@K(ԄC Kh"__쿐7}K.}G;ݯ!+DM[ߗmZ )*"555h/!a۶mtLO'//?av)aC;v~wZ]pKQY96{d;a.`}g< 68RWWO?ĹV7F`?yU@ 3NYŲ~0 @ $ѱc`e@ tMF6$q]@ 3 ڐ@ KWΘ@ 12 $bD A;@@ G@ G@ uRB &W B(!@q!@q!@q!@qZ&qU57̿$/Ӹ{otzgXXXq߫? yzK(A(i!c#]@ ~e۽>7^!_' I;ůmνf<(R/@+/%HB7ޞ0$픺% 4ܢޤ֭kVKվqwVNj8q"|ͷR\\C$bbb"]@ ~ IRegH 폧z'NF @ bB+<(*S ?١X@ `IO<8_=_\LAQ 8G}HyE96mry'HNNfÆ 0w\裏صkkִ˗{ϋ/.cȑ.5]6L[+YmH5k6>Gf͚nUV&]{d4x-f-z;䖗@ JA봒@ﰦ[{dĈln,x eFAظq#|h5yxn@ > Pa嬞Cbe#8t| .={[nϮ6={Nȑ8r( O8iӦ@ էl$$$SOq]w ![رeK.DGEٞb6hn/>g90gyyL~%MY8#3g!y1Mߟի`04~Y6eVrs;3t0=m… rϟ|w=yX:LaQvƞ͛},> @jڲ3$ؤL"ڵ]e挙'\sM@ 4A =H 0a2} MRrhN lՔG"@ 8^;wvn6iOvʐ?LC#iӛO]޿3e ,GeL&#bOmҮ0$̂^Z[^^Bɺ#]@ ~et8˗޳{' I;&WH!AU܇D AF@ v&[ @ !n/!7F 6W  1B" C" C" cEl6AtHRx0$Ʉd$S@A$I,R,R,2SNQy0z}z>0$LSS#eH$_ $,`HR<:]x-0$퐆z-H#_!&^OFf'*&99% rX,j(*JI rL&:t`Ϟj.1/!<:+U]7lP^|6HY140(nUUŃl1:SOӫWڱj۷?$u;k.f͚?ax'K{>pm6*u<~&M/{L&$~C%<&f,P;*A]z)}`'$0ޣ{$Ks(6c}(456⭷~v-YީxM\33c#Xv z)ۼ MߓhoGĈ#+_Jph @KޯfdSm_ii̙3_Nbb"|$j*{9^y^xȑ#\>rΙKtt4~)K^_Bee%̚5^={Q\\L~~>k׮^t;V~76ِTTT=uuu3ydxxt}O#jct:DGG3fvwe~kwph r$I"++eCjdk ~5QQQ9UWsNGZZ:0,[y3lysIOOgС|ЃvZ[glO~~>>ե8벩O?aC( [ne c01TWUs˭2eJe֬h60=n.76M62w\/'OryCسg/ 4={ңGwf&U<tťۙ*n][N:|_k+Æ]UK-?n˲eh4sn?sUڴ{W_?YIϞ=y'"RSk+cƌ/?fȑ9͞5{EÆf/_΢ŋ9~8~j;k׮W^&Em=ӣGw˒%榛oFQd/[ʤIXz5ׯg޼y..)La=SbÆ ̘1kִ,̶p L4ɧ NNu =g=@Jrj.v~˶`0cL8.C1F[f͚uz;n{|'$xrWvSq/s;4@y7qfϞ xX`<|#v aHZ$cktR)(,tijj$!!zېV!!>?[X;蚜;Drܸq,_-[3 HJJf :Fnb}RSZ'xYn&LŘfZ-ͶZFQQQ Zj'ԩSYr%vm^<Ym&vg@okZۥx/k멤Ǐ!h\gŔef+Zo-h4k دnwRZjYAvNz/s;d2ѯ__|!/Z}GCCׯ W$l=z+Ir_|IeQ6n=Z&ً:=#Gѣ74:qDMS=Ν@M 6oe.,d-v뭌=.^ h%..AцPswzn'gQ_~AQ>[-( ֭Gll,HK,ɓձvZ:u@Q.R-_fۖ+.EQ[p]]|KgL&uu}]|gu8#(2&L+WbX0,_#]ld2QWW{wQ[}555vzzz? Ç窫oÇF2m!SN{~ʂ l?@ϙ=g^ U(+To߾@hNNN3gΤfiudddrgs!:wag3gQQz_@r(ۏqēO+">>W&>!VÿW_}t-\쟞geL&.6rٳy'2x0AQt:SۮC7o]v$1n8:5ZGSNh4ã>j[?{l~i.2:-#F`ƌ>`咋/,\K/TÇ3vX֬YcQzۯ 4562u꽌=|"]RQ"垻0~x*^xt\]]'N ''+޲8q"9}{K3f,7|me˖\w?of2(++¡CkW"v2@"tz=f_$Dߴ|իM&3tME;}|:B MO jw7}ywxeOW4h  m+hz@8&sF$/!p kнw\xPFZ4Z- S'ۤ$(؇&" I+_|_|꺥K"ms-F!..;vځzgG@ Q(ٱc'yyh4FСCjIJL$11/^tܲReDL,R,R,2˽{PRRBzz:IJ!iĒ$i(]–["]@ ~e$$$Iff11aoOvF!))(=ii43D "668bbb]!iHDllA\"F61"V!iB H n/ ⴌ(|Z=޼K AX@ # @ # @ # @ #.mTWWKI ,j($Ib)b)by/- IPXP@JJJ" I;ԩSر^F@ DjoA}HJN9OQf3f)vu:=:Ij{aE s9p>}ҭ[7"]@ "DFFz߿O9& HVlFh@T)*+Gݶ(]kES4\#]@ "Hbb"yyTTo6ijjBssj((f,5O"pm}\|<{];xtZaH)qqqŒh1%>64ԓlF-Nk (%*Kh:LU] 9؉adPPD$'w0$@ %X,j(*Je3RI} NҮ|pǣ2Ivu=%$$$jViHdY?AtZ-]taW1h4jf@ eC2'܌#4՟Z .}V,I ZSA&f, Cw^#==#G x8y$w_K ( h~Om4X_Gc)j뚩ɇ[ФD!u^%>Z"lc."?wߥcǎؿI^Ul/`e ==nnI&QVV͛1cټy3'NhyW)ݛkossƣ>FOY*++)(,`֬SbYvmw@ ~(O푃5ˑX6泧.F%cZ2,tZ(::-R I}9[ʂ5j}#K^}Ut&mڴY=FJJ W_}5[neѢuQ>1h Z 9o OdddrW_2sL6l۶1w\6t(<]Vr|C?@ pFQ exuvCBJ2QHݲ1$C&ThtH:I|͐j reGoo '' &pM7fj,ϐ!Q]]رcYfOm̟?v XM=`:`Mw1jH]12"@QLݍħ$i֢o'HiQ(u$j2$-# l;lR矶y^y*V2c *sJ.]ػw/;wvSܖWУ4ɓ3j <SV\ʕ+$Ȏ;\tBtO>Ehb{.z↛n/>g90gyyL0Q2q*G GQҿ>| IDAT1UGSTTFjbOނ\EBRRIh4`4r64$ݻwwgΝ F3q.8:wҥXr-%+3o;S[[-[ց)) … ]%7^С#ۇ|Iճ'+WáC)]O#*Jj@ EV(Z4TV}Hq<D,$HN%%9;бc*REբ! rc=1gu)& @ !@455m6F# @ Km& @ `?q=@ .m9e8e# r'N@ ,l~8\@ g6Vp>e#ڎ旒dYFӡjQIR,R,,_Z,,3HwK!zʦ_U0$SNcNzr@!پ}!)9>"NJ~s5k,\'RVV͛۝@ m, MƖ9!ftU%(ե4W4ײ~/q bIVHՒoG҂dl@eUCxٯ3a!IJJb1fj/2e ˗-OQO֡v?aܞ4@ ڃtx u4pںfc{44)QH;k5阬s0$mE Ijj*Sj#3i ~)K^_Bee%̚5^={( o&V޽51wΝw @YYF;T)FPZlOE]`^櫯dUi:0cL.r˖.t pÍL4m{jڵkõ@ NUAjH,JSK1-KQ:DDL}ZD)"oy瓖Ə[efΛlfСٽ|F~,]]pWcv{Ynf:tHj*\C;99yGhlldm蔝]l^i&f=U\}ưhb֬^=5ɾ`P(;TSG]4=r1w@!q4f$ $ŷ룭h_$xYC_|9ټb;˔wƛnK.~s$&&1n8^K;?8'>sQ 8G}o>ã߳}7^)A4E@?`iҤ"QbD( JQWAZ Hm!$HBnǵאsΜ̙NÎ;.}/qM7L /?rfD!/KѳX" $kHݨEop:pBlBtfM1aK .xV+GgϞyן*UzVYC3fLɹeVa.=ɞ{׿|"$͛d_UGZj'B N& !VX/֍&!n F nVt9]su!f…8NZЂ=*t 6"##ÆxL>/\ŬWatܙ-Z}v~駼哦d ++_CbBRU]@nA 0Uk#X2c4 D?9d0v9x h4ՑۅCqɓ'۷/}cN,[ aCW>uztx223^:߮iSheivNMl6s".?T=w~mpȑˮfMq8lذ'NШQ"督o߾1 !š*xk^CHP  8p:39sO{ dl;bOp8tE !XkߞG=Jzb4ذq&OɓY}K.,^cծ}?C,Yq'0}9OZ0 GGGSkM9C1##|`|ͷ,]K}a ʧ~Z`~ɩ !,m۶-4C>CtJ<8AZjUe.nO^h$bs\lGԩs?NmH{9甝z-EKp`3V"#B%,4ŌVEQVvN͚5'eddpDk*ѲmnᄋoZ!qzk7\f3.8Чw"Y޵̜5H!^xݤwE8U[ ",0"C @ף(J|:oB!otZnkY9f'8DdD(Qab2KفU{xf@p(6h@HHOۍ͖Eqddfy^5Pt:B!\jj*~8JNN毿q]&{~:8-o+l r:q~̞>Reğ"87QBQbcӤiSԩbkY<ԭ[7QQQu:Y L犸񐖞Nxx8. \.aax ̫e˖y>zbگ]dZlɆ |뭷gСiӆngy#G.)O˖-ѽ{SV\.no}l2w=_׏IQ^:hZ~|u{to 񁁁TQ78/HR~.zq8]R%tpxBfݺul߾-[O0sL~yo#q5f|74o~C !1zMl–-[Xj[l,e~g6seG8t0=0Znc1$$$ %=(i_X,L&}R˗zjOXjUp&~m%9;t:F@v€O?-Qy5hG}7Z?Nc2 dٓ `YmBl챫*?VKÆ ,=_׏z;v o͛7_h2m4HJW׷ƍyw4jԈym۶rϻ0%g̷j՚?Df>ij |+V|`4y['?Fg9&L|oY//zj֬ @FF+rTg*n/yС 0id~#| o-xDہ$..^{=x|?hJɓ'ZjWRSSܩ#cƌol{nf͜AڵyXVfziS04j웳4T4dddK/Pf V|0f̘Q輵j䮻b;o>33CXإBIMM-QY'OyY-V,[fWެ_7|=z0{lΝGzz:W`u7~!}ƍ7`sx7gԩs¦ѣ'7_]wҦuKˑ7l(9kgʕ,[А{ 租z:Oy7p@6oْa{t֭,DYV7GzN:MDD8ӧODWy'ի˗?`С <Э]|ᇹlْS2qDx q+V|Ľˠ{os͘1~ӥKg =f qƑ(q|Q_ÇzgԨQ3#W^m\]m+ Ė2(Z̜2VPf:K/2>CB/?cr֯o? t B~{sX,(BZZ%f_]Qdffҥ+|reݢE t:{hL 3/9e7kLvɒ%K8s *0)δ0~>"#yy֬B3g9S֝;v0zԨ]deiVނbE^rUժWc׮]4k֌]v1qBAPy٧g/p͘8q"kɝm=f4111 86mҳt+S֭[5jT3;u[o敗_ͷ$33s_cݷŁXz۴͙0a~Əg۶S._yWfŒ33goAhhhiw+o0|#G>S`mnfΜży^:>w۷`I^gԩ+KJj1DGGcIQJ*Zj">wOjo_8p`҃y0o ͚];۝y߾m7UNY.ʢEr/[$$$b49r$AAAo߁VZeG_awugϝ#993g9SK/oE9gG{ +˳fأX œWg;MU= Jt>$wqZCYl3g΢]v74wNϞ=x<7Hiz~<ߵhq/" Kn޽;6n`Ԫ]%ԩظq#w՝gyS|gF>{ߟmгgƌ1ѣ#FM6zN> @:|t.Vش EUҥ W\.W ;Tޝ>}x\Q[P=)oqp5j=:fP/^Lrr2]gPQ{~6 FUUzѣGTH9Aq.@u0q"sٳ`-g$cc3z)$'3qn!~+Ҹicu#SK@ll,ժU#44q.ǏӦm[23v&* fK;wlf͚NQ!-[s ={9s^cǎ\N{odl۶-??~NGTT_PJZlI׮]ٻw"##9sUT7.NĈivyIOOClڴY3g߁~VƍW1z~ܺe˗S^|nߡ%||ѕ*Dž.WgL:3fg^E[n<hZ22ҙRBe˖|w}|LL .}rt%%\nil۶I'РAf ύˁxr-yu\lGԩS@jDɓԺwQmڼ/]@Q TUp0tPMJ:?Ye˖;mQڴTF*իVksZddd쳣ջ%S9IDATvv/hZbccu䂍ޠ'6(+Z=z￟.H0"("ЫwozEFF<`͖2]6} h4r&^GV}SFu4uyH֭˪,ĕ`;W+Hb9O(N6jxCRbF')׀DH`7}O ZZH cDFFtEDB!N ,*<< NCxx&o6EQ}*f"1!Bj^$Eu7d2h8x .rVJTd.QBl6( ))dff8rX,˞!)#@h `VkgfłdBb2ީ"ɓZEl,A)"Bw B!'!$ B!I@"BD!~'B!N!B$B!; HBw!$ B!I@"BD!~'B!goUUۍU:N'o[Vʻ:+\I_t|I@rpDWBpp0*"C_ A%5%3gNX[GY~I^yrHn76[ 6`;K>އik'5Ae~3- R{ x*rSǣc.5y'm>>1NŹ62Ӝ?{k ##Xy |p ;v-:k}(r_qۚlHchlX*- 5+(ˎ57 wvHڵs%N'.WYӞ˻IW,ڶHAɮ]{iؠM4<m+/n8~KS ~ñacO`;u;H6J Y{?j b٤$$^6wM u;T_Iםgclz }gФqm^;2qh^16۟,УX X{vM-/2rEE-R 7aq/B//t<.'fMĪkXʮm2>}%Qnwʏ +Or$e8qunܺãÆ1aD>.̽N:2~{Wa<˵'⨔}@p!41Ը8@M Ph^;vlّ2i׮L8ѣGpụXƢ >XJ&7U*h[8@ۛ<ЗaoaCũU Q,Rk:Pn>3n}ᰢWܶ3@b©T040jl^Šrٱgf:,T ;{ZeZvVK&MJ]iGӏJ_I$^}:џd{3HFqƅs9Yz dC ܹs̟?)SĉT^:w^#TfI3 KE-P}ض}{ݻ Lcʔ)<üh.vUQ$ 95>GIwqKT;IzE A݉E!Y]fV\.kv4:w'ȳS۱c;S¢ŋ ]'ٳ4c7mbٲe,bT^kծ79;p8ڹ##_EPHH8~wZ t,X={d?R!)5{;܍pa`FƼ{^BUUg̒Xϧ}J]_MCv6mJhh(-o ֣*SLAkKBCOOӗ_}d׏Eѷ_?>sVYÔ)S={vЮ};_o }1ߏ/WbKx >>ƛo…O -WE(_53񐔠t8Lm!=%x\Y騮,Y828OHJfrm1ui/&<Jhhh}}Ub jZ1uK(u4 # ׈t:kG=v3s|ѬeiYcGҠ~RSݻ~'~,[&M`4ٻw/If͘7o?wy3KU֨JժUq8ןqPUH|6dIL|n!{A C\mMZF #t҃Q=Pɪ!#ËfGE<Wy Kz.:o(28pn?8B4oRV[֯N1ff̤^S >3b( )))Cxj5jL͚5QUuRNmר;عs'#TJCucSqɾ ٷ'p4^V+:"##;{ se۶}U46 z}nw/RYܧĝ={&< ɤR9Q)?EM^-mrX,ܷ__V^bo<أӱSgڶ, gy5M˞`߾}t:V|jܹsFTU-\uSܶV3AZܨn'N3)Adfp.1ƅIAWqdm¶v_XC```(:k^vGfq ZL(^LNyNwє1ê|0i޼9?#=z3n?r7禳|rFŗ_~I>}.Nzɺo%5%B@@@ H 'x,n܀3-ÏŘ MOrClٲϹs~TT믿#= lTU5u[2ݩ*AAAD 㝍:tobwngX{kiohF#۷c՗_бSG-]txuWw#]O=ΧAq]Y&})@iꋗBZhگ֢*ǎ<­ʂ p\d3t֯ϾTX*7?&MHL@8x,$''r\))Iv :\zjOi Pv_4RRRztܩvUQOIѪV9S'3)$l GR/ coO4~fϞ͎;zn֬^'dשSӦ/s&>;`֭߰緅ϜcXd֪yqIs7Z"߮ˢ^tfB&&ıg n {fɏcw&2PNNɤչ{s[ ;cH2pL}CA]Ly}̡>b^=֭__SeQf@p0|.k;i2:x&,hZ iXUU}ݥCJkjO #G8x +e[ rOsW|\y}*ˬ^|GG>JG|(s&hECٽgwyg)aZDJQL{OyYgESz-o =lRl6cX0(r mWuV4ŭײOz)ٜPp.PEik<ۏ+IK>&/;E!|CڕGYzrT.B!OD!~'B!N!B$B!; HBw!$ B!I@"BD!~'B!N!B$B!; HBw!JF<^OYE!W׃h,u:&f'%%FN!^[R(J0L(Bff&Zm!B\!<7fP44d :^_FepF!-zCv 0$B!gW$;C"BQ^!BAK6zd#B?_x gHB N!BNȐ3$W!$!1&B!%a.C"B!|f_xU4b !l6ӴiIENDB`luckybackup-0.5.0/manual/data/Message_CloneWarning.png0000666000175000017500000013231711344507455022346 0ustar luckybluckybPNG  IHDR-\|2 pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup <2>?v IDATx]wE~oOvaAE;KRP0(1%(d S]D J\&"Q`%lxM0owѻYTWUW׷g=B):utQl?۟iuj…#a=`@4kr {oy/dN"wH5p 0s]Կ? pRzS!>&6ybZ5k;g.)˵ge ]C`$wP(6M (Lwb9D&2  Ja>Jϊq7bbZDtʠIYQPZ ]2 *D)9GPg<,,SivS*V(TJ9+Yڈ&M4B)яN phpߤ Fa+7]y(7U-; ]FJJJN_eKi3'źr,cәaE0bFsԩrHlI8<@ FtD)FOA'B$j b\@r-%(sYa~Bؑp֣`.R$(VEL)uoXW]4ݎ'>Tǻ*[KÊr#hda2`zRi(B|cǎpR~*VUnTddĵ߲xJJ?0XRu"##@@XHlbRVȀ *= k֪YeY 4-**ٻWѣG/_\fGXzΝyy .3P!&6aF5j t+ņVCe'8؅bol"aVv:QX=e)JdTrotgx,gрzPp rU3 aG""<K #[,ot9^%EI8),ϾdcAgՙL$Ɂ'R8 ɅRH 1˄?6bg]h!-RCk5ؖl`[#-)>}TPmA3e|a($B# uaTx^3]~BBZ> Q9{&'(5j IHHH)Lk֬]T0h%\Y!T4l_FMoPvm8|p$*wN](),( u#kz xHHȱcGwL߷oUծjݺM*Wrœ'Odgoٺ͛]߰ѵ}"@FF&@H& m8nkIBchhkޮ:&'&KA lqBB<ݻOZ-r.cbX)~e NYݻ,^eO O0`@Z#!ʛcQ’`"“~ AheYzűG A 8Kae fOvg:X6c)@ُ^h[c&Av-Hb:*cUag|l=6cSEj#e.әLtuN#szT:qa x=G@avZVxS'DoZ!7$$# vTZ… d& ] pv3atl @ Y2쐒0T4lHOG ,44"<lv|^Þ3=p}6n_IIzOڭN&`8t  q ųChi]w* k,~B[ [L#BEBEZ =fn>_Q&w&-- J)7 OMֈFW)'P:HAF;vVre975Q+m<4"P|@eAz⦛ةSNըQrժM&G+VTZ5BBBkLJժU4&UVUpa0&U4Il&UTJDpy ѰE0&4Z#""2kӉދ`Tz*䐟el7r| ؿo߾]vi `o ?pCt_b//wphv윌_~`ܹ/XH*'ei nDzѸ6٩SfΜ.8KLL|ck޸N:SK3f'CZRJID@w,l,P](hN%H9 OcR[9zA} }D lӛ P. E6ÂB#J )e #4 J" ~E]9o( ,öay<{+#lSb2¶fJS6n۷[n7plܰnڶI#{@A=yZ>L 4x3}8J ot2-˲~䧃?>E#l'v\GV9zp>XY >zUxߓZ?a¬9gV:R|JY*뽘wqݍ]۰a]wRJ[]5Y,L:YQQQJJʚ594m:6 +Ƽ3fܹ| 233}/\*^JHH@]΋/`3g VJ{ 44^z]vׯ=IHaaaJJ_>|5ML0`@e+Θ))qqq~a˖޽v{?{999V-[ yk6ݥK˾ض};~~p%"UQQo;~Dd$Ǝ0~7ܭk;+&& \˿wy.=wR~żgϊ[)=L;FѴiMh͚Uf S”܅žjtO{+$$۫r\X/;ڭd?uTwY`M-2թ]X}QJ /\з_A\{׮~:++[(|C^zq_׮]ԯHϞ 1rݱlߟ駳AB9s02wI&|'x.\ػw/,ޮ;ܙW^|a5kי>c5\#A۳>#oX'3cŵ!|Xg6nܰlo֮-))Ν;''wjӧ ..PnURS7o޼yhߡC]oPIڄz;P𦗤Uۿk l96({6͕b|/;^vBW`ݼT*p%Iў`- }sN+߅ /">KM9JLPj;rt39) H{?2c:x/)a.]._/=sRЊ}O<^okשG=vG=O &7o<=iщH<#>9E)pJi ֬Y駟~eM^R׮]J{ҥ5njÚknhذ$?߿gϰȀ1;uT |>  X #+H_ߏM&)ҩSu7lx22̙=GLi^~Oڹ311qԩ*U&u]Əܿou@/l޼9**ms-<<|C /|9{xK2LÆԲݓYxSڹcGfͦNZJUd1\7pÛoՠAÇ1|׮]~;O~)7HrՅu;u)9nz [f:pҥW ~V͚ǏLMKMMKMXRN&[,8#h/!U0z lʋ ;bIBԻX$-ŁG1C~c;B`$A)( iRz˅xRZmk+8lp_P'P=U nC廫BӨ?3rFsmz+jaͳgn֬Yl\;EO>brO۷#1}̙3VV`"1c:zM4cy vm 1!!H3t4ӧ>غum^x~hzG۶y)tܹ##?(=s [u[(-c<_~gVgY0,Ef$c_5;yZlղe+'O|A?S۶mOΆ=`S|G˗YչS +..>yPsԩk֬=%8u$;`M0YfM-[v/N81hcl߮ A8Qonذ!PڨQեK/T"*U5oφC='OתUŗ^aZ:u{lРA7C_}̙3s{cNу;[)(z*9/A$SSQq0*ᐤ3 3972ˉ2g!X6\֑Sb*)9 "SpZ0#1rWF d%&mt :\\ EG9gt+]qb|Df +2jB)Z &-Gm_EY,Vÿ#T8pO^x{Av`-05k>5?RڧOߙ3fΜ9瞯R ce3 BqIfΘ1s{=f:K0$ ȪWLhػwm[n۶nCAp;/ZVTTtɓWUUBL 2s֪/+E<ؘ8 Ua9+4$ H"#BBB}>_Y`ʙx;wt<|ɟ~)..nȑaaa8޽3V|+Tl2x&$9}Lʜ9fs֧~J騷\|"gqٳZ ݰaÏ?ZժIGӾ\ +UIy /;w\^sgs[Z ف!D, (KJ_4`??E [BSp.(Tz\"< ^sN`l)tgYLDb80&dr3 q'j@ oɿ5>W/Ɂ ?Mxc?M %xlbal|gϼ[Ǒаp_Ic`ҫgoˢS>m۷u]aLK^@Eaaa'y̙xݻ?dz,:u仒V0 cw Vm_9lm[oロ5kV}Tpa +Vlb?mP'b\PzԩJ*EFF-iܠAԲ*UL\p+"/|^OHLt8#Io,s)**`ȰRJ\/w^VԪ0p}ΘUW]Ů*Utq]{C6iҸq<2~ \Uয়5Gc=k&L&""e˛ J*{kR0~B~}ϟ?ߧw?gL˗/WP]Ǭ>ܨQ#fC@J@xa6nذlofĉ&Nl֬YNɝ:ըQyo>s|SƲ-]I19[׮w:$4ԙVB(@ttttttWPt067oośk\2b.P;Pl0BƑr8QIkq0W8C#l"iPӈ1Qn +pNKxV-79D?"‘qv .Š2wnŊ}$ű3ٳg 0ѿ?wG0Q \ ^UƲe˪Vf_hўzuرR++)86~3>iӦQJ{ ;#r~8_8聸ʕ+V~ :w)KE-n AG[OJlhYN`Н;w|pB)m߾_~ÆآEHHHvvٟN0ǵˬY>考Ȍ3_=Gz^bgFy!e9sf@\l,S^ر'Oon/[lzsg}:w͞ҿ_?~lO<Ѵi ߾}.;o|~G}n4:~m׮mve˗gdd7v߾@iʜ9nj,[n=@Zq;+2n單rEvc %D^iIBbOmsJ=a"v&#G8hJ\1&IN) RFhB,7bhAZO}f1)A8zeNxohF Cy]vQ .%_C6~꩙3g⛤N¾CrQ/3U|۶mC0 |>$ID PR%K\9)U|R5 O8??yfmسqX IDAT!#ͭTGMoҤ=ٽ{wXXXXXط߮coBhϦ6`?<xeȐ+W9p}zj#e3g~SLpʇFO7N?xڵkߴ {WXb =pѥ]sw#t(ߖM@hkQA`DqJWlj;@gRdNc6xSV/%$Rf64L*zV7>/ N;FkG}=W0}]Ϡm+"u> k̶Qc=ٿvθ8'엔_(..^n]ǎ5k,.*bʰ#:樍_(..aLjԬQR\ln Z0SHgL:1Mz6w.̀gΜZ &b=:۲?afO֍,O~fh-k8;p&P- @k%܅um:iwvѺNE;w|-5j(..\N=FY_rs+TO>$+66f)Y~I& V>zju3Gz>{{Yy1_]ᄏwތ`k#^ڵk6lؿ_-\8gիWs>:`ޙ :eNJ~}Os>?p_oyダK͍LLLݫ1Bw'O5k־ !-[zԮM)0d'w(V!z|lhB+PbQ>wK><~ssF2sr=58(;p[t]LcPdX x}`"ìϾS,+a^^R^ u؞gIC̄W{T4χ9p$Li.Јc7nomwMlQxxO+. ;.$(zvna?ogHgaW+Ң /m(B0dB-B.;n5F P\\%Spt͈*UTTK K4}N]aD;qď|ԌW1F'm\sFEEYffYM֭.).:}}{#QF)*,8"2 ʅ1&?SreY/o՛ܖcQĐc,Xm8UzdCfe$~i q[Ry.} VY 23tTp>ntNd^P,& vXJ)EFqX| wQIeLJh8G.[xmtc7J6S%*|l ,qJݽ͢ڑQQeed^&u7}[$ nb/?ƼBd$= DaxYjEFE &XV\R0),,b o-[)힮9ztd|9ظؖ-[v~+h?sƍ XQхaa ipͷTTe09AP܍Ģ͑#?_dWZR>fxG| DE8CIft,-Ȭ6]-GqLNcӉ=q ͗_0 hYܩCy*1_5x s!OTVe1b%HY1%3>!@6>9`qS9!mdddhXX+QN|ҰW3::T&- mxvuzO>ϝ;xV|[+tUZ[n(2Bxx*ЂKJUIp$v#&@AbqIxxohcj£՘VAAA@oRޤc!GEf:WJ1R&ַA}")\'=7KҠ#q([Lx ݨgElB4MUf^U]b8Hc\DJ-n RA4T8; VJ,̜u9G5A̅cDL)q1XLRrƮgt`F~,pq܂uAAA_UnaeǤe22 P;.) ~&k.g+ie}#{CBr1 $㘃Sݫp H? AvkAJp @l p8– b+.e2i\`Av\RHYZ\ V"k_kNV+Yj.GEqv`-u2z[ xKܴۈcB6ǝ!2SGDx=6/.**))H)%*QD{>}"ĴlD1dʔkа|5oҢ"^/q3:W d@#S^ޤ#ZXHI0$AEUrvDX=_\W"Cl %E0BS)DۏE/}x6"odgk %<! 5BY$!vgzEEfTx#a 6"'?& Űq@8`XPɆBqiW }"؂8gs ' [HV/@xceb/}\9nd2moDt:WaSDrq<JDhK*`2?VidyK~ͩ?۟flArwԂ_BE_Z;s~$EjRp'^YD.$Eؾ֩>%Px Cr@_n-[#״߄ k7^pP]qN)9(cP( T; ~,NtJjc 7ȧW>7 #z$&GۉzRe1Q"aeOe$Ql#'U6y(c(AQ@ X#Nѐʖw֛r3p= Uk*Pq\ NRPDaϴkR3F2r,|FF.q}l8+Eo0 4P*pʚ,tDkEGم9w%`"rEe@j0uJ@~E0)U:n* C6h+?Ҹ[[: 6HwtERތd#:+@ZT SvxiSBm%at(S2RcTs[MC}͈[B!c9 b@&Lc ُO0;= I9{e'Tr C^uuĐPS|9lP BD)VARdǠbÑYE_6:{ƹߧ%߸0Ipb'>pe79]B ;9u#\njTLA6_zd+KPO( N 5w \ *HM%'c4U}#gMEB)ZlkI cşȥ׶.d =D,CAq5Tf7wBeIĝ' 8]3ԉSPSLlT'TpKNm2wج))@1 ux#}I}P=LZ"_~YuQo@^@RYy('6"#k(7lyd_g7\=s>QnHоFiߙtTFtAՂ NS9Uwrqcsy]B,L#֎Msd lRxr P&CCCX2.0 ݥebJH^: JhM^R~A/}2+_5$+`[@t|p ̶W1tk)ua DMy%o2pNI`Xيd)ر63E+%rWHtZ9Uh-S^+`s7ZulRh'qٚYsP]R*O~HEy)RFh\KRSH,&gpD6cW!M}*gEX hyt1\O\K&1r W@fF odvE(@ZA@;HrN.3/H_+$90F]S{:1ó E)}S],C!00N~0BNCb4m 0 n؆ALЕ ,l%@tĸF@=JnI]T<ԉjW9!hՊ1etIA3i@i@ ^Zy]/ˋ}UQ[w-@p/ _1c9]e$(/פC?*B8H,$d9 /@c"C)s ב?(A8Fz0 cTr SMߪE~JjFewl. u8sC T :NgL+OHc%ƹ%:ʂa[VgB_ib?ЭX|4\Y7l$SlealLK\֤"qXg/F4k`H0_ /M-!i=3Ubʿԩ,3gLeCaw0ƎuƣPQjqa17AKr%mz'Tr<3p),uGN%bh]֠62fk7}93m{(7R_vڭ# U aeGqKCa1TYDOan`d ^RBh6mYӎ &8WCjt[1)c]j99{eXe=n |0^@||cٻ/ M' hZu8 "8C ">N BQ9H !}>߇|~̥UqbbS`in8 V2{- ]6k öq{l_>|ʕ )))^c@W^999]t5j89!};u2pVQ\=r@ŷ4XxJ1W8wYD:̶`(˰0W"4iy^1We[m9R+deg3nM4*֭S}ן.mx>NmDS\])hG`޽ҵWVǍXJ)vBKwsDXڨjtp;k҄@6t'%o tPjooB&N0oO|4qIjzRJ0g_ %cqp6Qz)Ƥ>uӅDidnL>]R?U60PH,|&îp'&=˯ߵkwFFprjY:Bב; JxcS U3ך[q1聑kYjjӳ{ Q###ǎ:uǏcǎN:-44tرnJEe|Q\fÖ4NO#e_]AqWa!ʱGhaYC3ZgϞ6II!!^莫㦸8$zggmKj*1d1 rSciqǍ3`7_ƍ|onϝp睖e^jժ}aaak֬zԴ%߿F۷8p`TT~쥂M[SM&>H;hԕK,ݷo_Qqq5ڵo7p)i)Nf۵>,\p,+11OIIm'q.Yr%K[X\\z?:𱘘h&Ǐ7n˖-!!2dTHldffY9s椥_~.yWXX(8H TzҐd $B={M0q!!dӦM))swYRR?xӷr0…˗/!˲%6ۯORR]|~I-tf[mo۾}̘kV,eȐWj׮LkBB?g999ҨQo^&<"?aX|Ѣ+**Qf -M u`/\`ٲe17) |sNK]u!_A.{j٤ lݺmy6 ;;y+,Zo¢5jvhAEGGd`;k}YcWYYYLk%7<<<1iϞ=hjoS7'eΪU]]WXЬY3vn$\X5ܙ322s\4z5kքGD}>,y2-14 Mv_rO;nRsRJs"d.Xd{ayf#$!yy'YҥK;v -,+ib>ZNbf\rxk׮)h>Ə߲uСK/rS6iӦI& ةԕK|Dvmٿ>[ršÇ-j4w^[f g1V!Kdɒ{7,,/XP!??;,..^d F$6y'}g}v#F5*uw{JJJ;w(-[6m 7#hۦ7~+:= D  y˯|{).]:r>}Q쒒L7MCCC !LMUzxX-3+ (+.Be̥}Y /Ly_Z~ьo!Ah22}۶mA:t(0ҡMMKto8{NJLt 8)}K/^ZhѲ崏> BcFPzǤ֭gٳ?M6+cYСViqaÆ̉ҭ}…ݻKuu׃GANQJyMUwޭDuYvQ$y֬^3xG}T\Oߝn6m&MksXéSrew7FV^}ҤI'O^#ds۹sGll;~Ә1cbbbo>w\EU>sf7oy`傠},ضm_~u]~OgS?~E?s^Ja%ijת=,~1t֬Yuԝ7o~z?cp ## )));vƎ7nm[l;vlLL̶mRPVbFۓeQ,%LZӦM6mڢE{=Ͳwgܹk͚;&|Y1;woz㍑~)sm֢ ~Pݢv7O=?0~}?Yǃ ,ܵkyk׮SSʲlC>s&5-m=z//Zv:[vg` m{9*on])skۖR3gNoݺm۶ƍٶm[ZPiiwxX 1;bL!{;w׿>}uL~sӒ˾`g3ی={2E}-M6رs۷[lE.=en L={223226'œ>rm۶?/o,Y45-^V6عk>ZV&ˆwoJO1ovڱ۱cGllرc7mڼywy'&&f)sZiy?0cwC)̛?ӦQQQum駳۴i̪Uij՞< 6nߞ>믿̔B駳sssԩ2w۶g9 L1s۶v7~=M7GEE6o]'Ħvs׮_ F_p’# ,}rnܢUXqcƌaZ v]######;vL~W`ժ/Æ [^DDСCLJV^}ذag=-[W}>zߗӼy/qZz Ǝk TR6m47%%#cO&M&NYIJx< +ӒK`m۴zMƏ !+Vdw}q!!!͛7<]dbưM6ѡ!! kuaÇ7m444YfÇ =3QJS`;&NN,*}YelW_:`I lGڽZ| >r}~Bm/|HHȔtN1H"5#&&zCB5>|8[~ztZ""" ?Yd1L8M۶11! &Ng #nR^*VּyO)MMM#^1B ɝ+W<6ǘ<ҘkM0m61ѡ 'L5_wGZulę9[J&M\ ; .'MSF"-CbY%%%EEFh!8D|=+!!aIR6lp!#"":vL:t(J[crwyZw@VX Cvqqq͛7gdqiܸqIII111!!!c߬52_[MaCņÆkղ re*X"1$9sqo֮=u70~}][nQt9|nLٺu[n5jt-;\2@`޼ii9\TT:Ϝ=+.}ԴO ş/n]?>'}$>lC_ݸqƍ>֭;qĿ\w]pVCF#=niR4E {<3,Tō7 0`;~x) h5l؈}$R8pq|=J[E)-((X;ﺋu+2@V^3zUzcǎ1򍲰RrR11]l5C̰VGIўTʬɐh!!! 4x7`ΜLI&N80ruLɲ_rsYdri676kȍҜMBv6_މϲ vDlR[HHBl­߾XJ-<ӬmY}c\DeYxRJo֯Z=y8Dv{[4!2]VH:$ТM͛7-[fddddd\s5w~+hخ_:΍7@ LjsϱXƾ3ounTTm6W޳{|rn l 6E5*p’ZNjݺo۷ۿ?Zh`Ep:%~[~]rd|h6 @N:JOO.IOQb !=7vNq ALVu^+s`訨˗/2Jܹ[+Θ_~iԨQ;wamW<{X?p@MOO_ʎw@:uB}gKYF/^r roS =6y9Sc|EJGe݄4n2OtDxx6m߮m}m+\N #6 Z RBexɵBAqB IIImڴ׷_vmY GPnZ-Ϟ;"uk荹뒓;)Nڇ޹sSueiDlyBLgy&%eNtTݧL%Jٚ%Cdx{k֬),,,,,\WG䎌A̙ǎ5V7zS 55upo{ũvgyzʕN%%%GYxq߾}08֭[ /_~:cӃWXq)졻?藯Xӧ7K.Q˾… %%%{yc ==]&uYxq޽.vVfxTv>{;@;ufj1ьUNPjy~СC#xXB|CŽ?v8DXŋ~OF?,ѣ/ x"y5 zKc{QY@ 3+ѣt}b\{O-_BEz"0e|>PٞQoS՗_5 :ul&EӂwGB_FF? qNjcƌo#1J:`@Lvm7͛6]JdHٜH) ;nv 8OVvT(o馩S.\8v;x+ )u w9bzJi׮04mP_`cǍ]`qhTltܒ;&3Ǝ}g…FV ~ŗw zɭ[Y _bݺu5Pܵk7AAiCH$󾝛3L]˗/'N_zjkhj/Zfb4Մr%~>}4Q~ŝw5k_ yvGJY-YSϟ?gَGV[{JOx]Yio0lY̢R.Y_mVWWO^dӧrsKc1{׮]ǎx"6ݥKSQe-^HOK+//'Iz%K>}*7'ʰGO1cب5,Y2-͠(UYS.]Fe˞~c{ǎi$Ir={:z˗fʔ)\ۮUj>-[ZAM_tNرc9FicִScWݿٹh4uP &*yPjrhW:wF涫O񃴡,z7[]场H0D.NFaܡó㨖NdsFo[#rS&rirJєabBǘ5NjNo=걸|4gw5oՓj){X;e?4U+SSj; '\1QkNh;%jjVПfҪ R IDATúTG qss_!Psh+f|Oȵ$'jܧ2E\Q_=bPH/^J2ɡiU>^JtafOԢoa_iU+rnTԞVUs uWN] 6Մ|X3Y$ **S) doRSͳԦ'JQ;QQY55[0q6 &.+?t6'MV=UNT!.fmd|$WT1Ǡ>$kZa ȭww7̬[änƪ}.]t\>QjpLfY5H$?}D"deeSJjBs55_m-CM`rUXSHVL*1Xq^N4 W'!74VS_5M+H+_:]!V5Ur4o]ʚnh|]z;SC ͟J=6%}gn mt]j8zF ᦥ$pزwooXXZЗn 6߽SőU16^ReO?kMk憦Gp4~%6]igrטLP k= M)x7ZoӢ"Zwww7 ;v>rj5|ɟOldii,kРAx{\|)l۷:|8p/ʊ\몪EEEwSd+0>>LKKSmH$I0q;:UUUl6;..>*gԟI̕=xy攔T6=hР43/E,xxxQ#]+VUU~䱙Y׮]?||n T`k(MMP#M$'';t3wn^{I1/kӦQQ$Ik€͛7 Ӧw\$͝;WqǑ_-?1>a3g~Sjs^xI?/9$4D>߇:diiI__瘘+  :h`?q]|9볚x.]dgѳN!TVVZYYݼyS&uу :Tcc`*z_}%/^(&е,fi+WY"#@"GyG";wܩS'90/g=RL̕AAA~-ɱv׆7 0Xffͺu׮]kmm~,:tӧ-[#)))}ݻ4obcccSSS;Ν;TӧOϝ NLL8q"\paro_;Ɛ7n@VVL&kQ&egg4 Mk~P,H,߇~cP:|PqA]ou-E9Z#"b^KQkfukk#t8hP`౔CJ$I/Q M!eݹsÇn޼Ǐ:\o-BzhБ[PiOC6leK r(^e˖uڅveٲe9 p8:uڰ~=DGGiO˗l+w|'˥)_s 3# nwWwt1{]z{n?6͈-һ7ĄģG^vsN6oV D 8ңEiƎ;q\~ rrק>GyY֭+WcN !9;[~>(N2P5x9Sf^VVm]Ro@ 5[Ol6; HhڴСCnݚy7lvbHSݫPԂG?Vt-KEz˗/믿ZliӦ۫׺55gQzH* <r)~}PHM|9st@coLp4H$Zgfbiiٮ]ӛ >}ܼyGkBk>4Xؽ:ѵ,V-ZD~BCCn}%%%V2PS\ꧣ4h۶vmyXkt{-z17PZ*/H4x}w/^>5QGc`YޢE cjk6![{afݺȈ@ ׭[F 2֭˓H$yyyׯWs/^|D"D9s34luB}… Ax^}8s ӝrףLj֯_w DrR~Coգb󾛗,ۀlڝ D?&>4eFAjx<^كM)"ht ,K׭_oNw7![a={f,cFFI2/YcIϘ~9rqq)SY>>j1cn޾u"(_~Q-JZREd)K"]5&IkܶmۂpuuTVVSM )))6fQ!CoH6Ê%&$&&$*N0`ڢn 릨~G7AS 3htb^syôvZ}=[adEHHO///xw <z} 瓩۷˖-il6{_}U\\/Z?>f;::z=FSLhV'vZn]TT%اWAA]#;e1V?4jh}lNMMx,q!e7Y=*gϞ'222^WV; 27;S%Z7Ϛ`t&"11,߿pQGV^y+11bw^ ȿݠZS~K.sg=j4aΟ?r ={ PCA KF s]w5YܜHTYYry-0p࠷]/BP#rڏԩ'|4!w& 1?ӧutl9mڴ / z4s맟w?ooB=񶫀ns#B*17^@!4s#B#7B!dJ0r#B#7B!dJ0r#BVB!+ B!Sn>!z-G!UB!S!2% rBS x̍B!)ȍB!)?oQC!4s#B#7B!dJ0r#BDW>j7B!B!d0r#B#7B!dJ0r#B= j<== --(믈'KRK J=ԭ!7^jttpICT_S8\cG2e RF5BcƎ}XVv;Pskٳg[RoOIԔ 5jtp>fzf:xuP?g7g)rSEzrǮ]炃=6rwy9(~$-[vl߮)P(\pGڵkݼync . u}()|>ĉ۷o/e2ŒH$,k/.\8A%dYYwdgwڕ"rssܹ⢩ F?\ppQ==[Hߐ7;Yz(|Ǎ.\ب|zEEȑ#O<٪U+X^\|Z >lҤIGPj(~ݶm[TTTeeerr2}?^zuÆ f|~R(#_0$rpϜ9ʐlư[4`_{cb=z6mZQQѹs&N)WR驓._TtL&ҥ)iQ~QB34uwN70=xil6{ .TMCS7M=p:)))Aǃsbq=Jכ*ijLB,#˭>}4|&Mnݺ(??cǎyy7Ba5k֡C{9;;iӸqcgcƌ133ͽv̙Ei-Qrxsrr0 *2̙fΜ),jJ$͛]VV|nAA~AA~bbŽ;i6iU?sll_\ BǏה$_аPGILH~*a-zrժHD"IMMMMM?]Â䔭[zyQE_}-ssz11DnX$ɂ Pm|44utWKʿ|YȐ! md{eP^cvݧM+P'iii d3OSNbjT*=qL:?iccf͚kV[[[g?~\*D]̧O={&..npEyTxܹа[l޼%&&&))#Gzq݃ꝭݢbc`ѢEW\ILL6ݻw,j=saRuzBA'-,,~^<""211q~~US>W9MCSw MQc ӑ#?yıC8PXxG1ֺiI&۠&6`#G$&&^tiȐ!#46:%$ q^Oo[ o5xѪ9*-\nIԴH4y'P$3$@@ͿY*<O> DGE=~kn]$C`%C6,^䋨)E]5-]ptK[8̾940\0[%ԡڵk ::Zl&2RhOIJL ~駁Ǐ9{fњ 27fV&MhZQ>#9)9ѣF0}TjntyoNWC}vv@ xJϘ:Çzgy]ʲK_qv/ecc7lܸ?mX^iիW_QQT^^N%`X=Xk~`iXh:DG==w9  4w\XaÆ{_̘ǎ;SLԪ$&$(|>xQlꄪbOR蝭&b8>w > L6`MJ`}JP:={Ukq~+ڡCQE@}݆k4ZA._ k֬NIIQJ7󠠠 & a07N•Te"1)&E¼wnT*5kMnR{x=Dw!,… X,Vhh&'wvnw6 ymcߴa䳆70""bㆍ0tXcZn .--ٰ^$mݱL7`._~T*DgKU¤[ ߧB@l6WM<==޽wOiر9::޽wY_''BPͬ޻ײe˱cXmծӣF 6lx«Wbkʆ ihncVx /lܸƍ6lЩoiVr۠Vԡ6̌㕕Q;AI=luʘ׹_?*,lڙ[]b%a]k싍/)l6{ܹi@R7ww6-J)tZsQ',4^^^:88+9)9<,lGjg€yܱW7M Y#biH &r\I'%'fgg-i"'Lޏ5֭['NnJuGtT9sFuɓ'WXal0%%%%%%)N|>!)I+ss-[zN[#BCv}5~ĄUF_ ihncVx ӔiSCBKKK jOYYѬZAzy\( ,ݙ}ocYڳ@X$WWP U IDATDeofjE36ݤIӲ杻tN:*~¢SЭkW333j♳g`1=9󏦂z?`@ee妍իW0:wVVV|tso}۶];gffֶ]y۾c<immm-,,Frժ:?`kkx0k׮7mpڴigj l1?:͛O>矗3_ѱ$u;gց_}K۶|>qq/[^mծӣ81|jss-[TSe t]a4 Mm, oajdk=>|[[۱]J ѬZA~'>omm=jԨUVj%)K.sf5bd23zYV f[GU AJ<+ B 3{.s٤e<ǜ|n/ؤKmFyU,Q5&̸f5/98ɝFhB!>u\CϟV_֑dل!aW@Ȫz !$[Ҝ$B7e6d^=y9K"B栗ȭljԈv, pXR(ɪ, xNXńȨn@"qi*_v#˱{OmE!Bﵚ0M}Iq\+{)[*SCVKC_pb0<œMp+$peWP9B!$I&_hg_nQCӇ0,eV6/'m48MZXx@ @d[RoV!B*}"[IEċGGY_>|[a݄҃b|3'OlV`a P6)rw +ˍ(B蝥sI$ik]Z@%\ xQa,l A}qan63 ITXl/.L !B~Vˍ X6.f033>Yx5GqPyH)T=  ,E@%x8K/&pria4!zv-H:ޚ/$ll.\x̬ov`n7s;,k\3`$A&CI͢uBB]1Va g|K[lgl>2@6,H H1$ $*疶먝!лA-W捞Bb<6xb XBdbR*I D,R%fP-#դL 2g$UB!:yf%*YR6bY,6KJ, X,i H`A$ل$AFHRƓT$IRFJI)eWse";'K[=~!zvmfmI@@& I`sx>!F{Y,Cқ u.!BaB'!)W>B!To7x̍B5tUUU99b$B!& ssݹ\.17B!d5׹p!j^W rrsDΖ#B0wϖ#B&CldB5UU1-GW//c%C4jhϖE"Ѩ1c]pw vELCzF?OgTTT;|ǟO\CsBz377ޘF䎎) "F  ļyرZ(9 &sB3gϞy|!ٳ禍"#BB}9ù!Ù1{rrrtb^s箋KԩΘwDGGU~O =wBAAoƌVVVL8 O=fH$:~x+''X|<(("<Z: 6d℉G2Ggb޽b\'fff]:w?aw?o&YtE"рAdRiTd$u hiڵ?agf"#K$jM11Wxff3gM'lto"6YSVQQ[=&&F&7k@uȴ%JO'$rQ}$;w2>\MaYlKMMp8aRv!?o޼SOW~p.Bp&ѣxk׮]pj_~%..^$+Vɧ={NMyq=uE4|!  ,,B6nݸqcǎ֭)m87 3+fϞYYp=\.ߖ,Yؒ WTS iE;wr]tYh+&P2e\3f-֭ pkMX]Ru֪h7XXXڵS: !C4ԽiF>~'A'5J);w3g#MM6-%9%((hȑp 2e25:Kn+Vo?8::[mvs0ц@l7 +3I& YYYp3ޣe[6.;  u!M"y eee LkY%%朳֚jZvӧOׯ_ߨsBhБƍ*NqFaARxIσH$fwZ4ssׯ;;;)VR>׹sSSӲ3KKK׮]{AYhҲm۶o.))-((>lA{ xQYك:XXX]Vkl+_הZ[ HN2DԽif-=[GS]Ӧ, <H5"TXX8`yxprjE}Bŋԡޝ;ZK>>S&O5jd~AIA葕i5z}v``L& <{rivtj5 $gdM{]>+7oN^kYNN b ֚yWVTg_q2]@  ,,b')fXaaa??SXx9$RT$;wn֬Y4 %%9J̕M߾rȐ!ahP( ###7oCҴn :\]]]ZZq&f.qAjjP(qfkVp\| ^<W^A;\]4-Hoz,*&ky漼|lڴŋbK,í5R7nb4v\tőׯ_^b)))aacƌoڕ9rۧNm*5kn)0m_WJƏr8ƏOHH^rEƏO%1bԭ[O!B!2%B!S <9B!Ԁ)itЯ,BDnZ^ѳkyScbwmѧ[FέuB!ôܕ?}7r $IaWn~1.=< o"ʴVaZD}GDT*DW7: 1rdeiYib2b^D"_I]Gտ41ٲy3+{k.B\]Fm5r jXށ=;#SNQ8tܢeK ٲci)."Kmm~Ǿ}DhӋ75%#7lرND0ᵊfQ)C5̮F5L}+LJX *H D"Q@XJ\ZS 1ѧOZ|yV={(իW6!E/^o~ $l#NsLQ#I"KF2K$exf͚5klٳ?3gΤ'ODDD@˖- 2axGtbDx-[\nj={7ěyߨ=<r>133ܩӸ'OPUU_D"CeRixX9L1]v2t( xz@Sh*x&Vk:y*ZX,n߮W_C>۷HHg~~?~!_\U# `dDΝ;cb^~{[jMt ̯,^\YY9g)&@+I[[k_||d*rD ~ɖ),,,,,LNN}V [l\;Ծg~j`֬[CH$ii{m+:ut-7֭nnw;wTVVZYYݺ}K&uUmJStm _~}…{C9s>{{W/ϩ,n`+bX">>azWRVflRXtɒѣGJP3j O蕸%%ǓNfd[[[\"2""2"bŊ_233O,Xv%&f~ڣݼ9992y2,Z.ܼyKFC蚠b6P߁Ĝ=svA$085cϞ=slbT>1_\ƭW UaA?_ѼkWk*dxbLjJ 5@=dҏ TU<-<" 8|?."#Zxc Gٌ3<5'NȻѱc5kݩȝYY0kW7okˤb6PњVwh߁7 X׮R`a@@Ν\nΝ.\|q[u`Q"w.}yzV/znPxAӧ5$%&)&KHLN5I Zo盙x@AA{6k8~L&OOODU˩rMǰU+WŅ)m֬^&|`>ZmqZ;>A"4!Tw['bѣG!3;vv>j֐`11BP(FEEm޼_+imcYYY4 B@l6[p!!AD^8jL@y3x6lܨ8͛oݺ%HnݺeWj@KV>~M@)C~%S-C5kRǏ/mqjInWb|7>Q}))))S6{HԶm[*ic;6..w L@y}56v鲥G OyXxXii_}@TIDAT%OPZZ*?Lx]0zU]8de2َ;7nT-7^ύ !TG >1w 333[[6m;l0#m'O ,).&±eˡC7^}̊ MR;wl?ϙ̬וƪ4jdתU+7Naa֭5/I1oŋ HNNr>ϟ?t0\;;?w홙lϯi,^^gW-f>qDȝ;wm@(6m AK.=tPO~ѧUTE]Iݰe>_}!`r0[z- 疣ͥK׮[sǎ]jZQQn׹yVVV-{N۾2>ƌR\kWoyo[K-~H$ ߱c;z!il9AشttYvcϚ(%Ow2ǾmZ'zպۡCcƼ i:ՇzfYy[mZi̭^D͛6.7¾Ճ!H$cKrs/^<PRp8#]cs{xA!.JUL&e6ۮݲ2--,l!YV*`ƺ!.tj,JZ@ [p,-)5$HBJ$|>_QȍzgdMRgxEM6ͻqښ>e["G-Gd2YuP$ztrя;wfL>%۷Ϟ9sA5u3i6Nx!?h~gђ7>ʓ_o_/Qk9xsf+" ,(un{4J։I{d2dB`Yeee;v:NNNnn;u\VV6{,PU}[sM0=:+%a^8pyW޹kR4䚙̙3ׯhx>r۸qq?a|)M]Gi߮deg\khh| /H$cG;wΝ2Gי_~1`@jsNy3OX]fC 3wR)>*4,$…1cfee;vÑ 럜g^ݛ`0}%Joʎ_$PYS=?pP*hT V\qq׭c2YŽ͘9G;33}tpIWRR.I)hqF^cK-=*7yP( -mT8 7ha*D&bBlme咫Viv6]s!}@_߀5GCu:ÇMu,x!4 ~5T髌"{KT@(5٤Z=qܽBL&5P`m['N=Jќ:}*>6>'7٢JK6OqϟϜ_vE).&_+Z AQ!([nG +*du>Dk9JEwBNnLsskܙL䓏w,!6уM7/MVpx[`ԅ<6t}+lpvJ;)w`7kZR˒3f$Z` nj|y֭iiiiiS|н4w4坔ujIUJDdrEqq 7[>J1%74LVխu!4%m ~K%xe__`1ߦ\!` Zmdtw =J))"h(Lli``Z޴qC|\l]}w^FFFjjjw~{)X|9Ѷvqn۩WwYC<Ԛtb1N@)3.kCGJ[8Pkz%vvp-:6ƻa0s#kArJi+~LPԲˆmޢ䷥OOOkkkT啜|(Rym///Tjcc`oo;vh4m۶GEF҅K3\ٳcrr+WfϞݹwg9p*4#ckc'1x]{k+M62wÝ 82|AAZyYTdE̙GGGd2Jh͚xbX2 &&VRFEF.Zig^x!gC̰Uĺ(qigK9/#yа0?_t_,,,rIAS:%KjٻR*,<ĤիWLAzJmټEx/Yp4x),@ @hbZ1e2/$D'l`)+/\y [jD"ٳgo=6>%^}voٹsgyKӿؾ}[sGo񮅙!4KM 9 :NeosĤ/j4>"nt<_P *8(g;&LPqWW ,hʝZoceiTvqQɭg! }}'RlhjKG4  kٳ/_QYYf---Ǎ9^m ]sfxxDxll\nNtuuYF tss;wܣ2ame5~9sD@8: 6M PT[[;ujk]Zw_R30p[ni^l6%dkkbupցت]B!P($<~&k6Bmӧ *)焟\C&oBRxo}VTWWx{B!JRHٱqǏM1+//zB cBݟ&/agIENDB`luckybackup-0.5.0/manual/data/toolBar.png0000666000175000017500000004130311530663462017706 0ustar luckybluckybPNG  IHDR7{ pHYs+ IDATxw|UE̽)PB *H vi^U\]*vE.ҕ!$߻NqC K}O>/̝9S̹3gΠ"ұ@;ŏPbFEyiQQUQ ЏH+E>涉ok -J{-!rmU׉.2Uk9v|zd=FZi4zmsRjEzfC-__GhYl_;6ZsT hg[(V?UZ7oy8t0Bc cu#u3Ŧ6~oV^(fjT"DTpD?MZV]Z.«uRl~4#DmdD5NT!00ƍk;TE6B4.f^YklPYے3В#LySa 1Z!Txs+to֬HmhBXƀ .P§~euŅ _88;%Rg~эۺ,RFiWDg:!J)Bd#"ԙ8{Ȥ>0Bq 멑oB*!:o h(j0Z0X9'F<(m(J( Aǣ.xm"@#ZqauM%AQBN+fwm0ZE{KU6wIcw-6jO FUUYm6vD_)/+ $ժ֨B@SJ@i[ն*ֵE a$"- !D)p֢#gzfrN!(QVq&SԛJ}] !)Bʶ1J$ ]=hXE4 t<B93?/((CC9YQ';o~5 }D~OQ Y>S ֗5׫K)ɂxX%Ah`EIt hӼcJ(DUNy!AzeY&jl6Nׂ8#k==E9]Nc_l uG}J)4yas.WVWkQ!AX{[slƆcE}]OHCP(ԬB '8bb5*7yPQI9q8&3,?~XNmgHK8o$yڧ&Dw:+?4^;'[ƎuO$Ʀ͜!4eThВ@oBB߱k}?`Xz;;bC!UQ8wNjhI#ѷoߔ,{iY'|`W 044ϴn^f )!ɻ GEIB " cNG0!yb:@=] qUiQn@#V ;KEi9}UˊPJ %Vym8aްnK~!;g8Tl??>v2Ss:7VwM(!BFQV>/j)GFa¤cs`0xVL !^WV _}p#'NTT599!3sb 1njcll ɡ/6}2{N{>Rruzĝͯyf_xG\Dl i///۶ (J1Bc6( $ }R 0ƢZ]G%6y&`]ͲPU5 :bV+l#^`0V XT!4ڙ3%2PycjJqiWu:o[BLgr`1&Y+- .iif2.'z-T ﻻ^B>poAb]\'}s[#hRN2ht)=ϚթѣZDMo ,j8gez=cBu*k $t.`0x;eNbɞ+7q/4b/Y!ꏻ6}#~Sz ?>YjY9Xj 7Ç[OS?r7ߠͤ= eeMQkF X(RTeWT *J(K6%u g_BHQP0TcUˆP\SU"+7BE%JI"r.PF)4E%`AqƉ"~BTY AS0b8o THNktlL ݕEQj/{›n"1 mݺ]QYYQQm9 + JNTPu۶i\pfUEo[Ff7 vq𤀢w]>0wKgd$z!Oϯ>N(zm$[xO7e̍(a}<{lO|'?^ܦn--/MKM ͺ2 ?aBI@cb(XM^{ѣn vҼv5qKP $Ebu1b2S hJ-FG (cYVSK ,v["Le*R8R(U9A@$E%9e:.f^xqt($] d#@/zc~ޗ.\5?2Z&kڹ #t:s#B~TEe;wM8)R24LH+*]%ΜKDRW?,5%uIY*>PININ ˝qddA?,s-A9F@>H)GǿW˵))Ϻa{oK=i!9w4Bx 16v:~ I?;9=z1stw^p>ӏY.df`xs?8e*801`9c*QCAu`20&a{6m"'NHڵ˳~=9| ҝ;iaԧw/j6pIB 4m~l\|{^oenvI=yeEp(Iu5{t9B+#cB ^m1V-zP`@vDBi;4.kkщbe4 g2 A@"9():nh2,ֶxHfGyeF)T?%!DpDa`f]ñ1 %%%%`c,I'.G?^VYٓ*1Al\|0`6+cmnF("+##ueJƽj㬄|b)gO~ݦ(]3y%)c[ϋ/tFؓo'ǥFx][7224U`! 11 9^/Ee߾%EQ(H9lsgb$H"h{a㧬д]yPwIK?rp _TYuQӆsKZuM+#J螽' W[:Ql/x~~?T *WH,>}r\K,]>ÈgTNkw|>oBB"%䏷á*$6m3һhEQDI{մ⼼riuԶCAG ~_U!)g,:BD(~`s(b hl;2 {m-Sd@mb0R*d0vr~2JHJJʡVk0d)e]uw&yrJ %L Q_VY qsA81Z̹ L>_1&yb} y41Fdu nuaCҾ_UU<̭ |ΰGŪB͂A$d` ( xU$6DpĪ4w"pĺ ^f܆nGw|2h m=}2ydEF HRU Ѭr9ӗ\, XV쎠6R+]{1s^vמI_U7+ TBb#u|MRJT0ؿw=zw]e_v1 a(h=9c)D&AUTSpqtQDT%R1qbfI̵&";kְ e"ө(sQ4qP÷EE^,bخv2MvNܵ[7JhFf?36n5v^$*!:RY%'P"M6KD6|(Fvvvl3Yet>`=0)|~"*^V_v‘£Y}΀!\'|w[Gy;LUY(~D|Ho? {$"GzH;נkfWD[Ç/+罪}0䐬m; );wl` .k!9f}(cDwHTgee($,˲"m 2 N31` ѕ*BU!Et0H&$ĉ.꫈Kv{#oh4j;ĴI>t c^/ሉi;ͺL&^9)<^Lzzv.AIrP3`fVVZ^V^N:!wJʯw yW+O۹Sq[? 7W?MѼ[PU)f<4YZxɒ.BI%2޲vS)xF]PgP:sjDJY0*>rwe۳v- ^:M7 d%Vb$ H8!i2Hƪ_^Meeի;w\RRq00a-9Y\V^}嗇:s]/-,y5f(Q ,V*pU?WE6bǚ-& $& `Ν͛7/^xIIISu䈑yjβ,76$lkk-U K. <4=S@ 48 Aqq1B(99E'Ntjɀ͊PQP(B(V cB12PhX[bB$$L© JZj IDATRibD􁖔JJd ^w+]w),d; $(!/+v +n0޳gwiI(Ii))ي,.glN0nrpn4=6t ⅌8٬;3?*AJJ\ouZۂNFeJ^ށ%v!gi!H$TLbPRDҔs>D["c_)M暄K.:TV"I(G/xC7J71xR$yݡcGs+J zNnlQ/}Ooز}; )C2R-9`bTIu\$Osƙd챇MAE^O0PKKV C̙a 2ٹS;/HD 5M#77WQUϯˡ@w~C!U% (Э[ㅅy߿ {ƛ @}4M!`RnϮ/y~LJNڻw;sьjw}cnתGWBF4 Sn9HFABP\\(6 2QU햐Cl9A9vŤ*!EUUU%p8pqGj⾛*C=8,_ۅm:^&FDj6}:uoEL~M H4e !k6D'`6WtfӰaufl6ͦyWۿo |w:+1]fֵfjk0Çw_}_tM KI'#'rwO?t3ghS۱Z-rO$N՞"a]ܔ]z[jʙX t릔C(y>3l6Ry@ aMtڳ;ӛ|)mT˲`TblaFw8n&,X@Ǽ ҸFi0p@Qw7rss7lzE3J ^|zw N|QՇxCLlD(EX )9r2/91Q,[:㢋֭[7k֬;7-SN1[,-S Q}a?Kٽgi󄄄>n>}9]3mܸqРAˊ+k'M9裏\*==Ξv^MUʍFØѣ\n0;$LƁ!PMNN;39н[fT5O,)+w:].W dBp9gaEN{i0#%F5h3'}A׻Z4?TKII ׌]<.П; 4N'u !8rÇ9(XQY$5kzzZt:)(Fa:Iڼek[$p]a@Lf7׬ 'o3bZ&W>~|o}j!Ѩ4PB (YAHNNr=ne%AQfsbbbRRj=Aد>^7 aFb9륧OHMt*n~#V#.hl%fG獖c^??fShdOjBnbܸqvs48ݻ]tQmE MX2plĥਉ]RL{7=e\"X9BE ƾ] oARDQnYt /Iz]կ_ӧ?bO?׷o={>:[l~'Zq/_|M5kp _Qxy`ZI/YdʕƏDaŋo6IΝǏHMV2%KX`СK./k , ,PEo0,Z(l n2eJzzzo"ЮSQEQ4LG&W}0$oнb4Bjv})0ƚ-HCFјtiAbbbbbζ@v{REf 8p~ZT$bɟG|։sn{}stVT9#!!!g_6m**sdڦO~C),%fb:- 8(8wԹ;wjg;W޽{9͟?oӝw9OMZ-$,Z:aCgddVoػwoTj~4-a<˚I[ֿo?wYj\xג>n?u q99ro5>'995J(Q:)Qw|C [:wh6oi_p_SM~YxK#zf3zt~~t[h"PBIql2=++}p&Fy(V3h4Q^zگ%Je$Ibqp~~~Yig@^,F39[dI{۽ z^Zs΍lswUÌ>rǎ_˫󒒜ҬFc^zQr C~g՝J]!XJJJMpoK.ޭSۈ'[nΝ91ޠ?v(nNjQDwX&X^*jJ:8p033 A)e̘+Qu:Nk;Ky <o㄄>ڤf66N+yyuUV#rMFbcZP5鑕_R3t>|=$] ܿ@FzBĩ #Y>#t#FX*++Ǎ_:uj#G˦3&wIMf̘6&o ~ t5,mXsUWֽQ5[o0#ZˢZ&vyc{de-Q<3ԩVXѲ'g[EMvO=kNA|wѣyZt 9q'lX, |ӳGΩN wС$(m$$kΡKZGR+$3ނ5/ﴒ:Zk=UCj6l3+e}+@^ޡC%&&Y똌{k%⋪>-_)gJgqƝ1/˯l6?eKmV۸6/K_y啶>]X~}#1\Hu۽GzhV}׾ 6e駟D}Oofzzzե+hV!MFS#G~ՈdXSSLFS;\mV^:Ks\3h4B~6X̖䤤$1 @7, ={dn>6^zƿ$I`0L2%P[o#]HJ Q1v9/\0,5*6 %nb=ԍ74}puK?֚T^ n}Uya\vl:6wh4fXӏKYyX*ye~6v^lAVb4+Fo':sn_A!@Hd2FPwѺt,j7qmZ&,4oΘ kF3Ͼ[֊:s.]ڵkk_9klݷyם\s3- >ŋ,Y˯О=߿Z/zg-[}66m 6mcF޴TcZ^oy K}{p\-(V,^K/9sVYY…7<t-7w}_|`>gVϧz{l48g̘xqqr >|ǎ ͗vck aiY J 5шlg^%0f_=mA3es[|[223Y- {ۿ__35(Ut:ݠAX~{M8 W->BZ#dMՈҮ$vn[#1A`5h4B/Ree_ɓ'ed{|ڴi?_^p4>a„^~.\xW_jA{s%BR :,-K(\Wcsƶ2uBTBT7uy~r]O+d2:>[&ʃ oXqǿ曌QUU^{UXz.7 _S4yxI@mϚ9c+W>`%Jzg3gμNg}U_~q9r~͆[ojtJXcP8 !u?U~Nk⸎(͂3.)VZy`i|͆GWx6m…7;jN+**ѿ^{jnSN5k֨sG͜ B[{__*csr=t0>rDrrR=(L4iȐ!GYf>]IDAT{,g\NyϞ=;77eʺ׽sϺ=yrxB" u]{DZ,k2 ^D$1 CӴ5; l64.,^43#l6 B>ľx8)޵FH.SֱX,,5kh0aټH$jke@%޺қf5!![7wZ;RQ+R oTA*urssiP 0u[6/$KfkX,,6mּ ?7N YdrEdTԍ(#Q+R oEE QE$òlA~B(.*Ѩ-eF`m–-).օpaw5uEum54Hv[8^ϲ,qM˲z8aa,[PPP(궈ui???Q+R oTA:<; 7un5s希!4˲8Q+R oTA:<Wm۶w Ϋ_%Ųk7kI @F>ך_ׅ= "mBdw^]2g8Vۯ?Tsxj585^z]`*RnϵCBٸq㪕f̜/>G[cB.' cG]|[GRv˲f0i(J*hB:w;BN=#Z\D0G~t?;8BM;Tvlv-+U*Rl*lR٪e)SVTBC_HIIٰq.Og0DE63zt= !--OǦLdsOҎsRZ3zIP\\| >[tiJU)IOO3gnll+L}ݻdZ7NzFyF3k,8~7\lYhHzruɓJb̸q _rYÝ5q>Zmɞ{"4q=wnvl֫W?S~۷m֭ۚ5k]?ȥ˗{:JNu܌ɧl޴qojM[6+m*uR>mCc=bᑧ­XxN)W\3O_r%-5,B@ k4>xs  ;Ç~(8tx! /^rUV\z # [o)_?7o~XXB={]lƽ/SG:mZpFP+'gA~A~QQQPP̙3c?4eԐPB1y$kZ]H6u@ɓWǪ_=>:'^{-XH%#Fu=3vDo=M6m޸i[o.[AE~9W5YSW" 7q=7]e0cƌPTgz5!+lފTeyܩ|vb\ /?^lN!ju@qqq|y*:ݴs΂ֱcVPPsNO,]Ə6lɓ99a|D m'>wp̠ 3v/1b;tء_YYe feeE4 /Epgi>0?FzG=Rfeg?4͇l۶rW'wrssBhh BCrrrlBm߻CG"L&Gդ쯛p,۷o[~eW8V\?| !$3+sٲok]d_Aguؖz+P(s4!rQwf7o}Z֮: '׮Ryy!kH~~Rϵ#_$ at0!!!>>4KzZ/0uʔ-Z.l !ɓ|#G 00(59%** &%^Q7Xg?,gtDxh4Wĺ&88nrMmSD^"gLQmҴE{MD<Nʇ9z}|PP~{螄>im[NO'$[X @ R٥o_}׽ÕJEJjJѽz[Un^nn^u_E }rekN᳥KΛ'^{O̦ ۼE{իW[{eSupgMiEO(<AZ>~,\?v[V ؿn^l~?hh-X"Zew}m=w0 qύ&UkG NIoiΝbccGصs _}M"L0a QQ/BKζOƎݡ} S= zES=͝ݳ;p@>'l&8|k[g}LD'E}_~%>#iNv'l~q5x`$b&$Sk>_R1 )zG 233'NH'pF͝1`п|0n8kW h߮,F3z >z9gk?~|3sLѣǸ1c+L~H axСk<;dHm]ee]Y\7nZܪիv;*|c֭[7m4aFy%eSW"ۧ8pƍ+VpcUoEBB}ɦ͛mj0"ĎpTY3g~E|7r?Otk+",l ٰa˖-ЪuO. VF?<Dsuܝޛ6m{_zSO 9sSo 9̙=.֙3g? /B?@!@!0BEP@!#0BJ8@!T*)/B*)BUQg'Oc굙ۉZ!P%=0ưEkmjcSNp+Veeemڴ122ғ2 hN{Ϟu.]µ I$3A!/UÖD"9bĺu矲9x{ӃG9|0gtЄ ?LMpaÆNӴ5̙mۚsq)#!4ypPA*3ٮ7<?gK4ol޽z^bE|B'NZ8qĉ`޽+Wҥ޽{;urժrƵ 7?~u8N8Ud{IEGGGGG8/ 6={|ƌ {qR r;v\.7v,߿6I2R 'p©Zԉd2'^zUk֮t?~5fjjD23/JV[+2BjQ "(fիW߼y Pddf޽;0 .rԴ~ ͼ[)#m@=t!h֢ _][TXN>=g\g? ؾctgET!E5$ݫ4RzF6e*;w]mڴ3zDƍK q^1bȕJ!P2o x˲u]*BuaM5߷gwGZB|B!TIoB XF!԰aB-B9~;B ; BnJ /R!kB!`B-xB!g*)BB!೤B9QC/PB!԰? x!TDZ,k6+P(d]}[Zw{AIjx^aa7(DBQ_b6YҲE l6%ҦdJ1Zm$  F(Kicr)#*lvwxa]o*ɪV7+hn]; p-Bř4Sm'@"#.^[”kkk,ًCӴQZ.CqN=xБQQJzHTFEEݺy²laaR,*,$ &R,.9 #xUvϐ' Ѿw-WXXR1 ^5.$GB)o,"Z.Cr pqT*-&B!Z ze ᬇu*4fjo~Ki(؏#@ijw%EQ8aur8`5Y!\u%޲ek׮^#4K<}Pa QG! g$Bmca^[jk;JP#U\ 9, q.ZX%*Z}%4zwZ₳fwn$Q WI!NB8QYc?DWZT\bJ[쿠}ETxPĔbR+/|5^Q 'h e4Kj.jw줒k?,Ib[k %%Fʀ8i:b)t$s'6+PbT1MdF 歚FztYj`# Ph ݴlo2}U" ɊJZ-PȽ^*;O/R&6nԸQ2PAX86)v(Vr\H( $ԾSZP>w\ٳ,vgG@r^ <); Pqg$w*塁h3BVQZ;MJ/S\|5]IfIR\V"SpS}D"Z,Db$8aޘ3{ܹ .4k>||뤻Iv"|\}B#GG8<-Ŕopq ?3cs nvZ1k2~K%na}B\jgf͆ZvvVhX(?FkCE^!P0p7?*|}b+4E8ڭ촜R,B?OYZl$ E9H\5]IN]2PY7vk %[kP`]Ho͟ʤI>D.kھтRS" 99Z]c3'BU"PZ|rQIE)|4!~RDrRH|U2d6M&FP]ɧ\.jH%R*"X o6" zX"IXz5.[K.0T<8b X8JaC0 XDRUJLV}|Raq:vFL 3"H@ ,ûob劷z+ `~~_xaǍcf„Μ9:8ovW+ٮ# PB!4М`-JWQ)վjJ. UVrm6S3#pbeYVݟ.Ǝ ͝7o.\3d ɱ IDAT l6{u3Mv0hRT C?پqD4Tվ~JL,;|cRȠi6Z-F1҆|#+"fw -)<w*y S?iX&>HDdRH$xBd:)OFizB'+jtN.}>D*$U~#BțY,dDb=2Rݹ]n ==s4@&hkc~tkfwz _\T#JP(0A0Mi%r'QDZjCK+^ ^>׮7Z-N 0];>dO|Ͽ@hˌ_.͚uYT2t:s9 ŮU@9#x:Qu7 \qm÷uϟ9Sm3_/m蕝 wϜusrkǧ".XūQYΟ9Ay{=:(}=jOh찀|9{i59ٕS |M-_|I·22[LڡWS23ѧ|keZDc,m:br< uAř'yYaΝ9Μ:wÌ&m<%xJ+]\E#Ͽ٬OV]9ɤt 0+& hW ~{F|T߼şYT~ae\>LU[Q@r-ϝlC;~ҫFސ+J[.;ݷ@GF~@sY,sdžC.}V&xy>_Ws"8Ka1)Oj6o%KʳoZQyP箏EY|}K5EL3+WJ&Sf3-eLzT\pw*=4YfEN$*ݻ;i)3 Eg٭ 4Mih,[ e qzᅦ[>x·rufaף9  .Ձ|sM6eq.9M#޸mX-[9wB| y޼n])C>+:sf6maatPn&r+|;'Bq\anaFqz=8Ġ >W14_iNeuƟ,XKӧO{O^-((eeF=[]f˖v@h.o4}mdtbNL&NOsl˔7m_~ h:|*Qf(3#|@/v-m42b+ =L}mZխSr=;u ٴ6\o}b[4m 8hdO 'g)fF,_.f(yіgޡwƟ,Jz짒oP5) zre<{6Y|HK Oo@ş^xh3g;,ZMxs'fd_6zݎ}63k;eubtcیK̍l/mRfhmFaUi梂}O~kL|$ío[l סΞV-!Ξ f˭[7nj{cYK] !P۶۾f͚ ^6#B9A@`BZBn<؃1B@׀# Bn![J!{=@H XgBnprl4Biɣ*?yABHQQ׵R(oGӲE JEQ*0[,2,*\6ZmIbbNW*TiQXPXӁ+1[q=@DU\c -H$n۶h(*,0DҮ]ϛMFAU O;d"Ov?²   Fv:0KJukc0:]-gݰJK fM>sʛU4zcǎ%%E|kaCwRr^Qqs'3YP EM?IhT-dYHR>_PXTT*ƭ7z۾#"#D( reC#Xd;x)G&G2S,:B_5 E|$Ao,8;rAo OxkZTZBoR'%%ڒ' T?ε}Yv5Tf>pamu9jK}}2҉s Ȑ!C?V[*+}WM֩s'M T780[z: eYha-g`>cƕ+WQTfFej)FuHJ]/8~A~s8Yk2Rjab8B]ZCQ1?<xZa𻚳eٷ~ʕ+1˥DBQ HNۿ3iWlc!aG~9T}eD--MB Dou\3룐|$4ES0?}|'ҥK_9s4q7l_FGGϝ;W*ޜ?osrGD 6dee=H{I&`2V#G`zȑݭTLhԨѻwY7z[vG80VZyj[b8ɌWׯ,)V}dƫs~Nd¢_;RuM!W;CAa&77oh4%Ǽ$@ܤ7`WK*ʵ~e f[wn0& `=*)tJ}!GMqfNd,٬\Z. .?a÷mv/|.˗.]_̚5'|_c3guij;>xї_ovbM>ܰaIwOg޽O?=P!ouWwm U[oP`k7To_,]8 ^yoG5k֬1 ò}X8yUٽl]&{k!ëW>|5;ɥKQrʦQQzaqq*/?pҹzR])صSww/\>7rspGtvjH[6oեJ]t')Q.WoO>B&$ W7 04-#uo®YSMծM}:_a y:cZ' @8!2MfNJ Ib1H,1N $#3s̘?4m?/ ׺h4ܜ~>,,4''FM"#m۴stWUORϳ~=1fأ~f̞}yzQRR v GE%b~d2@ĺ(ʷo3KVb`n^Nn~NnۢY˴Ԣ{rm4=phN_դcLaaY#7 or7q ?eX_:{κBޠwHx: %EK,,g=4/aRl]ZdIHHr[nu)M@rrr`@YW4:vԷݧf~tWyK9 C;v3f̿WΘ>bƎzkAE0-l\"¨?7o o[at3f&lW>ž}\`ʕ};wջvJ%͚6]Ue 58`-NݱcG23##>ZQ^nu-B+axaNvҭ>=uxdJT:v$:%-ο!:߇ƽ:a;7###<"^c _~+&@޽&<5ZȑK-t"k=MApw!e;9ddf.EP8=.nz\0hРAن8e)8UyAE}'_TXD(jٲeE[/$8=@/*/ \|sM&n'Eywc2sss :=-fT5Hxuzzaa|`߻3RSUUR:ٸsx5u힦iLv>3( 0۪|b?,ɪ(ja#`JyrZҊK U$\T)0+]~yH4Tݭ!g9u#\``0`ЋB{~ H,?V"xb`3Ba#'(.)24HJ2(((<,G*r"Oz͸ұ]ovru/!U #h(,*ܾS~VA(J7i8 @j9L*rX\GK s{`A Ü|R!@(ҡK^oN @ӴT*H$C5(+nch&gcyB^l.rCˋ^[BțaB-a r v!܂B!Tϝ!TGZ P(ix@y"5du]C[Zt^W*TBȋX,Hܦcp6mtdrBȋtZ.KX@ȦΝZ"a ˲EEJ ?a<ګJEEJa|}@y B``9_jVHN;?wx5i CkBr!K|d2h.))EB*rjz_.]=sZ,!u8q: J 4??_&)J!~jy "_ӧO3ݺ=~)ϓGJa 8R[# e%IjjjDDT*JM48N"s, 5:eq a ǑZI@L&X, Y5Lb8Pqˢr7o?xPcoH$0ͫV:7~IOyO>?*ɄBaN&'`6mګSN6~O0cnxBz9 +J@ D(J(T+((BG7HgffN0ѺH4_ܜ 3gjW"PjY5L% (a @ d 0 # b4M*A}hl iiM7T(7(GwxsjrW^4MK$tB@ `F$˲ Pűd;IIFVb-f5kրM/(;II5_<!u늵:JuurrrT*UݻY177h4B(*).V)4t_x6n̘/ɓ{E1cf̜jkn0B^\&b..\fҗ :dR(  "Q5t萡CBq3bc?ό1|@y|rsj:/HTӹxu@FFTLv!oAӴ\&_W‚.Qá%?!ɪ|:v!oAӴJJJ߾.]h4u]###@&8; PC J:TRRRi8 EpPPhxT*r"a MJB$00@7uqT"b'R!]hJ.zؾ$ʰ@yj9wz#r v!܂B!`B-a r ^%:jfs] 4M{r`6E"i$R.4Rݤ;N轁n!E,@(jݦ`(*.4bu6/]U3@y:^yjp}:&zN`0,_bp̐1CXa0 STTdMp"Ųa>̂t::\S[ntRXBqT2yqIAfשQ-^d̙MdF|Ç7gXdOvْ%|M7߹sguׯKyBޫW֤7L.۱s煋V._}VpΞ=6|{79y-Uh{c 0B^j_bX۷)׷iK3p59FׯoKAH%ϙ3[ D#cGtٳh4իWhGVju܌G8n7Ǚ #c9KH88k`ML&:uʉN8"ũjkvȱ555O9 { bVƩ+ IDATn~|"|/L&~>//'DBBss E7n{:~x֭effN5}.кh(4$Ϩ@Üz֜spQHKKmܸ1Ço޼%:{gΜ-cF,M z^,@~AmkFii֌WOR!ɯ.e4w'? -YYYYk֬'رCt$**t򤤻FVbG Ϸy;vti˖-^s/ss֮On7yG!ѭ>qa7맽=ƍk6a+W^YC >̰|afLmU[m=j_i׾iX3zt[v!CxhX(3Q !ۘ)SNbSh0!E 3thLV7^luqA8bcGƺXM? ; :;+//7דt4J1MRDf_juff&TLv!oAӴ\&;ut}EUNJ.<ƗPKXz{cj(O,?\&{k "U*UA;w!@Qᅲ._t23=FQ !HҰ~p(ࠠаPTZD@y 8I``^o4RD.*/; iZ*J$ϯAVEeZpz!܂B!`B-a r v!܂WI!Z\i8B!MӞ܄a bH}7|, Tw7A~!E,@(jݦ`(*.4bu6/]U3@y:^Zf,+4J'gJȨΝZ"a ˲EEJbAQH88ϗE$Eh4|XHhnn6ḈM8~w^ǏoݺuP`̉_OtZf&a8̨CV&wOm=իoΝtXfhE5<|(o^$Tr8EGBSJ3) ZڸqcHII P#߼yKtt=Μ9 ZY&:#Xh~WHԵKMɐHį v<-$: q@QA97DbB߿킢i>|#3?θػwkfeegeeYwh>cҽK(>pHLe˓[-XX>}z]EvvNvvΚk+̨sk_g՝;wv j 0B^nBn|DPESlf!f!,7.""|kq^kԸѸcq?;/92dH6EFGGw1MW_:mZǎ*̨S={p׳gN;Sgu`Xo%> .X,&>/ =,Bȫmi޼YmfjXnJ=&uc\#:$"J bC܀FDԛ0j 0QZ޹Yn>V(M6k*p"4CggeWq4/D5r+ːH{ LaOz#MrW"G-4*=SdU~v!oAӴJ*H{`|Ν5 (ʭCC܍q1Mv@*%%u]CT{wԕ$$$!$,a"!Z} 3OURiG7ںtP\gFת\A>;U3&!4 K ڈ,ᒠA}?|ܜ{ι%!LnDy~5eunFA`# ` 00FA`# ` 00F]IP[[,˂Rب%3g]FTx-=~E"A`t7F N}[tkr㸆[f2j,6G,[Y|co[}Xfڳ79&6xz: 6nܰ{.HysݻZ i3.<|ʪ{OϢٲҲz{z:t+W e-:q"k@`@OO;M>}6nhᘮ>M>\VVٳYYRSQG999$ﵳ۷Ϟ=g|իW\ŢtBEQG=}L}}ȑ#fΘ!#bccӏS8*..AWjoJ7t:Cϙ=[$Ӈk4{srr!11t#f}:c>k9zlbf욮к6 [;tՋx7֯2u uWDb1!D"q:tؐիW:tzHRKKݫ!yƍ˗mݲY۷PZ~u6nPYYy1V'ڹcǎIrJ*=$Úȑw׮]v1bŊ})7obͶٵ F/6VAmiSR٬=$Wgή[ {A`@=153_.r3g]咡r||D(8N>=97>I"qH> > WTTdNuF]]}BjkkeOOO&))izzV\\"ݟ=3C6ɗQ777z].տs(99޷6o=55rC=z<`oO/x&uBJtH!J6TZZ"^{7/,..XY'ĺLbϝ`¡qvv^tKRӓ^H$ta{׬8qPXWW7ejF(1tQUuEg׵9 {B`~m/n*L)iHT^QFر\@.߱cGPPi^mbx~ݲeerGL[,]Z__?q!D.0%zFj] 0,fM"NHHJ=<<'* 2dy:.pԨH0,,쳝w'&qpptjQ]]]'Lؽg !oք(6;,8x4=embc'O޿@wݓ߅~9OjEwcbshZ߾]=5 ϟFٟҷ0QRZ1Rڽ{  ĸ[W[{<=wN\rC&p88%ЕJ8.cBn⑙@Ew9˜wYzď>>N4Mqq7qa3J"8+ʼWdꦦ?FY4R`oN82|>b ÑV#!=ںu'3f2eˮ^jVS)=?KDb݀2RRzJ_^嗁vEed>=3E=ӎ%cO7EH5f…ּ%Kr`IIc'71EGbbMm6׋ɹcpiq׷Xq\xDu !UUU VO3irtBBasGFMdƌӧO)4~78;\pˬw !y"[aXXXlzbQDxxqqOgQQQi1RmAAqq<_{Z,ƷKo| 0 1_n G#L>^"qHO}!dذa|?EBHս{y c.!dY[[ mlDGVVVk* gg?͙cЀ9ܼď#Q8NTZXXH ,,,UWV| cjg\e jJɩEG3Y\tnnn􂻻\.:LQԁ>Cz>ֻ6׽s/Y=eIk>/^t?ϛ7kܫF {788+;[пVh4YB2OT*QƅGDFMP*' OOKO;uf7w槤hѓoϧjb;z>S"0DJDB/x woj[?.wmf-ҎMMk8$'Oo漼!Y#琉 .Kќڶma`۷n9uU,mܹ[lihhh2˝/6%%(ojÆ;{6l 0Dn 0v%5;wz bMLKOr;nZmc#eMI ׬YW^^N_`x6 [=:%5u B`?<r!'...>}}rr.hy Z{zzl۾GԺڤ&eeg޽>tۊ-igo/JV~72dyt:]QQͻ>:x\O}s5.]G_Vd2<͝kw J޻o0!d V;AI[T 9tppa?fLJJJ( nr#f5ի:dRBa#]`.9ߢ(J*4cƼnhP*׈Ξ/((0(0 #ωW:< 5y7ǁq{yX.X^JY[Ef=,-;~< ͍{W\e (32l[ou&AW070\\ܗd@`q=UպWA xQUYR`ABH,ruqC 0=..._-\4sC`#hllWYU"B!o}6-x^U<S~'p>낋<K^l6[ |#?cX8Y2]R`:D+0FA`# ` 0> s~@8\Dpe8?\`῟8^Gi{ZXz\t.0b)D߮_?8V~}|/MSLV-U[YYջG~f+v)@ n͚5{\x3j%JG>>}<+;xVgorLl,f8У5SCCbLFZzZćӞΆҲ23`hqEQ'OO~?h~`A/g(:r3gG1s zq?;~55iҒ^leŶb[YzD-{q",,2v؟23B:e7V._ufVo~Ck7n;1q5^MMҪJ__v j0((XXX(pSO͜96../ o;::3$JjjC.uJ*IR5Pyrڴkdg}N% T*遡hfem۶Ņ.UW_0:zRݬtZFjJKx-/ySRrr|''b"rlHHҦM,qZR%w^>\VtZK1ӏ0222'MnQr #ǏEuuuuﰰP6 V{xxDGl4MEqPh9!ܗU[l vBJ2gěo[t`aUUU_zW^GEQJ^eU*ʢ E="}YRl6[,z;9;54-7HW@8ë(9/ ~0񜼂G#oP8 o?bDuG N`%,1wI%oZo1$$Ys 1ZN_.=/t"@JA0!SJ")$HNPyCH6ga(pQ #R}TI-U{B)@JoxT Z7nT$(QeWeK-/t36LJIݯ @<طNAr /;JX 3`zhKJ҇&]V5wt@:0h0uFmp `خleHIRjhZF7,lUc[^jIRIUCF@'46Ґ[iw]خIWHjfp(PhMMES{߻09li[1HnȬhwc F\9Uf# a6H;VR !_D@K'A2F%hd bD@a8ps Z2f=.-150w&%H t\JW]J.{&Lƴs^ZIc!>|6ڑZ9jḣR3LI=T128c|@<]lT/{@@tI'0zT"P܈S(G cHGt]ɃSh aH$t`Dt&A#ABs7>)Xc8,1=C75m\iM܆Q.ϰ6õڥ1V(nA:<,b8g4YfքjlLCԀYzze58**gHb,IuQ?GdS%s_ֶ&ZߨxQfIf$c?a r==Dѵ DHpXd!'#%c2Eb`Ё=åBݲDH@Sk]YYxg$ԑ!I]Z0,k:w թzI ߄zFNSu=Y℩H(c U5+A1"-,)W9WeMJ"Q9 .ܞp)= FT-yZq i %O, ͪ{f٢4#\DQ3G  C>q%hG1lza1.%A ֤`Is ҌX`S07DucrԀT\4mTK322i KI'8N2wqG:8!BzK *0 sG5 B%h0s0k-*z2}*zJX$HzPht!Vѳ(PZf=DL%Ik͎ Q([ BT&ZhݿGҁ1Q$6$ f W5Н4jM:]$83r@FXdnLg@ 6K'&M+4 !1G{@CE  =7#t\5=0U`I܄!yJixy4Ne}'*0,31n)NhWzL{`00ZCGJ:)%JW51) R#t8(J'IR>R[=Gbl]1êUzrRMYӁdp0(f zZ;\S:R|\xR,ǥdJ.Q*H'L+kP2#p"mhݴᳪp$S?%t:#LkBf9('lm5'RC[ 7cn"PIͨt3*m8Bs 42bTm:35FP@m1T-Ͳm"bm(G. XrKFT ֔dlэr&BDDŽw9m|i@m2@`$GGGB|Rph]mez̉Ѩ#Fx;hRWe0e͌ 18!@Lkk) Lvǟ)A*ڍw+9zGԲCC]{QFάݠ&+CUA,bfT 4lN5:!RFH a:UPSY2E2 ǒ&&4C$z Ԗt' )XV:\Jd#6܈KKq.ES͊DH&ݣ)#{p5YUpd<$DF$c؁%CAU}"GB &Nqƺ9cs' 7L3B;m[L@foU2HJ0*74g0a*Iaa:} ġᖸ̎&4:Fj$i)4T FQˢM*AfH "Id:`H0vю^ \?nʄq R3O!VƓ-`Ve3HzAy0 3WmT=H`, +U5E ӁUy\ L HKQF`3a9Hkc&BUmuiD|8T 8"܁~h)4Xh^<\HxcV4> "eڇvpyUM JXA)44* [?2*i:Fsq)q)e% kRb\ Rå:p^*M\C\q'5ih5&ńB"-6k'E(EDK *t^F~2\o7|L$d2L$D2H$d2/N2EV !2"+#>eG|P>Pz 7 s"$$=/q3^G- Jb `ѪF1QW[D\ʈ - {S9D)MF4ahoI58pxeڔlԤ*ڑT F ` RU2mRQ&V G[GiT Ǣɼ! )?aV(/NEcU4IRШEvkK α ǭ}|ih/HOnM}67ԗLcA aɵJVQq,_J&&lG@r(G G2N3冇HA2"9\)0bEF"Br"HE6$[afHWj+ H1>+:Z+x:,[ydۆӃt[]KKy^.%lmtdYcSo9!y-) ";K *paܸi'&NŽPwv?3'<uDtRJ)2srss23333"шk'694%o~v_WVu273dA0q㪉13B'6'tf h##DСӆzdiLE>B NCY C`lࠢhcy7-0$M!e ,,];^8l3yR2Q]0G4U~mG3$2N 4$i6\ǵlQJh:O"ɤ5-IF=-[/@ɔ3D"~XH4#-OHX'es[294H;X ndm *pa|կETmŞ]_:(L{UUW778bx\aTIF,ɑ l~iM͞ƸP۰1$s~|iҜǔE7V6gGeǷԴƜArZ/)#:qDeyѦy47w{mij nca^t\US+'p,̋zT^9Q]{{?hԊ0mdC^X]=oe.Z1 7+ ?;rKs6X _g姵 /zQʉFDII($4x¿bgg`s߮wP>eNTA[jZ΁9M|YAKH)2T7'!!8BE9!- >2P"Ul׌ pZS&$>Pa)y k+e"ҬuvmغZzcN6. TZEm kD!ͦs)00D`<I7t~I (l! $ۑĵ7pOn>Ȁ($ 7(AƟ]r!'NjF0G$%"?  #Av60=/%v0 ̀4 [oƔ_00H']pp|](prua${Zc&w}2t/>"R`{X)kGC^"]E!b4A)GO4A)uNxU=J@$L1avs)22wI[܉';Wg(-SwUn[c?#-5H+6.$Ps^fgO#?PH)LUx 5H$Ҝv4`W")]R=#x=etˉdE9 ;߰6V6ImcK8?\9`Т7YY`h\Uٳ[ jqvҁuLꝛJ&a`ig;_`W2).=##uimCKg Z0qh [Ҙ%blǁu O읗@+0'K B/8`GGM?/=yiTсyxI[}8;q4@:XD£D'MVƯJ -ypEY31(T{tYw)G&ST&IFȫR`ϒ+vOT7=MJA䒸=kږ!b&)57p -?A)Sn^-q'W_60(i,iY#e ϑ2V/tߟ{;"aQntׯ~%E,PzޔYXPoR)w?oaw|wIFGwDqʪ6lx\Jq 闗~cuFвMU-tlkNfIeFC'PMUH&ϾS ;'#j;,ݒ -ʋ9 sSesf>FW_+ȍӽ/@Nf/ӊ߯BxF9_ފwmW*|GcWxwX!e6߻tKF4#?R1 2*ȍMu r2#TgM+>MQ;h:7v)tXٍC–fJ' 3 SӐR) Gl,*\v ,4uI7-y>ifL讠V9ZRXP3q : CơKpL'qo5I#.Xqi_ۦ>n6 _lk[v?K xB{!1ctɨ%2J;fZbO-խBZ(ȍ@YQfVF%Ēok100/cuMU-xzeRUpXcJG rɯ ,n ,RSj%3b#PLQn ,?LT. .W$"!@:2rB} B GI+@0Rm7.XZ`nc5{)B3PT0Gj]g5ۣEpaQ(tk6jS6Kf}zTOqlBq[lRQR`$ql.PaT6r R ph.$H`SC_E5Q LqqCd zdEѴ#F#41DҔɖ@) J v#&j48p iZ)C"X . G&qqugt[jpƾ0K5oȴ5d4deDB={=%eeAN: K5m/u!>z? ,_Ψg*v\ꟺٺO{QiqCt)D"O&x"!}/i[ߜ_,JWA4%72e'nĀc՟׍9ǔϟG8HVmJ@40] 7αUו#ORЫ {%NhDՆf]KbĀnUsp3){0$- ČkdWUKQ R@FDfSdXGI v7'JDДQ҄dH!Ж@xG4NhA0&#P0=>xh O"pah{9'ZKڤ^:F2FcQ R°+tÑ`k <4 #T>D 1ڗᢅb@`=)C(/"V%L}i`NsDC'^C p=8@]Ҭaf-61H*LJ]+l#([WXZ+0-aQtf-;8DAWC@[vg> IDATW/ āS*,%23GDǤ@)܆Z=0SǂR/Aڽ.feBB(5ٻX$y9u -m]{srĘr ۽(5}6_9hq.neeFOQSY?6ׯZ3֣#´w]uB.I[LR6ՙT|)>JNZ_p?"e{зwQnfTX9w gE:iDb‚x̺IJu5so/}P6onbGSSkr̡ަz vh܋5&Gح9l{ta!6lkmJ7{NtOcwaf]sbyަm[ )_'e#K~^DE$T5Ȫd4$rB"ǁXҩn Dܐa Fh{M>+t\ID]xZտ3&eBh=,;耎xVDdlQ]! 3p4m0J7iO$ڄ2a,2Q.RДD/R%Q7zy#*ِ$D,݌3M@1'I[,M(H׿)v??CPlH &ijUnƕC8XH>ňp#v(J 0 jwPص(u9qV h! J@$#>30;3 zLyQ'ږ=L/rҽ ybRߜHUHW#L}GxaNξj+57VnϐpFliJkym_l~@O7=x2kN<掺胺%cO[z99P^r昒}Y X㮆x}s5?'Umq#{B%_ArVV'{*p34nimzm՚GU;Z -g)E^Ar\Tx9sL Hxneu[9iDϰBaۮhD>;ZI)mgpͭz4PzIOxejg.){&%#:Z:A5$%qov YmJnEY %ic@vIW( UŎPLMN35dѨ: d:*dF }n)Cr7g>ciI*+IG#?.ͦ>.uTWkGdAdCK6%(bwK+3HQ@+J%qI3Gܛj tnӬ8>fL)˖X&DR38^#GJի&IkO8 eh9F mj֎X(00 ]tWO+k?lD b\*ZW$*;=% eLn5U8qh >f; G3s6Vmݔh'K J8ne%}-Dm}×F3s<͒ *x)=xԡG{n="aѽS.:AaĂ zSQS4ۊ/4<餓Z^Pү nlM@8$~4s`Nf?}م8qD-]WֿUc<[ps`,Om AfFn<[|kbjZ HPCmlK/JBD=ŀ"&3&Z^*ܳ" xI9Y50o LpHy .@iYE BLg(0Qb;>RR@oAvNxtݜHKh<󱻸D6Nq,\2'>p( gF9bF9*[ӱvKVQK0:ڋr2R<Po-Z1kw k G/x&/ƻ1pBfqiGqT&̵ qJƱhښ X\- Zst@ i+ڵ4Ɔ]E*t<1#CIUKL;N7FT.<=8> *uAW ?X M4N`c6YU&ood|x`CۘyhBTt!jFH2u"IGJgbD-.DW!ayÐ~y5&v#}=?;}wduhSyHIQȳ@*3 SѧU.-!+G5WoX. c\LAEg(FWv:ps _)f5tyVrĜHf{Aҡ 3!8s2|DA~eK7x#=o(R_/A^`e V;:eɬ-{H0E9ݵ GGTbrco{e#P=+gTu]̒]R".Fu)8 ^ĺ ųAD 4lZ!Q( H(4SSP-RpfH96iEt!0D S I b988iF;HMpUj) ~"E#V ˑ_PX[Xh0$vmں3[̬oUp6`/T3'}A@)p3rM1oP0獏09o9yS:|VZd =`* "_ĽDekL ;G{6)K Uyv͕1MC V)QUR5Gmߩf8ҴU_(kLMA K#?j@dU(0_aK$!1TpsLr:oW`PnR9nuSfB)/Y ל?dk6dD:pya0pK=>1l[%GK!Iq9ǻKx2)P4l1؃RB<,K[ Sp.kD5bQ̚m0gt(gVvϘN T`CW DFVv$##+[-h#Bp$3f:rrK *t0ފnA A9ӷ k&dNVCcQΫ4rf-$4U朗WI汅$QuJDe AB R8RҘu^L z#giM6`4R]X !L" #i[ W^*PV>DOFhj .DCȗr^ĴK3oF1*3>#s+'h!7da@sNT81#]F1 p^9nGjFq)AP6R9^ىlVCQ:* RVR<0tƿyH~n QH0ktǩg6NTMyH?J$bSCbU BgnȐF C4]M>Fs]֌Q)G@oJt4=%sBPۅ0p ea8)YI i̪37* Pk9+MS.-ud:,#%F6̸l`m{H)C!ќ ehh ԣM Y*n% =u#!<.%B,QHiR}T&G |e49llSO0vnGD!B@muCAS )0'0x/DBY~t >eu?2~S?Pt=K]b# B$ڟq,y \FX'Kl`s^k"K[ba ސ5r)!ڹLt[|`KOKo "I<2Gqi]qyim.i,+5+/O.E)P57d% Mz4ҍ>Sh1/t]-7k /n_qg !js5%r/`rfjtM R&#,=^6jUO l}E+LX{(Q"s*~L|J_E> nk̺dy4`I)!Hi4*ܡ`LLjt]$ ~Ңp7Fz.2.jFL'X!g DP:g\ɸI5z A5Fi9,gx?zF!PE~X:TJ2 챧ޏrܶ]Qj![s;b k-z67`+#찿~FEOmXn QWA.*߬#ST; W陒^\{)2[ KzM0氇*yVPV@īHŮ1v% es\8ti[2N. XiSM؆ՕISQё2SI"4i P%E0i?wwo@EChÜ6!hӃ"3, 6 `*ݦR_@1v)Ty+/'RT- ޾bm'Nlhl:]">r+./U#F1uyЦTl~#((1ɖءi$kB*쨨8S%Kl9@atG_)%JK:BHQ/Wqx9m۷;^iAuP)u9L3-Q댮 (&ӨrCat"=\^`00"EDSUl(N|8z xHoUb iY쐐4;q EhؓigoަYGSL1S~#GԵ5j#<WJD"1r䑯zϞ=K.h\~<;9s9;gիW756{ /ݻw}-'eͫ2'qI lIVք}hտBǍ?NT]`6dMRR#_8 <'vqZe@ʝ׫VljjիI̹O>,ST2>|?={[ٳg^o^0?/vv<@MXjT$X8rO<СC)O+M;%U!Jz>JSH))oc- +VN: \U4@:2~xU/!p"x -}:޽zf~D@p8eB]*ڟwŎ 0sgy䈓O>y鲥?sg{ [o38~_]u}N~ǎ4iO=%QQ1nq//_>~5kpG?,PS{?~ܨQGsYo:W&9!Fge8N</߲ .0p`nnC&NR_sguO?mpEsi'X|Μp)Ӗ/[rȐ)+**5q㎻_([o0#1β˄77F}Yv,CS|~Yy䩧r*`EEŰaCCc;vO644xsfy[wܸq[ k׬),,|wraݻw'"sxO?&K/=~geS&OV魭K-}տ:+1sUn.kI&uu?pRʞw߿~{+wlhl䒋G>wV.]l) wܞt7pLdK/dܸ;@mmW^qg^z›-\]y3g\zE .\ \qmd7d2+;/=7E y Ͽp5Ww({_r};n߹s'x#~["Aʵk]K5k./z  n^E&UD"\t~}ɿ<8N}}ysO>yڻkyG`ٲ'|c>K.6mނdgx_|q55^{5ޚ5kN_k}xɺ7Y \rGn˦M;eu]wU5\N2{zoW\ɹZW!@/p#5Ak6Q$QHٍX{YcĜ6}޼333x. ĉT΋Foeee::jiӧ/^x޼y*^ C 9}//?cfaJ{ںm[eeQJ7qD?7CP`<ŭv!&O?_Ν;7,++5\!ĨQO?%ۈ#,++;#G*y \);<8Æ O*/R(**<9SO= ?aÇ@~^^]]݊_r >xJ0weΜ90yÆxO8CN1cٲǎ_3L*x}[yrKTԋȗs!7aS={&Ů.]̾e5Q4E٣ * Ie@K7o_~YV|+^}O>YvO~r1lذaÆ?*//_h 7pwT096Lַo_JWwiӟbcSS8N&Fc/0Ұt={ a_(G=zJ)铈|ܹskG_~VV`~ZJ*I-ۻgOSccaQ܇CaKH(Oҋh:Lj5،"|ٿ<{=w4:"RcÆ?Ǜ7o^x/~zO_쪩:U#F~H!STi4v衃??{{РA? 8yxkqq5??|"d@ii{y:o8Mwqo nzA4hNai:u~L \}'? ed,M⑆Vi8S *?K7Թ\l˟,ot{AAߘ+..9lȐ?>NHQTXTZZ-歷:_x*̚uQ–׺7%Ku}¸+VرsNG 0ً~y .],M%[-[[ŎҒO>}v0}BT5B'{馟u9PGH*R"x0gr2[Ye*|Kyyqq'ܴ{$$[Tqi]CP(ԓO즟Qcǎ=c>x% пsn^PJYR\2dE e"/,).W\dw3f̘1cbc>_E R"@f)Ftk }&O޺e˳y6uv$FD<cc0~qbڵ'|H$QQQgh0f̘h$rM7yшnjqzq yOGD:믿7صkWCcuk &Ik}b޽{˳^&NcVZӧ֒L&_555}/)ZUY9hР:x⊊ qR(ɹk7mZK(sE<㭭}wu)Vx}I;w>أX;+W.^xƌʚfgg?شqsRDuΝ'־+---Hg\7mmm?x]vׯ[8q"L4iKyL-k[ݕ+Wጌm۶b15mu@ oڼ=VXˏdzMGH>:;'M??5k׬Z3ŧzZօx3m6iYzyC<ĠZ#Kp#@ /\T; !**~aaO=Cwq# q_ru}yEw/) 0~/.s~T*8Yw>7U}t"7nۯ丱spJ1x?π=VO7f̘yGQ^^>0h5++_:oQFG_\rM?kii=A7߼0ܦ^B/Z[[{3sK.~noB#F/袋/ ο9s\;hѢE,:C9DBMM/dM?kni=A .O tQiRT۔\r)Ep8//㧄k#c=ېG-ӧ@d_8 \WQ~P}HQQJ\*Mo/8̨͠Lε˷5XB?Sڡ ܘK;ryZRMAꢓ)cS{3}*}W fNyB_'o޹P縒4!@afi[%@AS.\Djgc4<(ŷCGx9ӠByvt<'8DHyʤ=v"p'AO4):N҂yR@V44(rcL(G)j\DK[j?ViVKPb LH2?f/+dPm89y9I b*\=MqN'""bʕE| /"8qqq<04xݻwBz}eeC ;vW^?}:«- QQQ:.007nO?Y*--ĺa@9`bijjo,XS2,''?..NzzzH$-[I$K8;;ر2tPpȑL///F# !'N$򨨨ǛL]vYVly#WZ5vX7o\WW=?gU*Ubbȑ#7m1.GX,~7{=خxPNp)++{駙۹sƌeeebX"Bbbbbqddh\fMdddJJ !dܸq111dܸq*Z͜S#GGG!!!{-O|͛'}}}3N[oQq9s|΃D"y7oܸ4P_NOlikkH$˞ϟ/++#Pb483g<{l^^Mӭϟ+'MEQTcccǂ8eÑO{{T*:t(!9ā#o)??ذarđJ6m߹s'j)pt k[[[wܹGBAe~EzcqdZ'rqpsaWWXRy…4#Vd r=ztvvYx IDATB#@C9c؋)bcc;쩯d{=Gšivww%xxx466l>mmm3*Yf}q VZv[,n+S6899 4^r BCCC~~ZdRuĉiӦM9@>&L`HtNqSOnnnl/O CEE;iLHHP(R_sNfrrrDDDZZX,t'OdڋnݺxuQ_^xNJMM5Ǐ?x !$55uŊ3999N-O|y䑨(Lf2l8y` K.u(NsʻC^ \..YU5ח3M&SEe0//8B\8(]n>^PNr S׮f??'GA9 )^PNr SE,f2YhB#;rʕ+_{1cܹs~ĉRl6hG;юvJ{}}}-V,_zb444 o9B疪 4%w v !O<&dܸq ,P*eee)SЎvhG;{SnVUuvvfc2**+yy}p:Wr;oh4ծ]%+wBAGJ$юvhG{ooxyUJeW"jGףS}oO<N>Ttr S/(xA9 )^PNr _di_3еWMN8: )^PNr S/(xA9 )^PNr S/(xA9 )^PNr SZM+WkcƌsN}}ĉRlF;юvhS=RXɉ`bihh$]E@ tR R/F6}ϛLq-X@TSLA;юvhS=RN]..YU5ٙd=lj" C4G1%>K@vhG;{o9^^vU{_yo9~j5TGlr}GG$Rt^PNr SzMݫ<,)PNr S􎈈+W>\L9 _|и8qzJzzzFFƑ#G۹@?r/h4}Yff-[ƍ_(H6lprh?]}S86j:66]Op Ao&???%%1cX,Nʶ~РA/X,ο>ࡃrqww>>d˖-EEEC #GdffB$ҥK vƑ^7L555]nիGj޽vqrUƎKtuu͛Cw"-==r &pL[MHH`&ۻnӦM̈́^xW^QTE2@|bs\{ݝM[nݕ+W^ugΜw޼y"(,,ח jիju5joa26n8gΜO?b0+++rƍ,Xps;?i?Ǹl2uԷz/8Do޸q>鮿k؋c>{$>ovϱX,;wVXqBbI(jllubNEuuu~!!c111L&L=D݉vΝ{Z<<<~{ !z@ (ťᱎ^|ŢSN566?3|pRɖƠA=Ç]]]cccJ  Cw63-P(dnO8q…C iZ"\zՁ6͏yz`27L&?3zlB3eNl@9է[Hss3MFlUwo===idbcc˷3//ooFKKѣG3IRNGd&{ܶݻwBJe||Y GκĔCBBFݱC7s͏yvٿ3 SXXjժk׮_ށp`p,sO?*,,d_SSSQQLqss{'vq'L=F;^r9s1"ڵk4MKiӦu9](rg!D t|D"anhG;юvro]^dW^vo_..b.pThl>>Gp):/(xA9 )^PNr S/(xA9Ko{- 8:)^PNr S/(xA9 )^PNr S {58:)^PNoWBB‹/MNN9sOyu֘1c!]^ USSSQQLqss{'{0I>'྘7o޼y?Ν;ׁ +Vطol9pwGy$**9.}It9ɉ$$''GDDbNםq U*UQQsD#6ϙׯOKK*))qqq᎓=}t\!h4\nn3 !.)^PNr S/(xA9 >aT*CCCۋ|9 󋏏w8BO^Z._|{gٳ@9;!FQݻVJeFFFo'իS'O?7okV^^aT BvOiiiqqqogG4m6?ٳg6f,H.]\PPcǎ6B /+T*rsswe4 !r|ժUcǎizuuuq8Tđ#GoڴmG}499yz뛐xb`lfСk֬yGZmMM EQ̩\5~xɔq~l{{{^zĈZݻ̆8qbo{fKшD"77tBȉ'233قpݏ֭STQQQE]re˖-ݙn'##駟Ν;a„pLd_BBVn/ۺiԩK,X, 8{ٳ 8y`qNig5ͷoR"##œ"##vp+V< ,`͛'-Zc{[SNMJJ wqq3gǸZ:00|lfڵZ644tΝh|r??uUVVwc/{eH$FsΝ[rRe~j֭[jZ樥osۻjummj5SKu9g3˗˗/Brssjɓ';5j͛jdn/ۺb#kkkJexx)Sr9a7)[;-O{(^zi޽9sfJJNcb4!̙3l!RtС Wm8ڦaÆ1l~wӦM#?cŷIReffk׮1bxҤIYYYE566;v,((}YYYf^ːJ6m߹s'MC5?[?q8%%%L9F:SΝ;g4-KII lCMMM{{{uu[zN7Sv-O8G>}>3]B 2? \\\zĉ.\8d%իW>vuuU*.\HKK3 q8Fg2B!sm~/\.>|?ȝ?۠lmb3?644Bd2@ hhh`뙞l c/{e=:;;_PtyŮqL{)))YhX,vss7n[yy9w40*!b0˶8X,Blf.28< ~gӁqʩ>`0X :b^aE566_"%Ɇ RRRrrrh =z4sW[[ݻ !J2>>~֬Y_|[{q{ҧ~ٳ̶;.G| ! 潡ikӓ"J#2d2ume︌„UV]vccn=瓭-΍7B?_PPt{+{q̛)[;~gӁqï>oklllii?~!??_Vd2BRdOD׮]iZ*2g&L$Fk#؋c\B`" IDATw}s1g;~g , Ç4iNQTaaE"\.={9kjj*** !nnnO>dwfw\S?:֕8󔭝mjѩbٹsgdddttcCINNHKK:Veddh4R#<_ζ^{k38%DFFv<e׸mJJJZfZŋXb߾}f9''ӧO7 eeeݙ q CRRRbbK:mZNJMM5Ǐ?x wvC8|Ź|c=VVVVWWbŊ=!!APHR'''^rJ<֕yjciAh<'/Rf4B>\1SV\l}˺zXnVU,_TQY9+ !D"v~|ve^^^J5y䂂e]=,yy!C >ƍ>k׮v횏 Þ={cz{{ߺuc7 ·zڵk{5ֻl LLL6lبQzt_)--m˗d766_l:t5k}QV[SSCQ-׭[R(rʖ-[sDb땷իGj޽' O1G FfNDI&㏅AAA+njskǧM&H9z~~~EEEH][[T*çL" !111**222,,)22o0.\bŊ|PFڼyZ6Lsa͛'-Zc*ZuֆZV;@SNMJJ wqqƷwm~DGG[,˗XZ~ʕ+z}xxxwϘ1˖-Sտ󐛛VO<}#GL2E ػn=>ۮqz|566VT^p!--^։2Lȑ2L XW_֒E*r?rΝ{ycu<3MEٛ ȕ L=l:[|{9NbuvucՠAHsl~XNݹs}ZZEQfͺy&MBp...YYYPرjjj{'|pB脐YYl;vl~~~[[Ç066dÆ )))9994M=;T[[.T*g͚_t@1w3nƱ?inniݽhy3`[[[f{j{yUUbf6l۷M&0[g^www$y`ߥ{c37 EQ+ɦ-r1T!2́EÓ}4MWUU >륥Gfwuu]dϟT*y~K/Y__}UO7 "I$u>*бssc^{5___Pv544jLFQ*H|5RiӺ 5aDhi;t:\n}O۟m~PUXX8|H$gϞ}y3fP(.../2no<{q/Ο?_& 2dَ}lAmmmyy B'MĴeÆ oC䈈4Xkou:]FFFokk+--MGb~/ζy =_~ԩTxΧqos~8Xb߾}f9''ֻ 6mڤP(>#;0 B*:99z9 [|u} t̙>̱<֬Y~V{Evy`.{s/*zuKzb}rƖOrrrtt s@? h4\jj3 !)G>}r''}rfUH__J6LüR0B$bLJn'EQT'O.((xoP</R|EQYYYW| B9pN7ŋ/^|xoX}Nr S/(%$$⋿qڸݗ).e]]]?䓚e˖Y# <Wqzjܾcrss9>Wꫯ|7\@QZZPk> V,g9rlBHmmSwY,W5i4fbX,xyHv]p7((ȱrjԩK,X, 8{ٳ #[dҥ;vhkk# J(*77w׮]L ZۻnӦM̈́\jժc4]]]y溺:|4H$rssKOO'8q"33WR%&&9f>qzd\a#ˣƏo2rrr󖒒R]]R\]]o߾m۶VqqqTH$-[;2,''2Oˆ#~!dСk֬yGZmMM EQL4e\NQTaaaNNNLp+V< ,5j͛jd3g8o9ĉ|ŋ Z4ڻH$Z][[}vZR]nW8[2444==g܏='[ݺul̏.]B-T*̯}۳gϙ3g`e.*---,,|G===֭[z^yxxdddƬ @@9sLee%!1;;ܹsFb 6ilooJC%TTTp655[sS:1?6I&eeeQxر? ĴweeezjezPT~~~fڵkyyyɓM˱|N>]WWGQԑ#GL"]WY?mW8v <7++l6ws;Ǟʓɓ'}Y3<@Ó}LAqƬYf̘qg tdyfmmmPPYHPP(!L@@Q^8q… BӴD"z5`d.#>|566VT^p!--^։5Lȑ2L X߷_֒E*r?rΝ{y]յ_p!s)}W(N<%++r&r{H$ 642zhPmmmw&(Yf}]&o̧q6?livww%xxx466ZelVlo<{]ݚ;VSy=X> 777@Qyfˇ\L*2d2ԋyr?/6 Cvv3<# Ϟ=KQÓ}K O?}饗WIP(D"Qͳ9%Kϟ?8???R<`eoIAihhW2T* !"ڵk4MKiӦuj„ ̉HHtwtr&;DZ?(p"H.Ϟ={g̘P(\\\^~e=5yCmmmyy B'MԳyy>S(bxܹ4Mۻg|jjj*** !nnn?D@2_";wiѢEmmm6υ޸qc…o&syӸqΝslbosܠbo`:.00𫯾"ݏ@!55uŊ3999UPPi&BQTTG9߁yHHHP(R_3ȑ]ۻ֬Y~V{Ev<Ƶ7>ǫT"]X?zj=哜=}t\ԋyr?,Ν;###;f= ~V@?;]'h4\jj3 !)Q)))Gݱr<X?}Y||˗EE7Fr|d";?>Tv;oO<!DRM<Y=رc7}G<RDEeee?\))){׮]ܟR @wv }ŋ/^ƿ߰~uv d/(xA9 )^PNr S/(xA9 )^PNr S/(xA9 )^PNr SXN=DDD\ճ0Kǜ{;B㫯zC=rssׄ^:<<>p_^80ovGxwqFP[o]vm޽f B>JKK@.YX'Џrl6fbXF}ݺu~~~****+Wlٲ# /+T*rssw1ZgޫW1bV{^ge2YNN!qqqZG"lٲH",]4 ٹ`ǎmmmP!!!C5 Gh4"-==rĉLB\.?~dqo!Jrjm{ٶK.Zjر4MWWWo޼clnԩS,YbX pٳg$%%BRRRU*۷m6n]VTTm=ggBBw]]ݦMX?v//o!,[LRmܸi։>FQ]Ecoӓ6nѹ===}݉0}t___B\.OMM]hwm۶-[L(5*33;N۷Ϗ" !6lظqT*Dcbbƍ;tɓNjjL IDATwob\m۶0q_y 6mԝY]K,ٸqH$#GdlnԩS322 ;ĸfffrBHJJ֭[ @{ycöw{3!!a˖-"i͡]nycÖ?#F_=22211<.)'N\p!ChH$W^JrkA(p"H.Ϟ= ԩSӦM;}cB&L}Fi9Ì3 /q:ؼuƶs̃]v[gy>&Lx-Zcq.|?W7G|Msƍ7w{>wt:]FFFokk+--&999::zP(R^<䈈4XN<ɴoݺu֭(/x"sO:j4?~ABHjj+g6srr8V_|U ]vfۮ{kJ~BBBbb$EEZWѪ-eG݊]kZP,>XE\EvjkWkQEU@K fY ax29I aԩ|]Ǝ@qqqll,)--=v옮]o y?^ͧ ޸& e2L&KOO߽{wXXXOO ^z7- 0H"iq>!Yk,&& պϜ9c?.0"_[;xSQViO*vK5BA/ŹKg)tun;a H=)}fr ,PN)@9`ůLeO㊏W >---33&L0dfuxN<mXax^ x}#唧n(GAAK; H~,(<<|͚5o[oČ^h ί^ Ncw˾x}#z|*++¨0v\=x<8N}}_vaN'z唋H$Riiigeeax̘1:66!`0lEP9ׇm]__`0JKK '((bI$Cl;̙jGݯիy}z||MB|>_,oڴI.#""<<zhp#noSNH.[XX* _`'Oj ݻwG܅e2d2bH$с}D&8BR)Fh#>|yyy󎻻;Lp8&w5| oxb)W\_fMFPn޼,Gq=сNҏǥ[F7F1!NFRjZkk~B'j!>ڈ7;;7xc޽'A볽[:kT;0vrJ (22Ґ.&lO/##!rcbbVX?m`0ٓ(HZ f͚5.!(juOOVupphmmڻ1*N췽\.W(co066F.>rR ~Gu;88`ou#!Tfu?΢"Pr}||,=;99!JV%JR(:Vd2#Z|9ñ[rkB dڵT*fc'_ZjUAAV%޾w޼y onn g8^8{lN2pz/@ .3AzVWW[L&O6m…!Yk,&11̙37bbb***F,hIؾ}{OOVFi\O?֎X_EY郦|>{IRNqqIF1hgYog3g9x<)q*>x/...vDpΟ?/Hxۋ})ꚞNmV9ڸ\֭[TB.++vD2)Lx}/\DDC0ȓh~׭0zQbY0 Sfr ,PN)"b_|q }16Xwxl?H<?88DxE";cx;Ϟ=k(k[,lvhhyT*D"IOOW*CNNN #!!+w3fTWW ^{իWxƻcǎ9sh}D"*joo:|VVN5m^^qqq\\B'((bI$C γuuu=|pPPT*Eq܌ PҒtÇe2B/o;wtssokkN@|l~wgž0Fyw}cÆ ]|Sm& ߿Oܕw\\\PPo5ׇ<֭C777`rPxx8ۺu͛mllnJӆPkx׬YCR7o޼q#G`BSSP(LJJ BP԰V. /lPAAP(ύocccUUՒ%Kt)//oii} /oiii^^^#G|~wga9E.\P(Ξ=+opڵ*B$ŋEEESL/_\[[wwwW___Dz饗;233{{{Jevv@ HtvvFԘ| e``_*:::Zp999˖-~^t?|ʕŋۤI|~vvZqƈ›/1뇘J{ ՍË},D"ꤎΣG ʃRTd2yׯ>>88855FIt(+++***55vvvXԩSCCC4ohhMIIQ*Ν;y dxzzcߜi~+**d2D866ᔖ;v k[|||XXؒ%Kr9v3<~,g@ hll~$iSB,vH?fΜ)׮]k@,,&&bpx̙!竬h1(+}4ϧPpO6T)..)W!3b߸13̙3gOyIw>ՕhX,)..5==t0DDDm̑kbY0 Sfr ,PN)@9`(Y0 Sfr ,PN)@9`(Y0 Sfr ,PN)@9`(o߾}xs=vǿX(`T|vvv~O?JmҲe˖СC׮]ӵ[͋Be۶mأ_|BHvuuI$LRP(z&LcsΠkLO`7 AƨT>a^naq W^8q￿m۶?k?u_jB<4iN<ϋ-zɓMv=6vswwǏDz9N}}Aq[Ni4ZYXXrؙ$O<!QSSO4{T |@0h4w-))9s&A|||X,D"9t萮=""Ãㅆ*;w$$$k^)t\]]wV__ߏ3-[xyyQ(#G!l;̙j"T}ZZBYYYNNN===x? 7oJH$-yKLLжmx<޽{ZQEֿ $$g]niii^^^pu͛7lݺk_f Jݼyƍ9G655 ¤NP( u%xB͜9s߾}BPRXXFټya_oJrܠdL IDAT^xfcDEEm߾ƪ%K`O+//'Z|Sm& ߿O<4TM.'6mrss{.\6j|鍟ShܖS!!!_~/.}vĬ\{!Bj[Cҽ2L2mW^^;N&9NAAAA=zh2<޽~)==CP~~,_86n)LweffN6!6xGQ(>55UPXZL&/^.;;!D&Smmm_}u1={$&&J$VaÆYflݍb2=7,KR! 222r ˍYb?{T ~7Vڊrtt2'0A> `o!GGGL6\tR2G\v~L?B7Px]gg+WOĝnMNb Lf0JҝjMMMӦMkhh5kv㔧'N \vڵk=<<\ӟhR N2L___[ZZjjjB-;;;B!Bq\c:JV|ϐT*eٺ"޿B())Yv-Je"0A> ,_٭\rpxypqϣKOe˖͟?ظq3|!$tO,++J>>>W^{_CKoxb1a2666&|T*D}}}#LJ-YD.O?>>>88855FIRݽSN c緡!777%%ET;wɓƎ8~OII 9qZH$|OI866ᔖ;v8 LF"~;T~Fysss 2L&޽;,,DŽқO o^OH$rZxOF}!JLLwT)..)W!3bOgyfΜ9Ŀ`ۋ}{qqq& `A9Xn >@9`(Y0Jٯʩ jr÷|<<~b_To=\ZZɓ'xo?ˮц~o)ׇ~լn޼";@o/W)R2]AAK4zzz~3ڌӄqy뭷bbb[$?Uk ›Qh[?1G.../_6d_}^*}*?n4O1ϓokkX |bxIYbqZ*77WqOOOQQ_~i,^{իWx>>AAA,K":tktqqDT*sϟ2ޱcǜ9sZmss}o\l6;44t޼y*J"`y06Ny<ށf̘Q]]/زeB)..>rH__A</44TPܹs'!! ?hl #!!To,8^x{{j4[[ۼ<⸸8czᠠ TrBEƳ#B!HKvߎܴvxd>b)))7nbqBBJٷo_@@֞m62qℇBF988 ¼Ybߐx333mmmNӳl62>Xz5ubccu; ؽ{7qIIIP Ny /6u~ܹsŋH &x{{ =CÛK[dqD'Bh̙O&Ƀ!~?#J%Nx:U˹ꪻux˹ҿפ2>=S/S/_Euuu绻zRh4oߞ2e BhҤI|>?;;[VWWW߸qjq&}#0|\4m… ٳ^xۯWfffooR$⻾vZUUBHPtvv"f---͍Rф<,[ yҥ6<^re``!tEgFsx?zfڸ, ֏Qy{Wnܸje2ٵkL'[9 brZL&#HL&ӄ f_[`'Oj ݻwurF}8q"Bkooo=q):r SSSua>.E"t#~7vu!Rr8Pdd$N" ݈Pѣ!-&"4 BHVc/wy{zAA|<67>*JPZ-%޾{{EwTfu/R?>rT*Z~^(kRT6?q}gggQQP(nYr>>>&ox񘖇\???__ .`-8{lN2$˗s8;;+WbXjכ:$X?F󾾾ؽM 1Qϋ2m߾}sp#y󊋋GCPvيqT):::*++G<–,Y"˱bd2mll<==uT644榤(sΝ!YkS-&&bĂgΜѝy"Hbo-**qu999>|1Def &JUS[;%!ĠQuf=q|3̙3'V裏p,(+\]]Ӊ05LM )ƊQSC׼q`7'(Y0 Sfr ,PN)@9`(Y0 Sfr ,PN)@9`(Y0 Sfr ,PN)<]TZZZffӧ'L0_}4z6DppZDe|Zj{N_ XN;v̙3G677۷k 7oJH$J+w3fTWW ^{իWx!H݆ rӧK0/x`h4|}AZ/Ptt46 #!!7z׿ yNLLlnnxt:Ç28zBCC ŝ;w`sxZ!YZZJ 6v~]Wxy3%X!"3綾Ϳip,J~s]jUJJ\{KRI$Ҍ3X,h46yfT7qă`K,!6qFСC˖-~޵k={d2TpCF=X@RmllۧG/ooL[[,6mB۶m#3g2 ''^?xΝw-^D"M0ۛxxv㏷mF"v`'N@h48#7*ωIIIP N¤-^xpq`cz6?N w;Ʈ+{leU˹ꪻux˹TMe}z^${yPeeeIIӝ`29F[pavvB:{@ q/^lmm.**2e xZPWWW~~;믿"H$K/ݙ啙۫T*XW^U*ۺx𴴴 477766KRGGGc4iV7n0-rQ4֫w V+ɮ]F_y!dvtt=zTbz^v !P(:;;M[?Ѵʕ+/bqņFFFxblF1LTbX*ʐ'x F̥SRR"wرk׮(Mz5>>88855FIR]B=٤Rjjk\Q#4ʳά7Ë}SfN\pv ,PN)@9`(Y0 Sfr ,PNtޣPkBg?c۷o_:{Gutt,Xdjhvhvhvh1a(m==66'4MggDApYަH"iq>!YȂW^yERݾ}{ܹ֭rUUU />{zz,RNU>hjS(XRNqqIF1hgYoG"3綾Ϳ"H`0ڡڡڡZT˹ꪻux˹TMe}z^$9;e>sNfr ,PN)@9`(Y0 Sfr ,PN)@9`(Y0 Sfr ,PN)@9`(Y0 Sfr ,PN)@9` &L?vӨڳgϳ>R A@@GLLy'Lp!kP&22mpˋ/?yԩ_|j]]]=. IDAT$33ST"D"?{nvv_|hѢ!;һ=~v:W_l۶Mp27|D?G 0ݷ~kgg>STj&1ŸWmoo;w&''_~SЮ]ݣrB{%}Q]]ݗ_~VB#={466bhѢN_ rjf}"n5Z,,,\r%k^)t,lذY.>}:++kpo4>>xZŗ.]Bnnn| B(11&''d25m^^qqq\\Ç3j\.7##C(B/N6cǎ9sh}cI bXd>.#nEsww///'؆fϞ=Ν;ff~T… o޼YRR",1ѣG۷o?zu(󫪪ׇ<֭ΝW_[۶m{N H$zQRR%۷x{J kmmrAAA/nllZd _yy9^-Ek֬R7o޸q#Gt5eAAP(=q~X$Hx8q/_-n,))>};tvv~nbbCRRRttI~!!!_~/.5^|!Օyyy7nj2ڵk~LflllGGѣGZrBŋ#V---͍R+Rsrr-[mtgCtvvFOcf„ zMHHwފ+/_~i,"د@ (//WT!--ZdgQQѿRCNXL&233Mѣ={$&&J$VaÆYfawttY,));vصkWTTp+Cl(F8\._t)LS(&tBg___FFBĬX~ ?ɓӟ|||( yWoOBL&ST*J`{遁k׮]vmttllH$F:Xbڵ_ׄ[nZ !dccC& +R:::T*BjL&W}}}/^L" !~JKKgϞ7F-_٭\Ҝb~~~.\08ϟGJR `,07^jccqȾ>ܻwoiii~!v{ܹsWZ5{^~AYYYWWܲ2TO?!^|_|Qݻo߾m`ǚJeCCiD}}}3IeeeIII6mP(?&8P^^~֭Ԧ۷oY\\pJKK;fr2D"&wԩSCCCY,J{.9ɴǾ m.H$rZxOF}{`H$/ҪAZݻ|BoϜ9cbbb***Nx =3s9xePؗyS`H?S¸C@9`(Y0)|3důoZZZffӧශ >>>W_5gL\\\Bs=gccp񲲲 L;w Z!!!$VܯP(r9C^~L;^5_0y$H"(11QP̞=3OJkcǎd8M8^hSN9888999s!ob١ST$==]T"bK~gP@@oDGG;993Rφ rӧB c˖-^^^ ȑ#}}}ѻܹͭk bXСC7E$QT{{4w J!.! [ZZűi?zOy7_ܬkx1cFuuulllOOɳw``F/..CՋ`]:4>>x𠓓Ϝ97r17Nfw1gVܼo>k q7;%J=z׿ӓN~(,,Ll޼wذa!X|Sm& ߿;wnxxW_}[om۶ؖ<o֭7oٺu+qiii^^^Pc`]VUUR(W_}5//ƍZV&]v !啙۫T*DvҤI|>?;;[VWWW߸q1`z3b~!''gٲeأK.5pO÷_reyyy]]Ƌ/vwwM2湥e``_*:::(dvtt=zTb~…vBq^x8N%s``d:;;#jjjS}Ko<i{{g}rtt|wwbH$V :::? 744r7y&^Wx !z9:)));vصkWTTV̻\.=dx~@qܘ+V˨x`S[lqss#ɓ&MzkjjB dڵT*fN766Ξ=!DÄ󾾾/&H {JgggQQP(dX!.CIKKKMMB~ѢEF\`zHR6@nn LOBBB v}!g%oWWWooy7suOiiivy9F[jUAAv}Ш9|Q.ߺu+11kOII 9qZH$| ֞tm;;;⽖%%%mڴ)""BPׯ_Gh4Tw/N|||XXؒ%Kr9v[F,s8&iccOxŋ!Аٻa+H$Q*EhUfCy 0m^K\ -( c㡈Vʡ[* $7/^N޿?deֽbrKN:FMMD"hރǗɓ'ߘovvvVVVX3#ʄ@PUUE\I2"?dqN:5""[\\B/ ox}r%B饓PSSCl^Bt:O?=qDqqЮn8kp[y+3 E}CGJi9ˁċ%3̙3̙󂽧WPPPRRK0|#,NNNٚ|Z[[*s(icl)::!3q 0 lL)v $09S!!!+2:H[oj* 3rrr "Q W^s,A4tl&Mԩ) :*--v)BFv1}1GDDDƍ3ηQP($},ظqc~~|www+lS~!7JGϝŞK|鯣7ݛώ;Fr#eDɈnwx?;wjĔFz>: Dt;R{777???bYgXeEEѣGr;v3gZniiٷo_{{c||Ri~~~nn.dn{{#Gb1B;vL(2c Ǐgff+6l}vKK Bhҥ[nUT&L(**HNNFWdARR4D$]vŋgg W_}U&c]yH~)))D]]]E"Q``T*ŴK3flذWWW:t7y;~&vww>|XT-55E X[[?}СCC:_'v)ooo9tNNNnnneee˗/C_:`O|90q'[cɪ*z)=obI<]񲲲JMM=w {UՔ;_;777QQQ 444(("44(߸q# ڲeѣG9, :;;BP(䮴T(j~3f۷O(*~(J)))7o5kqGFFTm۶%) !rʳgφ Ǐc9wܨw { ~ie˖TWW^ !  ?Yf `0"##|~pp%K\."q90 .]leewڵ1 33sp hB7Vb?{,--MTS}`P:J#yC]~}ٲe>>>!/|ox~_|#;q'[X(z)=o|.8R-\0--MV#Ĉx۩>Elmm=<SB5~y3ob>_WW7*~0=?75[:ǝ üuR'u}~/aߎ?{Ф$q~`|}}}}j!4/h2ʪٳ111|>֭[_FJ,Xyɓ'ju}#jp84Msttth$"kW'NnmmmHϞ=#&vvvX /vBEEE Nx5r={\RBJA Yތ̼BHzB'(h$!ȯk;M8qƟg.;m4KK˟~ .qy%L&ɔJdyٳgxoj?O헁Cqq_Ǐ;Evj̙ĞXDbbb7}}}ǎC5k|Gbٳ'55DVϞ={ӣVmmmBvvv]]]FC f9B0L>;::~qHT*-..^|9N/**dF?|}}=zdȫFu\xBJR|yO>1 q%95?~޽EEEf!J2 7̼D;vصkWll U;obqGI$ u,~-,,ljH;o.~]Ն|&C)|#s |PVl.dM61 .닿F!dcch"#*A|x{{/^FXk\ }||\b\z8p <<ܐ#'L~3gr0Yި f^Q!k!5VWWGӧMpB|8?oy]Lx d2׭[WZZV1y[beccaʕ<jڵL`7oBvƏ#iǦ7̺YT3J9yױ^7yp~sŊ?|pRRҖ-[fΜʸcթ#GHDaJJJHHHFFŚנM:5""ا~mڣG rKN:D<f[XXc>L,wttݻwo`P?===<<ɓJo1.k)))˖-J/!P&wMK^Wn IDATK dΝ}6FF"h_~Ÿ$5y!o#ovvvVVVX3Y( f^Q'777666##Vs.99o߾yN%wd0󭤤$44myv1LHHUUU_a-A*&'''%%UWW߹s,oDWUUuqlįR233CCC###/\p xQGy dN?LV?f 3wD!HdI _dy#vB0..N"H$ݻwGFF1O0|1foOD}!QPSS?FNOO8Q\\lH#{zz1e!zy=1r1{~ Gi5xRsIstWWKKҋM ac %BŴyZv%5s9s{(x%%% c<!@x⊊ vc-T7s7^_^>!x>!pm۶h"\~Ǐ+J烹yxuk4.**ÇgϞvyFx}/tB"oyyyYYY.\xY:Ί}_ogϞ?/f3,skD۝3gSSSm۶q8W^y%!!ԩSFskpݺu/y7H3R)/// JvJTO*JR k@4}Ğgpp0)))O4s;v̙3GV۷\.7""b޼y $;;h=55E X[[?}СC!b}]KKˊGjC1..Ņb>`dee! rssH$"urrjooGÇ_JXnFEEEog})ZtiBBBOOOOOŋ׬Ys)| 3cƌ 6Cuww#xw0?J,odrrrڹsscc`̟?믿\(]vEP@@,oT2 J:5b} kWcjr:꫍2MgjJJJ`` q:D@TJ6?sQ&:YtK.ݺuJ0aBQQoEEErr2"?Ou3?ƍa;5Q~)ҥK~mT(j!ƍ FPPЖ-[=w툌TTAAA۶msss#@ccco߯%BCC,,,BCC׶rʳgφ Ǐ#RiJJ͛g͚jnn iiiBP(j.Y0qΘ1c߾}BPPhSMMͬY̚50t钷7Ҕ8::'O?>y ,裏i4P($ ?X,V||g҈ &o:Y9Y YYYaڴi&Lx!#*'Yި˗/WVVN0:͝;7**ꫯzw4s>l׈]^]v566dff:olllii$~uT*E<'~=@`DFF%Kp\y7Bcci x(zj[[[wwwyy)S lP}}=O&p¼|h<B4õkאyFu>?d>ց~Xlgg7y H$f 9&4W gZ[[[neddph4f] ͩft:C4M&YYYin<{lH ,ؼyɓj5ź6?[la2666sε3"$|wߎ;FHD`jLf\b&d26={vqq;3䎕!8ϫ'":::vb'HLJ{020$o޽.;;_> 㨳];;7Ӈ^ YòҸfwvv7nrMfiiO?!DT9"`Ds|#>OQ2 `#>ٚ'$$Yo%;GVڶ!캺4(H$JX|cbb #bٳ'55DVϞ={+%i~N...^^^W("NT 1;;;5U*ѯ)S<}To (Ji{OQ:>#GauaoooX3p} kqҸf}ջ~{~߻}1| 7Jһ<ͷS>}?ُ?>rZ-*++7m`0\+WxVVVk׮%;;;˅B!A|{ Çj5&Nkb.Ypj޽{~~~eeeeee~~~7ox}o߾i&3yd___⢽qx d2׭[WZZVy7++& @o<󇬜,z"]666Smm-qD^CY[[,,oa4 SAAŋi420:>_; Diti.\hH?oY48uR׆׸<`ۼy***F\D<f[XX6uԈbNOO?yR,))o4UTT$&&xǏ)))!!!L&S,999}}}?44`dw;"yOk|Qpl`;`NS&ImD"[o5B ͇Z߬!_EVN&%%eժUcl!;뿲N:7-~mcQ͓;pcD: }dyyy_|Ű49i$[GΜ9SYYitm;w ~^1R6v vB!r$Y `ƅl^O|3gLg +2QQQ><{B3_1Oy2^>o_H+:}_gϞ?/<Fb޽{ܹ3#ݻ7uZtƚBghz=ol~8c;T*͓JRTC[ $%%M>.11!b}]KKˊGVT] رcΜ9je߾}펎 Ɔ\gpp0)))O4DF{{{''vMW^~@ dr܈\nDDļy EII Q]!k!G4brJBusNggϟLv=tD"I6^T=L,>>gW?? y\"222ĉ>@ٳg޽l6`o´8iҤ)S?^_[ݻ`hӧs8Mm3mwgE" ž}4/[!rӷlb\qqq~!r ·K5?dMΝ{̙ŋhW^yeҥݤ%&&b\i&||X딒Lk.|F|R󐬞C3fکŋRy,~yHusuvv6%~xMW_9;;w;vu ʛq6yE<1yn:3dσd_zF;zEvb h5 ؽ{7Դ & """y /xܭKu7>l W_|c||f'&&vttdffjq! C`Ƌ<_ʯh\S(Kx<B(&&(h2}S՘zΞ=kmmoݺ!JFNJ"G-X`͓'OV,Fph4+*;::\.]ChgϞ O;;;_v{ŅNxRL[la2666sε30<i%L&4b>iPdL8!A[[[ck'ƭFzOqq_Ǐ ׺Wykg3σxy&qqjcRl1ٳy<qgOet:e֘;,#a F$=&&Ƹ?fΜI펩xOHHXfͷ~y+a:X={jٳg>{zzjm[[Bή˔PgGG=/J˗/EEE2 soF|͊ //+ |Ika1*Y9BF*d2#3>COuClf]p8z9: <'F#?~;88]W5,y5ƭ32d2.Nu 3R$رc׮]* !T*5[!aM!BN"`޲F6^T=y4 xvvv B>߰ĉW^㓗grZ=ugbj Çjf{{{~e2YeeM DU|x{{Y,淴k\ }||\?RV߻wϯϐ+]]]3oA`ݺujڈɧ6CzZ[[}||B666zbGdC֍ϊ+ϟᤤ-[̜9_հ{ymtpsӟ_Ȑ˸81̸c+beccyWSSk\YYY]@6^T=z36RRRBBB222LX,|_9rT*߿?gԩ~xp=*,,LOO.]:uBH$x<6maaߏyX,ɉwTzzzxxɓ'JeII7|cL6C_|޽{7---000::Z&;wۘѯDB~C&.µJ p‰'d*++AUUq%72|ꤳ~#!Y)))˖-J\ڤ:Gg茟lnPE5~xBa\\D"H$ٻw!uO'"!3\ps#JNY^0wJIIIw͍hnnYQQ񪪪?Eu;'O#ox}r%Bfxjjjw0?^nՓ鮮U( So(B,,Ӳ}`D̜9sΜ9/2KNNvrr6!x)0_6p$0 lL)v $0 lL)v $0 lL)v $0 lL)v $Eڅ]]]\.ʡʡʡʡ|L_pA|N8)`NS&I`;`+8ٳɓ1f^ "護2wFJ,&&9ζm-Z$˯_~qR!11_߾}0 ƉӧO[YY!~O?T,;}Νnm۶ᄄ|-xW IDATw7찰0s =WZtiBBBOOOOOŋ׬Ysԩ0?z/\JV\9{{;T*RuڵkիW_^ dl\N< Jsss6d^Dk׮]x!|PjjjKK@ ~C$ YK.ݺuJ0aBQQoEEErrӑ#G+j|>رcB*L ))iuuu===!.1o>`dee! <<(߱cǜ9sjuKK˾}ۍ2FpuёN?yɓ'oCb={{aW^^ٳ۷gffٙ;",--ϟGTyYfinΝ;7**ꫯzw4s@i^9::n߾_-3󃃃,YrhHɄ -Zl2ww_UUUcBD">@.?zh{i6 wMKK dΝ}چ̫،w<+**y<^UUǍF"h_~Ő)~IRYRR7hzQaaazz\.tYNp Eqq˗.oOD}xbegg|F7{nWWWL FZjj WBBBMM͐vEݪ']]j ac %BŴyZv?@/3gΜ3gÇq>^ćyfgg{TS5,DGG]Cv $0 lL)8۩!]H[o~YYY999C8ÏOIIYj)-̕7xiN9::ǟ>}:77s将Eiio^U2 0oB0&&fc0g糹BNhTLk_C;ܻw!j|||vK c픭绻B?!.1o1PJuǦ?~833_ٰa۷[ZZ4% ))iuuu===$K.ݺuJ0aBQQoEEErr22`^ifL&?>|=fg̘a>_]]}!$355E X[[?}СCjތ\.wǎsQ---^:ngϞuwwPddJ ڶm!m\ٳaaaBsFEE}WNXXؓ'O#AhhhPPEhh(膆,MyiiP(|񐵫3fP) B!655=x`ٲeģ>>>/^ !  ?YfFdҥVVVo6QHg󃃃,Yry]J3b?{,--MT}}Q`` F ztttݾ}{ppy3b>oܸ`mٲѣ+0NTݻw?{,<Ӯ8͏v._b ˗؅q!888!!׮][]]W^mkk.//2e 湵u``_,W:ۥ3OlvbbbGGGffZ& 1~ʕvLdq޸qc``HF)o:a`z>Nxξ> !dggm۶ݻws8FBğz={lHݝ;wx<%4M&YYYin 1qD" MC]qћ<{...t:㕖֋w!嚻W N#l)JRIH$+v)̓ٳgx<1̸k%L&ɔJ85[^6MӉSʛNϞ=kmmoݺA^lzŋSQOOZmkkCuuu)JbF{{!ēMLL̐?v/+akP8B0 oWgCaCF*/_Nd2#1>zȐwP3~^KlJ,,,yRYY)vرk׮XbÇw[[[?666RTYf!dgg'Huқ7s__߱cB|>?!!a͚5~->Nxw}ٙNO4魷ުGdM61 .뫹k!LAAŋi4"~\(r8TZ__Yhk`'A,s\͓ʕ+?f8p <<ܐ#'L~3gr0}jZ)J/Wllgg'JܹJ _`^: 555KN'N(..~0p1q?~\4{>D5w47Owu$})Boh~Cb1-g9pxqdf9s9s^Q JJJ^v y4xF䔝=S_*fyE݌qR2^)s6w kܣ&}&I`;`NS&1v*$$ac~VF]7㒒j*B8*+++'''??ߐ/Ġ?ռDzz\`6:>(aҤIķ[7449sƔopww߹sgppC#aDNю9257.#P(999߿Br/2a?/Fթ{ڵkG{ݽ{w$jZ/;;;܈qxF؏ƍ׿ٳf;"Cc *wss#bG%رcΜ9je߾}펎 &++ !TPP p8%%%|QHhooޞӃZzL&+--ΖFr#""͛P(JJJz0qrrڹssccrvBqqqD...,UUUd$wppJKgG !>1PjȌ1?~ilذ---KnݺURM0׷"99Cs^C1cƆ |~uuChL~}aR)]vEP@@B---ӧH$ǯYⷷ+yCjRwʔ)wB ӧiG܈b_;777QQQ 444(("44(߸q# ڲeѣG5Y(uvv BPYKKKB1cƾ}BBxBTyYfWddJ ڶm?]2 YYYrLB+W<{lXXP(|1&s΍ꫯy睰'OvMMMd.Fu\t+L< |G4M(9,+>>ٳgiiiJGG۷kniWZUTTTVVV%͛7v˗/Xxt# vjJZ[[ZZZbYތҎ!tʕvLdb#NLLTzCqBիşw:㧄jy3o/Ϝ9jժTͶr|;χ?y2ںOVx}Z./54?* |;χ?yofΜI\ ͘O}}}ě|~BBš5k[ͣDbٓZRRVgϞ=Qնmmm!;;.#!^f9B0L>;::~qHT*-..^|9N/**dF?|}}=zt=GY<lllRL&ԃJHcǎ]vj62 6!;;;DB/1Y/ZXX ).1J;oďRT; ?/쳰8qի5p,// !===ϟO,r\V~-X,r'#0 KKˇj6=Qd6mb0\.Lkkk}}BfѢEFT,((^x1FcX__UXX}9a„ן9sƐFu\0 oLuJKKj58,^CY[[>!rJgeevZwz{{͛7]#y7yaDԑ#GRi}}g0%%%$$$##dbk{NA\(..GK.:u !$x<Ͷpww|X,ɉwER'OT*%%%|qYKII\lT*%.( ϻw殮FGGdsݾ}_#USS#Hh4F0yd|N?ތ,o30TVV&$$* 8RirrrRRRuu;wrssccc322kkk4GVTT$&&xǏd&~Jy…'N ڥ?"Wy3fS:/oOD}!QPSSC<NOO8Q\\lHc-Pjj hȼy]ݪ']]1P(8:P"XLYe';^R3gΜ3gWPPPRRb@X*?vU}e`f䔝m{FZkkzX*3?U}۩QttCDEE;fI`;`NS&I`;`NS&I`;`NS&I`;`NS&I, \.C9C9C9C*pv(ӱ?9qSp$0 lL)v $۩W^y%???'''$$d4.{9yn@BBBonܣ0XLLωן|͛75;͋EY[[Waaaģ_|BHVwuuI&;v2>>!x>!k/0h͛7Z=}ԩS׮]#~711_'*8}BOb2RKK='q*ɓI& .tqqJ'N ̙4½{?Ç_~R<`OOϤ)S̘wqQT,˺+ *W2E3MiHbSbW6 IDATW)ٵ!5(׫̈́,j!C( <,83?6. yٳ3|3gΌ4~s@ڳgիWYO>ͭ[;}˄Tyy!CB.--Osrrw===srr\]]===;Hjw)((8Ș7og}ֱ  I$IFˋy޽Ν;273{1cƤ?$IԔG'ꫯZNLLԷҥKU*Ujjjrrr|Ҳo> ._|ˮ]Bvvv555{U(LN6mŊ$IZXXdddGGG;;;8p 00QJduuu_|rRruuZ|J YYY~~gg7=~^!$ W^=uT.vպu&L鲲feeaÆqQU]]cǎ @Op):=;5x`C)7y~ӳVVVcǎ_)~P(4˻qB7ᩖW[[~C-Zֶ#˝8qݻw**&&fG^h>~?|ɒ%k֬Oy҄BaDDDmmm\\\ Knݺ~zRȾ0 J/UeeݻwON/]TT4BUWW{xxQTlLvNl޼ SNէp8 :=$$$ɀk׺gB ,x˖-;x`o ӆSC qss+,,lkkJvvv![n/qppЯ?~ѣ?'r<77wFuAQE}_bűcǎ;a_]666&...<<ׁ#88رc_|T*MHH#333GAϙ3'###77(B{:zhNNP(?~DDĦM4iŋ BQP("lmmoܸa01cdffK$cdmmm"q -$o8#222~#F8.H rw++Çsܟ~e# !D 1 S`РA555鍍9s2,,L*ӳb0S\.矏W>>>E8>e@qpǟŋ#JKK:`iw1nܸ?W?S /0}tww/И ~P(N>4|> 666++K3^fGQQQ6lشi֭[ z܃4hPA BVPt{r J9c 322j5?uK/ꚑ^hKK BH$fbNaaaz2IELNJ>>>_ L85FQTUU>|x֭1c׸[ZZXb… . wssJVktL<{%<p84|kkWZ㸳4Yp?jժ={ܸqcBqP+tFr}ߩtZȑ#mmm|MMMg}flS… gϞ(Ç;wGRRRDDDccc{{[3I7oތ[|͛j7|sTݻwݸq#99y֭UUU%%%xo߾]"9rɷo6fzLPTTD"D]T7B >}J_O\2>>r5>~8AYYY'OӇ n:z~+335 ,""aʊ_Z5BIB0115++رc9lVNΝ3r>[ŧN p7 +queN++BHve\7xFDgԨQƍ۷o_)Ͼ3fpWLƀ |6o+ɀ@p G`8#0?pjʕ5<]ΝMHHHJJJMM@@S|LL̜9szRbG' j j pSNNN_~err={Ə>@l׿(?uo2,,,` O8;unݺ!z{{oذORL'x@?ᔍùsZZZB?-++uM0Aeee%&&| B...g9881B(ٳ!tRGGGJ W:u*?x`{{;K7ntqq)++{R=<<bqVV֧~q5NzY[['$$ `  !TzaLVWWgj+L;w,//?tׯ_֧޽gw[[[C=O6mŊ$IZXXdddGGG##Ur b[ZZ#G|7RiQQ޽{}`_bbb/_Nw{WWר˗T*ϴ0Sڰaøq(ޱcGYLqv'gvvv555{U(LIxhS{1Ҏ&gTTsCC~r<4All7|w!֬Ycggm6L'f@0pO.֮ZҲ[!!!$I]mҥƔ1{3gάYF&#Ə/Yd͚5vvvAAA'((=͛7߿?!!aԩlLvE#a*`UUU2,..I&d2^?ʭ{w0c)ˋbNiӦEGG yщLBBBRi``/heeW5 S ˆڸ8 }ҤI~1 d,qUWW{xxQT3/LT ,x˖-;x~`0NLqSL!u+@ļ_t`ɇgS!4r;vd2NǾ߱SRڵk..._'OGQ2p$-[p2+W[YY >O,A2/L3h z>s挥eXXT*ɉdT,w?bb޶6H8A&f bj/YII/4oVyy;wʌt .](zmss3A1-olltppH؄%D$4bNg̊Ɨk0NN3g,DReffΘ1 ZmF >4jSS뙽_1Kr8N9K?)((ڰaæMnJ Jҿe0Ǐߺu륗^ruu` ~HdÇ#Ridd_XPG*UuFܤԌALŔ?K=Tfo˙K&ݹsٳYo[ (a...8ϝ;!V .\񬬬|}}'5*++ǎxIZZה)S0  *MMMyyy2L,#RJKKB/I[R8irJPF"==ҥK?`ڵ+88ؘ%-,,^ӧOҾ,677M0c"S?g')!!_f͒H$|>A8Yfyzzvr~XyĉQPǤvdA7hgϖH$ϯc_ӌO;t^LԃIiv1[W,qΜ9sĉ۽{eFŞvcq D}JqFll,ǏuI:=99y֭UUU%%%L;7o-_|jo~:B(&&fʕ|>_.3]K2}tJE_@H$"ḻ+J1'BÇh4~SXEqqB0.t2d3^y啦#s6ڗ\$:rG"~Oh**::zEEEiAv/((+,,yǙT__Sg_ꇩ n:z$33Ә4)Nz@o߾]"9rDnpF&f`{1T֧ToL5NLP( Ebb-[BBBZ[[',\$XDDÔTkg;?b?=g(Wv8ĉ=w?⛅UUϸrBt:9B |hGqM?CfRF7n7}&H$iiiYYYriƷ{i%N~ `ͥOEGG;;;'&&UWJHHHJJJMM5,L߼zco/%OP*?}O}ƍ]f }Z.1cv^ټvxd2TA!В%K^z%ﷴ۷ ˗/_p!k.PllluueMM޽{ b7\wpp`W]Ç&M2yYVS Uo?Rio'75QBEQ( BH u{whh]PPP@@ ,X-[vAUUU%⚚d2L&e29rǎ2L͛7NTT111/=zE?$$$ɀk׺-]\&7oBBԩS,ۅ={3g֬Y#Ys񡡡%K֬YSQQ,յʻwN>~ۻR!GGG;;;>>>?y<^HHH}}T* |s.K<I&}˗/0L&cBaDDDmmm\\Au+J^{&1)~~errryi>ԾLiz<"QS]iYXX\܂y|#:SB0S&%%i4OOO BZV$9::"JKK٧v]zUѐ$YRR2tP:>B933sĈf'OVϟ?^A)))Aܻw/77]v]Znjjb9sdddRP(3flWrB/^9s&3/WTT}J]]VT*r֖h~5ХKjujj/HS>,(ox!z&ݕ+WZ-B׷/~g0~?K2Xo999t9997S2 h4<gYpy\<a_iiiNQD"Aj@T*Ϝ9cii&JsrrU*y[_$I'Mx!CP% ܹcFb0z<jll:X5hˆKKKc>mmmX}xGD"6#͛m۶$I"'oa73څ_!g\|Jbʇnjx#M$8N~IL_۷ Ο1/S4h~xz=xã]N$II$ɳYP$E!kaQk|NéQFsA3,,S{{;c@T_ߥM(~YYYE-]t̘102P IDATVlllBo&2"FD,t:3aF;mۥR233g̘xFF}J}1W3՛ޯⱱVTj%v,((ڰaæMnݪ8e@B _wL+r8N55~~յryWWל1/S Ii0jzhN%p8NG`<"I$- R`x(H]W .xVVV'јՕz{{#_x32A5e ÄBaDnyەu%֮]Y_?}1 3՛үX5kD"Φ(%v tbeeرcBF͞=["???}2w,777M0c"SƏUzsrrL2a„nSLX 3 '㸅ςr-8ǹ\r<.‚˵0x qv*tΝ?3rx>/׊6lݺu̎א>|0==}o=uB(**J"D"T*Y'˓"""oݺq0aR>~8AYYY'O4bbbBBBOR;IR7oތ[|͛j7|su5c ao65dٽ+MMMތLj~OAAAdd]aa!=K;T*Uttݻnܸu@_2??ȑ#t"~?I 9ѣGBL?bW]MZWWWYY^, 3 '.ׂgz6H8$I.NaSVRҮ!BOz¡Y\\L?=ٿZ<s9~e~7@+Yxokini5:t:Vh)4 tAxi/N@ юܣ̾?QF7~gD߁jc+S=8r| Zp\Ź8Zpp.N?hggDc~S*-Sc_iow@p88\'p#I0q(.a`8gy 44C0 +p8.8sqǹ xGdBEI$I(DIR-B(ȿBQ$EII7E:X$iQ0@!Loc'")z|EIAp EQEAYN`AR}#H׳}ETo싊;w.ӻ+Wd Sk IIIƔ$&&fΜ9+~|/G?~1< NzbuҋVXQ?5(EQ$IC'D2`7JAdggsO7nڮd2TiI$ɞ}YãG޼yk׮@y{{d۷oGDD׿~{=?ckx}bVǎt2=жmp裏S:n<̽{oڊ YYY~~a++ 67;v.jݺu&LtYYYt鱱vvv555{U(!PzSrꟹ^VV0bPgϞW_}_StNNN<:!!!̾]㌊ uvvnhh׏AIIIy?'FFF2ۋFoHҢ{gW666Ν?'[ߎsBw-( +__ߡCeJ$ɖmѢE,)vgj_&L1C.K.uttTT,|@\Jduuu,.\@ڵe{Y`?42mo|Ҳo> di/*ڸqKYYǏJ%nex'9+annnvvv֭Sտ˞={X2gqo~ p `E($9 !)/E6mZttt``@ 7o-f[` Xl=v$vZ77KrrrںuJ~ =44.((( umgΜYfL&+//GTŋ=zѢE*L$d2ʹ],q9rǎ2LǠѣGwL=ztqq1KhҤI~1 dt"{}v"kkkWZniiӧoܸO>яa̙3 1&ݻwX`iwebҺC.Ǐ ϗ,Yf*K>UVV޽{wKoo"3Ҍz0, C) ˆڸngYګ͛7߿?!!aԩtS'Lb>t|ddc)xXI*++>|80=g~ qqסU&C/jE"#Be!'OVϟ?ʕ+ZN:ujRRR[[FIII$k׮ݽ{!VB?B͙#F0uի$ɒ)))S՗pҥZ/bm}vB-[jkkO<noo^X3^{cǎ>}zΜ97`t??ywf. Yg޾LONYeΜ9E)k׮/Μ9{ƌͫ˾p~SD۷ooll !dkkv-[o޽%&&&?????x.]_j4N]_ju ---ۍd턽}tNYֶW.xGAVfĩucѵT*e{nj.Hy3K{u2x`Pcc#A?kČB}nz%1ĘM0x.)^ S8zQg0 p@nool%J###}||k[[[)G677ߥ?TtBA} c |AlllVVEQK.3fL`x=qW^1b;wt:ZAL#S:kkkJVMώ/\G=~/ Y~}UR d0+J5#Vv7}O%ͿS<,`vPT3fq<##I#{s0YS-((ڰaæMnJ>X4˹D"=3*IT^^NsMMeF<IF67}F_8CEKq)ПbsĉOP~Z.((Xp!dz8?{lD"Y[[o"c}y&JݘMb^<]I^xL0a1q888NOSa8**g(D"8R/7lذu233zǏ'"++ɓo.H 9B'Ĭ\2>>rryRRRDDDccc{{[:>|~Fߞ:ueX4Iqq1=\RRB3"IСCAAA!!!ϟ?z({:H;;BzX!HGڪT7nvZ$ɸ{kΝN?~̌ɂ ,X9|Tҝ;wvaW݌5?o0vyf\\7oެVׯâf${[n*))e?e^J޽{wQQэ7X4bbbBBBORSOؗgo_} xcRL|>SOa 8Iq881|0e/U-!Y'|bccϝ;g!?F,..vtaQQQ_~e^^^ǂPE9888p/2[7 s]j::V,,lE p?=s!!;Q\{i95jܸq@@gE}G}O.]~0Zq(C8( \(5 vQ@?vvvNLL47qcuIwq0'p$1 EpHV>o `͛7wO^OӯP0X׻{b # =-)>s>$G7s(0Ì{2E:NG:NIZNv):i0@! u:N tZVѐNG\- B NhuZNAhJMAK0; tFh) c%I$IQS!TZI$ $I$I m8Q )v%H )IR$BꚚ+x \V~iN֨5jFj***t:0;Bύ__nj3x!BT*>\hQa8իW\q%It!Cƍ"pEyEE׵`8zz[0)@p G`8#.Elee>ϟ?5 30xJ>@p G`8#0sS+W\~}osu) III X?SC_/;.}Nk_2 JWf+b%_T=<}ןe2YXXquw=<Ո)S oX{>}ĉ2 qЉ'M1%Kرg+;խ[nz@{Ѡ@OJ7nseeeĵk׊+W4(22ԩS2dHEEEcӆSb8++O?"""x?((HѼ;AAA[#G|u:ݶm͛\|Bgώ{. ,RnHHV ҥK;ƒCCCwޝ' Ǐm>&Ճbʇ%N`dڴi}ZIX\\:~> qSEE˭7n9ȑ#B0;x)ztt'N8aÆ>*͛>Կ:ujRRR[[FIII0~ի$ɒu]vݻwBj)Sɓ'jB̙3'###77(Bqڵn1b}vbF= <:S۱da8DՊD"GGGPii)=%fҮ\j 鴽d`<,g[L}K?zȑ#[l ڽ{l\;{l}%BH?DV!CIR;;^ +gvQSS#[[ێ)c|=4)~&c:v,))YlϷ?~{X =s挥eXXT*ɉWTn/M&p'`,)N`o2rY|9BH xzz.Y!sb5}333z;wQgϞ}>L/y<EQjvjC՚}Sr6#<;HfN嚝:JQM}}=Bֶ=FNfc03ZkZod#_y#Fxzz޹sGӱNIHڼCH#lmm ~,ev%TI@˗/!VZѣ/"g/T=W&ݹsٳfӭҦS/Htvv:thMMNr?|||f<IDATZ񩨨O>^\.)//O&bT*0\1UrjuAA… yb^={D"~~~ŒxXMeL?mmm&LЧTǏ?~XV+ o(K~R3gΜ8q}v޽lٲQF1Ξ=MT*_pBXÇn3f \8@_4h 0B AB Q+M=**J"D"T*{azz5ͷ~{)rĬ\2>>r .;嚑 ǏuILn޼|͛7ofK{u@@Z,OL-xԨQwmhh.))әaذa֭:.33S'??ȑ# 3S2}%IСCAAA!!!ϟ?z+Wtb)TLP( Ebb-[BBBZ[[{G_خ֭KJJt?>E477waؐ! ¢I*XDDÔTkgDƞ;wҥK=a( d: $" B!!;Q\{ԜxPEX Vk4ZaSThhh?/`8#Nuzv8ٳ~~~> 謶dں.?okkdhkk ٰ!T]Uq;KZ͛ݻ'6nhaaQTT`y ~c<w=<<ð\eZSRTߞ? 2 !4w`Й3gt:Rt_ ""k+VZ -\'Nnܹ]v(8#0N zS=)ߥ~_wL(=wiQT*Վ;+Vx<ϫNJ ,Z!t . .\Z`{[SS+UՉ)ʴ N~s=jk{nΝ83b`vj|ۨ j wo@ `YNt&J>|·ͳa_S8:9\Ҙ%)@p G:_;˭NWVV6gnueR연$Jep):`r<EQtS0kF؈q8BB/ ¿N`8llmn޸ѦPhw0++*x΁;S/pE 6luf՝5`! !$Y9 LSrয়eĢz~$kkkN}BP XZZ|@@rڔJJRr%[/ 0@dlŊm‚r880 2C8eH$2]'.Egg>s8E"$ jA$IQEQA3/Wx2z<{ZVo.پ}[hhh1 2Ѹx3f,ےij^t>~''l[+V|ӻ3f_]~)!lƍf7]V?Fmڴ̙3t:A_~}_{Ny%f# 2']9] @o} ( t$A־,0;Ҳi&myKJ{oDV.LCc#dCC^3ff~QD0]ٞYB\?s̉INNηn{ecvB7s&mx[[ۆ-ZVswԽ!߹sLI^`B(`РAύWS]MDKsW_}l;xɓ>>>c6 & @oáP(.8gJohx䜗qgv\R,I 9I"SRҾNѮ$idx~a] H.ojjW(B<o挙iӗ,[FFƱcǻeooWx`d }A-=aj "1GR1TjWS]cRl_nݺ'=`q0DD/74p3?"'߹>ii]zu̘1v]_lSusmm6ڱ6Sa3ۢ247_FbH0D0D}ב`I(K6`Ɇ q`$!:: I>tڭc-y=sڇw}qsN>P<JE@R*cj4)4rJ4+V;ݡHD>{\OOϛ5qw򁁁HD>{3vrEnϗ##G^v-ѣŚvj?UVVmmm,#Gb9~8u,v4(_Ngϗ$]xկ73n=H^74iMH$"˲$Ꚋ޵kٻܼ͛7z&7> OKS]U]\\krHdZNS2k'"_ mKs*nQcf($aI$IA 6<ujM¡ƍn߾#[璪ׯ$it;}^N{jٔjmjڒJtt[vwY4C9S)_Nq]oX8"2[,WiQd81(VrFO Zfytxӏ):44ݽpBED+Vy%?/\s/Z(A97oޜif6g;v  ))XVV֢m93NEd4d2Eq<1d=-q,!iIxEQٍ5Ix, F"R$ Q% F-5 ! 幞, ElX("H VE9A-6 DQ։iD/Eh9H`_Jo$" iEM'jD:[P И^czbt' q'"N 9>$Z )4g Y^y$iIENDB`luckybackup-0.5.0/manual/styles.css0000666000175000017500000001561111560462113016716 0ustar luckybluckyb/********************** luckybackup webpage css style sheet based on a free web template by spyka webmaster (http://www.spyka.net) released under the Creative Commons License thank you :) ***********************/ /** global **/ body { margin:0px auto; padding:0; font-family:Verdana, Geneva, sans-serif; font-size:12px; color:#333; /* background:#fff url('images/body-bg.jpg') repeat-x;*/ } * { margin:0; padding:0; } /** element defaults **/ table { width:100%; font-family:Arial, Helvetica, sans-serif; text-align:left; } th, td { padding:5px 10px; } th { color:#fff; border-top:3px solid #082659; background-color:#0C3A87; } td { border-bottom:1px solid #f4f4f4; } code, blockquote { display:block; border-left:5px solid #ddd; padding:10px; margin-bottom:25px; } blockquote { font-family:Georgia, "Times New Roman", Times, serif; margin:25px; color:#6E6E6E; border-left: 4px solid #ccc; } p { line-height:1.9em; margin-bottom:20px; } a{ text-decoration:none; } a:link{ color:#0D3C84; text-decoration:underline; } a:visited{ color:#0D5C84; text-decoration:none; } a:hover { color:#0C3A85; text-decoration:none; } a:active { color:#000000; outline:none; } fieldset { display:block; border:none; border-top:1px solid #e0e0e0; } fieldset legend { font-weight:bold; font-size:13px; padding-right:10px; color:#222; } fieldset form { background-color:#f8f8f8; padding:15px; } fieldset p label { color:#000; float:left; width:150px; font-family:Arial, Helvetica, sans-serif; } fieldset form input, fieldset form select, fieldset form textarea { padding:5px; color:#333333; font-size:13px; font-family:Arial, Helvetica, sans-serif; border:1px solid #ddd; } fieldset form input.formbutton { margin-left:150px; background:#0C3A87; border:none; border-bottom:3px solid #082659; color:#ffffff; font-weight:bold; padding:5px 10px; font-size:13px; } h1 { font-family:Arial, Helvetica, sans-serif; font-size:45px; color:#500202; padding-bottom:5px; } h2 { font-family:Arial,Helvetica,sans-serif; color:#061C41; font-size:30px; /*font-weight:bold;*/ /*letter-spacing:-2px;*/ padding:0 0 5px; margin:0; } h3 { font-family:Arial,Helvetica,sans-serif; color:#0D357B; font-size:20px; padding-bottom:10px; } h4 { font-family:Arial,Helvetica,sans-serif; color:#0C3A85; font-size:15px; padding-bottom:10px; } h5 { font-family:Arial, Helvetica, sans-serif; color:#666666; font-size:13px; padding-bottom:10px; } h6{ font-family:Arial,Helvetica,sans-serif; color:#666666; font-size:10px; padding-bottom:10px; } ul, ol { margin:0 0 35px 35px; } li { padding-bottom:5px; } .action_button { display: inline-block; padding: 3 10px; border: 1px solid #ccc; background: #ececec url('images/action_button-bg.png') center repeat-x; -moz-border-radius: 10px; -webkit-border-radius: 10px; color: #2e3436; text-shadow: 0 1px 0 #fff; text-decoration: none; -webkit-transition: background-position 200ms linear; -moz-box-shadow: inset 0 1px 0 #fff; -webkit-box-shadow: inset 0 1px 0 #fff; outline: none; } .action_button:hover { background-position: top; color: #000; } .action_button:visited { color: inherit; } .action_button:active { -moz-box-shadow: inset 0 2px 3px rgba(0,0,0,0.4); -webkit-box-shadow: inset 0 2px 3px rgba(0,0,0,0.4); box-shadow: inset 0 2px 3px rgba(0,0,0,0.4); background-position: bottom; } /** wrapper **/ div#wrapper { width:900px; margin:0px auto; padding:0; } /** sitename **/ div#sitename h1 { font-size:48px; letter-spacing:-5px; margin:50px; margin-top:-50px; height:82px; padding:18px 0 0; display:inline; } div#sitename h1 a, div#sitename h1 a:hover { color:#fff; font-weight:normal; text-decoration:none; } /** header **/ div#header { padding:20px 0 40px; margin:0 auto; height:113px; background:transparent url('images/header-bg.jpg') no-repeat; } div#header h2 { color:#ffffff; padding-bottom:0; padding-left:50; font-weight:normal; font-family:'Lucida Grande','Lucida Sans Unicode',Geneva,Verdana,Sans-Serif; font-size:32px; letter-spacing:0; } div#header div.tagline { color:#C2D7F9; font-size:14px; padding-bottom:10px; padding-left:50; font-family:Arial,Helvetica,sans-serif; } div#header div.tagline a { color:#ffffff; } /** body **/ div#body { padding:10px 0; background:#fff url('images/content-bg.jpg') repeat-x scroll top left; } /** content+sidebar styles **/ div#content { width:900px; } div.column-left { float:left; margin-right:20px; } div.column-right { float:right; } div#sidebar { width:150px; } div#sidebar ul { margin:5; padding:0; list-style:none; } div#sidebar li ul { margin-bottom:20px; width:150px; } div#sidebar li a { text-decoration:none; } div#sidebar li a:hover { text-decoration:none; } div#sidebar li ul li { display:block; padding:12px 10px; /*border-bottom:0px solid #ddd; color:#777;*/ } div#sidebar li ul li a { color:#333 ; text-decoration:none; font-family:Verdana, Geneva, sans-serif; font-weight:normal; } div#sidebar li ul li a:hover { background:transparent url('images/hover.png') repeat-x 1px; color:#09285E; text-decoration:none; } div#sidebar li ul.blocklist li { padding:0; } div#sidebar li ul.blocklist li.selected-item { border-bottom:none; } div#sidebar li ul.blocklist li.selected-item a { /*background:transparent url('images/action_box-bg.png') repeat-x;*/ background:transparent url('images/selected.png') repeat-x 1px; color:#505050 ; font-weight:bold; } div#sidebar li ul.blocklist li.selected-item a:hover { /*background:transparent url('images/top_bar-bg.png') repeat-x;*/ background:transparent url('images/hover.png') repeat-x 1px; text-decoration:none; } div#sidebar li ul.blocklist li a { /*background:transparent url('images/action_box-bg.png') repeat-x;*/ background-color:#F8F8F8 ; /*or*/ /*#F0F0F0 ;*/ color:#666 ; width:140px; display:block; margin-left: -5px; padding:8px 10px; } div#sidebar h4 { color:#0C367E; font-family:arial; font-size:17px; text-transform:uppercase; /*font-weight:bold;*/ margin:-5px; padding:10px 0px; } /** footer **/ div#footer { padding:20px 20px; color:#fff; border-top:1px solid #ccc; } div#footer p { color:#666; margin:0; font-size:11px; width:50%; } div#footer p.left { float:left; } div#footer p.right { float:right; text-align:right; } div#footer p a { color:#666; font-weight:bold; text-decoration:none; border-bottom:1px solid #999; } /** clear fix **/ .clear:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; } .clear { display: inline-block; } .clear { display: block; } /** goto top**/ a.gototop { background:transparent url('images/top.png') no-repeat scroll 0 0; width:15px; height:15px; position:fixed; bottom:5px; right:5px; outline:none; } a.gototop:hover { background-position:0 -15px; text-decoration:none; } luckybackup-0.5.0/ui/0000777000175000017500000000000013165410113014011 5ustar luckybluckybluckybackup-0.5.0/ui/luckybackupwindow.ui0000666000175000017500000011022011710454560020121 0ustar luckybluckyb luckyb luckyBackupWindow 0 0 615 601 0 0 0 0 16777215 16777215 0 0 luckyBackup :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png true 24 24 0 0 110 0 0 0 0 27 16777215 16777215 PointingHandCursor :/luckyPrefix/add.png:/luckyPrefix/add.png 0 0 0 27 PointingHandCursor :/luckyPrefix/remove.png:/luckyPrefix/remove.png 0 0 0 27 PointingHandCursor :/luckyPrefix/configure.png:/luckyPrefix/configure.png 10 0 0 24 24 PointingHandCursor :/luckyPrefix/down.png:/luckyPrefix/down.png 32 32 0 0 24 24 PointingHandCursor :/luckyPrefix/up.png:/luckyPrefix/up.png 32 32 0 0 24 24 PointingHandCursor :/luckyPrefix/left.png:/luckyPrefix/left.png PointingHandCursor CheckBox 0 0 24 24 PointingHandCursor :/luckyPrefix/right.png:/luckyPrefix/right.png Qt::Vertical QSizePolicy::Expanding 1 114 0 0 80 0 0 0 40 0 8 50 false PointingHandCursor :/luckyPrefix/DryRun.png:/luckyPrefix/DryRun.png 0 0 60 22 16777215 42 PointingHandCursor :/luckyPrefix/start.png:/luckyPrefix/start.png 22 22 60 22 PointingHandCursor :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png 22 22 60 22 PointingHandCursor :/luckyPrefix/okay.png:/luckyPrefix/okay.png 22 22 100 0 Qt::Horizontal Qt::Horizontal 559 1 :/luckyPrefix/window_minimize.png:/luckyPrefix/window_minimize.png 16 16 130 27 PointingHandCursor :/luckyPrefix/exit.png:/luckyPrefix/exit.png 0 27 PointingHandCursor :/luckyPrefix/exit.png:/luckyPrefix/exit.png 22 22 true 0 0 0 0 16777215 200 QFrame::Box QFrame::Plain 0 4 24 24 PointingHandCursor :/luckyPrefix/collapse.png:/luckyPrefix/collapse.png true Qt::Horizontal 111 21 0 0 200 0 8 75 true QFrame::NoFrame QFrame::Plain Information window Qt::AlignCenter Qt::Horizontal 115 21 16777215 16777215 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> 16777215 130 0 0 0 0 200 QFrame::Box QFrame::Plain 0 Qt::Horizontal QSizePolicy::Fixed 15 10 0 0 :/luckyPrefix/down2.png Qt::Horizontal 50 24 0 0 130 0 10 75 true QFrame::StyledPanel QFrame::Plain Qt::AlignCenter Qt::Horizontal 120 21 PointingHandCursor QFrame::StyledPanel QFrame::Sunken true 1 false IBeamCursor <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> true 0 0 615 21 &Profile &Task :/luckyPrefix/profile_add.png:/luckyPrefix/profile_add.png Ctrl+N :/luckyPrefix/fileexport.png:/luckyPrefix/fileexport.png :/luckyPrefix/fileimport.png:/luckyPrefix/fileimport.png :/luckyPrefix/exit.png:/luckyPrefix/exit.png Ctrl+X :/luckyPrefix/rename.png:/luckyPrefix/rename.png :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png :/luckyPrefix/default.png:/luckyPrefix/default.png Ctrl+D :/luckyPrefix/cron.png:/luckyPrefix/cron.png :/luckyPrefix/filesave.png:/luckyPrefix/filesave.png Ctrl+S :/luckyPrefix/AdvancedSimple.png:/luckyPrefix/AdvancedSimple.png F5 :/luckyPrefix/duplicate_profile.png:/luckyPrefix/duplicate_profile.png :/luckyPrefix/add.png:/luckyPrefix/add.png :/luckyPrefix/remove.png:/luckyPrefix/remove.png :/luckyPrefix/configure.png:/luckyPrefix/configure.png :/luckyPrefix/duplicate_task.png:/luckyPrefix/duplicate_task.png :/luckyPrefix/manage.png:/luckyPrefix/manage.png :/luckyPrefix/fileimport.png:/luckyPrefix/fileimport.png :/luckyPrefix/description.png:/luckyPrefix/description.png :/luckyPrefix/email.png:/luckyPrefix/email.png pushButton_start pushButton_exit luckybackup-0.5.0/ui/modifyDialog.ui0000666000175000017500000044333113165410113016767 0ustar luckybluckyb modifyDialog 0 0 537 689 0 0 0 0 ArrowCursor Task properties :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png 0 0 0 0 true 0 0 517 669 0 0 75 true Enter a name for this task (eg "Backup my home directory") Qt::LeftToRight Name : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 50 false Enter a name for this task (eg "Backup my home directory") 0 0 75 true Define the type of this task: 1. Backup the contents of Source inside Destination 2. Backup Source directory by name inside Destination 3. Synchronize Source & Destination, keeping the most recent files at both of them Type : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 Define the type of this task: 1. Backup the Source directory, inside Destination (see also "Do NOT create directory" box) 2. Synchronize Source & Destination, keeping the most recent files at both of them Backup Source inside Destination Synchronize Source and Destination 0 0 75 true Enter the full path of the source directory (eg /home/luckyb/) Source : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 0 29 50 false Enter the full path of the source directory (eg /home/luckyb/) 50 false PointingHandCursor browse localy :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png 0 0 75 true Enter the full path of the destination directory (eg /media/backups/SiduxHome/) Destination : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 0 29 50 false Enter the full path of the destination directory (eg /media/backups/SiduxHome/) 50 false PointingHandCursor browse localy :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor QTabWidget::North 0 Description Task description Type a description of the task Exclude Add any directory, file or pattern to be excluded from this task 0 0 0 570 300 Templates 0 0 16777215 16777215 50 false PointingHandCursor Exclude all temp folders (**/*tmp*/) Qt::LeftToRight Temporary folders false 0 0 16777215 16777215 50 false PointingHandCursor Exclude system mount folders /mnt & /media (/mnt/*/**, /media/*/**) Qt::LeftToRight System mount folders false 0 0 0 0 16777215 16777215 50 false PointingHandCursor Exclude all backup files & folders (**~) Qt::LeftToRight Backup files false 0 0 16777215 16777215 50 false PointingHandCursor Exclude system folders /var, /proc, /dev & /sys (/var/run/**, /run/**, /proc/**, /dev/**, /sys/**) Qt::LeftToRight System folders false 0 0 16777215 16777215 50 false PointingHandCursor Exclude all cache folders (**/*cache*/ & **/*Cache*/) Qt::LeftToRight Cache folders false 0 0 16777215 16777215 50 false PointingHandCursor Exclude all "lost+found" folders (**/lost+found*/) Qt::LeftToRight lost+found false 0 0 16777215 16777215 50 false PointingHandCursor Exclude all user's trash folders (**/*Trash*/, **/*trash*/) Qt::LeftToRight Trash false 0 0 16777215 16777215 50 false PointingHandCursor Exclude all user's .gvfs folders (**/.gvfs/) Qt::LeftToRight .gvfs false Qt::Vertical 20 2 0 0 213 283 User Defined 1 50 false Enter here file, folder or pattern and then press the "add" button to add it to the exclude list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices 50 false PointingHandCursor launch the pattern editor :/luckyPrefix/pattern.png:/luckyPrefix/pattern.png 0 0 110 0 16777215 16777215 50 false PointingHandCursor Add exclusion as entered in the next field add :/luckyPrefix/add.png:/luckyPrefix/add.png 8 50 false Exclude list Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter 0 0 0 100 50 false PointingHandCursor Exclude list 0 0 110 0 16777215 16777215 50 false PointingHandCursor Remove highlighted exclusion from list remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png PointingHandCursor Edit highlighted inclusion edit :/luckyPrefix/rename.png:/luckyPrefix/rename.png PointingHandCursor Move highlighted inclusion up move up :/luckyPrefix/up.png:/luckyPrefix/up.png PointingHandCursor Move highlighted inclusion down move down :/luckyPrefix/down.png:/luckyPrefix/down.png Qt::Vertical 20 40 PointingHandCursor Read exclude patterns from file Read file: false filename false browse ... :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png Include Add any directory, file or pattern to be included by this task 100 16777215 75 true Include mode Mode: Include ONLY this list of patterns. Nothing more. Please refer to the manual for better understanding of include rules. This will disable the exclude feature. Only Include false Do not exclude this list of patterns. Please refer to the manual for better understanding of include rules. Normal Include true 1 0 0 0 0 16777215 16777215 50 false Enter here file, folder or pattern and then press the "add" button to add it to the include list * - matches any non-empty component (it stops at slashes) ** - matches anything, including slashes ? - matches any character except a slash trailing dir_name/*** - matches both the directory & everything in it starting / - pattern is anchored to a particular spot in the hierarchy of the transfer (normally this is the "source") trailing / - only directory is matched, not regular files, symlinks or devices 50 false PointingHandCursor launch the pattern editor :/luckyPrefix/pattern.png:/luckyPrefix/pattern.png 0 0 110 0 16777215 16777215 50 false PointingHandCursor Add inclusion as entered in the next field add :/luckyPrefix/add.png:/luckyPrefix/add.png 8 Include list 0 0 0 0 50 false PointingHandCursor Include list 0 0 110 0 16777215 32 50 false PointingHandCursor Remove highlighted inclusion from list remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png Qt::Vertical 20 231 PointingHandCursor Read include patterns from file Read file: false filename false browse ... :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Edit highlighted inclusion edit :/luckyPrefix/rename.png:/luckyPrefix/rename.png PointingHandCursor Move highlighted inclusion up move up :/luckyPrefix/up.png:/luckyPrefix/up.png PointingHandCursor Move highlighted inclusion down move down :/luckyPrefix/down.png:/luckyPrefix/down.png Remote Use a remote host either for source or destination 0 0 Use remote host true false 0 0 50 false PointingHandCursor Use a remote host for destination data. destination true 0 0 50 false PointingHandCursor Use a remote host for source data. source true false 0 0 50 false User: 0 0 50 false Enter your username for the remote host (leave blank if not applicable). 0 0 50 false @Host: 0 0 50 false Enter the name of the remote host. QFrame::StyledPanel QFrame::Sunken false 0 0 50 false Enter the full path of the file that contains the rsync (not the ssh) authentication password (leave blank if not applicable). QLineEdit::Normal false 50 false rsync password file: 0 0 50 false PointingHandCursor Check this to connect to an rsync Remote module Remote module false 50 false PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png 0 0 0 0 16777215 16777215 QFrame::StyledPanel QFrame::Sunken 0 0 PointingHandCursor Use ssh as transport shell ssh false 0 0 50 false port : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter false 0 0 50 false Enter the port you would like to use for the ssh connection (leave blank for default port) 32767 false 0 0 50 false password: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter false 0 0 0 0 50 false QLineEdit::Normal false 0 0 50 false private key file : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter false 0 0 0 0 50 false Enter the full path of the file that contains the private ssh authentication key (leave blank if not applicable). Note that you have to do all actions needed for a passwordless ssh remote connection using an OpenSSH key pair QLineEdit::Normal false 50 false PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png false 0 0 50 false additional options: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter false 0 0 0 0 50 false eg -C4c arcfour,blowfish-cbc QLineEdit::Normal Qt::Vertical 20 5 Command Options Add or remove any rsync options. If you have no idea what these mean, leave them untouched !! true 0 0 0 570 300 Templates 0 0 0 0 50 false PointingHandCursor Preserve the owner (super user only), group & time stamp of files (-tgo) Preserve ownership, times true 0 0 0 0 50 false PointingHandCursor Delete files on the destination that don't exist on the source . "Recurse into directories" has to be selected (--delete-after & --delete-excluded if "Exclude" is used) Delete files on the destination true 0 0 50 false PointingHandCursor Preserve permissions of files (-p) Preserve permissions true 0 0 50 false PointingHandCursor Recurse into directories (-r) Recurse into directories true 0 0 50 false PointingHandCursor Copy symlinks as symlinks (-l) Preserve symlinks true 0 0 50 false PointingHandCursor Do not backup source files that are newer on the destination (--update) Skip newer destination files true 0 0 0 0 50 false PointingHandCursor Copy device (super user only) & special files as they are (-D) Preserve device, special files true 0 0 50 false PointingHandCursor Ignore files using a similar algorithm to CVS (-C) Ignore files the CVS way 0 0 50 false PointingHandCursor Files that are hard-linked together on the source will hard-link together on the destination WARNING: All files have to be included in the transfer set !! (-H) Preserve hard links 0 0 50 false PointingHandCursor Check this is you use a FAT/NTFS partition as destination. Data ownership and permissions will NOT be preserved. (-t --modify-window=1) Destination is FAT/NTFS 0 0 50 false PointingHandCursor With this option rsync will transfer numeric group and user IDs rather than using user and group names and mapping them at both ends. (--numeric-ids) Use numeric group and user IDs 0 0 50 false PointingHandCursor This tells the receiving side to attempt super-user activities even if the receiving rsync wasn’t run by the super-user. These activities include: preserving users via the --owner option preserving all groups (not just the current user’s groups) via the --groups option and copying devices via the --devices option. (--super) Attempt super-user activities 0 0 50 false PointingHandCursor Try to backup open files in windows systems using vss (Only works on windows 2003 and upper) (--vss) Backup open files false 0 0 50 false PointingHandCursor Restore backed-up windows permissions which are located in the NTFS Security Descriptor Stream (--restore-nt-streams) Restore permissions Qt::Vertical 20 40 0 0 213 237 User defined 0 0 0 0 16777215 16777215 50 false Enter here an rsync option to add (eg "--delete-excluded", "-X") 0 0 110 0 16777215 16777215 50 false PointingHandCursor Add rsync option as entered in the next field add :/luckyPrefix/add.png:/luckyPrefix/add.png 8 options list 0 0 0 100 50 false PointingHandCursor Extra rsync options list 0 0 110 0 16777215 32 50 false PointingHandCursor Remove highlighted option from list remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png PointingHandCursor Edit highlighted inclusion edit :/luckyPrefix/rename.png:/luckyPrefix/rename.png PointingHandCursor Move highlighted inclusion up move up :/luckyPrefix/up.png:/luckyPrefix/up.png PointingHandCursor Move highlighted inclusion down move down :/luckyPrefix/down.png:/luckyPrefix/down.png Qt::Vertical 75 59 Also Execute Execute extra commands, before or after the task. 0 0 0 570 301 Before 1 0 0 0 0 16777215 16777215 50 false Enter here a command to be executed before the task and then press the "add" button to add it to the list below 50 false PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png 0 0 110 0 16777215 16777215 50 false PointingHandCursor Add command as entered in the field beside add :/luckyPrefix/add.png:/luckyPrefix/add.png 8 0 0 0 0 50 false PointingHandCursor Command list 0 0 110 0 16777215 32 50 false PointingHandCursor Remove highlighted command from list remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png PointingHandCursor Edit highlighted inclusion edit :/luckyPrefix/rename.png:/luckyPrefix/rename.png PointingHandCursor Move highlighted inclusion up move up :/luckyPrefix/up.png:/luckyPrefix/up.png PointingHandCursor Move highlighted inclusion down move down :/luckyPrefix/down.png:/luckyPrefix/down.png Qt::Vertical 70 89 Repeat any command that fails, x times Repeat on fail: Repeat any command that fails, x times false Execute the task even if it appears with a WARNING message Normally used when "Execute Before" commands can fix a warning (eg mount partitions) ATTENTION: check this if you really know what you're doing by-pass WARNING 0 0 213 239 After 1 0 0 0 0 16777215 16777215 50 false Enter here a command to be executed after the task and then press the "add" button to add it to the list below 50 false PointingHandCursor browse localy :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png 0 0 110 0 16777215 16777215 50 false PointingHandCursor Add command as entered in the field beside add :/luckyPrefix/add.png:/luckyPrefix/add.png 8 0 0 0 0 50 false PointingHandCursor Command list 0 0 110 0 16777215 32 50 false PointingHandCursor Remove highlighted command from list remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png PointingHandCursor Edit highlighted inclusion edit :/luckyPrefix/rename.png:/luckyPrefix/rename.png PointingHandCursor Move highlighted inclusion up move up :/luckyPrefix/up.png:/luckyPrefix/up.png PointingHandCursor Move highlighted inclusion down move down :/luckyPrefix/down.png:/luckyPrefix/down.png Qt::Vertical 70 97 Qt::Horizontal 328 20 Set the total number of backup snapshots to keep Snapshots to keep: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 60 16777215 PointingHandCursor Set the total number of backup snapshots to keep 1 500 PointingHandCursor Check this to clone source to destination Leave unchecked to create an extra directory inside destination Do NOT create extra directory 0 0 PointingHandCursor Advanced :/luckyPrefix/AdvancedSimple.png:/luckyPrefix/AdvancedSimple.png true Qt::Horizontal 0 26 0 0 50 false PointingHandCursor Shows the rsync command as it will be executed validate :/luckyPrefix/validate.png:/luckyPrefix/validate.png Qt::Horizontal QSizePolicy::Fixed 10 20 0 0 PointingHandCursor Okay :/luckyPrefix/okay.png 0 0 PointingHandCursor Cancel :/luckyPrefix/cancel.png Qt::Vertical QSizePolicy::Preferred 20 2 lineEdit_name comboBox_Type lineEdit_source toolButton_sourceBrowse lineEdit_destination toolButton_destinationBrowse tabWidget_advanced checkBox_excludeTemp checkBox_excludeBackup checkBox_excludeCache checkBox_excludeTrash checkBox_excludeMount checkBox_excludeSystem checkBox_excludeLostFound checkBox_excludeGVFS lineEdit_includeAdd toolButton_includeAddPattern listWidget_include pushButton_includeAdd pushButton_includeRemove radioButton_remoteDestination radioButton_remoteSource lineEdit_remoteUser lineEdit_remoteHost checkBox_remoteModule lineEdit_rsyncPassword toolButton_rsyncPassword checkBox_ssh lineEdit_sshPort lineEdit_sshPasswordStr toolButton_sshPassword checkBox_ownership checkBox_permissions checkBox_symlinks checkBox_devices checkBox_hardLinks checkBox_deleteAfter checkBox_recurse checkBox_update checkBox_cvs lineEdit_optionsAdd listWidget_options pushButton_optionsRemove lineEdit_excludeAdd listWidget_exclude pushButton_excludeAdd pushButton_excludeRemove pushButton_advanced pushButton_command pushButton_okay pushButton_cancel scrollArea groupBox_remote textEdit_Description toolButton_excludeAddPattern pushButton_editExclude pushButton_moveUpExclude pushButton_moveDownExclude checkBox_excludeFile lineEdit_excludeFile toolButton_excludeFile radioButton_includeOnly radioButton_includeNormal checkBox_includeFile lineEdit_includeFile toolButton_includeFile pushButton_editInclude pushButton_moveUpInclude pushButton_moveDownInclude checkBox_FATntfs pushButton_optionsAdd pushButton_editOptions pushButton_moveUpOptions pushButton_moveDownOptions lineEdit_executeBeforeAdd toolButton_executeBeforeBrowse pushButton_executeBeforeAdd listWidget_executeBefore pushButton_executeBeforeRemove pushButton_editExecuteBefore pushButton_moveUpExecuteBefore pushButton_moveDownExecuteBefore spinBox_repeatOnFail checkBox_byPassWarning lineEdit_executeAfterAdd toolButton_executeAfterBrowse pushButton_executeAfterAdd listWidget_executeAfter pushButton_executeAfterRemove pushButton_editExecuteAfter pushButton_moveUpExecuteAfter pushButton_moveDownExecuteAfter spinBox_snapshotsKeep checkBox_backupContents lineEdit_excludeAdd returnPressed() pushButton_excludeAdd animateClick() 58 191 211 193 lineEdit_includeAdd returnPressed() pushButton_includeAdd animateClick() 40 166 176 165 checkBox_ssh toggled(bool) label_sshPassword setEnabled(bool) 45 193 62 191 checkBox_remoteModule toggled(bool) label_rsyncPassword setEnabled(bool) 74 195 51 193 checkBox_remoteModule toggled(bool) lineEdit_rsyncPassword setEnabled(bool) 74 195 74 193 checkBox_ssh toggled(bool) label_sshPort setEnabled(bool) 45 193 62 193 checkBox_ssh toggled(bool) lineEdit_sshPort setEnabled(bool) 45 193 96 193 checkBox_ssh toggled(bool) toolButton_sshPassword setEnabled(bool) 45 193 96 191 checkBox_remoteModule toggled(bool) toolButton_rsyncPassword setEnabled(bool) 74 195 96 193 lineEdit_executeBeforeAdd returnPressed() pushButton_executeBeforeAdd animateClick() 94 203 137 204 lineEdit_executeAfterAdd returnPressed() pushButton_executeAfterAdd animateClick() 58 192 211 193 checkBox_excludeFile toggled(bool) lineEdit_excludeFile setEnabled(bool) 105 358 180 359 checkBox_excludeFile toggled(bool) toolButton_excludeFile setEnabled(bool) 105 358 210 360 checkBox_includeFile toggled(bool) toolButton_includeFile setEnabled(bool) 47 187 109 187 checkBox_includeFile toggled(bool) lineEdit_includeFile setEnabled(bool) 47 187 79 187 lineEdit_optionsAdd returnPressed() pushButton_optionsAdd animateClick() 86 190 211 191 checkBox_FATntfs toggled(bool) checkBox_permissions setDisabled(bool) 364 300 189 225 checkBox_FATntfs toggled(bool) checkBox_ownership setDisabled(bool) 369 300 194 200 checkBox_ssh toggled(bool) lineEdit_sshPassword setEnabled(bool) 70 338 341 367 checkBox_ssh toggled(bool) lineEdit_sshOptions setEnabled(bool) 70 338 357 396 checkBox_ssh toggled(bool) label_sshPassword_2 setEnabled(bool) 70 338 91 396 checkBox_ssh toggled(bool) label_sshPassword_3 setEnabled(bool) 57 334 359 334 checkBox_ssh toggled(bool) lineEdit_sshPasswordStr setEnabled(bool) 57 334 495 334 luckybackup-0.5.0/ui/emailDialog.ui0000666000175000017500000004572713165410113016576 0ustar luckybluckyb emailDialog Qt::NonModal 0 0 540 460 luckyBackup - email :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png :/luckyPrefix/email.png 0 0 10 75 true Email a report after profile execution Qt::AlignCenter true command: 120 100 Enter the command to run eg sendemail arguments: Enter arguments of the email command eg -f %f -t %t -u "%s" -m "%b" -a %l -s %v Use default :/luckyPrefix/undo.png:/luckyPrefix/undo.png Specify the conditions to send an email Conditions PointingHandCursor Only send when error(s) occurred during a run Error(s) occurred PointingHandCursor Only send when profile is scheduled to run Profile is scheduled PointingHandCursor Never send an email Never Arguments %f from: Enter the sender of the message Qt::Vertical %l logfile %c logfile.tar.gz %d date %i time %p profile name %e No of errors PointingHandCursor If unchecked "TLS auto" is used. Only available for sendemail Disable TLS Qt::Vertical 85 64 %t to: Enter the recipient of the message %s subject: Enter the subject of the message %v smtp server: Enter the smtp server used to send the message %b body: IBeamCursor Enter the body of the message Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextEditable|Qt::TextEditorInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse Qt::Vertical 83 61 Use default :/luckyPrefix/undo.png:/luckyPrefix/undo.png Use default :/luckyPrefix/undo.png:/luckyPrefix/undo.png Send an email right now to test the provided arguments Test :/luckyPrefix/mail-forward.png:/luckyPrefix/mail-forward.png Qt::Horizontal 88 23 Accept changes and close dialog Okay :/luckyPrefix/okay.png:/luckyPrefix/okay.png Qt::Horizontal QSizePolicy::Fixed 13 23 Close dialog Cancel :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png lineEdit_command toolButton_default_command checkBox_conditionNever checkBox_conditionError checkBox_conditionSchedule lineEdit_arg_from lineEdit_arg_to lineEdit_arg_subject toolButton_default_subject lineEdit_arg_smtp textBrowser_arg_body toolButton_default_body pushButton_test pushButton_ok pushButton_cancel checkBox_conditionNever toggled(bool) groupBox_arguments setDisabled(bool) 87 115 240 262 checkBox_conditionNever toggled(bool) checkBox_conditionError setDisabled(bool) 87 115 240 115 checkBox_conditionNever toggled(bool) checkBox_conditionSchedule setDisabled(bool) 87 115 394 115 checkBox_conditionNever toggled(bool) label_command setDisabled(bool) 87 115 32 55 checkBox_conditionNever toggled(bool) lineEdit_command setDisabled(bool) 87 115 204 71 checkBox_conditionNever toggled(bool) toolButton_default_command setDisabled(bool) 87 115 529 71 checkBox_conditionNever toggled(bool) pushButton_test setDisabled(bool) 87 115 54 449 checkBox_conditionNever toggled(bool) label_arguments setDisabled(bool) 101 114 247 60 checkBox_conditionNever toggled(bool) lineEdit_arguments setDisabled(bool) 101 114 395 60 luckybackup-0.5.0/ui/logDialog.ui0000666000175000017500000000635311435766717016306 0ustar luckybluckyb logDialog 0 0 580 480 luckyBackup - tasks execution progress :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Greek Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> true false previous error :/luckyPrefix/left.png:/luckyPrefix/left.png false next error :/luckyPrefix/right.png:/luckyPrefix/right.png Qt::Horizontal 231 20 false close :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png luckybackup-0.5.0/ui/winDialog.ui0000666000175000017500000004362212075236703016306 0ustar luckybluckyb winDialog Qt::NonModal 0 0 518 354 luckyBackup :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png 0 0 declaration of paths true Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true :/luckyPrefix/validate.png rsync: 0 0 0 0 Enter the full path of the rsync command PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png ssh: 0 0 0 0 Enter the full path of the ssh command PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png cygpath: 0 0 0 0 Enter the full path of the cygpath command PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png dosdev: 0 0 0 0 Enter the full path of the dosdev command PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png main dir: 0 0 0 0 Enter the full path of the luckybackup directory PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png vshadow dir: 0 0 0 0 Enter the full path of the vshadow directory PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png temp dir: 0 0 0 0 Enter the full path of the temporary directory PointingHandCursor browse locally :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Use default value :/luckyPrefix/undo.png:/luckyPrefix/undo.png Qt::Horizontal 88 23 Okay :/luckyPrefix/okay.png:/luckyPrefix/okay.png Qt::Horizontal QSizePolicy::Fixed 13 23 Cancel :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png lineEdit_rsyncPath toolButton_rsync toolButton_defaultRsync lineEdit_sshPath toolButton_ssh toolButton_defaultSsh pushButton_ok pushButton_cancel lineEdit_rsyncPath returnPressed() pushButton_ok animateClick() 92 57 190 140 lineEdit_sshPath returnPressed() pushButton_ok animateClick() 45 99 111 130 luckybackup-0.5.0/ui/about.ui0000666000175000017500000002623411310763406015477 0ustar luckybluckyb aboutDialog 0 0 560 500 luckyBackup - about :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png 0 0 120 115 background-image: url(:/luckyPrefix/luckybackup_96.png); QFrame::StyledPanel QFrame::Raised Qt::Vertical QSizePolicy::Fixed 20 25 0 0 14 75 true Qt::AlignCenter Qt::Horizontal 25 20 Qt::Vertical QSizePolicy::Fixed 20 16 Qt::Horizontal QSizePolicy::Fixed 40 20 Qt::Horizontal 394 20 close :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png 0 Qt::ElideNone &About QFrame::StyledPanel QFrame::Sunken <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> A&uthor QFrame::StyledPanel QFrame::Sunken <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Thanks to QFrame::StyledPanel QFrame::Sunken <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &License Agreement QFrame::StyledPanel QFrame::Sunken <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> &Support QFrame::StyledPanel QFrame::Sunken <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'GRArial'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans'; font-size:9pt;"></p></body></html> luckybackup-0.5.0/ui/patternEditor.ui0000666000175000017500000007063011347364511017214 0ustar luckybluckyb patternEditor Qt::NonModal 0 0 515 401 0 0 pattern editor :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png 0 0 0 29 50 false true 50 false PointingHandCursor browse localy for a file :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png 50 false PointingHandCursor browse localy for a directory path :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png PointingHandCursor Check this to use the directory above as an absolute path if unchecked, the pattern will match any file/directory that meets the "name" criteria Qt::LeftToRight use absolute path Qt::Horizontal 40 20 Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" Go deeper in path by : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 45 16777215 Use this to refer to deeper sub-directories eg The directory "/media/music" includes 3 sub-directories: 1.Rock 2.Jazz 3.Soundtracks and you would like to refer to all the contents of these 3, define the following: * Set of directories * Directory contents * path:/media/music/ * Go deeper in path by "1" PointingHandCursor Go deeper in path by any level any Reset the pattern editor fields to the default values reset :/luckyPrefix/abort.png:/luckyPrefix/abort.png Qt::Horizontal 218 17 0 0 PointingHandCursor Okay :/luckyPrefix/okay.png 0 0 PointingHandCursor Cancel :/luckyPrefix/cancel.png 50 false Define here, what would you like the pattern to refer to The pattern refers to a: PointingHandCursor Use this if the pattern refers to a specific file eg "/media/music/album/song.mp3" Specific file PointingHandCursor Use this if the pattern refers to a specific directory eg "/media/music/Album/" Specific directory true PointingHandCursor Use this if the pattern refers to a set of files that have something in common eg all the files with a ".txt" extension Set of files PointingHandCursor Use this if the pattern refers to a set of directories that have something in common eg all the directories that are named as "temp" Set of directories Qt::Horizontal 40 20 Qt::Horizontal 40 20 Use this if the pattern refers to the contents of a directory (or a set of directories), not the directory itself eg the contents of the directory "/media/music/Album/" Directory contents Define here the name criteria for the files/directories to be matched name starts with : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Enter here the starting characters of the name of the files/directories that the pattern refers to ends with : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Enter here the ending characters of the name of the files/directories that the pattern refers to eg to refer to all ".txt" files, enter .txt Enter here the name of the files/directories that the pattern refers to is exactly : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Enter here the characters contained in any position of the name of the files/directories that the pattern refers to contains : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 75 true final pattern false 75 true The actual pattern is displayed here false true radioButton_fileSpecific radioButton_directorySpecific radioButton_fileSet radioButton_directorySet checkBox_directoryContents lineEdit_browse toolButton_browseFile toolButton_browseDir checkBox_pathAbsolute spinBox_pathDeeper checkBox_pathAny lineEdit_nameIsExactly lineEdit_nameStartsWith lineEdit_nameContains lineEdit_nameEndsWith lineEdit_patternFinal pushButton_reset pushButton_okay pushButton_cancel radioButton_fileSpecific toggled(bool) groupBox_name setDisabled(bool) 72 67 475 164 radioButton_directorySpecific toggled(bool) groupBox_name setDisabled(bool) 271 67 475 164 radioButton_fileSet toggled(bool) groupBox_name setEnabled(bool) 72 103 475 164 radioButton_directorySet toggled(bool) groupBox_name setEnabled(bool) 271 103 475 164 radioButton_directorySpecific toggled(bool) label_pathDeeper setDisabled(bool) 271 67 314 232 radioButton_directorySpecific toggled(bool) spinBox_pathDeeper setDisabled(bool) 271 67 427 232 radioButton_directorySet toggled(bool) label_pathDeeper setEnabled(bool) 271 103 314 232 radioButton_directorySet toggled(bool) spinBox_pathDeeper setEnabled(bool) 271 103 427 232 radioButton_fileSet toggled(bool) label_pathDeeper setEnabled(bool) 72 103 314 232 radioButton_fileSet toggled(bool) spinBox_pathDeeper setEnabled(bool) 72 103 427 232 radioButton_fileSpecific toggled(bool) label_pathDeeper setDisabled(bool) 72 67 314 232 radioButton_fileSpecific toggled(bool) spinBox_pathDeeper setDisabled(bool) 72 67 427 232 radioButton_fileSpecific toggled(bool) toolButton_browseDir setHidden(bool) 72 67 479 196 radioButton_fileSpecific toggled(bool) toolButton_browseFile setVisible(bool) 72 67 449 196 radioButton_directorySpecific toggled(bool) toolButton_browseDir setVisible(bool) 271 67 479 196 radioButton_directorySpecific toggled(bool) toolButton_browseFile setHidden(bool) 271 67 449 196 radioButton_directorySet toggled(bool) toolButton_browseDir setVisible(bool) 271 103 479 196 radioButton_directorySet toggled(bool) toolButton_browseFile setHidden(bool) 271 103 449 196 radioButton_fileSet toggled(bool) toolButton_browseDir setVisible(bool) 72 103 479 196 radioButton_fileSet toggled(bool) toolButton_browseFile setHidden(bool) 72 103 449 196 radioButton_fileSet toggled(bool) checkBox_directoryContents setDisabled(bool) 72 103 271 141 radioButton_fileSpecific toggled(bool) checkBox_directoryContents setDisabled(bool) 72 67 271 141 radioButton_directorySet toggled(bool) checkBox_directoryContents setEnabled(bool) 271 103 271 141 radioButton_directorySpecific toggled(bool) checkBox_directoryContents setEnabled(bool) 271 67 271 141 radioButton_directorySet toggled(bool) checkBox_pathAbsolute setVisible(bool) 267 102 120 230 radioButton_directorySpecific toggled(bool) checkBox_pathAbsolute setHidden(bool) 271 67 120 230 radioButton_fileSet toggled(bool) checkBox_pathAbsolute setVisible(bool) 55 102 120 230 radioButton_fileSpecific toggled(bool) checkBox_pathAbsolute setHidden(bool) 68 67 120 230 radioButton_directorySet toggled(bool) checkBox_pathAny setEnabled(bool) 271 103 478 230 radioButton_directorySpecific toggled(bool) checkBox_pathAny setDisabled(bool) 271 67 478 230 radioButton_fileSet toggled(bool) checkBox_pathAny setEnabled(bool) 72 103 478 230 radioButton_fileSpecific toggled(bool) checkBox_pathAny setDisabled(bool) 72 67 478 230 luckybackup-0.5.0/ui/textDialog.ui0000666000175000017500000001143511557465752016506 0ustar luckybluckyb textDialog Qt::NonModal 0 0 300 199 luckyBackup :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png :/luckyPrefix/warning.png 0 0 true Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true 0 0 0 0 Qt::Horizontal 88 23 Okay :/luckyPrefix/okay.png:/luckyPrefix/okay.png Qt::Horizontal QSizePolicy::Fixed 13 23 Cancel :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png IBeamCursor Qt::StrongFocus lineEdit_userInput textEdit_userInput checkBox_select pushButton_ok pushButton_cancel lineEdit_userInput returnPressed() pushButton_ok animateClick() 92 57 127 176 luckybackup-0.5.0/ui/manageWizard.ui0000666000175000017500000002267511404361206016777 0ustar luckybluckyb manageWizard 0 0 818 480 luckyBackup - manage backup :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png false 0 0 64 64 64 64 64 64 false false 0 0 Qt::Vertical 20 40 Qt::Horizontal 0 0 Check this, to clone the backup snapshot to the restore directory. Delete existing data that do not exist at the backup :/luckyPrefix/remove.png:/luckyPrefix/remove.png Qt::Horizontal 0 0 true PointingHandCursor Browse locally for a new restore path change :/luckyPrefix/fileopen.png:/luckyPrefix/fileopen.png <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'FreeSans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Sans';"></p></body></html> true Jump to previous error previous error :/luckyPrefix/left.png:/luckyPrefix/left.png Jump to next error next error :/luckyPrefix/right.png:/luckyPrefix/right.png Qt::Horizontal 231 20 This will perform a <b>simulation run</b> that doesn't make any changes (and produces mostly the same output as a real run) simulation :/luckyPrefix/DryRun.png:/luckyPrefix/DryRun.png start :/luckyPrefix/okay.png:/luckyPrefix/okay.png ABORT :/luckyPrefix/abort.png:/luckyPrefix/abort.png cancel :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png luckybackup-0.5.0/ui/scheduleDialog.ui0000666000175000017500000007770411723615562017320 0ustar luckybluckyb scheduleDialog Qt::NonModal 0 0 580 478 luckyBackup - schedule :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png 0 0 20 30 border-image: url(:/luckyPrefix/cron.png); QFrame::StyledPanel 0 0 10 75 true <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:600; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:12pt;"><span style=" font-size:9pt; color:#aa0000;">Profile execution scheduling</span></p></body></html> Qt::AlignCenter QFrame::StyledPanel QFrame::Sunken 1 true 0 0 PointingHandCursor Add a new profile schedule add :/luckyPrefix/add.png:/luckyPrefix/add.png true PointingHandCursor Modify selected profile schedule modify :/luckyPrefix/configure.png:/luckyPrefix/configure.png PointingHandCursor Remove selected profile schedule remove :/luckyPrefix/remove.png:/luckyPrefix/remove.png Qt::Vertical 20 98 true 75 true Profile schedule details 0 0 75 true Profile : 125 0 75 true PointingHandCursor Skip tasks that apear with a 'CRITICAL' warning message after the directories check skip critical true PointingHandCursor Check this if your machine does not support a graphical environment (eg server) Console Mode 0 0 time (hour:min) : Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter 0 0 50 false PointingHandCursor set this value to -1 for the schedule to occur every hour -1 23 0 0 : Qt::AlignCenter 0 0 50 false PointingHandCursor 59 Qt::Horizontal 40 20 PointingHandCursor Run once, at startup @ reboot Qt::Vertical false Qt::RightToLeft :delay false PointingHandCursor Delay luckybackup execution at startup false min day of week : Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter 50 false PointingHandCursor Any Sunday Monday Tuesday Wednesday Thursday Friday Saturday month : Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter 50 false PointingHandCursor Any January February March April May June July August September October November December day of month : Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter 50 false PointingHandCursor Any 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Qt::Horizontal 40 20 0 0 PointingHandCursor okay :/luckyPrefix/okay.png:/luckyPrefix/okay.png 110 0 PointingHandCursor Cancel :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png 150 0 PointingHandCursor schedule the execution of profiles as declared in the list above cronIT !! :/luckyPrefix/cron.png:/luckyPrefix/cron.png 110 0 PointingHandCursor close this dialog close :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png 0 0 PointingHandCursor Display the current crontab view current crontab :/luckyPrefix/cronView.png:/luckyPrefix/cronView.png Qt::Horizontal 450 20 listWidget_schedule pushButton_add pushButton_modify pushButton_remove comboBox_profile checkBox_skipCritical spinBox_hour spinBox_minute comboBox_DayOfWeek comboBox_month comboBox_dayOfMonth pushButton_modifyOkay pushButton_modifyCancel pushButton_schedule pushButton_cancel checkBox_reboot toggled(bool) spinBox_hour setDisabled(bool) 497 290 211 290 checkBox_reboot toggled(bool) spinBox_minute setDisabled(bool) 497 290 358 290 checkBox_reboot toggled(bool) label_executeEveryDayOfMonth setDisabled(bool) 497 290 76 387 checkBox_reboot toggled(bool) label_executeEveryDayOfWeek setDisabled(bool) 497 290 76 323 checkBox_reboot toggled(bool) label_executeEveryHour setDisabled(bool) 497 290 76 290 checkBox_reboot toggled(bool) label_executeEveryMinute setDisabled(bool) 497 290 284 290 checkBox_reboot toggled(bool) label_executeEveryMonth setDisabled(bool) 497 290 76 355 checkBox_reboot toggled(bool) comboBox_DayOfWeek setDisabled(bool) 497 290 354 323 checkBox_reboot toggled(bool) comboBox_dayOfMonth setDisabled(bool) 497 290 354 387 checkBox_reboot toggled(bool) comboBox_month setDisabled(bool) 497 290 354 355 checkBox_reboot toggled(bool) label_delayReboot setEnabled(bool) 324 306 401 306 checkBox_reboot toggled(bool) label_minutes setEnabled(bool) 324 306 533 306 checkBox_reboot toggled(bool) spinBox_delayReboot setEnabled(bool) 324 306 467 306 luckybackup-0.5.0/ui/helpBrowser.ui0000666000175000017500000000266611560271356016671 0ustar luckybluckyb helpBrowser 0 0 980 700 luckyBackup - help :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png FreeSans manual/ true Okay :/luckyPrefix/okay.png:/luckyPrefix/okay.png luckybackup-0.5.0/ui/manage.ui0000666000175000017500000002277411437503055015624 0ustar luckybluckyb manageDialog Qt::NonModal 0 0 840 500 luckyBackup - manage backup :/luckyPrefix/luckybackup_96.png:/luckyPrefix/luckybackup_96.png Qt::Horizontal QSizePolicy::Fixed 30 20 Qt::Horizontal 40 20 150 0 250 16777215 -1 destination: true true 100 true source: true true true true Qt::Horizontal 384 26 PointingHandCursor Close this window Close :/luckyPrefix/cancel.png:/luckyPrefix/cancel.png Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::Horizontal true 250 16777215 PointingHandCursor Delete the selected snapshot and its logfile Delete :/luckyPrefix/remove.png:/luckyPrefix/remove.png true 250 16777215 PointingHandCursor Restore the selected snapshot Restore :/luckyPrefix/fileimport.png:/luckyPrefix/fileimport.png 250 16777215 PointingHandCursor View the logfile of the selected snapshot view log :/luckyPrefix/log.png:/luckyPrefix/log.png 250 16777215 PointingHandCursor hide source PointingHandCursor Calculate the differences between the source and the selected snapshot Calculate differences :/luckyPrefix/duplicate_profile.png:/luckyPrefix/duplicate_profile.png luckybackup-0.5.0/resources/0000777000175000017500000000000012720251205015407 5ustar luckybluckybluckybackup-0.5.0/resources/start.png0000666000175000017500000001272412716116424017270 0ustar luckybluckybPNG  IHDR #ꦷgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>IDAThgpgoTN%2HDDc6cdc{0ɘd&3DA$!$$tڝڪ}<]};?"0 {MaFK^0 >0 wOar8iʫ:SR)FGX+&Ws֡%eu#Uf﹆ee9jJUTJ}F*:I3 iɡM#^"#´Ts#9&K;xyyK݁#-~/}wmbA^\;b[6?Mٰ^+s1V.YF0գѻ1PDV|Jw3XN) |Mהm\ek'oq=}(N[bZ |.aWΩEu'GF}^-Ro rr{_+Y}KsN͞1<-˜VGs_|KDy~jCRiL\n%[? y1Z,zTOV,MEh[ 9|៧'&=wo7 $jx^-fdvbsȊQ x<%`zj6ӹ͙Q͙Œj<~njm/}{j&H')߀x.oIH"OR;>BXR "$ix(tA:+=e%us  =XLP$Z㦞;ԯjN31 c#Owj%J  cǠsJ]{nh-V(hh 'hclcG`e _F1\@\&AX@F%638! Ϩ_ͫ;s'.X2t |oChlآP:˹t+xG{WzO/p+Ww]y5ƍA)P*#A/b?Ths#G3kY] d*3P*/p͢pb ;&1Foqd-mVd܄^2^[} v8-YBEjht_Rkј105;('OğD+AHRhtlYV πobS#U Sor1hG>QQ襭 uM4!2I⺸/sZੑ2d<2GݫG ,EGRC8p칄ܓR%K M~& rQFl/ mNQ?Z~ڗzKv#Vb@o>m:FNroh`I12jp+~n=-oS6(]ŗ yEWɝ!~]E7(鈥#ئ)],`eu3q36ޝ;u];ߞaVOO-4T\LS@|+|8M刵`rgoX,ug0 !!@zJTr_@[y4/h',6$KuۛvF/u0pHy+%O_T LY(w2F+| {-[ŧMSoNk=eʪe;Nߴ?m,|Yds0ZS(NIkF:mU\,lLȊl-mPo}C@PdtRJuLo&觴m` [{@l ;3bi%"rr[G}z .x8SX|g@}qXL1Yn~J 6 ,mxOZf1ifZ^dM%wU潞OtZ41w?1>R=BL􃠦ꊎiTV n2gZlA<DcVC; ۴RbGp}~~j(^Dmi ۯXDGdz_2,?ʯ) QQKË/S:M\%8}$)<ĻgKg4Y$6bhݴU>1H'=_X+39ɮ{3Aq ڥ" [҃Aȭ|7Ir0o 7@ߥ&蕥`PgsBzled)+?_rr'׽{wKI}>g鸞vu( ( 3F-Em:8PZ@R4(]fT!^tkRZnIKsNLO+9vTdWt@XZPz`}g|Ǜǁm[n  @|&]BEP6s['V@ᬒϲהސ{mv~ڹ~V&][wwE9).=)D8ăy)j2YuK sqAޘў%!# ߲-GͷY(o}򉤃5Pn&j)Z: JGc %8gGaAXrUgPttAZMG$=)xDZ*ZjԟQy_0iy EtQR6})W6 lM9R3uI̺,%"lP-^a1ޫҵsԎq;8​vT,^^^땝-prI=qޕS-~ 78;{{ @>E'K0{‹:)W\!C̥T5MV" K`~*t,fpBQ[ .ץHaMZ*kwl\A:KFg MS}<|7nʅe_u::lxpqg_R鳁Lejzv923dkes.;̯]|\@a,P kYO;匰C vy -@R9?);@I,A>`* muA>Oe!40"F9GԒ:e%MPy3Tаq`8ּ8^ t'[sEfee]KⒸ|ʧ| Cq(m#ɑ#IY^? 0ƷA݁Nsp8Ȼܢ D,:QZ0r`rSc0"rM`!}<sg yRX^H%'7Py6XQR>XHq"Pj 7ab(Xw^Q6>wێm;؊tqkwOqEb9Yjf!m޲E[n{~AvቼNքƵ/G_FB y[jqP QF$0t3A튱xH3X j}l1cOKS/m `r mjP/iBuX\ |5[W3K-GN+ɗ2g8ϩ7)h*̌A_kݥcJu0S#LAX# U:JѠ22Pb4L)tyb0({P|'`olBаʗVotֽN\g<ʳҪkdlْW\Y~gZw"rzCz齧'E6FjH "Ci /?S7P<1wSpAzJoOZ +}~7M)!~?Kiز|F+j3 t|@V>|L*&ԓljtS~9 .r2 LUL w5W|n{!Μ9Kn>-ǖ`q_w궺Vwrzn^Ldbj!gVsS̈́b ?xQ$`AAgv?}|F$k^ֲhXQO<Y*eOZ+Tyj6nHrcSL禲:KKWX*knXqGTyhR㪫۩lb&(snҟ Ko6[ED_>reV%vEiS tqM|+"ٟߍKU."DD~\DD "Uܙ">qp|~{<Ա\{Nw_+ N5=#mMUH`™o/м){bÙ6ҫ(Sq諝w>Ъ`N[-LY>}c$@Jhw)'r 6Z $kd08o_Yް~*.bpUk}?׵$엁^7i=iS3jӫJ/xz@ дߒ |5pGOj=usU]+Q:SOUj@uR=x>4Oc3\ e%`mRϻ}9Nxyg])zu]6Ӳ@JfFʋ߽۾_CzR)^5g]+w+*) Ep ײlS AHS Dās$JLR/c+ yH,ڞ;*?isv[~rTR64t#he[\svʲͳ(yU } g滠UTh?<6>$$hG@H(ugM8#sgw%g>H{i(L%V@$4osfTTcٞ/= nג`Rai>ՙS߯ә]GWU?aӠ9fH +yV=O|ivk+ ?ռ,乗-8 ޷e[YLTc8 Ώs9wt#x]z8M1Ci̮y11rM)pI> .kqCM"Z_ԷsF__3Ӯf9~y`nFUW{M/[Z Hg['5K@'-@YeA6uwgɶMy 8}yGb O>PRnj٤6L{Ib5Q/EzӎxF KFwiA R إ7K&T!D^ړ}́׺W7'@:;tcX$i"ɠZs@;s qzqOpx5o3MP%`[W<5eMm*.**bP!@#eU $j .j @[]P;@%E>(Qj"f, `h}#$Lz3p,C~ b7~3_CA3Q K_=nKrSy_Ane!hͬǽ5fCqTdK.ϙ 9],[wAF0z;SZrRZ5PE|4оsPZ>@=QрBT%zgM+9_'CXWvi:eS-.5='I ]D@}݃Mf I2R]4OXUq"@.I89% ]s.=x(Q  z5W1GGx):>yibon|N83Yv0:Cxf>i~m#%=xIuWV*ZtRcfZ-/OzjaqsonA3y4Kp74>8| *sri<[ rSn!VGlRd p~PBPEw@dwW!aZR|tܵ^V> Q׏Or#a$y]Ts9Gn;XUW? ;3.yChTePަV0ͶCfS9,2$H4qJJPW΋g[Jތ&8g6eOy-**uN I o=blNͷO`ucyF9*/oPiGcg>T|< 8{;5L-h4Z-TW,Yqxpby`>_1~f?T$䰔7pJ@>U:pd_ϭ3oKטZkv`B- kń6>|G*XWVX՞j]Z6<`2(85h1DVpP~eNI_UK ie ;dʩxɃ?e@Vr*䎚ܠ>ӎi@ Q70tNK y] ԷgsAQ܁w'A:ځϣ9Mip-ܴߌ(_ *TL/>RkW $>mmC7ra㑜m rd^ p6t7<l)&6: ~@mP @.d^M/!P˛Ƒ^?޲/A_Q@7Kr~WYQfF}\~\؋Mn4?jRg>/~3*%bFg+,SђL"M !3U5Z#B`s,)eA9`Ъ|nRF5à(<Ξl綃gh$hjiX)hO74ڪŦ._QQ%w-o)x7 'ԻPYį^a9I) /4d;cfZ> H ѰxA@ ҃~2!=%Hł@rϛorZ> U:*N.[6nDp@ψy-Ǒ9*ﵯn?\\I (ڕ礼 56nްʴIX-<7od箑j`V2 p$ys+ ERL 4U>@m>c[ V﷾e,,fE+gu%뫲6Ӫ yD41o I!gܞVog_mSW@uҽ |l/0O>0KuWAn|-tu+~-Q:n doQ]F8~r#3G; u>2R/ g<5vɦOe|!Tk?0>v.S5Tia}5C|5P>ZLl~3'ZSҌ7bFO|x{-뮪:%c׳uo ;]"gK{'Wm5Kaj>߲T;b;nN) {^3wC Xo~;23$tEXtCreation Time08/24/061%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00%tEXtSoftwareMacromedia Fireworks MX 2004vIENDB`luckybackup-0.5.0/resources/rename.png0000666000175000017500000000421112716116424017372 0ustar luckybluckybPNG  IHDR n<gAMA a cHRMz&u0`:pQ<bKGD#2 pHYsHHFk>IDATXitU}{M. (L" JJB! bG08b !!%!@|?Z??]*~e]E9(s%-og݇U!@蒾NXvp峌K P=~>g8G03`5QeV7'l}fgdX*6su}WAу@rֿ7tJk= j]&ΰK]&ʇ"ɬ .3 ,%v}2v8D@1AlM0Q,33@^j|)d>FQ*pG-3(@+ h |ukdu`> fEÃ#0&-+,0At#``9M`mX @\XXgn5_Uc'wQ 8%sa0~0x_һ> >4#|2! A/F sm! $0xtgmHէ=̷4}ֽ? k*A7M/  k27Hm |jO%W`Bղ03UXoo(t;pu߇ЧP4տ܃nP& ǖJ=ۺ K X\LB7'lBOnݒjwmB\aGCbU}|VTYn]3h[ݭ}p|{rh|c c=AoK'l΂`_w!0_PĞ5@G,&Cp;Am;[ZJCB} s%B6*5P_4 T録êVmAJYBfk Ꝇ_0P&l q)R_ K}NBygȅҙ8Hk4g.OpL ̨wK~U|Q!OOd#"sjJVx8ߠd;;F@ `VOt5 * gs֕ݶtkUW≞ buoܢzUmQem9е"_=I0C|jr5Hސ6rtr^ٌS]Z-3'1HYA%z0js| <?zD9:KUTu4e33c5K ١uGI>KH@U8o\i&>۶k CUkwygg= nbߐ$Րmb)_IP:?bZ۾i_8[Y˴o|0.^Һ}k}7՟9 Q2˯1}Su>Yzg kYۓ;M.}'(he$08ݹI9+V^163ᶽP!DVSZ jүd>q1m;MI9^ėVXk#6ܯ>[: p=vnN)5 XS0m(W߾kTݺ5|L{uknq~NJSGĭdM֎GDDib^蛔f0+̣zXo /oԜ:ZzmnFvc1H3 ?ˑ^ϫ| 䬈vE)*Л}T F.KMu5 a9?9ԫ@ VU`aנ #yIlSotWZP$Rĥ% (R( 6r9ǙǪ lcMH`R4_AduKҍun{HՈrC,I $BDE%Ճ(^5k=/OQAe<͔V'UKV&ߣZNbi%B*5)i%FEtD] =l@,s+~?8$iĬob 6vCoRyi@T$i hMP<ÿo} j<0ֆI^G>1֢ӻ|zj,KXqe I"݄{|qN??p:yڎF9gE:<o.#;Q G3V(EFj:ݔy>/f/Bɼ"ˊ`>U ivbitJ6i?;k4wbrpf(; [Gk,!E<]8p||x((S* /!#L5bg?? YF*Wvx֜ I٤ޕzHx-wyhQdK)U/_LY Rħ"3{Veəg8H+4=-rpodgKJ@|Rg_"axܙ',/vz.u}d!^f5 GѼ2#"E!ԭ!~)/Jb|9]{iC$B}t6~8HRc.3VbHkwv.mxl8,<3u&| ʣjj}E|yFo7i]Q} )r旬j-"~ %*'7"1FGqVGJB <1uywxA/$pD?B)+ _>Pj>Ox8t7#D|\񑬚(?+h]L">#6fXjtEXtCreation Time12/09/04?}D%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00 tEXtSoftwareMacromedia Fireworks MX*$IENDB`luckybackup-0.5.0/resources/cron.png0000666000175000017500000000467512716116424017102 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>IDATXÝ[l[w?ۉƉkǹti6M[e0< xBBC14Cy@'@HVcLbB+إl5ni%qı}|_xvm~_Gs?ܧcZ` $4p8 L!js(McLZJ,ZbOo !1eǶccc?v?ssA6hHR [Cv~pH$R^ !'cR=q8޿/ioo]) *V5kSO}DÉ !<X,v7M2$DRڬL8v&Fqlr… c~d29 <-x31OK?axr\g~g·plp>0@kM&C<#r 6oN"x-M~{Ƙ/ǿObKL}ti׮FJtu]hrW._fr&'&H&[Iw9~(S3yrܶX$t#Psj}ZӧNS)hnnaEr%u G+Qsj^MTttd<nlYcYVbldh$rjxwXʫ?2i()JxG$alt˲YJ]v)eY~ Ac0b8Zkz+Z0pifJoհR ydYMM$fgwǗyX$N3.A smANFcttӺb-7ZJ]14h'4E|>'"Q.&u4+| % ,,em#Pw`AH7nHPT0`U-~?`P(ĬYǟ^|BJ!qkH^!X,.mVs0LwVe2%%H$mKo+Eնٲm+ؿ%Bԅ/gH[cU&c;jziٶ}Z98 hK0 X*X,F6啿q>|c~v=>W~pd˲"gnϮگH)kXGW.GŲPJ-yehso-cR2?l6ի8RJ%}e1e6oF)EPXypVoN3\}kpG))O=v+Lm۱CBaׯdbdZ[ NiFY-di:;;_Lbh\=`Y3{zwc۶n[m_=_/.,k876F,#H Bhql5j˲#< \.cjzǎS+׮2~n|\*7c̦MŸ \.S*xKR! 2"ӃԚ˗.scFij׏sd߅&~y c ` ؒJNA0BDc1S\,rU3 sc#=;rZm(rf t !ҹl皡h4ܦb_,R)U󼹊e]GOJ)*~nAL%`0c<)k]-+ E`(5BV 6`@{Fk Aןv #e "ԇ#^%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/left.png0000666000175000017500000000300712716116424017057 0ustar luckybluckybPNG  IHDR DgAMA|Q cHRMz%u0`:o_FPLTEfffRRRNNNMMMMMM???@@@MMMhhhNNN;;;OOOccc???<<<***vwwsstJJJIIIIIIjjjLLL ///zz{LLL000:::єדݙחȗӓяɎڑò筰}}}붿___êq-|tRNS=q @8AN% V( X qW*BkZ-HjQ9[_P0/>nSo*ܫd= eO[Ó㒼vtb:7\rp,@I=bKGDH pHYs  tIME (NIDAT8c` 066\ l,\Q(M*/ X#$,"ʈFdDbK74H e[䀂Hl$y6.Ef[.%U5u 8(ۧ?ALFGWw" Sd%})SŌMӧBϘofn1k՜P5D# ͼ@=v ;,ZeC0299/Yj̵l=@leˡ =Vg XnA u0!6,u[$X-0+tcYsW\| ]pG&F'ٛ tؾ)ilk7l348|D,,+ ʶFPEcOA٦HA TT3.4U" @eg#G7PEsэ`#'7ۼK! f@UQrlTeD c3%{(-$VU3Y&yxH%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/window_restore.png0000666000175000017500000000310712716116424021200 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYs  IIDATXWM]]gs}yI-)iubG"NZ:Xj)DJ[ %ԟ"h( v 8-H2qV 9{{ZdߓI6\}g^Uґn$H($9&AIhI`Gze$ I &n_z?7Oy!:~XDE%Q50 )(*1ƽ|o_mṛoG?̔$LILIdbL;qJIHR'tH:.2"@Ox?[8za(L2MK!ʒA ۲ i;4 D4a:[.ԉQՑ&iQ^JR?h[2@" 2(2$#jn `#nd03=xr2$2,t&Lж/$-_2M]}O ՕEm$%5:qkk /W6~Gm8lgS{k-$PJmn1t %?{KZ qmvm~q Vq՚m.%zL6!6W幞T`9ruyc'6~䋼uq^lG.8hy׾pdN>jρ@n5xͺ(M~cIxL&ReEv *'ʺ*VG` \;15 xNk)י2>B@k:Ge*B#xrEXe#TvS XydgBq}'[bf+PH+*-v׋bE $M?~뢼v!o& Pn7'ҫ Ÿn*5+2ӇNo_no)ꃄډ&eomvxItRDSŁἋH)rN//}͸ bK׍*Ʒ?M@> W^lǝH")JenfI()ZLkjP;nǔJ!#^h "Yx9A%%A1j*ۧ4 #2~ulь}b>lLWcO/a2%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/book.png0000666000175000017500000001225612716116424017065 0ustar luckybluckybPNG  IHDR #ꦷgAMA a cHRMz&u0`:pQ<bKGDC pHYs oyIDATh͙itUE:c2C ̣`6^ZT% "( tǡl "ڊLSNr ޺roZ{~O[.Q+U#mf6lvG>Jz4"mXù==zt?"Rb~JxAwgk{K_otrRJ`.o۟.gk{Nu~]OD=<ↇ"%:5:3S ~Z[u&w bV*WMXIěO]il75 l׋69^OŎ6)jIU#ڋ[S=(٭c]J)5g\RCZ._1bfj]x,X~&h{C#WǤ$45,c9; &NnpL&'>?6Mm NBTs蛊-/S-w,c7oӇА|B7`5x h"Թ#vW))ŝ&GwߑS g@¸M;wooo+UU"ޗ\ߺօWb<[~UW0 d^T.o(N>e")! kB"ڦ F<[ްAc:|:ns&sOn@I9%T)))ooo,RUᲾ92/0 jTŲVLw6ɴN^Ƣ>,# 0TiU5!UQ?k_Y_5Cw'`{W///x X+.!0&T* x @8 lP7 uP[BpMtp8;:Ƙ⵲* LCMzT@R-YJ/W%D)>ROrd)e2*7wmKlB[ygd+5&  $JZɗgi18Tڴqerv6SuN-~{h]JWAI,T/([Nʁ\!x1"5zT,j zdDxst !A f9%O"Yo0nprF>N|~ꝭK61kS2&dߌB!Mwt+- 4ɖ^"^ 2Q2)3AI =_% l, $ @FHl#`7oH959$&gLi@ZŶ6gճY^y5OHJ.OէS0~.A͘O+G ?[n LHJd f\4cAϐb2Nd,JZZz"򁬔`;{{߄}nl{ӏ>3cm`2O~   e ZCƶƶV!zk!4A &Ό#bAfHH2fB 89R)@r$ ٠J fk~|f,'ӲJAu]sn٦'(X؞~ ߍơj:j7|9,T"bI&uFIu݈d$$AfHd(3W:t䛽%Yz\F`ƪGle̡KºEGiw?*?8+^p{p{p;Y,}i;n;P`)*{"Z(T#5*)I5^|8T[0;1XNjJ5YuK'-kM[$Ѓf$T[j_{^Nx^J䐸w|RI׀ گh@Z -Ȱa[öXY"Q*Xw ?qpn:gT8I?s7@Ah^mr@ܲCuO"Q4 A=F j mS9`tGؓTli&3}Ջk>6AhD&̔DtSI5@4CLVy< \'* I7${d$?J )TPC+y_YSiޕ7йZ BP@(Zh`Z\RT/o_ϹBe &YLH ^Ҷ[BrשCc|TxMv8/wžW]:p6}=oݫn7&WzST= ǣ\d {دUn͂r??[D.\tk in݈Xb+Œ+bGlqCxu6=/>#4ۧm(!(9xSeu2Ⱦ!N@qNX^X^X^`tF_Zi'./n??Yv |ot\6y bnVu< WxjBոC PYՉ}fL 뭒se%|'mY !sޯK/zy.o׊ [,ÉGʊՙ}6Xt.\ҹJgV0+!aFŒjr}#Y QG>OiΩI. ^ːŁTOG++);{$ӻlzi7%=KJW%.t9=cofWQ}+fU|:]܉mMdoF@|JN9~菢?>@5jv}}_zw FZA/H6 >+Ʒ,ߛ_tMiqQa`CU_~I3Ϳƛ@_w*uG5j5xV:cnmp}]k5jZ:Vwx[ݮm'.ˆZy%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00tEXtSoftwarewww.inkscape.org<IENDB`luckybackup-0.5.0/resources/copy.png0000666000175000017500000000177012716116424017104 0ustar luckybluckybPNG  IHDR sgAMA a cHRMz&u0`:pQ<bKGD#2 pHYs  IDATHDž?D3FrI2%:4Bo]$H4I4H*" HڷR>{{dy=w< G ylq0]${G|??~/~,5{k@qΉ,.)uRdY,(5Kc9`l||HcJ F X0QNW}ufhu卉P, Ey} @wa0(fL%APon{2qE+ˡ1cKƩӗo|)4Ǜqcմ+IaЌ9qrs{?NWrU,<)K+?}πC%` ɴJWh8rD{'?G%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/AdvancedSimple.png0000666000175000017500000000420012716116424021000 0ustar luckybluckybPNG  IHDR szzgAMA|Q cHRMz%u0`:o_FbKGD pHYs  IDATXŗYT}=ӳг[ a`%%(!ILJ*0JԤLت -ڕ׀90ɹB+r˜%P:NFHH G# FQ&)rRhYqcG6%ZBgq s^5J- P>S#Gq^ݧc p+LXh҄@vujY:5?E\L'JT n*gKkP WGi}(%A^Q$? + rnZh]MGq#2|ItY"6`&9',Q5E&?R~!X߃BuV:x GEKeX6k3eG@G,x@03xx`  ZתK'鎷h2D<'c=MrƩ]W?*StzQ/DxKU!6*#-q£3xE۹l~.YLjQK!nQ I$8WC'MQ<ad}jm+;^vt@8bI޾G>{9;B_*j$UTKE1 Fܠr&+iESխytDa7n;K~8P $fU)Rh!Nm?::2KXI{l*z{fi4sHdg _O;q)* Vgat}"h7f7/XOUo\aזѮb6@f5+tlg!\bxB҄IE}eJfИlD".7%P,-X•t`XEڝlu#-L'c,+8b}P$ ]6Тtk5 d)qTȰgְ&dv4z&$o$Ufec:ɚUnh4@4bjEZ4lStL5j?aw)!MB.};YgU,f`[;NU;78`}{`0AfIoC`C`f0?Qёj NNpխ ֔ J; LfMks1dA RP$d<|Ф7p%q;D \] 9͋] cʖ'^3v83w4p `2v`# 01qSxz/ޱJpM%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/luckybackup.qrc0000666000175000017500000000261311524476614020453 0ustar luckybluckyb undo.png mail-forward.png email.png description.png cronView.png collapseUP.png collapse.png duplicate_profile.png duplicate_task.png copy.png pattern.png window_minimize.png window_restore.png right.png left.png log.png manage.png profile_add.png fileimport.png default.png rename.png fileexport.png configure.png down2.png warning.png luckyb.png validate.png AdvancedSimple.png up.png down.png remove.png cron.png add.png abort.png about.png cancel.png DryRun.png exit.png fileopen.png filesave.png gplv3-127x51.png book.png luckybackup_96.png okay.png play.png start.png luckybackup-0.5.0/resources/log.png0000666000175000017500000000446312716116424016715 0ustar luckybluckybPNG  IHDR szzgAMAܲ cHRMz&u0`:pQ<bKGDC pHYsHHFk>5IDATX[]ee_uenL`I U 4 &&!ěoBL0<)1I ĂUVvNۙs?\g߾NI+֗eXF{) bs_7o'R;5ݸk>ؽfiN-;1uctc^BiJsv1ȭDX}иVdoaABg)c[ eIB(!ׂ/=z<>L+?,!,I)@ !d$ !pֹ3= .X_/=ti=3S_P JPDA* d`8TA)kT"D #0OOjhZ޻VY$?JģAx" n $D%%!e z09S?.^EO@XFʊڷwcf*7-"1!E<u( = *.4F=s?U3mH'scعg}?,--թnz1Nb!7/! d8I!SEP2ܰBz guhD X~LqSE+l5{QZu[I(aCO)7hvmAJp 2 : xNj&y+tӞɗvOܓ4zu18 tB:UP7[%DfX @rL3p-_~&@)P_^[X\\\o;5}snrpNdڊX"LB (AOAUDnsT$cXE%2}AЖR|h{… g[Ɔ`:" n$'s a8@&^xs\]w|Z(.շ%SA Q9 B7=PCH 4V4T_]W_A䵡QK)*y1z&<1 cqZUN!,?"W k 0*tc@",AЮ@F@ ()%;g.7ʊ*k7eYo<6/̓^)U0EBl8 `A30RiDKYCfgagضT^;~⥛΄ll6˿}7?;ۊq2>9)(9JAQ _5 -3 FvL!D]#{wmLL&3VO%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/down2.png0000666000175000017500000000111412716116424017153 0ustar luckybluckybPNG  IHDR6gAMA a cHRMz&u0`:pQ<PLTE}}}vvwpppjjjdcd^^^WWX|||vvvddc]]^WXWQQQKKK{||vuuopoiiiccc]]]WWWJJKDDD||{uuvpoobcb\\]VWVPPPJKJuuuoooiihbbb\]]VVVIIJCCDhhh\\\VVUOOPJIJCCC[\\UUUOOOIIINNNHIHBBC9tRNS@fbKGD@\ pHYs  ~tIME (NdIDATc`:`dbfaecqyx9ED|1q I)iY9yE%eU5u M-E:zF0LL-VXZYX ikgOc"@ %tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/collapseUP.png0000666000175000017500000000271112716116424020175 0ustar luckybluckybPNG  IHDR DgAMA|Q cHRMz%u0`:o_F|PLTE~~~ppp웜444mmm///DEE}EEEFFF///FFF񃃃xwx000fffRRRNNNMMMMMMMMMTTTOOOIIILLLLLL:::VWW///jmm!!!UUUAAAx{{,,,jjjEEENNNOOOղ𵸹󸺻ͷ¿ghhɖé嬯綾ﴷſw+2{tRNSG#f-$q/ةndبjS=Q0PkrتqZ9 @=p,qü@8NVX[ove %(*F: ,ڭw7%oWb4,bKGDH pHYs  tIME (NIDAT8c` 0^y&ff&<*XX98YYpsqR*]]#($,]P^^ xCdSV ViYvy,* J**]j*@=JZ}h*@&**kM$?e!V4#c fVV63gU0͞3w^ -^t̙W\X?k֮[a[n۾c{م !_? ( !$4,<"sBCX  /%'u2A" G2gfeeYqfIDAThվǟZmq&\RrmC"FR! ]t۩SC.FRNJhKK[BhȘ1YG8~y=kޯcXs?z&&&FV 9!'8dGڑv$L1S0L+ ~ǔ2S۸ޢ-`[Q=G! aUz^ e(C~~;p%S+;~'WB(\-" W)A껲or>m?{g<|KE-Fp:Q'D0y&^ꥠg]+t<[lɳ{=zuhᆆ{{Ld"HK>0A AJ({feAђz &M&s.ś+ !\jujh? )||=@vڡ];[lsZyjIxR[jKktѠZXXXf.4ޤ{|;8IN @ $HIK\PZ *"{56nri\Mv'nԙ]W&8yC];4>؝zo>cm{ޠt.ݭu:]5ZLi3PO=@9f_/ Mh( A=A!=zL1POCjv 1+ՙ`rf 3}@ܛzwV<`,cip ٙ~{z`Zlf:l IHB|/A2M4-03lgv-k\㠢ZZZ?j )[z&Z Ve}$`^ :4hMݠv?x /GGB}^^WjgydUg+V>3u&h,y<u u u3L7\ =^oabA3Rvia-68WKNA.vKA>v ȉ`0{!"{`،iWd4C׆n h@sU*vsPõ yYZ`saW 2C2[sZ/7'x2+\|E@pS)I`lf-Qy4̈́{ڽ!3rBu< nxu})sdE͓6[T*vU>8cߑ'!5 ޳J{Ufef vN41@0 mlc'2k6@j}tw$߯= |Kr1<G:!<B_\^_@gҿ N-:A9u[#A? -鎐^R5Ɇl~hįөOxٛ{3Cz3) B Dbő`  Z`)e}w>5i>]Ȏ+Nq Inϴ#*@'ܗrXʅe9@u mXgv 4k _ C\qO"1Yo>u22Vl=Gl}b#"o]3 :4՛v43\A`o56dź RhX~H_Ȝ]ۏ=|kLB)6SiDk2Ir$ADtme^.DOԦAnAAUPI~Ӄ`vf=uP_zz# YB%H]- ?oi5T'ڝ a 0]3R?ն`:x`V=x7cޏC#؁A=H HMjZi" q\u4o~J2@r%CVq7VӃ>p@FFƮ U  Yds9 ``Z:f+KSnN39 = :^%x94&F>i.  J9 Пr %"6;| mf&঺^. } 55555%J>xAj9!!!޹Hn$7aZk~ԫLF\R< \b{6f3fJ0F?R nܿ[64u9dbvBT$qвz+(kи.]6AyP~Aڒڒ`X0 dlm UR%Ujڡ!b2Gwޒ_ߔy)塒p1Dz?<ޖ >hwSA憚AWզ#x H?HQpIpwD>=_=[M R$ccd-Ո^e 3&xm˸>vC`ش =2{zv&=k]j+Hųe97]6mL1w6 KlhLdJ~pn,, Dz"`Lk]wࢠ]@BvxD]"qA# >QTb쓧2sgV-ѿk7y^ wKO/@DIF, v},K U'ΆsJ΢/G{@2Z2$d}zl&(3(>zNtC#'5e5gu%:H=+njpf* 4`_JDv*bfܖu۲Q+owBkA?2Lf ѾI=@6N+ _6ݒhBO^#OBsGB):p"Hda0 z5>4V oMg<Wl`!Q\XzCjzGlPe@g1/j; Tnਖ਼,]Ż=ދ`gYfhiO@'?k#ЙQFԾ{b3B!zo4[Ɓl>izI/2EP 4~r$@Km[wԾXo3F ]*6ѻO`UӠ?2AiХ: {e}2܁ѯwio.0 Lc7@` RbPa6H.j-k;@;]A9`f[AIKyw@_D'8 "Ams0 3,!x9s.Y2%ن&`ʒ=0x9VR׫oD}xɴyŋDRl4F-PӆP 2CUR%U u3H)#AI?rZN$Wr%==@(Q`{Lb9 hjv }i8 1ɻ+̒ I`MO{J _!FE&fmBY( AV ]v`3 N:crLTJTXbA(&+{e/HB_ ?G=>{n{[Kt=z^Od{ܫ;pUpCBL?*05ftn9m҅vghu?if&i&ͤ0>C>yZ^v&m dLs\>t.ն1A'dC9n9p`? ZA04\eࢉ1v gr~%A31Pfi}[=ܔ rB9:N80x/A$O@.KLɔLоWսXRX*`;F||wyԓz z(/{׽ɒR^~ | 0X^gFOB🉎AG0Ԇ{u}c1"sR]S]S]J N N -r-ƴ1mB )].h`A}}}!>>W,^ 7o$߀O4x o7L4@G:~o7פפ@ܚ5s{kp= 9cu uAX&cWPH˸-XՇšTp7ʯ1m31,,,Gc9XM۴M|-_@.䂟g/ ''Ζ-9[nnn wͣͣ!""&@ii)OOOA?+YO(%c;qGPdY/E>Vk3Ƃ?ew;Ɵ;Q_?Q s[STJq_+VlKq.ޅs1E7%w ~_;*wT+W@,Y,h 7śM6|6lYHOOSgOA g[K?hV-T>LL?Vӌن :9d5V̧EɕU'NuN4=>ꏫ9k笝hgb3Hu6k kZA RA |2 \w`.4 A]ov%n[n&o| ۏV2uәuz uw70Wx9Pj%lx<3?C)=n:wNKM[py^߭ oEM2%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/add.png0000666000175000017500000000337412716116424016664 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>IDATXõMGSUyI`89DA)+$OBH$`"dV  N!s'Νs밸! ӭWս9[)^nNso`|P\<͗~';/\~9ƇcSQÙ-N%7psnl󵯾hQ5c,ۼ7S@e;͔6o SYXq4a\2HL! $"] SH{L.$i O8.F!`z;2BBm커ZL0h I$Pd2<6l GE^{$'7( ~Qf`躕@c{\>CD`AA Qb鑾NBVfMUG dd6|#&&i=%NrZHbb1il w{wյczTS=<< !uY-V)x:N+9g&XuXnOF:8@ۈ(!8NBG|1H(enifH0SuJBLE,(BT"BN!>F<[O]G`%)K1L,6bDɁb uHh!cҥ Gh uSaSڀ:K ˋdK)#-R K3R`C |9|i#:I-Hn8 (H!Jtϭ3/ԥ$aaĀ>u`}dsc+gΜ՝Ջ71Ug-!,+BPpf\y{w>.(mpd}ʃfA,Ueųsꦱ_opч{L}ل<޳7?^{Y7EeI'<^U4 t|A Y[ݧ>jo{o߻\t>?Wg^KdI,(nGaxM_ӿSkf=v0IIӔ<DQWպb8$!I$b @+ea Y:>el(cKѠ3@7S Jut]ybh}F`x~~g+%2Vj<+qd O |;?u EdTL1>kc]YԞM]Ujz8 ǻ-2ODkBO%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/luckybackup_96.png0000666000175000017500000004003112716116424020756 0ustar luckybluckybPNG  IHDRzq'gAMA a cHRMz&u0`:pQ<bKGD?0IDATxy$y2>{f3/Q\RZi%q-Kr7lAk*v{H^y-6VvWMM%JD$H@\$ >ݯ:|]3 ̈ꮮ_~_~] l^ \c{V2ؼ|ʫo,$`)% $6,c,X҆5$X2p£_ OƄ91B[Wn ̔e3IУfQ“#8 8 k֘*5Jy.rjk 4My|7G2i@-ż]iޭk ﱖw2xPvf?+ akZK6"@AIG&Dzb{bɗtL{'y|cRkM@aQqݎ7L :Kط:E;|T঵y3Vت kj.Ԝʊha0[Ơ?p4NQN"KLo}--jqms bݷֽ7lmo9cY08$<2bN?ų'{˝ &QkX`@:6EIu}9nVqU@Yb}-+c6Lu6hTsui*Y%XKFpЛ簩Zb뇗 hںVFg&/_$Y>3 `P 2' E_=c'ߌz+|:i^uW7GEuԅK!{Y;NM(6V1 j,̉v3RaI0Z0[&o hC[knf6 \ȑ^py@F-vqZe ETBz“dbqf?3'x@6VkM%v\g%5f5VZrS9y.]s]7=o;Z(_tq2n|fńusnS{d~m=?퇍 n9J"$ !$l1.~cHH\'O?y닧%ӼW"JQ l 5Y3t͛}7[>uA|gh__&~Nyl a(@ G `<0' lsCc"k]]aܘ]56A "$$kGxwtpCynar3B9/U@^Avkm| ?:}EzO{?4[mFa0H9eSEP5hSҲeRe[[HȈ ջY7μhj~^@lxS aJ!IA$ N;~y<6*tu1]~ #o!jDIj(j~{VK"5FҜ  "rT+](Ky~QJk] jDLd$YKO>WF!NBB9*Pz HzpcGhp ]%ŮV)I/ۜ\i7{R@<'q V?hQopx<iJ /HHRz>Qyl`IR` pJgi_:[GI话Z3n?R78݀%;m9.O:?g0`UE:Z@H<mVC;\;?׵Q3Q5BM+C^vgP(-kjSEbb݌8Ņ6I{ FL>6H"Fq i`=?R"z+gxMHw'?P]ŮWAWaS\g8l(`vK& ׁwDK}M˳RɃ6u>ڠ"ZWIWT4 IqopӢUk\(À3P\xxwupxߋ|)&&1&@wl9 P . C_$hf "b"j(J:huSr66϶V*f7?׋sB3I;}W+*n:g7?םw#ċf ;6c"/I3h ̺RXS/3껓3(g>R/wRȧ}Lh~_Laxᦶ. ԼiR;ikՋCaxG>b [{?5.?[o4Kv4IJֻ`=zN ]>uߙۨ 7&>`Wձk <7 oGjcrpxd'jm;I~(喍=յcJ|GI'{?z!@_Is[G}ِ.AnG?E%NwLvEՁz?Twly>}v߮@~d&SA}i|$npo[%A~Y_OI߉~Qxۮw[<"[Qݵ}=[YJ:J۸y\e_qzwZ]/\ ^U3mqkI$jm( uަh,f`%צ|D :`c(R?{/џkD;6Հ^Y= .srU -o ß ;;Iߝ$~M\%}6M̿{~8>Z@{o4M}^@_ʝo _qg߂&.w}ј㻧-uvIݝ$$1l:6'/Ӧa_ob~:tfwImV_vTsc:l9&ؗd|I/6Ok;̜V) aǗۿ0~)ǔhpگmvwߝ$?ǏpQ<(_=QK?l~r0U9 ŧ-s]!R~ݐ2 j_ʲ5mZxcQo3oh9LϠ\N;~L}y,2O 0yYvXF<'gGl1(p1$Q0I'9u6vs=YKs̘ hYgyT1gd+O1`CJ_۰1.rz 4\n:k952 ֮7 Ioo.Y?G$(/ǫgVA374PN%.r+a,n›SsQAcnsJWԃ%TQ:ypZgnVasV`uwu[zݽktv6 !RZ?l4[ۼF{VZvKAb|*Bd:F͕Ziө@Ǩ'q1RN넾6fþ,gɌ7"0n~tggu6;v_C8sL]O:uP=HabNUGB*l׽*\TsZp(ǣz_VXt֪60~m(Ev?#!l*rg DFzӳԝ *krܪhH.h维\!mqk\aznmǘP[kﮏ:5QUJ-1Y";HVcZ[ qq:繺rR<8mfC~BHHV7[NH^H9c֨zn q\'$ QqWS cnܨnQ2"@2C\pM GKH2j0 0]CnD*vk\݀c랩}bS_'|".[Q8ΔFYn'<IFkv펛9 %N\ u39.0I\Ϯ/ UQކm{Dj"֗Ot3wq-A&Ku@ݠ ӹMgɮ3\^}>7ǹ)aںTգ׵ p6fm;}AIZ>Hf6s*]w !f 3-ΛEp&<е!.wٺ ۳e׎v4$lT[=?wcf_\Tr(y:]>z9<,P q=.;p΋LSvg8uwynosˮQ2 =OB> Oz~A bkպYJA5H &Ys%Sn]J0!xv=^5x֋~GQ9ך?w/8pj>\\ Kr[9zyU#N=L\[ 9KЎmps:&_{MWH]PnQ?Ԙ۱gff~f.n7 k𤔾ߐHϋcpmi8X[Zڽ \`Xʾȉr& %bA9fY]Ji(TQ#JF0pE{w/}UpdJ{`}u_VƃF6U[_d3p1+~k^O{j~2t[*IERZ!y$E@ "*N>]l.Z) ;g[q]8l+۴ƤV1[ClEn,7 sa#f+vɝnڝVh6(RcGlptvܩs'߽ !nOɸxFixx-˶`&A !сm٨|wgKuY\? 倮d"lXni(`,3DRsaiv;vqsFK}W{Cw$}^=Hfj8X X  ۮ$:h0l[9CÕ3'`;뙓M s='EƌElr F$$\@=Cly1FmYv6:AЈ`cF b-?N3jw N8Kk(ksfH1 3!$l+g׏=]TTG/>I5f\r eQX@4%[XS '$Xjba!KgGLGzl,_Q ^Iiu~w5יkИI^#p^11L b " A `z>쭜:pԑVDž?W*ϻu(-mFwnG:wBfgvxEϜ~y uvik+\3;߾9΋\gY !$3B̅V+xhTީ5.l6~_l>Ӝֽ.MэS(ta,3@0G$HXWϝ;oo=4Fٴ]=]Ըټ9mnyjᔹҤY|s̯5JnTOnPd('>E {D3L&e-Yal-$+M$$)CHҹgtoa=\&f2 WJ'(^z`^AEZdG2o/QET4Y{8uܟN/;ViU[R;LQ^ ALD !@D ,t}ѳ[;!LuNx.ͥ CR}3͝䨺Ԍ-ƴm{3Ѭ*kK{hgp J=[]|mV}t8|{޻F R-hS],=4H Iol4N l )EbU/fGbHs]VbL[XHRoI -lݹc-Qks;@vx9QU~1(l{eÐx 76FؒQ{(Y6 Q =Ii~̓=uom,FyL ΐRg3jL am37 ` RPI Os([`I AE`¾-@xo/Y]83^6(2+w c *v,T@?yoxH`qaڬ-ҳ&ė2n7" 鑔FF7*K![)B Ftoa/jvC|C?Y*M$x3<7+w}{ooTCrHHҏCi gn ]^q,EI#JIъ!L5sjZkPyjt{kl۾3JƃrQϡ/Tc%_S뙾o0$>.段A7TQ@IB˰e$q!ﯭ4g>v[U5κ-0B d03}GZ/:[ag͌>iQn90`XXh {ߺ];Au;tdjNGXL0{}jqcfFr)UKb9HH!=!MY:t_~_{ krjζ_py.a0DJ%Ckua{x5Ƿ3$ߙkccm"uK)*a:]hv윙y޺wΎt`ʙb5#Dpg޹Սla0RQ,@C@HR$ 3Xyww k۩oe]. W8G[3:=z`etD?m% ښtdgqjW7e4[10ۘK:[[[37lru#G>ZOEmU/ BK>\,׷SW󃑊\ c bD\m`!Hz$ۭ]6GpñѪ˩; t1iޔ&n. fQc[mqr4>6읳Q ƾw6{nI:lGHߣlT e`cA ! ~^F+63s͢ INő| If<-nO^?w%v 7^',(V[3Zeyaw_o]ȂL*)# &!@ 6? _=M|1w>vaA-Z߅'aP%neKM+YG[fb%zt>nB3 -ńq:>uޚ숱YYKfjt"lRP>adU-)@e`#[8t=oH :GV[|zK_*AP:+l7b_EFaǙޞzw}if FŁ^?_)WQze)Q*͒6(ݖog|~?3X<{edz,T=0y^ )1C49 2feZ6?ɶ-ۭѭFg"Q ̀)913Z-rY犲Q&QHN# wNz|ڈ%)i-BІG\H!qs{ZѬee-Td:J83j ȕZI2611DJ!I_"m{YO~S]fdMpZmr ]fUjdU\Y[yam~֘T[o5 =E3 kG[ & fȕ 1=酁A fV* eryr$a |ߓIfqi?˴,2~^%mRIz NDB =$ -яك߻GǾhm@v\X*$uWUx%@깷#%5ٌfd=kmF0sIj EmGk5~4)d"+ [#B%u3=yA  Z̖a%.=rGr+*⋻NϗBII/CO>ͧZ>}ڂIF!}]{ U}̅z\&E* 3yv5ي҃7n,ҭ\%Jf^$Ѕ.c$`,,bp `\yW;sNg"0/%5ͦ@IՓ?yܓ|3V$DP1 ˾L]NpYz=NQ/U^+ky?FV=/*QRcU~6A̒a K)Yf[bŦ ݙ@ !OУ$ $ <;`qrrġGxpȓ-.\"XRT\75:NW_+}7}5v`cy](s0NFY rn7v̳-p.?ld7F kl\zk2<s ܜ}K3 ' /="I{l1ϟ>ϝ9ޙOs^4|7czzy1v޺XW])LtQ^bAz FsQm&nnM\6Z~hI?n n B$b9JK2ʄ%GA(x#ճ6KU!3$Z6ZkT(Uq6--|z}mhlsb6F{nRO텽Xk\0v@lRӱ5EZm1 )#?~ 00^ /|~/xlF)6EM3cTȆy`%lƃZ('(^䩶8*vJK_}+ tlpu2딍&kkA BR'eI/kHϋҫ|VVqamV)Sh3kռ[rv G=ם(^_*Rߝ+J߻sV7ՁAڋ}")I "Yfk+5B`emD1yԩx%-W zgR`/Q*Wv.|?(?(ii%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/abort.png0000666000175000017500000000463312716116424017242 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYs oyxIDATXÕ]Uksw3 ()u("mXEhf(44MVB6i|h@LQo-F82}٫sQ;Y;ܽ}^K_:`_Dd 8 7oNv|^xS~Q`sn9R0d""1f %"GywOι(k-9Db!ˑ c̸e˖0۷^rέj5̛7.:;;iii!`T*Ǚ"Q, cmvm۶snEVcffr̊+Xt)mmm <#c:jgrq&'')JE1''o>nݺ񊙙:7tP*}?wSZ:JaNO~seɳ>ۣq<0==M pwK\bϙSJA_~Ix!"?ؼyvVIVc``oN ·*֒779^)WQ.Gj b#ԆObz߇L~[)xl7 Q(Xlj5|_lYos$ 096Z>Q c4^ k !Iιu9*cstuu!"Xkإd1G:{FD3@ +Y> 898z$AD?>eĢ Cf #h 1^C'u$Ly733')S cH\@P +KLDƿƛQG%!%^/3R) Ie?TUYVug||{xA'hI;4q9N$IB^>T(sbaC -I8k [ MgR׉8]2ι18Vilx$ĪDXn7VHDiz8"j( M)QqDqz6>6lVn嫯j1"ebb(8*s]2{êڈ0 oLՉ6'IBDQDZܹsx9|UݧAŋ>}Mir%3v& x1?'\߬Z˩Sp|9m1C|r|ƈ"qIǓ׿"Vg))ӸsaHR?NUwcx[o3)OLLhѢ9R/d*0--dz$El^grrANS{=?y1'D䉝;w{Gyd86atttdz{{Y`Aj5.]9{,JIo!y߾zc~[UTU+e8k #U@ 7Dwy燷fظq(AUF1([D#vzRUX990&"ǀ!xwڞ/G(d%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00tEXtSoftwarewww.inkscape.org<IENDB`luckybackup-0.5.0/resources/validate.png0000666000175000017500000001470512716116424017725 0ustar luckybluckybPNG  IHDR #ꦷgAMA a cHRMz%u0`:o_FbKGDC pHYs  IDATh޵gpU׶Z{st3X$ d$#DMGN`1.6рA(,"Z$!"k?\]oujǬYc07g`"`Ӈg)*Sl,!-?EϺy 4@+O4 =s~WuKWQ1c3HtG h<&Wh^ѽm$cSהCZv>`Sk2ї%5˗FX ck!@R{DwiH6JݛТ5NQd^iVCꤝ n?𖆿4op^>x^8 y<qz޻$hl mYZ+`4U uM&]3'> b քS>A~݉+?췋 )>k`b:O"2J ISO \O,@nZ!A+ZpUȃ,LYҒ}dkodξ-r-iO9}[Zk_䷃WW?0gCç.yxU `*7 O)_>o5n@DlOL?6xK7ѽ C/@V2 ׳q>l>s|?h`RZO߫,Mcm1L^y{qBS6c]UMR|}6MohADiO]5FښɰR=*e4 wfUgdw! ׺gjs]j&j0 (;9 Ϫ>@g\4vP?W+VΧVئ<jkzoTX8 ~ьxݒf6fDRW&)۳ %"lC@~\J>?-ٞ5(x #e]dʽAm< #uA4Nk 7rnclNxbvQ9z%nv*IYb{G3r5ŰTjޝ&{{q7(5Bb"~mG)0m`Nw}|JUhq7}J|5 n& ;B> `m) }p)B&?&+<zVEkM+QjW*kLT#pvukdY%_o)/F0݃ӑc5}D]3xh_ P_P7_}#7*q^`ܼAJo#9rZ@;NDZogׅT+=>>=3}ʣiC yNeol^cuy VTp]q[l+Jw j&7xYӯ%Г/QV[/V?pj|e;,B;]Gx{a8_콣lVCkPc;4jye6fgm>ٖh,;3 葌jWBv7P6ABc4䇴sƳE+M [8zl sӐ amP6bCY젦$Κ:;#{̍"^RϴίdG1u_~iggF 8a@J6j~ڀ|̷w65x9)лS ҚJ1;Ϻ('墉Tx[Ut91j{PcU5 BrR*gy ǎ+j|g-#HDɠ>_>I?KM/<9̝?e=S u**|;e<{VU4uL{ȕc>#{24!f;R"UeUZ&bE+gt>~u3!'c-_dFD{ \-]LMGĽf;.\-_]1z.-W("mj̭*m5WVVy[a5/pGOzOkZ%o ɧ&zV18 eHK>,q@U oEPf-.>+)7wA-8D~q{`k(QШ4̆ml*k&ȱRV.YA73YYL tUE3C$M)|@sY)f,&h=r_ZNq/y)w* 19\hRX@5*TF-f!UP[#PWiJ.+Y[&Kj(M^^g1 н"q0Q]=-5sFڪ!#XZ. yC6̑`IVCK?# 4X|T~QU55ج,k]9'wf%sXIt 9N-3V]+ψwV55˙Q\mqӮBbt>PTɲ3RuVect,ŦjfAj)^5H>wsC+m; uzvUY(^2EXZiCa]T'?Vc#t[( p'4 m7`@0N4Ae:i VKR>I p-^kRL =`1Gkm4]ZWEpocۨwkօ Z-1l&fO V4 _ Pvxg< pD c0eYOT"W#UC@V̪Sc3 >G$ޢ`p:F8@GM;|Vp ЖvONd堢BD[M6E븻MM2md:by_j.(OXmQ1ۤ/[ :h#[Ek5C2w)_[(c]IAN;PCEvMX| ZX*NV3eK7 4b1$$Sp֚4jP(ktfPj@)2C1^Voh4MJb 4[hzkziաtXʢI- 'Ӌ8SCcgg}jhGoqf5T v  )@:G~t@lEi_f Q 95<'i_R+"X|/iTV檫ʣ܄HVQFP9кIT]M4&͗L.s[PZOPD @EɆtV x:;To*WyW簓YGs_ SX#~yCk]1g&„q"?c$QwEz$JښɚdKVA{2Lf}g/ӑ# Xyw<\CizҰ@mq4PY+j(F}n6 uΜk?ܩ݇"s ݩOYsF|X/)ta-T^Zeo )a <ʟn%[mrudH[v&?e,.nTm}vV7o赧}8 xJb0TI|ˮ&U#=8.x8D!bXcm}g%Ϝ%Oʨ9r*GTTuv#@ ǺSFJ)]B[F  Zr |Q^:nEToޟfnw_?ZVZvPS[>7%c%loQF`~mX&DIatFV1xA[Jר̢3w1ol)fр__6) HPiN:F}OtL#hsϻWQBtx^u>?Ҵ<_`Of5UCJ<Eyϥh2J)Z,Lcwa;juqUj5TQP@,ROC^N&[m_{Sc?{gsfXZ;eI;ygm׿]6jls1MUOs9)(ۦzUqsF y?w(]z z!b"&Hܢ<9nH4v\'nfϏx86Q;G_ZH:dMfͮ}ǁq'Οo+:zкPX+\\}%8M<b殰 M(W%%w]`:l[-묮^p~%S:op,omp1OBp%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/DryRun.png0000666000175000017500000000374612716116424017362 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>IDATXˏ{`<N `EQd @He&,2HDJ,CHaHQٓ8X~`1fxꪺfQ3~%\:s$^||y(z} 8O޽ m!V GEh+- C0^ύ7Ч&5eaXBIJ'UNc;` YB#QF$*Wh﹂_=lBX[`iWй@ e'0 tb!NvWB.> \,I ~~;Y iZRb .n<np /`)TcL2-8q_q]g|ƹ3,-R!.Ӥt8KnEG``[̵<>8]AU]ZVS2(vn 8dK%QAPFx>11:c11p^Y/W M"Fo`9I"(r9o!ĶmlFJy),ۼziLArb6-EH'%=|/ãYxwrU@CbQ sDAE.K3_Xxxn%|̸ͧ-:(5nf#w FI9|DSP3NA%RN̼Bbz!8(FUqB&T+>RJXn5L'3khM4^j~]&ӺH&]ݪ+jjNCV[s |66p%H7>^;/+WX#^[<,ӝfLnǙ9|= 0K zUCf)j:bŊM===iaظu֗Q]Z__-n@z=eye:ZjSLA=.ͣt0-_Ӎxʇ]u],YyM |Pn%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/mail-forward.png0000666000175000017500000000503712716116424020516 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYs^IDATXí{pU?H.7!!$Z0ZyX2tôGı`R:`)vRdCAC0ܛܛ{?b*Xfw~~R7<&%\oQ^h,Ё< !^cQ B? !^,kR*3f f.RKRk13*6!߅*c .֬YCOORʑJ5Z pV B 8ŋ_vݻt)߰aCxmEOjg_Hs{) !*9nZlٲ'ObY֐0 W+i!Zݲ喒/K} c +V0 W)m0 <Ç3)R֓,ʕ+,kp+ַquӦ<0dܸq̘1'6rӤg ZgVXrPVJ-8s|f}cRyXŔ)S6mD04mcժU+W$ж+MOZlhQJEQ"L2}t&Om~~`ۓ>~X)'RlRr* EyaEa!M.#S(}((//gΜ9L2_*u_`nlc F6Μ9`TmYNZNv yk@_2oQFxsHX0dyȚ㖤*EBL&Ckk+---Յyh1(++cX0NʰЦ)d$RuU)=`@Nv~K_3H:'uꢭ&9:b%1Z:[8]8<0Q#ZĶw<~˽-3n8q1H4js۴U[s!bicUc+bW8qL1CMϓݱm~˪vxA@4|~f ^\ =Ad,̱39ql!CVRINXQy! ’p"sm{{cޗ0Zj& "ۡlGI;w͒C)d(x ~bPď<,a`)WKKK)0PXR¯~LO6mjui4x!T?*B^yh^"CaIT J%DYb>i'F?wCN%'i8S9rV12|MES[AQuǦN& Qð%"n#K-D,t8<ѽ?abML m#u_y3cxGǨ);$f޼9lP* ZD\L脀mLI(Xvɫ3wBd'\W?Y[pjjv5mWՔm_fuUO=k˓u6Cb RC,,Hd דj%)q֭qB= >|O]w~o֚p{Usy,$"y.`B0L0hB1ًVG4 FV9>%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00tEXtSoftwarewww.inkscape.org<IENDB`luckybackup-0.5.0/resources/gplv3-127x51.png0000666000175000017500000001114612716116424020030 0ustar luckybluckybPNG  IHDR3'gAMA a cHRMz&u0`:pQ<bKGDC pHYs  tIME%/VVUIDATxy?oM0h8MjDT{@Q1GkWhEDM 'x`0$`A@T*( J@ErzzzzY癇_{_!#%2H~޿ÁТH`nn@ g D76Kf]_`;pEBOx܍xդy ӀIwR""ph,jcb;hpOwۀ (<ѪoT $+r o0!2zz CV;x : 㪫S"o IMӝ.@h2p]BZh#?+2ӳ]p/lP|A|\P};QJxP`{ ՈAWAg3دv ١@օ'`CԆzp+;N`r p8ZF+*ӯ޸6}ʆ[ ?CvY50.Hh¸SUlδ ^#hep[Zdp$0__Fd2-(|Zl} .%g7ҕfE"0iꚊ483PAb]( u9 "(Va刿ݨ/ח1-PgE&Ҿ[k֜98 l;T8a},"'`; .?.EPKT`aZ"+PEX=?pB^&p+%u |Zdp ևWR2"{ obRuR~| (FFD^_;hA8B9HDžXp 53 ꊴ̾ ,8S`k&\)i 'kˀ2@Z `@V*^RWrE .`}Ra1) \wҁ5/]IsY&տeExrǔ'<ŧz10 x5t,,.<);,vnNDKG~W_U|Z $'p" VԵ0)%r KnFhꌰSD"x*F~,W~.`8õ8(SD8Mlz^o."^wןN`<=e dU3ˁ a'x8Npa),}5t ^Ib% y7)o ";{%)l-0C1;@-pXmgD#y:c'{Ν=Iu-p[|;6+TٗBvE +3 ^ oTu u| ȅ=(I|(;JaqBld.%r->\pdo!旅)}+U !,7)M i۱{Wcy Lg+xRo_%6e(gwo|0S$E~V.ydT:N`N;%ߠEGxXW]9a>GݽU7RI:05y(ň[bv(D- :㋔ 7IԢ`/Ysit$ P]MWeP@,cgZ^Vd<+ Ÿч$r>ΠR;wz(ɺѪm~ .^TvgruכGJP)܅]upR\uuVdG/w*p̋ QdDN6M6g(̉:h|l'L:Mx8YBy9뇧T œ9_[`B"-u|8ļŒ9C[`YL(U.b _7RQ70x܉3h` g3 ;(L10kUgz-@Ԯ69Xpqb /U+!lFMʨ42hV8;Z=ѽبzK3 ry7p5gASLF|ǰkT,Z[iҬ.L.6ݤS]m4>\@Fh A2\0 \$ MЖv&{"1,#} `lp{8pT9§EgzOh)׮\4Nt.7bdЇ=== Ӳ=ήb-od;T¦CѠgI߻qHuvv o5γԛȘF6HVbYڨ^r)NH&U߉D1u7jsEOV饴J^g.ל+DGQܺE1*~ dD"R1C4Ȁ1 n3U0W|H'Ug&>jŝfd§DRXqչ(B" l 6Dz)xAcDwƔ›|o,ʈܤș"{;$U)HQj 61#{ ,$| ,fa3+"SYT?j2i,N%;'U/hTȯyB"ۈm_s* UX]ns pWa<99#\x~6כxZJ%'9 }f \B ^Wx?xՅw+[a0{-fG.b"Դ~$Θ!ry hRmW\xIo%NFpz$ C)@:/^wN A9!޶ nv^ Ն̱?օQw\Y`;xSataxv079p :|.Xԫvg݅9" [-x9/INv#, s\#idðOF(l ' |lgDƯ&e/~ڷo~ݙ9Ӟ 4]d' 9nXθAjnp'W)j^Pow L{ Qs]Xw(ӱK"-rVW}?p {;o_ b` e٤-3 (|cGK6ܨ&cC|um9N"K87PŻIԬ"v7<*cvpCQH—aȊH<@ഄi]U%- pwovfܶBj{̔ɘPVxPޱt,8s~K0'𘚌n;E0 l#0/ՎGܚPEvi}[+Xmvg JFdy %Uk>R ^.{o&Tᛯ, =KO˔W;ӳ2W5.}?V I.LK4%U;7(3 /bkب:7u#`vZd|e`VQe/c8U7e6r˸7<5Zlp++2BaZH7y &iH.)7( {xr ϋwMY AwʾL f:R?[XG >E㝲Y*ԅf4.\k.@_,Q%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/default.png0000666000175000017500000001331512716116424017554 0ustar luckybluckybPNG  IHDR #ꦷgAMAu cHRMz&u0`:pQ<bKGDC pHYsHHFk>IDATh޵yxž2 a-"ʾUQD l7MD @!$=t̽{;iO%ߎZo >96 kzb&9myz:̮e&//B'ⶴRmlS Ӣ4D mnM]D] `#Ik=loJǕWOxc;$Fsmү2TZ+AVzw+rP2h:ˌ(~Uj?h^(sD 2#-Xv̤`/:`HT\xy@U~DʮsYEф y(qUٙ.Y3sY7FFMO+}4@FYZ(j7>2GW6 pSy]wAn d-}5}@IUz&x8I!jÃ)eAQz00MRHX6τ;@F;woJẅ́Ii~rrar7aE]e W/&(Yyp#V!pevŠ, @œz 7Ѷy 3ZV<+9(HXxph5( IX  >w&εXwG=ogɄŷ"']VZ IU$~6 m˕%@w><"?ؖ H?;<8bƫA7r r܈gBGكqNW[2$_{ͧ|fMEum;ȖF ]Ɖ'gAFu g/o=r\5!eҼo@֑1 tq(A,VPL~(*: Ґ#k^!/7ﭼj`LIť AF??VAM[iS[~5fuAwwV+S9@Ӯi~ۃ@Mse;40?cg@5 wEQ |e -dlxa֪=SucEG#*T4D.ej3t;dJNbe\J?p-_L_x@a{|r\[nz6 )gWVyǨ&Ja 5ʇJr4|ՍfS*}fc :~֭*p^o85o*@Kl!2i5% RAI~Jӯ#x(@#Ko;D%f 1NVdۚSbVW"_]%tr2NĉRb+okuKfqO@niw$%-_~7h0;c,lX؀br J'Vf@yo` 5z%~)?;sJhv@Z936W@]e>uiZe QkSɢ%V6@%SҀ0B@ x𠃼$uH_~ \ cFw= ,|%D2lSj`t+ 5fɑܳWwWZfil35pu?}b!\ ԡ8hXsN7`2(NfWppoTu8T&~4ִXei>4_lH~qŦ? |WĆ[w Yjrʴ%r;8`+{4$&L(UU!l@f9Pwx  7{flBӵAr "0\AГߔ$g^ڗ];ǒA_(˩s_pP~Vj\6Ԍ֬Dތ׫CоUCb|Ǒâ:1bX YS)_MyZ,G 3Hd`FmHE,` ՟;]7Ϻ;%FTo@S`|QW@\{D6B7Pƴ $dmh//L^eW,\H2%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/exit.png0000666000175000017500000000447712716116424017112 0ustar luckybluckybPNG  IHDR szzgAMAܲ cHRMz&u0`:pQ<bKGDC pHYsHHFk>AIDATXí[l\3sfw}$vIhH(Hm҇>TBB !*ԖJU+^ !(q' *np\{|3}8gSGvΞ;9uoޮmD@Azoub͚A w_,1:x;'nZHi)J`6gB1oѫk#G~qc=eEJLoMG-ְ|u!g>z啧={"nt-^d@&HҨjF;<ÇٳO u~ -cB`&skW)瑮KuQM6b!6AylۿxO'&F~誖JjL.:hBs&d뭷R+)~T$0aHcbbs;QG^zV,Niemm fs@Z'jKelB(EDX8DP--Օ}XR CbZ뵕.'Rp`ÐRz^\ AMaH B ! ho4P-6 i;Fyklqx̼^OњIJNffրJ~%5TWif`]75<\>Cgh!po1ֆdBehG# |Ov>H\;3CED|+Μ!7' @z\&<}U,H%" ]eA4&'v8/@b3;҉TOJAt~=e¿ ͿmYdVE*X޻靈RRpD$ w=w.wI0} 3u5vޑEbTMWZ;RKgR9w.vyJpaS4>,-ᎌ`utO!DAe[H@&X.hCl!QDq`r|i 2 QRb.]"BكTm)j !e  02-gfȍI[cc(!p'5i4s/쉝!s%AnaZ]YFQ,OivEy<a Q')ӔnZEl};.B=_JD˘%!۷!wLB vbd*A _~rB`CA&?w]l)&&׍K^8|請%QA*dkrl"Ö}zqRhfpzhv6N(JI ӟ9] W\B:j#r9FScj5xl瞣' M`x_ܷĔKT|@Q d jt=?1q9YY^&{~Tg'Ng'}58_un-6 t^ Fާ߁51BjEXZA#&&ő&}/LP@zޣG&' ed6Kf2۶!'އ_akI=!PBq@=b-'1"y:Ch{шJ%7_eŒUsݸ[X>}olÇ|{qD^#f=/J rZ&A)e/r\Zh~']ҘHqI &BT7j#ʀp'SD+&z/U^ֳONgHB*Wݟ ~C;}ڇ> ` %v:_!j"FTdp  HwxĭZ_OCZ!bF<*#{n!h23X+c3اϔ:vpa>},h?zwX#\uG'ye!XB".P_湏QD_:LTL"ThƤc&=.%s15'܉Ɍ+2lU"ΠygMpIepΪҳ^^z ƨe *M)2!3IoCSsĪ ̉:q}puԢ*)&"I|^$|tt<p0)CUaqNuAH,mf bwtCsΌpDL,Vt2s†5:-G;H+`*ZGJFbezδuG4'yY]h ++WVK_|iJe|7!ԟ9U.s[R:Էi8bx ^cvLQ-"? W.\;⾋ mq{Su!4W['@c%Kk^s]sPZ4oZvͿa@!VqձUXYʊEyR? HX%Vi Z_wqB'G44WZ6f@`phGka+ &=ZB^= c_B"j,{sF6[oAҗK|QTOb*z'liZ?Sԏ"w )74ŒXVy!@Pb@ǘ@"'JaB{dݻ lI{BC^t#c6U8G|^jZ4߭so-fXMPm霅lZe=ʮ tQ;,~3*vKOq+ؖ8Z!ag0 Z9<MZ4eKs=4 i`nd{ nm*zEbDϊ qQOjnBۑV{k*kM!>Ukܹ}sڞCQ}A_mm9_8XK 7t3:J){]_޺Iej C{b () qœLDdb&H7eoCfmr|s,R刺-G>܇b{5R"x|3C!4{gCs-9'x"P)֫>;NmڙC{ 3=J|K z( ?5.kBT}k| 컽|{~hɪa9@WZ=ۗ'yL;Ibn0rEC=:lyfj F~1AEdթ@!h?d Z6JQ]9DŽ# ,]}V}tCKAw>bl5(sCqHX[} 㦦Όi327ed7%o?jOՖ>|Ĕu Kt3/n 2p-8L9ڕ1Y@@iT 7[QOAkcOBYh!dOBꦔP*;lPq(t} {ovInY>&,uz[J?&UeҩY2v%~,@@^Kh _az7 VR~Ikp!9UXC/y5X:t<TCGA VYOҟB! X'(JKxF8sU@7ͱ3jWֺ= Vfqf>Ҝ|*FJL|L׏aBخ0f:/ [GP-GH~sf**̯1, b7ͱ FzY.ް:C?~IEbj7ZsHrT8AR/l/n`,G,+| ꇪ7.jcd㛏{{{"^HRWd]M_y3񾾪wZ[b d^C-Ɋpd5j3`Ӏ A Ƞ4 c`1 q!P"b(AЃ!Q(u$=wG4Η!D ˔u (u4:3A8-vpVt oqg&pr N BpoGZ;?5D1, ::.1S! 6@#Qb&2a {UxNȁ@]h{o{{{ ۻuT$8StWݷ~OXC]9*2D {@ - \ƀ[(4@);Ig>Rx H*_Cp\j & OoB#0Ka!#/ $Q 9% EnG ;`dc\R*O?m5u`c[;NCNc@grP2]8r  !"OV{@ aiY nւ08W|)(VdBʁ<>y wf'$C`3 oQ*\ R*5IgkU[_ʥ`mB`w~acCcMmpsֹzs\Qh MZ~$>8w/<T+U;A{.3XnDOwulA³@H釂pECxP+Ueb \HZH~ Ȅ@@l o1ڸ)VI`^gn~֮n,rz}^Mf~+P ;Pyڝ?x&CprΉޑCkPֹ6UIkj5-w Y_2@erE6wOT8 /ƫI(TFHe~$M .`J`!ԯkf< -,pP~!+TӒ4Mm!vf[K=CfeҔj쑟/+=}vw[gT!Q(W+xfZ6Cz@VJٺU m9A7"ra k64KSQ' Z [8$xVŴHhVT| B -Ax\Z-ϗP*Bd]Y~VT~zD d7R=UE]kX׍2WBJۣ/ cJjf 2]ЪHR#1A;? m}1]4Czʳ b ˔@ĶQMGF0g@ ť@xgk\ ZRtvDm0^'-_mVW~goveUķErwBo<?Fk/W(6]3,-ft-PԊgARռTZFoF ]HH}Vs1A:7Zw s3@T@oy ,k ֙2jZ zSPl9RoL&-|kZ$ [waChhJ0ts^o9"d3?RRbv15\1Bl5W Lzn(P嬲W]m~tkHڦ^X. 56:%)˕ƃgg847MYmBU4[2.o+@*/ !4I_~. uqk&eq [^m(XiJ5O4Nl&z 4_m~mg?"}PԤܗ: iSCy}лsSڧ"`3y^& -v5( 呲zUm }qfӆن ?mobT}]v'Wmilu܍n'8';9pն߶uV`E扦ZCZFOg6kи+ڊW&fFpW-V ۀ:V>>B)u!ڔU"zN{.{NNʼ6S>[=hq:՞04}iZX*OKvܛr=_þաB? f-i7P} HtEXtCommentCreated with The GIMPd%n%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/fileexport.png0000666000175000017500000000413112716116424020305 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>[IDATXíݏ]e93t3 EZ cj^H0n ޫ)p1BZ;vک32_gcyNa!$o;k=ﳞw w ~VVz{$??O+:lĿxw9N 0}qf\Us"bH 9OZG!dYo|;1@QyLdP@U BZkUQՋ~_cD JGUAU !(y\Wkׇj sq=j~UŇcO 5U%uޣ@%ׇ _a \Tc:h !` ~Hc=4x@0Ɛ6޹k`U;G]&1Fc!qҘj R *-Y풦)QTX8fdd G\p<7ݴ{nUǽRź @(5 r*y׏~/<8q1 Q;cffOz]v "(0?Թ_ Wh tFs[,,.2{iL'MSTaxxc cc㴚MT!Iby{o/`JZ$ޕ5ޗɭ:Ŀ9~mZ%":и]{^ջgӧ{*3cTed5z5zfKM[Vc6Zrb!/ 4 $\i{Ϟ735g1:h |+p~[ Bc7!ݶm[t\ qcC)aTYcJټ}a^+IH٠5؎'4Miq \xk,!fؘ(Riz[ؙ(7DQ4?{!UUQh-UmHKD{ژAu>2,vNtU?<̲XG8``'^!Wը*MfkcUΜ9LS6عW7n|KKKǎrH_^zD}.?@D<|/oFkiiiHUFg9iXAܑ# NNNl]|,j U]}S}llll~ddę3?z1]r+⢝Y9kU@x%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/filesave.png0000666000175000017500000000307612716116424017731 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>@IDATXí$G?ggvnn5˙6vx# XH$d"DBcɉ[rbYvdg>LwW)GU/t7m~㥳!7? /wE7nj\㑫Wzzemyp3ΝWdmײZ}Sɫn*fF51&L7J= n #wH8j;j"20s7f@_?d/9. Izr7IhYaϥ` %/,"jZ@u*.h ͞UTuÎ%)euG憚 %tdwEhfTdLm, U%Dۥi e)(bL$HS_#SPumKvt1E+ۦ뺉6@5;G7>OCD!H@BE!G>A̴qwθw9RSDMHHD.\sz1 MDMH*3<~3ʔcn{'TP (EHV?~G\>>bmPS!a\B+=q<~]^05TRY_J?|"q:!D8>>?y˥g*oA3Rʥk\CD-Bll69f9mB oЁ`Cra6OS AB{b$nc7/!eA$ ]""be>4p̄ V0(uTi=4%Ra`W}#z}(, nF%2QiRZڶq<<R4 4]kc]Vb)#)ED1vĒFS4)aURumf|j.#gPSc)/C`pO:\Z bff)]wbՓ?|'y4Ap+DyIRNUWY2e`B[+"rOw9ZDDB\_}M]j*IDATxڍu'xZ޾a߸"%Hʢ,M˲nkƶn4̧0=vnԲe %5%[D/  AbVUqYUx9P'kAV܈xC* """#NR3( z9rFlYF v3ݪz g^T+nԑ (""cr` R4ԈVT8zmM.{ݜWA/',1K҈FhDH#pRKQ  |1Fvhb O`Y@C-yӗʷN£Uk=7} nҼ0c $@Tk~F˃gT3`g>|BоT1ੁ R8&D-xg"fDhffjDfLh&oX CP3`Dh Oa*9Ǻ>A۝,OX_;r5p7|C?0síO9HDDLHHH5'b36Cr \3./ HNI )q.;5D"$@Q35D@l P?ݻDWwT@M1d \YmiZW<6`o96}R2L#FD"$FnDpHɐP̎ɴr"3inSNDg䐙ML  Pn fш\`q,0<^o>́mK3@J]r @?BȀ= Z b׮;*|?MPR&RA@6P)5dQ 8"EE&~`g#F[MHɑSSu:ηk$.joS\ۿ}5N1#e$&"Bnn4tddhX&Cgu(ڎ@ŊJF!P53P0@@%d@43dj`.@Fl"bt F "X<ޏs'lq/R@@"yCD ư2#Ue@l@STyn@g2?ut 12YtTU`f`FHL *as6ZܼPQy W_0wJٲ,|?ٙ9'`(5=" BՒ|\D$Z q%085Qܩn;o*<;bth<$fHLTdODιF'ƞhjA2 g$M~qR=۾2~_)Q4*  1Y6h(F013&̤)74OS3Oykv3 1Is>&e33L@Q`V4]T0&!rDtfG8Sp@r,:+V|ӧ7JƄ FLD[B & s.ϳ}ۭWNLz)FQy΋"d\@1!16+TLUOlGmBpL5Te6v ]@X{_ 2!qHɃcCt5hL̴:v ^ܹ6ӳ39AC!JRB2S" !Ę C:!DC}22Ej_D%\ooFSԈTŒAΆ H t8vf8!B4SCUaaUjE BTU%j>8!YZ;C"3btUU"cFfE@DQUdt#@˛q{;rg&C EFɈl8F{\P 0\'d@ :3&7#wsk`IszSɧBQ(%Tjqp7"!6jgr}%p=G|7ZeɌQrc|QMTHU BD$50@(!bJK߫ٝ;'N}_2"G_WuP#oX@J*I @05>rN;/>uۭT:Q{f?*e)MLvff--m"B,Ő$f*j3Fd@X@U\^_k[ݩ>/-K4@֜(E1&G mfhrs\땾svRGW穲L)ʠ*W .&''xw߳DL#VyD%i #w R++|p'>^KT(ŅsY>L~  ,:CРs*Q<^D,\/y=7wؽsjzvN6hi1"hVC&&S$f綹ΓO>Sm[ؾ= ,@|55x|N}'s]躕eB01,4"&b~pn@~c1CZ^` I;E3҇Mn,jWӚ g!"'@b*  }Y(*>mf>sݷyOp~0TG; ZF#H'![V.'d(n} z.UXu%/Vbvy;__;oPQH2 RUF#2l."R 2"0sȦT#{795{x̥Ko?7ڢJ Ѐ:PP PAD5*6l毜?rW_$lV)[[Jt[eRֆM^%~l: $.U\9r뇏=qˁ[nC 1` =5̒acظZ N|~Mefg:8y!!) NZ?~teáO?Ԛ߅ò)^/VN#ׂDȀ9)رnZN%vCD@Cj+@d gB`(\XOjݙ.{$G.&vTqkD{\'2\[t|>`f~%HFlj2:0nBJ("DlhfT^ɳ۷%K*Ȁ mt=|#܄"RRX!ru徴g'ڋ-jbgf*Lc2"ԝ.ܠjlR5uܚ  ؁ZUzݙRI|lc'FTp00gc2 rAD$* o\\V$TDfGNѢsH'j" f Z8ء`$8J@CFe*&Kp`EеK^\>@LZd: {"F)B ǀ hf(6j *gI؃$%C IH^́Z  76HJv|dB"JiTUUm;AUSJD䐈JLM̶b8VUt`lrb'-Q csfcsΕeB $CP$K&)HC:眈(0IGDRcD,R4"4I)fY&"M:Tey 2F7Hu 9I|=1;M.{0ㇱuoǿgu Q@!F]'01PlT$fhbLL*_KqI~m孎MUYw:QLUbWFF>d{E$9f137:鳼Ut~U{*TZKD @HEuѡoL[ ,g) =#F*&'0F1\q\+0]XUs. AEcC)dYW@FCƜ ZD,*Iݸc#Hó޾kSE jȅZrA䃱#~hK?2] A(̙E0TJeIZ z}3K,"LS$s.jYJɳc&s4<(s=pW6ʨB9b >Aڔ6-t͢"6zRzﭷWWWggg-y^UИ=;͡eU&4P$0K]|z?,,˦GcbDæQ]\R\\gnu\mbB͌E>d[G2eZGD|ӟ_ sgrȑumWe3k|{NA1]^__<?3T; zGCQeeƠZ%䐐y[4BFSaKd:ҦMHMfCWV>t?{MMಆʮcd-tb0`0)zcOYz\]q|GɌQ`xa"Gdfة/zU/KԸISmWZ45:A \UY@g&cELSgKQ5ng[fZ22Fc43P54EU8dJW 6ˈ"4smjN̓` w홚ho<qW]sܱ|ʻd|ZJL*nuT75 ۝Xy< 7y) \+mk]X5<`Jlܹ¢26SS"xO)"ШĢ5_ڝwW{ZGIcUZDd1aLh+[Eg Pr ,@a<Іi>mVVB|c)R߄Kyʊ8ޠ* n[ehQyM#53BDő*z%!ikr{ޙ 8n-h\6PCm4Ӑ<狘hPUd= l ?%Y6`/._ڳITgKK%F1@LLUb ݺ=G,oM-^ꇍ,H9uD p̭E] SyU%-Z3YUyU cT@)%"rZ7Qh1VIBϙlXm`nlqz5mjF417Cf^f*FFI0F6q3X jR>'̱FB"9s΅N_.RkDTkgtd@7%ػҖInC U4,L-'gU+(ZJ \Z9Jѩ)1.cNkT.'(j2Q Ar&)xgCF ϯ_hO{sP^%a@9Un؂&` )fM zDMrJLv-䦛cX:@S/5tV8s ykvAX5SkKI Ѫr7_soa~yeX-B@s{?N#keY֝;]*-FH$Ci Tha=DDjdFΓ#3xWsg<&g;R@q΍F!~>QozF“kf@QIՃrɀLNt$цSUdVm#us%*Pݟ->Tպ&Ps?y#cِ&>pCwuc??hhmٰ׹񎚯bTQS晧g3L\ ]}TOD̐M ?^?!Z<ȣ#w=LpBSضxoփS7 ղ|CVV`07ɵn9K0# _X%7@ :_^%gH4Q%ɯ?:;&FQ!ss3S^xko۷cRS0&03ܚ" 0fշ׍Uw_C?趲 L︉\A=Cٮ.X@@f7Udbg.OoG菿vH!y˒٨̶gxݸmVUlruŇjp#y OE{_n[dQ jj09D"8/{_<৿.@Bu֑S3Yͨ'{iay'KR3&60KATɷ]9ʣϖ넊NWKQEQLQc#i" rH ]ly{d_~={f7F5!; w·c49:sݟO߱kaqCmDr"W@,;玾fp~6[TZV$bDSD.9}?c?=pp!o%d,¨&jy@BDq};n=|k:+O,/.의JU|L.KFK^'/LvT{魝)W" ̢Ff[nj[&,w F&&(d~K_5? j҆+EIffvzˎ}{Vl܋OQ٢әB6If(1']qӥw^쓿|iZ ,_{ZDT !JD($zMgKdzH2 @ ɵҎb RWVlwPHr)i(u9yјqX6z5lg~V2uYM4]_5'ؒ3 9kH ׈=;ꝲ'Y>Μ =So-nI Z+Ѧ?lQS%#3lp(XU:EY{_>]{g4pV⢭Z(2q7j~W55Bӝ|]z]u& `3.{UX[\wM#wtEqM|%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/configure.png0000666000175000017500000000162012716116424020105 0ustar luckybluckybPNG  IHDR(-SgAMA a cHRMz&u0`:pQ<wPLTE̿jkgSVSޖZ[Y897opnopn+,*kkhlmlxxwhigOPOA@?~|665JJITUS|~yQRO𙚘rsrxz{齿مx{|:?Aٗ<@Bjllĵ:;:mnlXYWege[[Z+++RTRUVVbdah]LtRNS6օ /7J  /`i ׯ}A!;D!q8vY $} bKGD|Ѷ _ pHYs^tIME (NIDATc`F&fV68Ǘ!/  DłC%$`ҡa2QP|tLl\|"kgdjjiY9FƂP&yf0-, m-.)-G8ѡIDjW7$7{xzy#q%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/down.png0000666000175000017500000000234112716116424017074 0ustar luckybluckybPNG  IHDRw=gAMA a cHRMz&u0`:pQ<bKGDIDATHǍKoU{=ۓID " DaA,[Ă5B H[$ذx@%Xv3xfVy8RK-Sun ,"ZD V=bT0 Ցol^XQliIcZF\ˢ iB4="<.ݢK’IڝI$b{k.gs$obƠn⪸\htb( }/qsy Ϙ9$UDr^y pp7mH )ZN2p'k+w΢I^^sfܓup0E96t*t6&e =с\܉u6'䁕֩(n&"nk R >\0Rg wGE͔ h@T]zApӸ^IĝT!;:' "HڻV(m ʾ;(ŸAw77IUpw!9 ,a[Ejx_\ B, Q0E_H>uf w7eppD]*;qyYJ$sjcA7) ז;cY!H sgOsuWunnm=LXt)/"ٲ7m!Tss2G߰vq^.ĵk2G%b6}0#^wu>dkz^|LgT%`KW't>(Aru6|թ*& ̅J$--Zazm:Eu*JX^z}y?= %FZm6KNe}Nި/du'6=J={.Z @I~OBJe oW-1%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/okay.png0000666000175000017500000000355112716116424017074 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>kIDATX[lW9s9g⵳NNDu%( B*P<Rm%oRUT P*dU ƅVƉdۻ]efw ܆$$ב94g?r H ] _%x(Q_ܿc+:շEܳob5{:a;3{xȆᤢJd$c$4=W^Y_!gnFlN*,!'@QյOxͪ:Ow5 KIhdD[:jF %=i .LӻBtrh|K Cw4*JaQtPBvD UͺNndž̙R/*` DVD9ԝNsQoayl9ñ|$2rȵ~#}={F-W,qd]<"Ԃ#9b6k}qXԂ)jQ#U0Π: \BFmY77` p5Pe"8 7# `—gPQ,3$m"W?vk|kB  7k xݥkv\a>@lنLXԂMTc Q1Eqmu%ӹǕv<"W:b fPТZZ%θ'-LxU/$Y-mEc 2Upb^Lt3-;v[0wr)m嫫xhgJs9$bM0 ӳs(gvםVT);Ȝu' `O@ȗ7.Md b -#;=+jf0q_ڥީ;o ||%2Ȓjr|8}^4Z̾}wwm [D+0/̗vŇzI 87Ȍ%KsԶ'u1W.,%$M;#'/цv^ LV]&70{ 5_pe^-5G8uŢ{C3O>xD*{$yB>iZI8N%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/cancel.png0000666000175000017500000000455312716116424017361 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGDC pHYsHHFk>mIDATXÝklsfًY_pM!!rª PARJ"w+RjCTUDuJ [v۱ٝsۆ'ڳ3ߜ9ߜ.Acclغ;8q;9e1^w# qgJcWȫM_[_<ē@s<xsˡo$}/Yd.z:: iRzwt%7oF/ޢ  K$?U]Xs̳0-k@HKt9Y;vDhhrUTS N@+#Iow߲PD HgӡcF+Zǫ @rҡzwu=FJ%x|l6tR'z!YW37ܔ~'Zh$,}mzL=!7D&Zݳk߆*^VU`""rL&NO\V$z[%0]. ҜcKsTmqX&yc1lb߹;-;r^YPcrCxVڙ$=;uF.|C2މ(8N}ʼno?wQg;ՙy!fg Yؼ;6>v$*eD:*ԀqxBzNs0>\9jͯ$?voUdumUI%+Ql {!@sT\[* 3ş= }}UDi*̍H%K6B<P$`ؔQ @8|M/#!!t0ZCa  JBJ=8h'^]PQ=m7|hO4BO+:kt@ޙC0 07^c^u G-ޙ0T-Lb5 h}a2  lTԔW,t.KiMJE≀n0Ww5"M|40WVAZWkeoȤX 5 V$SS:& efXb}؞m1yUCZ @6.I U+AZb"ABLaWeRMAmAXcLͭ $MJRd*LhypyRAl`r0ۂ m!H8c` d_.kW/hji9nutmsfZB(e.N;sPAS2 Fݞ72 @æ-=|w4>l%#W(E5c1?um{Xe]ZQn K*@/Cxk/)HĈ{Orn]UJǖEX[;Tfy{q1;F'ܬĨn 5E lvMώKq|pk[ReO!"֎kcN\+>-`u[RMJ\P3"`viX8`8 h7)|Ա{@1"Q[0X̘5Q #!ӊ" t *Z8LΏ8ƲU=H&arUGnnV"R,\?́.oF?K7iSO We1*#9JD?zK[W+/|8u!o⛞ycSǁ?,Cy ݳ:=szZf|blP71nquNu2UDU7{> G]3z9I#IDATXŖ[lG37=Ƿ$N|;v)@Jڔp+4P *!> J<}E 4Ucb;;F-J60H}? 硶N?7fOt? f+qV>w=?9vx7;cϽ84wz5p/]OJ\G 3:=x_2ss2'f':uLTB6Gf~wc񀶑 V#.3gtx`mFgƏz݈1QبBwo1@wxz|OoKШ:"(FQ_fг+?}. νƽ]pPO:5D#a5dB-󿿸>?X{_RM4F0Ab5ivu7oKWDNs3Matkcڏғ UPś%Ј!}E—1q izHq-Kȥ<7?;;+7PK ȨoIg؉3{G*lZ )uAw%x4ĝ>9ZUZF @.BB B} qeDmԺMk@6 ZrT;7ӓ煑L): %Ҫ,tVa-Xկ/M;) { fk_Kdk`pݴ YsBЖ^ &sPns54 az$έ7}~pTqUѸxM\3yxYPADW!rATvlBE`9MCȷ~HId{PדH_""Sb8$ Md$6r XBx9l.͹~klQ$R#eb$X!M}s,XkmzY1c`Vv5瓳Jc+\U7^{  2Y`i} dJ1Eb2i7@ag%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/cronView.png0000666000175000017500000001316612716116424017730 0ustar luckybluckybPNG  IHDR #ꦷgAMA|Q cHRMz%u0`:o_FbKGDC pHYs  xIDAThŘgXT{* 0 ""Q, bň55VT!7'X0P#EH uhg̾f{\oyr]_~{?޵hW:N9sTϩr~,\^&/ӥv{ԧUiw>u҅\MЉNyg[cN쎙)T{po1-4}a_$~Ǎ\reȕW}ah`Y"(,?'2L߲MTV+^vV9o'{@EU$FUfEs~4WMcL9c+?_1ן^|= 1Q:3 55o48H"Ub3 /TjJߟ Uv@$fP-zk3 `=1t"n+h~۬nGc9;p|`5V@d:`RS8uu}Axl0dnw| mYtyr% ^_ϙKE"r9eoX@N-=(<:~Tse' gbGп/-Y,\lۘIY%ֿ[L&3 'sS݋Xb*Lq*7m<3bv@Uѱ M^:ySsγ8Pv`yWྖ*S݈쩲)b9t%6pRd t,d,:ʟUYWq_#lfSBþ2oxTIX'Jp8hCcTٹVְ  wXj"5Dm~6M9)Ã8K:?{va#Y@N9?gw].ER?1r_e%>q`J3 P<:Z?})In(}Saҟ\iv';'I8M t̞AQEQœ]9X`3ҍ/+[^vZyl(vi\{`/N?%-~]'6,o>-[bzg~Y2~E֮U@8-(ξnrgwB B7fczBGEHфj vf.y{~KM ج51oR}G؟b aES'jvmX(ch];v;w4KŷlSJЕHHmvh+_':U"HTd߱ٝm0&Q*+nW3]Gɛ^F/H"~4"Q`I&֨*-ocQy9<+}[YCkh{/i[sG*L&]WL5+0%}ԧ"]0ckKqW&xn-O;tX$8#ju uIأ9E&ԼR My! - "β̦h/mڹ5/Ȟ;#]7k-Rj@En ԇw|Ǹ*2uPJ [6UO厒sxiر,=ǵ8qyV'E!+p'q'3S-o쾦ܡh+-/, lp04X.V*UU3hps h85uOЮ(}а %S9ZTZ{^m9 x!{yr7p+@xMJ@o/ Xohmp,}QC]yΏWeL^x˱ Hr}(pEs׀MgF-vȩ͟kWlIμfcEb^y@JTZg&M4@%uE!UjX h y|\H[wljW/=>-Tpxuxw~-@ ’nB"!#JҬ3=k&9EnLu=QA\HqxWT{.Sk>o͵fk͎>?v'u8#uT>'_e"0 E]7 P*zTLFSqg[7k.^W,ԧyPb\Gz~0يyG|/\z*?(k%Gݚ91JuZ^i{||vP D _U?Z8f;gO{k^,|j,?\d'r1^@%w]hHk8pHM332G,& s&\\:6+LCPfY(\o pr9f#\C4m;gb?Aij6v܀>.`v%b#VD(թ,I^m۸=-UC]K>L9oSVŭj[Z2W9v'z5[Sۺ sFb}CaܭlY ǿ{0CYKx#ψ(9Ei2/U|pqJ||;{d4[^?(jC 侭Mu]DEp2Y(5>RIK sYns|%PLy m ,#Lj9ܬ))myՀԥ}pwt<@{KRC)"7j2#ILgtW]{y+2*fg1Ζ-VynvA`f [D/BHeX|iZKG9533ui?Hdvsm}"LU9 &øC޹}{SBk[u>pkmp&Vu=ɸ'H۟*NrH`H2Wi;\yk0sHS p#;f^LmtwҥǑ::gNHsGP[n)rm`~fIljU%ne_zGӞ 2m1R29 c8XMJFN\yISw[zXX|5H2Z#+c-/..Smut4N6΄״P]O3ێ5-8|k6nO@\v)aڠӓ>gI9{ {T)sqjYubg׈Ueq$)4'OY&v嫲eZ;qpE^XG(hښUZZZI ck01]iևqy>UF8llGf̨s-^8hlݥm[oΪ)IԮ{~2+ĦUbk#(:&ݤ_)lv-t"n͟M$j8?usʺ%,72#ha. ldpsb#-^0~y>O/aO,[#951!?Фb$eό45LiDjq6%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/duplicate_task.png0000666000175000017500000000152512716116424021124 0ustar luckybluckybPNG  IHDR DgAMA a cHRMz&u0`:pQ< PLTEϵӱսwrݹѼ佽Į䰰砠񜜡tvEx o n o㾾í꯯]L( tRNSbbɄ-bKGD.T pHYsu85tIME (NIDAT8c` 0A+// b3BHXDDTTL\BRJZY9yE%%IeU5l 5$%5u)ӗ3 "ihMP6zz& 5bVX! 6lv0`ˆE n`ώ_#!3)p&4+>dÃN7w77wwO/o.lF)kaS  Or!\x6$M."H$MA RŦ;. ⬹ȳY,2RS%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/right.png0000666000175000017500000000277412716116424017254 0ustar luckybluckybPNG  IHDR DgAMA|Q cHRMz%u0`:o_FsPLTEOOO֒666ՊӇDEEHHHMNNPPPOPPnnosssNOOrss"""}%%%###%%%~%%%&&&ˀ&&&%%%̏'''000󟠡阛㕘ݑ׍Ų؏̹ڑݓ▗ړבغ}j7~tRNShDd, Z/ \[ ugU0]<97X.bYW)[*(b+ -i CpfmkPmpjsQwo_O8@yhtbKGDH pHYs  tIME (NIDAT8c` 066\gcdBg#pEuB" Qd6Bx}$XY ,FV. eBbs!)ꖕeG* zzD9Ul U'M֐҆* Lӟ6@Ά*1TSl3s3-l 9s9Elͷ3^('Vp<%K.rqu-wd+XIg5+VkVqSH `7Gl "r-[AVرq0+v:2aĤ;Sܳ$}フ8+=;-!l<ܛdIDATX픻ndEϙ= k!  1x6 W EZf<]EpF':o8poų~vl -LHB! ZLBcRY_}ϿQg||m:^}X"$,OV[$|I9$XJ>΋0,lIȀgQv7ͤ#Kh Մ [c\J=v42tx%--;83hk)Cz KhY2 ]t?#3oҬ_rXz d#bnN#GNQPCuL١p?BwX{i͇NܟSl46=q~X.u Ӳd,fUhX!'fC H8uc&'__zz/;d,;x#1Gqp;fcDL|t z$߽ Kg?,3/Yc9VzDmq".`<v,9y]B̈CF$(%1 g,Zv2: s#}Xc^`F@+;!3$gB\]lCēQaOPE'%DI5uԉ3R k Uօ`SM J DҁeXi<<>8ց3SW EDyH /xK}QtSgPh TwBTw] @H.ԺUs-.%o"LHFN:ejRqN2UBJ l16ߤ7.MWHQiyQ wo }'bۚI[bQ|V=ZeX/Q/a)b`Ml& ,F M:x䵏vJP3|dxl ` ۬+[ŎXq\c4}9k!>Quv)58ۇ0l h|O檸Q'E=!J^'eC|sNn`p; @!3@P,츃`Gd" .ơwXl$_WZ!PسgIhPBVeN4]9oVM,̘(+ (h}CdJTk' o,#A'#/D-K&AGj+Z`%QIJ^͹SB!A>Q2߫:!L\m@h8kvX m %tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/manage.png0000666000175000017500000000553512716116424017365 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGD tIDATXÝklugfw{%E%EIn,[Ɩ!ۈTԴh6*$&@Q CF6hbpܴU" 8GJҥ|/wwgHSJF;|ؙ;̜8$Pjh19@d^ _ulQ@/ 3"N{RJ<Okő#ﱪֱ9y8kpKR)(R.UK44dc6> 8Wn>׿ƙ?9:?s>:{rB&|~%LQBE,,,P-RTvpNҾʟs{I2]ս ,/0X(?}+j]8gyϓ0pj$ZT>o؈<Μ9˿^+Ϳڄ-Vkoq9\z`vvv&~xȻoקy_)J 7vwogӭ]׋EXMͤK/sj4'On.Ry؁|1==5 pT*[^{K[ˑcxǩC<š ~t\6"07?JC^MH+zB%is3nxdf ΗtH׺e[W>OZPQ\#8gYŁMJ˷p`)vZf#j u&+TUx֤3>׏Jo4;4555or_{}oy_΅ܓlۺVT*e3EJ2924\l&e6UbrX PFt{٩yo߾Ԕ۳ys~gԪFFh܂ ZȵHgHex)0z5Z,soc™)b5ڣ8]&_B;w\]~?mod%9>6H- Yr5~+mKU0ir-|}N0(N䚐BXTy?^.6*%cV#GW_y8Bٱ};> #cc;S  LOOQXcO.g7ny 433RZR0M~sRjZ<]FVo'GcoouѹTλb۶eŊن&|@YD Ƨ9~So"V/9gp@ >ֱޢyo߾ʞ={.=zS?9~b5%גczf"iͯ$C._fld8QJUc:[NFK&"e[|mh 4y 茣gbrrکR z&IZL:fمzzƺ|:jjP2_٩W:W3XIsRD& Z s+A҉R*"%4JO;G8'ΡƗˢuKi y`b)2) -"h+?~}-^bZJq[%tEXtdate:create2016-05-11T04:40:25+02:00ո+b%tEXtdate:modify2016-05-11T04:40:25+02:00IENDB`luckybackup-0.5.0/resources/description.png0000666000175000017500000000362712716116424020460 0ustar luckybluckybPNG  IHDR szzgAMA a cHRMz&u0`:pQ<bKGD pHYsvv}ՂtIDATXõmh[s%vb$n`E&J) 5 `'^B^(+u$BP(݇ RcK>شX1Y)uŎ;~duUyq^<]tsG#"100Pr>/.."t: `0bZ```Kd~ݽ{I$a8M;w(++{򥥥3 B*MD "dYLNNBJb͛7\RqF[YY͛740~vСxjP(Tz?7c >%%%xCp]v?rp&ɚNӴ)]J6OBP1uhmm0N:X," Η mii.]zgYPs:o>lذ6 555֭[xt:)$ZpX?---hkki4M( q <0R.P]]]CDDBp8Rg:;;{զi)\1#f-_\Y4 efzյBb@ K)]RJn(JI)%UL&l_8k+ s%&@ 00<BIDAThw[LB $$RBWi* ( QhҔ"!@:!!@ IHHH3{>28gq{q>x}}]Ŀ+ʃvc뽷40okkP W kT{Cۢ^V5~),|U-*T~qo?ս" j\9??!/X6QܡMNӂ7 sN {rix)L S*@%'ey|D3 F?nu#·Σ?[YFjQ9j[U7�FYn@𼞵EPt䧚0001{6wkj >:M&gϜ9* 2yWօ,{K97c? 9|Nݤ_Y:;|H{ʺ~#0yxٜUSTpsm&qB5ϵ{Wנ^[!CN{-^PoAu W[-AA CWׯU>Ԡ<2f dFި*xDUov'bj; _�~{ޅp&Lga~0iܱ*;5$ pB5Y7}8z/y@Q~Bn73浱?z6kh<0Ԇ`SSQsN;6yRkFh?ZȼȠvpVPe=Z5EQG~ȻGxT_f�!WC ?>|;k_~Z֨^poW>K]ꣳ3 >`:9YEe*$LtN^Sv_ /F0֣0>׶f 0[ l\3fr:V&R@l&/…A)꾊k\tVm_;jїGvL5&8}Yo T3quLߛY‰ggA΍,l[_1N3W. -'C*uQll.g'(7�߲T4e!x >@1ʫ=^VﮖC>5T.*BV]GZ?X?-Vl'_iOBċL.iB+n$@Kп5W&u3lxݰh?1P>B)P[CTӗR6xt7$@=)C>j= `p{lB;NQ/D x}9>HKh5ڞO`{WTW>JRف"mw'mr׹vIc~U)e}kT<^dqIcE}dmN5Q:h ~LNnO~e=%aVklYJnj #C=xR܆m+PSOhz$%FuuPR1;gɹr *D uf%IIWgw?^NYo~ٕ!V=dݵ GܡPJPcåf_aE[P />68fw5OV`hl @m q`(2]p(@[`vM%I;RgIL}�馔/e&D7.Ng)b(2xsUY)r_a qm+Z=\X lR?iԽowJW?dpfi{ 7 *2zMa5UDn(7陲aki>,\f50:b0BtC�<K?9hz}h݅( A{ Q+UIFٓ}ıkH2cFk@rE`pL=+D7ݓul3n�N&�bVA\Y#I?ĵRr@ ;raO[Vo^ n,@'QK0 z~ZĀ;`pp -Ta.Vm y~Mw?#AigrL,!׀K e XS^b)iWqbks6j2͊Y2܂ F3,d.?ÃřԁqW X+@(=ڏHD(h4Q$u㼾 .=JmGlm~;J皞X[[;[?|.w@|,wP@)A2)^R|\-h^F&^Hz0V?D{$%agW D+P'bA]g.{)ԗ3EkP E k dO u%)Ճ;8h4h}-.M°B.hn]}{f)55NBeޛgekKpE8dGar> rS[P6 ?xؿ$V?7J/g;00^2v ͑PR5AL#ГR[G0C= o1] 1w�u45L~~]^=vlLAN8qU7 { q⴦]:÷SAnµfw:j*v zI}SHe IM qt r_HJt% )9޸! ZWh>m΁L)LWF OV@B鐼7A.' v6c|P1*[V&UM{gnn5G[@՝lLqF埔0mF̔F7AەM= s@K iW//E/K3E(exHx~"s73 Z;?% zx�!F:xXj %5 CaHd! 5|~5E[KJJKZl6mb_{ Hm{kpߥ΢qv٘go?]z@vڤyyi$|vt_/tZg@M%GqJN D*fo[H{pɓTi&h dWZ;@)V=cP< J'dxqt킹-?ZYiQ{O_zwtuŭ[n.'BѯZ٪Wп0Ou]IɽI1cXCm9P۪r |YUw2eϟKkCjs4BccbƬ0=&FTp,,X1~u+%BOĘ6SV{*rVSܐ'[6y|Xs6E/gc3G_aߞdE6rדu/dCb9QL?>4e -]z#B#EZ|cZmvB;١mbS_(ydr|juF>{c\$O-[dG[s]ƺk'g"J1P?iקAWuGZ芞G[">T[PEZ>&{^pۃ/B}␉&ʪ֩Zjs(PΡ'לŪKյU"~T׹:_ D&Aw75#5Plw^(_xhZő\xxۻ`kDa J̤I3+td:2c&ph¡sVZj5�?.i K8.~nIHM|D𬻕q H#i|+>gTIR (pH7қR8zeWlOnphw-P'@qAѵDъ' eKR6777")"AFFM7=}˲e-VZdK3%協7R�43}E//A>|/7r"ŻAOVg6Cީ읧fʗt*.&iXߴxe{/=p+Fޅ' zһһ<<<@,rcǦ/]Kvʴʴ4ActôEiQ34aa,G 5?]!~�1!9ܼD�U@o*uo@Jר O?8G;G;G7M�w; ?/y `]ںuin{6ۘ9/hآaͷ= .%vյW^�)V&ĩ/>Af+�7(p %^�Li�k{+/OE2@ leTo[] edaTp Kt iyk_{NPf4\$XO2pLh˲sY{_80-(F}�qcЂ֞}m s9J]m D\v =a-2L+k\0*zk] p(|u"Uv.`q߬v$ }Ja䓎׬vOxBZVt.fɩUsLgHY> Q9qXl )I-&ۭqWjuIɀ̸"߃ѽ"!q!o/c֌Iג@FsWDK} 7oû`{1)x斖`|2ȘwHy%֑aρ}w[ O!h̲M7滅w|Ab]_Huí'+zBm 暦#^H =QsJ):f=Ȳw@T-=[MA}l RS@ Q:' T)Ur@ƛ] S!頌R 4T^//ib{ "dž3:-6iN};MwS(_MZh7?U_پ<�m«LW0g =+,j3W$GY_{D mBt۱ !}Nlak6D,C*`6d3 �h%*W%0(A*d'" nBౄ^̀NM/*Ai{ҷ~)\7;OxSm{`HsSS@7Pe3v �#(vBxMTE+JmZ"�)2@3X }?7XWW({}BR;l nDYSj2,[.0mgCtG_eU~Qamm֬k;|*(`k]fV5V Xǭ`wFy=l3նǺb/c%HfonPWHɽJ9$NdbAr~^)|W ͤ;55\2iT wޢ/yL-ʰ{YJ]BXENUKS]"p2Lɚ=[OxYzq"J5kfXX>~z`nn k,X/ږYA]KvPce+zi2.3,.YE g~OX�%ksەֆܑ~p_敩@,/C PAY1̿ʬ&w6WW>)r磷F_q*W?Lnl-֔7 [X]7b)N؎3b.:Op'"z c!+`'1ϰ` `0V|PlVOcho#y<{_Vk{=lZ*I)=WٷAp 1FYhsW :.V`hWJ=6 {p0j�ɰO,Jmp<*צo_ ]m(RtvK5.||8,~%aj񃓾�G35Of}=2мV&2PZi..3wo{M֖t-(]%�?^ A,8qspo?Ib4N$ꑯ|Kˮf(h. |,< 5) @Bd-Ͱ�̙l>Pr+gAkt5kXP'|zs~s z[ `S@j&5Fݨ&Яi+%^ MP YK@#=j V."Fct <Xy"wGwz ť_ڱ~/AD";/&T"DH D_$y7; sV PގW`֑ȿ@ձ&@ߚvV;ޠ2Ay_-:4 Pq6pd{Cw(ϙdqr(p}D0L1zXM &ZZH/fj̷֫)k7&ښ~t;:'x5 R/6 Q @x|瑫DM(p壠PZCx.JSkASe0D3?\5o.�{`ø 1�m*9? FG4HRkP5UVh(4mHՊ;o][h8[um,S@Q)Sk HneeKn ߾X?T Dm otڛ~SMT0XnP4J U[DGFƁ9ӜiWr%W,wQ I]$.O-!T4*x=r1ˡBQ5#tA3G;A-wFmJEp~mKT9 NA$( Y/kY@D`8T(J86:6:6,P̧ccӶ+=f۵%ГՏv:)EzW}W _ZiO$* Hc%B՗@;-⾈-?o^+RkHQ`كe]*A}+u&|.!3CBb)h%ZVB~!~! !^+zO!z5=Mv\m6H{M-QKP7BJj%!ΦM;.i }NϺOz~n즢uz]* <;_ �":{\ 8ɐl| Ѐxmb e8#ΊiF:p"y絟sk̭yn5KYRmv+=5ڧ0G]}3w�72<'O-yO? 4���%tEXtdate:create�2016-05-11T04:40:25+02:00ո+b���%tEXtdate:modify�2016-05-11T04:40:25+02:00����IENDB`��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/resources/profile_add.png���������������������������������������������������������0000666�0001750�0001750�00000012647�12716116424�020407� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������PNG  ��� IHDR��� ��� ���#ꦷ���gAMA�� a��� cHRM��z%��������u0��`��:��o_F���bKGD������C��� pHYs�� �� ���IDAThW|wIY2HBj4"*F FQPZv@͈YѠvTm #"~9ǹ<ܜ>_[?iJX_{<ȁU<˟HFxL%W5S_éu=9f.X!18aOOߴy?I+f|Y7X@Yj#iN ? Z>E#ݣz*6,fhM|:L m ڹΏǶ4Dݸf.ŒdfWe 5w/Zwlקum9abLs:j1u'C G#W@ʵ;Xh3BVwU7`U8?£ce6ZWEˍr1j*\}K=il1LNP~BO1m׸P1T͟KQn\b3ieMFCT'o&_˧[{W_z=b\=ƹ,CaKyEաrbPBȬ&xf\Wn1詥{ld`4m@0ʵH}>&[KklXS(fR"b<>O5wKllG0cLfDc WfM3-ݳӔLRscs9Nv]AϴUe>UF Q`yj#O:CvZXd>Wߨ*V{, WSMMrD;Ua 0'a0G\?V_41pF~a[4Vڔ5ITj~EF HN e.xԛ x0,r?!޽oY-Ca _)ʳ}VP1|NN)(fr:Z\Es#˱D'#w;1j|桥)2l5^E fW BgZŏxR&hfv]=Ո�g*I6]PQUoQnOD+pfVشu~L3E-ݗ5r,.YCgf:c1S0F BY_R dzD~TOf˻Rl+rk@IM6𩰉l�{ ;9j2]9jN|Jҥoh�c> s|BUJD{1 E3ru V#=+tCM0fs1/PkF?`*tKu6u91,�kuj+OMmR)Kz~7 b{|%ix@.6U� RT 7 !�\mW"wES͔TA`";˹�}zBq hW1Pl+*'rmSs g/t=y,}T]ޡש\xhVX.f�-X,/e&,#a#t@*ub)D(~j�g1.nK;蟛:` 5yoqn&Sdo0\V1~ k4'ȄΑYk$ddj ڡX]n6XʷFʥWas;GyZήF"#w"/:0ŮU㬷cm(M)2*Af\/cL��,@,Gv ;.b%i(�w.ԎtNI:mr1䅶F[lq@*`�0SY[͒Էj>!%~YF/ͬ?/_VyiZ=*֑G[s ,v:׶9":(렶*V^d f_| 7A�m�tPb0�:%\\OkzT7g3 Wh6S@':-nSgwQ.OP25�= : O`q=Yuu[sU[v1GFqJv{w4urDBwО:PBлAHiΛ^jP37#@IN�)uTM�= hx?J c�mkFkJ1!bUKC˲ka,>yL#xC5YDy>7^$M ?tר ˲}bO }̬1 ^ v {dGNާIhBI􊽇bp. B4@8qLg;j+Ԍ&r(M嘫;D<NxMN4BS@T_A;ȷOoT_39j{c ͧGuMR(! Zi`Nh}zA*N^& QxAp|>;{yfLsAa i18~x tOb4i1X iEY`W;FVtB#'hZsi<WHtcyY-!cL!*=@([NЮ'(fS g_=hӹd ȗBht !6Ji5̃)d_x6XBe% .B#~.yO%uIE׸VjG"qPߨ&n~9l��p, #vS!4#1E*'!M`3|˕KIFkK"#f]^p4r33f%pd){L@!+5buQPCJ\{d3>2 RlAiߏ<G~uq5lZ %֊8eLa4+X8$Ie4[fQgreus'6w en)RLbO(<`> .:Rꉥe"P >j$/:FM SoQnFԞ?h6Ħ!Hk3e#qn8K]q E >ZeDhkrx 8n h[FB%OAn+i,Ync>|eӏ"2!?}fpoz_9||DN�FV/wl-6Tnu1z+}4^|t6hٲF^ T&BZRXr+<@y2FX+umS(x1ҷeB5P"i844 MQ.# XE"Ix0XlP0�jp]CLg171w ê،=5H~řGȇ_Q>�|oոT㬹yULy`i.t:,PJLeYm(pLa!hC\bP�Faj;ey穡VET,z4Ww' ڡTjBmFWjC- 8c܏ZV0 XfJ\]6W׃&XKao ofSQ]}lnL`@ n/ ��E&P3 jyA.5&_2}G9a7f,i\'Ժn)JL*ށFIYU3e)6YҨ; H2ˀ#G1lp+77/[ kI\v[;YgYD)7�k[}Cks^5%cDwHd'UB-PouGUϩ .^/9n/=a%ǵ!T>hY?Q~W޻+t Liv8ܧ_[zZ99b;tWܭ:2R:3?AUȑ5QBCb>]m˔9Gaumn|[%޷[yոBenW=M|Fvfl�@hI���%tEXtdate:create�2016-05-11T04:40:25+02:00ո+b���%tEXtdate:modify�2016-05-11T04:40:25+02:00����IENDB`�����������������������������������������������������������������������������������������luckybackup-0.5.0/resources/window_minimize.png�����������������������������������������������������0000666�0001750�0001750�00000003160�12716116424�021335� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������PNG  ��� IHDR��� ��� ���szz���gAMA�� a��� cHRM��z&���������u0��`��:��pQ<���bKGD������C��� pHYs�� �� ���rIDATXO&Ɵov31(19^9xQ Jk@E ,HtCqCrX!9 1&H3;3u=㡫zj=zSo|%�ϟYfXDIQ 8m ˁ$P3/w�ϟA IҒDd,IrLgXPڎd0/`Ok7k0g2ss�9K,0N!RM}&r/d }O^ 2 0߅g�EQe2$"H2,Cmm HQ lw�{އgJI*6 X2ȥ QF ܥU��_e2!lrc-,P E*vl?6|.`Ư\g�,Rs&XZX#�Jm٦d{ekk/y΃XNƋ_Rմe{/)ΥϷ:Ki:`�*H+ Ɛe@7>ճy;o-Jh٪}Yo;Cηo~UZ'v_ƀm!gr缷瞬HRu�Q{<]d7& @G_|%CPH 4PPDmށZ&^UTH^ h`k1 =8J V6M4z㡰eYPq_Fh}Cj[%Q /j�q z`ZZ+zo. $at|XL^D#z_'o$M?5cw{ˈkݏ5 ]4Kfɓ~8$rS; uN~B.CZ[AVS>z4^8C4KE׉P&$;Vgauc=@ 󯆵av _ l56 O |jH(ːVgǞ'Wt@{kWwg}TlBkLV#ϣp__ݱd!`?ҭ<2q-i0K2fd;ON.wvv()RJ%z(2s ע(su h#'Db*D2QzTAYQP:5r!�p=55k&0�.x/�XpWΊSlX[>z���%tEXtdate:create�2016-05-11T04:40:25+02:00ո+b���%tEXtdate:modify�2016-05-11T04:40:25+02:00����IENDB`����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/���������������������������������������������������������������������������0000777�0001750�0001750�00000000000�13367035406�014645� 5����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/TODO�����������������������������������������������������������������������0000666�0001750�0001750�00000000002�10310514211�015302� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/changelog������������������������������������������������������������������0000666�0001750�0001750�00000035336�13367035163�016531� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.5.0 : * Added PolicyKit authorization framework integration ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.9 : * Various changes due to Qt5 compatibility * Minor modify dialog fixes * Fixed issue: libpng 1.6+ iCCP warnings * Fixed issue: compiler warning - overflow in implicit constant conversion * Fixed issue: segfault when exiting app at certain circumstances * Fixed issue: qfiledialog, QDataStream inclusion ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.8 : * Added option to disable TLS for email reports * Added some (useful) statistics at the end of a profile run * Added destination disk free space at information window * Minor modifications to "modify task" dialog * View of remote places is now available through the "manage backup" dialog * Default email options are now loaded when a new profile is created * Split of full email command to command & arguments * Changed the default exclude "system folders" from "/dev /proc /sys /var" to "/dev /proc /sys /run /var/run" * Safety checks of mount-points now include deeper levels in paths than /media/<1st-level>/ and /mnt/<1st-level>/ * Added support for vss implementation (windows) * Added support for nt-streams (windows) * Added support for e-mail notifications (windows) * Added various libs used for the windows port * Fixed issue: When one or more items were manually removed from an existing schedule list, LB would delete entries from the bottom of the list instead, when the cronIT button is pressed. * Fixed issue: Progress bar did not update normally * Fixed issue: Segmentation fault under certain circumstances, when --skip-critical is used as an argument and there exists one or more actual CRITICAL tasks. * Fixed issue: Confusion at task list when an item's box state changed. * Fixed issue (windows): Warning message regarding the changes.log files during a run ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.7 : * Introduced compatibility for the windows port * Improved OS2 compatibility for snapshots * Added option to compress the logfile before sending it via e-mail * Added next/previous error buttons at commands output window * Added feature to backup profile, log and snapshot data to the destination after a task run * Added protection rule: Exclude list is disabled when user selects "only include", to avoid confusion * Added a "repeat-on-fail" feature for running tasks * Added "quite mode" during run, to only display errors and important messages * Added the ".gvfs" folder as an exclude template * Added "--super" and "--numeric-ids" as command options templates * Added option to schedule profile runs on an hourly basis * Changed the global settings file from Qvariant to simple text * Changed the schedule file from Qvariant to simple text * Changed the profile import/export feature so that logs and snapshot data are included too * Fixed issue: email feature sent the oldest logfile instead of the newest one * Fixed issue: email feature reported "process timeout" * Fixed various issues when spaces are used at a remote path * Fixed issue: Creation of the snapshot directory at a remote destination when the max No. of snapshots was not reached * Fixed issue: wrong snapshot directory name when remote source was used * Updated manual ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.6 : * Fixed issue: Older snapshots restore did not always work as expected * Fixed issue: ".changes.log" files sometimes did not update their lines normally * Improved gui. Thank you Michael :) * Changed default help browser size * Increased the limit of maximum snapshots * Improved OS2 compatibility for snapshots * Updated manual ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.5 : * Added feature to email a report after backup * Added a "shutdown system when finished" feature (looks much cooler within kde) * Added move & edit options for the "exclude", "include", "command options" and "also execute" lists of items * Added option to delay @reboot scheduled jobs so as to allow the graphical environment to launch * Added conditional statements (stop task execution on error) for the "also execute" commands, in the form of a check-box * Added a command line argument to display current application version * Added extra directory check for mounted filesystems under /media or /mnt * Added actions after a profile/task rename, removal or deletion that will pass the changes to the snapshot & log files * Changed tray baloon notification to something that does not remind of windowz (only for kde-normal user) * Reduced the 2 backup task types to 1 and added a checkbox instead. Seemed like the 2 backup types were confusing to many * Save profile button is now greyed when not needed * Various (well, lots actually) changes to make LB more "OS/2 compatible" * Fixed issue: Useless lines accumulating within .profile files * Fixed issue: When the gpl license is not available no feedback to user was available * Fixed issue: Profile actions toolbar was not visible when gui run from command-line with a profile argument * Fixed issue: Profile execution pause, when an "also execute" command reported error (eg fail to start, timeout etc) * Updated manpage * Updated manual ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.4 : * Fixed issue: Displayed task last execution time at the main window, was always "not available" (thank you Michele) * Added support for snapshots when remote destination is used ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.3 : * Fixed issue: Fail to add a new schedule, due to an "invalid profile" message. * Fixed annoying gui freeze while calculating differences between a snapshot & the source. Also added a "STOP caclulations" button. * Fixed issue: Seg fault occurs when a system tray notification area is not available and LB is minimized to tray (eg scheduled jobs). * Minor gui improvements. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.2 : * Added extra description field for profiles and individual tasks. * Change .profile files to simple text so that they can be edited directly (original profiles are backed-up to ~/.luckyBackup/profiles/backups/ just in case). * Improved logviewer to handle huge files much faster. * Fixed issue: Normal user menu entry title is "luckybackup (super user)". * Fixed issue: When using remote destination, a directory named exactly as the destination, will be created localy. * Fixed issue: Non-workings links inside manual, when application is run from command-line * Fixed issue: The gui freezes when huge amount of information is desplayed in the "commands output" window * Update manual ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.1 : * Added feature to restore a snapshot to any local directory * Updated manual * Improved the cron logfile: Different logfiles for each profile, listing results from only the last cronjob. * Fixed issue: Command-line mode fails to execute some tasks within a profile * Fixed issue: Various snapshots issues when task type is "Backup the entire source directory (by name)". * Fixed issue: Command-line mode fails to delete older snapshots * Fixed issue: Specific snapshots can now be deleted if more than one exist. * Fixed issue: Restoring from any snapshot, but the last one, will cause an error to be displayed if the directory .luckybackup-snaphots/XXXXXX has not been created. * Fixed issue: Creation of full path of destination directory if it does not exist. * Fixed issue: Translation of standard yes/no - ok/cancel Qt dialogs. * Fixed issue: Logfiles manipulation when invalid characters are used within the task name. * Fixed issue: Some character encoding issues at command-line mode. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.4.0 : * Added support for snapshots * Officialy added feature to manage created backups: -> Restore -> Delete -> View log -> View source & destination -> Calculate differences between source & destination * Updated manual * Added option to copy the actual command to be executed, to clipboard, at "validate" dialog, for direct use at a terminal (...or anywhere). * Added option to duplicate a profile. * Added option to duplicate a task. * Added option to use exclude/include patterns from a file. * Added "command option" template to support destination FAT/ntfs partitions. * Added @reboot option at schedule dialog. * Added "view current crontab" option at schedule dialog * Added 2 modes for include patterns: "Only Include" and "Normal Include". * Changed behaviour of pre-task commands to prevent task execution if there is an error. * Improved pattern editor. * Updated manpage. * Improved main gui. * Improved help dialog (manual) so that it is visible while the user can interact with the main window. * Changed the way of creating RESTORE tasks from within the task properties to a menu entry. * Added option to minimize the main window to tray by using the close button when a profile execution is in progress. * Improved profiles to implement backward compatibility (older versions of application can load newer version profiles). * Fixed check of 2 tasks within the same profile, using identical destination directories and "backup dir contents" as task type. * Fixed (hopefully) lots of problems caused by non-standard characters (eg Cyrillic, Greek) especially at schedules and console-mode. * Fixed lots of problems when a profile execution was ABORTED by the user * Improved propject file for ubuntu, fedora & openSuse compatibility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3.5 : * BUG fix: Segmentation fault (window vanishes) produced when adding a new task ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3.4 : * Improved logfiles to a much more useable format * Added cool "pattern editor" * Added tray notification support * Changed "delete files on the destination" as a default option again, together with a WARNING message * Added "by-pass WARNING" option as a task property, so that the user has the ability to execute tasks with a WARNING message * Added more command line arguments so that that the gui executes the profile given as argument in normal, dry-run or silent mode * Improved (simplified) input of a valid profile at command-line mode * Introduced error codes at console mode * Improved schedule settings file (please excuse me for no compatibility with older versions) * Minor "task properties" dialog improvements * Introduced information messages regarding schedules * Introduced information messages regarding the current user running LB * Fixed schedule dialog bug. When one schedule existed the modify option did not work correctly * Added refresh list function, after a profile execution to update the gui * Updated manpage * Minor gui improvements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3.3 : * Changed "Delete files on the Destination" as a not-default option * Fixed display of license at about dialog * Bug fix: Checking of same source and destination directories when using remote ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3.2 : * More fixes to comply with various package standards ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3.1 : * Bug fix: fixed rsync progress window that displayed wrong information about source & destination directories * Added backup time-stamps to know when tasks were last executed * Updated manpage * Minor fixes to comply with various package standards ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.3 : * Completely re-designed gui * Added option to execute commands before or after a specific task * Bug fix: Build errors at some systems (including ubuntu 8.04) that refer to wrong use of the 'count' variable * Bug fix: Window no more disappears when the user has no write permissions at the destination folder * Bug fix: Window no more disappears when the user clicks the close button at the task properties dialog * Bug fix: Same destination of 2 included tasks check fixed ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.2.1-2 : * Fixed display of characters other than English at rsync progress window. * Added "make install" option. * Improved deb & rpm packages to meet standards. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.2.1 : * Bug fix: Command-line mode no more asks for an X-Server to execute * Bug fix: Scheduling is now supported for all users including the super-user * Bug fix: Remote connections actually work now :-) * Added v0.2 manual * Added ssh specific port support * Added translation to other languages support using .ts files * Added Greek & Czech language support (gui only) * Improved checks for safer backups and data protection * Added the “validate” option to the operation properties window * Improved “save/load profile” code. After this version don't worry if your saved profile will work at the next release. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.2 : * Completely changed gui * Added support for infinite number of operations for each profile * Added command line support * Added support for scheduling of certain profiles execution via cron * Added support for remote connections * Added manual * Added SSH support for remote connections * Added option to restore an operation * Added option to remove/add any rsync option * Added support for certain files, folders or patterns tranfer only (Only Include) & not whole directory * Added support to exclude the tranfer of certain files, folders or patterns from an operation * Added option to actually see the rsync command to be executed * Improved checks to protect user from doing stuff that he/she shoudn't * Added simple/advanced mode for every type of user ;-) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.1.2 : * Help dialog fix * Added man page * Fixed menu links ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.1.1 : * Fixed bug when user declares 2 or more identical destination directories (or uses the master backup directory for 2 or more tasks) and only the last task would be performed * Added manual in html format * Added licence files * Added readme files * Added new logo :-) * Minor gui improvements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Version 0.1 : * Initial release ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/README���������������������������������������������������������������������0000666�0001750�0001750�00000016432�13367035406�015533� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Overview =============================================================================================== The main goal of luckyBackup, as its name states, is the creation of backups of your data. Somebody once said: " if you haven't backed up your data is like not having them at all !! ” That is because, based at the laws of probability, some time, for some reason, something will happen and you will lose valuable data. Another guy once said: “ computer users can be divided into 2 categories: Those that have lost data ...and those that have not lost data YET ” I really wish you to never come to that situation. But if you do, then I hope that you backed up your data the very last minute either by using this application or not :-) luckyBackup is an application that backs-up and/or synchronizes any directories with the power of rsync. It is simple to use, fast (transfers over only changes made and not all data), safe (keeps your data safe by checking all declared directories before proceeding in any data manipulation ), reliable and fully customizable. Copyright =============================================================================================== Copyright 2008-2018 Loukas Avgeriou luckyBackup is distributed under the terms of the GNU General Public License It 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, version 3 of the License. It 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 luckyBackup. If not, see . Features =============================================================================================== * Backup Create a "clone" of your data at another location in no time, safely. Backup any directory (source) to another (destination). luckyBackup copies over only the changes you've made to the source directory and nothing more. You will be surprised when your huge source is backed up in seconds (after the first time !!). Whatever changes you make to the source include adding, moving, deleting, modifing files / directories etc, will have the same effect to the destination. Owner, group, time stamps, links and permissions of files are preserved. * Snapshots Create multiple backup "snapshots". Each snapshot is an image of the source data that refers to a specific date-time. Rolling back to any of the snapshots is possible. * Sync Sync any directories keeping the files that were most recently modified on both of them. Useful if you modify files on more than one PCs (using a flash-drive and don't want to bother remembering what did you use last. * Keep your data safe luckyBackup first checks whether the directories you've declared exist or if they are empty and warns you accordingly. You wouldn't want your 500GB music collection backup (that took half a day to create !!) vanish in a second if you forgot to mount the external drive that your source is in !! You also wouldn't want to execute an rsync command if your destination folder is in an external drive that you also forgot to mount. * Simple / advanced option The add/modify operation dialog is quite simple and everybody can use it with confidence. Hit on the "advanced" pushbutton at the operation properties window and a whole bunch of other options will appear. If you know what you're doing change anything at will. * Exclude option Exclude any file, folder or pattern from the transfer. You might not want to copy over backup files (*~), trash folders, system mount folders (/media & /mnt), some huge video files or anything else. * Only include option Use this option to only transfer over specific file(s), folder(s) or pattern(s) within your source directory and nothing else. * Add/remove any rsync option If you don't like the default rsync options that luckybackup uses, add or remove any option you wish. * Remote connections Remote connections are possible, either for use as a source or as a destination. * Also execute You can execute any command(s) before or after a specific task. * Restore operation Everybody wishes to never use this !! But when this time comes, luckyBackup gives you the option to create an operation based on an existing one for restore purposes or use a wizard style procedure that will guide you through. * Simulation option If you are unsure of the effects on your data when executing an rsync command try the dry-run option. luckyBackup will perform a trial run that doesn't make any changes (and produces mostly the same output as a real run). Note: The progress-bar might be misleading when using this. * Include option – Execution order A separate check-box can be used to include or not the operations within a profile. The option to change the execution order of operation is also given. * Profiles You don't have to create all operations from scratch every time you start luckyBackup. You can save your preferences in a .profile file and load it whenever needed. Use as many profiles as you like. * Scheduling Scheduling for execution of already created profiles via cronjobs is supported. * Logfile After each operation a logfile is created in your home folder. You can have a look at it any time you want. * e-mail e-mail a report after a profile execution. * Command line mode luckyBackup can run in command line if you wish not to use the gui, but you have to first create the profile that is going to be executed. Type "luckybackup --help" at a terminal to see usage and supported options. Installation from Source =============================================================================================== IMPORTANT: luckyBackup copies files preserving their permissions, so you should run it with su privileges if you want to transfer data that a normal user has no authorization on. Dependencies libqtcore4 (>= 4.6) libqtgui4 (>= 4.6) libc6 or glibc (>= 2.7-1) libgcc1 (>= 4.1.1) libstdc++6 (>= 4.1.1) rsync 1. Download & extract the tarball. 2. Using the console go to the directory that the unzipped tarball lies eg: $ cd ...../luckyBackup-0.X.Y 3. execute commands: $ qmake $ make 4. Run the app with the command: $ ./luckybackup Other technical info ============================================================================================== Project code is in c++ using Qt4. Web =============================================================================================== web page : http://luckybackup.sourceforge.net/ download page : https://sourceforge.net/projects/luckybackup/files/ To make sure that the file you've downloaded is not corrupted, you also need to download the appropriate md5sum file eg: luckyBackup-X.Y.tar.gz.md5 and then test it with the command eg: "$ md5sum -c luckyBackup-X.Y.tar.gz.md5" Contact =============================================================================================== Should you have any comments (good work, that is completely useless etc), complains, feature requests, installation problems or anything, do not hesitate to contact me at : luckyb69@users.sourceforge.net Wish you good, fast, reliable, safe and usable backups luckyb :-) ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/AUTHORS��������������������������������������������������������������������0000666�0001750�0001750�00000000062�11340213425�015677� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Loukas Avgeriou ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/readme/TRANSLATIONS���������������������������������������������������������������0000666�0001750�0001750�00000003557�13157464765�016536� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Arabic ara Majed Sahli Omar Anwar Bosnian bs Subhi Honaco Bulgarian bg Nicolay Boychev Catalan ca Antoni Canals Salomó Roger Calvó Chinese Taiwan zh_TW Pin-hsien Li Czech cs Pavel Fric Dutch nl Kenny Verstraete Martin Grashoff (linuxrev) Esperanto eo Axel Rousseau Estonian et Rivo Zängov French fr Julien Cynober Aurélien Merckel Sébastien Bourgain Galician gl Marcos Lans German de Karsten Jaschultowski Thomas Glatt Greek gr Nikolas Poniros (edhunter) Loukas Avgeriou (luckyb) Greek manual gr Stergios Prosiniklis Thanos Tryfonidis Italian it Allessantro (pinguinofurioso) Francesco Braile Raffaele Alessio Ganci Japanese ja_JP ptyama Norwegian no Roger Foss Polish pl jacbob77 Portuguese(Bra) pt_BR Sergio Gameiro Marcio Moraes Portuguese pt António Correia Romanian ro Adrian Murariu Angelescu Constantin Russian ru Denis Skorski Константин Дудерский Slovak sk Tomáš Vadina Slovenian sl Andrej Znidarsic Matej Urbančič Spanish es Antonio Jose Molina Marcos Del Puerto Garcia Marvin Gomez Antonio Jose Molina Swedish sv Fredrik Holmgren Turkish tr E. Hakan Duran Vietnamese vi Anh Phan �������������������������������������������������������������������������������������������������������������������������������������������������luckybackup-0.5.0/luckybackup.pro�������������������������������������������������������������������0000666�0001750�0001750�00000011241�13367113646�016451� 0����������������������������������������������������������������������������������������������������ustar �luckyb��������������������������luckyb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������#check Qt version message( "Qt version" $$[QT_VERSION] ) message( "Qmake version" $$[QMAKE_VERSION] ) lessThan(QT_MAJOR_VERSION, 4) { lessThan(QT_MINOR_VERSION, 6) { error("Sorry, you need at least Qt version 4.6.0") } } QMAKE_STRIP = echo VERSION = 0.5.0 target.path = /usr/bin TARGET = luckybackup menu.path = /usr/share/applications menu.files = menu/luckybackup.desktop menu/luckybackup-su.desktop polkit.path = /usr/share/polkit-1/actions polkit.files = menu/net.luckybackup.su.policy polkitscript.path = /usr/bin polkitscript.files = menu/luckybackup-pkexec pixmap.path = /usr/share/pixmaps pixmap.files = menu/luckybackup.xpm menu/luckybackup.png documentation.path = /usr/share/doc/luckybackup documentation.files = manual manpage.path = /usr/share/man/man8 manpage.files = manpage/luckybackup.8.gz manpage/luckybackup-pkexec.8 translations.path = /usr/share/luckybackup translations.files = translations license.path = /usr/share/doc/luckybackup license.files = license INSTALLS += target menu polkit polkitscript pixmap documentation manpage translations license system(gzip -c manpage/luckybackup.8 > manpage/luckybackup.8.gz) QMAKE_CLEAN = Makefile $${TARGET} manpage/luckybackup.8.gz system(gzip -c manpage/luckybackup-pkexec.8 > manpage/luckybackup-pkexec.8.gz) QMAKE_CLEAN = Makefile $${TARGET} manpage/luckybackup-pkexec.8.gz greaterThan(QT_MAJOR_VERSION, 4) { QT += widgets } QT += network # Actions for specific distros ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ UNAMEA = $$system( uname -a ) ISUBUNTU = $$find(UNAMEA, "ubuntu") ISFEDORA = $$find(UNAMEA, "fedora") APTGETOP = $$system (apt-get --help) ISNOTDEB = $$find(APTGETOP, "command not found") !isEmpty ( ISFEDORA ) { message( "You are running fedora" ) } exists( /etc/SuSE-release ) { message( "You are running suse" ) message( "Altering the documentation default install directory..." ) license.path = /usr/share/doc/packages/luckybackup documentation.path = /usr/share/doc/packages/luckybackup } !isEmpty ( ISUBUNTU ) { message( "You are running ubuntu" ) } !isEmpty ( ISNOTDEB ) { message( "You are not running a deb based distro" ) } win32 { message( "You are running windows" ) } macx { message( "You are running OSX" ) } HEADERS = src/operationClass.h \ src/luckybackupwindow.h \ src/modifyDialog.h \ src/textDialog.h \ src/scheduleDialog.h \ src/emailDialog.h \ src/commandline.h \ src/about.h \ src/global.h \ src/manage.h \ src/calcDiffThread.h \ src/logDialog.h \ src/readLogFile.h \ src/patternEditor.h \ src/manageWizard.h \ src/helpBrowser.h \ src/winDialog.h \ src/RsyncDirModel.h \ src/RsyncDirModel_p.h \ src/qurlinfo.h \ src/qdirdialog.h FORMS = ui/luckybackupwindow.ui \ ui/modifyDialog.ui \ ui/helpBrowser.ui \ ui/scheduleDialog.ui \ ui/emailDialog.ui \ ui/about.ui \ ui/manage.ui \ ui/textDialog.ui \ ui/patternEditor.ui \ ui/manageWizard.ui \ ui/logDialog.ui \ ui/winDialog.ui SOURCES = src/modifyDialog.cpp \ src/helpBrowser.cpp \ src/textDialog.cpp \ src/executenow.cpp \ src/scheduleDialog.cpp \ src/emailDialog.cpp \ src/commandline.cpp \ src/about.cpp \ src/manage.cpp \ src/calcDiffThread.cpp \ src/functions.cpp \ src/global.cpp \ src/logDialog.cpp \ src/readLogFile.cpp \ src/patternEditor.cpp \ src/manageWizard.cpp \ src/winDialog.cpp \ src/luckybackupwindow.cpp \ src/main.cpp \ src/RsyncDirModel.cpp \ src/RsyncDirModel_p.cpp \ src/qurlinfo.cpp \ src/qdirdialog.cpp RESOURCES = resources/luckybackup.qrc TRANSLATIONS = translations/luckybackup_ara.ts \ translations/luckybackup_bs.ts \ translations/luckybackup_bg.ts \ translations/luckybackup_ca.ts \ translations/luckybackup_zh_TW.ts \ translations/luckybackup_cs.ts \ translations/luckybackup_nl.ts \ translations/luckybackup_en.ts \ translations/luckybackup_eo.ts \ translations/luckybackup_et.ts \ translations/luckybackup_fr.ts \ translations/luckybackup_gl.ts \ translations/luckybackup_de.ts \ translations/luckybackup_el.ts \ translations/luckybackup_it.ts \ translations/luckybackup_ja_JP.ts \ translations/luckybackup_no.ts \ translations/luckybackup_pl.ts \ translations/luckybackup_pt_BR.ts \ translations/luckybackup_ro.ts \ translations/luckybackup_ru.ts \ translations/luckybackup_sk.ts \ translations/luckybackup_sl.ts \ translations/luckybackup_es.ts \ translations/luckybackup_sv.ts \ translations/luckybackup_tr.ts \ translations/luckybackup_vi.ts \ ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

S_EqF|ݢyYg)<.F*qtʋ)vdժU Ł _# J%BHR@_$FeSrNQn9LV )TdiAYK)M(2C2ch c7X1&ۯL/$TI11LǢEXYN D.@Vӌ̌%\x'Bt5x.9t`&@HQ'[7l)T 3i r- A\ >L:FWd e A>42^8b4JXlKҭȁ򙊶ŮLhXiwi l99H9AQ,LD 4BǯD o0/!RL[///% (h[8iJVf&<}jL&^  #*D zMtF=F(DMUDFy݈[E@taDmsege\X&WkVefTe)S"r8-TT`0J%5gF~>ʞF~*6'V_M!esSYDohb!리wmE$^̙TO:K ҲR\ɛHTHr5e .L U$](x9qw)ߪgb) SEXꟈ]MR= (9Y"[E,xHU¸]7!8$!AwJ^ k" d~}(MkH.zg fRVa!\fKߧ%#Ms O,z8d~XL|(=3{u_m~r2+`85geH @l:!VKFGZ)~zL) diPaI1s+VжQN-5c6@)D4W9#&M'ۈ{3Y( E 0^mPJexA‚t4%WGyJh[xFH!zo-t\)^=ߢ bPw=c0Ryr$8ĀQx{VAN#es(G_d*g2"ږal-H3O)Q9\P l C$PC&vS~gsdZa Oj3 /# i%NSIEWRP*,)a^)(87ք"$FY$( FShpl)h lvZXE3|E*q%9551=xBWNSVp/ļJ*UPHV6÷7FS 3)U<1rZIUMBWtU,  cE?!m,ɍS{*Rp(Fą#Yb.8x ʀt%ǕEkCI)w w*q2l%p;Q7ReĘ݈{a'%uD!8W=enb'x#ˬ|̸eE׭0T jLPhʓCP~686`pE W[y8KJ~v+# rOSکIW|dAD}򹊉;ܬqt2% Ƴ)]i Q "ҭ,K` & -iA%:J${U*K- ')Of0P J9tyBh!^)"=ں 1Lj%5My*`+\ie=WC"LstR/$R:TL++IϮhU#3F u\zUHnd Κ ɷH\HmK5p  򈅙` `aQVz<b~of!aXU0|[e7EmC.낝zͱFƅߦ{[ICqA)O v)Q[-VܒըV]hN׉}SuX"@]HS'`HF|F8 | }Uޖ$o=!%qe)xR>QͶZ`\C6W0$O4O0Bm*%y4TvEJsA&D=zզURTJ&C0MQE.YW5ǘ*vZ QLA2MyZI73]B>>P/LYY qqkt\S)H+s\ r:K ..ڒ B1!egߩF"1/L(E%z_[lԧ!T|Cn驹)way(%-ÒB'Ey9d&-X""_ @M:QDz*MOliԈn@-uz!\SPYP@dgjwne( MI:S n⟵>Tg ApӟOжu3J>]BCz)O5UXoo,G>OjU]{ X, r[` _1LOUx[@o n̅B'P{& *QuD]0# .Tljk> @5gA1ӷk(VʙX8q^8O؀\( 0EŔ<8w!/1QuΝ0i$|o9u$~A8p)օ ^')#ؙѣGjԬUI̠hvҥ+|tq޽kx~2O۪fsN..d2LqqW'ߵKg9j}G/ҥK&ĉ{YچaјY3.]΃ڵ{{k׬2Bٍ`V\cݷ?l`4^iq=i zժАڵѣGŋm۾݄ BC/^k6ϝ;ׯob4[SyJN/Wʕ$RŘАϏ=BTdȎ)"P!*24$`0]!M:HٙG 4G:Q3RlXL\f "Pf)'[;?UwgU3cCC+We漼͛7a9{,JΝgU߿o6O>ݧw/7k:k ƍ nݪ%uZ LJ7jܹsf̙3 /H9vl.h1pqRӔ5kVK|̀OOϺu.Yvaaap;w^zW|*eeeIܹSݽ{^xbL6ܹs-[f0 ñc}?N<";=[5;+vFegg ӃC)X՝&0i[u0e:(QD;v4y2l޴YȆ`ԩzjܸU Uibb*9nݺΞ=`) 4jԨє)S e7I^~e_y i ~d\2WT$6n+O?v&8~7wa5;3(АzHH篾 >~Umlݺu=rH~~`ػgxxx[GB.wޝesss9үohǟ{fÇlՊХk7hG v=!!ać#I&XS036ø@__`g .b&K3kժ13q:nŊMde{S .t!Emر^P(S̾|elo篿֮]{׮][ob*r[ϕ'Ό٫WlLBOnÇѝ¤ַh>ov Z`?̪< cv8 1C͚5۰q⋥V{ǎq6ws&m Ųw{dewpSN^M7Kcǎ+_}z:<Z7_q ?)4hРA'+~V7o͝[ o'II]n}-,;rƍ.]@Ũ/2X֞8|Nv襤~3b1p?4hРAnJpH?oe֬-7oѼ9V+l.lݪeȈwڷ߻wbRŘАYfq]٫W``o֭7n*sаs H^^G]!owܡpIxW`?_t)2*C}Zj>}vLǤ[0jȪU*-Sdmܸ+U)_\F&[(S!//oQUVwHfvShРA CZSɵlҹɓ'HJ\ոذq'>W8|08q'~Gӻl1#(y'L(rd I:d=Nk׮/9z,((Ν;k4Uƍ<44J24 y&8gڽdɒOaCwFq֬ʗ4h2РA FS9Myp@W_% .8yDR-^|')E?pXxÇg̈yϴvӶm[]v|n_x bXJܹsƎ gbZBI.JEU\R\,e/ւTkTKDEmj~c9e"<9=yWxt?А $O_'hkad7ǃRPȃN9pBCB"##uCIܧold_qef@D8|AAsSx4Q;m޼ [n1͛7o޼1>> Nm&O*++ۻwcATN3dddBC5JcDGGϙ;WJJn˖x/^3zt&\C :w>y$,\ $>[s֭@^}4j㿏hh۶m4h,q (++3 ##C}^mޡCGKӧOW ]@dBFEEE544ȐϞ551}ٳx7PҢEaz-":ϵ9jTΝsњ K1b}+jeeM90^xeeeoݒ0>Hc ѣG`5t`̂oϮK iUQQA3_@A>$?C555ӦMsdVVVyFtpO=:$$TAA!$8MIIh 1˂ "22ҫî]:"&555u+((P/EvQG6ii:+X ‡Ǧɍ=zժ2ߕ$%&R#+u"Kif.;kSDDhpuroӦMLkIFFƗtr-1c{˖wJEN%Gl``._T,W(AZ,Yo :F2e碢******Ξ9@,v>p87oN Yg{ym$,ws <;33/ɩYYY.;qďl*L}{YYf^^g;; *+;^ՋX{~ƍ(hXè+XԴK55]ta0yԩEEES&O{nXAR#|Ŋ CDi :Ai]>m>#%%$'++%%-%լYfRRAE=8nYlʚFFzǏn ''z͚rrr] ׬]Kg0'Ny[GDPTT411 }1kjj3LEEE.]fpBU-Z7nᆵ@`-؍`0 'D+(AZS/ ^r%K^M , A_5R%aQ  huSA({ `Q  tAA(2<r!fywQ#AA_ؚ  H嫱)4wn^ >0$/  DA7AA& )z IDAT) 4Q)d7NAAe  D[[  '<_KWlMAAn  MtSAi  HAA(  DA7AA& ) 4QMAAn  MtSAi  HAA(2Uaf?RAAeelMAA"C/ AA_ a9yK"%OAAB%}$/CDDtuFް~}EEeEo3]78qxzvfݻMۻ;99];iJv"z0m=:u*..0K* _BQƦyzp{VZ63۳Ǐ80BG[K]Q#Gؓ\vMcunajɓ[l`9dHxDL6Çi@u.ء}{iS|Z0h)k46fiء+ɘ}sB~~It:vhpkYYz:qݎڵn3pD+'$ V!A~1ӇDNN|8𘘘I'TQ8Nkuuƫ:y]V!H'$.,O),,%nx69>sua.4$$22B[['(8yn^aћ}ΖHOVqq7^9ky|؍y19ua{k ߳G2| BtHM!i;w 622ڼy y+22n_c7o޼y1c}| 2"N۶M2EUUUVVwǂ#"gȄ9j05*++nj3wÇݖ-x/_Pgލ!; -c֭Ʋ={ܺu+WF~jG Z$¶m $++K\@C666 (0DG@v۷wQAAaҥSX=<Fu>JKKQFtRJh Zl/߷/+q1҄x} Dٺ>[֝ >ң,ںm\~M2|D\* OGc|3F#<{ϟ?*\\#"On~X633cn  `0ǎ]d{`Ĉۯ_666tL ߿ŋPVVv-iiLJ*e ѣG`5tu,|{v]t%NN+r|B, :}7o8hѢau2l~ƍ7׮055;tІ iJ'cֿmVZ%&&x׷DHVu")2zN^1{[R/V>M* Hӧ:}fΚOmٹgθ= nn'ùy洩_ 5{ƚy..AAr79γOl.u1)F5֭[\.7++fd'tAA \nUUUNNNpP_֔;vTUU-[FGgGG'8a|XXׯlσ kpQ|{EAOs8ON:ٳgӧ v .$G. #ARp8!=b2NNuqpZ\$RQW΁ا`ee nܹrܹF'/b4/,oTo0Vhf 1h=Ok_8mO`?FYY9=#SCCf;gff%4119!++r=!*޽k֬n֬΂JzvīWz"֞q&a B"20/,+5RMMu.] Fn^>uvQQєɓ޽[>&|KR#|Ŋ CDi :B>I #GS'L&##sh ߂0۵kw1j'S;?pSl;:8yKKKLM߾}KZYY'$)/L6… |*CEmҒ: ͙?2-!RRRqJJJrRRRR͚5k&%pcs8C %z}q~L&SFFFQQѠK3cl'PEUEƍۻI"ؼyK3v#Gjjj2 yyyGGD + WVVVEU6>!a[XDEVQUVQU>wHF]A$ΐC @F  -  HAA(  Dib|" fz%D,Sh HHM!^ufmut7xkmYz'ODU&!ulmJ$Ƚ{wՙj=ɐ'O] Xmt l jCENNݻY[Vg֙Qvv;X÷O||X{Nzm4Zw`O\C-"KGnƍ 8xL"i*}wSFmj4G ?2!"++yb¹3'>>.>>^333233CB$ ٧ 苋N|\~8G3b@~""߿vĈ 2''s'O!|3~!55555u3gґ )NQQQQQQJrݻBBSLGU3JHӧ]I'ON2KV~\6oy˂W')䊅0qvرc  a4hpI'ܺubm۾=¢7/ ^]Mرcg>}$/CDDtuFް~}EEeEo3]78qxzvfݻMۻ;99];iJv"z0m=:u*..0K* _BQƦyzp{VZ63۳Ǐ80BG[K]Q#Gؓ\vMcud `-[TPP2$<~PLMÇ4M Zw\]tоS^|I-̌ 4N8q]-mӦMf0 SNLU.eKSF؁ݫ:OϏ?֫(QVV6eV;}N֯[=Pt|EW{ԙ׵k_WWWFFFWW/_aN&OձC ]h֫ԉ&vծpa Z>&auL ŋS&hkvhrz}M<\V;>FkgϞ +IiUh{dÇ>|p1)Tx RRRWӯ |OMM:e2޹slS'f'_eu 6 Xs>9X111wIMYY7+++ tQWW3gN+L+Iel2kxs̉ CKJJSRR̍J_ݚ,ѽB'_ &˱c0֭[X$.^Lrsw\TqrD4Y +:޿{g;bDqq1qxh;!Y+`O߸qcb⍌)Ibl_,򮴔z}k>U]]][;sQQǎn TQQ1|p===:!ODs- 67'؟ުU/^xy-[^rp0%%E;wz4uaQLlL8& PpZw]V!H'$.,O),,%nx69>sua} yWX&br}%ғU\\|ƍfΚa'Ot+ ǟ`ܚ\k"ooQgvfZGnϝXۛƠ~:-޹y mmmEHV=t@)wЁ O<3_zv#G^LN~]Xtr &a&*ϯ}O?zXD WlI|Yd…pP !"TWWtLC 6ᩡRp *aia2 ӧ""™jx<)SM533T5Zlf2Kͦ)[VV\.Fu10TS0~wz՚aEx } aw+>_QKHma*Dп_:GAE+$|!,cjǏ'.Ϝ>TS1bB@r]+xppg"ãΜ>u&٘s{?m۶j*11{]}>x BO5կߗ Vs*|ZԙjzmIe6 3N";Q,}|7OXh߿$Z_,X@3kؔwl6;.6vF4}8%%ͨ(fdWWW+++!]^r%%%3@ k0uW(0`əQe@ǟ _?_55&to_ Hh 222@WWλCܻ 555=깨E&&]&MX׉>_\>~!$0Vh#&qzZZZo޼ٹsg++:#ώ[SFj?\mz@Rb"521AO7.._"M6sY3""ED#FJ^~%%%~{۴i0Ě@<=tttI #GS'L&##sh ߂0۵kw1j'S;?pSl;:8yKKKLM߾}KZYY'$)/L6… |*CEmUL{fd6l1WX6=,O%22b3$X!UNMO&.└de5kLJS_ ᖕp,-֊ۢCjN5}}&''z͚rrr] ׬]K d)u&&&!纸[ZYڵKIM[UWW!+۪U+'' 1͛7?xƍ^l&ۿIZRTT9>ZEE<O>ԯ*hjj3LEEE.]fpBU-Z7nᆵf-`-؍`0 'D+(ڧo_YYYUU[[anauZEUUZZZEUܹՇEK,kȐ>[^.b٨([;;UUmm -tBlڴNEE#3/ j4aM6@˖-EcN[[[-[0a~X2TMuB ?=l0EEES@:]?_if4Է+fl6: Xt6y7k B ŋBW\E]rqW&&&gΉ*DEє:elǏ#"WlFhW30a 4._MHZD,ȿ9XMXbԩS>49iȐ;w -< [SĉVVVfʶoagF(ddds׮4:oH.F gСCZ ?2o  DA7AA& ) 4QMAAn Aɍ:OO[FCRL,HMMUgQg@48ӓtɒ^={4w?b޽kUkuf/ ilbi46|Mc=ݎ+{m3dbՐb!ʟ8X,GSw:S1} V1LnbĚ͝"6&ɺu~~/_VWWO%7eeew7_jݺ:KbtX~DD+;ԡGlmmEŗJpތӢ!vvGkÆݻwرm%+W"n 4pА H"6m|W,p]v-5duLٹ~ 0Lɂj4 %ft|Gdd=aص۷oCJ?h-ZӘX7֡eV|qľ#t]IA,?X~b}˷X>/**Zl2}s^aћ+W 0$nΝ;_RN ԩp%%SRRhF?vvvp*,q:_v44))}WRe*#z8DLnbĚ (YY())aÆIG7{ YYYz#A~g$,\誣p!_xLL ڶm`0:wLS+Zڕuލ[Xə[X,\"OьP\\ ZRUU%/\\CsA_۱:Sח]ٳp232` S(//_fMOccf;؏IHh"&7LXɍTϞ=S[[۷u֬LA>@ TL#<Ԩ#u;v`4{ǏX"fyyK;h l6޻_ZǏJwF;BR /qp|}w63jV]ff{u"MI)Grn, Ʒdwm:Ԋ !Ήp:%^9ⲺzE6x˞f.9eee;wruZUUu(0LMͨYY7+++ t! wu]w˗/\6IȮft IƐY'X̥14kre B0vFlmӦMQg!gϞ~XKKg:x9.s禧_#۳opscǎ~v{wf;oXUUUUUU>X9nz*? sS֮Y̭k׮b# {}dqNӉ`o1.\6mFh ͩL8& p)[P] ^o=~Իiii@i'[s_'$ oMn<5kR=|ZZݻ}ǻ[JJj}D8/)}<7M>}fggڹ݃N9"''GHX~jaћwf6҅.B <8?##UV_-[rʁ%Hs |R_jkkϟߩSb#GFFȬ^aTVV<Bt"XǏWӬYgx,_=~~ Ig?"##y<ƍ6cKchN`|YY٣ǂͅp.]D?LMMKuuW^%_c 6$C&X&/Q3f89r8""={l&$$$?##C=w>z2m>zhQSSu"t8u6_3ƞh"?T/(K5e^[ni$~~L !Ήp:vܙ<7omrrrnnjkkx{>|xZϵGn9<EEňu~ىEo32=G*++}떴&Dȶm[j=ή_>Μ9LI^6LFռ͛7N:ع KfdWWW)+e9dȽC̝b-LnTX&7U&|DJ.]7E DIv_8S4>!: ߷oɒ<giߞ)@TYzΝhr1PĚEoڴΚD   6666x%&]&7LXT~&"t mlwU -*--X.5zsru6%%%%\]vԉL+ $gIh/=N@efW>ˡxjhGTS%/wlTSUg=zDlZj$''WUU%''whTSD3ŋX͐3T{t&Lz"A2ٿoSM:3ر:K:''g)L5U DAjiiidqƦ;TSmlR&`Mƚ,qLᅦL `hRSSSUUQs,pw<4Q'OzVUU={,1au&2eF#,/BaҩSM˵Dݻj:E=[^^^^^~i=ݎL5U??߆DXF r?y"LdxԙD;}8b/'3C>K娪jfWn@db}ڤ1ޛDG[ PXߓ'OUՄv KE6uJLL ֈ# "/F <-Z!׭ݵk7[xગT"6kNo5kV7kklggRt222-,-KKKv`0r;4A%%S,X&7ɒ)Haaט}?Mi)--1`ǭ 22b3ɼz5X<0 ,h"~ۧѣW\USSӱC{/SNSw 3Ο;GMKLHibbr*:>Jq)%-PUh-,ŮBK6mso=x0 peZZZ CKKke+p8KlڼӦM_5kVO6coQ4'nzjJY --akg}!._C~lT…v__x2X &KP&Ų92))tww]} ƌ?KKK݄ټyK3v#Gjjj2 yyyGGDaI޿{۫W/xQEEE޽E'ƇCmڴNEE(''z͚rrr] ׬]>OW)t66m)x+W-^G kh={6hv#Gh]u<⩫!?HOܚ"]k)Høv sij`Mޜ9s똅z{{"H'֭Hb!6kIIM* ? lMAAn  MtSAi  HAA(  DnJno7}Fa )ZdI=Ym;wzUhߛ1}Zg},#Ql,fOccowsrrv5ڪ:Sл"\.C:_{3zWcffծ-isܹ#Z,h7j,Ī=yξ}{sss=  .aV.&%$':|֖ u1ׯ]xK m-vmG!RVV6eV;}N֯}5rn,f^yz~p׮vT'jN0m۶ s~j?ő#?~l`` ''ף$"".Zdna!''gnap"?Eƹr5@>l6bRp232` SHHLrrrӓ7mPZZJp׮ԔfXk=בB:{V >4TbqI'P ӯ_p27&&*++}}wkXDǛ;gNdd3??oĘ8%%%: RSSNfw5y;VP, |"89ͤnO0tΣC6l KZZjYYYWCCmjxVJ.]Ǭ{a,|hڵ'ǎtk Zn]\\[YP[:ٙv  M vԳF2)SRRZhs'Os^ >/ ^͜5 N CCB"##uCIܧo];w111&N $|oa^ޣsջ[{:c~ڷoODx}pI@ZZ|!!Fkh2 -5uŊ>>| ={pnܸa?f̃-ˣΞPzΟ;|w}e HM9v n6yUUUYY޽{ ٶ}{.] O>%CB !eeeaddx8CFF&4QpaGDFFȬ^ ,++=./////tѣef*++@^^LB&.6L155͛7dXbdIl\|Ν9ɻ<dKKKx½],ĪݲeKx0 "dܔϟ  .]'L:TTT=CY{t4sqQTT F_СCͯd١C6lXO? j'Y ;M3\įvrXjkk+++߼y^"V  r;vcǎbXǯcǎ222;vn""hjj@~~>8'1y~,##HYYY0UMLLuJ& 9~:|eWXXX}6|xA> FO6 -1+:eߴi3˝5Ӊn0۷db3u4PSs  -?&11POSgߎoY9wΘBEd!Lm(x [YA["֔qۉ?|pn޼9m*qN0qׯ_WWW> IDATϟ FSٳ6sq  "Mٹc4klm3f8 9v5//&77wзo_"޵+%%f޵ ̈۷_~֧O_[YSS32dXҒ?N6ܤ\RQQA<{6XXZu ]sǍ,Ī 333[ "&$7AeYII.]ru]Pߴ&Nw^`@y."yΜ5kV/]_7m<oҥ˖.%ßIm/QTT\f qn9dcbbƍu #1u3T…hfc#%YZZ,@JJ u6 KHOHX|y| QYb%,DMpb7Ag'pB?aH5` ;n]WCC999EEEP7oyȑ C^^1>!^纸[Z,Y]f.CVVEE.>!{/.]LKK`hii-]sθ|2ӧuᖘ&hii(**vu޼/_ܹ3#FPQU%T>}Fdb ET9++kUUiiiUU++s>n~'6;uUDGB٣{qy)WlwOccK7VbXߖ{^V,qvsΏ뷅4=O4nYYYγgWWEE͜Q7KyyyffFffFpHȰa6RҥK`jfJ\O2e6.qG?|E1?߿g;bDEEqv'O|}=>|HMMMMMݼ{̙t$H .ST< l!-3#L,{oR&hK-D[EiyV,[Т}O(%1ǭfx;||}sss=8----MKM=s\$H_Zbyll,v\Xn/N_dEӫ/)񴨨(:R`P3~U2)T^իs#~puux{z+,zB9=` y򥭭-CX:j(p8sf߿N?p Eoef<3xK,OP&]ݺustrqPe]LY;ʲokjzܹ>`e vZSSy&l>uC}:]{AnUUUr(Wr`t}.ϝusܼܽ{waݾ}>lhh`hhxpwqq֖.nY`0SR{UQQqq*1jjj\vc@~gHp\SplN|.ϝ3Gkyݺ$Uzzl{{C}]N'aLiUPdd[~XSu@dD8~2&+A8bJQӝ,)TUUs~]OK.cvenb(kkIK,122RRRjݺu޽83мQVVƏY,MVV&.ygOS#"~=23o >\ue1))^nnR'AIbp Xqqq>LϸޡCɹW[[۽G t"lٲFӐ:DVX <aʨH\RPP@rrR\|z[!..jkktlxL|HCC#vfHi?\ӱcDz2r%iA横:::-Z %%IPa5cbc!JÅ"1>diaQVV]=w'A+Ə޽k7kf|Bb~DEO${Ǐe$-\!5K 3w1=zL&GGGg[Ԝ8,ȑ@x1қ'WW3v,.}zRtqI);{LTT$zm^~I!C|R&eeew-,zt2p sM~~[f-c ^^[bQoW._vvEBs0|0xЫ +/4Zk.8B$r߿L__+ג^z%4\rVS>zdCb"ITA@ΝqUB@QrRt'/!|X}}JXnmVsg"=.:#Gdoݺۛdd,[Uŧ }W%݋Xuu_j2"Q)|?3ӱ>|LLFѨK/Q)cFxMLhTJDDq~DDfGNjjP5 &iiaY_;jhTʦШ>{W0!4*%..LۉKINQ)#N'Ѩ8TK#Jp8bD,F&'%u&NOR߿OШ!I(ߥ'OciT CW||5;jeѢ4*Ebp#xDШ-͎B5KR켽23oq\Q;\h$°ChTJZZ~555L˗/4*_>A$a;ч\.WT)!DwRt')!\#촢\DwZ7Չt⦥  :uD={wp'O%䨫mAUUU-[455q\0q"Q ޾ss"WjӦͅQssu:q䔩S1asf`aaA>}]v $g޽ˏa]Uo۶JalL<}9L?NP;E4tDFuҥ}ߗ5k,;+/iSصĉ&L(,,ܾmۉ'=Xo ^_T\")ZR5oo/}}Sջ(k.1rr##"߾ͭńDO$ !:UUULRWWG _!t QN&_B{OJ*ET͉9v:uU+9O/ԡi%/P]SMRǍZYx \츮ӧTTT[7jaA&ǯ^jqquMÇ"""9u4uu  MLHPWW_~Āi5`VVf}}۶mIzyʹƮ|52Ot'q K Wd1Rt ~|aaaUzt5S$ZhPUq?yyrLL~~뒒SDYp0ʕKP` ͟w(,Xsss z-((1:s(W4m$555c㑧CB{).V dkhQVRۧorJr6 eeӦmvr܌WFFDTƦu&$[$g^llJ(wNM=<qrr'&&qM;;>}335 9]TTp޼y2y?Cu|p>|H&,lBukeew6n &Q!kkMKKcXiii~"׃Ht`UdKt9gWTsܪ P#P ^V4Sy- w@?{/%ac=m۶Yٚ,:;;FccH%%%c7k&M#Gv!''{|Aa{/_b=(Io8qq:q˭٣b^~qvii鼹suz1b<>> *[n9,޸(xCDL/^ Q1GQQS.iv|a ;DE^GGߧ%xMѣ O_xѕ˗\|WT61#.0ak D ̿z*]#C4Ei䊊rEhyZ OY ryX$:Q/5 ] B"С\@\ۭ[7Kf%iﶔOH\|e]m-Apn r6~sStfѣ-ַrdTԎ;{ꥬܺu랽ztqEE annkjۮ]<omBW褥gYPQI}K,|\MMѣw{H"I =gNUUUͯ\СÍ7x<ސ!C*hkk'$;F)((vcѢ |dɒ%k׮@if̙GZO({=.^2E[[[QQuݻw_xq$771rDΜ=;dP%%ekXSӘ&L@wP&Lx-Ȋ֭[q{wVAK+nz_?;gϞVV:t vƈ}MJ'Ϟgh׮TQQi׮}`i"&*BǂoڼYWWWQQQWWwG oZ$:Q*EMt24HКuuuGϞWyMFiQHMrɎzSbڰam۶oظ_WrܹkG\@EWL%Db_ 7a՟̚Q)mۆnY)>g\w3Ah9̟7;,*22bǎjʯPĿOVZ]ռ#rE!>>ӯ_h Aɵ<[x/3m۶JJ;K1$'. @%AV-Q,YV-ƍ?n_ D)! ЊMѠ@ '7N7L~ ~çf4rME Tĵ([5en @ D]eĀ)@ frrr6m8?Z]̼%ަ*A^!JA by{{1p ^pl'GGC}#C[uō4!=o޼4qBG !dAR8{ Q&):]{a ~Sb@ ~'iG6 LMEEEEEEїO&NVVV$'8yҲQ 2) ӧM-++ۻseVXŋS$^^NSMx)V?~FIMIUWWx_\{JZZVVV߻{821֭Ӎp;7,--o~WP~)>>JTИ¢.pVX3eT#6RBl"ol7˯}qmml)ג,YbddԺu^{?p***0x{{N:)**v N}^^I,+%9,,B$*<lcǂgVdd[~XSu@dD8PVV۷P()ĺǏh<'^mmm=0_]ȑÅ8ηo222h8J ~$_e@ ~oxb7mH$ӃĚSN[n[vP#@}IZz*)0}4sBйsg\cr9|PիX` @-miӧLyI'ݻwgHvw>| rrr3gͣyk IDAT:x@f-%%/_nڼYxBf͚F $&$^OYf)++?}4OYy!--&@fȶ7eޏ )//STTd@Ž;Șr zމDZ555MMM2asvZnKcL[m7o\p-lg'G#CC}'GF1)dBL|BbnlZ ϟ9Jf_~=&&(>GSIMI ɹ׿SjMb^i1oU6F|31@k2*w11}9uNHTTU? `dfgg}ջt 'O)Vϟ= AyWVVvtܼfZuIWWSNz{yǤ@ 1 :جA zÆu/1!2]~pnj?о}k^S Sf%7и$IDMMxP"^ Yа[ۙ$l1Yj'=z˗/ӦM}വ" rŏeWX E@VVSSwr=˗/LfMM=tr`¬~mӐ3+tz~~ll^D 4 >$[2^#q#(0p <{MŁ؉)jʔCu999b4 IIp vܿA_ܱ㠏ai?~(.a?#1)h=zTȍN"qޱ KbnnO<:QyAb@ ~3gM|||EE9˭JOO_`>;6i={== [,Xpǎvܱ`B-[DF<&-,,:P(X.\Jee_^^^SS*jq2d2cieՁBQPP`0֭['|A2ˋBl",{S‚DosdBymmDxW6lX&4t۶6nqA  ty}񕕕˖;|Rkh64|N~hgϞhƍdo $d zuO  4~44p MFrZuo ~{ntfkA2@ \)MB@ $4SPo @ _An=W"af @  _dMe+J35S@H|+6ݫFaYϞ>SUQotA !=Zɫ*ZR+'zc))*ٞ߸@ ~1n6pm-M/H͋/4hT4jРQe8B&XXLvߵW?@֭5h:ѵ?zN: M#q;rȦ=l|?͎O!11ƺk#-͎]X'&&p<--MM>޼y;iℎ4,돁t?x6hhodhu3d#|hAhD, te=~HFc@2 "KRBl7oVIqss /*,r 9)))޹ ΜM7V.Fvv23oIzt'-\ЭkNtm |LAǏvkh]NtWXC~_Zbe`_fЂfڝ..DɡCns >$zI[ZMXtɍ7=@v0W?~ =3~xwgu_6ڷ>NTVZ8yҲQ XiPdeK/Z1!^ϻ|`P3D%Q AH|y^={ :zTPH-\OOMK"Zɷj%''' X(ͩbG&}^gW|"NIu>o$}}e?yO,Y~>|,--o~WP~)>>JGw֭ӍKMIUWWx_\{ qc `ie}8<, 7{82mSAfV ޻ٳg_?/5bJJJ\);;( >|hhh(--uw66|F3MO˃` ;d444˗/UUUi}}=ڵkHDˠǏh<'^mmm=0g]ȑÅ8ηo222̞- / ~74MAR{Kiii|"&:DG_zⅮ}Bx+Vrp̼UUUa  l7Oqg"(**6X,kk]={ZWWWWWS7Wי6|#D8l{۷=zdefޚ;gQg*ϟN8%zqtjߵkׁibfi45%,Y*jcAKbzj۶ ikBb ջOHOO.D x?~2ի`aAvAnn.;{O>^^[bQoW._vvgANNnYE޽˙f5~Փ йsg\cr2 6wXljikM>1$ ) 46*XWYfdda'1!zz&^K5A /5;6gK:t^ \.˫UVG۶mK?{Ϟ9`腄y_R!9%uС/_iӧ/EbF1 vwPJJ?W|Z|y=9rWL<=پ}c =v]v7oM|M Dtuug$]h:MLņ uf8O,yO?ϟ?WT}.?L(~tjkkuָ;dn6o;rqٹp"-[ x{cNFNdrHO)h%"]qׯX v[s>-/P^ɦ ޖ(453[h7o"#####sss׮[7lpQF9~ℹy۶mw BܿQGDDL:MQQDGct1DEE+((رC&`߾ӧPSSSSS1{!EEF+<,?w< 4x!Dlڴ ^~%zȈ%)((={nԩoڄO>tɚׯO6vv6:Db R^^&D!u{#.Y?b0Ϣ 222RRR4hБ@Co.'N3ݻn߹kb2ĉXC|rLta:w'| @]].19ee>>yo߯yڵ ɓ...Nn|/xJA/FeV~(8pSP` v#F|3ڿ@퓒y{{M6tȳOKM/Myyy>ۮ];޿o_},y9L?8зOo(**"jyW~S'5hT-͎?~Ʌ.x\j >Bb$67&LHNdo@`]osܜH=MEj@cd^JUU52رcRa޾q7n<ٻw:Db/+ӧϩS']vkB|b^^==[ Őliǯ`&[{&_|%آ}}?X=ɬ.hkk@%*1&'ǥK?}\b%YYMO)RXKХK>xfeeׯmf=~4$J:~: @3لJ("߾}aTC7"bє0FhH*`3 Z2? CCCCmm䍝"ƥt:8߿Shz"1H  AyyU}  BDƃ>qqИ)8=*F&S|i******؊20`HJKT ם;vbڷoFE$DA؈4VQQ177wwHJN'O}yH% =z>ؼi/_n۾n gaLt߸I~SطzOk׮ҥ ~/߂7xc'DŋQ{]AGG'ҥ+W/vaaa,۷!!' ݻ uwޠ5ɇ:P(WvMBc_rX2:G555z[^`P^^>-=.&L mg}Y] krRE EQQQWWwE)x11'L؁B@L0+;XM7bܴycR6i={= [,Xpǎvܱ`B-[5_^^^SS*jӍ7x<ސ!C3DXZYuP u h0L `N[Mf;99}iСXf̰0`@EE(;{zF]d5eb֭wxkInS^^ޠAŋL&SToD*++@__D={ZZYu#vٳW/ee֭[k6 (**^ wusRUU566>#({qUvx۷o[-9cNCCCE%:XZY%^K( :DLB޸x;{{]]]UU={^7D_&fN( Y ʆ τn۶}ƍ:.-Q# 2WǥIvssMHH$`^|ye7oe긴ý)Dr=:l|022Z!H>fΞ=(݇7h*F{cDsce#B뤡];իq MA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA BA@ -LA 6 IDATB4S4hT W(G~?~)jWgXjDs f b?=.^qv-qFsȐx 1!V׮%6V?ҠQ8_pa֬={tkk1tGy{dDap|x损契:jЄEvڕN1|Ç\.Q!11ƺk#-͎]X'&&4ʂ]Dk{LcǪebd$EX,oo?ӵ8ۋf9996ntm]fefޒULdXu䣪kh=Cdޯ_򩹹 YAF?ΌrǙiШW94cdǏvkh]NtWX_ 0d2srrV,_^_ϝ9sfsA11K.xf+>PSSz̤I沊d vZVV6 /_S>W>L'--,L&vWW^`ǏoWVVZt) f9{Uye}s\<66;.,|ŋNI&MXYYz)KKKJhdׯgʹ}=.y.\ ڵ+.3ǏWPx޽^'. |PAA#pL3⪭-//O]\p9 BYY`%իUbԸtm-63+Ḧ؜\((ȟ;gC@ukI:&Oš #g$X~XSSee屦֯ȈpL?..޾SNݺu :zVUݑD@L #4$$//k׮WLTUUǎ{j.]΄ :շo?W׺ x<a:WW>}!!` UUUk\m߹k.SҥK]vٽۃXWג,YbddԺu^{?p***D(eGYY?fX66YYٳϞ=MINTTT{ 3Vf-ϛb|||n3&5%M$ɑO.wX"!{+..Ç;t99jkk衡.]-[hRG9\K  HNNOPWWobpW9@mm6 ihhs; 9k:vXVVA66$-UUUGGE $;:9 *]rL vp222222tYrP$O,-,ʰΞ$"hr6ݻwf͌OHׯAid"?'xcrA !3AWw59::uu9:9-_,66v䣺|Ŋׯ'&&x[nM4 @xH*]nnz =GY`!1U:*((8r0Diޔϟ>cqѣAYY۷?\]cڵkwͣG 8XZZZ6m|||_~S\R0yd>qqqsfsŴQlvG 8|#$b_W^dkI%  6x%8<}R9{LTT$zm^~I!C|R&eeew-,zt2p sM~~[f-c ^^[bQoW._vvEBs0|0xЫ +/4Zy.8B$r߿L__+ג^z%4\rVS>zdCb"ITA@Νq rӷЫMDLuG{bhl @|F)xx$x6$tW7WW:/RcYV+`ݺZ"JΝ=+vU:qDi<"#=}m^M$j_xNFL~W01ER.]H+22F=61Q)qZ:B0LEg=_mAQ)6nlhhxWP@R%^Ш82Io'F/%9F> ;57DRS-͎4*ሉѲ vDԙ8aQXRRBR $E|r722BF옙yKL# *`d;BbJ b*+6-'3 @1ǏaB%z ][T鼟ys]]G 즥 r_ >tKQ1.^{9:.2z\x6_or6׾)[hjjⒷ0aD6>7 } 'DVZuQ|KvvDZcOqGT 6sd3|Gw@uuG0Ʈm $$ϟ㈫% EEEMG6h/+$2jԨ.9RUUUMMmڴi)vĉc޹{C;wMLF8q}I 4}1/ j|m۷OJ5j!Ϟ>cMÅ"1!aY`E<&W\ÇƎѠQ cyAid"uuu1&'z*>|xJWATw| 0V  a6){J**1*xWӧOSNH"pd}q'\ d|Ç"""G:mڙ3gUTT΄:;9[Ab@X{WX{u„IY__߯_?^={q$v૑yGѤF^^^\b ÈƗc+ޗsaW?__@AA PdeeЫf=~4$J:~:1D9\(2}ra"*ɂEH[[ pㄆrphhhwLhCYK`=捛n޼= }C~$ըJjjj#O@Tԯ6A)SM۾/H 9)M)72MHH`Ϟg%ؔ~Q`3%ܹ{x@yyyZZZ%Mbp9===OWϘ^>I>a}X`f߸ɷXK+ >ya0"iǘL}`f6NGRr ?M,B k;&nZq=4##H@lLq@xHU 5d}.[ֵk$q&d2/]rrtkk6srt<\ee%;wނ?M]|n.zժАQ55+GDWTX,N)R'Jbp߿prrr`IcƟh\ξOLMCBNq87oބLO1u7o&ŋl{zА擤vEt9>}f_~`ܶm.\ڻwoXv>Cv͟kp9 f33}9F[dPYf3̚l2E"hߡܺu H}'>p8>tvr$։ܺrw7P FO( X4?__ ,9xpǎ߿hb24;k| ;oW,-ҘLfmmmFFūW Ĭih,dtQUL[r.[UUp|*b!ruup~̤sm{ɱQ[63ڶmbln466TRRp8vfw_{D$4E%)RD*+ ` 6.,4}-`HboXAP$;l$f;9p꼹ymT!{_iܹ铃D޽;qs7m,)!2Сè'%%_jڷkd232SjN<' #VKU5kVؿ_qIH) KB)zZlQH# |(=DC9::y9sFTd$yK~66v #7/_R0}K. )w,mBӦN!v/9z\7o޲tk{8ETAzw'EyN;7o~6,z Ҡ"Ly(P Ht:::b[ݦM:y7 TUUMLJVWSk@A !]^[^^V?Cg¼_=د_?{Rzs׷A]]]CC}==6d2O9M(hiiY[[,ްA [VZccĤŋ][jTSkڴK4lp޽:wRfHBBC'NԴiS--ÇGEEܸqC уګal\|PPl6jۮ݌3cΒQFƍBwWޖ-[ϝ0r!h۶̙3/'\ +(dr={X/S=FDDaTUUuX,[ۡQӇ[+444m[>#"tX,ajjdҀ@'Jg-:::ԟk֋4dĉ7o&MHkN{{{MM&MLpv nbC$IMh+LLLL 7?,һ;WO=\-uok^SSSSSmv+ܒߠ(NP@@l11MLL~] .qGh B 7IJeKO?ve˗t)XJ˩?tu]lmm}1"R}kX'3q=:}, aݫ.-- Ft$aw `Q(Č>IΝNClB򓀣)Ss7nܘ֢E/\:A;)u Na".2xȐ QRKh  J ) ()    n  J ) ()    n  J ) ()    n  J ) ()    n  J ) ()    n  J ) ()    n  J ) ()  ȇ[WS ԍS?11nnddժ˼s+gjffFοu$E]]]ۭkW##n]r8*YުEkVr԰111}{S0s Ѥ jL-3;̈d@YkKNq3Bldd^A|>_Hٳzln]ҷL j "M:YAADaԉARǏ/^:z6Ԗ˗W$^va{{{"G({~~-[g͞-Im9^zuB{;kx5+ݵ7^vq|{SSS81@z7R'8p`U_|IJJJJJڲw֬YZr8iiiYItug#MUXymUcFAdR7)VVV[});))i,۸akA<}w޽|M>Rl}~~5 FW͛7t((( \z5::Z[[ٰO9gφikkGGE%&& aagΞ9CݴgР={^^m6mڸ\y㦌a'j!ЌTR0kgS >{4-Sg}'OR ܔ}eVf(DU P7r 555 ;n߱Xgg͛36mڄ 4WWW_r{!2^xH/_۷yD)qK >`%K@xYB!??6mbQQB2YuK7o^rU۶m2XJKKPUU˛ݻZu.ijjΙ3}+9Nʝ;з |sn]4o8xqɬ(`AO/~ڵkiX55&0L6w`jfFUVVvQbE ?!C?O|'%%%Ûfҥ74i҄fȑ7o ޵P|^=>,%N-;||6܍7zLJJrrr,//pu866TVVm׎(:W{rʒ'I#eV FDBHi T Bn֦P͛YvX=@_~iҥK yDQ\glld/-Z;!GGݻw\$Gxhhѣi޿\ͽ}Cw3&;)dѣGUV B̞"ؿ^"[SMm$''e'>.l?~zjjj ̪Q 6ҘAJ}mH.,,$~^:w.<88`xxx1b@ 6ק]ee%hhh;!5kN2Oϡc IDATӧXzuVV֮`?mgJwV-[4_.e_h$ONNc@qmڴp8;vM@PTT03 ɓ (T#""¿2c*׮^ yA.]9*̪֚M*U Rn ћu1"SN\/순;p ț).ljj֡cG>\RRH/^ȌNSSH N22m߮СC^^^˞==zT鞐Pb=PC 6x߾c fv#V:t޽JJJFٳң344ߓ;!…s& bٲy3ñG\ h׮=&k)(8ܼ%hٲe`8CD+++g0; $d!svMMMΝ7nLH y'͟oddt  MYAAk҇8:|2@7u4bcb@ 0rݻ~:fJѴˤޥKQ_O b7<}tupqD|Mf|-\.w,bL=_mE"!MMÇop*<\t A r6fA!7eXآBWZZ4}T O߹m۷Ϙ1ǏgggS1';v,--urs7%E$&&VWW'&&.^^#G:h֬|W,BK蟱1iě7oVTT;g 46A:vK\dffxŋr*.Xp1x˖X?K3~o߾i Afll T "?d۷Rb)tX6mHR7o޲t?Bi&OCMU--ӧXӦNJ~MI;w[5jDH6x{ e˖.^JѤJ*4BG+FFFl x횳Ga0N߿͐={֯PQQ4g\Ii&V4}vL&3#󽺺T9::"jDQfymltA_JW'OOH%UUUMLJVWSk@A !sr8jǦSF -f4%&&v j׾…nܸI(|!q݉L!f͚]QQ,ްA [6_ZUUU}}}{K1X7A=H.FD;8X lɒ]RW5QtAD,u3 tXl׮]lAD)BAA~ZZG~tA8  n  J ) ()    n  J )^;8ݵbիWzl]IIIzl])T~~i7 vv#6nSSSgnJZZZ``boj??n]vW[XLUTybb"y%]twoܢU5Wo&c[)Ϝ9C4k_1cz֭ {k]2w[Ԫ$z[[׮ғ$N% iii!/I1+~(<|@MMSNp=wp>{~lLv2o'O>I>|bݺ0a۷D՞?6c6[772G*D;dQK%ȴ7ɱ~֖cȼBBddd>aBG53OJ>")"Mg^їh*:ZZZ9+ b*% Kƍ;wjV/[|uĥ>ֽGha\ϟ%q81((X)y)_bT v{{yM2?@JE $6`,ox{lc ?1dt钷oNM6ݿUAl-=~Db_VZk,ue\H4hpa{{{R;s BԨe:h2Du7/ &*YQ#[Κ5Klp(d>G8N ,}?!۴ir卛b\xvjttٳasΞ ֎JLLd3Q`7Žݻ)޿'-966;KBXYwpwgΐ7m4h\>JnnUV 7nPQQ1pРrS0p?feFJ"o񓧗/ׯuY[n!!{uY7nԺ͗Lfzl]ϯa GuоfƎu8?J1[UXX@J غŋ1+$E*$l]Vs#CNuuqs.@ jeehoq8T־~M@{..cd,.Ok>OH|~>l]9sjgϞҼAnݼ<=~J%4W,_niJ@ kPԸXٺ,Rtd:00qs#Fll8tk\.woh蠁LMtpFTVV`<斖"Sb2wSRZ`(999l]Q5[nazJlZ YB7(-AMZee%)`LM%$=GN?e +Vy^A7>u¹ ".DG^$>Oą'=tp7]ﴄ0d-)!r$''L>}9sF ɓ'LLLȈ2%SAOOJJJJKKkjj-]qO&M'ȑ7o ޵[1|룇ۗ7Rʿ`cӏ*Aeeev툲ru]g\.,99yĉb iBߵz) #CǎoW".^$$/^xꕉ߶mbys.?[\]F /++jΛ;#_|?x+7oެ]aq /^VUUUUUx5nd.;yºuk>}ZQQQUUuɓ&Qu./AA$2Kq$''rW% aلjjL`2ի2K]]]lZvT~ճRR]yHo l;||6܍7 3 ة$%%;R|'7%77ZhAJ\&.];;[+?cV۷߿qS #3_2 ҥKb`h0jh)y>szw7ۋ^ /Z222\@vv6(䍔D'`}6?>x?$''e'>.l|9:OEFX>6`bbLJtttϗxyĹsᦦfǎxw={~:ߟ]jj sr #ꄅ 6X9yEgϙӶ];ID-77c;9)i͚~~R2(h`;wn7mt?dw߾&MܼysPIߗبQ#7oӲsrcbFAϿw~Of3Or%F8L\`)A,{vNBJ޽{uJf-Lnjw.P.Jzz:ù1ϩn^:-AͭVxS~1*2rժ[}}$?GLLLR'|'7444H KƁu't`„ pԩ'f)Szx~V緍ZnѪe+ݥ-\*VaU {~=~Ф[ GJEr8ׯ_ a_gٵWCCB>|ХKGF =Pk_dS"nL4hƌiiiK$#D8xp7f2;w>p DGGQ5oѷo_555! aaa~d2y<^ŋ.B0e);wm>z 6lpGt.PgϜm۷O2bGlܼ߱+۷\f12s8yϑb яBb0vuСo߾}F~7%PMM4XߦMc+hKnS ~..&%EE-(gGIy۷ 飥հaÙ3g.Z5jpeFJE'ܼwRvjАRyyGTUU{khM6MH;W/RSŚU־~MUUU! -Zo۾m[ǎV-˗`;d0ufNǏT#?v!=~M> gȺѩSÇy.=l i 2Ww0|v/d4'_`V ;ܹ @Ppo&Qywd}|!oB\ӏ`0,--w@HBx횚Ν;7nװ=O=vļ󍌌233.]"֠뷞lߣJ '*eee%%_\Eyye" TZ!K 6C.c!ʉG@Ĥ+++M9~؂|;E$FFF+e˖ e˖\Gtb!R"zRDm[#3-4)AMˤޥKaccb@ Il9dKuNb|ִiSCp: +`m"M3@f砱7nIr?.@#?Ю}{KJJ֬]dҢU i۶-\qmvmm¢ϮK,--ɰ҇܈'-XDVp%!vr<XXX4 @\+v%F[\Y.a 4$deoiBWv *rXmh<}tuKyDm~Mf(~:HGSԁՉ@cmǏuuu{詘vOY?fC+^^#Ggw|%|IE}9۷oM޸qg(w:Ry<^zzeKgqIII8 `]@#?|X<\lllvƎ;o|cc.DEEI3gD gΜή~cF &%v[YY:=xU7)66㕖&%%M6:"[ȧ#EFDTTTTTT\pa;8:9J3n8X~?|pcLt7\/Z ={I&Mx͊ "9s?Do^-A͎;%B &9BV|Z^6uJLL ݑ'10 `bKW~## k/ wSRΝsm);88( P ,[T0V.|+}ƕHB+%H bXC##NI~p8+W~}(?:MAfٲ'_vݲtZ}0rNK8W\\{ȿ9g웷njGEYώ H-|* yJ>ɓ'}}G/yCΟ}Ho AꛇoD$AN"J{^#[ Op4AA%AAtSAQRMAADIA7AA%AAtSAQRMAADIA7AA%AAtSAQRMAADIA7AA%AAtSAQRMAADIA7AA%AAtSAQ55zG7AAQe 岏n  `0n g0rG7AAД֠ 1ZPt! d2;v"KMEEiێɔo4pA\XرS  IDATڍ2339 nGJ#Flv.VVErG7AAhҴ9/4PiޠJ~^o䲏n  ,AAtSAQRMAADI׸)zl]=NFfJ#|7jo >f&Æڞ?+Cm472hrI2P3MճgOغݺv%%555O?~\vm LMZ&KatBE0lm3=؈^~=c6[ݻx<U!>>nckK f--:9eAaEdddKƍݿo_yyyاL[bPuuo] upgcbȰUys>y<7OK}W1Bϟ?/[<ܹgRKk*UU238Xcov 7n\OE5E_fÆ tv |*!TUUCBCGS˔м`5)U '굊0կN+jUUժի߽{Gۺu-7Au{6SvٳaQQV_;)wsr?~NJJvr6nPd(ۍRUЁ9rng%=z(/0TUUyKUغ,.224TWW1nndܨMpp!\A77+ݔ-غ7c***$)E(b.˸,/^dd>|qs.@ ;z˲RXX WD%Ŀ+/hLt왑-[tׯ 襲7:* uYԂ*((`/^DKX$***غ,Scj4Ʀ/[+V|GW++C}fcFlj5(Pz-dffL8ؼⲲ2*11y„- 6499Y(hb,ӿ$1&4\.+ Tg̟'ٺ,h,4ɓLM[Xĕ) I?.~dښ鱍 Y'-_.ZEPP@ (**tqijblii㳑jDf+D]U1Brv*o3®ٳ\̞wΞ2{˞]ry䧲~wTWWurs6)y"ŋԫW g2wܾ}[?ߓN\]]@ ۈ_׮^ݺ[,M2@ϛג'O$%_TVVmNOO.\8WaN$ysQ@ ?o޹s]\I֮et ̏ʠ@C##bzNBE!ÇĿcǎ;v쨏E7k,???88ҴPhii1}իWWUpu]A|rR$XdBvv]ɓ%D-Ԯ`#ƏܹAne&c2Ė ;dƍ\4߿߳g7PZ(v#,ICv;8WO8Hխݽck>%%%^/_6n'|>ߪkW|(5dL͂>} ӦMRXUȤc|).656vtr:ɓ})`^v  {޹siӦ!5i͛{5jmZvNnLl܈#L\@pݻVt~4ϟE+T2 /Z222\@vv6wժ/vA/:FEFZz/M orV8ز7#}vNn{{{)$ Ш|sss_Nxx8yڵܧϞ=޵KJb7I24\hѢ@|'$^F}{''%YOJAYf!Hj2kvWppNNNll\˗~7KIZwSH9CEJ}I Nݏ͟K6hЀ*I RX*Fd5qI'K2(-yI(<'}A 穡QDbD1,Q&fXYf&׮]2$UQQaog?5cuY+/޿g:u %hFغ:Y Sw.oe7c벸\$Q-K^IH e=z*az]H.=:B'^׉<3ct.^ЀT024Xҽ \.[eLfοuY&޾}I2(&@f-كJLL$^vNK'AҿdY 7; yVP?UH|O}jj}}}R.=lgݻt>\x ϝ3%N``ƍ>g2GY|gΎ~.zu?N' $_ >|ǏmM\nzIokk/_!e>~XڵkO|!ƺM42- }jذ̙3-Z 5"6l>xݿ}~ܸqM ~3vI4}M&$\ЫgRI*pȬ,իPxwп[עUK((,!M,ڄ455 K|'$Y#":ut!I(v#,ICfhGD?jѳǏ[G'?yDUUGϞBo߁+}Y>@*Fү_ ~-)++UfsA7mڴ:߭+++򤫅wF8qRSSVkkk/YLfDD+1:P4svMMMΝ7nLH:o94tڇP,jԺup9n$$P,,,ɿqqbl޼Ξ&EX)y=߁m] ˚,ܹso333 7OؐWG[~nω~|N۶m oT\[W(:tDH$B\Ԃ(,m`Рt455qO•s)!)Kaeւ)ܽ{ B.3Oeded!MmBVVVpߥZC<9, LN!m2kpD;"^{v~sDR+*F5{v֭?~|QBnn/\XN@ԟ~od*2 ARY #rww+j~ O"Q***Ǐ#$WȏOHNNvrӸqwRSR>r'GB"ziȞ={l3wh"?}`o'{đsݴi J9QfCndd|ǫi߮|O]󜛛;e$b(dJX>|xll,8r͚O)%!4D/ IkE!i_($L&׮9;Oc0('IP$%Ԃ w/9sFTd$yK~66v #7/_R0}K. )w,mBӦN!vÒ9z\+**M6bK>4od AJ^#7$aÈ>.jۦ t1g x h4Q cutt굊-u -~;8ϝX};tXIL&^ބ }h0 uk566NLJ^صUVL5MD_ٿ@Æ ݻi9Љ&5mTKKkQQ:::7n=zڗehh<`6`0ڶk7cظNuըQq ǦM)lٲ #G2L mΜ93r@JB&'Nѳeoo20p`DDPKUUUŲE=}XBCCh!~۶ݼu[ʤň{`-Y4 0PH7obࠣC^l^T!Cl555'Nܼy34iDz\;wkjj6idsHpk*&HjBXfbbd2MLLVgyLLgg.k׾…nܸY'072 yHY=l0---S+j]]%suT;#zbD&QPٳgk6FS)˖-=qڵ-_ӥ\`Q(-uňH?lB?-?ÛI)C  Ntv&ǎ߻w/$\%o\;q=:}, aݫ.-- Ft(ڍQ۽{˄2{Μ *f~G<ԟ, !66XDҹsS(>}eIIɵkׂv>uZGGg!+/z]}p4A~jN:ݿƍ3Z0_hzAE6o:tɭ[MLM ()uΘ".2xȐ  JN{ܹ"==e˖s(  R7үK߸qo_K{Gc8+  ?#y5ABMMMUE++*$ׅ>roH.xvmRVkK_2nAAEX>($PR{r)Pd[DA? [su[tSAA< AAAAtSAQRMAADIA7AA%AA<ajL&SUUUEEE&~ ""/ԲQM8G`HkHZ5 `G8"ǻxoV]TQiZZbu(3jLJ5 P.G'd24PU1makS^^nœUUV*PYSټYM4WkCdBjj444gvS|~ii]YU)\N/4^E^ {p{%>_]]r,}ܚ*>/z[#DM?Susu`aa?:! &s%X-ROUzL+޶}@©PX-ZlHV4^ǩV G~D%䒠r8.W]]\.*Q,-, ?bFzSIDRz˖0 Hה7y 4o۶&ZE>5ܚ.$JIKKOKKPO>C^n^ FD)> H=A|}Lrc]O8yNʷj=Nx/55\˗/߾}yb%~ꬵ-[pJHW /sǎ<~DE3k/)wl5x& +~>555>?55T 8\.T$--'>>|u5kS<}uָزW_"". eUu󵵵ۗݸyfqUVVVSc^qdߦW9Α#.effyˑ;L6dRSB I***._/L>m MRZfc-Z_kh AP˜![g\\渱V(`.]seD@`oo;w/?S ~1lbBT+\'G=eK2XSSsɈ eΝt1p jbw#R;z6r,o^TSSSQ.F\m|k׈ W?Olڴ)b2R@E*de}8p`rrҙ3gttt rҥ3f:\\\ #@u5g'_~I"?KKW%\.۷o~hf'QFr-IN? nZ5559͛7/- hڸ@_+\}O<h޾ti\mͽ| v떖 'LSNرcEp7iɓ'O<ٹsgƍS=z(v*x_ѣ{$ IDAT𡶶b5e&^R%'^eu%_|)rٺ,Bk^~~MS $<{lʔ)pyB.`6mef </((A۶m#~4o&৭AA|AP / l ]ڻl>?P|3dr-:::,?~͛ 6s3g  <S2F>ahQ_pGӦTs@hmm ,;=7F(.. JΒGKl޲{χK¢f~MM 2U+VU*b13ƇpWalW0 |>_[[H>a%ĉ]F06Ąl6(*?^|ȑ#'=lY> g B(ZQuthΞos(/%44وFpy@5pi/Rӹs2>+Iǩ՚b`B ~z<,ݳ/={t=@DnUy$/0sС׷m[ⴴgϮY&^4>^I'o|p MT>jEE4MEZfe)Yh:Xt]Jޞ=]`DE;m-N{&43 sWS[W\C~I> s = E9G"Ό[hN5A[g`6 }bbbSSSVV0o~3cOQHOOTdp캺ݻL0;?>ϱcNr\EEE:m2%Yx`e*y4јm<Xh%O-1cFCC>B{.CTf3dȮɲ> M)WR (32,fAU!* T^ziuWW֭[ׯ_uց\EɲDE,]eQ:OOte5,zr;۵o~ de?ph96I0&P}Z$K%OfF)f97Ғ} {B/^td>=7[B.75;ڪRLrL)[w}Es䡇ݾnΝe~s0nuzo 0Nhj:-20,w]IJJJ~LKK{jɒ"Wĉދ/?nXv̜2ujp3_.ZTUuر~O(y~pa}}}EEEEEpÇ-(/^6>xå4>r <[d'O~K$>/0E0i!*dʐ7+(+Z^V ;O>YhR*IFY"E~.Qָ\o=ڍ˥c{/p]x:_^\!HA<]s1,x,+wt:}mm-20WD^"y¢dV^Eap{=tutƇ0dg,Ù3M$Y͂2 Nah=S"X}]oũӦͼw<2]IYzO[B"{\8:j51cgޣ۰yjռkĔ`dMqa|~J Z677g۶maa0a"OG"Pnms3yIZZZfq$yݞ$I]]{m6N lҤIHcYSk>j t8Zϵɼ Jm)ڊ܃h cֲIz_ WYonl*zZ:”°jO#fToXv[_bʐ:}rMJtmQEhg(PV}aJnj,$bk~(v ٢RQgBp "4B% EFL 1]·fQS B#_Xp)*>stFİ(x1ӧTt^Ee=ƽgPjkWuzŲY[]=nܸo%α,Ѓh {:1[òę}ɓlnMgןL)³% B(Zg,Vp)~tvtvvwwGU&z^Ԅ*;xlg$=ƽ@ęa>RY5 n{5AzF:-B¸(83'}(j&4AEQ$-qB¸7 89<[B{û!S8MA!Pi B!NSB!pB8B) B(N4!Bq )!S8MA!Pi B!(BQkjjDQTqF7!B V{]wb{D l#rVwHm^+@S%Nx$i_Q*!Bii<(GY4焻R#x \R[Amh=|T\ PJsE؆f-RQ&%Hvc$nJn*WͲ'6jӴTy!4r"k%dL>XͶ sTbZQPdUGaeP16*-MvXNzhsIGTn>PcX%9n%7L|GPa}pp# AWu&I>c%EŝAGVG4:e wtlꍊx(,?]E],=hs~BTxяQauUch@ S@TIī1HjCNƶ,f!js9{!J X+e1c۪"VhJN.m\mIT8U6HDC($7)VQ MTy,NZ2 gFO?D #Zy֖d*'yDKqyRcN1k+U*H=X\PVY8R\#{5ٛGYXUtfF) G*ՂrC*BPV>< `\%Fn0YޫA*Ђq@F K&ocLR@ T Jz'ei=AG^JG `[K&j Z+zywV``IIIL`P+Ю]477կ~ZjjwPq=B/  L%|OQqv"v]"E^Kqbl4Dvj}ZSѣG $% NRfr#Vhy=++[\ySQSkêƖk{<8$&oYUV??e„ <+'''''g1763{e9Զ DFF8\WWWWWrŊ={J){eB=ng>m7ur(b8)SX@>:ܟiyx~eݒ^M\ɍ@p[på%n{;YH`i());ZNw)Rn{Xwc*6GeqYՂomyXm<)pf``p,M-82,UmF9\=SAN\=9E{;]328xKx/˯\RRB4;cȐ!ϙ=/֦H?o梢"#Ҳ~,//okk+--zR aCl+^,  ee[  GB쒱(v0ϛ|fuHWi$HD9@h(6}vjLQԹNSWJ>xws9pqx]gRmkp7X19*q@DL4^4gk|<c!aF!.ڡtމ왲ƿ,DPԐ6E]=曉&"HR3ϸܹ{f%(Eùnu1NKHsr1.԰p˦ GشwSN9͌fI'mܰ)? FV)\9m[SBB;cɒ%s),,%u] .( ~q94ԼPXXG?_}'xW_s "W\yލ7޸q&o#SoܹC '"LR/_ N݁H3RJvV\y******x㍒nPnf֯__0P[Ss԰ >˗ƛÇƹ*ĺT[n^bOQQ^ۺuPZS[;MXl >{ϟ_{5Q-7|{B~W_}p_NII;`s>.\?E`Ν3fϋfͷkX@޽s޽{~KyG`؎P IIyyyoJ.Z}kMuF*Jb &&D^;$9 N}L'm(M-`XC QdU*bBY28.C4ӕ5_u!r(xl()=pqlwڕ_Pyxwxx}̙7p#OIo|'iμrym-';یDbQ EN<:lhRґEE%O=5K"شI s#p؟(MMəS--5U`䔰a+Gֵ4gm[ 뮻&LoX˯Hl7twk׎=zOggMG7lXVZ:#믾ѣgJw 9956"pIIɥ^{]}59f鮻0!!!au򪄇֮3fٳ$GgVČ?ȿAUUU{sfAcUR dꫯyQPbǎUV-{.6?`gwxjS555 /(//y'{o=gV,_sO4)%%p$x=j*x7:jkW_}h{O>xMM\sſӧOssG}xϟ#<󼛖/_/1Md)[:8p[oy=48pG>#z޽;۷oQ&< TYYy]w'xG< 0WTVyk7ݻw]_]ҷO?OC=K/t ԾR<;|%r努D4N&(NU:TғjAfTwD" ^%8wxcŻb 5Vh݂raPyO[*faF)\{=AE F:~ں'Y4M`j~QGbV]J޽sι Ο?>uZ0Ͼ'O~ҸN_N)5k֪UV^_^̲bQ EmKWSIWZ]{edVZo#NMLQ {|>A[[ەW^/[64H$5?qO;:&N4q橮ko~I'=\Ą .p9 ,ig~FZZG`pϞ=@imm;w%Kjjc{aK>z衱cIGOt4C{暫z<򏤤$:yqC r9% #IBF7m*QHM3??k)**3v왧q=f5n_kQq181/-g{v<\vͷkGq&6s v8//oqgq3g[K.y<3gpo|zƍǑ띳S[QQg{=׿e^zT\TSO=SJzav9:唟s%~9̝3g9XիW9N|[ XWp8"؋#^1R erYY"$$]F]/ہx݂Js}}md/0}D OW`p,$܋-uaPRB2jjXc՞n 6C1G+t>2#;KhB(06K[ܑ`Jۯ_OSj^~ϟ?ޚüޏ+`//qkwXگիV^z]|1F,QBQg< PH={ /hP߿&>_FϞp="UI/bbB]8NK둘 b30h@RIna홙{.h" 0?׿+//t_Y)LX=pzwP|aEwZ8p@^=8p@;u61jt駟>=k}y9~G,mРA cYA@KѣT| ?g>wnٲn:XxO<_6c M)GcځءÆ1볳r4Y̅0+߿-l <7g` Z兘`9hllljjbF롣xi9=KʯhUE!&܋|Q^뺎&#v|EntKfˡ\P^Dl]Շ؁_oV"be4qjcQ`c}Jm@|~}^lc~_ H:wx˱3]b_ fWǡb~Kmt9W}͚on.{s쩮?>/Ι3gMHWh‚2{{JKKkkkKLLB^  4 !- /} ={j;R%"ڸCڰ~=fήݲe˘ѣ݄<8p`̙=dzrrrN>رcԨQÇ1!$77nx嗪vdI}<Ӧz12>to:pW\qv~ax-UUU,;w, 0ƍ`/LR_ǎw][[[~͚ox㍧zs&u밡CEeeѐ!KEESe3,Y`6W>7nܸ{I鹵,&&L`S0 #3#s+kֈSݷ_=c|ii>}gmjn_~]f8o_|y[[[(ZG`a/b޽*++q~u ,X`ѻQ(uuuOϚ,bcii U;ݪz~+Z[[}ߊa^zee^RQQ kginnnoo/N {پ}a;v{zc( IDATgmA 0Zȧ%jǎ{I'M9ط?}gmnn+/y\=<o+/g?y2Ԥ;n߼͛K^z 'SaΙ WXG pE֛Mƍ?䓧N p'mm撰a4l.y;\d'/z NxVP`+L2]۶[NBN8;m۶;Ò`pI'-R$mܴ;3]/?iaF$Cp(jۃ`{[[[kkkKKkKKKsskZ[[[[9V.HvFAl{{[[[XMJVď9hmme0qfb XUE{{kk+iC8Khv1Wkko)؂`{{;S=sN+ =39= `(BϲB`0loBA5dBX.c Bp}ea`ffӁ}5 #O-H$b4"aa31 M=4͈aD؛s,Ma*W~Ok+.<? ʒ0O((I޹f$rɯ~uտ7o^mMMx47| ^'^~V=XVC]R'-M%=zfdY[or꩙nJe˖M~z߾}=.2~ܹsΝec op.UUUuU3kjj}fȑ.]n]RRRRRҧ~CrN3g^u7B?*{#y ~snj 7l$TVV^5J35jtܹs*~$H`‚)%6jHyisO?=EM% !#G W233.WAAR__E޽Kec/Pޛ9YYf=,2G1L:ē͛ vکlݺ -TDxP\\[sl%a[9/ކP^ٹsy{p*Ϊ9;m߾RWWwkQQ; :qB =IqpxyLR),(5:])v p@njE(n)-%~kAL}޽s0KEwr"j]hʵz[,z,X)dAAG]q2B)!{Ǝ__Z믿޳w/(8餓z&0''wޙ?.ٵks̱Ϙ.<:x>ݬq}aY(wx+V8p ++kɷ|}QÇo~{ ׃}B;7E7oɒ܌{܌3KǔE9o_`_@ScGEz"ދB7TI@/!W֍V/hr&T[//scCT~`@B!@\].VV3L\`Gh(w| bs(./ډ0a3n\drn_.Ҏm}0fJc 7 Qq*ݤina}3v()/݆ H_EץO]c'M|' h:#/!= =^͡(UP^lUw+@l[j1` FP؁:,azuhgR]9|&⽢l@Q6km ːa%t&^(`DLٓ_ #l'dsf@z +6S㸳"p+ls(τD?-[vf)'hʄgJcE?78GMgQJ œr=Th7QB6K(r!A3)NqQ]w~lؼ7Q\~b)&:Ed@6KY_}-4MVk#r.`@ k&R@*e@ 0S?H9!?%᝶$A>;s#D(KR o%!Q|Y+~ٱnT DάtVXi )7NUH\yzt:] -%l9\\PgVsTg,GcmY~vrD蠴S5I„6$f׉ Q߅Stp+ڱʡ"W ʘі¤*bT ^89>.Р']|q GeU܆ct$Ja2*F%H߉AaɶMjejc XIv("&voX;L IO 5ȁ2qwH_5IdS;TH($xi})dvr0˞ n!UT{J^tBG uxcU-ꇤ8: t0XmkrP ᝙N[uer[!.jg Pl DY60ŅOT 5J qbD4vB BRЕ7"m[ P }0=Z&Av )Y%d)7STGKHN vSpBg] d$"!h/c~^,|RiG<^M-b;M!̣YdڰCNfR?釧8.HВP7 d#탵B$ą7%+ZV5 y=k)F1zdi+/JET&тU|%mV`&YwHRq6vԶөp{E S3 UFKH b3A1 $H@GQE؁P?I t Lio)jc9XwjiWr*Q,!N?$Qa&F!x/k*J؝IPjjY]pWKY[yuU1tVP8DXr"X Z^2V@AG$痨~E;Sƺ;}iAI X1)Lrӄ(%HwD\iI3BFN`2<[DƚS6 ,J_MpJuEҲ/A-$ SPE66C{Rrs3*nUQ t@UG P B FUjl!%A^PYUa%<B;NY4),Ď'o93 农ZG=S*#: Ov'J+3ObqIŐ#>P3gT)-+ݼiS]}aEE'NLJJ:Isgպu6MwslAA ëW޾9!!!Oqci8 ;gGuTU?ϓ!EE0-[6Յ gz≓&%'%:zp 7rǾ^}5K--߶-!!aQwc 4|]SL7.0|[KKӧϸq "*C"*-ݲip8ܳg≓&H}y'ke[n8piXғ]JFH)j;ѵ-ƒLG<=Ew]: AʞĪ-N̯T&L8VpR0$3rC#줅A\`$5G:o$1ӏv/dǎk$Yjʪʳ>RJ,^\չGwk+++fEE{3~~im,+ ڹsΝ*۹>D"'xȑ#;@zzzcc Fb}.Y 0TUb/Un͑/^0k홞>fXBH[k;WKK c+)J/YmVDvܹsN:Rcݤ\Z 5O>[#v;*+."H?kkk/䒔Ty?mF𞉎;ᑚhqnl~'wECѯ.Q^$D%R~DgbhД&E TqtzM'#zS_PL#zWP*«)JBܾ ǜ~(/W@NNU__9ߟ uUWW'''O:uBرc鲥w^ sh7o\,##c WXgϞo׬9g?;a***0aBNN/rֲSOe p ukV*}O>RzکwB'}٧_U_gff.,**yeeA HHHcYf~3yb&6oFgwQzeNOOrum޲eرo[Ғyi[__GYMvlSNnh͚5 9i2 IDATbw=dӦҲҌǾ}XzϞիW13n}.޽s>|3eNHI!PkE]7ZRX곊ܾ6^;h`Hf`솄 d1-`qPIc@T)I,nDP>Gb*퀏9yC(I fڂKUHS4:@g?={/-[`Q$Ӧb$ӦN:tXbbbbbaæN8;lSO^8dHRR;PnO?=77󥧧O6jiiiPYUݛ73pٲ?yuB#= [/dm@)ILH7}P^^ʎU1 M;W^~ҤIp~B!d0mڴ>~?/i'rD}={z~ƙ#AY񡼩d~C~^^3δ6rkM;>}}xIB)vK؉U(j1I%Xg@聚W;=gAg?cb: !쟔Ɔu-d)c9U`alyRo|PGĴ$V"V\II5Q=˄0 ' HjcnY=U;Kb%b p  UcP+B<nOΊ޹Gt?ezl yVGZm5=4u֕644iIeeEee|:33s{͋/Y811۷ofCCÞ=k׮_rO9mGfg8.Ͷ)Y.3x|߿?/'x\QYQQYz8wNzl1])f=c୷ZCf.~y~A4+r>v5u`#rcW`nG{Y"RbA*rRRuCE궖Ait{OHdR%myצDQ4͎6Dž,!_~u߻2h+bg}v8R(5 KHvvVvvրʪ ~띣(%֛/-fU1XEgΜYUU{mg.袋dB5).X[nH$ت(ځC!F!Q '7d{*n@y|%j}%?pD쏥7`s޹{)/N =tR $Y<:n"+a' J 6)x}gQ  FO(;inMfDa{#* e oa? 9a)/kgƭeӏ~wk߾}UHeuB`vVvm]ſeNvvW)FSO8h`bbb8l̟,fHHH(RX8ȣ|mǔ)S/_'|Æ *  Zhw?|uWvnL]гgFCÁ={01TF<PXX8dȐ#:_7ыALXkGښK.$۱\U7zۮݻ #3A9&5$ˆDVE ⼥]V%CGg-9^1Z8LmgiAu"8E;HZÜ.Ku>a bcd"LS'!(bxR *tP81Ʀϗ~s;wdbPZwƎ;yd4,Ys:,XpƍD"i}x1  Ҕ䉻wXz !KfMMϗ񲄐Eޫ4 # a`ء}/n\%J阱c`ѢE[linnF"FCÁM% lCH^5{Hd޽˖.COS巔(aW(oM!c"#SJ;" &[`_xl ;&db.1ImM+r9AW"]i۷oʪʪ*R4H0n8b劥nqc;ښ)rǰ!痗,jA(өMP0` S1`Gީ#f, $EE BZvRovsj_inYZ<,ӹ*ۢkl_JqPjo.E܆:\ mq舘Y0XЭT$r?Eyyy?h,*N?.lI+c:ܼH$RQQbr(R$lP 7Vp&JʕX{V;65Q3XDM9ؠU{PT@k`U1BєWuszr)vW *YdxwӝWVq]BsRW:uzKOu'aqHJMhd$Qx=MFQ_+5?hZwhTw<[vؾcӼQGKHYl|a p8Q)/|slDg,=HIlXkV0$$d$O9Ǥ6s@=e0ZZ8u'zq2\ZB)0iRRb6-c@U`~v9Jskq+ ;دM]D(@-롊WnhKjXk@7!E /u`std12=y-*vY6Eͅ8PR^^^E"yx czB "8~)0 t:bs;E󶃫c>&&N &9҈UuO@-,LW>F8@*yؠQcTqa8S#o0CI| XaP,{NtDRSj ~t6Ե):W(ZT:`Vbџ`-WJG7J>n=pR<ũ{REũ{!4#>~S,ecG c9_R $ħB.a)Up}UUD5#FhjljaS&X=N-= >⚂$qՎ:;*SQTB HNNtdB_FZU^X8h.&iהbT>B¼7ípRG-p!zݜD5|aHk>shv ]wEH{+ƳKѮq&c d8f"DIPtz,n'ZN7P%G\IQɉ,0")IFI?cWרn{waa`f(]skqĨ)B47;ORRb?9#S"B1*%B1hD3lIC2!KwDD!ж:F6±3{SuYA0`L.(ڿ$}ƞ~0ne>3&'''$ĝO<;D|ĈG~ȀJ,Y*M (5cHQ&E"%pIv!`q $/+PJ1 c:!2&5RJ#Hcc#pAWSku+VDerK&8N?$)*ڲ$##nuq^#$bO[H*5E{5H0|>^)K MyPW)VXs/RGL)5666YB:աD9/jCMp8#337O}]m^:qүq"BH$$v!-1[qT䦞[#-xٴRAov},2HJ5RJ hllnoo@ ܐ<(l MFP !a֜@ D.qǢԽa[4HJQFDפ0URZ~p.)#{szԒ[sRlT3D߬ SJ列jR\R1!;FMTjS7!JC`G%@<Rԭ(Na`(7/:G'u5nR!DCV%$x ĄH 0 t;MjDlX6x7qT8/Q-DGiᦦN8PZZڐb_ψ։!U,p֭孎6CTT5EhO:P^QRRFKƦ>}|Opzzܼ>u_1 Du`p F5xXڿڵE"FС@`0~[RRrJ~/!111)1go: >Ca#IR [[[#KJJѣsa!Gɤ 11<? hoo׿'B@`߾})))l(:Kw#i֗H$F8 jokٶukϞ=pH$}ӁaƖp2@! 47]!2%%%)_~*a;"H?aHQw=l *+*jjj0$&&߿o߾={pҚnZS[l1#ݻw!}injjljJLL#ߠ OL&&h3RGGÆ F(--5=}֭[322/鑦G)`(nBCDBW* $Li&e 贲]E kwn>yy7o p+h^^ަMG*1[BRSSM3aÆҲp8jf8ޱcGbbG ;#RSS:j(0ʷm+۶5/7wq߷k΂ǏOKK.˽9mmm5J#6lB{)kbbb ֏ ?:jjj5 C#HCCCUUkkkԜիK&pϞ999:ĩsS[o<Q]F'uPRӡ&5MzUO---_}?А]UU d aniiӧ֭[ĉcZb*\r=3ۂ &DԴ[R%%%;wV{1yyy@%2zfԬZcMMM\+1$''3D/hTrrrNNN0lllX(ѣӵa̩u0 ) @RRrϞ=/bC)DKK-[m+kkkD" 555;v-+..1|x=ݚZ[wؑӏ((XSS={ khlhjj $[S?(J CCCju^^f]Ǐ8^=رsG!b?~h4FFF@uu-+;v9rLÇ ۻoɓwߙ={w=ҥߏ5*!!s_~{mo':l-$PbJqU*qʵrs<ل=oڴP#Fxo^]~mcCYSzaJтJJ^nn^nO?=$ÑcIxz?:|m`ky}ykaQ~m~AŲc~9atҥEQ:YAHJL 1*[Pvтe˖9Nϵ,efffffBB}3D%o(PIhGUjZDEaۛ&{7]nEQQEA$QB$ADQh8C uܔQ-nqq"?7!r鴺1c.1}OI;ƲfcO%eYjB;&8:*NkAHLpp!PVV =ztDDduU &?EF%I%> ))eҲ2%l999%000&&RYYrwzDx n¢"Y__PS[{!n8P]]P__t8 Z^};vLɳu떸{CۗbiCY\MY[[wH8p4JYl6T(. ϲ5AAA8pF;f̅ۃSrsr±cU*5U~S"yr yPy!u[>ǫU0*.ƣP^xh!Ǐ755BYh;hq(IRyErE@V :,""+7RJ]N$(*JVSSrPt8S:tj:/􉩬PNs!r_ ! c/wUvX)P"I"sR^^d [[[[XXhX!bxw[lkbt$J%l6BAN oآCdϜ4R9IIgjZQaQSSSbbd:1 /!65%U +/y^O>YYYEţ.^/] ӯ^fff.]gms;r1c.T6{0gN/:~9? o֥AFr||-߹\"l6LHihhĤD//֫ժk.:*J6r䈒}a`Dzzrh%%& F|҉'MjۻoVퟚ:qDِ[tP]XB(XVVVVV&_DէWKXxp,kojlrm,;A8VK*NHdڬEyXJdUj9NOX,r22644l6y$JyJ^v5Mj,3tȐ +zvA#81ez=ݷo͛wvw[4|L}}}Cc#˰,ˈX__RYX2ۯS ˆBgEQZ 5F#R,@rr< .+4z]h3<׵6xРf1Zr@UW]FQB( @@ecY<'rOcF!!>u'7Z@gj2jYUUUu`)4HЅ%O0 2F14T8gOmrcB1)Iij%Ƴ)v R*/7eEQ.+-;(,6MMv%T\o l0D CuuFq\,ˊr֫Uj0 oCB UUMظXSx<^X̽11qNS(B@>??l6q%DE nyRrI eYBY 2,+I$tC@P``esϲlYYeee}'gY63S@-8vz:]~}<4򂑅z^.e(''`.fcYF-@$ ' GZ(O*Oiګb5k 뮽\fiQvڵny"wqZlV,8駞ƶ( z1W9t<8NC e8pJQ//nܜgG{Ç3 XcJʱc `h.; M6US'$$$66+Y- D"f9)1Bľu@hjeEA$B$I HH'B$yrF} EN² stZF#KbYv}EE$uXlxb8qe\YYY!T!$***0(yƇ#""F 4,TQ*\Y,vrssJKK+**jkk5ZmmMm]];$Ym555`6u\b4468NB)&b]]=˲k?>˛PcLr 5F.,,;XEQ 5>fÆy6tЬYDg:t/;XC*ه{lRXH' R296߲e7t#0˖}طo?7s**liZy`4N#Gddo!!!GOðqQkh\"ʓ=ztFEEM++ %!!!C  C(۷QuJ3E*E);;[EFkjصr˷8aY6daaaF_ONN`g}Z$IMMM'B"JpuPQ]n)D$J)\XmuSSS(Zbsde{zTJiVց#9J /"|՗rb~׮ݭ믿 _rҲٓ$I?BϪ;z+?JZUU\T\TVVy͛X]^:tP[lE!Ca`Ĉ 7BʲL(h ]l000pDp {I]NHIIۛiݠos(1 ðDD~Jr\u2Dljr7b ǂ(â(!j*""RBb@+,4Lr\.2یPZVZ^Yv ͝<ǒNӨUЀ@. ,!-ÇtڈH?nRaan[p m6 Xo 1T?L"""lܸoߤh3Xag NGgEh <8dȐ#Gsrrm6s&iS>Ν]0% ʗPy\Çg&33sEG~}͚uʕ+<|3ohXu98mn[HQOk[Ԝ9sS.p̅QaCڪ9 *ߊKIg8pZŷm^&N8&(;:_ s;J@$rc59%hx\0Z'$H(7bIx1J%O*Bjs @7*ZEF#I"òjJJ!et *ϳ,G*d /.)MHH߈R񁁁$h},;`@-[K }@/BEeeXhѣ ZY=1,zw8w9vx߾IQQQjRUUU^^^VVfXY'`NQ,P @5AAZ4Z]cC}~nNbb" Y64$/)I5SnؽnWցg(eNm;-]:}-8h46;!wY֜իWxk]NٔO]veg*OeffgϞ={lٚK;%7=Ntǟ2XtN=[|\SunIJltT`CT/Rʲmwj,ۯ_63,r  ȡƉ{JJDUVcbbpج&[h;NVa9@8 2|kZݯo_N'B>1˫R}j `?V aZ#t:N dXhZNjZSƗiQ~hh%())klldQk4 qqh8mj+U)2&stt۩eCeUjuhXrb{t:|a|דA t嗋p`GNOOjMf޽蛔teoc9<_mX67//!!i@ewy:΄}6'7k뻍Pq|{C[} 0aXN~j,Vj`(B(J$\F*Wp_y,B뉘z#L&CAt|x?V a3,cqŲlr\nAgT՝*0 dojGÀZ:[#qRJ)\^i;w/bLWߎ>}bNjGnٲСC} V\\_UU0L~\uU>H\aJv_3E5D0:}@t:Ɔ^K66$$&K xi2>ChUXJ mHЙqP^VaY^df 0b⤉}~ 8JYDχ噲{o+GFF]77纫]vywE!ԣm޼^JJmmׯ_|k\r…(*yJKJKVO>y׷Y+/ه͛/-ZFNy2,{Wt{QV'4559jժȈ6_k~-\PV_7msϭ[N^..)YhQqqqBV\`ϔڿÏ>>Nȿ]^{~A^.++}/xmBg!s>rVy-[رO>?~'k_]OMM]z5k (YYYm^^^e˖$Iz&%%mٲW}ݵjylc]mڴiΜ9rzUU'~A(,*ܼy.6mܤPWYzMvvvB>seڸq{GSSS۫= ݴ222ZmZ?|gv͛7B( _|4̝;g35͈#-Z$7yy޼yQsΕS!_~`vpp%ј +ݵo/u,sL s!!!wyԟ;l <0pW+)?$Λ7/22"22b޼y  üyPVr뭷~U ^֕ʕ+O_!aB=gSW\f})iii- 33S@FaR nVZl].A()Jه+mɭM}z>lxX}xKqYQB=Wccl4j(JyOrytqܩ'V qe 7<3JN |HfZ6]Slrcǎ}g]8ݥJm6k;Bg6#s+um :G9ݳO>VB'xrΝwbAAr4h?_ g2 /#I~_~K^eOܘNiٺFXBG9\֭m3ϰaÔ j3YTZZ,OvZ.**b\C;INlc{VXKSWR Ҧ&iXaLޛڬTi~:jDy5a[B=]w'+Wl6۝?.~mY^eeUuu',{m-od2)[lZ2]7MY}t]w\v\: f2۝< U,G}faaa޽.k])L>Ո)Z>_,y/`nk ^{mk`aO<[o)JRv)SNrsc?>x6g8[n}7g'\=ujz/ɓ'OqF>|UWi9ڜe]7޸`… .\8c=d)9/oF^={nzV 'O4R׈}7E)y۝q!tVL4)--mv,)-!==}<7p㰡=UU`2EHY))goO1k,&iԩ_WbJ2:23oVd͛6fd-,,X,,ˆLtC;N>r}+*o9[o]0B!Po%?c0B!9dRgPnǜ !B;t671E!Bk<«vS B>xF 'F 'g؟B!gԆ=z!B8Gul<BumSg}mQf ;[BpGQYY{\2>O>|ߟdȘ#G0GG$v{p‚aC/^ܕ]v\opDz="=7nYMJ7駞Nի]43wZuko9#%_TdDJrfXnm{W^qy)܏hc/dɻٲFw|x?]_#Bo% E|ޥ&y>,----->ӯ+\y~ƍ[6o_\}՝Q!??*++___KJ7>SX/ۋDI|ǃyY)O}'j+֮mmg=ԓ[nݺ-{+^8[_z^|~﮺~NJ{GJ]<!mQÇ7vҲc[n9I^ye9FY+c؋!-xK5MSL=C 999]{MUU;jMkPPҥʎ_tYPPЯe9òeKkk`+.X꥗N=ۢYyySO>Z/^6g8XQY?=,^wпǟx4(z'Ҳ^|(/J->ve/GJ]9!3Q ~jV;(-ͷ9kf͚R@AA\M7ԩmIf>tkOgrK'˗Ï<2q$F3qҤy/[*gP!۷_~i-~~Eb^x1::8‹/) Oy7)xJwdLw _<^x訤Ą3_~sڕU:|+u"PtGQ\.WNN3< 3gfZ*2mjGMfZrU۷.d7,dM~(?yW^5 ]O۷o_<߲snW_}R^^+/CƗ2;k֭3gΰl-~衖`K<328C~%%ł Xm۶hSZ eHz)[B=>.Jej*h ӧM}?~|)//%E^`ƌU( GFEGM>[AQTT?l.|GrJTTԓO>%Wf^C>k)Ro馗;d۶mukZxM7i4.iլSVHzy+wBB'(jrVXdɻqĿv./n 9sz+ LyE厝?}f۷w/qc^$[!!!6㍅^s͘ѣ<9c'!z8N q_~5X󩯿jل7zK J)S+OM.+kz EEEJ,+*|kU^S_ӕew|RRҒ vLBGEE<<'''h1|rΝ;DQ:thpprY~7̞m6 yھ9e.6J~P0jIgs>GA)]fj:( p͵׾O{m>|8lذ^I :scc=Err<Ƽ+[ᴐMMMmILߣ IDAT {:\vbSDZtW^ݰq8p:uN}\[d'!z=k֬$blݺ;ʬH~[$oy]w^};6jh2(fμ᭷޶X,3g\?}߆f̘ ,^e˵e˖w/vzZ"""Qyf)l崴4x $I*((xpރJe $I;g_}fI#L -j鍊nܺunojjG<0LNjNSWHvV"Pw.߲eKrb^^[l|%ONNnhnh5vժ_ʫbٶC3x۝.O=y7|ƍtSLYz7TN:K[矛7o%e,yW|O&>}zYn^nMBxgmyZtH)[rBu8{<#ѣOFƛ7mڼig~yF9mq|xѢJP:hg57Ϛ^0pܹ~}{ZU0eJc:½K/Y7ߴuV7O?c**66vc}ɧ-}*O>ws|'zmI~/q14˯_&LpZ4{Μ^~R,^rm"##_WR:j(Fd񧟮ch(qq?wsv}:|+B#jb\.Ox2$&]byzsoiՐx䛯~gg{[B),*JO~r܆낂4j5r,0 ((nfIN&Ժ؎V'sX't Jm Ɲ!EOZg oF{M@!t!BѪۮF!<- !Bj=t B>WJS- !BE!B(B!`B!B!QB!?0B!FQ!B( !BE!B(B!@hbn B!PFOdۢB!򈶺qEi!BB(QDg oa[B!?0B!FQ!B( !B<(pB!/}DAYnXVIfvvygW\a os}bLesϿ\.o,n6GHO㍅n-[Wf˗mv?}Mz'[^zEc[wb"#LmV9,l{%K%ؘu2cR&}чg0⥗^\ҒQ}_˻={j`_FDD.a}!"##c1oڱȺ;ĘNnZg]n 3g$HIw-S?|J{V?{t~o+:TI!;6~%V(I[Ѱ,ٻ(6q މ-bl`AcŞD,QP{"DQĂV; TiWcus^;S{||fggfgٽ֥6Q={foo߰Q*=(ȵB5[IL&sMbǍ qsw߹s\ -Z<&{™IJ24՗A12vmĚ5bY_@n*))q-;tPSB4 W#&搏H(KyoߡC|qL#iΘ(0P6dݺAAA*Cc3a$M8 >iyyy{իWU-Eӄ0lgZn&X:\:tUs?zzzwtssBN<1ax;٬+nm6onbٖ8q"V@+IPcxy M4ѣ͛cV'eff:99Q_ZZ*KB$Dx鲿@Fn=xɉx͚Z t1&rCr1Gx$hP8kdKc4F ?j211۷_$R3gԫWgL5qAҙ3п^nO<JK WRSs.PZZhOVu<=>}Jӄ~Sw&9rX*ooo~Ҥf;w"OO#sNfSL!'&M7C ptlۦ⠠b*Y2fiiٳYdǏ7lXOzyJ~`r kujc]ƺn]׭xX,޲yslml0@n*lm4d U$U1qʵWL##ү HH8Un]6ݰaCrDvjŎ{mԨmѢ8S-yȁAL&*0h1N&T+IcZeةS'XwR=(DxdJ B$}R}'O̟?<=jsu,ʕT۷o@^5.SN$+r}666...>e޿O~ȷb_5kVRUڵŋQ֫u8w.IӦ)nUTTl߶ t*~F3cÆYY/E"Ǐϝ;7j$>4Mt}[WJS|fͨuyuq?rGlllVTASL>m˗EBaffƺuQl̩S&޽ݻw_fj@dɃi- 6SMGJ$`wUTT\|Qd6}Ztttyyȵ۷o'5V)I)))%%%>>3AŒ:+&96l*lRx{OrJw|:t}V*//_ %ɔfجysHIIQܥ:D6DxQII a0@,ɆTx!?~u:t<2oа0{ ׯ{ v ;;;*|Mb0Æʺ|?~' W]x5q<='NjذP(\z5x<B&1}{ #̛?1 hܸsfee [) N=5W"Tׯ_%'AŢ(nH$?>..N6>ҥ lRҦo޼ѪUvI&:MQ-+044 tc Ϟ=IOO9CU%Bm۷Ȉflr۶L6U;wpR8tРlD";rC[r A~_Ī+`4\ѣMLL8N۶mw+g|>S2\cI<&,k H-Qb"Y,… X~ݎ;JKKKKKϟ??hW*n ((/,*"])~%Tc$5Gr:?CSQX X,Rk[S3SXd232_~,)BZE̗YG7osE ߸i9ܦM 79MPQQAp9ڷ?zhܑ#;t#X\_d\͙ckkcǎ;w}'נmذ֭[ʕԢB[zCr:Gd[y{9sM%%%ob2;~\juZOpwо݃4֊VM.I&)x;;aaVl֬(>޽z h ecvr|;wֱ4$ I @>}d/?9O{=O}LJd5niȻVFIcb޽ؘߦOȨH=Ҳ׮ͽzzϞD"oK,޾}{nݯ]E.]oNNkIWLdARsy'rnG&ƵkdXR4??Ę .O \\:A^J޿OXZZ@绺d"^eee^#t+"eж7eT}}F-_L$vIAqyr.9bX_7n SS/-[}>ѳi{:mUFF,;I>.%}w"ۜ d]nP;4jVߖbDJՐJo߾ v]={O&JW^M.XYY@Ժ(@οߺuPvKioE?xME+Iz1SY<rU?:p85kegg;::(8yV6ՍϟsTwS?[TUVJS8h UBc*-\&<ڡn? ~I?}'@(Jeu˧} I<߯{6mtvNMˆ̙=/[PP9.ҟ"VZehh_P3~ԾZ=IAPDؓmBNNp&1Q6y+S}P###N *t |1i 0k_~-ӯ/jr'ݸ~usnܸѦm[([ (el .]:0oѸ#t ~~׻wB7Ǝ[cI|!!K%oӧݳ .*|͚ d0+W?~b9>3|22^H$/^}osU6k f̔ˢ 2kƯ$CSy$?w]vUT0Y/78oJXٵ[גO*I9w~!Z8^Ϟ5l&JսMVcc6l(^[XXN@ ...чb˓D"шȑҪjT* -Z`0BBN2É+RUO<5`3LQQa. Ѻu낂??U,_"XZZlרQ &:jRQa/ڴi=,++y, 4w^'˖-wsw766Q\nLlE4mry<^MB>p0:hbr/}}}} WE}O|鋗,!br7lXh#166vsw?u:BAmwW׸{161a2&&{9zٛQzMz>S:Y|( ϜI8pWB}'2Cf?|(XҸq5jȆi6??0?B{?f}T;lٲ}o]k֭iiT?=ؿhhviiӦ.7$k&&idhdhht&LƍwC̬f͚l6<2Ç.]caadhW|4Z>W{6~k6[)n IDAT #U_Bx|^KKӧt~e :<>OX10B!9r3iv'@hXr8lr籪 x<N!BѮ(>ѹ`` !BՒֽ(vB!!Ba/ !BH,jfO%'<#:Yuկ.zM:enfJgkKr?fM>}O^u,~5HdĮcU޽f?9;S!bÇkҸez6;w3ƍUF_f'WϞ=[6>k)Ǐkؠeǟ;_N9NѠS ; 8uV)L,[4o6lЭ[TI4 K[amB ,,'gg++˟B^7d}W{.\g׮]lZYY:n5uʔ;w|r!}\񶻯+x,n޼9edXB7q4.nDoDPxSNjgPii+Wݷ_VUҵ 677w_orMJ# dGj{ RNǢHOߣgC1M2/]xɉx͚Z }t|^7r`gje*ҒΜ>fQ? /_t%1䠗R]u;bE:C4>mꔓ'?ܹr1ܼyQp?0w<33s )kT@ĴSccčuΜIL8qа6}ZBBGF"+WI>{Fȗn$:lϞ!!>vڹs(qc+Fq4.|-Ν;w95~*\)gЭ\r_Z]POG v䩖-[*&5m"WTH^C:nR% @ӦQ/Ymȵwpkkc-[ փUp~ @ֽ;y˵jڲukˬ̗YlYŋ7o[nINNQFxxē^I8q_~r'$$%Hnݦ % k<]Qaa?@ӦM'N'~si[zo޼$7+ܩ LEURZZ?~C^ck[o}_dy{&l?~\%Ӕ׮_~5q$8xo2NrUQV`322^H$/^ׯ_V̍;ry[4ovр+BCi5sxҭN+B_dd~stTU+8 ds=u:ɓ'JkW>`@ٳܽw!"huj #I!M(''5`z @+W_:m̜飧'rh*V\:KI7o~hXbw݋"ZÆ ۲eWPbcc`U1000002ăl1}0VZ&&&m۶M?&,k CO6MOOoǎ~s򥹙ihH ɹ9Jʕ租~Zr%P}Z b2VZݹsgCݷo/l۾o߾FFFl6e˖۶mcU|>SUFL&31tmXn߮-r2A2 P >5kAII6nyFVvڭ&5UƳ@6˰r|lWc-Zr8++VkWFOCֶ 'Q!kl?hPe5NNN<JJJB;j.r߾}Klя10w<=z#-=<}>m5j8ݶm[5^}ʹiSw%J\]{@E-|||zC(?;v/_@II[Lfǎ.VC#wEE޽9%QGٷ>޽z*ή|v7!_3oU :w+nݺ`0>|ױGkԨAFXd{46++k۷ogs8!tRP$M߿UV:uJbaa;wjLeG_U+,?:t6ײڕD"ٴic̡ө.H^~ȡiRu:4!>_ZZZQQOTTTv@M4%_) )--EED;wn/Ys==ƊP!}cQ)۶mH$cǎjHoߪv!8hо}|{ Ɂ%QY.THM,[liddD4mtEHSLeʮT1_ŪcGG^feg [y prr"F<Q,!j]Sff.=ʟYmU-Pcvpу QT"\1E+G%$>߷o3Ip}ݖexlmm$jI6PT]ЪzX+ӥEX,.A,3qҤ ܾ}{ϞOs0oѸ#޽{' oܸ1v'MT"6}={TN|PtAA@ 䦤3gt>(@ uH$y󦿿? |^ ۥKW*^͛zuϞ"ٳg{G}6h֬YSQQo:e0Fz8xׯb@ x={E窨|UA/iiBӧOǎndd4nxrkf`LjgPtR*B0;;={>zlҘÇKII)+++--%X,NT.]D}5roΝ;wD"ѝ;wE@py<.Y㻊CӤMFD$'' hUKE{P'NK$└qc@{SǨ~Aؘ͛˅bX\u-K߽{+6b)_,=ή9f$;wc+ʕT]\\p8H4b0ه4e߸aâE  FHS(իWn_z%ئMU&Ot2U5旞4{>ȮLJ9w^"7iܘfȔ}DNN_Gw*J"`}8qB6ϛ7w֭WEMm(n QǏV;F ޱs'XgFuXe>PUxkk띻vˎvV^6oX&?v( W v钗GS,+m|`1ǏKcadiRz5cFSk?0Uh D^Vcc6l ̗NN&Lf$CCC.c0 =OEԟB@(ֵ,?llFIf%?jWqeeq]pܘ؅5iڔx&M. >0l6ŋ...Giӧ/^  +]:9܌>lVZnf``eKCt8"@ٸiQjժ߷oc⍍/\@Dvd/`iiyȨݻX,}}F?gI5 a7|`iify<^F&Lpt+AMB}kߞ:}Z5.h}MLLI}=&z)Tgeeճg+/^fH\ Ų7soZUoٲnƲ#Ͼz^#G.[ j֬>5k|~͚5Gxym$FOR:7-[͞3Ɔf̞3g坌@Sz#lll+s&M~ .b"kbTTTd}mJb>|Wf͏?ȰݛWJ?HƢIۻw̚/_pqq9wTsoW4*梍ܷFlɱ( rR!CqYyEP(()-ħ_#Cfff%R)e@'Oư*cFz5@P\\sh?}.؄ }U[ryQRB  * ěׯ ,,jkC> T*n޺~8q\`Giٲ1cUyh&TU~t@cYY|Jsrͥ ]UU?'яg^={֥@ 6h֣Fl7$"lH^nX$>!B54E LLLE"1# ؄ )))%ڵk8BjuQBߧ%B$1YLR8NyYH$b06UX++B!3rK> Nn7}N6enfjeeE'(/ B!T vAd2 $ NK_Rd2b1R!053esqF!BՐNF @HR 8BT*e1\.bmmmfnd2!BߜcQŲS5X,e!uXL&.{B!P=z@FFF=֦&_1L E!B:n,|)!ӟW6fl6!B } SB!Th1`0<011a1YSIPQ!\.>~N!BТd2 j&&&6jږf3z8\\<|'k2sBU'ڭxz gO޹u[c|u,,,Xy<]KB!=ҮgdhaML+**4x<B!Th}<w O!ty`!ByB! 9\B!RycQ!Bb]rï BH[[vWqB!5dQ3z!BIPJ!B! A"NK ǢB!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!B!t(B!]`/ !BH؋B!.Bu݅ ڵu]++K֭Nr*͛7gϚ槟,44b˗/OgQۜ~P]Uf9d@OaaB*  D&$$tr(_gkN:9ӣA}:wqIYL0^u8rdOeǟ;DEEJRţ373Yu궋bXgϞ]K޵9!ca}|c=\]efggggg9rxM_{.̙gUFm۵L._bIZe-g묬+=zs.2$,4tkք%b??C#JJJϛyS4m "{.%%%%%eЉ'jL?&ɓ]:$Pٳ%+z(0PvK.:$紪vѨlxB_jݺа+W_~:%圧PDd mvQܽ&K;vtJ˖I3PA#yyyykFV u6))>>0:Ыo;LF8t( AjߥKCzپoJ4|D8iҽios޻ k#5&37 `9r:M*0(/EuY۔uVfن$ 6pQ3B?z/tooo'''6kjj((( #$$[.nذ͛ŋ4Ig@;I#<|`wmٲkH-O^L!Օvwu 1PV--ܾ};1Xdiid2S͜S^=3u8׮^ut773\+O<JKKdÅBTܹ .Ze{;O!Oxi~xܹQ xNAa]H?wXzv IDATh_ʲ__\ITet>k!"~ԭ[w޼3||ܰ~4oтfǏL# 4H$}`.U&''5ׯK8~  i:u \%eWZZZ޽kMdH:u撣&dff.Z7ǯI&sW6&M&n6`@fs8Ç_Թs@f:ɓ|Eù\nZZZ°Veh<%==_1dȩӧ5k^!Ǣ瓃bcc"Y,… $%HN8 ..N6_rDlRҦo޼ѪUvk,})|^ޤ.C5L'NjذP(\zl4K泆B9򂉽(/5o|Yccc~>"~#d\I-**״Y3"ع?|@R@EEB& EU\ߜ>>a;v ڹsGXhhˣ,Y}ݺ_~=mk׻t}vr^O ߺu\Ƴ1t]Us^NiFrSII[Lfǎ.dȪUkժx:,,t{Ѩ4SvٸiM66nrW%!w޽{؋K{@ll즽{L6M*Z\Cy'ytЧ/7oyAݻK3_5,-- 33 !_'/7oʔ smPZ큑Q,!j]mPeDBaΝq$ٔJo߾USlU~5q205X,nٲңg{7u4++ __%V9aƍ+_ZB}|~-|>ϙڴqY6fXIHH4F֭_Ç!߼y~JnOS!VZ)Fâ ׄC;{󼼼JF\͗*V" WJA\Ԫ59i䐐٣4D"IOO/PKe>|XJJJYYYii)Ҝb1 zV.FxbYYuڣGeʩ#ЏߣAcOOb\l)1g9gSqViͫAlRL*J-Z8{S+[ Ǐq8MJ:$|iUsN*J.O{ܹdC+_Zdg!~8IB‰^^666,K__q& 6lXٔ~TyAĉ/.++1<%%Emٺm9666l6f9l# gϞl5jPs;n?-Z8v츀su.ШqqG{clbd2MLzsnݺU&_L>}%A,X0?"\L&=xpAڵrT#qqn&&,ֶ̙kI@j?Ą:n3Ig*SȯYCo QQQ2#CqkFccc7mUːnggפA{?f} P50~˗N[&lhhpzz AP(BQIGPإsD,96`}, *ty<B 5__Pyַ.B>xB!nB! E!B{Q!B^B!.B! E!B{Q!B^B!.!6 H,@01zATUf؋B!P5Q^^cIiD"`M eo1$;E!Bd2RǒrS3.]9lD*JT*%T* L&S"T2S\BD"H$%%%۷x e8NVKKKbIP(BU@iddh(HfiB!TM@5<rB!E`|}wUE!B`s4EUB!PaՌEB!^Tf3z!>D"AEcQ!>Db(A ±(BXl6B,y^5Eů E!B臧 4 M3zLJ=Bz X253z%l6 Ǭ^E!Br5R/_(/WG(޸qdqgcQ!1̎]+ȋ;zD"O6b6kڌdV>SE!Bzvv\'+;]QyiA Ƨn C#Cc5M *)B! EuZԱ RBGq Ba3^B!@3G\]B! Eg֮OffAXXOVV?9;jdjGT??~\ ,;au*  { GBBB'U2@ _ܻww?vbc]ҹuSܹsGL=)T)YQQR {wLrvV_'UEq$M?cTTPРQؘM~4kUsQO/P.qceCwܥ*m۶͛|EĉifJFoѢ1ܽ'IL,++SKu=ɔ)^#GFFFC׮X&\,1k M%%%\:n޼}F"&qӦTۓ43|ʆ[8(ѣ#T i[utvND>0:Ыo;*50qҤ{ݽwF̔vꕗۢ'NkyJdIYYkW^y{˟ yP4@TKѳPNJ֭W^MN))<=J$%KhfJfe E8<tY}UBӸw&B) +(x鲿@Fn93}}r3}} P 00ҒdZYY-dJ5 oEB!R]z֯_bׯ|=77jժebbB۷o;&7RIU~RN'vrrp8<ifVt'O<JKKdÅBTܹ .Ze{;O!ORVt:|'i"?f͊7n|ѻw_# Eipmի7B&Õ:t}V*/OϡީS'kkﳱqqq84\C=Z>=]nݼI577ߓ/X,788f͚:J7:Yɓ'σIؾmtU67&gƆ 볲^D?;wnH]:ͪЩ:^wVi"KqHH@ \IB&ÕZjii{͛6!u K11l5W_|>~x94UW}eKmm| F=<<ׯ_p8{ 6mcYg:Ig:yݺu͛?Gܵ=)Tlgeܹs 3wIX"t\.7---*r%TCӸw&BQR]Ri ƌ{.H{r{QǣB*~((/,*B ·FfdouHNzz$&NLT Wjɒ۷oޭs^vK۷o'gдeoЮ}G9ҾC;;{SΝ;spN &L3Fd.&2+;eVhʛ7n'/7oʔ sףIe``i[=),~k#` d`jeXܲeK###2GϞٻoiVVV3u+R:T]4B9rԨ_mѢyIG(.ܺQ~r0/Eiкuk&׭ZRKii2 4閂 ;vlWe>|Xpp2kt.':ESCu2'13>O|~߾}C$u VJӸw&BQÆ 4x/s_޻&5pr+*`/J#OX,FD{5k3}ffdH$/^ *\c㢸>~zbQE&hD=I4ɓŘDXbObbK `,;˲ܹ]眹x[5 0Ū#$\vm!NNNÆ ma:W抻U/Jwݻѣ&///!!a!`W(&55O&K-޵e+ '0SWaZ' H^^n^nNannΓ'y[ ]nxi2xϞ=CUuz0=S@Plظs&ӧAZJK'N㉢9c~7J'L_\*E1ءΝ4ib(;T(֭kG6kTTgf&}[d-ܩ3I ]lt&OV*ޟMd2#;z*]\]{cNQXvݺVVV.QQQЗP%%%}`ˡC}MСþ˪>s_={7`Bkڬ=zLPU\._~T޻vaAңGRJ۶m+ o۾=woWWBhIV+SgJZ' H5(>d5kO>mAy@_9|:VAWDٳ5m Itt xwt˖-2_߾8(AA(Q /f%KkzUXCAiȑpx8pP>޾B_  L<'''>>~ނ=ظaK?laJ}Q ~<LJ=r%BASjպQFaaa|3JP=AA?(=x℣GrsSQjekkLAA h466F*բ*5ruu-**rLEAAL㸢"77?QUaekk+  -" bvvvVVV5kFkkkkXAA 0  b AA,U  %ˋ۷_ف  lQN;AA-UQ-BBAAg ̋BATQ  * AA͋ nZv  BbbK7ަ  ȋU*xީ  b̋BATQ  PADOF~=55-5''G]:DT8;X[[մ! c`TudJ{0>CKGwB"#B %D  Wn@@F@-B Ȉ dPЭ@ &#"։`6om');I Jd2p@9J G)PJ)J)@98QJ( G);J)ʔ+G9BH,CIUaB Xrι䐐fvvv| A(=ymmedb+3TTZZzh\ ` )m9ʴ Ie&*J(KTb H{P:f=S&Pɶ2i{!(E_/'mQGy"ďpxDhEߡ8H VP0:Gr b9PJ_ ɻ_ѠAu6 bqRMoe*Qp +X@aZ@AdlR J B(e^&ʹ^Pʤ@%c DG8^RJ?N .#xƀﷆ^tJJ˴u@PJ9)6}DHc (j2ZO*ʜ!ؔ8BaeA=A)h4RYXTdz+3TZ4ۦ@ k2,2iP&ċ(ȀP\$pe$+d=%r+#@9ށ~{, lc)嵔 ]eOTe#qh5 P":(VUT6X'$D  (@9Jp @cG@"+'qFi]g3BNi R?jT=̗@((br] ╍$*Ů*ԣ& q5^ hkTB@8BF%I~3Q%WQ_eR'j2vK+b}B)PʸP=HWQ ŧFI%wЙħ+iO8NDACEmuTELqB:4E91n2 9#oHCl3VIF) %!|7oEËHgTS4'h)m%:IUFpJR؎Vg 7Iu^ 3TxS+qcI?ڑKxEJR '9KGA*E&dDFdȄ0 d2(50bȆ$@(n*B$2Ĝ^.]pV7m 8&؝փŁ-*Z 1;mOk&7=7NLflVH<눟g3pNIXWPo7&eB"ZRaΎ s'TQ H5 ddƔVfF4ml j#w $]j_Qw 5I#&2jSDY{™FnܸqєK?ƿ_+ 2T!dltIIIбCHt9s-^AXKB9 2"FӀPO'S#mOS*IS\b\y;hs)hu"=GqF \e Άh3jڔ!!F*hCxB!qpS~gFxIY4өLΖvPiTll%g,urK?OL1SϿxb >jfU`P_[F4+W}5k׌3% Չyq4 2>\-$ &8)\b KvcpG8 'FaXvNXXU"Q`1xy{xa & -jZH E9O-G|v|5'xQDx<iRVqz$pb܎Y .ax*/5R*"00s!͚9;;ݿ`UW\-5WI/XSaZ% MVZ}qQEmݲKAML](AR07ǁB{J/Zlj _[!_PH}*xJxSh(wb "zT@M(^Z|J4'̖psVU(`q4~Q%QQ^+uaK-(!' /(,ZW|{"ݰ縱c>8+ .@XVE={OxAXH}/t,H!o1'v"yPNo̷D)V v9ZF\SJԘ6ů!Z&S^뽂ZDSFT6SI%!R&I)dM ' *:@'c&pBR p|.:0pקɛ y.Q( Mtǻnݺb㜜fŊ?  BLEQm(m(j݈I`IHR ݑ7/B5f[C\b +O(Ajx(ԉC(DrjAG[[JNO(m+о-:sz%gWF={9a[K #""{YVо=ۿkvUm0 >(a"!"oeh$HD~B+JMOY"R|r5eFV^l+hS>-;:wILm*驳L<Ĥ{vw?q3@OE׷ho=|h=3O/--]n]b x@L3G00Wpꒉ5+CjNm4iOocGsss+nAr0OEy(XHЯ\6@'f@ztlk Rf1Lm6voЛsSB9YK`z{+ .;vM6l]ʕPii:::[iMmڶcΏ?osvvDA\_e9"<ݷS%)lWGqQF! ,Æu4PYz/lFg|S64kazV-u#[]\&2=&dRAa)VLdbA*_ԬLpKYigv/B/?P(^(R>|, A2̌˛IÞ% LJ'wn+-<@a¢c LxN ADUMk hG;ÔnLk5HעRZMĐp@$MJʡДe# O.R iת7adѩ^,!~}LRA($2L!$:">x&# iL&2|a5GҳL0.15Rlǔ,YLI"{2|$ (Ǧ=l%K* ; , tP& @ _TJrbgb p(Eub@(G rLUQ,GO#OGTM,ӕH}ˈ";R9IUݐʤh%VJ|^5IP>@)%>Gs@|xE' IEbCsϧNS>_PiAGa^ Rd2FcJMsT!B+Β_$I MPTbRey,pG$K+sTn1/HH"Ҏ-"91vDjPe& ?P*SIM*vF+Iv>QP 򒑲ÉzL>@㳽0/ AnXpwyŘr\!o 6t  d Ș0DW!@&cA;TFnx7#nyMB}*"שP|DOHʌnU)먨ʨ~_CJ`JdOJyoK*RJ=B8* MJ6ou&9J I dn|? T?V62ʦ(kkk{{;!Ǵ96_[aLjLɤ2*G&7@@Ʋԉp!dH#yb*I]Y $2A@+K8B#$=w'rD\ BLQNƔx/d8`ZQCE L !GEbl_oAXaA;O.GA TNkkBSZJe2kAguQ;xeB="2"Bm$rH$E9RߔO"6bI4"ej3AU&I'>'1,GB A<ޢ dآe (؋/TZW'ń/5,$le*NP@COkA_TXTrP{{kYjA=k AbkkkggokgԤɿTURRovvPpgTRS <7ȈZ&e?zTRRbb+3֋*Q޵6AA SCAABATQ  `sx(-WTAAAl~̬̂⼼ +89{z8xy:4oy  TTNzFv'N:t&>]^i.E:~  Rk1CE߻|̼ߕ~_HnFpiówL)lm#  s*;wO>JLٕT <߭Gtxá~=̑BA 2n>cr;'OLjURq򤸯zoWh"R.:vǎ2ج5Xu<1tSU8/ZY\\TXTH)8j xWWSr0wZ@T~ȋbVK6օgϝoժUֽ,J%W(Kvv66..^;oˠC6Nl HΝ;kN$jU R#X^8::կW#""9fmc%%l׃{lllF"/g~tRAAAzD<}L&V޽A ݿbŊSN8;;m;r H=~Ν;mߞQ\\|1V>sƌ6ܸqںuƍjժ7nwuVVVqMJҫa^ ˥<)}?++s՟+ `3Oֽ[wH:t0-u1e[n͟칳@i`&_gtcmT( TTj8M҉o񶶶VՎN^V4VZYQE!H ٔ˖СCʫ޽F}q޳wo҉˖s3g_[7:mP Ξ=JrssclƍJ6o,VNXhqtذa&5aaw̼eT xS* m3X=v8/&_h|h'_|P(|} 8yTnMkncm|ʔ)>>> Wd/dkk~Q6+/..^p;ԹsΝG 3L5՜hݪ5!)˗.64//R%?֭[X'N0h!RX J5^^^}._| Jˡ҂‚KՕn4 &z=zv.]zZZCGu=* A=P(K:k7324s}eee߸F*9rdb҉?H,tv3rW^9p_|Y^FRSS v̫ЗCrm[A>ᄐ۶_zٲnG ~1kr:Ud T5 JH8s^VJ{;wZ`me&<;xxxXWd\.wuuse;Дɓ_^TN6Ucի[5kTRKPPPIIIfXxxz.^8]uHff~kTmX ).. (iLLt>Yظ/p6ٗXJvz[]vS*qc= }94 5X[[sOuxy(]ԯsCAyt_?S#zJ{;+GG8?F*:((9UaAhh+QBeAA6`jDg >uA!`oo߬YSoOO{[6m79OKdEpVAyN09'o//ЖrqqUX%߾?Vj &f  L`=z {čyXŹ/ΝoJ+6}:Fxd_F" :[ѫvm TXΥo#7?L*GA<84"I~0  %n!V=AA˞  * AAPE! X(AAK0/Ǘ/_/(Bo7{{fԩS%,fwwwo3AAbSR^jɩ2CEgdx{UqUAA/lY%ݫAA]F*P8n_^PQ6666O3  HUcccckgkBvv'~3l?x GAA~R\\\\\\f͚R, U  / ǭ\㸠Y TիV8΂,z  3H\||~AGx{-_4/ɡCvjnoBA䅠… ;=7x>^^}sϗ! e״!XfX=AS8p9@^^nP++kLfmmM)5CE!uw3SvUމ:A`e ;ӖWC\ 3f@H b゛4i#/6  0WB(ALZZڷj!"֯Z-"$O˗+A=rrsu sss<ɳ7TQ0m!i^0n܀ѣA !1!) 6F !Y36 RR,.A*TQR}$$$ 0WzE9rDz?xo#Cߺu-((6ujV<=Ŷ[l~O~mfL^u!ooҤcy:1J0˛x?ߠ@v>;((f8ɍj Cq1̙Ю̘PXW @ .4s HR}ӯ}w^zIZgc{9|#...|eSJǎ-`cɎ[6ѣJSXX/xyy : *4`:i mj& O􉋏ub[oV.XSʕڷO}~LKϸ@lTT[6&&ǧ5kogf;6<ʕ+ ,??33׏uw˗1~Fd1%F'o߹;fX8cL&-YnYrѰӓHM5Z-A(Q-SL-Ϙ P(@8m@.ˡԌj|)b5o,B)7o4n,dHyRRq ѹUX46ԗC">~CtrFx-7nTno7o3f~G???\Ҽ˗Gn#޾}[lmeѬ`Ubo,l珲#pp0Z-AuzZjRr8rG)qW*t钪8^f&A"0 ӦO,J(PTnn.&^vر&M# ꧴YbQU_7UC b&???m[kbkk됐&'(&6m˖-ᣴ ՒۉШQ#kkk۫Wo{0)p158mtFT }uPX EP u:6 PE!H5\P66ַnO V)gϞUgΜgHx ,\PBF iӦwT7nY^K)SThm8~x% M1ce>NHJlmaX󪁡ejX Jd2(L&37i17Yڵݻ ~`oAAMz.zzzNc/{{TTo0p˗-h8~4aBLLtzzmdd[7Tǎw֛o9#sTTAưd w$ rX |}ͫVˇ0L3G2 &t3}QRM̝KTT{,Z`E4N:vvvzڹs l۾=woWWBhIk?w>J&88xĈΝ"##\\\uԯ\Aj ;]AY@.??;ш)(gmcWttzu&ޣ+  TѓÈ  /&FL}Q [E䨢3Ab4'È  AGdGPE! BPA^]PE! B@}Q  @ cvJmߖYZZZ ֺUa4jDz«yĂogؽ{8q}/IA(WHE7M1Cy̘1}ҥ5mE^Hy\x!&:ciii666C5m]%SK.c֯AZ2HSQv9EUҥKRSSkڊ*dmzڬ{GW /p“'O4MAAAjj-[|㍥K*~ b{a~RNE꯾oM[Q<|"##ш<OG}nfֽ'O <_jֶj}-656:vXOFZڭۡ{SRR2oo;ujհsN WJ_nAA+ܩS]w.;݂6PT Qݭ[~~Om3t[nIlٲ>}yzz 1}z^^N?,(0Az=^]w[JZ7~AAG|0wPPw͒>ZT4Ǐ̙wďuzП7inBBy{5|W#G&ӦNmݪG?~}>p`O<߯ۼygppvmzzjwţ6lOgX֓&MLOO#F {CuwhPŊ7Q Bĸ '|4۫YE732׷GΜYZZjpb9iӦ666JqƳ***2bS_1$(ȣAo]afM==4[;w0ݘ^&Z..m<==Z^pAyO7ь&A_ 1MblC6'L 'LAgZgę7_!|5_5ϷgΜߡgV:0[⢛b۬y sǨ%wUb҉WӳabR5٨TwKJJiޱc[J%kNܶ}{srrr'ɮprrJLڵ۸1 ===qqq3FozppA;w3+<l=#bv9s&=/l^{m)>_y?c[_`IMQ*{饗`;o7Ҋm'$$ J3gݸc@d!k֬j߾CtL ߸qN[GGb_|ΔAcJ5fvrvv^ǟ:uүcf9ߨ]vgXhѽ{ĒO?l8JuE~_f ٳ7hq7z۶nկ[o-Y_\av9tɫVgȐs5Ř3aÆ\wph&ѻOQR<|m=fIt0esss_OLRy^^^n o[ZZZ^c]\\/hy&ϼ)S2Lt//_^)41_qf@lW.??;ĉ޿Rpq8J9~ۧŋ֫׭k7F!_8b[n.?`%K'%%֩Sge7oeܼdRggcǎ-YՉsI5jqɓ'rV8W\ nf־||effΟ7֭]h73o~ʕ_)HIIk붻Y:qהJZ'o߹;fX8cL&-YnӼӧoݾQiV>o޼I իƻ?AۻOY.&jz}~LK`DEEtgϞAj4˖-/OBKRRbYqAAAx|eZ]:‹)Y_v'O̝3UXn֩Sgҥiݶ}{Ϟ]v?$50ni _vOֲK7,l` mG]fgΈ%Nʕ @@Y`֭:?#lX]qכ̬{gϝѣ'^jӦM33})SXɟag͸~G?xkeo `Zۯo[35e#!W7 n%K޺}; vV˖-+[0ezQP\\t?-Ғ;w\JhdZ+ǁ^ o߾--g\mtw7Ν:݃nÇ}:ctJȑ#\Иx$Aw7(={twws={Iffk6aƖw.^v=zhwydmw7Wo/.C:=Saw7חZ`/u{㏉5NW[lnP֧#G£G.;lUZZ*hJwJmZXnj|~lfK^JI>yD,a{II hP߂ĚOhii7ʳǔjя9 u}YHQeorw7^=M1 kX}(t^ HJJkYoLmoqwshpin&|dʙ8DyA-yyϷ=d >Kw) kW.7sԼܫWϥ))/\p}ӧNmi))ҤcuI ڭk֎;3==}ҤI33f|ɤcǎeggV]k///8vXrQ`+(24XYYAMwF&boo?R˩E5 }[RVStXԱFVHf}Tz"1QYWi)/^HYlBmnO)1-yK3n.[\ )Ui+z9&Ocm[~>e W6nPйsB/>rYZ}̙?X#`6mtRJuƍ5Wprqyx:5K|ϫ [qqǏ ͛~OHH(,,,((` BQᇳf}hƏfuS/>rZ|Q<~7N;;;B6aG:'Om|JuԩÆܴi^^^w x1e>?3tj Oޒֽ[WVңGϴ4vqo}(k׮w2}i8iITTo>Gqԩ|٧EEEo3>ޮ뫯)inԨwem/\f}] :wܪU+/[8OY~Cǎ`СuO?ӏ0lp#?F̮ w̙3g7iذf©>|xRRmۮ]3o5lpw/_ SR| ˌaoߞ3kXYeY^YT=v^^q8#L9L͛KJJ>䓶m]]]YMnr"~MĔOӧ 5lTǿF`({q}Q?ZOIX[[G|3ujkkkf!!SMۼ%nnlaiJr] ((HL6΢ŋTN;;^zܹ݋ C_[{T*mllG@>-;ݽ]wakk8`ٳgVgջa;([[[gg X ۶oUP48qүXTsq3fΤ~W:IXsL1_ie=q-]n)JɓmNsBsl޼%**Cieԭ[͛ ;֭[|} nBB;S5U*~3g~gU?| kkkB֮]}͑|}YdW,^SN...rW^Yxe2:c]vFPԭ[}M|Sa"##EIyTB5SlO<Ν;zT 5lp%&!S>&bʧ;.>~q-[g/PDDs:m~12;Y0˫a?СCmuWFS{vCEU7׮ˡG\uyf2ӧNT-|ջOMۅ <a^w^gKC# SRQDg 6vIieGn^ [ srU3`:[3TD&C_  `DAAX TQ pg* AA0F$(AArFu(AAQj\cU  /AA,{AA,AA,}QAA^(!${@8* AARc* #z  A_  /0  b* WDA1 5~ѣA_Գ!r  CmE;vw{4* ?uw[9r2s9{&O0pv!86 AyA`*Ֆ-ӧGӧ=@Rܽ M@| !OA Р̝ =z 4h_~ eڳx<< \][7#RT66Ф ̝kX*\-ƍ 5ElqФ ؀|5uNys_C  O 55}֟1lp *~ŒKR.]J;xphRiXcFoV$A:tH,IL~ qq~ȗ G]>W[#M6*.4HK-[Is2f ,[ogdp8ƂRAZ/`p~0 T>TO]^)5 l&l8Q IDATԨHLK,NJJSe2nʸykҥǎ[dYcu,&t-[z!_~w3kkcb}|^FZzfֽqmï\r.j5<~ WS@V1Zŗ\o'/BB 1JJ #.{?PM™3R3pIFհr%ܹj5NN mcculɣG˗/ ? G{([ǒg!- t>ֳk״Hi'NhJcr~c}?:TH1h4]LxIZ  3j_/gU*UIIɅ >p }S&ؾp֭O}eu`ܹiS&O6eSlX%%%!`Ĉ0p{6m{niiJqƚի_iɲHS߾we8~HHB(-{ >O5k+;j5;WܹpRS˽ REpkÕ+P\ *7_K*7 AAh=HH(.pU붠muTۺmVjYw[T 2D!qK/6{{wr3NT^ZZZ;sXbv ';wv̘y:v8~a3226_az۷/ǎ|ĉS6|xfV &m 2yL`ݹ5 23ar|\B۔)g:WBH:q8zt пYjm:!uS? ^ !24b#UUu,*9%u AAB绸۷?,, #"#P( ;wWl3`̘1S~hkk;dȐ~t>w̮y?Ȕlmmݱc;w2k-%~?a|PجYѣG'N6^lE23u+@ײep$ е+DD@F$%9 VVKZm |>xzBDlTZ.OO$͢ΞI B@,Νa"U5B!DMzct𖈌aڴ{E^վ/&oQ]jdBKEw:/ EEw:{yw:xKԥ}ycC!T:ʟyT7v_B~'TE!B#x Rnd^\.yHa/ U\!Bo K;;sge25--+53z!,--¢½T*&,mmmmml JEa/ !BuP( IRI~ A  R+^B!> VV"‚ B2;PdePB!SǢL>VTQ[WYEQu!۪a,؉}l|Ȑ֯H$U/\*uUQE'NA>ui_+k4;h;;h Fc^s`!TC5ǢH"?????#Vܱ֭[WoW0DFBեzץ}.Mt-@n.Žr%|k !j%ϒ̓-ysVۼ'O=yң_PP0lϟ?*f4 wI_ff# ܗUIvf deAi)( ƩW-Z:C?iXEQ<cj].<<<z$0(ӧ6nk@>ޮ.ڶq޼"fUII6!!.| $LNSڋl̢D"InM'V;va|}ĉrBP^]5~k5kIΞiShy4A_%%`c{B!4jT+0\\ G`K*~ iSXpW eKYH0v,ܸaz_X˖AӦ 7|=H.?%~}*nYo>~LdSR5Щ89;/h/.\A$>4(R1rBYBlX"kә55zY_~yjjYI'Ǘ}c^&:%%CvvvSNٷw/$Ǐ?~Ծjҁ@*^uر̪.^8!%jՊcr|AgϞaS\ɾr%;5%eWl_o5>؍U5J=ZPZ 3fEAT<|PP|=MäIn]ٶ/^@j*t>}a^3f@nԴ'dpܺp<4ki_&N `B8}i].O 1 8xpL&#`n_bcGN{=o5kr p,^\.j9C&í[|n9x:!T-ZėA*j,McQ}ܼyYܹcG||;n޺0QJsڵQQt,ey'N sxŋw;n*#G}qlϪ0'lm uMwSCA4l E:\w Tzt 'w`$?Wu 0p`:Cb0%HK9s˃oD!P-RR\|ڋ^ٳחY+dLޣGfVcΜ9o۷o7)Չ]VFUlϪXY@Y}.*5M59=.5Jc"sp(Cv2PT nZTn 11O@f&df֭0c,[jAХ BǏ[BȸUZZt]=ԬY38q;HD}?yb^3nLoذa[?yzvNU@Jrv"sفnm~^fuz} _eӴϝ+P}Ek1 $i2!q)3>tSΞ-i\?{ؖ0z4$%PT^N5_!cgij(0KP(ݻӣWsrb1cUGÆC;VZZZRR4xL禾>}sO  wL>M'*n޽{g̙0PjǜUX5|͐!pR #0ogeӁ$!=t쀐 pF|ٗ4JGZ 7&AL Lg~}HNKN*[~2dgl<ރ5ɀvTRv:$Ug֭ !j;77[:::2Æܸa䯿HjrBCՓG:u߾?,qKݻ'&&#['*&L|8ܹcƌNر\&tU<ʌ|9\\R۔)g:W]G6n\jpRtܗNtG>:uS?z4\ge=# %v\W7wy'BN9a=kxe5_!?ݽ5z5B!޽_J<% ]]]{dS] '@`eЯ:Taΐ PR~ _|ߌ/]!$lmKX/&1ٳ0iP<й3,ZYYX!ЛٳgӦO/xav9L&s&Zh=ƍ^^^ƯNd$̟ӦK`fOث6zHwBo쬼;w؟d,4ihBC,/&ty]ڗƶBUEQ[l(I& Om[) 9;32֩KR]6ycC*J=rDR"?a 닊=ڽ{ʖcQ!z+d  .?tݭKHp&\|pҥӧmեQC?=s2ω˹aЇ[[l vZreEU%K quuidbY Ŭ3}}|}&IR{t_M$%h@AA…Ʋ'$$hm޼y`UVXT)g͜9m{fD"uֿӡCE ^6n8'|~E,;v ..vԩBZ( {ʔsjYyUaW -o&1/Bg&B1x8{X KA+ӧOB@aa!TԅzY߻ر VTЮ}k.gd>tHQŸ)gگ}{=~xժFPGRSv튽]vvv =z BBC`WL ?/޽.[ƎqFf֘1c`(Ϟ݌t8 1 ~Ν;u28q:w\bM|U6iӦ3g:y@c3$IʨQ7}ǎUWGEEVDL{5GEt\\vJ}W2N:/tD2ct?_ G:˭k>?_ZqqW&5)bJ$Ȉ`F^?8)~l v rqiԶMys|R.s ۷o>s):%oFя>l.s!HNn }ɑm+d2N^^2-p%;iF{x]&N;9\Ŧ\%vrjDfѹa#EQJRȹ!<(Ni1wb'GTf(--;9z,jAt{$I#!s|NV_+N]]KL?+2mb㸭O;Bw%+31a~zٳf2 ~_&jN9ׯ]b_RfGn&NP ]xqCJjժvtJWrqueNyL:e޽L$?~q4=i86%/5))3tٳ?,((`s> gr 6ýRgry^^o  6ʊ|>cǏH$AAfd8p`De^z+==zŦkL:4hѣG@ JrڷΟޞN Cmۺ`ɓ4lذ :z5Tܤ-[6:u*%%8ɣpرQ#?QQ+?9RgL&ХKWKJ1aAeƻ޹{nV"]UU9ӎh9sVaa#GV~Уgӧ?{Vzvv\64h03ࡤM*˗kk[O;BxYdܐ6m۶|̜.@EL5`KKKJ5wL`^..tR* OINa7l׶MvVy4r6t428 FEG#U)ԩ{;9Ξ5Sgm\\s Nvp,ԩb'ǐ`320rAFM_6YɱM)));9zyzTɐ!׬izO?mݺu~2Y]A}NÇ u&I7ob'~rW4}FIbo .\˼'I럏)vrߘF 6`q\$#ɱY&hd 2iG͋b_7>xpzyQD*R]4H8oysfggi$~[ZZ,{Y۶8i۷9 H'BC}L#2ƦcN[mxU۷mj$-_>x2ױzn>a:cSL A򽰰I[oujooÜ8Ѻ$PǢ IKN:7FҹI@QT*}葑y<1gϞQ*ZWsUٖ7c@\Z-|BJijS*R>VoJr^zu!c(*** B)/D" III'B!0Rimmmrfs\H  !Bss!B^B!9B!dc{:#B!}ІB!tT؋2xkB!yQ!B^B!9B!dJܻ\[(@Р?]EAi4@n4A̿@4)zZS1UPASVMtY`Y$lZuYY4).FeVI$UQ? Z|VhDӴ}#94 ]0$\hN$f*B0T}Hԭ4њ=,PWdFs,hkt/@UB!T(B!s`/ !B؋B!2B!́(B!s`/ !B&B!T4RH|݁Z[ZZr!BAJRR5vsspp|ݱZxR!eEa/ !ۇcQ RYPE4M4AM4ѴP$Tctp_%EBnЉNX[[+U)'J$I$)T(2$$TFLdccSAVrk54@99UUW9UıBL|ZJREP+ I*e2BIR*ϟ?fcc]]h5QUk?cQ!fرWmܴ9&J7_2d O=rd2M:;>Hר݃6޽l;v촵5Z(q]/{-7'׭[_QGJ֬Y=>n8v˗'Ns矁=z<klXT<Jca4bBuč|wi9 H4hmhXB' .]5jDDFXXXh{&:O>=p;|pػwfט~%-^ ;>>11qcիϞ=k׮7nlذggg3Ee۷otz-]… .\XdI=; .ر{9l׮]۴iSzz:޳W]驩}%Ir?UƎ$LRIܹ=$E!#/n~}&4EQ̤(viڲ hr`ܹ^VVc@IIN͛7u6YtwO[n_4=i-Z4e˖u֎.[RvJbb"DDDW$~)kl+5 :GDD@zz:Y:v|IBB"ѣVZq`pgBa& )W4 Y"bNQs)9L25Ddppp0RZZWBE???&RUQPL>(8$dXf_Æ M5iڼ<ڵvbamV;]Rm߾=!!Ν}3n3Oo߾`/u8uBn*ˤa(JELOJEQ@SyQ:S/V=JX藜;[E $&i4ѦJP;}۷oɣ$I6O6ZnqٳD]:w2[K^Bf>y94;\;6smӥͩ@&S/V=ۿ?..~ՅMr%'>~^Q i4@O/_?yD^l'N//oTT}`%udkcSRR{d;v̔Snbkc _| -̀BQ\EQtɋrYLJRi FQmdby0 <&S/V=Mwc}!C`۟$r"/N\\ȑ#+jzp]h,8tTZZ*=tЂ?@~}cphx|+?~Ν9}&%%aÆ}}h#~qXBXE6▽?;bzQ4E+$EB[Nuf,jiL/$!11!1]1W]믿~{ Ю]cǰ|6b'Ҿvζmێ1{9Uݩc#GfKƌ='|J1b<Btf{\*TMݤiTrJE4]*J}Q̘dm4[ kkcGzyyx$|R*^8tA`VߺIENDB`luckybackup-0.5.0/manual/data/OperationPropertiesAdvancedEmpty3.png0000666000175000017500000021367211531730354025057 0ustar luckybluckybPNG  IHDRi4sBIT|d pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleTask properties IDATxwxUۇ-B:BQ@P)HSP|*b_ RQD (-R ^&nͶ87\Μٙ_=sF1fyQt0Z2Jd0`0(՝Ux k=nѓ_($!Uw@ҫ\U}[44 dڀRDT8rv&3jEY&ױ1a~hN+|y*kd5.c+cx mmwrN\Wڻ[u-GWEn_=lk+M1y&_W}b #BiGNNUYA9wXUi6ۻ֝\<¯Еny,ImӊH+cRz5P:XB\uHDYY l"/?Oit:yN ztQRRB@@jVF!((j}V}-Ww}zXDi[ 罷Eie/^)r])UT]}RuqUZbyQz\VДl6*[y/M:2 MdVQQJ%vJDIi)e!$q!Ң$:4 CTn|KF!E7nLݺu撚BLL n Z'^}[ i#Q*l *\Rmu"Đv G-SJDii)YYYmB$I iC%00e1*ƽz೚mkWWmC۲Eslْ_~ի"ɓ3dٸ*mz/S ?{ƍYf8q[ztBfCTec}J&꠭;PLZ^#UWsmӺMò6mzU7RwPpJG\z;pXETt"~Pw'd瑋hZ@qyZj VcZ42Juhْ`Niő*BZ6ŪgQ wKITi1y)ۺQ9-[۠7j*[f9^xNON#---Mnng}H>tI4oт4Fӑv<-Zn&oIp8bDvVᆳ >^Fpp0$¯fKt Qq;"Iل#$JJעߟm5$  UsFV?ݱa+CYyövW|imE{m~uI(ݦ~j_2ion|p8Vf yW^A2ޔ`^"##y7\gٹJSWĥkput{N;6N|!c] o6aa&399L6>>c^6NI7UmWt3MVT\LHp|Oqq7nɒ?̛7_oP\!,.aC﮻ ETRc:ѾAgAVMqq1ZR\\L||?vU8y$ǃ]۶t|=,Mv'N >.Xc4ngҤУ{76Io>Cʮ8yXb9ڴnMgre`>HjH.]3{6:ĉCmHHhw$33XӾGw&N@QQ~mfJ,[$17vٳt@zF/{=Ӭi,+n8$LikZeϦ?wUj^ƻSדcC4LH`[wF~m~sYM(--Jeeedf^wŲyfnڅիuK/qFf̘Ve…||ۭ\.7xԴ)6ϙC& 8NGյMZ-*??%ITJ4cmsssPRR$7[w*.be9ʊg_vcy kӿ+Um+S.IfF2OY|^c9cKxQljwa9L``?ՅaL2ޚF]Mz3<_z"oe?y,K.PXXHXXEEEѷ/)6Clܴ .\Uسg/[~0&N/7?{63)g3g.1)<9b0~#G>`sl_TVrx]/U[ݵi'O} JV\1ϲeshKJ08i$+sf|z)SPVV3L&{_2m[4f̘^gy;6.us=8xβv((ȗn޺: }%[?αvlm-Xݻ9a1/RoGms8Uӡ h4Z嫯j^o@?W*/} O/r4x dצRKv{;8ptFSȑ_T%=y&'T*Yn;,o*%ioSO9B4݃q1hΞMeV}}a8~߾ޚB`yP^$|?9tޚE',fE@8||ѬX'z 8;֭[yNeC\1_e901wGWmmdO^_6e>])}nimtZW{u:b{i+_PțoIJJ LnɶlShF?_|%~!k׮wNvA3oz\|%vKLeK :Pָ1y_=%͚ףQQhc'r%n]~?~'N XQ 1kL0^gtGtm* ѪS[y7*bؼ;v$!Cc1qDrrsyf*٫)Hپc/ӧ3?bM:x{ V%dqơ뉌dxѪO4o֌=z$_xW/yݧ?ol3` **X+Ws|0}:ԩo]ܞxI7oN= -Vي5eXvZ3fcN`-T`qs~8!9kӷ.whCkӶ* Fmcƒ8}$[4/bVǾZ >UVl;SLvy6Z.L'$!ƛ.dfR/"`JJJP\.RuѤIU*dgT`9 HK;g%2U*rsR |6|w7p·Olg};dٚs7OYs+96yb…恑#曌9Z 6UVcNv܉? ٽ;gl.noKlXYiӦC*W\cN_ot}eN:eg&A<$ro߾}ě]௿a1Tê\Ɉuc;vߟf}CK[ڹ"&صb{wmVhuJ WRI]mӲeK-*&mҁQTW򝗗NoW3lPKr)((D7dϽ<gS8FfyuΜ>U߮b[n-ݍOc>&۷ʫBԩ<>`'~D#66:vQFDEEh4a0| T}DX,2uٳS^$r }`09s?b9z(J4 }'XŽw`/_ή;edZ:c2$$iB$W vuXƛ 6g#'d00fj&LxͽʨX̮CʛIJccSm ']֫UQ_6iiYi{ʁQ)F[|9~Grsɾ|edK>y3OYz65&{a=:q$6|O\]^y  TbT yA C99$Vv:kZ!DEE3nА8IB"QwXDP o_*ԥbr#N^?*3*<1ؙZɁEֹɉ]`0o >X`SٰnYj/rJ&&[nelOf۶mKe !!!vر#tz#mvbЬ/ qc9޽{S'Ӷ{*ϣGpֱ@"Icv 7M6b0HYYu߿+s$b-[nRK$t:+>xT|*k79hwMwb3k-;" vM#\%o 0L.۷RÊEPһWsFTtYY~'Ʌ|+E?_([K4iԦK``q\xӧfM a?ybc _b0H^g\*~R1-O]i<[#ϮRG +v6IΜ؈gF{9:: I/v_b f}F I드۶xbN>C~.F][NeƌrYcJu5WƵZ44$I{;glVZ?waǎ 6Fmƒ$x#ƍ2y {e%mӆnjbVLK˯l-wǚ={Xx1ڶᙧp13$|AlkIYmuX=5;Fv^ [瞣Nl;A~8ubc{:en{y{|B\mmN8nmrssekK|*|/^Hffl\a9q,_ϥ:DVu$I%#wBy'i`ket:;wGFPb \dh׮ ǣV;|G Vozᑰɶu2lڹmN>n 5w{E|bo~IR$1|pmwԩS'gϥP(ӥL<+Wrl9uVElGz Z-E4RtFVRɩSY^ ??UnݺbXWU ?筷RVVFYbB9X$1lPC?|J`[zǁOlk];'6iji+ƦmUٹ%>6gra:6vۻmZt/5}91 P'N8]taZ8 Cdee_P@󔖖H  #&&p j.b+ʶwGzbpb\TTΝcŔJӧfjС#>, iii0n/̜1˗i׮;ѣGc0/(`Æ 9Ҕ zk3 ?ukw0i넗eh,pJBBR]6nHvv6 7d=黠BۍnT*Y['N'&& /3}i4233TqBNNhZL_osx$A8bꮽDdU VOl=VB:jh|))-%(0˗vIV&;;JETTu&*IQ\\^GRL@fU8X!b}W.[cm(* xٙ"sWZ-Zt Ӝc}k]`Uی &?|,ƷnT(j9VԙMYe^彐eOejRR\/V9UʻbB0݉\y_)U*X?U`+'[9أʪN|8jlU)vkh5-mc˗6 ?U-j5111ĸ-*\j5fϭjjOn*?%_LIi\-|k~JI nW1vgqeēeIrFFX4mVXԔyv0Kkc<7[h5bO+]HFU1oSnfy+'m$>rdB J'^IݸU$<-lݱh{m͌KT[|xNZ󪇗ĕO,k"֭=v vʴe[nodo|6}ɹ *cs?y"%M\߫N-|xPyJEWơ|>Ǟ/wڢꆏ!XݵD[}ja*>FUE>aVFNUmk9Ȩa',{W ȇ |*7d ![d*s 91lWH>ja ʍ PIzduܬGxJuo}~s+"M+nZVumuU7rp3K1AQec hXY 3򫲞 Q'>d'F]N ˛ȹ{$pW7H IDAT؁a7+^']^M+{ֱU U>9U+o>`ZPO?OU26WͅHe.LaU<+WVcrgOWmip*)dDZ )뾀qRi[zޫ`,}/V>V{wf [W`YT%ˏ/8[9gMJ@W.xԡ{3u '5L7 vh]D?o,V-U#ՏL c+|1 D炨u#N:muزyWbVUem0tf7}OVq5 Yb_WW[Yİ311%.@>؏N=MBᭊU&Va`VⵆRBW1]1Е>e+ު:ܬ6y"lyWv,1\+gT#/5R[+6}bo-V1ZU1񚓓Ç(,,BH$*ؿʫ?>o<|5f%VTV"^9p~K)_w*^=ȿF s-Ү}{"uKkZ\sssbrA  8!(|_yږY+WW絾T4p?BG$ n.GoV@mZ,H89 x"_wu<!W^ϤH@ \3gԩG&T(ԍ@ *&** cx &((D@ W/AAAxs+@ Tc^=,yh/@ \7J*@ =*@ 5'l &''^o@VR}d*^ūxUVͫ$ItZ %[@ 5x8_$ѣlպV@ 5\>BSn;|ST^nJviҤ ՝@ jJřT:vxB BP@x$@ 4aaa4JH *'nEPP@  _bxAΝܹ3r .\ھbJS@ JJJxj@ Ղ.sN~ysu!@pM"nr3fr7Qt%%|622)..&""gPT ֩K8|0!!zF?]c((( ))a#F0 > 2Tn@ 9BZBדÜsdJJJxќ:ubKSXcןg m߸ &L`ZM5e*:޴ѣ<3gxg@ AMB p ҫW/6޽logM47wޡI&^naÆ~:n}iذa#G`myyy̜1^ORRSLaΜ9tt=˗/ѣNM||iii,Y6Sz7'OfÆ VXStC߱1GGGEؚvpӺ7]@ ADW7<>6/w^VVƳc.UU6+Gwd]tWSq)@ nT*y}<0r$:ukYl_|IFGGӵKZnMzF|5(Kttu6T s@ &III^uݺu;_}ͷ~kZx{DHH$1iDvkO2f._ϐ!C#n@  oM 1UG׭p-^zYg75YQp.-qOkNJ,@ F ALq6z"u؁QFyGtM|.]ɓ'hӦ G? ewkiۦ BۛWh{%..UVLA~> 2d0#klGs霶@ N99RQQN8ARRdbZɓޣ՝@ j]vҴiSm %)))4k8!!b؀}JKK;@ 5*B "0(˗/a0@ 2z˗ r *pH H;wB@ \z 8vB" -[BA^^@PtP%ū'J j+Vс*# ( @ j B @ j B @ j B @ j B @ j B @ j j <@<@ \ThFOu @ j [$ ^NT@ Tj* BQ5$Cӡj#'ī%iFASM@pͣ눬W'%4,wsWO0 @iV$IB @ @RZA2xW7IOOgРAϜ9nw Uf_޷siu#"HjܘGϐC}6"3)> .\`%/dffP(W^<ԯ_S:r}p&ϟ[W*а!ό}˧w^t(8ƫ#@ UyuzrrٹkMx7nNΝc!\x[n`N8ڵkYb%M4Z|`ce{yqͩ/sŋL6#GYlk= ., }Òb]ջ.O>źW^y}>K^h߾UnZJKK-}\]1]xuF nn&Zy[qq1=zݻ3w\Ӷ2Kqq1</;w"u=zupsn<X?z.]Jcİ#п7 Bjj*퓵יT)'7/j1q:DǎѬYSƭXկU_ov3}%//ټy3 2}W^o+ ios}Y~=ڷj<{};@ xqvʹiݚ{μ>24V9Ç߰H}ЬiS $[hO?ѿnzFl+/۴`79s _Y;?-=zp]ǎ|`$m7lXύ]r}N}(I>iwK֭Ʈˤ;yWH>v?:y2+++c݃h׶-={_'//ϮoIHNN{;uc8ErsIwsh{[&IlՊvY[ha;ެiSM>sɍ,7E,5{IOO'##sUUȀ@׳eM~EhʮSYz5<ϛ7Fq;sLtz=IIIL29sЩ,_#G:-&&xwH͚ѼY3ZhA׮]8t¸q,/1 >?o &L{lj Cyg?w޶$qF?sff۶m|M9m_Y^yeZjͦۧgL~CZ?ٳ{7ǿ/ ".#:q >^grϽЦMY0Yϑ#Y8poYK6t(/]rwy< >+V3O?K/ڽ8~}4ÆCL&͝KAA|E;STύKB\r9>oڴ O?1fLnLWWgE,b+n>9^zE.XhmWEaUHn 6&̬,~GJNN6`]u Hbb"~Ν;׏uבB`Y$4LYfs=z6~m8mO\_Zl[nȥKHMMe,X(`ɦGۦ;;v@jj*K,1]h1|&]vET?)++3NNNяЪeK>dVUP2ښ{4+ܳϱ-|`s̱?"##Yf5?o̦d,^KӠaC| ~03gR\\̼>[o2p@~s+gyه|"HLl|@no;v~WίUkCӦMv~߾n޽=N@@7ؕqKK͟7-^M7hg7vǼ_* !YpIIIgrcz:M lzi^~%N@:oc0xǫ|VgbY*1W *~|rUp!.sώ9r391]=^&j6ƛo;o3i533ioMFt:3 B[EZQybx7˗-?mWX[7ª}xx11ƪNnq_օL15eORPxIv?vӥQfeeꫯ{nJ%M6}4lؐӧO (۴AcyTdqޠwXXź(._0?KxxZ4P(lي-[1r(&Lxe˗3Axȼ@LtU"BVU,[u:&SX:uZS,ڽ更nӚ͛7l2/ZDF9C:t`w~~>111V}IhȢ7cOO?OTT鳣uLNLWWg Vc7Y>g_|:TUXⵊILL]v>|pm/**xk 늟(>}M!!!^ɽ2bbc1m&{n{4{;oOLTАԳpwaZdgg3p&M_~ez0BkaQ!& yg]̢A2i8 |BϖYmS(ts76olQ/",tz23/P'{ɉ)x@ iݧNbڵ Ī mqV50pqlkp[.ݻ1//gϚݻ&IƪbbcK.Ri߾=۷ytZڷoImm _LPG?Hl߾Fč7݌Fa֭>-Z -O|\/ρ/M˟tiӺ˗8reӏuyylmڶq8n֭[g|4ٶB֬^uu4qKZ-?ldZWVZ?lk׮n^9/9;A̝;Ǣc>¦7{+@o}{ɉ)xX"ڱY"|AJK"D۷/3?x:@*Re>x}zj fia{|24q"/2!!,[9vsμ;?ǭy^%19f74 Μ9Ö-[h۶ {6ֽ&jJt:O%%رe < /~ƍ/rI|F?ׯgY֫' ]{7&ÆS\RºuQXԏyͣHVV#nc癜rW Caa~ 6*rI@|wlɥN:V~X{Y*سw/{+]vw>Ǐ\ZAADDX?*HƗEc}Cu7ĬٳHJJbԃT(y뭷1g{=233iݦ5˖-i&ON?gڵl{OW;31cgϊ+3g._}5%%oמ˖ѼysS;Ws}V/`lu+?lHOyP}NgG9j$(\Nddݺ̋/dWTT+VdEl=ݛԩSM{ɉ)x@ ]Xqs[j'N$qcYOqy'9> M69l;ctV\I۶mϭW IDAT$?JTLR.@P 9tǍ7oܸ1޻3@ ]Z$&6FCRR}k*(++tرcM7@ )gNR~"ڧj1ϧ^zN80lSP(qQ"""0NsпNA Z?e9zF }~UZv*\ ZٸJ",,P~e ["!1@PM:qDf _ īeCTu@u$ !66ؘxQ*OdJJK;%@ DP` !!!VԩB BPD@@t\ kBQі?V<ڤX@ bzZ|@ U @PkU @Pk(aAH(@ dCT^@ !^@ 1ϫmrrrj5* IP(UW*^ūxWI(JZjEݺu["!^nѣGi٪U@P#thߎ:udI^GӺWCRPTOB "%5ӤI;@ yQTIMclt:Z89yyydefZ{i)ī-  Uw*@ 0%$vzbZn^G)N$$]uo״=88ZpBCCQT^=YZZZڵkIOO'??zꑘ؈o@>`!\@ aE:z}^Tb2e)N'; 83HHœy!:u|;yyy~y33g 00@ zڴLS$ϽjС(s]qJr2(**dN~?EMKAzFz=qĿRnBkR.X$\ccb{Ǔ˦M?p|@ .@iVkb>IYJ (.̧07ц`/. WD/i)-  īw/g6dLII 7ǎ%tN8I^^.M5w}(>Ν;իHIIaС۷Ϫ-@DDhޜ C֭ؾc;_'Nƍy`H⮾ǎҥ$;FAAIII 1˺oȐ!Z'E8Uyn%(*,< J) jڿ"QG0??! t-kU$$yf_u:KJ8u4;_QQQv9tz_[Oa1&䟿៿aϞ=L>)"rrr8Ldd=[9v,7xBF 6֔r;r(G&O&}Y@p"IY)g_PDrFN%r b)MdmPRS$^'zkڽ{w~'ƌCӦM[x]G:]׉)SZOOOg֬z*?25>|[uo~{/ٳ'7tN/ ѣGSn]kҘ3{6wVe挙z=z4uˁ|rz~;m۴q;&&FQ@ j$QT&z>Y[:!(GW75B *,FFVS'5-I+py> S8u t7FAÆY2O=5G{w&775kV{$^U*oic0x brкe+{1Z-;vlBf&( f͞EB5k=܃^gׅ ?q;w@ I*v&CNj NhhhMi B3Wбm$%%@Uuxj_ԭ[>[c?).)Sh\~%KҬiSΤ1ʼfAAA'ܹ֮4rxRաÇLq˭О ?!!!111L{{`<;ئ(7@ W/$!s>[/@A hVCy)Rhs۠RhJ~"uokxn&+z˗/ӭ};:cǎo~v)((`G1w\3L111"##tهg>//3QP(M^YД@ l#I(tnHx:Hr;sRARH9u6Cՠߴ^5kTۗ|&LСCQմoߞ裏0|/_΁,&#::>7(2넇)1 :ݕ \166'OPTT1I;w."t]'S.L>ݦb @ v$ QnA>r(5ɧ.~%(%:@6I4lK``@Ij0qqlٲ LOh٪i0_׳wZjeZ_l"Ӻt׆4ms_?{T6oFtE[J[PTᵀ? "  *ցPY(doV".i64m"O?=><9 %QQQ6 ƍ(JM4A+UVW@ $IBU&yN:;ꀧ :cggB@2Vݻ7'O`-:uSN s}1j(;v,_̚EFF'N4 'ܹzȐ!:tiӦUIF___Mxk]47?&.>qƙZ%@ K:#bgg8戗.8::T*KN+WRɤɓy{7l™(n޸ !!!ٓp[bJ9CNn߿ 09}|駬Y .GRѭ[7VZUFsfFfiOӦXw=w47iKÆpǎpfΞ=KfF 0}59<͝KA @ .Ja rxpv銧;.jlF"eX^YbbbhԨ wbb.ұS'4E Ay8t:qqqxK~~ޭ4Fd0< I $'_# l^OlllY\%ro@ Jke,ɰ%LyyTjd22 [[ 8;;accct/_RϙhlMFxT 7oO@p{ܼƶT( qtt`Ϟ\"2Jcbص{'N8::rΫxI|=SG@ zrssHy,<*adr9ΟXooИYSUP%4 d]q@ Nںr9NNN*\˫8l5Q5>e@D7_pQX@@ ?d2-j }bZv'ƑZz@ SR#l @ *@ cƫ@ A@ ;a @ *@ cƫ@ A@ ;q<ʤr9zJB$Id2)>ŧS|ѧ$Itdr5m6ja Dzz:QQQ۴@p'?V-qrv:$Izt*WAP ]Es\EVcggw'''BXZwUqt:x{T-Izz:גQT־i)WAdxE@8::0 +VдYsz=Zmp$!ѥ^!/qjoggGH{: FQY~DSں@Ǘ䫉8;tBDE]U$JB̅ [3?VYkx'%00VSe@  dffҼ+[A,&R讝'75,bRbC <[azz=nn\8 y U:60cH^ONN.fΝddd;]*ε\.@"@ $<-dA.ʔsRbOJnV:9Ydgep4-6ف6>8%lxL ]yyZ$5E]v1_o{ؾ};4GEGdbFGIPPO H=MVt:~Z7m&>>WWW3<ܱ#/_'4%44|gf4nwqqy8~GGGaܸ7PTrrsDrrrpuuW^:U Ed>rB i4=߿?2G)w@  74YdeNFfY1w.*d(W˰ipVV{*[/{UW]m[:y /DEqf$._Ę1cgbUp5]Ç`̧x_ts= 8?Po5 [8Rˋ/ 5Q̍7Xr6 ^j`NkaƌM栜:yS'Oqaf̘QfK@ ($Id\LFR<ٜM@.d#iк;oR!C+@BQv[z–#M4 11(na31yd̙?e8@AA6muL`"ÆCYYMpss=]]]y;"ͱ}gٸa yݻw~^ É2m4Xv@eHLLd֬z ÆÉҲeK޽^^kUx@  $I";_"6!7cFJ#SnI`/63Ӱ~>8;:$.۾UV7SSذqd2f͞E7o߾zlD hip`ڵoIW9w6*|>cj5cƌƆ^zÏ?f|j|FM#aܸ~sf^2[*Fɋ^cݻ7iii[T…_[N  I(%/N IZM^U2Zp' 3(iׯK./8gϝ+NPP.]bYz5kJ1c*2P[Ofԩ|8i6mYqF{%G֖aluqqW 4$!HHQpiW :7 !N69 6?ҹgz i'Nd񤤤ϲ̛7VZUY>cȳ|ƌǫ|s$&&ke"y@ J#IJ{uIKڥTtw'#=W҉IGAWE)ZD^wvm5^׮]Kvv6ciQ4M6/q59vaod$999dff_3ZٲeFӓ|͚+0 &;XC-ӍyY@PHC`c\\\UgOB.0x91!Hy8F3yxj\v'N`|4 ?< ͚GttqΝ;0$Ib |w,YSN_˖-?ڪ$6cǎpAS^ϑ#B] H ;L.Fr2WG;|nJR' ..8٫jhZ:աx|ɪ{O?7lR{5~-pWRqWg'\pWWglQ(HklI kFKi(5VZ|zoL\|<ƍ3gŵhqC :x$#5䉓O++T^ 4#I-bѢEe^B+%Cpp0cǎY`ĉ&=xΝ;WKv@  }?r\O-vjpvV쀫nxyႣJҸ߼$%P[͝KNgP*psuή&ńÚ5k8{,4 d~d^Ϗ 6NiӦ‹t|Ξ=$ܜ- 233iܕd IDAT*_$??777b. \.\%VP9aVMtrjVJ^+3 &ʫrG` /OK6dk d9#$$p$ژO#ڭ>#CVȭyfI- 3$0Q^U\>$% #*hweJ㵦 i}Ri(IH!׫'._̙Ӟ;o.IsK9VPvd_\<ɵ\.___<aٳQU<ѣG5%̵Rv pf &OТeK(nn\_~a׮|<4𫶜%i;={777چEVsLK,aǎ|>s&>>>PY%++WWW6n@߫]}_MSSrWȫ^_'''>=/|rڵkǽSbVi A_E9v"??$^UӪ*2K`V X稩t_W7=KX8ZAh5k~Թg}[Bb#Gd/xcՒ0ޫJUۭ``1d=xM/ͫ%Sr9ͨQPF_֮eѢE|8C̟_1Ca WoNÆmۖ-[Wq7l]?jGʺ.U2;R ^J%˰aس{M7=!+iUOjJ/.*+{P5Rl!*mZˬ]3g?gжm(oGDi¯⯿/}楗_6K}L=uT֬Ym~y͝DZcG1 tz=7899ѱcG^{u|YYȍ9__h'nCUm'**ӷo%:-ZҳG9͛)7ktÇ9z-Z^C&rظqtڵR kzRȵ9zO@XWvExxuݮ9 +wi c&ׯয়~\z{{B ^0v,[O mC>|CO~䩓dddIxA( N\|<. ~N>bnp&Mbs /ѬY3zxXiuN~5LZWXwDGEMƍyhz0|h_@VӪU+FQ6zk_XĉλtОI&&rI͛KHHUePϽs{Ν;-[_t[ƙ3`СvveÚ:UKX7|Ƽ;_IMIŋA+~u4pAkRSRxM,˗883a8;9Ulݺ$\B|1a*Չk0س7vKBЬys^qCet4;CEB2[[8p t6>%rR;$GhҤ1l޲}z^J/X+5ydZ)ĚGʺ.(2^;["*D :|9ez*GA_y5 ڵ,jcǎeٷoC-[ߓĉCIIr95jcIOKѯn劕 ,^-S*dFZ⥗_ݝ͛73n8.F>fС9SNW IOOcr UZNKnݚ>ͪWknw9ߌ;`$IT2rH;;;;F.|if~ۻ$uWyۄWdx,Y|<ܱ#> rcGRPPsÿ^5̟zڵcA\` 7c xzzذ!>.]f/,Z:jILJbM$&&2&֖6 FDRJeðaiԈ3Q|h|T6Z^{f)vKUVU%wO+h֬)FϏK^b%|,YHkuM(<5qHH\"113?RYc.ФIcd2tfϫyffT5ZG&>k@U҂KTvTkeAe? mkkGvv!;;S>2J'b| dm<쳜 mCCh}( 9}]޸d9̷_$(0<Xg>x Q)mhXnZK[Fnn.'|@胅Dm1r?#N$ވ#h׮=q橥ٖʫ8㏗8f->r .\3K|ǣ]'z"+J2eP:}"~\A^^S~D֭3˗/WNRw_k7_?? tFӧOhhap_Sa r! 5بh߾=1.N:$It-gBTt綔SUs }0x``myi>tʏ?O?ӕjڨo0/_ կ*ՉAh۶^^^4kڜ$VY]Hku9qtt>>\# kT~9sDyFڍU?b֭hޢTzoy ɾZ=P>G{w1^|]qgggtt4$1Af\@&Ga %t#>jgϝCV6_:Lڵ3+cimZd2Ә'N g)ΡR-tS(t0{,y&n>>trRXS^c_\?BnLFȑ#8q":ryʠ<Ǐ֖63T6<R%TEtlrbLlJpWVtʥ-I&2*vIyˬl ykܨ#“]CFF~}-͛ _1((0CFK^F}ť%;'W#e|V'ѣ$* IIWx"6Hku9qprypϰ,Oܵ&4&>pK*B/{##5j yd5Gִ>;*غc$U(/Lrr2F^Gj6;c >~Y {;pY[?h4jaJۙZ&߸[~F&n"gaU\^ˢ>>nӚĿ2ePP +S.3+ ww2iNb>JyT*W KhKtt?ܱL E(FVVv_WM¹sM t& L?йsz=7A匼Zʌ\͸7 ""$ $leSVT{+dFImu7 y `єҜ=wG U%͛| N8\.a^||}VWï^]ŝ_÷gX3///ܯub9o>fSV9jVTO4'gU.b+2y p'HNN}vF??Ξ;w֦'OL&G=ѣ_yspBP1%$$ I\mP\QFf(!wu [+o\@p&[ٙ2rݸyG2iU([,:T^[Ƚ} am[`?!=WsuŕweرL .4JS˖{ehjYǻ?ƺضmkg6_7{:uL&2/ĉDDDJ`RGZ+G_^>Wi׮gXj?˄ ӹs?VO?֭[۷oU<2+Z=`MimXs6P7w*/'LnN.~ } C$-[j=F [c'^|a(7n0iӦ :x$+W2c( 2qOuVfIF7J@WnZ>HAAF7m##iݺUg1-UU,/sW2{|!bL)i*y9WRS9Iڣj9o-';NU&UX.}ԫW bML262bHyh+?+Vx^|q..&^1www>8 fϫ122M zZhO?'5k'M"00nK?P۔ʕ+M*Ue|am5kYʿ>gu[I͛7{Zl=MU'7**;;;:uFe2L~?%ܭ|!6nTnݻڗ>5U?w؎Z}eT6*t¥K8}ZV**ȟ5,uP'#r9TkzF:K/ _dN>MFF4 Z0>^\ҹ :u,sCe}|1s&qmvR<2,-<(9怜*V\Vpsu#pb k:qCCC?b<`(lٲ}|:Z]aGºuذq#ahte|rr2˖-I<gX*jR'Oki}cl޲-۶мE3aV9jVXGZ'֔>exɊVsx !!ب={6+WDՕ}ynsM/<\͛8rnm/25oK;4c[yE/ ?'MĂ q4a/ ldsu89:u* Z%KuFhzoSf͜Ipp*r/D/UW\V!<<~ZAԙ3D5n܄{˖qfS2x≞xbү_?dr9s5sssgW_odggӱcGzx9sY[* _u1o&o~-1b#Fݾꩧ2f„ e=&*QFXQe[[;^5}ļy_2}zaa}yKr۩l5kUg=Xh֯goh׀駞6]=d]V'o ?$0!{eDGGNGZ+acb){1 m@VqVX &MF)Jܹk7P|0͚6# e[<2G}kHkĚGʺ.ܼ)ݼy \/ 5qt\K퉉ℭ;H\\c}F&Ӹq0Q@jK8+8;:W Da"%.>^O?? c&s3Aϻemǹ\rŊ QW@vT۽5X.+`q,+4*uv[0h@ XxwBa ~=:['ll̺nwZAE{UU *ܨ%:gG kH>FڨTN|adeeaSeK}v[ʫ&|7a)/Dn[I}5y`낺1^ml=,Wߐ+-UXGabxu*Doq' ݃ xU*VQhXi71" c^^1e)Ϋ4[Q*hweBƔݼySyz6lXfenmIN7NՕW rB|ܕ,M?!`O@ 夦r-9 UpJAUg펼z nLVf y;#2O@A.cggOH{:15Myy88:IFFFmJ 2#I ; 22A>$_M٥Wk 99899][@ pss#33}-RԚ*B'FY@  yiDU @ i-@ ݎDFI @  `@!I2 R\.G ۋD`5z$ÓMhڬ9!D*RPPUx cǎ 8ŋ[e @hhht:uW 5Y P6V^m︺nM{F ZǯKU_·nӚ% |z4^U;Sth 4 FR+YQ6"/7+WbQ?a4iii}uDENUk8u_5[la4hРR T ϧk.xzzn IDATSFfVsTy=u)))emFP{iLYYhZz=^VOVV& &k``s&*dÆ lSNeu7D"""tu2Ԧ~(&//3gS;zcJDeS 2 @%?/t`|t:A!deeV8|۴wAr9C ~={ݻwރ JSg_k"Ղ{#߯͛8yb,^-.ĐFHz>ѓ,$͛6矉͚5-7ݨh,^h233 ⩁ճ'2nͩZFMVVYJe▗#rVkb 5rI_aݺǟ?\ٳFpoQ&;v0a>d=ߠApss嫯Zΐ"*s+Wh"=JZZՋ CiKקO>u֚_ 8qz0ˤ|K]̱HHHё;t`ԫm3 H?2QFg6mWckk[n؄x/XS{2vhM63g;g.SN!66Ea\I&L< .X@ٳȐ@k<^^^@!u66oą23h4>y'B+#G{"Yv/̘S'Oq)>̌3ѼᒒHJJ2m[:y 鞉̤I\t1cT9$I"77?E#*ʕ+,_ǏӶm[^xa(~~F`&'3c ^|E~G\]ݪ,Ē~kC1vvvDDD0~x^l$y cǍӋ_֮aذabCBL^z%\Bg歷cR1qFZbkӸq'Odʔ)h̙3%K7ЪU+zM4… ̛7qcDZvZ< ƫt:o4,)suu%55$Nbb"fFףT(x7gu?ݻ{#ڵ g #G 1!Ę-&==DСCqqqa9~˖-K׮h//OZmmfm IdgLNvI?9r~bpqqs89(sKy4hٳg˸_ 88Cih4u֭m۶cggG],`|r233嗴mCQ?~J߳o\fϞm\ZlI|\<˿_neXFzq–#sbH{q8v8]te:_֮#??#FXwzMZZ֭k.l۾7z Mݰqd2f͞e|Ӹqc^gMFu¯`@"ːM6_@ ɀL&C-:߸F%4 3Zler۠Ņ]Ջ6I޽1 l߱nݻY|Y3gh4k$ȑ#+}9r;[[ڶmktST<ԮIgri$I2N(AEZP9´O>aɒӜ9sZm4ܠp|.ٱ}g ҴjѡP?ʴgB @N8I|bΟg߾}V=5}#+@.9tC^'$$Fe_|cݍmmm Ɔ_7WXn5_۵+c^T$I gVֳU L \-4j5:t0Q;vF4db0X p<:9W^ϯuEis?ر޽{sqݻxQZkQso3T`:;##OO2i\t:y;ml`~(7f~2W(&\]H\&|y?XK-NtX~:~8\NPP#hA??._\Y7A!x 韑ˑ#GSE֣>j6|bqww0*to}C]-JoN(L&CTpU< WKK/Rt؉aÇ]r$JEEڰaΝ%jR z= tGXr9={dٲe}NiӺMұ~~ `0, r gFӾ}2qGsrrLC\M6nn+:SL||I r:u9zAA*zL kV?㩁ٲu+_~9Ν;r zɛk׮dQoʔ)L2ݺV|FT:*}#Royf:|Gf6|W&~i֯լ[ʤ[ 'K.5?ujܩh*._L.p;LeL< WgJr2ܴ.f͚rl۶\UW^zzU|V˟iҥLrFP`ooO$&$냮H棴AWP`+xrrr60ѣ+Vd5t֝V%%%hڴiaÆjՊUVL9е#d!s 6ocn3ӭ{wSЯ_rsؼy.&?^z%ɓx"..lٲR[ 8];wrJ2h{↓y% 642X~(͚1p@V\i^NJll,lu7SR"j۳gNJ; GFmm!n^]tfhGΚU̙; ~ Xz5Fxxs5H9sr-9~L}Xl)Lx=?{{;.[΁ eڴiƩ }^qsu< O/oILPؐɓ'ή, _|1^{_zgLPUt1-۷E]۷|1 .^wQ_gldYVEe+Vк-hk*ZTժP\-H]P{oԪȎaK df9?BF"[aO0s>g7=?w~.r]A`@á4uX[v6mSNϯJ޽O>GnZ|8q"99|?yܹ3?ݻ7_~9/fذaǵ}TaTVV:0֮]KNFYϢwRi\n(ޕW^ʕ X͘=z3xǀqo b#Szwf?`Æc`Ϟ6oBٖ2uLn|ؖLP=׬b͚tIo@QW;oCii)eѱcF:+ܩcqDž\xL-JZ$iS\\ߠSMM 7ns->F~~~|G^/ɍ]pܹlݶrR+, -3--p5Wx&_QTk|W\G^%y8Cmm-vr'w瑩˶0]&iidffM6Ɔ)/+{W}WwI"ID "G'%F^%yA &+zBؒ,~χߟ֢ 0Z#<’ŋK7~\9!(D$9ŝ~{I WghM7 p\.WR<9eJK9a%9N;lIr1 C#("r@ "Sܤ@DDDDp^EDDD$i(HPxp/9EDDDט*wWI"Z*KDD$9eYDx" `f¬ל0uΝj%ev1Mq0 Czֳ{vh4aճ'mڴ_FD"r$ ǻ-_aoG3iPUUŲe8g[DD%vŒ%Ksک st#G:BfY۶D-:]`dddMHoZE8\ߢc7{̲m;p$h 98ˊU+fbwB״tW9a33ůG@رn\..z@m7l˦լ2Ƕ D"dt9O1 l-+?}-݊ŻJ$! 61j,8jƲ,ʶZapL**bn\.4lYZm65kز˲ɡ˶W܏ms0dt lc1i$:~ H 1*""9j6^4cߏ޻A/ OȃmVn"u 8dydل3CD8حN{w6«Hph36WKq{ os0֠a%kH%lEHw857tSSN x8HcVHrr ~kz, Ӧ_& d!9XٱE+i<^7.A&^[wbqGC#""" q sd2c`p Dݸ0mk*$y]f*`>0|6k!L]?de2vvSCУ[۶mx ^_Yr%ջwFs=PTTrJ(}o,bQdddMGTOOUDD$A8fϿkqg^>_:E$=ZpX+JOYEQ":v"/3tË6Y_5U2S.Ǎ׍W#|~L2~1;)*+~O~|-o6k׭c1dddp=w& _,OLBaKDDDkz4z-JYthۉ%C!-P' [%dXxB~!Ʃw0\t8C֭[[Y`.]riѡC֮]vFu %ɮ """aW#vgƇvc&a84V<~oe%j7~|q _-gFͫi9~vD+(2^٧5lu_`|a.||>,rۉD#_G {oxKFժ*"" ۉݨqUp8LUUmڴbH; Hik-ľ`sbhߴmOh-Y^233z}w~pdddpzq_Da|>>|y&.};{79Fs%UUDD$A88 XaݺuӦMaNIw =L;'{[{$z N >׋i!L. ʮ]U?]/zxwwժUdg7fzwC={~ jUxI YY_{8~M7yӦX[Gw/:vm۴ NXgcYca}f0xڥ Gv|e/mۖWg~s̙3FI{ア6_2HZG}IHB2MiW؎nݺվ<^/׭4]7Cr0`Ўz,:s 3kDڻ,Y| կ~_c69ns%cQ;&ȫeYxH$ܢx<^C,]N;͞ .d`-ܓ]' ^C:~9Bu}4M `K{ұEYz5+ZA~^>`4[ZrRҩ3x!$!OSY̬&k؉$;˲QZAib\+>+PPPHA~>~h SRQw,$k\jٴq9mIKKK-ȉɲ,jQYIuu mssr%7'P˂dO v~|>"MW%T8Q"~0 سgO9f(0 4|>/1 b ={ұS˦+ȉmլX8Q"}>[DDDw$h5+>evQ """Һt9t֠*""Žt9OCUDDD.֥ᆣMÊa8{x=ܨWI q-9;liUDDDDH\X~}^`Ǭq""""H#C[lڋظiqHDDD$9)YfѡCf2y V:$'V0o<2DDDD^B0ojζmXd ZFwIyy9Qˊ5fxf_DDD$U$Txx'̛oɣ>ʕ+/ԧyyͻIꫯx}8_&_x9cE"&LyW4iWt裏9c7xcGDDDDּZ 7@~ۯ/g}6_bys~Lqݲ5z߯??Yjq^ L:={pW/4}P(D]]yˣ)S 0  m^""""$n[\\uvvvvSNk3MG-:֮]غN;IiƼyؾ};555\}>77 Lqs6t(#>>E$xTCֱK h8k˲:D>o_5] )|>3_~ݦMPՔ\Z‚yrͿ=wsI7[&JVV999,^(8ƍ'گzZZB)hj999nO>L Xd ǻoO =oݾ ǶEn]ƙgg8eeeL.;\zYg[oa˖-m ]r)]Aiz\^ 82a 79R~2|0Y嗱}Yuʚ5klWUUE޽cmͩ5VWWhUDD$9{V>26S]lXdn eԁb8O?470uJo6n^JQQ'&==ztg˖2^Ǝì7 7777 /nOg}0l޼/4?~̘W\>77zAII ?ߜ;p8̘1cppشqcMuuu,^:*Ym=[ LMM]PVȞj:&]6,W3j袋bxy?0C 3a„X[n8.O=_x!Cݶ>'|4ZLo} 3%_̔)Sx'i۶-#F`֬׹oݭgѧOw8G\.-->WxIy}Ŗ Dw;؄l]6[PnyԚFCPlFgѤ… qaCҥK׷oufF5ӭk76nk["|>Æ Qbƌ{ǂ:t(6n>9z?u`HPxIq=k;86;.2.47}&YkZZZ~hL&NxM|_m~IFc[YE9ymdɦ|kEmk3dޘ> /0H=yմiNOshi2g}CaFv 7}hb9̙,O>.]kcdgu6hl:@EyY_ݔ\ZS]}7> ?X{<q`kiZm@DD$ŵ7/v6< ^'.vw]C];;8ɓϞ=̙sO߰aÈD"9X[(b74pPmKF͛7Q2ztM4m@DDD)'AFI%sߜˋ/Huu5 `͚5L>"JJJ9yiu]ǻĻ&n:_ʶJɵMܹ~3stԉ38ͮχ HCb v3m4y}ΝKnn.ƍ믏@;z5k׎_y'&Oaƌ8x"JF/()[ok} ۷osl❭[;th4 |ض߶Wݺ"""5WQZZJ׮]~!C9"\. }ELܜl}vdӦwМWI """)4]ƻIp^b񏎚*"" ==eK#ǻ,I@P}˖өc #7,PxIAi  37]zIN-('5Wb MְWQXXrrW|.IP |x*""\.|^rs ]$4@ PxIia㾖$&0"6Rx ("DDDDDIUDDDD«$ WI """"4ڀHs˲F#.E4̈́YBUDD$EQ"dfeŻI@(v?:ƿ ˲gضM$wI]`ddd`f\QxIQ55km[Xr$AٖvTo!+M\QxIAmS]]Mل#aVɲzJ2]*""& DpGU+ ql^THk zcҤG\\{=svm۶ŽΖ>F^EDDR40p\ٳa9ª*ڴ`Ȯ{nFf:v_[s^'#qjVxIq^-"Fi۶-a`PM 4M\.۶bllق8 iw=;;8ɓϞ=̙8}g޻b}y|l5F}p?ǖ<F^EDDR$h`.Duu5|WAee%`7uVB;vT!aTWWӥs!W2͹TWW3`֬Y)..qw;`ժUoo>e۷cŊ~\p5x~TT"PxIq5v(yym1t҅8} c+de:ynM?ܹseܸq\wddd8m۶W^9sfS]SsFR2/vor} `sGuL%ҟWI^N:„ L0 ݿگ~?{&<'M)Ls^EDDD$i((tQZR$y>֯[i?:jڀH 2 4-]Fvv6>H8$y^B!.[N-Wd&``0yޥWϞtT$Y+WO04͸֣*""4 1\.V?"%I RWr󒛓M]($|>ܧ «HJ3 ? ϟPkyJhoPx ("DDDDDIUDDDD«$ WI """"4ڀHs˲F#.E4̈́YBUDD$EQ"dfeŻI@(v?:ƿ ˲gضM$wI]`ddd`f\QxIQ55km[Xr$AٖvTo!+M\QxIAmS]]Mل#aVɲzJ2]*""& DpWQVlݞiz\iH4B(ƱmPxxixK._\+(-]ϗëg0p@&L&o(-g?)Ç_?_~{瞥[YvUUU݋?VVVĻΥw^u nlҬsf&Nlﭷ‹.3N]_|qܿ~P^EDDRs۲_=O 6t jꨮ Ŀ<̽7xrǝwiӨܾ_\1n<~Unvz-&NrM\||7ԧi݆+.ʯVPRRikM9aƌƍ Yl }Ͽ/¶;v +ࡇbYrq6 ^EDDRzghm DNUOt ۜ)noxzGv[o3SO墋/{~}/w.EEE]Bǎ䓏c>:i<`೘Æ Qbƌ{ǂ:t(6n>Yp!0lַt|9pAbmpʩ`V8o>Wך#kae`[aW'}]ތlxMdS"6|prrrx2dozDž\Fdĉ/??mѲjMrss^y~F^EDD$Afx-pW aͲiG*ױMsٺuhzdX?Mɥ%Li:w본Ȉ).*bŜs9_p,>Str3͆555dddڷ}:E? 0;v,uum,dkF|)jmn[^}U"?*""" áF^dh!/hMٯmލڵW^S1c&:N=4^c벒, JJFʹixy;w.7뮿o=z4۶m㭷sqgJ v[?<ЃTTlW^8䴄c%«}6gM-uر99Mڣ(ח2xYTVVb~ۮ^"v㋈֬^Eii)]v= O{B6P0*w(9G G/f,Y$.w\d|Gv?2Mrs?ٱM6S\\:NjA#"""z~׶v >4.IQ颴t=Uv&eԱC\jؗ«H 2M`0H0yҫgO:vj\D9.{լX|`uqAUDD$Eib\\EK((( ??-(*Eff&>ܜlBx$ ('>e^EDDRai|ZSa Z)Hz"""""ͤ*""""ICUDDDD«$ WIZm@DD$9eY [ IDATDx" `f¬F*""¢(HB2]$UUTTxq_ąeYҳWol&ǻ$I@@z|R2220M3(j ۵Ƕ-,ˊw9lMAa;*ʷ&( ˶wl‘n +dYQrsrXj%LLWWxIAm D"8sLkr0^31.F8 """/*.ek8qӥ >:OMeu.%):ix9k" {pU!e0VokQQxIa,I:!R 'G8hzl(c5m`Cr\lݶq)Ԫ㎎EDDR\cx=G4c[#y玢[|F\J~}{WPZ/-W`LpMPZ~SF~}?~< 2=Kn]YfMݻ?pwyK޽8Az-lٲb ZN??}of׮>9S͞=nݺh1km9X}N??C 榛nb֭-& W_. ?7h^xyjӴneW+qp())4M^{&G}s0cƌa \tх,]I>_|_a;zk׭e1,Y﹛ɓ'S]]̙3|ͩwԹB|v_|4~bk ;xOo+W^-|_SxIqje8 + >7-ݻ838SK(++_yKQQGбcG>ضNDmm-?;.?<,&OLΝ2e жm[FYFc۾,Cqxjy9N97Nbr*++qya&M>_q_p]ve+1b~oHs=\\[OK"ɊDmVgV"߽kп_&}uFmmm/6lXe:w˗.3 ̟Æ |g\6X 8Æ=bCt҃G}Dzz:y= nN>g?ǡtzl7' >wadggsqhߡ=H_V `KDD$ŵtdm0/{2p+ׅqP+VZݸv~>ps(uM{Mt_ϩ(('?m66ٔo >^{u qDQ2338q?g{ncN-wȑr˭ڵ?v1d:vG3tP,o}M~k#qҫ«Hkix~p&Y_=aO&;af>EE,Zs9@ ۗeY|t堟Ynn.۷WDpZ6aÆc& g ;;|PH8ȑm-[дI- غ-x#q\f.޺)>7s^MjsaÈD"9X[(b74pPmKF͛7Q2zt;;8ɓϞ=̙ss8oS__ϼwڪyZToFF<q ʆ 1c}П>?O9yIq [NLد 7ӎ: 0wvN#e=+Mۯ:}&5u֑_WUVrOm}ߟ3_SNqM޿r}s./" 05k0}t())9h=]_;qZ697]<y8sЙ8àp|9-yMWpt ./}x:0M|*Υ'kj7G۵k˯̷93fCy"㲒֒v3m4zV,_o~z-ƍnj/ǦѶm[^y{w3g6> z⦛~z>ѽGrrrptsFs%1\.2A>#1Mrs?ٱM6S\\:NjADDDpGri""")4]}zM%4q)Xn-訑Wdi,[l|>p8eIxC,]N;`«H 2M`0H0yҫgO:vj\D9qY+WO0l&m<((?B +ϿwIŻWTr󒛓M]($|>ܧ «HJ3 ? ϟPkyJ0t"Q(Hz"""""ͤ*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WI """"4^EDDD$i(HPx*""""ICUDDDD«$ WIq 4?g """'$ˊOKw"ǜ;oK]]֮ ȱ`6u͍w)"\\ëà;0(|x"r=1}>KDDDDA?*""""ICUDDDD«$ WI """"4^EDDD$i}WI>;wdeT±m0 гg=Ye\.r)i&Q ^TUUx"233/ȋw9""")cϞ=,Z},Hv;<JrN BUzQzAHQA(HR"W+ I IHr)\IH i·r{33{۝BP |A+1k~*U<=pv.x_AAVQ|!ђOVLFrrSw6A"Iz6 [[[̑g(IY ^ZBm# B*i(AAL"xAA^"xAA^"xAA^"xAA^*romAAc!((pF m'  6h78  Pr6D9_BЂW3u8y+UǷAAIppq/㎃ *ԇT  գGx RDP I2_$z2իST"7  nܸA5,+,\v:kTY*I^g2J П  PBBCY6+Vֶ\RRRP( n:_zNEyBBQXYYTNbAA2>>>888wQ>>+ ="4 P:]:If/VT*7o\B 4^.coo M֋۳gOBCCO^|tRseؾ};ݻzi߾=뇭Ϳ ;35XF4 ~~$$#!YNŅ[;8>S)'niF?fժUxj԰9j̝;ٳg:h/~:Zmfɒ%~zJ%KfG7?9j]l-X,iu ~D&66&MҦM[6jܹ[ؿo?W\r]"W'8Ο?xq] ~ڸ;wĖ-)]7^e*q^%6t]Fj~_:6U IDAThW9T*&L@$8޽{sQ\?֫矏7qyCѣ;9r@(x?ݻrJbcc0s.Y¨F1dfΜ%Ky.*b<'Ɩ1 [n]_/z;|+WiX`H=@z|TRΜ4="< &ХKZlɰapu1beʔaY8ߓt9^w;t0 N6;sܻw'ҹsg6mʛoɪU @O0 4oߞ֭[s9c&oM6CL<(SF={2|pڶkGƍiٲ%>07nLhh(qmyL˛GNZs4lؐc"I>Mx+DzT/ontnݚW_}I&iK2uTm#};ȭ}G+߷sРA:ȑ#+A(LAm.g5UV$%'u|}ݻws.sgG>}yȐb+Dž 5*TȌ3g9xzz1unܸQle+'lIR_1GFFҷo_Ν;Lj#۹rvb߾mVUs;W<...{z 4KоC{V^͂k0d^{5רM@MO'Ozb4hfLLZZcǎa͚5=׮1lٲ 49֭[ӹsgKbbbL{$ǏӧOڴiÐ!Czjrh"O-ڭ3g~FR怀9VZѡC&4YKʑWZ\7:dlٲ؛3md={iz}p?r_M=!U|2z4eJm0x`~g*WĖ-[㏉_GGGDNiSsbQ:׿?>L5*UATsaРAF]̞ܶhҴ)e*v|/[8\N2ץ7+WF=HOw/j= **gggׯRL_qi֭8xPvIߟ3g0cL֬z6՚5$ZsH0K\~ZM&M2M>|xy[x%W"I:u6'Aq'$$peGh<*JfΘAwaє/_ _|ai3g~i4jج5mdv4Kgz.m'Nk׮F<@yjX8A(lظǎqΝ;??;=zf9V|:S^yWX?'>IJ6l'Nd5|7? JAx{q~&|;w- ?cܜҜN-)9UGA!UTaF1 `%yEd۵yWWWQQvsr`rv*ETt[>ݝ#F0o|v؞srs}ƒ~gvgggg ^r۱[ÇI={\N Ye 5Osxez{ӰAN:EӦM3gy711ҥKgioo|:d;xȳW%<==9x ]vҥDEEU\2 JӾ}{F#9ofݻwejת齧zܗ:dٳծm;m~;жM;4mܪUL}}sy鴱y)ΣÇOM2 [ځW[ E &={J 4ggbbb0 z; Kݻ7{cɒ@|u+xd`~D-^ysRaaL]# &M{xiղU _BL:g1eTڷkg:vNƙy']Сlr9ׯѣ88Dٲԫ[ϬtyMzrTJUիS&O7e ^yR> xUʱظ'֯[7_ϘA͚53-lPL7uXRDQjPZYrJZig{K;Pjd2iP(,h{T-Z@^6kNæiiii:| lT(/IIIa߾}>kg_~%OJj*-[\ڰa#9}:k׭cʔ^Ю];$Ib噦8x#Gp8W^Ύ:d/u*UA sxݿ3fҬysV\IŊ4iR+[N]ꫤq ӴdN:g1Gt`z{ҝ <իW`Ac*r5nLllL~>=}4[leWya A-+ֵK.رc̙-n0s7<+=}B)O3:m,)G^Ơ? &`T2mڴLiDxkWqs-m:7w'jٳaÈxs%44Cgodnw|;.\x֍@LlCpttdڴiX۷1lPb4xPΙ¯F zԩS'T֭d{wbdd$˿իӶm|坝>&MȊ+سw/3ݻ:tvvv9.ۻwoji&L]YpӧMחnotI&$''3m4ǦM4hzCF<+ mҤI?~ܢ<[>IdLK6m*>mG"ΐ!Cpuueʔ)\[aȑhlumAA#Ԯ]-[E.]򵮂P:tșgٻo_I~mkײ8]KOp;j[piרf֯_}0 IM֌9h /oOH;o9 XR·Fqnb{K;Pj#FjL=|>s _|x5jeXf-Fƍ8pUf<==Yl[mj*~~5YLwZjĈ=zh4+++͛G}!C7iJeWXn.̙3'kb-?qСkjjWtuVVVZuq): zb萡&N3'NرcTPG^z*-Z`ذDE=ԩSdrZnmv-ʕ+r SN51YZu_l˖s7;nnnak׬gZ{andWt҅YfѠAlХK;䯾bڵTZ2e~_L&cʕۤI=ʴihڬ) ر# 7~))}z=7}޵̝;0}ѲeK6!?viӦJn,'^^bҤItЁ֭[٥en9[oo>.[+7{Clڴ MR_z;wiL'D^mз;xyyfES/|?|5ϯ&y(ݏ0zܽ7..Y>ၧ':][T܏'** Cjj*[C `0Mvׯ_Ixk]A0 ٽBBB..4oނiޞ={ʹsoYp!7n4Mh4|2N8Ibb"*TO>܅ ҢE Sz-bܹD?|HtԪo$IloҤqc>#59mΜlK,[3gϚNH?5:u ӹs.-[bf#;٥en9ݺѯիˑ大NCCCpqqu 24Sy͙ܶq^˕+yeKƐӦx"Vaڹsޞ$ƌau:OR.ÜA«wEмEsT*\|ʊtN~_oJ0R ;j*vڕZp %Oa9kI17WWlll ;;!0&r"x$%i,h`0wq< F(q$}JH``Afhv|^qqq^T]0JF d`4hs&]$I]$ WnaB|$h MGfn;^jl6Qs2~}TV*W'!%d4զ$鹾$2SrHc/=M}8pAuhHF#/tsA?wiǎs'o&..oooZnÐC(]-/vR$K9_W"ٓQ2$VCR C уϝӯr*PJM3WA՗`Ie$6DW[Y6@WHXAih9Y\`W^~=~Wj*f,zYx1JѭW }icDNh0̣Xz6SL!""-ZйsgҴZ,]kW;ae(Eqݏ4}_hځF^iܼqӬիKrJ ݺvcg[ׯs/4ْ(v̧ypn!jӰC93m]t'jl Cw]+WW y1`5*# ad ѥ#ȕjK> &!H:FgeD*%?OerS-QmC:_Kj4t퐫mqXTkL7Ma\6ǜKQ&[|c|2įi˝8y?3uTӘސ1',4?ľֵ[uy"00WR^=*WTW,m'Wg jX8qVM>6αq$#dMFXTua.^Hm0p|O4߀^o x sLIW*|<;Y9.TWOqDci޸9A"wvZZ:f7ޤvڴjݚI"!!4ܹM;t@*Uѣ/}%44+W{ѰaC5j̇FATe:L_Aۗ/e.ۓzjZd&NDǎY&M48ߏ|_Aۓ/Is_Z.#DAz"X%dAQɈ€-䇤$Q9\o4=!!?|=kFPpڵӛ=wmv{޽ʕ+g,5Pfin^ :|8)Sؽ{7ڷrJܼɻ/ѬYS>3okw駟ҬYSjЦM,^7sg=n,~uފ$IDcssse^(;*!55%ϴnjÚ5i߾+Wbp!{f} _L?@Ç 0c>O߾lݺ:xI&fYvoX0>'Ni&ߏ[r3<ޅׯ1w<.\͛yK^o|6#5IDAT]BHJ4'Mk$! $=Ci"7$cHKDM£x]cݻwGP}LKzz:o˖-Z/[seԒϮ_wڵ|5+-ZFaӦ3gN~{7dHHݣK׸~sŋy cbxKv !q3:[6r$j??b 9,s-OG}4^{yF1BV4Gdڵ֥3K-e̯d"l ?!So2y!*Zkˢ "F<ԭLߺѰ^\>s ?d*ƍIXxxr>3^n.]lR֭_Of(W<-[ƙ3g,;f*W>ȑ#||9 .63ghXb.r1{l7kMᇹWd#B,Q '<rP+$t l}Nhn\b^̙]Rf呪zUa~ nJ*qiN>mo劕$&&fZ 5B.WpY,ߊ'REsSr d]~@^GTN$\!T"t[od{ݹc'6mDΝu:uH-2.~ϼWi/իiʕ*.ϧ4j4MԬU;x}}jNÓ[h{wYtW._AVӼyL}Ǧ-,BQZez7Y;aJeFqcbbXvkMtb1<2>"Q@{ SzjWԨYCn:VX/ͣN:ng{+Wd5'\]݈1/^#'Ms2UgiO94b(#ӑ`H#=MKt#$Ƣ#(K'͐<׼^y\\\ؾ}͚5㷝Rxk墣F.SREj׮7w15112eJg7Ӵt1L2  ^wʕ֭ӳ$ɒn (,YvQbEggS{{79w,|[~{^Fޠ "#p_Sgl<̩'y7 ="WW u+Mzm?(_7iS~IS'$vjh֬~h4>3l޲]wrԬYSS}Iq&sLX & rʳ8ga0o Me*HƌK,ܪLk4 v=[_ݙ1c [at4vM۶yް]9ŋEޠA9N۷DF ̆ (_<=z^E*$z d ke͉Rtv%-iz$¦*d$C02ɐ(еCU^o 55kkL_~d~?|9r _L ((R.7537e= 5ڵkKw~6l؀FAܾ}7R|9[tOo'쿼U(K?XK|ݡݥktؑuf,^5h߮}mܻOovł hժ%>>o?d@\n]~g"<[nD-_ƲdJI"pPP8.CBWP5GH3π@a Tkƌ{̚5m۷S嗑._͛xxx0<,Ñ8z(޻xryv'GcgggCy|-Z\E՞=N|2C+=}V.d2n̴Spuuyf;6rr'-b̙DEEQϏ?1(tyX[YqFV\ٿonFy> JTDńo[d r)SЦg4 ӑeXSч>]_2;{pEwxM:;ÇX"VZ\tW_ma3زe +Wd=hhۦ-{tgioȑDF>d2ڶmRdժU?vJ߾}>bDw?P|lOk8+"YVuR*,^>24kZeŋXz5..,XRcrN۽fҤXfDn]z4j// ^-lwY\L&OpV"y3ӧ#srBC*g'uWGq۲,^ɉxX rݽv{P}٭ 4պ_?QnJV>w&zjCQEs6mP P¨|-MOO)6fkDs{znQ8WRT~]Ⱜt͑V{$拱 ڱEը>XFV: ٳg544B(߯j```Q_cܹsGЩӧtGZҼ#>i#M OԜS9YnT%ynkw7Uc ۓ6K;4>^v`k$]bLB m]ɾˆ.\ ;Kە֛oޣlϦ3^4?fppPu[sΝ?:xi1g]ƍ8ıwP|ℜvY=Q~sˋN憑8FG \.UNwSٯcctXz*+gqx>ְ57U,ř3zVٵu+[]߿qb鳣r^-C}^}t=jvMTW_̲,)]2{}POT7Lez^}S<ɉɧD53XȥpV)eYYGtfttth֬Yh%A=5o#u-g]z^=o~&\uu3P9۶%s;Dc|_<_Yky#Ԩo9s ˲)y3 ve5C}8|$O#P*>Hj<N(^2j.^}ߓ1O<5ݭR{q ()ԼVūy$MOOXJRr]Rmzp1<8gVh&2M+/2lS bɎ8y@ 0& `b+ZCF#N^"V7;`EAHq,; 9y@rAo5==#;=HT*}{noE "#{B Y Xn+Ԝe59<` '-ju~"jF$զH"Qy+-[TQܲIENDB`luckybackup-0.5.0/manual/data/PatternEditor3.png0000666000175000017500000016066611344511370021162 0ustar luckybluckybPNG  IHDRvj" pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitlepattern editor}S IDATxwx?~^{j˖%۸\dlKL $B0M{7@MHh /ؘX%,W\եw~왲{d@sfj&7qp%\r%Oiii]h-mjjC 꺮ղäVDSP U\Z Cg YY5Շ"zȗ:B!!sɻ?wfG9,HS <imm=xuHܮ]{ԮIDg/$ֹU-+5ݎ^h`ϐ4> B 9HӁq24i P8),G ${f_*kJTb-ᘈ;E]ROsp$:F]65DM6W<GJ*_] wf(\O^5*K-zab넠*1J bpKa;6NĹ l֠vS#SE RTűc MM.]<{YWWۻHx\Hc=EM<O :֡T֍5Q+-w#A.%r2JČO96Cp_xXESUp;~p~$c/Ȥ_e (6T>fˢ%+SoCI̜򪡃gd\Q?&T(Bg"s|CױDBh/a[x uc'} !IZlkmd@E>ܠ`.wT;Қ`sS+ +NY&@]m5df܉ vyĈ>x hx<^S'w:#H$dOf%iiiNrB#zM`gY\z޺UUUv\4|x^6Gܮ];)pX44kZC>2_>>* MK;t[k{_v٬>tkll<ѝ;wnڼ1 db0-X':I6.gb'? 7 8мKp˭K/z=`^y*Ce uA%Vf&МA샲4]P^' X/*#/y601P_3UNfxئV40RO"a6I ASU}*U;|LdJJ\0^ 9pv۶-,>ӭ{/8ZUYDlV{@6>up;!B4{PBFAHa@K%THa94 CGxJf06 apZ?"݇wlnmjM ٞ{n?3/-i˖ͻw^Ts7T27'wTW\o?^O$?]g4߿}{0I5+( I:nEV!`Oco[oSXjQ^EY{44cb%,aV4SU3QX¢Y]gK{+&ҰIVb `2$<2U_7XԢ `s?P dY4Q<2;/j<ܴbk&I՜P S:!eaXsa2+E|%*)*#+n?~S֯[{W-nݧN8h~pFpߙd, oРA?qEl !R|oO4'ޕSS(l}._ΎrC"/++]D"`+ٍ#,ցN6=Tf|;3/, BZS;97w\NoB4PVZZ4d¢*M.ZYMY">}FuMu}]A~~ &0l=x<9BSX|pM)e`? vqP(z9nڑ,oួ{ͻʙ=k5'O]2jhnˏ> |^z7>;'M[;v6|//zfn6*#p8?!33ʋ/<~555 xbmrNp>9Ʀ=6,Sf`@Fa]k,w9+<8+8'8涎t^9Ėt9$a1gGg,\X_m^:v/Vq41f3XJgt\ LL1La3"BnOʴzu4>%t=U;+ )/+qeݺu3}z&mh炼 ucA1糄 B!}zԩigBzꍅV͉_XVVVT4ݕ+f\zYYYƍt{86mMJ[zV&4 Eb=񓟗o_yucG9~p'N(z=cǎO)u]Ǎ _7i⤶f˙L^~ݩ'x<?z~تk)덍e;*wY֎hmmm5G"޻2o޼iƍO{h#Ѩ뭭-e;v-[VX^SSbu+WSw{x<8qⓏr>!-˗/ۻwO[[Ph޽+/kiiB6nN=b}\Aj#(ZZl8 F4Rk]GJ*XGЌyl/E>S״iZU 0UU*iV+ ;(R[#t3>))*7[dC t3:"7S[ M X4`qR%^ X^y %K)4wma];nᄑ}ilj&Oz9!OScݻk]bg(w劽{vd䛚^/F/VܶmoDhj1pWfS1;3OntĖ?  ]<~ 428gok.vFW?y`"oܹIH$b1'TxM@ '';N@>߻o߾}E"f?ha\}JqqffVKKMO:cǎbvWZ_5ZӴnb=r:TmmmF2dH.X,v͛7Κ=U/Z~~~ZZ)z;+cr, V^^6z̘Ctbظq̙TE=zLdZNvvSSƍ7z˪JJp~~%Ӧggg755ml'JKϘq)c;zW\ٳgϴ4 {Fi.`s[hDyUȓN4)D! U("O55MH<]6@q/w\E eq K[q F S`A A*7&B}!J訮f.p+g∨ rkSEG6[QU54Ѵ@ Ѝ W^ [l4h#GC/ig˂|nNvBOٽivTT=< 8PcAI5㱐BOBh '쨬pm۶30R$\~h‚[zba;*JLxn*ٜ[8('<,\KH!,\ > $O:߳gfW^.̗K#$effy^ϑ޽{OP}0{nN'_?O4-;;{+W|QʐH$***:H4&31G@eeeee%f8qKMѣ,zo 0fت;[X5Ç`GEŎ )GKj۵ԩ,] (MdZNNhZnn%Ӧ[Gl^zY=mǠ-8sne3ozMKq+Z ep2!X߀Qq x͆/=Rmr^:}dԼ –HuҘG2ZY̶9%.0xb侬lVK\٫SwKUӸ۽3Xs$ f7,D/y d8MYxhW¢!h'@jg='%u~_|m֮] v?n[GBqkZ)t:7dKI<kjlb0J#+s6dUg(PGɧۻwذaUUUxlYw( h:41ztxܶqڊ|Ӧv]NYlfnni87+7'9vX׮] }t+AHd .%%]ڭi-4ĢQ'-+3 ֹ`BXhnn@ @>ӧMSPb X8V}333o$ن&,4ΐN !o}ۙIf;=== 575K `!H &6Gq6ius"h> ŀd˳h1,eQ`2Lm Hx(bXN7v & nr7`>j _Vi8s}M{3?Z킰At`Ys҇&S˷QCxcNPՆ(9!flt쥚zG3Һ,>{9>[#??#3X,Fái@<]_4|xUU'Lغm[vvaè& 7[,BZҼ޶}[Az[ZV:p4 yr1ŽRә=jkmfgٳ'5jkx<_ӧ>۸p @P ,pvH6y77 duclL<[%|&`%V7c"̈́dr &~˕i)U*Yf^vwAgLmaa:r?c3 -+;ۣF9r`sOx,F%PXn?aBC}=X+71拆 <5k|C XOiZ i'} ]ruv%}zG0!&bc k?#G ),*-+,<%R^^^TTtu$rb5MKOO fxKJڌ z!DԄZ롪5GJKSȉbYٗL^+(蛓C?bH;vT^yUYYّpw8XT4}NNN}}ﮤ&MrBȘ8vɓ[nɈ 7l2O#Ǝwѓ'N@]cر:tĉwXB-_FoVMƍwǏ۬FzzY@9۲B[X.#'"V(D'-& q=lmLG]p*F@ U~fnJ"<M QrU4ǝ[1 iNq,!x|lc&b AТǺUa2 [uMG:5$ Iʆ]fޑc̋`ځu͎D"ecgk;++ D";l!H$223e!$deeG#ii'[}Xܰ8j3gN D\B<ϿyӦ. IDAT~?1B-[J.8iРAXkl0}ƌH$x{5},#OݻO[(&\|!=z u̬Ǐcƌ32c4h0WzO43+k@&OK FZ4Z>f 1]d4pp!DF[Y\\ ۷oKKk(ԦiZI' hV^^f4}1֣q@ 0p`4 C0.̢leee*i' V-S&fJ#'.!A4jrAEpr k/ .a4ـ.o]WZ]{"tk)FE+Na.Y{PK4}>Mz!YYY}ʢs"'D7CfZKA" УDB}>E+J"Rn5%֐֐d3=rsr|-[Peb(!,4~mժUg>u=ztC~-7#wV$_T;,9 |#i"ɓvҙEE^pK &X2_jZf % Ʊy̍糆#< qʥ^s԰VX<*z-\@ߑ`Ȍظ3-# H(.6j[IFY(b,@ҜєJ !vJxj(?yնG EVS!S\@d"J.WT}#F7P 'OsfV+]A]'}@$" B.1v ]+*?x#5@"ɓ'v%#"8X(=D9hJ2z=2x<#f֋(J9pwnkk@";'{ҤI|2S֭\OPh$ʄhXNT* lKFff pV& `@Xuuuu^{999)!%` $DOp( ]tTNkK 6ĢtQR J}Fa?QH4NJ?LL;!mhTlEAhJj/l /pĞNP'i@ xgx8vgׅCCx#[tg*{ B4`c!b|=? zpmxO, 1$%p83g#pς K.:P!2B%"&*r1.[`HQ%;J:^ˀcLܜRZ&Oj,6lG\E4+JL;ny~qrQ/{ㅋ-wʛziEa D1L53yf) jid] УS@p'S'E=FtP>sKHYI-h̸EX+G&RVyG%D[+DjP.3w Ds&"1lv)OzbϜª)NB"-XKF6S|0h ?(AdRө/wVĹC'^X.yxs8c6f>PF1!ӕ4 Y)D2s)v$>փ4 P5N;S*B\N{mلDq!!rPRRC-k lJZ^Q0vf+JIVU`z) X5ͅ_NSBVh9ᄰ ݊@+^P({AĵeN+!&줫*ZAyp5fRG2 iE u=;#h|GW,TTv.(HX8$[ d$U*O'WA~R.{Uŭۄd!*p 'F|Ia АUM P15ϘM(;X[% )@#n^ deֲP̬Ur^tC &;Uz̃kOkQrfWEhwj2za+ D6ӊrH96&[U`G06W-^9mK!tHE%;SڒUyvJThgj+8 Lt'u %hj99f+V`fa*O}uBwq]dz-!qe+}YBXэlZ,nu~ ̓789heR7tWLQb XѮ@JbU\&:f 6jf·e))[!;bw!YWDU:` \J -ͩ\1ijft}-n4 :A2ú)G%&f'T5;m}ajI%/2;8`-N zvtSyUwn-QwGbEB[C alj\tڲ PShH}G}f]CXfW ҂hn]~Pq-M>"SSU P'a))CªH&Vf?8d3 _:deeXd4uZp i(\nV_ )D7H-M ;ibb4sc@GK g u ]"= C`^+*SHRە7w&uk\8V*8p$%*!MMG89DQC!"e@TתHd<ّ-88| ꌯ@.@ڂMe~ASII${/4"|ة(:I`sp}5-YkwI}uY mjda;v|‚I9XEb%K?[OJl)*#KKKxO4nݺegg'M]:'ԩS/O<:BVpD#XccCZ=dd+@4+)~9XbLzAB)p!nEB aͪ P<JeۥC ZmlWsF˻23ݓzd!C&fH͞J[RzQu%٤)tq*D;!`HaMYrQ,֘ӽGS'sss[ݓD"ح[Pu/VRmo"V@hZU\9~|B鯛΄\4iДfLq1)(SPX5EB?ڜYDc^" @,I8!,dc "{/CJ4ѱ?M , ͩeyd8iUT uO$wQtDk׮pذl=†๩jȧpьp\B}ʚ=F-l:TFsЀ.fEBmyyyDu,/+p/ ޠ+g^"XU/W7c~;80t,iR*.4OqIQ1J b5FOiq@P 19 FiJUY Ln)QoixR \rE80h$ u]z<\t]HQMnC&mPsPMEH` =Xu`\!Bk!SFX4eW9`8¼PLRC4MN@##bp lSp8v~ _vΈR[)]j7ll].d+$0z[3X]X2 KfƸ W#WHg ;Tש" ^ޘ fX7c²B>95yATDSKy/a6*Umdh }T,Tl0,Kre6Q]uWV;8M Al^~)H;h*k%>o#f&hγ:ļJX v?Я+ ɍ4~fu$YVbFIMHұd}K%-a,ijmͱ% z tt;8>#%c__H:MN#^UR./0]H&SI| Mp2VZ"  JGAfPT's_jf U`x=w9'+`OYO֤W`e4/O&WKE:MEdI{z%XX|mBy ay6"_⅜a\j_u,6 3\By$#bs_}j9vE\DY+Xm>RvDX!j%10ĕ]ss5M-q7GkK#F ])C$4aThw;xho>N?wU0ea@H1𱏽/y4βr! DMɭf,ٱ͉ *jܹ7,QDhs@VM6aςNT: 3uV()*aUW1UHySAY-[̪OhēO,|opJ pw~_*[mƢs?1"&i4mٲr, ]4 mgʝmmm?'1c|3gbM0nk!h/\v? 8o\{oQ~F6lxe:R#Fbԩg(v?n)p^`f\o5R@MczvN𞁩a#i+YG?8!p_kfVaFWÇ/~YwtM@7YrPWgff:47{֬5kײ^z;99 *|xȑ%UXmklbM(6rGV|,y{y&aʥN!b?ܿ{~cطo-7g={vVV9rO= ~=3FNg2bH׫W=ەBYH۬YYF=3n=pqq1Mp,z}=v1 1xO>Ϩt`D<3sUy2w׭[KF3 wDZb ?+:5>8>X\aH_:bH߫W̑b55B\H1N'9gSDh*G?``z `E]AA# 4(=̒\r&!C҃n  ݻwѣGeNhmN4 > Db/_Q[?SSOn(dL;좋ؓ.1`Y=k69W쬞H˖ #E$NJQlܠM֨nߨn>`㨪KN vvmWSq0\.ABP_H^P:l$:#<=er] a-蒂 RYYt!C֭[MfoO=333[[['O+<Ʌg%"`7WUOp: 1G(*tD={ٳKgLߵk3l +bAvԬ+Z4h983233Z['"i@MLrhw6T{HJSJTn3/d]H1;OKg \YNދ hҥ_;ǣhmmo\ر#UTTB)S|z =˅gwԜ__j…wJ 5뿕r`?MB`u׭ìϽOvǟl۶W%2yyn2jl~Z6sL W-w;ђb Nѐj!D) 5ˈ\PHR+t?zhkޞ¥)ih/y(p״b;N̞ڿ^+/+x<4i7޹GWGѩSGyTӴusSp#BlĖv~caqyY9ub#Btˋ-*))imiٳW_DU0,xyŊk6`ko}r@biɔ̷˲O:<% ฝET]!`jfXbOI6% \>=q, x|߾Ͽ28txR)+O:L*:S{vL6o=sڵny 9)K䰨, 61ԮQAKG(oܦ!YZO^2BRTJ\r .] v}5v- bS19e:B=(Ƒ;6&[G8J]KktK.}!ڦrgYO١ּkTK.}):a U>^#Un&|RI–zE1IETP. ]rKFg9MEA؝F.tƤ,=Ϣ+;6/|\tp&.K.tVȅX\r%\:+BK.K.r!%\r% K.Kg\u%\rɥB.ĺK.Y!b]r%\r2\r%\:Of.K.tVHFq*߆"{RK.tnpߐ즃YK.K.r/%\rֶ6߳o0atK.t!RSSSu>99]X{eggwdb]r%.D:tСC +NmmmBK.ҿ;++|+է޽{uC(K.}U)ũJnz( feg+L}%\:w4jQ#Go-:2q鬒 .KN䢩K4h]rɥI;wo\rA;nK.KgǝH wu4\7!(™QF@eNhkks}zѣ͛we3._|ɛKjjCp^}\{ECۚ!o]wϞ?OaÆ nFÇ -^l>z[oeYTa`{Tyfq5~rssٕ9gE"e˖8}fr|?LgrX\r>/9r8lܸ?r}[ninnb|ny^KK <{y*ZeժӧOx}]~Isss$)++WUUKX??=^UU "֭[~ҋ|mp8%o f͜iFdW\u%}v-۴isiiůהo-Yr劂>7Ǐ߻w@NNΣ>9]s=xq^/7JK>hUW]^|Eziѫ>۰!##㑇YҲ ͙=PZYuxXEmirKH.ĺK` ,(9r3s[K੧={vVV1bēO= WHyO}+V\remmw9aL3O?3|׳ge} >oܸq}o)vdӦM;yʕ+i??3.Hܽ{7|ߓ/=zg6.vO H$`j0-l+ :xe+pwXK_ r!%\:?4}ƌ5knذa-?4_z]$Yhiiill------]KO= qT iIƏ/+-ݸqc0,///,,txt˥b.ҹٳg7RdViQQ;(cl>HSSwyg]]ҥK'ܸqӎ6m k׮Q*Qv #/-xevmSދu=BP(u]?-v Eѧ~+.7n,-?JG !XsӞ~mذ: ^W K7~FOYlٱcx4=p7ߜ7&+׬YS4dȵ\һwUƝZ9Ç~a,o|~߿ۍX?z5;'l⌲^zِC?~3?\s&qAFq*lJ%p8srriiix!{^fJJJ;vO4n?~| v"|'-\$w,OY+Cp&͝5 *++^g@xF8 _~tܹJ]]Uuի^oWJ;?~_x_q.l%NtVP~|~4 C}~p`0-Ͷ}_[G]tҥKϙ; }xٿ]z hҹҔA٠_|Wlҳg{c=kο^WEYY]}ׯĉoc3_yGz4m~o֜9{ԩSpp˗zF[)))ijjrNdG YYYw<.}!6 c--R"F#@`̴ t]9s777l.Yڿ:]0kNҹdr eҤɓ&MNnq)Kmvۭ{<3BrV};233m(u2ܯx,Dꫯ+WT/ŋKKK_}ՂǏ%o\_qdR4L, V$(*Ei%;x?ޯ_Ev< kRtP٣W^ye۶Oo̘1>Ч/=9{,ŵɴ}÷Ov(JA*֮];v,U;)=4)SX6\J* w<+W렉~Mk.!UVV =:K%%g>_?ԙ !Hh wf։iZ${Boɓ'ON$۶o{񅗪k|q6b'NÇŵ˒轮3dN%SҎ`r fvR8i>f^ g͚k;hwue477.u"GX2N;p8 $ojz6[XXXXX8΁RڅO;gy젠 WVZq`˔]RP wqMo^ ATnuem]ڪVZ˶vj(lPL!{ i YP ${n>r--Ba.vd1Rn6U*.wpe555..* erc#isNѣFywС޽{Js=f`HV՚сdaOOϒaU;G .~qqM) wgk ,^_mD d21u9aG܁uJCA^P^^?/m֬={( Ryҥ+WN (7}'ikOL<2#ӖX0XUk&GDsjnz lXǧ>k׭;}L&d'#׭[Oj2V|6awL?yLH$psw7Ҋͩ,D"/`0NǞ={͚5KW_{fϞimցUfrD,0W^yB*:v9];o޼ظw}WaΝg2 }_*G} YYpur8]]S+ 2ܻgc.\PVVFj{ q IDAT)WJr\i+e>|GݻoovfVz5t'?f~#JGԯ[P) ̪J_[GD&g۷)s8+V 1Z֞y,Eqm[qR |||M{|yld;F܌L7~8C 9vFTCT*UqqѣRRh]@"WVVxZM@0 JYi93dpt[hG/һyII={lMnnΝۀAeE.=\{py\yڵ7FjllNbX!qC&ҧs;rdD"Py>&<h΂B]Gu^6 !@Xs.M+zQwn`L"۷ R;/Iƶ X ==;cӏ544 tl͘bB+ ;T*D>}:fL!\777ޯBظwx/BuE"oX,j1"1<<=eP7)!t?t`z )2E!cYbBu ܋EuT/^{ ܹǍYռw wFD\P*G .|>_}:D"ɼ*CmB>rV''%͘1# OGa䨑L&3%9"Zss6DEEqyLNJHصkwxx8h%E8q⾽{33D2yRھ}NWm=#=KoU!C 773I"I ӔiЈn޸q g#G5k!)!a 1!aǎYAd|ۯ_ vuu裏bE2kV4GlvG wTx =-^L[Y˛-|u(..6RuFN( PYX,_^z'oZ=7a5zܬ)6tذLf^^8;O<)--.1A9{o@&YP ziSbsVY+3WcǞ9z򊊏?x=zkovءSJԩGjD/_.+/b4 #G7gEfQ"IAнtV[ZZ8P(dX*[21L59ReС>lQ[MݵsWgmtQp* *Rd2Q(--2p8^---|>DG];G9rx>u cu톳.=t񚚚\CwCdSS;>Ūj9 @RJ$M:_)r.۳gB_~$CowSScԽ{vx樫P#wS鞳!+re2kׄBcNbjYTpmnФN$I666J\E^^^ez b1;<6ic&;vءrJ\õGxxk&!;7 J;N8YVV >>O:w<P /Jk<s1n8 hU7nLIIa2{lʕ:MNIoNK$MT{;v$q"I l6,yЁXN: )V.3 .+Y&HRXZV7rhzk"l\wյj޽͜ikkۺEQ~'4]*++o3!!wh&)E k|x ~͚5QwۗH$))))))f6l= Yp_~xnכܷɑRToVRR@ZZZZZc|zDSP'CEIR''gy~^2V[6ٹ 7[KWryT*E ?8~ܸi?rǏT*MC:qℇw{ϞA]}6ퟕM.䔔䔔/&555"bv1Y}w>xֳjfls{mm]wDD3nۖNWkrvڙ$ ?ظwxG 3[fB#S,IͶJތ] +/';#=JT577NɧLJxS~Y%?્D" ܸq#9s݂իWO&kn= YPYY C@ʐK:lG#EO 330N' :O_$ɀH(.MEDLjV_&٫W^z1'$ݍ4#}0k2cΜINNNKK:}O>e}i:< 4x<8R:e!I:2d]R4pG\Σ 8V0&em"^+/ҁo$(2oaAAB|t__?s9x/o|Dhg4 <==KJJGiҍɑϿ3u߶ߎZ:oAuvw~喖 Ay/թӦʂ#дTVVr3g}{+rBq){>>tgo#jjTJB./+-=xy2wZNNMH ɩSNI2 7ԩSieth}4o,Jͱ1n_d fїg6䨔ʜ 49ROL֯۷ EvV-54y-vYV9p rD׮TUV>W>zͩ,oIEzo`0xs1ɧ|ݻW^m(;-'/X@j]fqW>t9s30|bbbbbv lhfeॗ^:qDEEUU6Ѩarf͞5um=u2XwNP~.V$:::fffApͮ ݻ;v!5LV;88 8pC{@o쬬z&9dӟSRS5-'p6o3ĉeAx<>uܹs;ѠƃmwIMۗv\]X/k|R_^r0gqi-u+bB]Jz5]Ӳ2 ŢE3k ?!!_~իΞ;---^02EZszs;vDgCXQOe$*UJJJJJC:Y%R7nvPZzOMqppLfdj:bg'J[ZZ7ihW~W//o&O!+)!dU,ocNGRi ƌu:*9%%-=-銊O~knAV# __?i/$kwe_4]9_}UbBb$ ]r:^nX\BӦ ߆R-S6D>-d2٩S6lSN1~-i}pr8O?]۞\frJL&JOL&v)(Fuf͊O?|5wW>t9YaDE-xm1+3kg.[{XO7ToM)E*QwW֛NX_~y箝G/+-e2AAA8ͿEyɲR }|:el60Zt+WE666R@# lvXX{+W3F_%?MMKkH\]\'OpBS]atu0 sgT⒒c6K$ MC=8\@ HHHTn[ft ݂Rwmա5: {xN!P'!LiY79n2yL ;څ2sƍ@"IAн$iL@1BuEl6[R=( Jզ S,BuE\. e$|^׌"PWr%*R(ujDT*8NW)!(6M`=@9wXRmgT8jl6> !: X+RrPE޿ ׯrux_BYLFV75IjTlP(Kb:q ϷSYw櫓PW)455CVˤRUJ_ pqqq:kI͕Y&Mrrv|q҆)֪ꆆ~R2i\XTThcccE:}jLV]]yȓ3u!d0ZZZ "̰@(ʖ9 G3LHw#uB 9 I|ϧ+WiD0ʕ:J%|9L䥼K E9;;8GsZI99W544 Hf<7cL&s? Ů;U*Ռӻ[o(6x񥗒KJJX,V} {ؙ\TT*KKJLK>&P`N9֢!!g***4)Vgϖ70:wբ"M쬬'zE!22RSQhZ}ĉk55.uuuuuuSNդ7Hlm\[:_-*9j;ŪONJvŌG[UYppnܸz+wrsrpcx{{@yyYB|BuuunN`C*..Lw!I2//f$6ÐIϿ@ pB^nnA~! eYeee0j>L&,lGYQf,r䭷cƎqp_}||9prrztB8@aa!3o߾<`>c/**ҫW/6f{[.*j$'g'OOOTZtwD"wXFbkCcƈŶ,khhmdꙜ\U"';zmĉGV>ŽX+eo&Ks\EkÇ.ww}|| %^^GOH`99 waf~\U;fsgϕWW)֜fMY~u~k5`kkսYL Ilc01[UlZ;;{o//͌0a|Y2Xٳ*kj766=S)j# IDATKnƢ¢f`z m_$~oX6_½X+ՆEMR//6hgg3w[ֶ߿Jnyʊ~=5L3hРSNepl`qFbkgڴ䲬Z`X>>>>uu&իm]P[544\-.FԱ5'ۮnfmIV?( GOH555YYny~ڴO/6F!C |$IMMMAA{%&&j;yffvc㵴ԸA' ^=/%&$Eyyz@EEEbb"RCeE L#+]ZeY'OE `stkj<<<IRHTS]m#˾8K|0yŶnۦE$N os'n-TQQQU][77Ǐ_[׮]>Swh|9$i]Ӧؙ\U[YQYYQ]Q'nnn666:gccF_~ڛTbbWPP7pyбt\.O(^*F`pH\ `n54ײpvr74<RϷ9f`|u0+&&;nRARnH T(˳ٜ&Rnol5V._- }~б}K `*L&V,ۊO>/x˗\ң쬘 uY֚Mq>km|; 3ӍDn=tC 븱ct !+)0 Xpe2|>_$xy-o{ *ݹ >矟x>EP 0>7n _Vg亸hK8NvN.sX+Dx&ۧ#{&Wt?Qjꓑ'5]*++Ąo }ܹhiis../<<ܾ} jkkbu >Y6**~RRΟO9^^?((33KC mll,ZED$]|$Ɂg(~Njާ̓|ڡCs7Д9?yP!N:A0LÇj(@tbI$I^̼y`H4bF2'NgVUde<3J~>۷ sԨ6Lu!/BCNjD"կ_/Fk\j7{PRRBw? 6=pU|ݣ$%&EDD 28rs -=Z&d_K2(Ă15^3t[ǟs8ww_ .3fLϞ= .Yywox\yh^&Oj7 }BܓWZ%ۼ ziMjimРAL&R^;;;O4)=# .1,SCwZ?z{y:;9 o7>8`9j S,Bs&@RiαѣGs縺VTTSCBa@55#G 'b/_v2woEUw}ǟ|qnnv"W*~֬Yls<  z!L֫W/ؿo˜<=< #㢦KFn</4t[3"vR;v$9|>bJڳ{EA_`Zζwغu7nptt:ujyyمSOi_\Ls3`ɒ%GvVR)祗^2C/>ST99>\JIIdRd/$$=JĈ#`䈑As b$-?,Kry<.[^V;k]f|QsBx!Ѧ?9r={YƲ^|qȓϣ?JS )1))1I N0RaP(zM{AN:̙3:Kzӎm&L8~ywcMjرcvޥP(z=| } bB+p^z͜܎wӻ۶?>6l.u &ٱX,wwW^~㏍s{{{?__9r#4WX1a[[{۷n6m=A^5~k] ) =/tzȰʊr3{MB։ E8c-Fjܖv;-k`%-b*5IQd{GuUjRVY,5 kwy6:gL&$tkBH[Pp#`E)`PIʅ5(AV7I:T.&W#,9P`Z x2BVH5`o%7TTx.PTL&Cltu0N3} IuMM\.axFAdcc#1<_Ze 0\Y%") F>` n+ RTMMM-2ֻ<\ZXb)b}!s[{G=(a`%{L&^MU( HcMFu&W:PLAIE1"EI[nZ$X3B!@Qe|/70:aV$ox5znPwaru}obIUzG4~_,nP7aruѮA0L$)"7,BֈAPjb2FuW 7ɎNCȊQf܍M:rw/߼d2)tx/O/OG Coo@@n.X𪏷W@@ S'OmСk?d:5ERmټ9|£>^^ON~Tު.?߫g}} >^.EEEړkɒ{x8^yys\oo^xL7omvF&\.wwwsuqnnnJlnnvuqpwar^̞5WO?/OS&yQl>^z-[T&׬֣g9}9 ! QKTTWWm46|ɀj:>61I ,訽4Lַ_?ggg|ĉ ~{7w \.nƌ$Mɼܼ3g?f5| MtZo~>++ Rw6yzzK@Q{RKϑvn5dYUOI.Ζc+$zD, M|a,َ{+ɽf ^HM-\kwnͿ%''mٺ|- 7])+*,]`hwٵs']rgD}qڙ賏 ~ʕ6m2nr9HiwU5'NFN:U؉'̞Rn6w޼KoS(tJmVx%=^tTUuM>?C[#9r\zhΤ9r$\xRRI%IMw6C3W9<1}zٳU5Y9O?R~j__?zʜeXfm;jdФ)aN}_ "#OjOCSFC=ۯ 4u! bs ޞ~ qqj/Å9ٴTTݰ1ZRD"d2GU~''gJ{4ISPc``Io͙K.cõf8?TTTLW)@ 8p🰰0MGoJ~m~Geeem[y*9ÙLfŋأG~5))2/f2Gdj tvr߸A@)EE/?Ĉu! %rjPtig}T*_[;3/x[+$13rT*ݸ+0ӿ̜#F_~$0>4TTuvd{[]-.~fqIvIz 2|)S֭[u&rrr(`DY= #vU98MW/WepYjo/AA=$Gu˞'qwfzى\R0: 7^}YXbJRC+Wg..mW^yfza޽UUU*J._zuO28omii)))^|3g+V޵֭[ "--˼oPՋ|skOXsg;z3Z+222Jezzʕ+`$"W({ K^yU+3'ȑ`Ϟ+cߚo-c2af\喗{)kO+Vhx111Rbab~M4_mܖp*ܜX=z ~CC o޼qe3չ:#.\u:*%%W_>z__hY$f޶u[ߴ8fںe-[`ʔ).x3g,=mE$IYѻ#^_Xt颅 j r8=DGww,1]4ϝ0sR!Ugg~`Ĉ6\&0aϛKw9~oO>m[ IDATa] N4:6L&F,43"a jY~c!Mּ:BBuk!NZ'zq/!^Ԏ'1"BH"BS,B!)0"B=BQDR^V&k3 (ꌿE\oA)!IssUUmgC(vL!L4~RT$UVT`E!d|}[]]}VWcy(JV+Jl6ɼo\F!dX,#֗V,L*JR{z/yV}Ue%z(Zn5z4$%&>D54.C=+fD5GEEEo:gXлUKSRlPHZɤ ۈlg]( LEAvG]d"at+-r#Gbbb7K$<=xI&>l={kոp{-1f<[YYm۶K8;;i֚V,IWRd2UJw!P\|EyyKsssaaaaa၃fk!pjtE _?vlW_]|?ӯT*]kE #"v|ni͏ IITP@R(N΍$Iv8 dZr:zyy}њÇƞXAA:@dFG;vf߾U9vsLV?۰A&_wޒ/> 6Œ$"+Jhee9y??J"$`Iꭏhwd۶{u.o̙GKFoTQkєl5;F'07_;|E=WteG)//ݺeϯ3O?]TWRSY,VXX貥Z1/`ry33g~677H3h.vTTT̚=f:tH{wISO*];wz{{˖=(=e֯[w`0޽Z__߅ s555{5{9C7?hPӊM4O7+DФXzڴL۷n}k|b]>ٳ{JHQڵ:)YUUs͛7kٲ6+9Ζ-[]fڵ +W/Xl(BPTTXTTiӦ:!o#0oOE.2g-5D;-XXǣGݾu[%f~ |򉦆6`"k0BCCϞ={_|QS[ZZƍk(<ŋ`4]&N|lutw#bcf aÆw12ssŊ\.^R3|z577F3[q,r:/zI$KZ 9KVX; @Zq[wUGU[U;\UF*nQ@PPPY" ad~\M##I"r{rsޜ;;w`24W_vFP_ 7u...>'{_xxzUfLLL̛PR%"#ՈHNS_>~Gi4Z߾}}}}R|vu}Lymx]IV˗.?ƆL JMI21ݮ][ (x5k-ZlذM,9sfE k-J.]8!SXL&VS9Ϟ=SSܧOO/BzKC*յEVZ"'͛H$RظܬY32%بW.v9'(iuoZйsL}_Sݲ|;t;0y%K?7yQqhʤ+33 {ԩS} V(_PL_D09o\!;4qkn8:_SKgg8tX,۶uo}{mH$ ȧS0,^\d/rD"͍3gN+bY,Vgl5ێxpqr(ԩj9u|z{U3huoÆHuUQϏZn}+VԵ(++Au|:=z ڹիbիv1cj\Pm ~۷VCuիW/m$xnb!Jlt##~:4---$$4$$zQ )Vw˖/#k8+Pĉjj??6fV}:l;MΝ]ŗwa{5nY mW366޲yŋSRys-`ބ.0 y=ǧWA3e;=M}pɷjh4ڤk׮cǎe2KU0tгgL6lX/(/_bxd]6ƍZjQӶk(ŧ>wjWQ&L䛙|Ym۶51166Æ;v#tǧ|UѸQߨАɷCMڷk#>Lմo-rttd2.ZϘ1֬^}*<BCC8kv=;zosZdd_'dOssZ:9QƏsm"k{jg7n8a_X*k۶n#jrys\d2͟_d2ـDR4--ŨFVis'g(G4͘˽/5as8II\.BH嗮\ÆTGw=x`S?~IV͵t:痕lǎ..g>^}fkk+[ퟤBN{zz*/Ci|o^vo~<OaX6\, HD> D}Ncbbp(1B5U"q\,RTڡm +Xh4.p4Fs+ H&5XdA +z]m'B!%:&lv/[_ B (cP[Q +x B}pLF"H733轔2LPücCfBt:]$ b]+7Nf#B!!2 !A`E! C,B!dbB!BXB tAr\*cmBƃdtcd2ysJ@!Ғ\ uYF.W ^EE:B5~&;޻{X׿b+**]bqII#BXlaa٢C^S333mr'B![ZZVVk,B!~( bbD,\B)Jb!B,B!BXB tBﯪݻw]rWG"bƍLnߺ5z[Y-V]t֢7Bi}X޹z4Aq7oΚ5L QΕJk׮;y֭W,7*++8[=I':5fVDD_[n_ݾu s̙j >P7B Qlٲ6nmlĀ2%/?_9w ~2ښ`4kl괩dzBbn[bELf/_N&{VGR;׮Y`0VYE&fڸ12Q\} x%^W2#(ԵL$MLLFy\fVfyyL&S.URRR(*_e;9لSFYYYYIj̬VNuzX(aXDA]>TR4ꔪ(ۤ&5ͅЇC,B:~شi/˭ѧ''. Uզkrr ;9iw-4B&oƎ\.`>]feiӣGe2YZڣ7m"XՙS5v?9t҄H$Ɋo߾os(!} ><(8z2E2:yMkZK.QQQ0u42ΛKk5|#G & 0"o-2kEEEVVVÇ ҹsBHH?>O). rrr'(/Bʧ#jlɵWɟT89DEEXB 0"B!!2=.w"ճ;˅PcG!A`E! C,B!dbB!BXB 0"Bk=BM>G!A`E! C,B!dbB!B^WE defU FFF4 o+ .ںϯhX!qvN GG33z/!_eee9OZr155ߒ}Zhall{!P255}왫I-xysb9\ǫBzJ܉!{ؘoI#+K re=j Wƣ}o@7ܼkei룆Y]uV?k+v,\nu![]U !h|iìյuAH$/_޿ȑ#>lڴUUU1enذ~Eϟ?W[XX7wT;SCX =s> X5[Wy?Μ>=e$B*~Rmުcǎve?sX[.Ǐ]^^n,&zE&!Bl۷+Ĩӧukeܸϯ^f bŊVv62K02_߾5߳[uazHD} /]׮]PQ.M&:9:B{#B!6t%^tɘѣNGDK%@p%u3O;ى3fL6uYe6Io׬^%Hr>OKRm|eth력P(gΞ5ڵk%%2sf IvBf&OdGJ ɐ!W[ŋW>;;[*vf͚ܼSAW^=̙3Z:b>}`͚57nTTTD"|p81cG7c/^+nnns׷9t9_< ._VpWWW?y!+Cl ܼ_@%(s*DE]_x1U=*T/{'>OKXb%ؾp7c+dݬ:e myO_{= IDATs]Tw= /ɹ_|=W\Qviٳɰ_ 6{ܺJF!tDsN^^{GeVMo۶}Ԩ<sرsss 8>.[&9θ@&DGg>䓚Ϩܲu[NX,-[DpG#C;r75߲u'ܲux{wor'XEٍJ`޼ynݫ[wp漉O3z91`@?28==}A!F6m:ϝ;&NTnݺ)vJNddZmyJ<--Z\:>`{n|\_0n޼w.ytz5v:*#!jT GYXYZXȉGt,GtJGN >ѡO/?>R5O]۶Y[[汱پcDzek(*9s_ _ s!;ÇӧXKmb>uppjZjE4tD"<...}K۵huQQȉN^^ZEy5SPP_DR^ǫ:ݦV[[6o!GMN'wZrn~,>tvftLaXXT#x4eqΓ!kv2It:}B@@pH裴'$ӕЪyB$XzqqK@ehB1l}ЀO>јe˖ľ_>\tI}Ç?ti>1ӫeȑSNSz =)긦Z+T*矓'ޭ1[3ۗ,G۷o7ޡ7vҤG *&g(1c&g!d 55++s3ϝ;UZtf2.ekkPi4ڶۃCnggd|Cj-N;;TUUkה&MC:J ۶o_vmV,W_}d2lFcX&M?uϿ[>}t8pP!( /֭r7dH=X*aE;::2LGGo-ڹkwrX,VHHW_d\\\֬]2J\;w =?ڱUW;T*4m45˝2u>E!EFFyMqLӷ_WebfAEe۶mL?nھmۜsa}ֹtꔛkcct?5{a"T*MKK&V]L^6DKTT/h C&+Bi|h%8qxnn.L6B޺&!j jrB&3 wIJpSnLl4w]`ff6{l i[4`"ށڂABaH t;kDP(j}B.ס̆G۵oQ w]B\.5ath4B.:tL֘Ɯ=g9su-B52Ȩ JrfdPi4Z͹L:] zB!d8 B ^Isma0JK%b1ϧ~B!d2Y@PUY`0k j P۠Q j^͠%bqcBFK݀Bр!FBQ# :B,A4@1AB5킺bFF Bz!jBA(z(&o!#jP xX]M#BF#A`E! r' C,y/wB!Ԥ)`Wh4:+P`E!ԤrN7йX@SPG! Ӎ޼!4P(###BQ#B& n!/wB#n;2bB#ti_BXB 0"B!!2 !At' B.Kz{dl-nQ`@]+dry GsssJhJJKKss OEi4s V&$?O]eryPչB! :|3116:5eTCQ6\.F kGKprv"@(q-r ԔaS ud"dG]P(r+KKHH>5Dlee 5hFJ}'Tsu0P(bH"3URL,)w],jFӓ>ݻV/+**JNIy4LMM;[YY^w]Opuŭ^1ŖЦѪկ<%FGmia鱣qJ7*++|>؛%yzzd2u!qu _F]GI'S4ͷd.\x 8:9 8pdoVn jީb"-jWL[[ezY\rTZsZmLq̙R ѱkFԩgKiR4""ÇÆ eXAؘҒO?EY5VcK%nk߿slYYYӧO{2%=--=-dXٺuZ8QkȈWǂMXg-^bf-*l̞omQhI+SRiFzzFzgd4@.SsEE%ti<`=d2>omm}ƍw_e z7oBM^_qɶ{&A gOXkDszY۶,^ԥkWuև̙33+z2R$wGs ͙7q/U99̭fq-ܚ,Jg͚jkk;o>mllry~~~BB?aa48ְ?`oo?h 333E `rS3|}}mmmj-ǭM##ϕ?|uTxHpÇDbݠAΛj.\xf{xxL:o~$WmLgdPz D\zf;':{h߳f'rrnD ccc2ǧsΣF|qPP)Սt'1100|Ef͎9סDҾ}^G= ''g,+uՇi>>b\d_46߲y\A[nͫ2ņ*Y^ؼ,/@1Z KIImjaaA&2V[jϕK&$+{5##s\.Vy`_&;zԩYY g3zWmg;cǎl6&8X~6RQQik[ccc\޻wCݽ{!CԔ…\yr E>}Z'djjlٲsYR4666666==]サm]yPFʝ,TiL)lNIc>gGɮm&Z  \ \_|p O<3w\Da@ӦNUf{nA:8l9hsN?>w\e P8pgg KhVv3~w˯'1_9e/ WV@ /j|1ZgW_}eѼ5&y,Zt%Dfck3iDJgώVu+֭x:y*MGn;83225kfmm`0J>^zU.-7tckkۼysG>ztᔔt 9}_MLLLMM ;ys.+/Vݹs'%%%44tAT$''Hm%<*{wҋ1EQdJd{̸q U 5ٔSok ٣,oooKfϞ%W(vX2q!'O\~}ذaRYgGJ$2E&9rfpqq{%WR^B R21677yzô4q]jDEQK߿?i$ #ӏ9mbbaNbWWZRB> B":͐J˜FCN3f͚Ui횵={0,218$vٿ_SSоΟv ,--F?^RRʂ5jD5 _w^ڟ-:[|TR6+ʠ=2T ~:SBț <|3(/ /tƾ_ r]۷dlll׬Y w!gowӧϐ)#tڵS'z(f.{wCPP hR2h͛y,^Q^|~-Vퟚ6_ɱ%͙7odfesOknjo̜du˞u߁bMDZr9AqsB޹/_2Y !),h4A2\}ݽfHKK1cF3b횵/uZԵn۶FP#)zlZV[ OADQp;Vz?b5m(SSW^ 76K (SK,1119pr\._OV>eq2ٳoПFC̙3Y<(<H}9<ޫҲWBSڴ!S7oB3;'_2}KPg3-..H$r܈13F,UJH&Mpȗ+|3y+R7={N6ӧ+Wr6mVIP:rXbfH&rS3n.qզlB\]͛5g@6:B!(Rͼe-<|P)RD[^޽w޽{~~}ޛkLie%-5%D/?oԨAϤRX,~qHplTD>֮]+Dr^҂Bth0/־E=/_r…rC>zB.'''׷9jTǎ]lioܸq Aݽ/??e2Qy.B1fdAr(oRuQˉSXP 5qܽ8sfΜ:n޽ juljdn8q"޽###'Gnݺ}6b$ġC;v֭ aCΛ?,Dr nߊ/+G( !d@ @V13E3 V]kV>tܧOqSLT `ԩAlٲeƍ*ẵh@~׿˻w̬ѽ#xU(h,Guk_|iYPha2^Y3h֌OU ZeNV >~ӧϞ=C@d2vȥ(I]-d0~mGNΦ;O:b'Eѽ"##<ΦL&7`H(ɤTnDߐvvvVVV4ٳg O#>c:oCcd2Yl˗ =K*4ɰ+WN6}ԗRhd'oB̙gdLΦm*W~GWy=@Ӧ[߁bjb#&&Ç@͛ݫW/'''x{zh3UeԘeee;#Fjoӽ#1Ok֌ff`Ь>NO-5}j=4>/e۷''|}}][r(f֢h-j/Ζ7VCTMPkz_:ѹsii7Fk4.!ֈNl$}8Md0333w]&5?Mй{:h4c.$ c?0`2YIIʷ,!?5in4cT>d &R]K|~YYv\o1|e G-SJDii)YYYmB$I iC%00e1*ƽz೚mkWWmC۲Eslْ_~ի"ɓ3dٸ*mz/S ?{ƍYf8q[ztBfCTec}J&꠭;PLZ^#UWsmӺMò6mzU7RwPpJG\z;pXETt"~Pw'd瑋hZ@qyZj VcZ42Juhْ`Niő*BZ6ŪgQ wKITi1y)ۺQ9-[۠7j*[f9^xNON#---Mnng}H>tI4oт4Fӑv<-Zn&oIp8bDvVᆳ >^Fpp0$¯fKt Qq;"Iل#$JJעߟm5$  UsFV?ݱa+CYyövW|imE{m~uI(ݦ~j_2ion|p8Vf yW^A2ޔ`^"##y7\gٹJSWĥkput{N;6N|!c] o6aa&399L6>>c^6NI7UmWt3MVT\LHp|Oqq7nɒ?̛7_oP\!,.aC﮻ ETRc:ѾAgAVMqq1ZR\\L||?vU8y$ǃ]۶t|=,Mv'N >.Xc4ngҤУ{76Io>Cʮ8yXb9ڴnMgre`>HjH.]3{6:ĉCmHHhw$33XӾGw&N@QQ~mfJ,[$17vٳt@zF/{=Ӭi,+n8$LikZeϦ?wUj^ƻSדcC4LH`[wF~m~sYM(--Jeeedf^wŲyfnڅիuK/qFf̘Ve…||ۭ\.7xԴ)6ϙC& 8NGյMZ-*??%ITJ4cmsssPRR$7[w*.be9ʊg_vcy kӿ+Um+S.IfF2OY|^c9cKxQljwa9L``?ՅaL2ޚF]Mz3<_z"oe?y,K.PXXHXXEEEѷ/)6Clܴ .\Uسg/[~0&N/7?{63)g3g.1)<9b0~#G>`sl_TVrx]/U[ݵi'O} JV\1ϲeshKJ08i$+sf|z)SPVV3L&{_2m[4f̘^gy;6.us=8xβv((ȗn޺: }%[?αvlm-Xݻ9a1/RoGms8Uӡ h4Z嫯j^o@?W*/} O/r4x dצRKv{;8ptFSȑ_T%=y&'T*Yn;,o*%ioSO9B4݃q1hΞMeV}}a8~߾ޚB`yP^$|?9tޚE',fE@8||ѬX'z 8;֭[yNeC\1_e901wGWmmdO^_6e>])}nimtZW{u:b{i+_PțoIJJ LnɶlShF?_|%~!k׮wNvA3oz\|%vKLeK :Pָ1y_=%͚ףQQhc'r%n]~?~'N XQ 1kL0^gtGtm* ѪS[y7*bؼ;v$!Cc1qDrrsyf*٫)Hپc/ӧ3?bM:x{ V%dqơ뉌dxѪO4o֌=z$_xW/yݧ?ol3` **X+Ws|0}:ԩo]ܞxI7oN= -Vي5eXvZ3fcN`-T`qs~8!9kӷ.whCkӶ* Fmcƒ8}$[4/bVǾZ >UVl;SLvy6Z.L'$!ƛ.dfR/"`JJJP\.RuѤIU*dgT`9 HK;g%2U*rsR |6|w7p·Olg};dٚs7OYs+96yb…恑#曌9Z 6UVcNv܉? ٽ;gl.noKlXYiӦC*W\cN_ot}eN:eg&A<$ro߾}ě]௿a1Tê\Ɉuc;vߟf}CK[ڹ"&صb{wmVhuJ WRI]mӲeK-*&mҁQTW򝗗NoW3lPKr)((D7dϽ<gS8FfyuΜ>U߮b[n-ݍOc>&۷ʫBԩ<>`'~D#66:vQFDEEh4a0| T}DX,2uٳS^$r }`09s?b9z(J4 }'XŽw`/_ή;edZ:c2$$iB$W vuXƛ 6g#'d00fj&LxͽʨX̮CʛIJccSm ']֫UQ_6iiYi{ʁQ)F[|9~Grsɾ|edK>y3OYz65&{a=:q$6|O\]^y  TbT yA C99$Vv:kZ!DEE3nА8IB"QwXDP o_*ԥbr#N^?*3*<1ؙZɁEֹɉ]`0o >X`SٰnYj/rJ&&[nelOf۶mKe !!!vر#tz#mvbЬ/ qc9޽{S'Ӷ{*ϣGpֱ@"Icv 7M6b0HYYu߿+s$b-[nRK$t:+>xT|*k79hwMwb3k-;" vM#\%o 0L.۷RÊEPһWsFTtYY~'Ʌ|+E?_([K4iԦK``q\xӧfM a?ybc _b0H^g\*~R1-O]i<[#ϮRG +v6IΜ؈gF{9:: I/v_b f}F I드۶xbN>C~.F][NeƌrYcJu5WƵZ44$I{;glVZ?waǎ 6Fmƒ$x#ƍ2y {e%mӆnjbVLK˯l-wǚ={Xx1ڶᙧp13$|AlkIYmuX=5;Fv^ [瞣Nl;A~8ubc{:en{y{|B\mmN8nmrssekK|*|/^Hffl\a9q,_ϥ:DVu$I%#wBy'i`ket:;wGFPb \dh׮ ǣV;|G Vozᑰɶu2lڹmN>n 5w{E|bo~IR$1|pmwԩS'gϥP(ӥL<+Wrl9uVElGz Z-E4RtFVRɩSY^ ??UnݺbXWU ?筷RVVFYbB9X$1lPC?|J`[zǁOlk];'6iji+ƦmUٹ%>6gra:6vۻmZt/5}91 P'N8]taZ8 Cdee_P@󔖖H  #&&p j.b+ʶwGzbpb\TTΝcŔJӧfjС#>, iii0n/̜1˗i׮;ѣGc0/(`Æ 9Ҕ zk3 ?ukw0i넗eh,pJBBR]6nHvv6 7d=黠BۍnT*Y['N'&& /3}i4233TqBNNhZL_osx$A8bꮽDdU VOl=VB:jh|))-%(0˗vIV&;;JETTu&*IQ\\^GRL@fU8X!b}W.[cm(* xٙ"sWZ-Zt Ӝc}k]`Uی &?|,ƷnT(j9VԙMYe^彐eOejRR\/V9UʻbB0݉\y_)U*X?U`+'[9أʪN|8jlU)vkh5-mc˗6 ?U-j5111ĸ-*\j5fϭjjOn*?%_LIi\-|k~JI nW1vgqeēeIrFFX4mVXԔyv0Kkc<7[h5bO+]HFU1oSnfy+'m$>rdB J'^IݸU$<-lݱh{m͌KT[|xNZ󪇗ĕO,k"֭=v vʴe[nodo|6}ɹ *cs?y"%M\߫N-|xPyJEWơ|>Ǟ/wڢꆏ!XݵD[}ja*>FUE>aVFNUmk9Ȩa',{W ȇ |*7d ![d*s 91lWH>ja ʍ PIzduܬGxJuo}~s+"M+nZVumuU7rp3K1AQec hXY 3򫲞 Q'>d'F]N ˛ȹ{$pW7H IDAT؁a7+^']^M+{ֱU U>9U+o>`ZPO?OU26WͅHe.LaU<+WVcrgOWmip*)dDZ )뾀qRi[zޫ`,}/V>V{wf [W`YT%ˏ/8[9gMJ@W.xԡ{3u '5L7 vh]D?o,V-U#ՏL c+|1 D炨u#N:muزyWbVUem0tf7}OVq5 Yb_WW[Yİ311%.@>؏N=MBᭊU&Va`VⵆRBW1]1Е>e+ު:ܬ6y"lyWv,1\+gT#/5R[+6}bo-V1ZU1񚓓Ç(,,BH$*ؿʫ?>o<|5f%VTV"^9p~K)_w*^=ȿF s-Ү}{"uKkZ\sssbrA  8!(|_yږY+WW絾T4p?BG$ n.GoV@mZ,H89 x"_wu<!W^ϤH@ \3gԩG&T(ԍ@ *&** cx &((D@ W/AAAxs+@ Tc^=,yh/@ \7J*@ =*@ 5'l &''^o@VR}d*^ūxUVͫ$ItZ %[@ 5x8_$ѣlպV@ 5\>BSn;|ST^nJviҤ ՝@ jJřT:vxB BP@x$@ 4aaa4JH *'nEPP@  _bxAΝܹ3r .\ھbJS@ JJJxj@ Ղ.sN~ysu!@pM"nr3fr7Qt%%|622)..&""gPT ֩K8|0!!zF?]c((( ))a#F0 > 2Tn@ 9BZBדÜsdJJJxќ:ubKSXcןg m߸ &L`ZM5e*:޴ѣ<3gxg@ AMB p ҫW/6޽logM47wޡI&^naÆ~:n}iذa#G`myyy̜1^ORRSLaΜ9tt=˗/ѣNM||iii,Y6Sz7'OfÆ VXStC߱1GGGEؚvpӺ7]@ ADW7<>6/w^VVƳc.UU6+Gwd]tWSq)@ nT*y}<0r$:ukYl_|IFGGӵKZnMzF|5(Kttu6T s@ &III^uݺu;_}ͷ~kZx{DHH$1iDvkO2f._ϐ!C#n@  oM 1UG׭p-^zYg75YQp.-qOkNJ,@ F ALq6z"u؁QFyGtM|.]ɓ'hӦ G? ewkiۦ BۛWh{%..UVLA~> 2d0#klGs霶@ N99RQQN8ARRdbZɓޣ՝@ j]vҴiSm %)))4k8!!b؀}JKK;@ 5*B "0(˗/a0@ 2z˗ r *pH H;wB@ \z 8vB" -[BA^^@PtP%ū'J j+Vс*# ( @ j B @ j B @ j B @ j B @ j B @ j j <@<@ \ThFOu @ j [$ ^NT@ Tj* BQ5$Cӡj#'ī%iFASM@pͣ눬W'%4,wsWO0 @iV$IB @ @RZA2xW7IOOgРAϜ9nw Uf_޷siu#"HjܘGϐC}6"3)> .\`%/dffP(W^<ԯ_S:r}p&ϟ[W*а!ό}˧w^t(8ƫ#@ UyuzrrٹkMx7nNΝc!\x[n`N8ڵkYb%M4Z|`ce{yqͩ/sŋL6#GYlk= ., }Òb]ջ.O>źW^y}>K^h߾UnZJKK-}\]1]xuF nn&Zy[qq1=zݻ3w\Ӷ2Kqq1</;w"u=zupsn<X?z.]Jcİ#п7 Bjj*퓵יT)'7/j1q:DǎѬYSƭXկU_ov3}%//ټy3 2}W^o+ ios}Y~=ڷj<{};@ xqvʹiݚ{μ>24V9Ç߰H}ЬiS $[hO?ѿnzFl+/۴`79s _Y;?-=zp]ǎ|`$m7lXύ]r}N}(I>iwK֭Ʈˤ;yWH>v?:y2+++c݃h׶-={_'//ϮoIHNN{;uc8ErsIwsh{[&IlՊvY[ha;ެiSM>sɍ,7E,5{IOO'##sUUȀ@׳eM~EhʮSYz5<ϛ7Fq;sLtz=IIIL29sЩ,_#G:-&&xwH͚ѼY3ZhA׮]8t¸q,/1 >?o &L{lj Cyg?w޶$qF?sff۶m|M9m_Y^yeZjͦۧgL~CZ?ٳ{7ǿ/ ".#:q >^grϽЦMY0Yϑ#Y8poYK6t(/]rwy< >+V3O?K/ڽ8~}4ÆCL&͝KAA|E;STύKB\r9>oڴ O?1fLnLWWgE,b+n>9^zE.XhmWEaUHn 6&̬,~GJNN6`]u Hbb"~Ν;׏uבB`Y$4LYfs=z6~m8mO\_Zl[nȥKHMMe,X(`ɦGۦ;;v@jj*K,1]h1|&]vET?)++3NNNяЪeK>dVUP2ښ{4+ܳϱ-|`s̱?"##Yf5?o̦d,^KӠaC| ~03gR\\̼>[o2p@~s+gyه|"HLl|@no;v~WίUkCӦMv~߾n޽=N@@7ؕqKK͟7-^M7hg7vǼ_* !YpIIIgrcz:M lzi^~%N@:oc0xǫ|VgbY*1W *~|rUp!.sώ9r391]=^&j6ƛo;o3i533ioMFt:3 B[EZQybx7˗-?mWX[7ª}xx11ƪNnq_օL15eORPxIv?vӥQfeeꫯ{nJ%M6}4lؐӧO (۴AcyTdqޠwXXź(._0?KxxZ4P(lي-[1r(&Lxe˗3Axȼ@LtU"BVU,[u:&SX:uZS,ڽ更nӚ͛7l2/ZDF9C:t`w~~>111V}IhȢ7cOO?OTT鳣uLNLWWg Vc7Y>g_|:TUXⵊILL]v>|pm/**xk 늟(>}M!!!^ɽ2bbc1m&{n{4{;oOLTАԳpwaZdgg3p&M_~ez0BkaQ!& yg]̢A2i8 |BϖYmS(ts76olQ/",tz23/P'{ɉ)x@ iݧNbڵ Ī mqV50pqlkp[.ݻ1//gϚݻ&IƪbbcK.Ri߾=۷ytZڷoImm _LPG?Hl߾Fč7݌Fa֭>-Z -O|\/ρ/M˟tiӺ˗8reӏuyylmڶq8n֭[g|4ٶB֬^uu4qKZ-?ldZWVZ?lk׮n^9/9;A̝;Ǣc>¦7{+@o}{ɉ)xX"ڱY"|AJK"D۷/3?x:@*Re>x}zj fia{|24q"/2!!,[9vsμ;?ǭy^%19f74 Μ9Ö-[h۶ {6ֽ&jJt:O%%رe < /~ƍ/rI|F?ׯgY֫' ]{7&ÆS\RºuQXԏyͣHVV#nc癜rW Caa~ 6*rI@|wlɥN:V~X{Y*سw/{+]vw>Ǐ\ZAADDX?*HƗEc}Cu7ĬٳHJJbԃT(y뭷1g{=233iݦ5˖-i&ON?gڵl{OW;31cgϊ+3g._}5%%oמ˖ѼysS;Ws}V/`lu+?lHOyP}NgG9j$(\Nddݺ̋/dWTT+VdEl=ݛԩSM{ɉ)x@ ]Xqs[j'N$qcYOqy'9> M69l;ctV\I۶mϭW IDAT$?JTLR.@P 9tǍ7oܸ1޻3@ ]Z$&6FCRR}k*(++tرcM7@ )gNR~"ڧj1ϧ^zN80lSP(qQ"""0NsпNA Z?e9zF }~UZv*\ ZٸJ",,P~e ["!1@PM:qDf _ īeCTu@u$ !66ؘxQ*OdJJK;%@ DP` !!!VԩB BPD@@t\ kBQі?V<ڤX@ bzZ|@ U @PkU @Pk(aAH(@ dCT^@ !^@ 1ϫmrrrj5* IP(UW*^ūxWI(JZjEݺu["!^nѣGi٪U@P#thߎ:udI^GӺWCRPTOB "%5ӤI;@ yQTIMclt:Z89yyydefZ{i)ī-  Uw*@ 0%$vzbZn^G)N$$]uo״=88ZpBCCQT^=YZZZڵkIOO'??zꑘ؈o@>`!\@ aE:z}^Tb2e)N'; 83HHœy!:u|;yyy~y33g 00@ zڴLS$ϽjС(s]qJr2(**dN~?EMKAzFz=qĿRnBkR.X$\ccb{Ǔ˦M?p|@ .@iVkb>IYJ (.̧07ц`/. WD/i)-  īw/g6dLII 7ǎ%tN8I^^.M5w}(>Ν;իHIIaС۷Ϫ-@DDhޜ C֭ؾc;_'Nƍy`H⮾ǎҥ$;FAAIII 1˺oȐ!Z'E8Uyn%(*,< J) jڿ"QG0??! t-kU$$yf_u:KJ8u4;_QQQv9tz_[Oa1&䟿៿aϞ=L>)"rrr8Ldd=[9v,7xBF 6֔r;r(G&O&}Y@p"IY)g_PDrFN%r b)MdmPRS$^'zkڽ{w~'ƌCӦM[x]G:]׉)SZOOOg֬z*?25>|[uo~{/ٳ'7tN/ ѣGSn]kҘ3{6wVe挙z=z4uˁ|rz~;m۴q;&&FQ@ j$QT&z>Y[:!(GW75B *,FFVS'5-I+py> S8u t7FAÆY2O=5G{w&775kV{$^U*oic0x brкe+{1Z-;vlBf&( f͞EB5k=܃^gׅ ?q;w@ I*v&CNj NhhhMi B3Wбm$%%@Uuxj_ԭ[>[c?).)Sh\~%KҬiSΤ1ʼfAAA'ܹ֮4rxRաÇLq˭О ?!!!111L{{`<;ئ(7@ W/$!s>[/@A hVCy)Rhs۠RhJ~"uokxn&+z˗/ӭ};:cǎo~v)((`G1w\3L111"##tهg>//3QP(M^YД@ l#I(tnHx:Hr;sRARH9u6Cՠߴ^5kTۗ|&LСCQմoߞ裏0|/_΁,&#::>7(2넇)1 :ݕ \166'OPTT1I;w."t]'S.L>ݦb @ v$ QnA>r(5ɧ.~%(%:@6I4lK``@Ij0qqlٲ LOh٪i0_׳wZjeZ_l"Ӻt׆4ms_?{Eqdw;$4իު5kH^x166V#FKc^Ҟ=)?t];|p=ڝ|xר ϐ!ékLЪ+':_v)4Ԫ )*"XM# zڷ7 wJW___=3蒋h"mLJC֭[+P~{znfJLԇ}7*;'[ -uר%:(֭^|E͞nC6M_|f͚U,_(0dv5ת];ڼeҎSmϻ=O111={6oެtŷHP" :o__zvm&ھ#E vIt#$UoG'^]۶mS˖-eZX8m۶]{h"99Ujݺu9N޽[McbSffl6?8Wá{Ǘ;RrrreLhhyFnnNc fŢ%mLRn^l6,,Thh<+ƤM /kt} F>| h\.KGÿ쥈YV+88H˖-Վ?S۶i VpppJ^ڋTfFRvRDdtFr#+##SQU0TWLL,>>} TӦ1jڤS!Y,JKKSVVVzt: ݻ|||"ݦȈpV=Q9nw%+Cj0/.opX,r8e;j@U)Όʝym$vj`WAxi^`WAxi=,jѣ\nj0 Y,yGy䱁 ÐY G۵SXXXcGzExE)))Ik`ǎoԙgtRHh!%FjR=t-A %&&* )/;;[VU;3t@MT+(--MM- E nIjݻr);;[wR~~^!Ù']M]/Bj4mJڨ Y:Ykx߿K.jUHh""#գGwp jҤI}C ~Ԅ<ûv*IJHHМ9se+WN2!!^"8\N\R2\N{My)'3MٙL/]ڂ) H~1  *:V"8 / u.om_K;J7xM4}4m޴IjժF]y%fs:pB(<<\t~ڹs:ڵF8\63{ZbMUvvuW꾡j֨ ifMnݦcjݦsZST9{ݠ egf(;+M?M)0,cgU"gB}k}&K><-]^ =̿q* t8p@?^D=5) JLL$͙$U 0a\.|V=n=5)uI|r-_L&ъUllW0g(y=U{=֤)'Pr&6[|\(OA;IhMe7pQIҼ󔞞.Ţ '(y$M6۷\.-\:(==]Eב&LԹULLݧ-[槐x zyXIlNK1*oeN}ë_a*i&GB,ZJV*LQ͢#յSvf(a=.I"%I;vTXi6oR8MdZj;vhs5j߾.R7lX T%22J~~~ (>~Z ,Кի5{'ڶ}:Tع%oG_={Լij40dC!?Eam~Z N:&%PGY-.{*WS/:].$5$ط==Z#Gԑ#G$ifxg^{5q5. SNgyyy6t~[[QԽK)Il=UU^ Ðo`Ҝo29:㨜;ǢV#vDwi۞<9l~r+rG9s(++KtfQ7fўDZE?]v45ۿ_,]+V(;;[z7V3gzktt~9j׾RG~(Ir%ZƉMfyDM$rf0d ;oԟ)珽r|yAʖܲYr0Zy\S9+o|8p@k׮_$9~풤$ޱoU%Iڴ)s$-^xIUg{<;>}֯__O?y9s6m*Iz=ÝNWMUv_$~{u\. C;@m![H9"dMi:.Ym@\uQPB THMϗ^SE6+^M_iiAAAz?QDDa ]3g(++KOS|Ox ٳfrW_Oq4YJII)~*{i prVYt`lԵS}eu)( O!  QDxPjp{% y+$Z[fӇ+Ѝߠ=#4|p=ڝ|t[oU֬^5WwР[jukѣt{~O0`ZJa護[oUf]ԱCj!11Q#%Q9JHhkF/Qwޖ2m+pjg6Jh;R`D+::RaAվ>X9b;z3ؾ}}]'m۶ޣGc߯R֭+tjjؘXGn23d) _U;ڛGP|||+y..̩&#-[nnNc fŢ%mLRn^l6,,Thh<+ƤM BxE8:|nwcHr\:rUkZ -[T;.Ooۦ%K+$8XZ)*2RJٽKQr#+##SQEUWLL,>>uMcԴI9U"Fd(--h>j,ΫvQrrroo Ð/Mr; ?_8xf)e+m}dZKΙrTuz<='3Sm )??_yy(TC^^djTy^s:r:j4FAXʓ_FF'__2gǒګ KQ?uTo{:(zۭ 쬬mۺEA!xΔ2g IDATi{2yR TǖgDzڣq2c*Unn [)OOKSvVfc񤗞vL.l,C?Om =lnCBPJ5vre+YYj޼ $UQ8:Jokw-gZN5XSYnvړOqr-C*y[+@]u穣̶2֕kpWvءs)..N;H\rI&]yvܩ=ÇY' R0\jz,='3SGco RU%-WKGӎە+5|zP7(jHh)ߘޞ~Zϫ*;C[kJ}ͷhA*_Eod~oO{[:_yX_Js8jL}~_p=zT갘aZdwұcG;O PDDDьhZdtY\s]ػnעP}C7$k*33K'OgQx WxTHXb5x M:E꩎;_k`ɒ7,\t^5UǼcO {W8}-vjQ[W-ﵝ_e{7XT>Yjw{ C{~ĉekU>@_UU:Çg~WNtх)""\۶oӧ~%KkҤԬY\Wv,M<6oޢuE]7&iqvۇj1j[reff)<<\+ˬgYx ly WxTu_ sURm6=SꪫEء,]Lׯ_fpz^5_tnʟwF?d]s^]ͷ2Rl/걾.}-Rf؞=J]* aμei٪N;4au߯7_~Y))) Quo$YF;wPDd]^͐S觟~ѣJ?ܹS/ƌQAALW&NΝ;շ(pʫjڿoZi#FsΒ:wUͬSN[#$ޭW^}U֮UffڵkFod?_UNubG/Њ+tVeݪUe<_j/tA믺Cs~%KTpR?볯!g^5o֮'%EpZh1cƨM6ڻo薛oٟ(""R<.YaCog]v'豣8a$iݺiXzPiZWoGҠAWXq/ӤI)66V3ߝ;S>Nksj!JݳGWHHHOMMUp84bH5iDfmުٳgm۶%Cu#꧟~Ҙ1ct=mZuZRN]7jgڵzGuyO{O<9Z׭k֭[KRR׺딞h]rź ZjwJ/2_}5-Z;vwfjvty) z:o}:~徽{5w)iԦMK.CK.5Ӑ!CWNtu+ǡÆzSնk3ֲehھc23p8ԾC?>yoyrJIw!CF[o…ջW=zC"!AOo_S>4}4NI%^YFuWUQPP3fjwnk8n[5~Y2 C쩶mۨiӦZh״:.x[^o\q7<UBQxߪzy>vXeffjҤ%IJhB/ԦMI}CeojԪU+$IZp򪲳5axuCsѵ^)Szw~X={$nZ߯Z>WIkFΝ;oЬgiɒ䒋5w\z(0wooM-[/_iǎ龡Yn0JOII< Zӂ %۷ofb#e8pPL<ɓ'+,QuSϟ{yq]O>OVbU˭ߢϔ6[W8^XhD7Qj27|K~5mD?T#F>'VZU~_Tw{UU/8F}vuI{w4]O5?_z5S۶mdXԫw/x6}蒋/ywbkÆ r8v%?ae[útz0wxkÆ :a.B}We=%ũYaVvVOXoX r<-Ag}Ng]aCsNxo񦲲쿟yh\Fҍn,pKϠAt$I-ZꗟO?T9ժW_\b-c9ut$w k̘t&I| 6x3㝙'TsΑ$, ֓?Q>T}]UU}[^AAAdtV4W񱤆$mܸA{nы.X>/B;a{S^o>o59-OulWJ{y@z?IIqkNK.ջᆱӦ)>>^c^zIgt$Iڵ+Y*1 qJ .1,22BG.gڊw>5.Spۿ̴!%Y7mg*YUo _Z}>yvuڥIJ*V~U:a6>a6mapӀri۶KeuM=C%5 ;j2ž]-[tW2v<('Ǝ' Zf9]=ìVu~o:lD;SYY /nY]am6t$)=#CIIw>m߾]?CQ{I%ƭnmvyqX-JCQBCBu2sf͛I?H[CrټeV^/H^am=|^zi֮]+hN?]11ڽ{w[k?wgA- ?x@b+ 0İ0;z}ncذ{@wt}j֬} + k]ϥ˖o߫˝n.?=T_qrxTXqfmc tـT3ٚ0a$i/RmذA'QFy/O#umݙ3ோ/P9bg^?\m۾]+WT%i՗_i^CK.E߈222bJ]|Şv$Yp=kgstE+$~믊~,Qp/X|*oqibr^F۵Ygu={0T DJJm۪.]YOQS@@g/<<\Gmw5-[t=ΰrZn*XJ:XZxUаpzQ=z4uTu*cy^t/%ȑ#ešÇTf۞8.TL_~~3yZlzt!ŧW:ʹǏڵk5j(S6M4t^~j>|&Lg~Z {52${֭]#Gy5m4=s٫g^COz4e_@?o gv+y>eM:E>DSNSvgo=}M{zZSNOg뮻ҡÇ5 U Uex9N߾4q+:1c^T48gu f~G;eY}e[|]ή]=Î=?ZbnvS~~ngXvVV^Sb za9sF2|5J˿Y^A]a=V4 éOoWrr>U-a' z9*((Њ+[߭Z|VdQk… t2uI=ZW:ʹII^={g?s~N_9]4 YtrrrtyʔyfFVYmT.WCш#e ;=tםwСCE _%ݮnW5M{֎;yZZuTETgoxTٶn w浊siiivݡҹvӝwޮOoWbz?__͘1CӧO׊+W_+22BnARP`dgk-}:{V}"#"nz=  ҬY4W_k޽jgyF}-Y )9|qziX8p@ڷo։< 4H+#.ݻ̼?k&g)7'G;vm6eR597#U_ѷΨpW.K/4FE#.O>[Ewy{yib5~ŋu 8mV^=oiq+%Vhhԣg.5*;n/\u˙w:/S;7N))/JG7/&oߦ1cǨwѣ{סQC7_錎$Kaܶm4SOզk3m׮]j:眮JOТE*j|=/?Ovy.>3͛?_={T%߿fΜm肞Yw}W99 Т_t믫t*^^e_ɓ'Snta-]T^uQs޽Z~.}N{jᢅZ"uؾ^Qy7}ouu>zW=EDDj)7(++Kݻw+Ϧ'꣏>߯֊+[oS``FuM=VXxUIo=szI327wMc4ydM>]ϛ\;&Dط~8߯|ԣGFC)22Jo>]R˾FNS[n Poׯ6uXiz!iժUukڴ)nz[g{L]Ζnƍч),,LO?|}NpO?&OCM۶7nZz*o*]m'G .Џ?ur &%K%wZ8۵W||\C߸Uz_G>o=m,G6>TlZ߿pө;uytر@U~ڹ3Y[cJ>VBCzj2Ax}nݾ[4R|=r#nm[oJemSQٴi[n_~)P(myyzafZa+m@Cdd$;/. (_۴f[qqq)R7y3[i}Iعs'7c>|~݉K4(ʫVCV@bR"ikqrt$]llPs˾=o{`ĉyٸq#m^y:uL#'))),]ŋ纜NcƧrm{?J߳fN֭[133|L| ٺm+Yǎ#%%VimŞgiP=bȑТeKڷRŃٵcGi&*UTҡ¼7_1m%g]TH}J4"UHII#-=5tRRҐt|šT*>}:$q ]/0`O_~u~?/]a|4}27 2}ǩS 5F9{,*0?חOk0񽉌5 zZ~GAPpE7Ç9s&ݺue˖ݛ7j`4iԩ>>>\:,\7x-[ҹsg̞MDD>}N#G7n:vymۖGHh͛7'88蛼l2䑓ֽ| M6eʔ)Hw{ѲeK[NŘͽ>!>>>̚5O Yv-sO 1./,I&8q<>8p &s_ BQ@|֬YSڵkGBbbq%C:t>#~1QJ,WbѢ/R* ,ƆEܹs}vV|oؒDGE4hW\a |R93rH7*M+++NJxx86nqϞ]v8::ZO녆o0bH֮]CΝشi+^|fFEݩ]6a1p0?M7ˈ#x$͛73glRSS2e27ofҤIܺyIL`ݸ=?2bȎ16mڄ9rvgԩԬY+r/loN9bw0uT} kTy淌:r#/7v88~2k={͂PTj֪ ŋysҥnO?I ww'LLJnݺ3/g Ξ=i߾=Fƍqj*B6m٫ ~Z&LOvܹ3?8e!f֔8J˘8wѣFqq*Vo썽1[VϷ_~&osuY|9V%7֖o`mm͢E\r,]JŖo6Xl7볿deeEB¿]d/^LVhҤ1wK/1*vѶm[v|nݺRF,˄< g@N3arm6j5k׬E˖4n\k {wܹ~z$$$| d9t҅{1j(hѢ3gzʶo-75|2K.\r^nݺѻw\ci9ٸq#ɬXB?:FM:t(aouTX1}`99:r1jc~ v>yn &N]N<ɓ'S6͚6qi֢f9p3u4Əϔ>⯿bҥW끌 6P~}LcL`RՕ+W|r\پ};njaԨ^frƍGFxM\,c  տw!7S07J&MB FwOjؽ{7>aaٙs9eL˄ RNm-[Ѹ1x<=!<;֫Vί܉NZ3s|Ulmm:t(J&Mʣ,iMSu@W?S179Лs9UG?]jԨ+ F1 `5y^Kyxxx+c)L=G2רKqqz_#""ˀPJ)tԉN:_WrIbS^}i7ww4~ܗ_dձCG7|.]:ӡ}GZlܮ];i/\~ 6đh<?nqqh!h0J(UV8U˗+stp ::Vk6L9z5kfs]?ZGhʫ&睓 E4?|?;h#ˋ[nѮm;Z-u*U*0w\._œsԱ%wΙO]ĉ㜿pzk.ڶm9ɼ_ NƢj ~ W,SzdO.ӽ{wnʓ' *VQFFm WNK.SfMjԬI3{63K>ӛ"37HzW9GGGڴԪ]3ϰcwlݲO>_uPBmL#/xTV-O{]coMm@ɫK=zL&ӏ=P nnn%Y6̪U+ߋPV-IOOɓy8yƍؼL3HJJѣz?ǎ#)9m ڴi3ҸxpolaΜvQر#$~z??΄ 9A7n`mmMΝD~w}Z2b y$0,XH֭jժ̚5!bˉۛW^}TΟ; 7;cAa#=z@rY~^{GN bӦMXrf͛峼op/^{l<4{D>߱er9zbڵ9s%KĹ|.Rvt!_yggر2kL6l#GX:cqPۛ;w2g\<Ī?o^^^z-Z 11yqQvɈ#h3q3f͚ٳgM#iZfΚL&cXXX0o\2<}DvΨQprrbΜ9gL0uM6uqAv0///ׯ{GVA(l;w9zԠu ))~:HLNgN_VsEjש7xƌ$IXYZҾ&#m` iv7nJ%...;q"ׯ_gό7%/7~)))|Gƞ8> Zw)ak>{ N||(sG,Z&Md =zpf[5kRQod26n-8}4ͣeų~.prrb߾h4 gXt)>+m^!:*ǎҶm[c(Ξ9˼y|yg~:SRww72k,:wO.-c0oѣGYn* 0'NsN 4~etcǎD||9Ŷdb`~hh(֭&NAe2|<mv,\8]ZƑ5=BFX~=r4}ppaeVT)j۶?!;cUDEVQ:p`?˗-Ɔ&OaӹxW$$$LRRXIĿ/ʒ*U*cmm].eF!==WWK:!O㉈3j.ً0ib(}SQ9$%%^EDQjJ:A(մZ-IIIԮ㍤ӑV! Zܹ}  EqjqPȬL*7Љ(-L-ǂ*kTt ^^^8;9aiiY HNNښ*yʫ &!A[Et:-ZP`ð/W(NNd]nwO*7:uLit'66||3j(ʗ/or%,'r 7m,1Wi$4 B;:og_n8*UB5 5ͼ k F$tGJlT*U )O@QHL ёrVi*WB͚5X7eռ+ŷ]80/6%y|tZQ&5,\yo^狋-+ݴܹ}Ǩ##"߿?MBbRz>alݺࠒϦEqc>_˫?pQBΕz.ax) IZ"w97P=E뛯 DoQ!B$wM>cΰ<9*$ iHZr3?_I&nM!<߶7L|O?Ro&ǁ1bScYrm>j+v^ځCi5y.M:?ׯ[1c*J7[aŌ?{annn=e ^MR.\)WI "~B<*t*H0Ҟmsv)N9?~<׮]cg:lA 0tP&OP-/^8)ʫiGnEQnG$0!rKUrML@ 2ϐBĉj[(F^08Yܿ rIth%]'[1j54,U?f5,p/QYoۉ']嵂zͯ)n,{>f$>LI z h2Ν?ǯJƍ;w~LoG̎豣+˶<ύ7hبիU++JS3$X|s bCpXCC2RE3,\:y$׮]O{&7ULי|O/|<ۛ*1?+W_ F˱Djbhݼ5 /nk J;55E뽩_>||53YK>d~sԨQ?}K/1p ~ÇiӦ4k֜w'N,?qF&M8h׮m¼̜9.]Pn]Zhԏ?&,,_cNL= JI Ph1#(cU+zT^̏ۻ/oڷoC I&ԪUF2bp*IK\´iS cѼK4l؀ɓ'o1ժUPz5>_~xx83g̠sNx{סEf|G6?Hubfâks#'5(oƐoSJ\ ӧNX7o`>tOСT^Çeɷ{ 6=w&ڪxOLhѡA<Hwo| bCI x3~,V} 2СC899tvԑիwo/DV-4<iժ%uh߾=kV6x͘-qRο̊^ OIwL`6I?_ىe?š܍z@rrRiO2͛7ѩSG|7ndر}P(طoǎoĺu:cRRR1Sv'|?ѣ_X3N?|o͛7lgZ ZΝ,gL~G??θq㐐 yHݹu&K-k|k7QѼDDKq !q'Cvp*DϏMaX[oel-l.apaXsM70(9.䈛;e[Ʒߦ^|ט[]:v:~~w{>}y<*W„U+9U:OmyH'q=<xn|dnV c6_*ao_.2n6 {tc,\9oťX 47K^QVShV  x!kO'?=q&M55K.agg;FT*i޼9nnnf3GSr&ٓukײeVZj@ʕj:.]eɓ'SF &NYrey.XZ O)VTŋӺU+vńw}G= ~rBA!BLN΂' 2RӴ㢑՘˴ё65rٙmr~> 6AJObiӦ ?wQX4h@pp07n̒~Nk׬!99 4o-Zзo_3&*U`e*U,X 8q;MS'[$%q4 2:uYk;JqKJkK7MaooMV۷,oVZz&RknT2e 9+$,hIKM":IMb#'!AGrr 2Ц66=׼x Μ9N֭yys͚98^q'e3oaeeEM,iժ% %¿?̔L<bC Pz 8w+IsESSYR?9zVicT)))i?FðPR^]L޿ExeR㼚eڼzsǟUeG8>_D'ZM[ԫ]7t?ulٲ bٲe4h ט? &["Nsrr&&:&Ǽ4 vvv̜53]* gj O%T#T( iҐ4ɠM%-58; DĠk#C'K#U<׼^yٷo?Z?T*ޭ~HN\.ZԯWRe#---H/ 3Ku`ffkة#UVfly6~1+s!͕+ o>矄? Mp0gH{͍>[6cg*W͛.suΜ9C^Z獽<3~?lD[qc~O| yWKPQ &m¡`kk.N|}b'qҐRFwNn+2>$%%/gٿ3'L##XQ?8<ʕ0Qre_Nj\tUWA(b~I[$]*r]z22]*rm2OKMIl4r]J;Kkl2iT-׼ӻ;ہZ[׮?:}:_,ZD]Q*,s 0L9U.!==]p0$`WR%߸A^._jժ&{Y^SYjQ#5c&jZL RyZIxX)MA\;wn/J.j ]vY^+bck=l߱C dՋ#xxxK/Sn)?`բ,ϚIW?%,_X.s9mKNۗu{4gRwytIXjAڇfĈ9r8Vcm::*& jLC!binNSXy$ӤIO")IMdtaej|ZV3>}ʊy(>}|?`ccCn}j5x+SƗd}۵!55iuZ3 36?Re0-I׸UpaF#GL8xKj=YaO~LM, 9Ubj,V&J qO{,elaa Nk͎;L.OIճZ'Oryz~@(#~ 8^IT9 8dn"r4OsMfZjՊNm6t:3NǮݻ8x/7nLݺu tdlAZZgϞ5XnO\.7|)ϒ<2+l=7Hzoś$Nfe $-Ӑt],B5c$$:kk~}aiߡClenNyezjqvvf=3|Ĉxk=Ʒ~SfM۩\2}3y FLkp1} ϕCn\J!5QPXVAi @IAҦ)\vyUJe;wˋƍӪU+N83hӦ qq4-XXX|eqc9u$?ν{(~rW~~w6mݺuc ~k0ǎcj4iٱc+W?Am5wⱂc|MwGz1y(2_Ohѝo.]аaCXj%uЩcx˱Gqvro1almܟ+ [5R?h$Ki\;$M2 syx2KFӯO_v>}2^zsё3gNsIVȑ#W:}W_meٗ`igggvލ_9:!;Чo͝_O@xcΞ=L&C߲qFΞ9˱cprrbРA?>ϧ6H)IDAT3+k>wE9"BW?E233cU;aÆ1tPZjJiki&Xr%fff9\.gMf͛7]ՓNfpww/ʫaQ9I#R)k Qò$N: 4>2ۼ˳w^v9rxzy1fM2{a̷a޽^cGͧwHdcy(ʫ,::J {1'O_,:gUgxF*)x*>j4޽;ܹsCA8"r% Z`ZjEBI39 NǑAl;CMz 8#Ф"iRJf 3]#ʘ-+W2諛qd&CVH=ٹs'ǎ#((V]taذaǏر#_,WƖ[aG͛vFF7vrdXtOQeL9rsժTgjQ(wtJGiWb, 1\NUiӠ<~k!šM-_Jp-_.ĄªBH7#Gdȑ.r ӵKcȲiđW4c 3sdk\nPf ôK=}~ɆQZb2@)N=ӿGBNȎ(r0?n8 ~Hxx8G:dW^,,,.B)/?ws+K;IW^u:~)(2iG(8Œt1A^RR"!!DEGQvm*4J(^II( ,DURYL.]^V!  P 85q&SMGTT_NϫR1&$KyrP*-prt 9Ew,,U*Q*U8&ʣt*/' B$P,Q*U:`:LVd_8(:)7QOQWA<Y(qPU  B!WAA(pURӉ!AAtZTxT>'  YHDrr NWR HHHL<%  h4XZZbaaQ T*AA"'ċAAO![  eNCӊWAAu  "׊WAA $*  :I'Z^AAA"׊WAA ȑCAAr \-  B镜̍7IHHBEyAAJ/KKKԯ V+Z^AA+99JVC*  .oܼIjj*A~O!]&+AA!Ë]0WK\Cp"C  %yUaB#ٲ+\A:Y̱4IENDB`luckybackup-0.5.0/manual/data/scheduleViewCrontab.png0000666000175000017500000011141711354337074022251 0ustar luckybluckybPNG  IHDRň pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup <2>?v IDATx]w`UE?R 5қ( **6(ŲkY{YW]]lE+NB(R^ڻq{n E߲SΜ97gPJƅ]gh٢sGbҦnDzQVZ ɓPִ  lrk!ZSCf4l.=Kէ C)go^Shc]HCSE67 0!Zn`y">>~Ց)N6tӍ]N뒐س{͚GEElQOEkz;⧬NJMxK;QJzPmLDD,*}Gp=(9`_0{qﻬ]6QsS [zzĜAk@=rB6'5D)*+ayRqԭ=w.PsSJNᔲjZ|/)Ur.͐ZWTuY' UAI؈qypd8#F)q)t-@[5]ȭi]Cr6-ٕΤwHHL`Ǐ3B!@   fqj2+i9)3&WXkyVE09Y_(֌2+F'C& Jz$Z-+Ȭ9|T]P#\[6|箛RcXh83 MW92Z0(/ Gq+hQ+)%bJ>Nw))(Xn銈<DeU`MqeOV$˪4Djd_];ی{CDhPرJy[zqܧ0m2\0lxJJJE"/q/ٽGtt4TUU۷hIII0XޠAl\\\rrJ-40 ^k\2 +$pyԋMd?dc S([:bG04لaC)3R>DhSU hgF4CJv|^pf|Y$adq$njIA 3,bH <]0PJ$(5Gaa\ؐ1ip6AGt;P ̓s#LW+0 3`vJրP pGMل<ؼ &/nx" *d!Ya U$X'P*9A.\.2'P$C<͢o|Ǵ  0L)TqG'v4ɔlxX8:j \y)Hb@le2 ȣϹmg0]簣Mqx" Xls6`R9N!1({n[Տ,(Y.?[ qJ9LLN=aNaID܇Pd[ ZLSJ3SȆ 8倦KLlN^,DDD9rxӦM𹬧uwRI}4oѢlH8Vo=  +(ڽUlQa{Yf֭ۚ52͚6jTTTt͛6-_={j߾CȅD`)(JEW`<J'퐹Q,l%)*FAg.wsaCw1(m1_pIJbNoPSDX%70):t ABڎ5A% ;?-^kPqyy3&4U ),7j3*b abAlO yE38ٖ@DS1{Pc6#:ETR'j"l-욹$-gL,gg /7*eل_7qVlVf2MAdT=>zqܧ0QQ1`&Ǝ+(6./=V|Mfmڤ^^z|lT;{,.)^r;ַo_vQF5֭{vv7Te$%4nTcNn܉.R[vp ̵BsʻFզJti%Um`lpQoi!<N)4}-s"UqA1q}VC¦\&OI5jĖ9"1O/(<(;#qqs…E³H9Ef_wӛ 7hZqX0q F)a0 yEl:9dqq N4A,lTQ)֖39J<ܾ0&EWȐ=N`ZcT%21%r h''4**s3+c|%>SJBz*nKur-sdvY(%8d@IDlva/d`ew׆? ?#6 gPbJĖ"Xxr+r$`xY) xrUS \ :L8cVDxFcJdAm%1{z@ @˗-/v֍Rt{{„W~.]:b4=]]/daݓ%ٻwOF댰l۾mZJ ٶjW\qΐ!qqqңG 4kof8hذarوcE֭ءcB}~ƙYY[HOodyV<3©AaQU+G\tQ؜UV6lذK 6l駟** A=Q䦨U+G < yyF۠A^{eߔW e`0 `y`ٱb, ~0 كrx '`#\Zi BuS"loH *49J);F%2A3YQ@9q#3jp0_uaqrשΎۣUWO%A={\xхwsM7df<2ߨQ ׳6jqNJ<8lp럵q}qqq-wٳg{933>~)..ꫯiK/N͛{\zŋ =ztdddNNΏ?xmڷk7uT(**:.2i̝[ZRҦm٠A())/oӦe]qܹfs9ιfff9r/8Fϙ=׬^UPp‹.:K¢L&4w޼wyO߾`P _f̘ޣGĤ$\q˻dȱcp fw}wʔ)}ZZJX>xSNc,_O)8qWXq߸qojP&kBlm+VDPD?LkpdYސҸĄM6 n۶%i!C"Ym5*  =zƌB@(9)0BPM ٳ}FxҤI~03;;ۼu#^hEӦO[-yi޽/z-f -//?޻iּW\~0m~5bĈ{$cѹSwݹcW^1^}u(˖/Y~!.. ӷO~ݺY_4p`zz˟}٘؋F\t饗vܸAn0! r8TJZyy}MPrnf Mx7g`>Qq\CwS9v .liO"vnLN%[`q%{C͢=;{n)tBJqL c sKa..hLAD$43k<"o@Z9BVJd/`-O.R5I+LGch6kKX6{8"*5W|71r#O4SkKz˷A͠s#F(믿[oþXsEǝެٝwoRj\ SL2eFUXjƌBwI j*ru׭X|ŊN-M???/.//^IM8^٬EaBjahcfͻtb$9C 1! ::fiQ檪FFEWVT@;w@߾`̘1cƌy?&M'23;ua…\smvvC?*i߾cz Co1q{yǶQTT\>Oclw=ON222nƖO <ܳe:7&ߟ=qч2g /B.9r,X`׿kg9il 6WUTT˭;c+l8X̪6d5W:V]ݞm@D|2 #uKxlE9OW5< BGX e w^ul="5X@YspM66f @34_k )\SOi]*5\g^|U+++O%2e +hVۓ.ƍ++/Q{oʕ ZtiӮz`IA㓓;tT-R(S`TT20.*۶mE0RRS !% \Q±]UUUD 2!>Jҩ@JhTD$Ђûrwu9pʙ3g^j .7x}l׻Oo ?˗>ꫯ{o={lTUQa6׺Uk[h @heee f0ysVAAUW_5rH3G}믿770BAM4i ݕJR  @Y!$$bk)<(U:{=Tݦu'%.iľkr! Ű܆\j?ʸrN3OI OR/NaHƎ wχQ90a9܊!t"]XJV2kBЏIQqKF98G0 Z!!4v DFUN(CGv1"𹆔'lgVƨsJK" 3? 99]7tܣ?馛. VJ7Y7fG]s .HIM !޿{4S\+?I&^{=°hҒBrr}٦?sSS6m) *N% ۷osBgV]]ԪU]9ݺvӛ5MHL`Bpi0.\٩G~h&w|mO/[˼y?e =?SkF]'N^xĉo| jG`~ۓ&6mׯ={?yӦx5( :SNF]'fÆ Mi;u8/3pk60%qۭw׳U-Z+7fe͚5+u벲ۓ&F]STTϞ3paNyo駛>_x^/`u֡+Q%;}IX>=h쏎˷2;@-I.y>zx'(ڧWlv o%z`6WЀG6zSdcA8)6cn)ωG/ƈ(q2@ZD2h5n \覘@Ezp,3w p?$j}-ˉK aˡ=$5XN`?[f࿸wUUU޵;k, 5vNqs~yeffGW"|3u ́N}w]~Шxw~ƍH8!$662aĊCٷ_7$P?m}ޭL UUUII ߟh21)ɭ. ztѩS?4QFH]sA5k֬w>k֬`CM4 >GÇwGnҤI댌]99KMMesk׮ܹs^:u<[6qZ+:vxۭ⑑C6lؑ#vڭ]v3i$3ۈ/YYsߠAb?w-W ˞F'ą 0HOz!(^U4`fa͘.i6+4ĨZb JLnPz0Elgt QI3Q^5p6^=$vލ6QԵepخFvؔ{B#ӭMB8_\k˖ ^ʟSlfl L= c[CP?Vfjl*E*ȕQnqs8`X IDATQf:!1Q11y'2*z8W Ԯ5 Lƍ\uÆ OIM- Cvzǘ;rH_HhvyvOj{A(-GছnJHHPn vʕV8hP||11Cfŋ;駟ٳ#G!v]YU6_z"sfeee`Y|yoS0 UWˊMxo E>m^NA2K$#j[6$Cǭ^t3@5uĭɦ~(*ѬG@8M8mF`ecϜK?Cކe o}`9)z񒓟g70|~\,)ܼkl%lT5Ye4!¸(zP!@OĨ*ssO2)ge\T@TX J-XnIVQ}T -\ ^KqVww̽S!_~2ԪKw ], ܥG~)!ϲO\A1z9ɠ!%&kEZ,Ԏ9T9t8u6I-y|ͫMEd5$ģcQX3oeeeddd}n8k&La=[ʊJLJ߿. 111.Y$77 `tTtvm 8#%%2XVV#Eri^5a'l-E+@H#!9vnTNɨһ*U .]3 +* Rұ l#RY˔7$D@{!ʼn|P( +Qe>6HaIH hXt  u0$ p%@Pͅ26KLƥ@6fVNmsT ju7r Ylʺ9&:.mKѣG7nވiO˃`y\\X%%UUU>mAI} axciիMIJ*@t."X }%=h̊NBr*;땇'eYNу bV@?Q`LiGRLuzUã 疋wqAP#;CDžNē~hkvnuQ B izi]֋>uH$-IZZ-dIHHLHH$Ueee~74g$2K$s֐`EQPf+/ʖaK3,$pJYԃ0!]'Φ4scS&,UNfxH(8{F8Fr:7֭3A/t| r-/aO4caLEُ9E@2wC 'bB G`j}s@N:;c^_IL*pf́(NGP#뗜FP'9CC^ER<~laX`{Mi1a XɅ( nM BzN%zO A 9RBsa J_58#95^o{rz$-%co!"KOݬ5xl H9W.nȪܦS" +i CBcaDG>^[!P 2L=,u,Xp܈ ,3*P$p$AMnGYBY_?j4O)K^r@2@[v"̯1 ziTL(-GDDB!ʫ^T?G) BRm}΍W-խȨHv?V3R Ôj⋛"O&Ucُ( rNV-Y OssS&'KnKݏ-2r˶ Ga 9[9jzZ7qA[4ך.b\⪵6b~VRk(QI[a6hxJ$N$ wW5\/"޲ӕO`)2 CҙzbDȨyP[Rfs,/F)[>D,|&<kt,c%!`n)]3+٧;]ArQ浇O܎ UTN9mBJ:˃W6oaA=ԥZk9EGTn>R9dYA5:SY"ʙ ;V^օJ{bNˊ`!H H:Iio=3Ǩ >rŒШo`g`a`Ch'Mfo1'eST*-2=ۘl}Tq0 IE9G d&0!s V5K OҰqA5r 2aͤe Æ^VmVg) 3T O ̧*:Ba3w)Nmpx%rÁ?#b7 ²ǟT{i8=3]InMHkGVYw؉l ñ {AQ)'b~O50&xi|&/-͙N~WQ$ Dj fI+,N\T8S9]SZ8[[`O=K0F;QَncCBL˘aQ Ds9*nDf2j„\/RH@z\=|BxgEʡYB ܬCº3b(mJ Z0gDwIB̐FE]{6Q~D$jvDω 닭h0o^߮9t uFBnӒ1@<& h( G^Q3>Sl[%Ӊ}A 9_3l" JbdR(F ;HAg R~sHAX.(o12a k`&&kq|JS5:9%!b*JPY)Oʍ!G$ TH^DImDn$E`g`, N` $|h"_׉ْ3EUSm'DexTZrrkC8AӦ+]x!K\G2fQج#On`wH#7ηݏ .Q(H3We6n4ūQRLK8!3*7JWqX%`Ή;uNrp([6n憽@R%J K {*DxQ#fJP b³%9X%Zq`@K'4 V݉[UrM0ہ2X@&b:d"00م Bw8cyE_h+Iw"S\R^M Z` qM^ZWaR4iۻׂuTQ"L *:T󌦄Bz8U%qP"b+ev[`Y ̥mq39r, j^a.) ͚%/k)@)P-0Ϫ-r(حDnT95N0M1ѦS¦or1sry#Gk!'GQĺpU3؏0yյpX A- ~璎0<7ت@6"lWMSS<ՇRQ'HIU*c;DHt:kEY8.+ūxa}ٹНPCVިi8)g>ݱFEX(@& M{6U⬇7{8$&)GHp`7l>"DˑQ0צf0[xm8͐Neht@X'CRnʕ,-QnًYp8ɛ9 Ƒ8`!xTʪрIG(!fTtx^ǖ"~bf(DA1>O3' 5b{x,j3h^YBj+L{XW6ktf ɰ'!M90+#`̫ΙÓ m%9xF:&03JQTʍ*s%+̋3`Ŗ`R ْ,ύ- *2P ѧE0쇮VwG&?#R !3b'xt7!'#ޕ C:U8!⛐Tm_ i?8[2gwl<7ѲɳhL], hUΏ/ 6'C"!$rv ]TIUvE]xN|KdTwJo/c?BO]{!g]c;˄tf** nF+-S  }jio?) [J"̌֔9!?] 43U@0E'aJbJuei")\H_W\K #NW΄G~,ubG΃*ID^HD*n(#NbHݱ )䔲ef<<6Yc65"Pa+P~n&쿅fiJRȞҌ'Y`8Auܸ/d!S%JD\7gr/DP2o63q+%d: >(" p:Z鈠Inc N Mz 1AMrBCR]ceHåp9gٿ-s?8- .-i)N|s| O3\J´5  x̐0&MqRvѲZ7EPΙ.\xR%(!I|ŏ+KN))H]3*R:BktaT=M.͠3 ;W # P16sp?:ia>wu[$75&IXJ8] Nߜtt*ꑍVwF({q^.@vRgT!s1e/< r\d8XnjXUqÌߨi)93%`*N=t́EwXqAWH-?Ngj{ˎ]b^(;a@X{Ԝw Be˓[- mbŷ’Hf[I(5&M`xd+dl+JL{nde35 m=C϶RHKH!_aO:3 :2c$x}ϻ5o*uh[@ĥRs` 5@)cTŏ+ynCo%^n=;b(EТRdrLM? `$,~6L;7Dߩ( |"I{aAk`mY IkPBI<+8'\zek5fx͒Ms1?hGA)\Pi\:]`tK oS=Df8 8*C_`p=l+SF:bE=GW"Ȕf.zk')bXACHXx{P Ŝb1 IpLo}j H,Rϼ̐* Kȍ)`C(W8J0hKhw]N4UpMDPr~VN=*"e8JAD å‚Nۛڱ '`%ٕ'ZQ}$w0 +')6l4YJ.%ES% MP|!a Gm5eQR-KrKå!N1BĨPf'\H-:0αCX,}HKtyFb»(X…7dج(ExV!'D%Jm.k/i);GM*p9)-/gIrb*&jh k M]a/m IDAT*R%,~ͯKK ͲBYN8T&<R@Nq YԈ$WUIT·i={61 g9NʔMnhVkc7)S&LklMH&f _t%%%9v].//K8MF.aԔ⒴ƍ@~~~aQm[WZ:g@h,''Qjʕ+/9rO>һO.]@0ܹsg1!1q蟆FEE_Rl38tEڷm7p PM#,8dY_3`Ad.sZ])0\O#o tG\qCu_53vA|=Q~RG y$(07)n953~';#L4͓4+k+/$\WTT\˗-7dee~/h©ӦoOz{劕v/P\R+ ߿'7n\vvvUU7⒒qW_@~~>OVUVOzIشitͪFZzUy_̆j*nZg:qkn\*#nDZ,aTAՔ2vp+A8PIgY^ +0:*|M@i!Yw tAg?ia;jE}/~ ޞ{饗]r7|KFjАsٽ{~פIsfGGE8sqK/L6=55o~?\=jԫzǝw9rdĈv4o|钥fC5Lp 7GO.ة)7< ![9VyIy`Kt wX~T"JjQƻBy}zUkLf.( v#=|> KtN7$}ihm *Y[lۯx%׬Ysgv\1}v 6ܸaCw랚@{am$]v9r5J5ۛ7w_|\s͐!CD;w7k$ ؾͻ=w ffs1@),m$ϚsWZսgGix= ¼EV.KJx$$I4KAt[*ގa.YPl}q]QV ӉqJ. B+nyy;KYTe ,FXy)eW[~J0CL/OG@f}-gVOl,-Bp@բupACN:bK\0shh4hSeey*벲bhlvۇ}x7a~#FYmw,QPduUYߏ3 *"d,[_رc:A-X `FO/Gx1ޒ_\۴da߄ (w+LN+5 ?ýWG,#P1Ӥ 9 [".-MTAIV'7A8!"&,[4 Jqb`Fz۷ zkRRRlfϙ=wգvfxo{9б_Ͻ96m$֝o:wr-7mvuXʂAvwA_ڮm۵ֽU%&&>㣮5`QQa\ 7YiJ$ ^FW\*re6O)0{'U/ԮTH+棠QY"1ǔ;s+…0lAm)|SrDFhhgEڵ{;ƌdPCUUU)kSRrr۶mqJKJO;4׿W,pΝm22| PvvGtQXQю;3224i~ÆV-[N0S_>!89""{_?)n|bz@Lሠݰk:6껏ބI}FUYjdC]g FDCswoVmƼSf'R{o!MNN߯_n}}T4=)$L٣G]8Y00?.3֩ͱ Y*eyY*c.z =H ?r gPre#§)c ֈ;zpU5xצ‰MҲ &v5p{xgs= JLewߙr;tPQ]U,AaOߧ:dtntsD9eUc .λ^M59 5qcĴaMstyž*.44hдICĆLDzIvڏdu/j {&|èW/()S3S?lQk-ކ*.Ώs2bH޷ 5M_(荚:<,UP#]B<6ש-J|hk)F3S{jhhxYw5EH .N`qIW?od'O STB{>6jTfgx 1zWyDxDYGA'`]p8)дIC㷇='Ԍy?(})F:bKayǟ\ZKCC㔅M8qصvOIW+~wkMCCwM444Nghʢq8hhhhhhhh6Mt2t\ECCCCCCC7\~ݥޤmM44444444|A& _дICCCCCCC4mM44444444|!~c #h/hڤ : UtICCCCCCCXIǙ44444444d8IG44444444|A& _дICCCCCCC4mM44444444|A& _дICCCCCCC_p*'K SNCCCCCCCh>А96ihhhhhhh)_ PWG44444444|A& _дICCCCCCC4m&M?cG̶**##"V^ݲe, {׆=g 7~ȳ|ݫW-S" )w>a2hhhh `Ν+WMiƌͷַls6o?l?س>[UYg=̳yJ5ky|0'''w׮zʭ]v}]99^sMII)M~c%###c_uҤI?oѷo_۸1koV###uNԉVd ,:_F =r?߿ d7jh۶mG3wĉRRR&O|UWUUU?P^^ޒ%K?9s='zjȑ`2ƍ׻OĄ5מwy~W s ̴x'.XS˗-[dɤI3~QFϜ9cɧ~zΝ?+[nSN};6}iӧwyK.K,^G8hP|B|f6lmNԉ>mF@6LGY~}z_ ~BnUUk=c־:wՉ:Q'2z۶nݧy}eҥK׭[נAЮ] fmx_v힚 ={0[IKKk۶mnnn߾}5xw^fM}nݺ5ӻyk˖`O?m_ itSXyWִizZZNQsgN>}ѧ~ 9Z'S$ѧѨ)H]>fą𜦌^|iѢM6%yu_WJJ UC;?|Ƭ&LxTXf[oԩ/RƣG`0X\\}w&yC k)߿aÆ6{sfW_}C=TV|'>Kλrw-\gSRsf~oǃ7cƌ;v^wm۴;]8pɒ%=O3e˖-Ǐ1cP(a+WO?a`0Cϙo٦| y+:l 4gШ"Ef fٲefb-Zd̘1c,=&&sÆü 6=z5k ֭[:Աc-[6uիWP(4giӦmٲխ… `0E˿ N*WG7fcq]c_z弼}׮]x'/^y=wa3?wk PQQ1f%%%~ؼ裏&LΘ9cۓV˗/ߴiSλ6miӅ{?>l9s_{7N~grjW LELI%)?մf7=,_|ɺ ?Ӵi[c8PMx.ecܑU5r4 ͘> }Y)=W]iP/#qqqz6QݝO?1{ٳqY&< /?ZXh~ UWz˭?4::wyq%-zᇪ¦[a.[oi>֭[ =wߝtIjLTԸq 6l n[ne˖w{`#ZvMWs]r-[ ݻMvV?}vSȏLNN%7lРcǎa6Oof翢œl`׮]q=;v)cyz-M7n;zK2;MgEk֮9s7oYϊ;onΝ3 |GQQѯwy݊o߾-:&(Viuuu:++[nPRRk^ؿ_~! 9ƍ]RSRV^=bcg۷o[f]- zrS2kA'Ap JqFFX򬬬i7j*,<ʺcNJ/^tX68 31lIIɲ`WVVYMF20RJ>AolԨ)N aСf=L=zzV s6C-Z811͢ =RثWΝ;1u%%%2Z>3/^3lٲRp2f/'qVZ@n]M93s\\\pւ҃ w3"bVVVii#GZF@5Ow5N?[TauQ 3Sѱc .޿?kN֭[ ee9cbcMjA);T |8#^kO?b4n6nI~m޼I8t{͝uv=wB 22"`M4yW,x𛯿)--}G?p0?'x*>g{Ͽ,5cƌŋ{T;l谕+W IDATF7lK/@ xo3aNLH|ܹ~4.KII9åKͽ<G}mX^o߾®w{ŵ6ݥ,e,4ib,b5^{AͧWESF&1ivUiQAlT ,;{m Ыg9s/Y]hϯ:p@\nt]HKO~kc> %%aCU5rʾnoo_bERRR}}ʕ+_|ѣFw"""șgϝ{8Ei<"QGВ%)))m#GWأ䝻vU9zԩ/tI1M$E}fgJ *n4n7Jdǃil".9GqEݡt:/_rAOWZy->#?$k]'Nhhotي"Q5SR1qqnnn/]ab ),,(ܧƏKsP_.&D4x/~I喭ȷv⺊qVԄJƪ`;dO=KVff`fC h5 wtt}}}5899999@uu9s.܊J">xX 4- ` gMMM}ݻLXB,߼WgΪ)̼Qv'.\dRCCѣGϛ;WzLĉ14f*xGH:bpk+WlݺS\v][AffaaI$YbEys%8i//kP(bI׽@(Fc;?W+W()-K>8ΙLiSS3AAU*~Mr߇ B~dwqUݪ\R*w(UjC8A^#>/?st:M]*"X|w aH.*rrsDO>KK+I 07/)-4h|''7СCY׮__l٥Kd9oM`;,Ҧ}}'O~tL)00[T4n8rɲQQN:̔|I hi)Mx1bҥ#G?b57XZZ9t]Ep,ѱDOYY|a]l̞w9NQQ.;99gfdyxx)3|q]x4%5<>O|U<=}[)TJlF7HUl"t<"(v"8i,,,ɣ  <==A}}1 `06 DB(ma++&}UMfQ7n' 6lȶb{zz+@w Fi'J?)AO133ʒf*~Ū&R p_QNұX,nU\Rv(ōUlp{fVaZzە6Q<0)IOWˋmmdIw SNOL|N G,oݾ~444zEt WW>G晛=Ԑ?I'O|O*̘>]}=~+&fddYZSSۧaC2mrjV"̚ۊ ?|9xv2633knj.77W@jjz '7EF]4//xDB\ Oҳٖ Ǝ;.^XUUEL~grlLlzFxrrrƎ7}Eb+ p8dyyU&mfI_믊 ϷLF0XTQ*6,BqEݡQq"]۷lCccͥ~4I㐻gT-eeiN`_xnU):QXRڃTߧ۪ZiJC%_T-&;0tWLl\XLDĒۢjR ^.N/7VWt$@˵O&=I遁7][h1ܹs'N733]pU32Ҏ?m9ٓ&MΉqX*j"}F`ggjvwwţFR ,Y|aggk׮_$(((Y[[;`#GP^a;vr'O&&D5a⺣F7H}efo޴YMXZZndžFߞ7nڏbQiiْқʮ nnnk׬qptpҶl٢ݔ+4ɓ'-aqΜ>-o ^N(lknnpR0b``mmn:;Ag-UlL^OnRаݻ?Ҧ^)[(+WQ%DCŊBPQq7&zH… ?HJ[xGl6m޿?¢?c L&sy#G455}AvvTgN>ɱ;xPA^/3/^dbyJZGQ!g}TH+4/5L: O" Z.['55uC?/Z{Q 6ɱBi*U"QGvvt@>MYn]hjj*,,#h)T }ll…۶mV4xEEvv,+##Ɔ>J HàQKvsؼ<ۥ(-P8rynnjY#?ݮZ~d7RՉqNkOhnn;e:Mqwv1$In^D,~7U1x8KKKjJBqcU} X3ѧϜqڄ+ UJ~4Ml_Wr /jT/O~ݮz億o/\ۑ/lI>B/6C䘷>|+5^h|U6z}vf׸kξںhSgg+ B>445Ѧ?!BiB!%6!BQiB!%6!BQBM߹än *Zb짾JzFWΪ_aRw]TUcfVIW޾i~YeuuVM4is͉l>%\ZY>z&P~ sG<OZ'p '#ɦMͿml+vnNUih/))QUBakW-HRSS.\jʅ  m[mI՗&mlsˌӧNY‚,K,Z{ sS5 sŻvR7dߪx2fF!40zLڄ;'N۷o766z@[[[QQ{wܩ3b;5CuwwEc|~II)8kmmnG333Ĩ27733#wRS9پjT~V=hxxxϱqsu 6N|BsKYNU+V__ўʱ&פJ; Z[[oݺovAA/TUV޻FM? Ŧ&&NT5۷o0;r!Dz;{;ooB^%]ѣmhޛ9s>HVnn遢NQNnaawmUEB< O;ۙGtСNʕˇu^ݹc QS]':y=$$diҒ+W: $88?[w!7ѣ_Ri*,@|rNjjEyMAs-_Q[SS.^"-M1vrU}E\r0>?ҨG+K8i‚aaݧj2eaz&N554T>cF''?~;SennފN8SL26=7O5s?嗧O1}&._ =wn:~F޹cnj3@ 0F^c~:OH+++olhoh4Z) -3gYKmm,,=`ie /_9~ɜ4˖-6nDk׮MJz( ;`̜1ùs5Rk^VM;-pH$o^N]l)ݻO U566~7:::3g̜7oނ󍌌Tig]vnРݻw+W~'HKxyzY\]ȇ,)9n_b(55_=kjb;w߾}zϙs˖CuI99::9::{l]]]U͡O:u XL> !͑zvf߾W^]zС^ .R52hix< K: APTX4lprIOPXfff  kkkrCGB@nn@(rHIX,t(YZZZX,UU#G)tY}RX,|b277_zys:{nGp}"/^T9B֛kLLLfϞ`|qqQdt&dffWt USUt WWy7ol-:::֥D"P(liiK+sgnذǟ~Z0>LiS.(鐹S[[[}}X,ggoo,@jժo9oLU(?SFW@EE]?+ʕ+lش)d>]4AJ8rBX%|_$ijY[[7=۲e˻CB.;;@x5;Ţ_LRB'*mW|BH$x6mdl>C\\\bqxxb-t:LHz H "22R$ Ǝ*}`ggnq1*4r+@55+!; .?gٲƏ͕4ȿ3zJ(r/JLܼuV-MMPHJeVee%YfS=Bh7b];wҟR:SBU~~~Cc-^`m #G\pszzJkqtriׯ744}[cc,]jnn>%+p^^DHrK)UAbwwḾQB!445 *&=K^7nHtkR56bݼ;vlڴIOOg͚5mڴ>_@!Si#\&5W[[aF;)U踹fff^^/-)}wL~5B+( %?w6!BД95B!zXċ!B##M!B'LB!( !BޤMO9BjB Ջ^n=>x@x8223ϝ?~#X,SVVgd !DJׄG^T[W),^1bqzF:%kV 99+jnnrilh()-^fO['M˜\\2L6GCH$o\wrtH$ϡC&$&z rww".meu;6ɜD---hnn #F(q;6YYA,Y|>Cu[{[-ѣGɮeblH_I}s̛䜖;-MNNF3-H1~ʱ6HO'")9'.Y>IDATӫqJ$gOR,*+=x@ƏonnރE!z$&]lYMM-[bLl\]/.)[ gWc& ;vZ{PSSr!Q_~=x4xK,y(I`3t"Q5knߺwyU%iii-)-=qV%''ׯ^&;ǥ\cFFw#/E3}>q gd9z?qѣGx.[~bJ{cO]yRYy`]?p@U9%%W-..Z{8gDgGƏglbg-X,{v7`ꕫM608g3A0ᛯhSLYxٳW_}Ȑ}`7hЉS=ZZ0j];wΘ1c9gϞ[l.]2:&_{err`rJtlǘLInݲqFHf͚$PxQcs[xX,:eҥfݻO|U563f|G722iΝ;ԗ_Z+WX,Vnnr<=Xf588=%W8ggW=K---kjkso:59y򔫛3q1S giDO 0A@!otɩFMEaÇ==<BaCCiv|_YN[K^NzYuuO= Inrtp())6lرc#""JSSS=<=):::dboOPiJ󋌈Xbȑ#'M$K8p&(ԯh^kV:e {&G$XZX44*+*݇|'&&*B/KE Ηqڹk׏?а0OO9@e%KEGEI:w\HvH$'M?LK3‚А̬Ǐ;wRSSϜ9sܹÇ/^BaK 0Ϟjƍ'[[*+'O{/*.Z, V\V\Zp'4$JJ>r䈴[ 6 ou۽7J)S~}{)"u{]۴u+6{?9z :4/?nS|0%b" wD"$'l#cu{]Dy0Y! w$ D^t)ؖ #x*?~<"'%jk]\\rsrǎ8=psqq1*󫪪e~F SZΥ/?ҥKǏۋBH.])&^fCGh"ggm۷Zrz`_d9珢q]`o^G'G:~#CC-]ܜ-)nIW4xf}v#_726|C[+;quwx:͛70ƾn6a[ssnfV'Cኁ5aAq8i7nE>h[J;vܺu\HYVV$(H}"uNҽ.(X\XXV^^nlbbjP^m嵵u΃"H$yyb!Cު[\kltuuUsmHԑkhd`/;}mۼEz ?o vvX,VFf yQ+}޽۷ZZX(E kjk+<6X,[@ֻX!$E^{̙M97n$'DFFXd2`5"P?MNZ6Hv "+g6!8;;oڰq+ B<ڄB!D M!B`ڄB!D M!Bh 'B!|GB!( !BLB!( !BLB!(ypKB!̑<ڄB!DM!B`ڄB!D M!B`ڄB!D M!B`ڄB!D M!BtovB!H6G£M!B`ڄB!D M!B|B!TɑhB!%6!BQiB!%6!BQiB!%/BWAtVii3@k-6!B ~u Et L[keՂiB!Zgd?yV‹_M`7 cG~&Bǯ~|S?L h4+/dEćQxt &BUGʊ{4ݻdDS1'ǼUq5ii9aڄB:ʪ;> _Skl8nۦ>~.LfuJBD& "u}SIH>)&Q{hkn[5mB!^@zW47H9<trH ml 7~!B/}P|?|{D,Qd\lҠI'͞5ԉm6 5%ȑ#rZ9mB!^7O1>0[nƦyx1Fqɯ ڵ׷ɓ/5O0mB!^#P=T/j5{J47|EӪzySrbUUUG]]]Ͷ>ٹ~cjjbggsqv?adfeYZXX,nh ,#B!4 (mʺ\q)6nmrNcG #&lm0M2{EL}okᮮ.9,qq0cc㎎9sf'=|  }7ͿΞ\رDfW ~S@iiUvvroWUV.y 300ެumS,_OO$ݼys۶݆=icڄBV?*S/x4Vni5G$Ch.m/ґz3k(== w]]]ѣGzzz:I~@83LNjjMMPo33Ӂ8 HױSBZ,a>GLiP2AB`syRܰv'hyA(D}r^/Q@`x&l|1ۤG ]QiHa&$\#AI@JAPNsd Q#jdF | D5|'LJmq%i0JlTΌfREu2uW n,dA)4W,Q&G@j2͖T7wڹ~0R ׎퉂}|U""H׭9:Āܥّ{Qq>c2n[ Z,M0Z$RzKvMTݘ·D@a'"8e`G#.X˔>Jq\( i  DC.!툝+i uladֳd0˗'P\%Y\rr4XTW Y3)6EXH1Dd@xVuzΤ+W JtI:ґ! ץ(HNc{Ty ʝ_j*)R(i! aFtPxV uI DAQ9YM8Jja;tV:8UqL4"nݚ!':U JԙCH Zvű,q?t?39٧tlqlXMyldT{JvQ,[5.iHI%9a%N+"饤 )ԣOщ ^]2[DCݩYSA I]LdH9{iw [@SQԪO:A<8KI8eȘPrD,8KFY",e)JlN]i֑2r%;dJȂc5 {IR",V I irǠnZtC r(Hd+Ǒ_`V?8vwtd ֭=S5]f:4q4[X 9GV1YV% 'rM UG9/B+ * 𘘬M9r"WNpLq?_OX3 e#)J*5S7.r%N$BI=adr*9 `B@w74)YTRxMe F+3Y?b9sx)@m0Y K㉳`4NW0_fcXGN/fݩEfCR!RDrVdNˎeiVw V$$HH=gMYȄW)9Ⱥ%0dpqt8fbf`$[~bhؿW_ Ɇf; Hs i$lqC7, 0dQ:. Tl+=yx_^6!ު*f22D U@ΣVet<"\'V6̈<ɔd5(YУX*|:1@HQ %Tfh[۶a,og{,j17ZtOиxΙ@ 0Jo.'VhD m;H'%H%LW ؼ:W09 e!\E&ܵ@59]EW."E6J6%2Eb c$4$Mj*i_`dv,B%R<>/]xV hɼ$)Sk$Kؾ`PHWktԉEDZRӻ%g2_ɗoCg-/ގxMǽa$JB|yH SiWds"#.ɘI\A.f/>}LHJxa(L Bkcs>/[r^۷r{nh ;x??_tI3VkOB3kx >|x'BibՃhہFVs"]ډ KBYT1D b@Z##oM'7_<.ģ^,xX\2C8&ξQ YkPTVJhNt_NΝ) f ?}9E&-`{8:pcN2 1-rND hϐ&-"tu3|. HU1/5]lH%UO(xE@Ҩ+]c!I(v @$dEPT )8xtImRPBUIRzD r5R'}5Ex)QT-j8GxH1 d.:05fjJ]!|9,Zn#|ɮ2Yvr,ʺxr禧7?p|GÖe3Dt*+C:?Ide{ز* ˪{|!By-[Z4TOUY!fÿ|{FzC&?ݯ~y_2oOkXS?uW"8"cGnˌ͎/9bubun6G>{M3?r^>3[t#!64Q~j؞cyI3Z/\x +'K|ޣ#Et^0 }^8:Rz|눌^nOGJeӚWK4&ù䶱w#{hYDyαrb}z󅫛{apO_3Wl>0 K/s/**xrC^aBV OxV76$BŲ30^Ր_qf˒x8Ć'+O}Xb!ۗOK/9`:%+ڏoݼumD@!x|`փ{^ܵ#埿^.}ϙ-c6NP(JH$ Z0r%Wzm=deXl!7+TP8QwBId GG W}]&.Cte7B:@P^,И:}x]Ĵ珑kAb?*cntŐ:ZÑWx PȨ#r*8%lk\|fb?}M;gp 3LŒPȑ־FaO5-_ =6eLJ2r~u6F[R2@$dT<[/UѲecG76^֖T82nl>W3%9nzr {&\[.5f;d/LL6Ock^uNx m\O\6s3%37LՅ>"G/yޡG.lL0Q>$꣓W'D_\ՖvPPszb|\EtvfyӒ4Rq-al88u2)b-wh!H\Ԃqp"qZDPڋ!cI(@Ȣ4 :Z?jG0>nnnW2 PHa(;EGqmyiu=&T~㯇瓟c~03rx}Ml1E?$yUhA;whGe(-0*?7 3=qHR c$w=il?rV-H>ed$l>0)$vLo?T1>֐m5A0}GslF˨kphcX ˻/:@hGņ##鄹Xt"ܮ_K^3p~"=mub~"5:yùU g,IGƆW4>q0~!D||]YN`Q/,%l<4[Drl0lg$T81C6"˔`q*Lw|$%r1@Āvv~@-8 (F@MX$ot'VƎT9 LSzVS XvA!f Z%sѕme//aÙ7看2@A8{'_^r'U?a9n tBf<7&1zW?0f_0 fP͏=-Fecvn;*%.r1:q;MyC,^^ՙ^`,"9e kE#X<;mQ}S"|Jwx?P>{n8Y;%{{oʳZl4$,9TWS,1MB@߷x !cɘْ@,bkK GGlywPO&.HyBYRu!tMӥkR0-q\.Gd+X} iD #^"/b;yڋ[tkK>}meM5fZPoP،Dr`[f+՜L.dj^;i:$">ZHeX8`a[lˡ,WN$0)?}ڵ=տkuc{C3]Gr\muK:asR/ g✓W{@O[lxS0>vڶzpHxh+"!ȫ FC8(ﱖʍwn5կ]raKlۡ g&rl (2C("fju`*a5 9&%$ RQ9ȍf  щE wM>d Jclin/öʡp6nQA0@C9ud|%qMٿ%o@IE'Y(U[ּx303A4 ] κ|\x_SA3ZPO6wAǪon%171KCU)F&f-ʥڥ%1,_569{s;W66$#JWSt"o=0_|mbՂқL/9s7+3=a^sS 5O}XNYX&0ћ?:Ec:V: IDATyw/ @X&Vv'Z޴?;R &;+q%]٢}Tl>SvOV!SZƺ[Zt`Pض+;嬵+Rgi2o=i8hepgov|MRiL*D~6sUcƖTdQG6[˖ntwkݼX΋Wg'4YTol"WiMGsC/2O3`PsN:Va!m*=)J2!i;# R!ѨTB*j_5CvT8M#ŚZ]>U B5P6U`VSן!'Z'UV$+I8{^)OF"gT$8 '$IoG[!-YQPVs L[' Ecdc]LŅOezwu/YɏL=:>D@#^" m\{^y줳54z"Q1tSRʏL"UҰV7C}LMuasٗ4jZw_o|ǥ|UW#Exm߱TKc"ݚll%RX<Ob%3g[V5pwXՈ.:ipPd*K;+'Fc[Gm4CK;,7ȌL/Tz]nKG5E_(8mtYn9T.\48Qz({hpβL OZK:Kf+`x$d W7.#/Δɉ[ȝ2Zb.t"b^r͢SBO>cIJWRҎxO[ّLUCYXSߚ9V85&B: lʋ:NN2ģS;F-Ʋ%HOn5MUCaבlFpLx/pc]Rp g<Eȗ-zZ׆B@|G*]JV%=uVT@y byDdnZ@]KׇixX+QKxP!@tMu:$4~'+3) $*]765)Œ, U$ZOQU[fT#f9p:KC7@bbxNtDO%P$au0XskG]KGS^yDؠTۗ?H<-:EE>~VTnx#4CYDTBR% zfP ! ~##3@ IXG*pa$rb+/[f256p(EA;1 viz #M4fF m.‰2 qrEghs)A0B:&3YqQQ" >'Tȃ/2̂LbdcSצ[}W_ooD}^֝/T=14PRt+9)7k4U_:2Rriptl 4GL0)O<>B<};aN$.[!!d%xuѮ6 W RlL.q"e B-r "L3 "[>.o-F:~m(` (`/2!_@#` /*YNe[8r ATIZ1fToT^qG ]Y  [;qR\d]vH"TJe*b@`y5_һ 3)'WLK㼋҆pH VNQ]_JG'MIɋJDlk%]\䠓 핞^*#UtQՃb_&QiL"]9|IY=A3Y=xMX{/ q~Ak+&mYm&^})8K櫵1o)ri` @;>&CЖK+DW订Oi;L I8'õ~~ՠΕP9%? ܵETC() WIx-,xdٟO@)0ApߝNk$fK.&KGJ&VH g==&]duUPYFAUNsP~z:+!WytfUfW5i *Wj=K49BD=fԎGjA*7{b3qZKdʹ?;֡O>YDT~L Vw_rӚx#|ڷ؛t6UP85r3G,g~:Ύ#,ΰj9>SN2 Kw=Ug AWG<b:ou!8A?]0&淈7X` w}_^nq-YnS. T*6URի\Rrin>q%jGe6gO\RgI)4뛡v! ey0_x8-0z;4D@'7s KԐUymJ›MdZ7ij{@H5kOs6Hh~ of|fZ\.J ͵R|tJ)30s+30-PQ\Q0}OE)4̮me.2+%R΁T{}a*o5ȧӬo;z?.tQ*'1:/9B$5oN"U4=Z+h !Rp>营IJ]&Ч츙Q?kv2jrw9A /&2t6lKi旀XnMIug}0F AsR+ {k]OH4Ah_^4է\{\~qMhg:HI,ƘM-TZݼ*BSsz^5-e{j Bӯs8_R'p*e U٘&e: Gdخ(sF) VF~+(zuAw%5/W!\MgJ()M $g9em6g`>cp*IL5z>xҝ@T賖UsD$壧YR@uK2cх쑪X5^N[Vo6Gߜ--=:zS&oH?|^8{r oUC|5b%P&ݪ_Oگ=tA@UQTWhy/wIbndOHy\ȭ~o= A17?yZՁ ܆[dARA@3:2K\8n{˧_j{AE~;_DMk:*vxF7^S H9 0;S/$8(ũxI]?]gSJN^LNDkZ%H&kPr2p#L^pۋ' MI rAgk؝d>4iM=oU8Vn.guosnq-zQ :n}(kwϙ~!dۃbP9::4ZW Kz)HJ QwX$Jݣkz[ _l`Vg$ ;J@ M~SuV!vfSG0ͮ:yMDǕ{4*hݸᤇu 1 oykݓH9A>#' P?#=R9 B+o5;.v7*>Mܺ2#RYsڪ-flϗ/q,Df*5q4mzY4ɉ*9[y'}?e7U5#ɍjՀ\cL/I߳?vR/ߑ<$,v婀BM,t-'Z0/#<%8$K!4Ul`u`C,zK"{d$(Ϝqpδ7MstGg ‘H86 q۶4MRTe˲ߓܦeH^,C))+2!'NG_uxP_$]y`/'U320 __h֮kԩ({Y :&uOW"J> Ga0z+D:;=6;]|g-,=ɁĠ6Ei&c!ONrhOugD:\yd6)Uӟc Awt,1}fÝ?Q4[ZZJؘeYT*eDMMMC{n/xgP(wN(T ^I* g>3s+Vlʃ9|vŊ,xy"Wdt矿npЎ[nyvgzz^w]v.n/ y-Ądwvy/<կ*f{zG= wvX6qKz3==;?Owujh]@ƤO*CLӛ+zH< rU/swq:6@/= $Z5#_^%Mk3mư]X*JGmېnl.ʎePoDb4>>1obȃ[>Gfflժ8w3*{_m2#rr`mmC߿cU`g&)C:}'z徾+q}' 76V6k}}W^ik;v?֯oG~O;o|#cr˕WFO=\S:zn|o_ypnb1q>_D?T.nNSbAtr^[o8HkGOod~۵uo~p7(gO=uM\[>v.8k;x$hr[Z̶;kz07l9SmEoׇ~rۮ?o\qnkׂiu⋇-@lZwiǍ7 :Xucr8sfЯӻO;Y5]#^vvO)L&-lཿ8hYe_zUNNfbɿ~UB x}ݿbC{i>)3 tխƕ>|FN|{ =568嗿`Ǟ|FyEu{Tk ݁Zd'cLJ[Brๆ@@H3B "εj1r3Ap!Hi[%sum3OL Sހ>wp! 5o?8co+saA'm46I/-_GR@KK.lܸb'ⱣXB 18Lyc,D(OQ3Z[&W{itV+NT_!7 fYݯޓ7Cf>/;5VKOy4s=c"Keoֶk _ ̼Lr=DsVzzDbw7}偁xp ۿ,{)kt8c|ױ 3[G83Oկ׭1;=0Nr;ۿo[Bs]wI5rO7|0jU]OO(Z-Y2_LR/f88 h&+K;v0lЇ_P‘S'O뛉^Kd;nY}.)?kR HoCG@u%sSVzV:>qڹ<ƾ/u}Rrӗ'Ih2ݺydfbbK/WtC#6ofΩt3lnj3z,'=z~;R. ihۀLSla[07ufC-80ӟSRw 8hJ?jْ,߽_?aâ/~qޭX3YE6NeZ?s~O]!oG !L6 U5RWWw'6iTch?6;:lO`YߧGf~DŽYug>G?m08}ZVb̖-6閫:!:M~[=bqJKY<ѹó?ڬ;.D:;'_~p8|Ҳek?P( Nf&''&Ch\1"r70[ۖ.]'dڴZ492ڌus!\{Lp'k^ HvKK5ثN/>N:~e $[mc Ԝ6N@sݕ2G\#jx>!Nμ݆o6 sg i\kod{k6f3'6\{d>Nko`߁9uC_|Fo>>>>>>υNq.:{\GnYeuouF]4tVRaa0=6?Z(~3_?a\ksO]:B.?kYVTjohhh+|"@, 3T*]wZݯg7\ksm)3 Rٶ=ɬ^}c| a-ђd*ڹsG:2g烦i234WUڍ72>CvٲOS_5g؇?|ÅB]gNBϮB= Fs73d7FOe2.Ƕ mYs+ 8,$ޚn?"~Q7ϒT-21?64O~ժO|7_fcvYV{j4] <-j/>x}?wcg;+{wuLmkĊ->Rgfz_B0k+o4Sv>a~xWOI%[*;&/O*H@tIAE9)( yVOJaGX*MHfg{fv'3;/+ .SYbIWXZB3T֭q:ߗVW3&Tr .]in?+Wuܻ9sb/\~ʨ/'.]ilX0ap?V\\olbemWvDk5HA&r./mbjԓe.r,41C L<_:>*~`yz5^D,Xͱhfϧ/OKf&kܹ3ayY_GT<PBD@zQ,DN%K.&/ ()˨_?L!!V07F_0sPڂZСFYY W;7\^(,:u?έ^ZTx>jQ '?_R]8p `=.;wom@rs̨J:TU1LU t:Oo Ż7&&dGt/+*Zܷ.fN}rRWD$MLvzsEm-ŋoNjs9͞Ŵ?ŬhaWƆ 5JML %EK-Y2͛ΞkWj0]0L]iH y)rC".A.n=CZGQ1$&ҍ"r4QٶSџ>ݲţg.K:Ϙ PQ{{m%w_VRV9]cd'2('.])J ?SU<>@CBwzUxǓi͓'G8䤧##2 W ._@mr壕UWQeSQw~O}}x';U-&p9?t70PNM-:ɓ<ޮIl>3rz/%?ߎgfQUx@TE*wgc~+fX[|<_ݶYllȪU촤y@Qr>8n0+'OGU"Skl*Jԋjh` ǹ/mQahNãg)S&A@NLtp$6:j]ݻБ? ĄZu??gZ]ع9DGNJ*9ϴa,Yo` }SR m]u@y(ԩIl[AɇgΤkҒ 4W`RRׯFFҸ_ -=~<9=pЫ''\@|kllPH$c(:j6'N$ *722\{wر'O& [nP.]( 5l&w EܲdߧJJwWh( 1kSBzR'^,pW>ӣ1LXYbo~](px@R"qMdVp[_עށrRZڀ~a^a˗?)J::ԜEW B!~\!RLQb:;86VSVV:kRuu[>Ҕ7ϸq4\SGG"H= ȢED婭enߞ8ei]KQGߦHc*"sܻq㬷m{k_E|`/_bsg}LIIIIaaj{?98̊XhQbmJG4qRȻdr03@Zc"ȋ/. |mȑ!+RSK L ޽VܭR99ٳ猟05kזǬhQoLQڔ44`}>j-iv32Рi(\NNqVm}&VRUí"HD*Q CB459ݻ- IDAT`w"8uy{{߻qX@@YipbwҎ'0d<ĉeΚnl6kmnQQ V 'jh(̚()pt~^fs %`۶mJ_sxãDŽ 6'O?Ri2,-tk[[kJSV_c٧Ox\vCUU:7sfoǍk,7p`e)}fEcZ=2FQ*0W"&Ssh9i/K&U=PXA*$VK 1 GKHH066'C BL\ӗ=}:N_/_UE?y2iԨWEEqj^K˗\9A@]ݪNKgo-/OlhhZ …oC)kϞ -)JaFF^g?MVV҇ ;;ze]#G|gώ 4JeeiՃ9.eϜIUP }87)iٳj^JZ\tIDE1m(+ .322*z}bOVVqo_%6uAb\tx"쇔qTڵ4]}[tsz%׮$fErx{djbT`"FDd2LF,5!RP*˧ĴgML{)fuqdm2IMjLmÙӧG9lP??]YUͷLljqk֬rNoo.T]poeZ]]˗D⺎6ٹӓ,]z Gpa_++iӢTt=6_ xʟf66ԳU`*Yx(Rig|lBu6q!Sw H}֭[>ܣGWxxxiiKϟ;2fܸqM&Daޭ{DD"=zH&2HC8 {vzVHE^CC |HOG况Vc~ S-BpUJvW6@@Pݨpw6lxe>}>~) 3oյ8~OĬ<.%e6J^nZZy)t6?@hF=zm774L3v3xE__{{vvsUVxCCCm.]'xJ Itrrrh+~Qt6?p&o0K.@#d"$F.*"~,o1s&`Hl ~~u؜?Guҡ|8ap c[2jb/P]vN)J&ܯѵ:)LX}HXꪪh TU5\5~Q]3ybԯ`ܜ?JJJ,-;./nL^lmJaA໐ <I&Ze;O=yrv[2of:]CoK smĉ"Y6mia^^޶kΞ9xqTt޺??#lbfggbgk=lǏDw7WJΖfb' ?Žd}Z &f)sEKzW+(($'Q( h(ں) D)̙݉?^ҏ& J'^OOB\]]e*K&Im3=@$t"?~8,,f-uuu@dTTMb)555Q:3g|xȘFM{,!:x<^YYfln[|YE:RvuzZ6$dM6ݸp̙O:tÇgddhii\޷o_@ff͛޾}+O[>//mw?.$$ak׮ţ`P ̚5{F\rզM7mL6mgMM {{-?o_-qws}#XJ555v ؽ{+Wt᜹s]\\gϚ5ecm=6669L,0C[hQ͸Ғsx񢶦fpWWWطo2993f+ /yxx:{FUt;<(hȑcƌ,ecc#J&>g쁃|g>kkkL*ZGG7 0@lB):u7DU/7//+sw`2,JII,m.*l7 <==W\%QFi.~/YYYnر,00pUj?B%YY"JJzz:׶ ..wn޹c߅3gΘ1}ƙ=zpXyy)';C WdFD)JCC??é{~VViS  Fll̽ Æ.Xpᩩջw?{؊JJJ xɯ^%\Μ=^k^xhccSaF(\rؿ,ٱcҥ"##m5CL8xPOOƆ+ϙm`` //xsӦNѣsGڊ*EDOUß,4tQCKHHXן E̞5SLXxJa^CJ $5*LújhRaAILLtrAAc#j <ORꍍ6@QTTkVMB x_塀9`Aϟ??& !!FN8jiiy;>JO)H$ 1E7?@[`nnws挙 cY$ѣG߻_蕺J?}JwsszW7kDsJJ ƌ" s Q,--5DM$2 Sy(+݊6mk׻w{jdd]ɓ&9sSaAIIiUVV>xp͛}׬Y*|@aQ hlhrws; y">L)_ot*?> 'xR[[ܜ~q8]ߥ:g;wihh<}׷+Wߏ*.\kQ0E)t:EĪܥm׬v`>mmm1~oLR LduB !| [h! 4׏=]?^q̳ :%]GgNyݺIаQ -a= >tŶ(++?NnBӭ,>'NUQ Bƌٿ_;[%@ZwKIIQPT`2T.ԤյQbbӧHd ;;ہhb7"ߩڲ7.֭diЬD"Q uInn׮߸wԩS^&NaJu,͕D"f]_|d24|@L&-_BUU5::j)u3/ESVQia VTUi0C6oӨK5m7-mt6mDU:qr Nr&0Idp|-{{=[d/! ;{1>bxɢE ٺ::<G@?_>7n`ٳgÇDSׯ23ޫW{h;}effO9!^6z=n̎XbX[Y?1q^f =oXS5[lߩgC ^G?y|!++kٲVVqq71.;vLRviȘ1ߞtp8^~B |xW+r%ݽۻ3xV]:fhzi lvH$}7H-?9dp/3ӥ/("\Q{2oSL֖1bdn)).]@F?@*3uơHc@[j3}55:گ^Bd2_JjEB$Дz}}} E 5W5d޽kǎQ9׬8a|IIImmm`_2^ :T7"_%TWU'^|e۶=W3:xLHHvN}{WRRR=z8uwTJz3w.ZAA~B†^ĩӣGW\:\dgϞ^r'y_wյO\1S' MMsgfe9{nժ>ϙ9АO4##30i~Z L\|C޽{r>B̙sǏTqxBGSJJJLt\_?4Q.=zDݺM6mÇ߱s'JJA8N}}ۏ?|rb3Rp>|x޽؛7Ϟ=L3Guuu~~uxP_x!.~Q@Lψ?UeBl#Z7(-+ٳgz-leX" z™̎@~Ξ;aoggy&'ZXXGEG>tus c1E999gZhѴiϞ;as8޽A RR$ܸis|||Ș1˖-ܺuKF5{6u떺FhXLhRMaȃƄP(666qt:=4l1Ls玁)Sd9'/tXVT*uS /o>hȂ++kߥ%:QL<NOQ( :30id KYKa!.]=fB9=k^c >>W kPz/?58h˧OfΘ!'>>Ap8 KKf޶}m^WiA/ A߮~}DG1pAumELk!M v?f} Y^goߦ}EYC(ܸq}Ŋk׬ux?7>mZP7olٲy5o߼)+-? ޾}s@inݺ33SKKKYB 4hРA,k IDAT}s~njs8;;}J4fĖGKnj :eJn퇾3'KѣCCuMJFFKK\*^7{v9s'?z$xϬ Ri 'O٣={1[+rL?ЉtiZNs]3x`X%ōGxz _k?N~O>d2C 8<p %zz:|ҐoSwL"yyzDL<޽{ы5HyJ&&nЬL>X,&̟7wmw<}{//'=zkheEmۘLfEE]x:޽ԔHmjj%`Y^__ŋӳ,Ç/^=z#F4`]eeetTTcc#DczI<\.yyyhV327֭ۆ o\;O//Dɓ'`2DK6o">'?}455ϖ`IU)OiibT~>|pܹ{ywދ-֌ ~>)03H[YY_-`0>~z@`3>gxA?? kjjڳwO@@@T17EКH{h44_)kaܙv GۈP\YwmSV\!G[ц}|5ݻT@rrʆ 555_xxׯyg϶'СCW rG>}T6@$344&;&&]d#4Ͻ&Afuhk#+**{j6t;Ѐf/O}.3+'R{ U_W;p .lcksc໩o HK {3.Сr41Kr)`߉WufH2h`}}pSI6t;+QV^`4}@3555UUUǎ;v,VXoGf/!X=SVV))+q\yYE`@ H,'0014,G-49z߼@ NO36016(/+//'zQ;x@߷0%%] A D"8>3󋞮.['7QiCDC7L&gf~}@NS35+SPR޾UVVVTTjb11 Cd.[}}}<'ρ:yq%%ǎ;f\\cc;ڴ_cFc/BBB֊2y']ܭxiVw JI}'kA<LQ6nh /RVIAY'Gt:?ɓ"\6mkc#k6ۂg΄-^K"֭_OR(cGވj [~SQ7Pf3|+c٫V჎βe˝￱ nʹG>zp֭yyyjjj'N0qb 5qt譥JA033;wB& \k EWG~j-~?tuuxRdEI5{̙Z__U7H$FLZ7m袅EqXX͸[6l())vF{䉊pȨh5UU3Fkjb- [|OZڧI'88:-,%%;o75Qm I;f _6qxj@&B((**?fhV~а$ 2=sf֬h>ŋhbffiSz;;_˳?~\\)S&|ߺ%J‚kcǎ:<ӧDo )))Fxyz\sss̟矋KJJ,-YjjjvU@pԶc#G4 oٲ9005!!%lLUL1.3:x7(}F)v5gGޣFx [}82h๳g=yxx^MMMTdڵ455)і<<(<_eee.]Ѝ@ jb\.@ӁsfϾp|T̜jtp0)WA)Bu 5xWǞCz-/^UaϞ5KUO:uiD;0u 7^y<OPTu!QSSP(N]b%a_=kjkkgΜ5ˤp)'9:I|".(17=0E p855w?x9`ܻ`ai9{II7mܰ~}rr {۶mO<_5f4R+W^t {_~cE۶ M*XԘs/\+D髏TIk*)6&ȤW׮[[Q8x0}?Řf xo*222NKKSWWF;p)n3O{ @ u?[ڎOQb:0000&:<1FY[[_^8qbl췙/^(**|V-ku.7oދI vx@@x09U`Z(Q/hKQq8K/>sڵk#8M˧ [6u :rB-Xl̞=4KBBJ0q"wqq6cLDR]\%@ -^,//onnw`0f̜E"=z;zܻ)URRrtt"a̘1+++ֶCOM%^%@ L2é`&׮TSS_\\ܫ%oE1z==}V}a0sey&YW[[RRo˖ۻX@phSoo[N:ݷ_iӦxEo&>|d=މ\@Wל@1kW_bc15߻wͻpH_>422#pW77VIl`֩qիi4Z^ NwVSWUޝ *k xz)eC{_ -wQJ0Eɯnee(++eG}Ebحm(Tث2H^΋&Wnfk=.]ܻgwϞ=X)ݯsDGIҒR1qh) Z*z#]QQQN^NYY%|jg``0rÆy43~:u޽.E{jdd]ɓ&9sSar[jkgǿWYYq7oqt\fFiˋMj3Y`*7UA jogw6_`0|}G,--4v.5y@={vعSMM Ͽ[t۔S.\x5@CC鳧}^o~CCC55;{˗ׯ(#Z`@ NwTϿl!»~09WG.۶m_:{؁8\U2@1*S:o`"a i5qinf-d94, Gy׭m{[QVuBo_t5~*DAAA3rR H$t)Eޥ-Yy۩_AOVH<~<GY(:7lVSJNNL&5M:<&K.h$ӦFr8E=zh;E2QVuNoH74q8w+BhTTRRJJK7ttu%䷄@ 4tUp8 ωfS(::*͐wu9r55vtz45444>}Q2ݴCi~W׌V Gf*e2\.žN2AX :Hc@ DLǔXC<)@ƫ@ H3 iU`W@ $"m}"HUqqeQQeQQՏ)-">}ѣGޏ1Ys4ّׯsg7l|}T䠠@ 77(g9{pSR˺8@ EO|0 ,8x<42zVRP)qn F:FO/3g^xs̎qzLLŋٳb7nykuui-Z4rȔYft,"blX@ӧ6ֵ55ӦM\'ΨbzW8؆@ i]3 VdՁ_ ),i(*o(jhXRVWTUXXVƪ(/. Ƭ9sHdrƒT%'xW77++80vX+kk0޾~Bnر$2? ڵk\]srrrnDF!ܻS~3vi A H"Ÿ\v-\WЈ" $"'Ȅz@0#@ X[Y)--)--uq:nkgoA'#\-oϓlH&}##oL2K,-_C-@ _  +5rY8(pJQik=_Çlذ~ǎk֬EhG!Үq/d  ș_2fY:@+(P޾~bvY$͛7zzz8<P:=x<\]S@~<'MYYڸ?h^t yy<WXXt^u)͓`riM}<GUT$뫫WB(((q8קUQtxwLJr2AH$Q]UҮ" \A0֪瑑z \ IDATӧp˗)hiҋ?'܌P\=la734D/+*jk C?֖WTIqA^… EhzĦt MOOi HQqQv(`W: 1 φ9쬬_*jkgee)o^D$1v0f.^8ahB>'" nk3E`.WoSѾNXT\qF\7w1[*EIM}7kLG ssw-6WVT["ȯEOzPUU]fwh2 L&dT[:p`ͺ brQATKS34,D񹭑kZ ̋K5+j*vvzUMMQ{S1ݽ{/4t9s׬Yy܅͛7mݺyV  _v4%߽HOg26`0 K L!_L8ʪO߾˖/GӧOlll~}=z699((=*: `ffvÇw5C"D"Id2g"$D"'njSK_ouGI599rɩ̊䪊^sׯ() K`0+VXҙgiji2Xa[veooti1U#\ޏ1Yslk _߳ԏ\M#VQU`2J54^xaeՋ"- nq&L8rLJJBo訨{zz.Zhȑ)))f몡p._\YY9dȐC9:: bNtv_ws?}ndf0(_c8bcb):~77;egϞK;'kjG?zɸ)ӘId|D/(J+5 02ltcnqEmmm}} ׮]۷oƍ?tvf+Eĉݢ( M(WVV9o;C!/r܇gSB)]]zt Ess,[h^c[996ka5j5W__-Zj+mmWx>4vJz]]_O>`{Y[vyy7L̈́k?=FMN F|cf1_[F"^}TWO^}uuEŢw;a͚5``U]SVVtގ1j>K,9|>Emmmv{FxT))!p 8|!i~$/^z< (Ȫ$CW׬IOi:OЙDsw.ؑ-6{yk_˳K!&oh6SRE9Zwk^C(u0z(),^M[\t900 (IC +%>)cmG4uaЎFceKGmHҽo~!L:RF'q0UU>9 Y 򊊊v{Otrf;37jG{ }48x072IjkU8SB)DNznAyyIqq($  e }ao4u%%c{8#?oSYR4>1^BiOA7-f'yA,˲lioA3MD4m6:bb汭:9LutAp*եt:Z g]#4!fKj2FshU SB3A:npp m6Dǟ3'ܺu7;ˤ&JǘcaC(, n׍7uuЄjMNNvNv$|1Oj*:9Lu 4M~^`Ϻ:hB*8R9IҪTPj BR,+wQdǾ DتTP*3ff!:BiSB4!PTB(aC!0!JC|Lu!ҍ ci~;B!43QduPA DQ|UB!I3:6(Dk}ait$B)I4JV!OPl!R GJR kx86B5z}V@$ϩI("ɯr8yN`fGV BH!(.=TZ}vC!dk>,.aIENDB`luckybackup-0.5.0/manual/data/Message_SameDestinationWarning.png0000666000175000017500000012141411134627616024370 0ustar luckybluckybPNG  IHDRO#; pHYs+ IDATx}w|TUsLz! IIh{+ *"kE]]}ĥHJDA !=?ysnL<>aS;{s C(E@ V5//!9-m7wR( 򿩪,v@ּ&7;T B!V4YFpL򃭣Y<$g֞┃pp8V,ff13\. g.,$荄huvaMɹ<%Y@8GA*Z!Ġ32,N*0bqìC;eBF %i-"pPɌunKs cMI(M`bnĕU뢸=Mdo&i,J @ͤT3ƸMP Oik[h 3b++(pYZ(e"נfqnqg5p|AwpKqǪfp8q 8 '2 +w\{?%5a_uuT(P1.mþBZ)89 h gb,+!'6PL@ B࢛}զ:W3ˤٹ-y ȎZ(6O#>gpEӉyZxp: 1rRe,8+#.RShM8_)4jM$2Nȧ$)dtdrdž[@,r.*(p9x 5V:CIfc`dLJ nZO]e4HPY$J@r7΅:΢j灠+'̀ʺ,lg- )(ðqrI&32Hh蘯*!p٫IFeSqɽ B⤖dY>ꉨ`XaILEN0¤Kuf(Uz`6z@cTBE)K\ix$D{m9זjXMiJֺbQ$qb4&5䌬p8peLP<0 0e870,!A ZJAil4q`uIAYZHKMyM6H>~Q b̚ O*bܐi] T`Lb\&/67GYUYP>(]Ke YLBG=vݺrQGX4 #Cҁ*^VFFaL-% |r5`L/kQ ej2fb iwMPIx90fr07ca_IFUN֦>Z L=R/FVAC zTA*{˵ZL/#PE.8g)G@qHUs:m0hz 'QւҜä@9J` }U{/yNI 6 ʭ'# P3M9_ \8ÂC` >% V`(.8͸$ZfOz0"?ZsG41nJ2$,أv$V~ߢ:S >pŽr@{'Z rrVM`y[k/q*גtƒ *@L\;^iEs%ㇴh$,l0gwJK ZT(?1 jj !!_kTV$m<%3IF*C*< ^XME M`Qƌ L<-ɉ{BeM 4-[ 93A峪#tC{88J+ɔ8:/42D.%&o Bs6۶YƆ*-nyT1~*}H^N_1,0.ʟ+!Xi〕x*'*IL/p-?3If6'2iabA#lØ)ō±TL9IYt"#\ctS3?8GgǁFzK"U[vdNiǑq=(3o}ˋ֮TQJw%&MI Z}4{ )Y#2-(521Fg]&G }2m#V,ڐd9 T83}?WߺU+lΝ5\ݱc?OʠZC?V7HL iޫ;7.OLlռn+K?{_bR3$&}arT?e CGalߔ,ɣ{de(EE7oL:!֘ g4K;˪};]үɿ qi0kfb~GB{*=|Сqj,0ѸWXnEV#H kH$1>[,(ΈnHsYvZܤ1l.!7(,1!s6kB:Gԃ ?iܬC:`}١1b)񬢆cmS~{Ȯ2csN'&!!`L=`,  F0>d6WeDc(F*H@{,3k254X(]`@27 *JÂJՀc4  q* a qFBBCmD0LhDS.Fmj0b!KqڿjQ>ti| NƑXSf˭V QRq_MV(lL΁q:U?O>{[n{׮ÇqǝvmQP~@_Ah^s`&`v}wϛp_qsG^Sж _vd"Rc9J"Lfpɗl>~Hso/i K+T@>;.hRLvnmtNH<sIm[|R2yY;n>3O,+5n !}{(1w>*]$=9f}A ͊ħmRS}U:FyJ89@\ $ŋ2 X\~M^R3)B7܅$N省$Ǜs쌡]P!_BjzN| XSYz!ڰXS.1ڳ20`]$ >oђ%|]`MzܿSZ6)ppOI |_P:H;4Mܶ2Tڢח ڥɓ|};6۱Q@69+ |:X]4SO.Z!HMg4:yƃ{k@BAKW|Uk9ɀ劁ɲ8 - 1w eYE- AlV\PZ3UD` dtGUN! Āɩ VT|{QZr+\N.! Cſ EP/Hnc8(/@`rnʬ U~?/ro,Ƒ L&R1 猤!E+Du!׬N!>ǭXcїS&B2Z W&rhb!hMt;JXsT Su.SQ*#gSvހyn`&w&JȅX|@iÆLۤ{ŏrRf͚=m۴1C瞙 l߮O<٬Y30CԄ(X;:)o٬=Y2;&bK3{K۶͒U),9^]f*kΐ%A`K~Ŗ ,+5g@į@yupwQufM3}[ *Á:^@^AqK AZb̤1m绫ky3]үiIy]?pTlS[yX2ݶJ0yie EF whX+ C!]bvhl$ `j{0 _Mǰ*ЄUf 5꺁~ 7e4N. ;:ӽ1Zmʫ#\r?yWd$W80jjV$k7:rݻxMd-,~@=LR11`= /`\ƅ#c5Gܢ/^Ij8A5hC i@r*})>YUj$«TJj) Y{^[#2gw):8>*,r։oYw>x;6su4k|I/z`ƤIq}U 3]#$k2'_rHSVDҮawkdSrX <}arKeRFiB211r^-UmM>H[P*REGNU] IvdBZl K)* !(sj+%=B{u0Kצbj#:Vi:i ƒGpBEeȓP*XpsTb+.Y,xS(PQJNMGRR?ìM7gkLLtA?1aj _g$:nVf%7;:%QuŸd4oܺ&e 9;#3%bW qYN ;r:1G"/?Xӭmʘ^Y,(+(ۻq?V:5b ~.3c.ה%g΍ 5OCɸ_ ?<)uk۔Q=^[G,aY1NJ>1ƚM;ˁAY(T4plbL7w w q`.5%dT˜2tL:m_4c`cE:,OT1U޵t( EE qCTw^T39aL<i$h夜p83, ?>=]+禜[ze(g`Le}l# ӅR~ ߨf#mk&ܓ4Q%c۝K8 sj2C)g`D A&UCvLSP!DbjX뼒maơʺ&ialjr؋>ʊߙ=ẉP:č8&~"1:rԴ$_\pHI|RjLlB1BuM[rnN7}r紞R82 lwVunsxmQ bõ,?]JV[ *K+{JjZfo)9zkA٭RbXޖk:".'vl߶5EɊӱяU[5OK/{w=2pͧk!6*6K+)G ?tV?"9!Xs`8BC9$U!YB  2HO$ b’Q( І%z0D {rR\A .@A΀Cv -\3f\J2Ҫ `~ $iI)^[8FW)}btJ,@b(AbX*n%=G1Wg(P2 I4СΤ;)5OWBr'Ge&nZ8X•leZgTIAqzP`j%q Mp5NNJڶX?E .QkqVUVn]+*;PJ'GsҺڠ7C?ڟxN3[$$cpP~I _U֕p`R <(]j炞?WU-c5VUdČzUs5Kbj*o@TطyL(鳒5P-kײ,ފى**:/KjOqe,saSBE4[8-XY'rzu^nQcL&IFKmѵ2"lJxI INT ٘B|PNb#<GUI¹g }QA1A"M2#0چi2r+룕KAXeVLuL$&mw|vJjm[:u9'.>C?Cv^F_vZ1q,6Akظ|>'2``A .Gբ]pYj9cpn۔sڤUWLқN0.6Ԭخa\[A&$ V#guAHK,6oQ>H7f9g5mɻ@d~JlP\Km_) 18/EȰhX Ιo8(p>-J a(\=&VǑC-TݫlɛȣI 8Q* Lڼh,\CV9pSj@wj I`j m2p2$&YRGk[LF": c\(F)IB:w\ ^c IDATB" 3*"G") .!0u9з9 aP‰E8:*']<@$2y-_cמ}r 5Q>91[\)Ux'ϘѲs{~.nܒA61. MFI3qӯ \%`Iv2/<%Pܦ5J8VT=`5&NK[xၲ0Ri 4*}Tp%FFJKaI,6| q=AyOHQV(~j2/޺`!NRbdCl[@m^Y:0AI@GҪنd+NUW{l C&vy5 œ8eq,bfjwa-A3!FYc\R.2$Ļ55|zil F5--&`@nхdDEEd\5[@za dHiLs~L"2KvD1$'"]E?'*6Ѝ%}¬T21ֹuzM~uuu \ԸYFldg[GP};%ef''ݻϋK9v <!Rb(VFCEPgmCB29tY{_QĈju mș$G΍&~-#iM2zbWy UEI)V&':'c7&FCy'I0@衃+3+AҮF2 )[ߘC)6 Bx4q]0@"Ƽ]Jr[$yZ(@]7p5Vm oaD.8PāJS0$|pBA@l[Ȇ6r oZ(gƥh dh%3a38GRrD7X28H@U#8>DwyL3(t[RA~001mLH@%X~3Y $} pҿbd%BVo%Up#m@ 3M͖Q+;ʛ /<Lz!&fvb=0|kgr<Ĺuk̀{NAi\vBvy̭d2xv8-'hq`.VLHN>- ZtP Hl%:igpT~UOt~- #搼r 3=΁!@T&3 ɘ$5R ]*2~(@}$X g93؃Dsι pƠ%0ZhR~-qu/r` T㍆b@'3iRቃipCT!SX]  N? U+qB-/ϐL ( GF#2bNZRRh,'Rxчxڗ$M ʞ8Ef $r*!܍hP1`AC`cBj;*~ن$gpdhp/ĹA'5 0zy((aR| jy;xMG2A ʖ&# p Mq 0kgb J+`zn3f0&ZzKLTtB?ja@y%rYZIVS127XFg◚Ac HtA/2W,F$"GCD+[c\eǴRLo~fMNI׻\ia0Ԗ&$/Z4@)3Bm{$>#S,Яy"), LĢD'}IA, @(E!w4Əǹ&[JFh9.Ũ:Rj@D*#6 ީ ;Z4ŭ$Sr(3&5M8W!;Y3A=[;Z FiVBѷ qMFJR2_d*d8pC/֓^vT VoNfa;snÔJe$:M4RzLmpLs09" *>%8ʌvyH˾-Pmd+$hH@?sX0dA?"؀h^mMPYx5T1=>OࡻHXQX k]LB Nޤ8]l(0,@zJdmC 5f[W䊹&%mKrQܚ^wJHBÒ-%/0Jٮ;cC$11Kv3,$[ڀ6zDD)[sBS67PM a ɭJ{|v̫v$BS\(L=""7DF]qA w&X%Z V*qzzXL)㷶͕hp0 ȿq nlF_:r{RɊlAFT L \àD==8xn z(Sͮ UPc۪MkwwlX\\4G={8\ZZ}DYh Ԗ4eVԥ`Řh;"@懧oxj0@#Rq*@-M-cu;ڒ0/&\'@lkT eQccvi]fB KbUzh!.`. fĕWGHR.AeE|S:/7 8pO]yP0ǝEHk@V H[SK4Ev)2Dٗم#, 'UPV+GiĂ˗(Wn'A1A N]B sέvXYe<;Q?nSQPAx//经YڻME2!LGAL`Y0!M"[+'62r8VqSF%;8c~AIKVolRzbՙqz1ІpYOI-KgvDXNqk}.Y9E|1L> LY3q~1 WLR aBJn1-Q`Y\8Iӂڝ:%ۢna׵ MɐugO]h:˖H-ut lOi8_G@mEK,)a=5ݞcZb  "+\5ݑ)&nkMS*X vJgҵWӇ¾#4MрJ㚒d6MiN  sSvZp{7g`!h8"(8s._`S)VM< gҫAvb_[<PlVr(ۖϘi+J~ ?NZ:9%O>|.#>D.mS8;Rꁙ&_n:ԅ25u#\k\ӜN߬?<2Xդ!l[|- Dvk𸥥kXb<(pd [mG3#4rJPY3Ŷ.]E%g^{E-6@Kzw0:]:r 6g9KaoMLb)|cjb/_ZBfgc?p6qaA?sg땛SVǑ$&xi*]053 z2Zy"a93OJlk_Sp=QB'ЬS8iV돜lVnǾn::\sx>Xs?Z%Ug8^Pak%lh+*=cOi/%[w*B$t G=PP!FX\͆h^5n7LP+ѪŅ M8< WM-0Evh_;Lp3ϴK@Xc`T\_3fWg|vȴ,q%][Y{qs}6m >wpnmzAnګ_o%ppuE v^iUZ-sw*"srh? ^ɡD0EQlЏۤD˷E/G"gjok>xyƙ+b32ؖl f$A%kVOƃkάU&WG1?_3́8+aZ[->c_WPBuԙw%׌^{I^2{F5i9\8;(Ju&rì]?Yw: O]K\g | 8FV.~wmm$m+\5(%r4}K֛zu|[3z,L۶[ɺKq =OrR۪| ˝3ڜ [nk`iY0pT?aƒ6ڧ7=t;Λk5%r&Y79K΄]K$pf|W .ԤuqNy2˙xZfK?}aq@V=1&zk&x)V*=w;;+'^;C4?D+B0uAM"F9m܏DHa +h-E1t(;kuʶp~uwqnu +^m\07WagS\Z$=RoMϖ7HbGaQ:C(F$RDvl#NƼ_g_pV9@S_.<V0¶mGl(O#D@;Rbzi_ 'a"9ݻϪ6{nXOP{ /㜳M(vژ#7 yDAтOuO'Aq)D^H;#4E|EGQS$qWrHE$TZuK'JQj_ccvc'ב4E8MJ4үNzFq9J>rg(Țj(E)JQ =εPRRһwp̙}]hWP*((9GݽA>Cs9-#5r۶9+,ܻ?tyÇ;  XzpzUhҎ+^yeSǎWBZx` O͘scbjkkne˖=K[%H)##:j!U#E?F16h.LJ4əYOHL+:ux >.'`^|_ ::YrrrZzzZzzl\ll\,~FyxP([l8>}7ngF N:uɒz+O>_|ŋxp6=صkw=}=(((իמ{ JJJ>w޼1cᇃ ,Ytq}6m= G IDAT3|}#Gw_re^ڧO &lܸAs׮CǯY͝{c{wrm^+VL<3t^}MF ؾ}yƍW^Ç׿v[qqmMZv-uRWᘦ3 :O>7tϙ3g{|&>[[[;u}{Vo1zhs>gmz1u뮻 K.?mǗ:th^;+ۮmm=ݻĉ7Zj„ {k)p5k^ve}뮻kkG'o>Z Bzwy)wwK. u[n_~ ; 3x$Ks2Yׯ_wgذ>l0: 4oѣիo߾W\qe˖yIIItSK ng>yy7l(//}SpFen޽{;sժU^x=S }w}r9+WWAWv͚ĥK>3^h"JKK.[/7j?]v̚5^zYwRpV-\p_~eJJzg̘9eʔ:K'^:=jT}ڵk{Mlժogy_hժ~{}?)))>5kg̘ܨQQ;+a[ժw}oo흻tӻ-[^Pt{ܿW^y͛];\N_~3qEEE<`0A:t뭷nڴk`_~o-x Ҝ^?{-v7 g3f [֯ GqpA#G.ɡSysomޢE۶m++*\E_-ZԣGO׾˗-ֵA;oŋu] 8woܸa„?c~[LLl8cEE4xƉ7λaV`ᢜC:1!ɋ.\8f!CUWOUP~eڵkrrɓ~ݯp so]]]ԩS'|ܲe`0gFuu5Op '6.vOaa&M{1gP,)9kץiZ޽یO~ؾ}{ xx^۲u+|(q4iw߉}8߹=zt+O3jѮm}tnAv Ç6}ۯʜ??Ⱦ Ǝ=XRNټuuu<0֎3F]; \N999O<yM\E=`A-\T^^>yn jj??鮃gddԻ4'Wqnjjj㯪Ԍ8}N&iʪ+_}#Gqi)wNu){0tY7]Tt`c/@0pWC%[-[p>P(cǎ7֭kmݳt8ТYs:~4oނekePj׶lժx*,wWK3hӶU+aFӦMŇ-[nۆ1Ͻc5ل3h&O ۷ڵIv5x믿~zaܹC=$ ćE=أbMԥKX8pNx-D똨A\n֬{)@磳Nh?t|&ŵo~^]yOgsFN***;tlEEbX,IUܬY3hݪi%gOJJry.ܹsU_y晭1JJJ2!.styLVFf޽_|u_a?&ƫ{fFw7͛Gə?>7C͛5ݧO? ]t9`-1ۘH(ܷO| Ê|i? X ٺi%ٳ[n={eA{233]?&VhѢŋƛiii0p/ QM8{ի_QSS;ow}BΝ;{}7.X7|嗧{@Y承}Qos>Gh x-Z4-7Z;+ڷbn ?Cvvtm֋/6HaD&M{m?6d"9) `'zC@$Lv{1.| 0D2'N ݷ~6~ غuu_c7͛ϟԭ[tґ#0Իww}g@na#G._lW_#GXbʕ@ݻ'Ąo fϞ-vFZpҥ˪{~KP-#EYY?_YYi9o͹`̘zQS] ̙SYYEH&uҪuW}>3|1ߵk<ƍp=!# E ?um3n8x^}'^Q^nkcFyyqe;nQG|gyvƌz!,vik-9"99ܳ=͟߶m޽"kiau#GҬ?|:Ñ3vÎ{nXtiii9g}Rtj(/o[s|#F6:lؖ-[+++O2cP;@;uѬ?JQR~st¡~v|*))ӧqs͛1qiM{+G|]p~<Atׯbǫ@O 049/oĉ7,֯+ONyCѬ@ݻu۹sΝ;O5#Z|?7N edd<Ѓ(EDBI'6iڵz+o߾\rJ%K~O6{|زeˍ'w܅~gΡ?=ztnn?Lw:pѣ~:w۷oys2y]xE{> 9Wd9] S0~ڵkVL}aÆks4}aÆo޿_pE]8{l }vcrss'ys獽~y]ohJqu]awk] jʔ N}%K-co֭}?///77g*$"W.\Ug6ogᝓȍСCuuu/;M,Y+/&_÷&&nذ֭[C֭[R.]~wϟ*{wyʕ+/{'{ݍO6=̏;󸈋ȕȵ35W^^vt叧Rge]v7n\llA;E/X`A 8FމW]ׯ_ /h"O}xcm+**zԮ]_ʌWď?(w@.!HyժUSRrrɓu>a„ 0jk}k0~}VU+'7wu7z~ xGZzmMJHH~&LX W/\8Nz.~D>{[GYr}/q r0rCyWf 9:':^dCm%JZPkѲEqq1y3y14;o>vXqca0MDŒWc0lٲe>M_v։3۴Yj&M4ѵknԵ9AM ѱc$ޏxpvmlK$"Wf]N #Cۺ굥HE!Njf111Rg vرaWϏ?xw~뮹fmڴU21R={Ν;/w>p q r0rf059 " 9??!#-{5o4B.E^z=8Ƙ*^ⵂ̶.WfİƋ-Zh믿!^6h@SzzsE^Ss.+i) 23 .y睷㜖Ɂsϧ{ֵ[C9wWPaKuzr̫4l]=0|?s3o t,Jb?؄o`0$?w~&M]ed^|k-Z|i˖.}G}H%ȕȵ%x g@ 'p2Nm]:t͟>?[lґ#G9bW^]WWb/ &@/CR^NreƫrzJ\ɏ:!!l͡PhΜt^oO|FժUSܽO Sl0;pe˖UUU{;6HDJq*̺GzApt ?rs|{h^}=T#/͚UYYaㆷ~kq2?Ĉ+VZԽ{|xcE >zg rt2s,r尡* 4T5Wt =zrMk֬~o~/;vܹ˴i?2]}~zZ̙3̙3p{}M7Pyr%Wf=e#G˃Apd/~\WTM674y^\\j')s׍1K.+b_,^(QUUuȑvE¹:묇MԓCjKwl\:׺\Ǐ\}ZE,f4W߿z{h *>|wM72U۷_}ꩧ==i,شqciaTF 4H5, sqMM)'ݛ#^rӦMK~q\Q^ފW^ye94^V*(ASNOQ 1FS{55>|XtiiiٿW͝7k; E)JQ)N:M;sїF)JQүf|Q 1Fӡ(E)JQ:(E)JQQ(E7GQRE?JQR~s(E)JQIiӦ[{x,3͈QRKSgd?`=sQRte޼ycǎwQMd]/(Mi "vz"RĆ?];*ꪻ6 +]UP^PzQHd",Ξ=a2}oasuWl(W^VEǏ~WUnl(\䤣=ċҥd ݩS88GGEs4v]vMꖕqD;u9Bw|E9'Oo񍏏;wnvwYY˗ǯ[n׮>uwwOHHjժںiut ̙aW/_7;qݝ;wGDEw֍#-j#ط[n@DDĸq}l7o,--L ]NYѣa˜LFBb۷iik^pf\:u7n_ ,]\\577oxxWVVrܿ_?M?vp2d1c>}zQg ?L6KFz=rrr+=V0;~m u5={DDD:IJ;{.)1_֮>d<}=...zmuu+:;ٳG.A뚚d>F|'%%Y[[scfnf͚ׯ_O>]WWwÆ yy&O.)I^))wʚ @R#ѹKwɓ{;CLL y@V!dVEF߱CNNNJJܭz Wtx9|DQQw}4d~@QQ!>]FtWi;RRR&QQo߾KNNVWSիWshˬȈ͛7CVܹ3ky@V7|^xA~zSPRTSSSmv֭I&j۶mgΜ!RWW󭮮޷ ={.I(PjA=s9998hw޽3vtHHӧ̙GgBUUӧO]``h0=#υ#w8|///LJN&RWWwwxbTd''e%%,]6*Gwrr׮]742lAzzz]vz*XZRi"eݻW@@ߠ8~3!*1ׯ_WSSۿY׌;n8x䉊j޽*Gz5|άFh4 0HQI}Nt񲂼Cػ*/q㺚ھ}$%[RwL\\¢~ĈJJ-AEU2ȩSΙ3WAAAQQ˗-8< k(@*NRσŋMuv&?No^5uo !Q`t5Hi@c%&&=sFYXZw,!\vW~tRyy!WCo?U1cFJS׮^mvB?o ԏBBG^#k~U?B 3ӵwَ-^UUV^rn]r7Ḹ\VG^xⅶn 1SNӛ2eJDDCIgNjjj{ԩӹs璒vZÙLƳwoUWW/_yJMMM 4>ɼ~㺦0_ 4^@㩿 4^3fٰ~}~^d{`jj"!!Egxd?wGXrgϞb4(ַo_R#/=N:%.N߹c'A^#F>|ӯ\2111auiݷW____ߠZ/BH8I1c 7TL+)epM͸۷Ǎ̬LU`Ucǎ=}5|go 4._AAJ+V.]Vū~>BH`G!!~:BH`G!s=!!~:BH`G!!>!^#i' !~Rd',;B -L!$t0#ԏBB燧~;;/_@iiǻ999"##c(76˦Ν;DZ5 k\r~P/O/ MIѷ~g6B# CAǟ AA9j uh+ͲVXHث~ww+<[\b7iٖ-[wgcchd˒M_K ''G 77lDpO=[pSح[а0G)& Wqpr226ٴy5kSZ-;;-kLqwPԿo>yy_gO_tIIIY{&''EEGϨHi'Oє?t))͊&&:z_PPPzFzYyw|\ܮ;9RRZ$+k/Oh=]d>,,,5kVlL[^~;3322.^8̙ĄC MK u+( ܹs1Ѽ*++;ݺu8ljknYvٲcc'ڮ^r)xHătCbb'' m- &DHIJ9+""ҩhuUUTt!NwrrRS§atCCc#Avu[P\ܿ_*)#.]:/^SN5FEEj`x{ykhht֍{ wGEESYdR6eS79?, FEKHH̞5KAA¹h[|vZ,Lti4ML5BԈo<׽ITTTVV|-"o-<|7oihihh^__ۇ8x>ӛFQq7o/kjzzzaaqqq4x޽DDDO}aړeWǏʪ*/UTUJJKA^^|!""+BARDȍJIIՔh=o9gW\TpIWMQۢ"eeE%E^:X->;-ku8)pFHmKnnQ_fkW@ѴuoJnjyɬ2x0ɍ=j`|qq#Gt -,@^^Çrr554y5+'+$3eA~;p e4UXTPWWGfrrM׋Rsfeddf%_O6-~N9<נ(hPVF6?`Qay gͲ) rܯD[`0'%%7?FD9Hz.^9b5 zz:A֓'n3gϞ_755td]]ݹs!_~e2VQ1w⪪.]/q466~d2ݱ&6iUVVfddg=ɦ(><)1)9%d\t͛|:&ŇE|B|Tqqʱkf)P|P~x5r/K޻7;;!Cf̜afnyf}tttGcFc>22gϝ3537oN^[440XR]M788*99e$>TRR_ݻo b߳G(HS R1oƌM6E9p:qϮ_~7nܳ'ڵkvթ79(>ovK+R cg;ɓ;wpFH"6mRr}^Q^jģG?~O!'/7WGWo17*~15 E V\v+ 6ܹsLCch{P[kӏyjw ^hej ۷oԩS{P[000400l(:GGGGG7|BH`G!&OD!_ž1#ϊ`?A!ჩ!O'361YlGJ?~442j>tҊ񴺜\3ss>;LcG>}*++);WAy8\vݳo\*"))=Rҹŋh4TgI&qo1|RTTp0aqtl̰* 3k5DEG[[Y7 …n4mSccc+TrO΀f͞JJ^{wlϚo%J<)RAY..^$\QOST?ReV[[YYsd2/9Nq=t:b7rsu5ysU -R]#~LFnC[qq4 -\x7ojh u[覡Ay8p}%E*\+~Y5Sp3r( :=44ޞ#ʑ@ER{'*S {]@Ғ&j2N [^^h>}ԗ@ a(+*9]^#++k3|I{>eyEW1EEEJl'&O:7޿-*P:垇&;fldwGJR2//.X! #Kb] 9YQFٳ| ?_L\<:&&&&d?KKK '7oQk.\  FKluy]C`qSN'D x|5UTT}}}vibj"##>9#% jK-~ɑQDD\fVJJM:"b΂L5W~lzYp&y9X6L0 YC~CyMNNNnxDA_:k9\DD{, nem=RooT|2aI)g[Xw IDAT$''so,..f5_ݾmTXX(\reȑK. ?^Ӥwޒ];;;>NOOvtgyO 'ٳ@ /ؾ}lkQ||Qǎq9x_?_2GGǡb4ZsEÇGwsݫ'NK?~o3KZ\nh`v{6{|Gc/XX%%%;zǛزCNN^nNCɩS}VF';2  ccO,@cBMu׍6|h(<WVV1 O6&//7::Ʀ;o<>>[ 8mk m[uh!YFFڐ!lwȱ4W | z{BeyGB!!~:BH`G!NGYY}'ۿ|J?~426OF >cXo`@g`h8mڴȈf5(#C U}A~~~?#mm'Nfݱ"115cK+v2M<Ãg͚#ܼyKH\@wY+Ey[[13pcf6o>bҤI"UUUqq[l߯A JRRj' oG Aaӧ̛ڮ}CVFgU{Gls=:{f͚elb2m4&Giiʴ>W]loonnܳg܌MLo i-֭)S &N_ %&Nv떃m8*F 0p/Wy{ڸq#Ao߽%Sf:D{p…&&&oo>~oj5Zyy;<ܾc#P⮢"Q3O'&&{}z^d)[\zESS(C_}ԽԂB/O͛9LgΞe5zɓ&o[|B!̟[/oJwrW*((ppps'INNNJJړ}#e?}rw_qTgq=}v_W[r.ܵ/]$&:v횵[ZA^חN'4))ɰ]΅İ+ pgTdNJJ B`.5o<3~ex[l׿_||qѣG'{{;Ș/ .tuuꚪ22ex.GUUUi4MTw>A>bY^:wnyeٲez1Vɓ)wuDD fn~|6n%(##ׯ 257#(Vll!Lq"))`2d]׮^( ;whF<9*:ڂGD[YZo޼ ߞzirbx}kS\WWGQs>ቈվ\\\.]jCTVѽtJ=A?J2e7 ⟇uu8#yTw?~o}.}(yɉȨa֝%n݊ūp7.>>F1'O8~bࠁǏ  "w#c |V ?yUII)ݻ7O>PTc `d/帠`|0mT^sȇᵖNY'6 $ DDD픐9j䞠ݍGurJ#ZLLtlLEବ=c' q1aӧOKK۲yũӧ?hkkWWWۿ_?u5uPSS8aBزy3WuM A?z/"""O>=cS^x`0߱0de뗯 ŋн{/(!ؾ$YYWQQf0O>UPPwF9unAA~Td3;{7gԫA*- rssGi?iruMŋ֯[{eek +))Ν;m{KKwd;A9ryT UU>q;vR QXXPW[Kf9rrQ)|ڒ%Aʨ|{ l(S@9լC(ë# X).,34QQmm[D]ѣBo2 **,o#j^x~#c̈&ga[Pe= `2ϟ?_[iNEΟ?W-l ߹@LLO>CfnjFӏ֭yhڐ!&M߿LLJw>Oo\={o׮W볿kiiI۾Wxx|Yc ܬK.'N8t޽{9O;4Qъ/Q6lҥYYY'O "ȁݴySFƣ P`|W7IIǙuuuBB+*nkDEDEidIf-_V|RǏ/\(--M͓R0K/߼ySK$A515ۡCBQƣ筭)iaa_UUuehe(jNg3=ɣ(OC(ó4OHLG֡<{Hgtut.]Dr=rKuu?#JxcSvj׮8p 1rٲe9ڵ3\ի纺jdkVVV*ʓ&M1s&@ӳ~kBo-Y򋅹Ō34 KHLgmeOUTUTT8SWWW''GV#4mɒ_`OK.ӯ^ '7Rm_BB {wPݒF{޲eܥK$5errr9><"(x11~?=zݺuw~v :99t!?\/ZEz>w\OO ' &!a%&&νr w v~*7ج@wwwCòOar ;8|rrs=f1uۼe[q29[GtxRppXv~ʕ+[#I))ɓ<Ͱded|VCշcƴ}?N{M&B%TW 8`O;0ݻwxRVӗ^Y!.>Oo/C{l;T}zڵ{-4150qL{𡁡={/ ir153[W]]:;3]\MLϘA&${g6156}+hn N8Iʕ+KKK=<<߯(/ uǏnrttؾ};X8[XNx?ɟ={h"S)S իWoظN\eEEaVVo޼n9Z%gu^ƣD}Qn srr253(~a` y7eTS3-[].""d"OK,INNf0C !wy 7&$MqqDF>699 <|d2-,Bo/y zoSPPh`s ⓬uK%l޼^Z9d ֬^=%*2rŊ[7&%)sgؘ`yy{h= 9wԩ?ޭ[װ]/^ zܸȈ_={d<رcr]&&-++O۷o w r:E^^ ,%:*vڵk(ܘ4 0hJȈ]m:'󖝝uV/ϕ7Cc@Z**oS:[7owُ=*+/gHBB")9݃,;ni ޹M&\XSS~ q AFNDttpqpr"o􇅆6&>lٳ]ŪUDJO1 bn:s΋5mINdt%e|R},K7 h4ÝL{[DDDEEƎ;b(<ɞ`xzz)p.^݅D'mmC)L&3))411+K CCptpy3c*-Qlϭ-CBj$yyyP aLL̻w2gS,))^ W&/,*A "9l ?rS)6*(**[7g&zxMSwyir#w7^ kY-Pv!ASJΎW_kkkjS*lp[Qqѷ5M%B?Ht:=:&qPu((, SSSxBNnҥK[FCa9::„&U3j eetԫ/5 c0߱7U_'OX_*)+@aaa]]]C\999ydb+CN=d)ʿ ЯHC&[5FV ]%KN+5Ɛ6r45qD1od X=,_`,eKIIuu5і~p-$^EyD0!2xqlkVׯ^qo//+㏣!Ϗd&Z]Prc R#'xk:6.G;v UW0=n w[773>ſz"eD^,Lȫ e>mͪ;TRꕔOh~yMk_A 5He)Aʾ(7~!e?r2YK@c^yCFs>lw֮]c)NAuro߹2ӥumRkk!a'$Ć(KwIICh4ss+:: jCBT ޻˗E89 } k!!ԑn jz!PkԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t0#ԏBBS?B L!$t;Z 2ZR\HwPkԏ:v]ZK*KvQǃuH>׿(Clf{ŠG|L/bd0S?x+_WY6NV2T DDDw)z_;OS'^S?`bp{]l G]Uˑ3K*H}ԁ`GWQ\Qv݄RP]U.avt3([]B-?+!ldOf-c2{@E QŨoAu<A@=QOF=AFBS?ȫ og :t!!!u[C5IO&m۶tuXQGtc+n ;gM6p۸aCbBٳgz)ؿ*uHxu`d߂C211%8899y$G'#Fխ]ϜǤ~nxՏ:'Ν^zo4pAtTJ5|0;2Ū{YXXH&M7VUU[TT|ƍ9s;9v'o/m/^?~/ uhr? (IDAT~^O8~˴i؎mhGVV&00pZZZPu`jemeem}8hczv¼cԏ:ҢT%]+M#eG" V_a ]0S?zˉuuV*6Sʺ@3MEV|]im;B S?ztMREkM;~) Zg G~ԁt"HC!!~:BH`G!!~:BHֶw !Nmmh]];رcD~6-SD8ydcC 'yfW7CY?1)qo/**+X5uƍ`ܹD~Æ{+Wgݽ'gڄ/]h""9nk[[ۭ[. Bxx8X3;7Gdrxw ӃM]}ݷڽnJD&N1cFVvַn_lYSS3S544"⒵_ihhضm{YFCD**FW^)?"6u9&d3ի|>⅋͹Wsrx\N]c:uMmm- 67'~:3/p8?|xs2TI'&3fX[Ykkk;qvqvljjjkkUSS;vlV傂"k "}}}---arvMƦ굫99#.\cii],OswS@`8 A %4"""\rJD$rk355UWW󓶶߅rslmB{{;QVV~]-cwگ>} 2ӯ]TDgcmeu…vv666,ia|>?:&JnnFfs1/k+e˖_UUՍ7ݻ=:?qbB"ogdf&$?.66Ddkg6\UU쑳nj ۿ?'to d>X-4sH,h X 1,C!cb1`1b X 1,vfPsssSc.@J^91& n6GAC w|w|w|߉dddh2u7t' n.[HxR+(pL&/ZZ[jjj{z=xъ #C#'kxKKK)ZZZ*U䌑c{+lO\^z(**7!7۵4+++=~s:u*?^T+XO~ˤ_&q켴 ϏNJdVdhR:OܟK<д[5谺:8sb'NSSյGck~=ܬ7K%"?"52a"Z~h 28 W?СXHZ[S4މ{#}#s=Bᰪƪ7b8_zpad 22>s~deey{yzy{(,,D4c ;;;=ly8}t3M3]5kή9v "hprgߥX 1D///KaR̜.󃵵AaaN1cʆJ"2c$zqc!".r$^ODغ𤢅e̞22ҝ8y{yHpw\~?etTuXƒ%D;7m󛣲::]{m%**: 77MII!|;32Ϝ9kll$6Q .-+jL1~5!?V-ʆʈJ%oSoa:k %&s{\X 1VSSبļFD\.WYYnYiGGqqq8DtԩܜYў=1y׮ՠ{Gc[6OM ey710ٷWķ'2{Ws]~> **rg; 0qr;;[D[7Ǝ=isss9FEEedfJ[ǧѳIOwe߀Wr䩩Ҝ9s+69/Fb84t S}=];[O?]QZZ*-[jhhto)vw=şM2Eյ VQQ9r4_7#"#\n^E.UHWVVvNӘ1/mByW^?\$"M2K>thSnܸ0y٠ ?bFfgg{z76`&Yɩ'mlF?{vKs3ݽ{W[K֗b?%EtYw7>8[ >DjmmZ_W{FVÇ8q 262x;oѿO24w㔞doܽ{{ >>V)X[Ks9̯'Mloog͜9uz..*:qZ{Ąkki ؏V" 4w%Rxc\.wz+$lӦ+WrE?o5eJ;wlxٲK.Z)>`N66nܾtO///" XxUOZQQ!:wg._N_|Y[!Ç%7=|8_/\Λ7^iii궶D4c {Q{\({{.nݻwCݻ3&LꚚ?ѿԩ^N~~Δ)S\ ߽\nܸ6r >HOOT_ )cƌ=}~nݺ%<mօ N># =BDyy~<.]SM2hU]-/ߵ?{ak^رc;Svp,|X i%<Zڋ/xDGCcܹ:)1Qt\Eח\*55UrSQE_7nQ!o1g̘9tyV699eSXبQUUUG~WddԔ.).>y3~Q;v~Ïa۶K.%ҲR":zHuu  ܸiҾXMKII)--1{\/_Z|ۧ}NDUTT=JD)D|7c۸iӻf՝8qetCߩhmmf|QEEycP^^.kEE#FQy=#*5$p}KIT"\VYY/>>ѣAAArV+))).*rrzz^yuttܻwZ eXYYs#1kHK[xJJD |XrSѨ=TPP`~(--9̻@UTT]+).NIN600pp͌TUUe~073'ꮖ 믿>o˗/nAAPAA&BoQWWoᗳ7VTlӌH]Jꦢؘ=jee/t KKy-(7'5++Kx#1r)k-6UpUE.\ ɼEDܼyKeeU_2ю;'M, F懫W0wSbiܹǎVVV>|033cڵDqw9s_~ $SWMuuئM---U11Dy &&%33ٳ\]]g^͕l)n*S깈l7rd[[ۆ EI~.mъr.ڻw?onh謸]L?~߹3)11lȈemگ{׮wߝ-3gLjժK.a :S=2wرZ̛\Hc>uꭐ >۷q9wԅSPPܺufL?\𡏏Ϛ5_Q߾}~PB€/^qSȑRdRSSO8a29--- RM_7dj]X MMŋ:؏CO0J]J$SH.R^^3Ax>|VMCCpbgǏ{xx:tHI^^^'O]ZZ6V֦<-[֮no9UUդ iii+*+D'~qʒŋ[[[\ĉ`! ijjL711ٻ7VCC36~۲ekO֭滰V7o~O/δ;ޱcY۰a}M6@u\__/ 縸 ++z"X)**f—bVtz?^f1`1XOc|2Y~I lii+;3d`M9g*Ͼ*x]FZZz6~mkk؋6FǜH/gM>___fKL9uvL;ߧ$'%iki~Ö{;9:lU_~~`|:q}~?}ZjˌϦ+*.ټeK~: *EbI=vlڹ0B?.va+W~^VV&uFRb{nӬ>mjQQ|>)esux+rM%dJr3͛7/Zdnn]\WWOKKKNY:s5DM4g„ؽ{#>Z9t>7rz*KqsveeeL;hv˗ ?>99i_l1c͛DuE]\ӿ766޾]P\Tu=?TlwI&)R߽ĉ!!!/_4\f@ xPSCDYYG6Or;擦ol8Yf] w#Ma33?^LYYy_RRCx`G-|J"H **r 7  ljjr:ή-;R̋~SvQ_<;+kF/]$,,ٙJKJ%wl)ubrԖp8]a>ɓf͚5+TNDהu5d5ݸܯVܺm{MM%KϬ*Km3{~3jLӵϵ&/sM'13^]Ɪ_h,C!cb1`1b X 1,C!cb1`1b X 1,C!cb1`1b X 1,C!cb1`1b X 1,C!cb1`1b X 1,C!cb1`1b X 1,C!cb1`1y1ֻwou55~G3@ѡ[1\9y8J#ҏ%@DP3mGb͏IZMgX"DD0V@*d('e' 2둀0ͣQ cPjD#!LP$OEH:(ˡ^eI%) 1`1W]@Hfџs02dY)e `$@S B' *~2-4v@f%K,KR@d, +EGPɖ~`MYHQA@d znEҘd.J9CQc.MUa)Δ'I8͓ޒP@c@)} 1:܈1AI! nY!.e;qpԜh(BSO:z]VO(C IA7vp&.Tq@@H KΪƠNE*T` h]sowT5J:QIn%⨙%U-Iu1Q2( 6 ׿nGUcP+p 8vXKIXx^Ö$ 2F#dEQ'$&ܯze$wo*N͚Y{cόb'2\  TYBDV2^^xivgP1V/J3;F 򠈷QJdh:iFձ !fe' uޅRP4`!Nu+e0YFΊ-Wa#Vh!,KM4ۏꝁz_/~g5 2 'Ɋ@BS Ƿ.+sGAxG1< cL2Vj #DKP9T2X`+@%dp^λvg]u;5e&oe1!0/Xc`/5c1( jUVI·0 *L@͞c0žٖZ84nPK21 HVAT`t%T)g+͊\+  sJKFlуEqݑd *6 glBCčYXbGtyl1`7C>) aMZ~ĸ+&˾?XM@nkziDAA4":w?-:H. `cD 0 2FHVO2~`JaL `%ol7_QU/ܻOf)!o"8Iu52wl#0R7a g}ٮ=U͎2q|/R".G-`-fm?Ýe0=a $nД&4P8ip/6Uϱ2UIicxn捯KnBPÞfK Rzw1'5nnM=ݤՠڦO+l JʢÕuUlC%`|.Ӎ}|ĠwȹW-5Ǫ=*LC fͅt鵂'  FzOM7v047j[UQr^E-\A\>.ON ((a'Pf? #V-S H-qɡR 0UXւe9fr (kD}SI MYrdϨK e_@i]QV(jϓ 5şG;s{ꭔ fvh:2BVBcu ʼ\%@*vybMѽ>|/k 5Ǹ7$1-U~`;kJjKqE!V$(lIi}zB`Ց^P%PuA:0zQ{bÕ44{͋z'}DZpӎc/ǂ0HԧtKF6k!/ _0iC宵;05Ŧi\֥h{ NO0ٮc\~qn`$upN.' xѦD3LzӲ&h\="}ԮIl}I2l7i9pڊ8tZajaꬩFHV,LZьe3UJDzH2 6G^CKN0"5(19%s@ &DbL3[L}ɨbeF2;!"c,;f6[^};LHW [둰LIC@ X[Ϛ ĄA6Օ}n%!3@ LMC܍V߫?+B`—4H{㯦edxrk)`Q N,EcniXet$cUk^f3>Q8Ud 4rsWTw5%5?_YT12DN6ϱ\ZcjǚF γγR[] B药Z!٢Kh/eOOuI&͆ZF] }-]V@?ʔyp/ Jxx^ǛK7wҧ+k=tt pv Wq$_'PJ,rrn`B:ƣEEo ZO8dyF1VEC# ^[+w?rJ&[HcY@Is5T.}dc,]^ rWgoy*!9$F cRD((h1O efOmΗe!a-KBFTKK)t;-=K}Ԉjf1$7$ꍆ iDVHQteꢙ*~cI ǫ2IU@YYIzVe_@w98ϖ`ȱ4Ǫ66l &fXO۴aisڰ=lA $b`ĮfGONe&tZ k.B)w>e2F?u"YxVnu̵pj7=tȌ#/6UM:q`uh[U7bL+L6*=rQH򆣒@ *H2W2Lf )'K{Ib#GVd`!dBA2 X.qZMFU 6']{;˵ >,\Ȣ1讟t"N:Ƈmiw?j<{V˴x(rg3 Yh2ƺkۭR{+Z()a{RzȌ ǖ֢I7+EV$+}d A[ڔ{m!8OJDM *=QxVAip[awq3qIAm=kFdL*X<%ilnp~c 6Uj~Յ @ÞYb !?jx Rm&u,CHOAEzh c5['q@7KK3ڗۏ6}ȣO9<T7\[.JnpbAYv c2B tS_ ¬Ec, k`Y"BU&?#XMl{IK:GFt@rMu'.>VcOoDZ\FdE,S#dHN͸Gc(Ae$%(!B9T[ q7nr __ciqɖ}! -ɞS ˒59`I]MuM7^A",#lY==ړoAWR rfOs+pqL7_oJpSkaOǪ.4Ol?"JV~dl҉V8XD"nI-q]:(8oݬu42MPzoyHcͥ^Pa'k1+IO3tӘ..o Kݼw /6U)^+0 f6,G+=PQp`lSK2V NI`,Uӌk% Fd!Q Iu!ф%6$[k)e~@`u"xjV2S  MMzKQ/l*K] U%G4hpht:%e&_QؓR䄤Tr*(wǙF'j>K4:ʣۍZ113{[M *ZvVݑGLL([Q.={m%l) f{%!`i&&Ԧr)+hյ(TuY 0Ͷ8Fͺ]uA-q͚tcP;55 Hj.v mf*: cl7k*|vA+\?f00uI64_o})-xao{MWRJҗVpMniFIƻuMK'47x7lsgzeI(\?΋2;OW9\Q՞͇efMZQLԓW;熭G%3Xr IʦVAHF/4xZIh):9}d"D~JEo2RQ*+6tȨ%fM~\l0RMs2-E31J[ a/u#e&{Fk SH8A%].OƴO IIM Mؓn}z}JWTlO# Qt@sv{IKcyk:vkb3F+9u-檣קv훑7q"Pzv2L?,ghK&}t'@waφwH*Bgʒt"Dw"j74_??T3 wELHՄ |(M0"M>g1h0Pe'"Uc+d:Lj=M.\#Q5]9x=DKG|AI@s};s&$FKۀ`U)+ Q$.֊HRQe켓 r|OY;+bge& e-%USdb !'QWYD!!o`TqJ:J*̶:V4%59oJwzCsf+WtY(zAR!VmX a=mMC<;8aXt2nT Cf_~1EUQq#}q #V\D GDATR~xFo`-z-/Vn2U 6Uu5g"dAaը)}2)#Uex|Ցe@֖bܮnG$A(zʎC*tS P!CDoaX^ Bu\*;Tߧ iHxf #i%\f je mrjlmTl0WTc@ Rjj؊"*u@N`ե0qDXv:eL~IfgA~j|`+2F7[ Dɮ7[VDj꽮`Ї% F7AtzC>APU-M̱0u0"dQ1^wb ڈD%KFȞֵ_^gBɖd0ۑ E (̉-=i Iz9.)h~f]$E4f#kH}=8rB'f|NZM2aXB hKc 4S(W+{1d_FWKQb`"DNl#DCeեLLS{7%+@ne% ,F^땲bA*ZQf[ }N5Z = *!h瓂~%DQ Ua-x1]GSTk4G 5S،ZOLOG j, i&`N{j<bWr uMrMjJ`%!5Tn=I խ&CTJm;jD*5[11 AQ IDAT,+Խ&z"235J%ZՀIRxIZ]^Ћb@HL:QL@Vvs7 &ΈiGD4'"1=kEeUq vDI +$IcN0W"p5^ B_ , QvrFyORM.CA\a)!/NZAY 1-g tFkvV՟+lO lkk(GK`txoWX)(% &,}ƅr (@. <4E$4JA€E #T PuQP|# 7+b/e5PG@VR} ?5tf;HwjplYHSE ] 1¢2PSdr)ƒPmNLv nkV |07DΙ.pVSh2!FEz!T- fgbç?x2еh<S{y. wyoU]c4 4(ImSD4TPF{h+DKgEiaB!b 1;,0?#ÎN$q*'n4ێUyaPE y/PUonT7إ7zl|>r"ԥJF 8r=uv LexLߨ1|Gf CsvdX>872xC\|SQRܐQJ, ]D$.C$+㟔cV}%R}Ԩ1"`nQKxB.h,P,61ӳȵٌ@',VIc%>RT0?%dY-@L-#ŝ+xB. Lo`NP*@c |F:{."HթG*ۢCtVIЅH4ݐ=lPZ)ð:IA,ޕ R-9I[$Bٵkkb9K6>/l̲Jږ4 -iLGWL {!cĐ#-/G9%7#9<} TfAKvҥ#BmR lAJN"lR)!J*KR E6VX&3tlfJ:E eX63JLTPDEmpkLs;SFeƼt{DqaIVtW^'XC!4r)#9suUІ1/Y}jRc&t"b"nڋ̰W4\zPO^l{ EZb.a GG1Y`FyOG ?F$j4L3\Oc@[76ZXGV^V[a7M3n"x5溝gh_ ́qAʊ B3+U-IT {ia 3jN@!ćP$BCA!*#p1(vG&BFBRE;Y=pG]CC5jW]#ʆ10uj eP5,lF~N )2slAVQ"Fq.lMخi^eȌ"a6RpLsEKPy9l!5F&?:%N\f}qh=>gM4&*GZh^am꫈c⌘AFcPB6BT&C TN`ySMFs=Ќ.j充C%ehW$M.-oȀ1HلDo_ xp7}ќ:eF. &''YRZ2ܩHb%-S.Νk6N'DsjUh'hghcgBlbw(/sB?Ky:aI.Ys0=pA?r9du1dR|^x_~)rccaMyyСC,]r-?_$ o\s_|^c, :t7\q,]/_s]vw w߾oyĈ3fLߴi3xܹs~UXX8uԯ!4q9szλz*WWO2u/ΛG۷[n!+** [ :tcǎ3fG}1.//;voV7ܵk̙3 LW_e]V\\L詪 2g͚7TXQU|0mڴqWN+*SޭЧ~ri A;.~q>}F gjwѢ,˛onݺcǎ7wm9Q϶u{ QF@vvNZZHv.2^s57|sMM͠T X02knW}jԨ{?ቁb(wuׇ}5+` f7\vݘ1cƎ;@E2zx` lBBJ?AYF@K.ٺ}[k|͝;7c퇪= O2m8 ’UQ^~UWEܸU.0^ʢE}j+ 3 0`8NB"Nsqt227o~'ĹM88o78ԈhqtjM48:58ԈWt㈣ShqAhqtnrGx#΍GFMxGgt>E㈣s!T{ǸGVoL+ cD㈣Ӂ_o'jj4%sWms llucßJf |H\Ыф&V#o؂Szqı #\г "ݶ.ۧ門3G~ Gx-oi.yhkm}] tscԀg8ZA.Z.D5:cznF{j]QFlg#QE ]B:Kv~=77!|c[o?ݻ'VW?bGmqtq%%w޹w LKvƷ.Q?m*8~AڳgrS׬zw߽|oy|+$E|Q>#QXqN?>VyP>KԖ pC~U7o+*_'-`PR?iܾ}o{a+..*{ȑfDWU|b˖M98:3޲xCnm}w<1={l6IKx7ݤJyMMK@QRk׿O3ό<~_{l}tߐi?7+CMн޻iSYԖ`4jfW^YI@fey6ۋ|o@7+*bQBKW^ocE$_}u;lcoL1";LnjvMXuJg$Nk=Wv~[ ;cͺoW/_s pM￿4$ck֭  \yeQʯ.Ŋ{'2hZɤ%-[S{[ᇻA)Ym9zOh3)6coQI_…;o}pԙ66]c۾]=gDEE4s=l6.;s@QsU}>`WdҦ$3Ӓe=~!80-5KE7mZ>%H޼,))HJfϾp;훵sYYVQZC?J̛,kԙQymׯСƌVtc,Fe"B(d&~79_WNrwδ#G[6EM(+ ٸ_^޼m[%k`%K;zK**ZI@yyW߃6mpVOPQܻ \^m6ӵk]{Tyd…3߈5lbTtG'2$/9%ӣ Mj{ r|m~)w5\V+'V_:jՍs뭃-_t{JBA׋Gw#m*\.Ϗ?G-yDׇ H;6 ,(H۾}5 yy b+z8aB[oDG49xfm !jN .WݾIz[ ݭgɊvneb^I…;}$-)lٍ?vE}&,~uu>S?٬e9Zh# 7,}i~1$]&v߾YEEweeYׯ?ѧOr,#pxL47?o%TLV780l5P3CsvN__֪y[>r_;xG~;p3I@ ݳm'N9uv+(~;= g&;uL:whAdhHM5?Ȩ.[x.rw^ZIDATMp8Rf% }Vܦ:xXe+w:]s`=(1;;Dn?^($o>cTeYRSS|>jZZcS,˧ UyټYUyf޺#Gκ(;2t}>Y2~4r1ƄΌS/nY JxņKwκ4;2tXt:O IѽD>Ϡ<>.}l١|=㪬 +6nF5eT^ygPp1_={8q7 :9܎?mqWݟޖ%9V_A1ce@XhǦ"[n$zlmMo;q= s_Bzmݿ|楺Xڵ{VX߿K/}iދ(ֳ {Hs|쵝p|[fױ] Frҥ/OV?Ν%'f͞146 =3ヲ+HVWc)lÆ ]nΜf?kܹ GY?/8/kL(VSLt:8ݵ?RvqǓFT->V1y#:]y=s_CBRj|?we~wO? W1y!C1b0wѢ٠$9rgoh3rgӻfmxmc?w\U|7gs^'| Яnދ/Eliii߾}?Z5\sEǹdCvmp?<9kk`ҤI7lA#h{2>^Lٍ@1г$k}nȪnwX a/|9jX.]~ᇑ#G`yA)8wYjJo{na„K1>q2xР6O\yyڧ񁃮F(;rF y%[BB6ov]_wmY(Ƒ%Ir9]K.u8'N)}oַ~MMMw?fߪUC ap͍ƤM(Hsx-7z^d:BÑ,bԴ:0魷޳g/̙99`%%'L8rpii)X|n< " wÿ`p^~ $ew^6ᦿlMLշ6--ME=)Y w%%'ׯlݷ&{}Zb?[rw A7~vGTmczk:}ddfh*1|oWɪ9%)N555IɀA+W8f.I٪._tj*)i'M^bwܾnݺ=.6Nr马4WT{M20lRBb]] Fݵ)Y*%&7[UǏP `)D6nR1 @ m=qOXu]ͣpXV]zͤɓm[3:>+}'x Xz[ou&OLz͘1㩧0`@FF⍛\R)Z ojݷ _`!CAX|3~ヒ*Hddd\2`zZzE-VVVs+sܯ{_zb `txJAx 0)駟~?fUgv9sRS0B`0w9rdɒ%CEEeϞ=KgI1 @ M>7:ǥ⍛fkJ`@:@AYi)qmQL'|jܹ/xx%J*`.wŋ1q?v|>_ѳ mOƎL1h5W6XI۫)ߙ֌0u/|q#Gxwy;[`A?/6m:uʵ^S]]5xǏӧO8qb{W睑Uwb $%tMI 'uMHLH@^uଯ:W[?WL6p֬+-pRfl\X8tʔV V^uÆD~.Sg>7[C׋֏vш.qQ1ե˞{A={X{<6\|F;$1KzXSG_lx@C2>Pz _8|ÇG,0_@(ޣߘջWAՇ,kU `Lpx:?70{w/}ti݂mJeɠ90E]B.!L>tD'5 _gav  4z0ْa06-qU0QA,KלypFd2_v%Ket2tLEWh0^k/BMřC\-c#џojG\g,8iM48:5&Gq#NGFD㈣S#nqB&G A ~ .AqΘ;P@0$I:$G*~F쿗$I#k #688 =diyPP/iB߼C ~ɿZG3S\>~YwHclw?-&8Y0hR}{ IYY"ɣY+]OFQ= 9_.#zon@5ţKXcZFIENDB`luckybackup-0.5.0/manual/data/menu_LinkNormal.png0000666000175000017500000033567511352703766021424 0ustar luckybluckybPNG  IHDRNµU pHYsMĶZ IDATxw\ߦB訠T6trzg, vSl{AP%XAQ@z/ƘFP7og¾3_)YV;b=8KHhqIOeE紕@##ظY'b88c#cY,pp`0?QW^a5՛[7Э{w 2 %;AK!*0L2fE@BroQa\N&]]}==6mѩcG LBXu>f----י~ٿ@X,֙3gbbc_S33o3g|bK>y{4]5C$M: ɢ6`sV$I 666{G۾_2*VVVVVV&'%;~?ٳ ;鋗/-]ZVV&IygϮ_ws֪E@6o>S|,Hfmgg:ֶ!J֭syy%/PķE@PU]`{`e.]DEVZUVV֭[իV HVvCOWZu9 Ol^_ۑ>!6˜&QP_e"@PT jh&&cƌ ڭ[mm]XX䬭!!ӦN0` ޽ R#loP](dggggg| Eec[СCS))+Vpsssvv={vjjs8޾ήҒMMM +((K/uĉ WW2`@PN:]tY۷]TZaDD Gx0b՟ރۧo>"@)AEѼJtǰ&KRB{\h$&&*@Qt{y LfƪU/-Z|С\>r.YD-[#x<^C}}PPPٳSK/gX|>˖-}LA7_pA$YZZ4]pAZ⥋\.ӳcǎގE3 thb4~W^e'6.nܹ ;~~[  ůN<1{lU+ۋ@MZ0b y"ݏcgo7hK"Jq E0FpouuuЖAŅt]Q-Keٕׯ* IJNڶu[\ܝ'Nz{{8de"䳟 dڵ+11)11) @GG'==̙3U׮]KNN2u*\vMbϠABBCңn: Eѓ'NXwiib3ΝaaaP,&aa0kO9;2>qSNVTTq|rd Ӄ3BBBmmm?5!>T-pu" ~t"LfMF1o#NJLܵ{טѣ=zR y$xP'sZJ9pࠚ###oa ` 6|%-gnnpBx޽{XSTccc???_6ёJZR]]-6bcbmQhaQWGWݛJ޽\={xyyikkS(kkݻ@L;]CWVm/54wyHTU>kG-yꪪ &c/_\l+WZ>YUURcAGGM l+ "!zN֝˚b I8HԸƦFPRts[ҥ\H$ >sFdaa'Vd 2޼䤤3gƌ!0gejii544465 e@II <{ f̘._JyʮZ^jK V-\RYs\]t:rVMi-ÔOLLLnjֵ[АPisqq1bX2X,m\\\z@߾}+lrGGǙ3gJ%f~NNNoٳg^4 p$> `.$aBIdf(p xO%~PIH{{gyy)999999;wp%XYutSiŪz*^|"iCo2\4qM'@E獗ʟWrZ\x $$&Sp߼ioٳf|pbccΝ#ZgE$K.y̖-~ǃKljHbׯm۶U\D$2~#Q̷@-q#GB;q9yũ[v ҉${̬ 7>>}*8 ̞5[E 8="ӵrGHSSS/HfŤ?/OkruK_tzRN <66qPPB%P:(Bx+nbv'_/_|#򆩩Y`$&3344̶_?ϟdd0Ϝ 655 RXĠ22nE6Eѓ'OTUUM}=~EW0qҏ۶m}֭[db sJ9huH( ޣW' KʮO6g?NPrȑՆPvY]==Pv>|8r\7`a*~4~U2ܻt횜cdd4|Ǐ777ys\.KIM?o/,,,Ə/% Ç(>x? ތNq2\zxxyy9ŋsV~ D+%5y d2Bf04h4\ "$cCTUP33ʐt"ٻw^┞={ݳwAcnZZϯwЧO??Kܽ{gl%#uVss 駟BCC_1pO`fn_QQs5Pś'>tDŽ$4h4j=ɾMաC}+2ujBB|jZ_˟utp}O?-L6=^|VVƍMS0%kll5*F Adܹ"hڴihjj:ҥK<}tS۷ <$?FڹS3gHnj$iXh趭[ԷV!D36Ԛ222K.OPId Ap\244hIx]u]z-*&ӧM9...%Μ9qCutiv64 go!</%9ѱ[[SKB{ x+"WT'ΈNw}Q CQ.(QXP@&{9cLٍ7gg466⸌8h'8$822A KÇO>Ju$*qwwwE򊯺W^=qfkSΝ;|&66>3g|C;wݷ7.6N(:;;oX^OOW,ƍ^^^Οɩ%fffGVe$E@ SUYPEE%!dN1g0d6ۣL__qƦ/ܿ#}uk{prr,gJKKtD3dڻoӧRh2S7Wd?wEv,XP]S]Q^N ݍ{r-C*^뇍3Ғ $v_~5k֚5[嶬,Q o#qqq3Mpq ǚYS_Q㘥)OpS51!6rPtTrpsutz񅋗vi&ldHL^kgW77---6"# $8`0,--gϙp@=3V+wHcccԭ[0vm uW" +**l GvVE#6Z@6' KKK_>uϞN2E|j)bׯKO_xq֬JwZ߹L P3޹CB[~/"Q 2tĨ~;?'O~<==:w! Pog "*+**+---Yw)I}X0c{ʾؠ4:tdzqO> ݲOΝO&jll=qq7lZVVvzQ?d0G=x:pu 8W8@5MBJ; Adux "#GP(!j@P]]df/((XbŋmcjJss󦦦sn>2T*V5k״msuz'YP!)Jq =Iel N:-[+\f"nD\|%777n?gڊwV\j߾i$iРA7lpws/ kh7~ŊU$#evފamh4ɠA̝,ٳg-Z$o69 :޻wiӦ{뼟bJr9sl &*JLII  =w_t$:ۢ+,,_ݡ  -QW'OLHL8q№uuͯzj]]Bm[wDєɓ[djZjt֭YIMM͟~ZaD;nGGQMMMMMMw)))k׮[n?~|UĥKJ,_ɓ֠FG32*+-=Inr vuEWZ"Ia2L&333Sݻ@rJ*S0p ^ZI$A!D"Fբ+~3}1wZ;>^\٭Vr*+)WW(LndkY FPJ=C54vAU< PLpJ+WDFE_^CCٳg{}+W~jss;wP+aaaׯ]]ffQ Ϟ=E ޻{6Qh4ZnnA22qqw6m0h`u U4\+.7o_-L<͞{c>~]g[BE:xc9Fv۲hh>%5MBlA3a 0TPq\d^|v驥M&Sz bcc~]شis^(j^6mެP̂NX`|RBZ`0Z^X[[8BICCCHJL:sL΃{q?oP(*eȤ(q=ݻ[S(T##͛}~vիN|FsQO W^ݺykߖ3f֪(v*Ң:W7zl7n>Bۧ}TkiyT `bHWG[0Q$ L&ByU*T  :e.]LL444),h]fnѶ6:4-BJť<'n(Td2ULfR=f͔?UZZlv6%">000.";%cSS#(◐ss{vݶm8|Ͼ}.A1 6L<#E"QHHEE<O,\][+>hz߯D"QaaaVv֩r8o+ˢNuhUPTT^-Rz#IbcBտ z&JZ4`0Hj4F3513ftHHhnjk¤""_8j, kjj\75(D(dggggg| *e۷owsuuqqYfMԿXbm۶+Dny<yXfnFJ ݲů^^h ۾jpΝ?7x}{Dj14EFں4mCad ǥՒF]ulW!͍棠btpݳiT>eTFFF?ppƯ^_0 xUUGňiC;Sh CryR͊ \#|XΝ;0ᇿTF*Բᇗem<~U) l.*uqF\h$&&рo緅`XPX\gf}DzX,Qc(j 6E:t(//K,z*p8qqmhxg??k׮CoE/[[\.]xQ˔ֹu˖P_vb׷o5}AP!: NV #9Pn~es[evYYYٳLOMLLy~Tܵ_ڥ 5(*\vg 77Wڀ 7(yܹ3H'&''@Ν-1<<vݽ{/#y^tfO6![D ȣΛkiݻ"eе[w&(㵫Sa&*Lf/|rd Ӄ3BBBmmm? ?JΟ?cǏWG1g33vJLLJLL IOO?s挴OIKK?u괉iEEEP i˗Θ1~ B"I\rE˔謪vZrrʔSkYYo YY'äm۶>xp֭ Rb5 Fpľ' jm5mzv6RV /wI&U++QE/];wNQݻv?~E?޽;@]==`23pSb?;;9@^SeBAYYixxӟ?{f``0I %WXr88L&b)S[N$m۶K*2x=x s3櫢W }[}-M:Jib_SA~o$ܾ}{Æ}=yY)^WW;dPvFgȐ}`Agg'@p\]]tzJJD>%%N 0?FKMMSxuSZjBʪc!q\|88ɼp<͟?ۻLc~Q0؈8 25U5q5hzdɲ-&UNjtwikp]c{{G~t充?8gAVo1~ϝ`I,;M7p qWի#c]mF&/it2P(Po&=rHM[YY=~ ]tQ֭[?p8cǍcY] Xv,//!!acNҒ x}d+MKT8[V'$&1 KKsU ""@#ktKUَK'Ed $OWw}OúkgϞZ ;p 85ʲ6mzph>e~KL>s*WG"^K⠫Ͱމ(Ыoj-yoPXU]d2eAoRl_rŒڶmaXYY3#k'NMa["""<|ǽ]HM ,/OL߻Ç ѣǓ'O@ 1R#P_i]zFwIɓTuPi2H=-pYZ|jܽ{;q&|2Z*X%7mcۄU1GqHAѨ`FWċ7ӡC}Knj$iXh趭[Tqrt477zP(Ա䔚$L6=^|VVƍM{g.sΒYt0663g:ER#pL H M:lXmMdÔVB>(C<|Hְ ΥD|ĮNqt&JE1ߌxr$$`75<|ڈ @B*P4t:]__k׮#Gb0Y~޸999oG-C?aɔ7 4  *,(@rӧOR߹;' 7_+]H6n܈.VKpA]m-6D|2oRoa)8D"T$qN>P2Yҿ"/eee}nC>) R'EQ-+PB@@@L7NIa)P(}# CԜ% a2|=6 !~E=//}5@}WG5Ct4dKq"1 E Af ׿o B@@@@C `""Y]SZ1--cۮ>ysA888@FF¯ |򏮙@WGZTBCWW4T .YAcs fyJrIZ,\"D055gk3|bķ3fZz-e72unpbyZxᵫR**ʵz=g,;=}FddZZ"kf=Y $$8`.P^3|`->z}D7m4??1Z6B:VwSTmúbP;tqqhj;ibk [*~zBI f=wN:n8KKֺZSw-N1c|YYYYYYtto:dP9#7@=xxx0GT WG!y\TOOӫ =<f h;W&MP9 88814 eYYYPݻoߟ}}8y?nS6mvڝ$WϞ#Gvvv2110ӑUTVČ1B&\|mDR]]]oZz5Gꈈ: RgTTH$F'?Vf |4+"RY԰ژkrJaaaNN8!٪BXYuϼ󴵵`o[VVVaaaq|ʔ)Æ %Òvf%%HKK# \nVVP(  u,,,6m4b{cbnXTpw:uO2UDs?īEc8-r=_skkxR”G ]]LL,O?,k׬IKIٿh4Gm{LJ8ljbz'O :ԡ} ~ ,_L1''gAA'{WNIIdf233qmq"iiiii4*([V  >Ç W'-=vl֭[$)ŧNJLJ8~.ͿWxyUmGyM,84suVhԩ{e2 (ܼܰggϞlvO~wȴ6Cuup2r.\..-PmpB=}'N+ڔkiiI͝ G&ݻwaMR6oh7"l޼yܸqT*o߾CCCHNJ ~={5,**䩓2yrUUUUw߭--f +W@OOOmmm bm#?bcc2\\&NXPPUXX8{~,R޻ 6mիJӧM?TITMؼiӐ!C M͡CySZwfGG]gutt/%8l/\/4k5e; AJK۴5$<oU ,tpphӦP(,--̌xCк444x %ԙDBl?>FD>_ܨ=L:@S -FVSdz7xѢݻwyzyy[=jnfgÉQQQ۷omlNEq'> H$df4zVϟY kK$nݺ/i:JJJVE;3PXX hg/;bviON3X$蠋!"˒sw#flDⲪGwҟV(~NrrAaaNΜ 9r1BԴ4i҉'SRRV\1`s椥IcX۷osww9qiϟ)ьpB'g1c 2jԩܿ-J\w'Hg! -QQBlСCJBDDD۷ڴiFFF7]ti۶mm޼y454 QQ7U(w+U@(*aXBԤZE7{V&QWJv3:.#jl6^"6 Ӽ[O *q;575=~^ɥfQ!11x"u .]b|˗?yDFf˖ׯ?q;:zѷnq܆ǎ_tIۺe+dXPX\䩓seˎϜ.--ZY#Otzxx/})QA?;CW/q\.gk\F:O=j:d~ 5xyyAsU L^nۻGlΝ %5U:Q!v+;ܹ#}Ҳ#sGCCc͚5ٻ<\G Ɵ7?Y. UtTHܹ3+B"ظd9s~$ꔨ SSSxwf./MvU+ࣀ]]iYYփ' M(E]tPBBT ȋgOl.R^C~~>88{i၃FFF:ESFB@MM˗Ϙ;v H)W^K^r%2*KKK ?v8ܻ{6s|||jjS"&Nmv]]݇n߾Q|f ˭mǝ\1-6}׮^`hy@6t&LC=Z䦦&HTYY%yQNj/O 4JHx</>^`` ܥh[r  wܾ-n[aTtoj/EHKP@bp9cǍ337 _b $2yj}bڴDQ}кLfDe%WAmcH:Lkb ƁV^`wʢP(˾%իQfZt&ZG61]2 .;n7yĴ_U&crRrrRt⧴pߎYFC رcU=zܧΞ j+/#H4me[lݽkN{{ؘ%Ksem4s欨b"2%*Tɗ;uԄM7+i7e$ɃR-F K)-kd=xT.z Feh5UUT@GS^x\`z|>;]:H|F})z ~9q :F0kL|%$'$9z|j*طͼCy|~zZʇSCC]B_5Ȍ5|mw[IV4A.];wΝ;EEE<]vNNNs1onA33S>}Z&JgoF*~ AS3L1]fHRr2J\v,B9aa7" drϞӧOܹsL&el~ ǎ|23YYYILLMU-U IDAT0}4y ILJ ذ~ŋ>ȩ#fvvv#G]44H!CCCB?~{Xn8lll|G?p ==Fyy{]Fh3444͢BA-,6uTU! L,9@(oo2wtx"'`T_UBC0ODbM\F֡[ݸf hy8%sJ$6ȸFfS\\|e-x)̌۷oWTT3ʲ|?sv >3+(kg4o޼ں:ooҒby \.ŋEB6񓗽{:HBTohҎLaaɓw8suw9 m˷iܝ;Ǝ1qQ٫#SlddddܮۉG -+7kCQ;(򺟝}1WW7OEKKxx(XH}?~|.](={ΐ!sssqW3Ĥ;w0 KKs6իg^=9NccS]]*T E(iBBC W&!ӧO'B;wb+@y2( L62jyw A2h2LQgϞ}… .\اOQSS/S)zF--)󯿔&oI&رcժK,upthۦ-33׮_ Zb3ll2,j־udHw }ml<Q`0 Fƭd(gdJU2|} /Wd`oM_DݺucH-`oׯoqPM u%TCS\WYb) aWuk_ Pƌ4ٰ۷oS($C<*Foo!CTewHw*WmkW>Afݭō"-!S' m%usgϞs'Mp9s-mA$))Jzyy_ק߸aׅ<%fffvv#GG=d2٬&#C Y,[[|M@80$,9QTɓ' ٟ/fPPJea)a)P(^=;ZZ--3KtZ#ɺj/L@@@@@)y갔^naoe03u!z{_$ @Z{pt__zoY Fބ֩ 9W\[@ Az_T^}Iurr?PRy࿣G}z+3&wwq&M.W:V@4ڷ4PZ^m[uhOh4*Wpu/^\ti]]-[FECeeelLd{$:@P]]uɂիW=wN_OO^UQQ(]ӧFFFEѲ#•</_¼1#y־JFGZj%W[ ZB!TԢz&M71֩o(%\ ^*yE~w$=F'f͚xx9}98995a ѩSqSaMQQl߾Sd2Y_`AXddŋ}||\\]Ǐp,KrV|\.wW0u555z\СCQ}?t{{HtAK6VD"CxK$$?5ppppppcۋhRYuFebjJ037ojb5ֵ(&۽~tD+*j,cb5VlXc.+JS;]9w?V a7fޛYعy3oܹ555;wP\._d޽{SSSE"D"INN^ldbb B<5?2,C>${Usaa0k,zbfn_N ֭[aÆd@ ޞ;n555ʒ֭x 0#ccWW BÔetzJ&SwhwB3&02H$2+` #^W\*gx۷oϟprx5ضukΝߩa֭#F7oU+W"%eooccV-[@jZWٵl%Q!PA'pM]AaeE%AEIqћɑ/ʧ j9ԵN:XLsӦOիWSSL_q۷?W)>5UUUbALfyy666eee2 p/A&1ٳflڴrW\5{#mWtrHs(\.wvݺb[>)LuuJOJLԱG0:@.}x)))ΝOH߿/dfe_~QXPP޾Q<2glz F_јRh@ P4Cc#L.333'Zs^]n 4ycֱ]ӪUs 69Np8mڴ;v_,L Em~wwwHBbŋ]\\פu }74hkG ֯wrrr8trZkur tO?8sػ =_~ 7w{u{.|СC#t#l6A c2ݻwoҤ F,//zeW.$%&޻{w֭XիWu9;9oټϙ775-ZjX,.-)*IJiOƶ>~44um #[ֺU'5DFuf1`! CBC8Ǘ,c~Q|yhM[  tb=Ny*5瀞omcit3i: 3gMuk\yݻ'$ӧO.\Uĺko޸YSS#bbbfL^k{bqUe3._S\._hў={^JD$9%K`ryMMMbRҒKtԷź}E"Q5mjִI3snݺiӦ200uVFqQQIi髴4rƯ^0Lse;w{mX̛7Zm4.[L.Y&$$Dmm۶B5]&)'Nhkjp㕕~|rZn .^LJLTh.eРOD"O%@;A t]@ ~ )I*|A-@N=ueXu{3'Yӏ=XBsww?\||sʕ}̙ӧO[ZZ=kݛ0aܾyN\ڵk#""W ;wǟ9sUC3v xKNn/W6rH$I-- ^Λܷ<^nT˯2nV-[|25ubCnժU`)))u 6vyʪjL>>ʒ'_x a}}kջIR,vP?O411;nќM=|;4k2\,~xڴ3_79T*JM]n-ؐcnj%K *,*cD*]6}5 BBH/oŭ)9-=Sf>_CB`Ё#"Jc1Ggſ*nvNf`` HsT̚Z[[5377703kdsXlv-[n`*vکAlq .K,QE߿`Ⴖ1Lmoo{nr~ᇅwӧOש-..N&5$enn>`W<LjS:uju511h6u6cƌ9yꔺrN>=aℶڱX,:nffzQ9˖:ťNX֭[3K9l|/ڿ6VL&PsqBCꚟVU7y%A|k7;ͯ2564.<:լ|uOɓ={v8-rkV] ۷ŋ%+\SLbggg&y}])urrH$}ebqbbRr򣈈N:U}/@>;\o\nff/TTVͭK3%Y%on(M&Me77m ' **jڵ~~~_9XY6n qQEfNNJ-h(j E%iHAʸ /SW4CnHضu[tttRRRLLLb?p\{λl6{РK,!{t >]& rݺuYͮ{uVLVQQիx񢼬¢Ys rTYha;iҤK~~_O%?~9X4"L@Mku4 q /,*BZjbD,VZ=& /f͚9}ڌݺrܲ{:b`XL&3?/uرc˖-:tHMMݱs8?W^Æ MOO۱}L*8p MMM={̮].Z8vvvp76hOyTcѣGCĮ{&`::`0&&&&&&Ƃ Q|#PqQ!JhqT*YLfǎ7;F zRv'~L|2\.w޽/~E o˗ku1˗;ɩUSNU|5772eU0aBIlT;ZG|\||\rez!KKJX> P@G E48 & J8\L./J',[ZYVViڶmbY>}NK5Ag0\-[L͛#tRU5]`^NFܹɓرc f,{zN1*E&JK-ձQPP|< AhtKH2L`0t(8N!r%lld"H/@,Cn)0\^\R rN`8Gu 1TɩxhߓdeRp)=#:qBTklcP >i'  hFrЯ:QYPrR`'Py9 97 A ҽGu)q ''0)(((((ԁ"~R(q ?Dw (JL r!zٟB Ȩ/7mjUs欙=z̝7LQ'A#}uTGGAP4:Ng0 ( 8K%b]y͙3矵 Yorr.]ںu[tT: ֭[L&}M|:>Mu4X'+4a뽼t9(A%j7gAȴI3cS3CcK F0Ǜ={Nqqt>-'N7pvvU]UU]]ML$$$|3=y(BAh(JCA:OA8Nb\rQ%q\.JE"L*cT*%BIWTTYfĈ_ FպZaCaZ}Wl c@ -lڄ١(SP[ AT*00 J%555"K2ҊNgVUWWs7mrPL־}3g݋R\(^!!ׯHK$̛Le:"""pnףVׯ<ҥ Ϟ>jӦ@A~t%K*+Gxy8~ƍ&Jo=X::DEE jjH[I IDAT!!&Lh"(r\H1%b:&!5H=+D-q q 2!t]"3L%=-uE"pߝjI.Z!2Գgϖ,Y|Ɏ;3 }CBiyyo_8wq==:m׶vrH5d?{Z`ewf͞]\\L~yFeE###A.a'MT  Lр tƍwbc@,=wlر ˗-_&Ǐ㵶fn^U ׬n)S"#"<<< ""<;+ys+׭Qj֣^'Tp└3232f@޽\`v )1iX@D׵:1&/xxK, ǯg.gVKe}ӧOll@Jce곞h8A(J NpqAMMII~iiiu=̛@*ݻɱ:9ׯ{zx .n޼ڼ;#ݽ{vvvgΜQgCff&4h(HlQpHIVV֧N{ĉlF!ʉW *(-+r9 &:zܸqt6p9 11zuhHǏ8Pvj|Ъpokɓd茓'N(arW@k}֫N~)) 6oiG~=yСr7̬ @:tubb[Ӆln c,[#л42V2Ő(M*`(Ҳ9+o߶b1Um:td0>>+鳧J~lݺe@g}}}:ޱc[@tLTT?f8#"|>t@ Pܽ{|V,ҹ3ڵ+KppNKK{ *5]-Z^U+}mlLK  ooo###ѭ[;vZ4{ƌ&''44,4,,駟zt=i|z OOp{&G+K˓>"@a)89H$ĥ7nO3w65jc1$Y.VW3$y:ȗPU]ms, i^ɷbp4E#ccAXl e%e8mտ͙;m۶Ua_HHXn.O1*+/wdeezP%|R^x7=z_k |˺G/#G:t8$4tYx{ի[[ 411$Djt1^wtl $$&Ѐz굵̌wڶ\ZAak!!raFf!3<޸OEaD,KS,g塙YVJJ^;66vp-2]1fJzܸ~#44rQQQqqqgϞ=;;_MO8rkԩZr3z _xyoUU.PꙙiwaXMAAA׮vFw|7dȪ+ =B^Uբ< a YlBp 2F-$yU^Eui9O1`@UVY[Y_ xgׯ[;wLta֭#Ftܪ+{98jTNCDŽY#{{{[Xm[qIΝ;͝OCzz~{ p<=055d /ooTwϞE޽~1w!߻h*88GGEϛn1>>~i/_޴i]pw8|G# 4,_~͚)g1o֬wމ aaޓ14,۷ӦM# k)rppuL&kѢEWnZ+l2eqqqq>ܲu+lݪ|Wk;hfZUTٳΙ(ɜ3g we߳'945V\* u &ܿIok(g9~BhΝ&MK;hhVkJ;;;Ew9W;wںe+yRd2〿XXCfȐ!&LPvTE&ǹ{4J"#UVVl Yy2}iW5"9_&BU &<66:]N} IiU%tQ1%[QG =))O^ffSNrqq˙28WTWWpqȸsQq9jݺǬ|yx<?yfW7ׯm ŷJtT.^dKsu(qil`&' Kb&H_V`%@( G;kuxnիK/:xѥOMCD|Bػ\.ES~ʯԖ EQc}@ ZiEndd͵ĉM4Nn#M 2ĵ]NMMS0'Jh弒FDEs2Pe)jlŵwv^):d ȔcKo1L"x׮M>]]ӥdU{kGGGf2L'tbMz65oK7mT$OeyQ(;BBĴ,Y774ӹrgV+-ҥ`&6arXFF\dE/s߹$&&v9 *]JVps">*>hJ >=,1Lr-a%דs {sҎJ=9:˖@$?zT]ayezg={!]\=)z&JKkgh8BAAAEx.xy8f >mfMLMMMMY) UtK=Ҳrܜ7_T Ull[ܹ7y8cf׭]|PYLWal:yPԗp  )b53kL$wn)3 y_-A ~Ʈ((((( X& oG!uB PPPP4b0#sQz< N8@uuTz;(HOOAP@c}7?- 8]6Ϟ??vhc0ZR'#"K1 2fna#)^̚=]9s|a(a ܹssL.Ei4CG>>+ܫ/kBs3=GzfgQE#/\JCi0_8a† Fx{X[|i @%\Q]]=a7( D%ExQ/^Ǜ?~YY%Kǎ eee+W|BF.gggggg~'O7przeΝ;k֬y?x‚ࠠ`26 wp0d4Ω'7nmBN}uԊ Cd2HF d2!"t"x… **+[z@r|iiSܷO_3339<}vpPgeS\\ݐ!4%K8q8NNsα=Jz5+{h^^QΎ9CE} : ϧ~-h4 wԨ3bjjzj:8 `"@q"`tԴ4O8NF:޲e˖-[zVdOz ӧ2}v3fA. 799AtyއƮEdT$+RxvZC066qwwZwB8$4[by3A~y>y߳gwtt 5{l>YB"L 3to/PT[L5E z5L&!O aǏWW5 A8`\3/}P2ZJ ~7vڨQ0 p”)Sʕ+pbP|x5GF3Tu,^Xq˖?~cr|ŊII)Vl뗩?7oԫMCTzI`xzx.[ •%}VpppPeF37TA%>:v+ЙzG9YP]h87ZkHHH~^TUV Tt-0 r Np@E".%lݺ̛?m~*ׯ651lhhX.'HIJ:Řu1LAxO\p)##Cׯ,6}ꭂB寭[&/iCX\/5S6i<r3x<uA8zɈ>kԔה#[f=@:DҹW~s{_Gq;.88X. +x~jRMQ,Sk͛r9Xv!C;Zk>-$$xΜNcƌ=t@a[u6w--]1hР3f+#:xGbjj  h4ZV-G^ܮ\.&CY,VML5~T~̾R`zݒi,BJ Vq$`UV)7EPPiqf={ծ5ERl{]VgϟMMMX|f;=qohX"o^ǝ8~\OOjݛ7nTRg碅 iϞ=[d';vT5Q9S@bUT0tqJ9stFqTke͛,\p}]tOG'O߯ڷ 9mwS~}Bmmm322޻;S2۴)...(,422R'šhժUjjsڼ5A \6b%rrD,>C8"P) B 2tЂǏ?{,;;{С^qA~4߉8i"lٶEP[7o7o mr玝=i;;l}}b++SNݍ=yDfffS]\Ϝnl==l'Z-L2P(5)y غuKNȔ;lݲ;:&zܹw˻t ]v]bK4h}6gExDS emcm%%%;g.J׾Ћɓ'e2GqbԠ(/o/LwKڵ~Ν+WLMK۱c\s'vժwoF 76.!G[m$w7#G&''{yA!$(N>*~ʕ[6bL8GGG/Xz eii/_|2 tUjsM?>..ɓ'k׭Ss8-[i4Z]_:AE@4f-+++*yvˌnor3yo]X%aaeU]dT ݻwGõiΩA1R+E1FN믪@^~>CޣgUa^eߒkVeEyΝ6 ᣇ}=RӦMǏϞ= cǎ{1cRɡC/_cǎ>{?~<444"""=#`XZZ㻡ߑYVDIHH`0/Z4xu{\ Pܩ9sssW8LFԩGoss1 311ҥwoK tx-4ҲgC3qA$'' &fff_=͛rl@e˖{xliի\L&a< 66C0~*2,>>͝:*+b1PPAW\^[8-@ОG.^渤mZYDm}&P_~ƍ~֬۫]Uy0y@Lv'&~-Z,S~,JH^Iyڵ@\nff>uϕU...9o^+͛](RhL&ʒ߼<K>} 6\pAaۢ;w[ Bڎ{#{v7P:6iO3[TZccڲ[W'OJtM>J?alZowww߻o{}lXάe/ҺUW_hӦn+K799)))}%SR)I|;lܯ_?r=SY "!1!=.ۢE)?O>$utt_[[ۉ&P]2~'N D PBcWעG5lk49pH  ={СC>{Ӌ,ӲeԴN7wnII񎝚֙а*9}Oۍ3f֭˖/9s}ӦM1 +,*z|Ǐ;;;ٵ{ovd'd#ǎ};ɏ߿"]Ə/-.z)Z%c};rʰApWGÑ^TuŌ͒֔q^r955m,Ǫy=L5q ÆHMM ,A>:*zyx)AuY 1"-=˛6m?[r! )߯_̝;>+ b8T#pzYTT(ǰi)(LkCӨʦyqY~~^Az֋=vE(U͛xyfĸcƔ_qC. 4ps.YJQ.vR>#ʪgÆ ##cGۿL&eѢE\j HBBp8pŞ!zrsw E) ՓQPhp! $$$E[JPTR\fkk_&u;~}4mڴ4&޺U+HoصKg.I u ryyEˠ;4(((( -[ݹsմGii(ر`2ffzzbYZZ=FXSVZfkTkA (((-X,&JcX͚Y4#" l6f71vPPPPP4:h4: {пz7Mf"t::`ꗁ"k$\CQ PDr oFCE: % (BuuZdr 4I"_eؑ#G̛[\-fϝ{7v0aI"H( bjTGYxH,VJxR6[kBXyo.XXT\w«/B}Ϟ^^Pm+uox_Unq7namè}yp"@AuuT:yd2(]A(X [paYYْKƎeeeVzBF.~xg=:Nlڵk! y]'wJ_CTү،ojɑ: Zb!d2QRw Ɗy… +++WZ=|0+||~yj>}VXP2*,,,*2jqL9^F*:+NGQT&iեg/ZD$n۶qi1}͛7޽ bffcnj!o-YD!e˖:(g޽M ^ QشisXx"%//ŋǎӫ\.ILJRzm۶S|fԜUֽUͨERtɒ)O>DLHHطwڵ] ( E<0S~2ǟ~:qϯ%v`.[ՑL&<7`-\P*޽[,ӧEFF|JSs..ߩrKgfdqh_Æ0a ”{[n5on!!wbbwT7;ׯϞ=jVW.'&%qU+Wݾ}رΠ4QYY`aTۯیsշʺh7r@ʓ_ߍ7n0ONN\Y ʬ&EAEwu"ś7UoՂFW*-.(DyfʔN:)bqvV_S޼y, w{.9nSMt ٳSADk'DpTj0wYamef<nҡ}ann|rxiW88+>|?prtbXo"##}7m>}FEE)pMؼi>NСf__jVPX|ֵcIH_5ouosU3joXx)p8eK <,\se)Ӳrux\L&Hj$R EQEXvwkGJ¢m͝3{c%Zggg]*O |fԜUֽU*xg'gVV6 5UVUp9,H`ii[TWŘL"Oئj 7_}e˖;pľ}ui9997o7nRw>)w3awHHț ~N>$4 "p3A~YӢ1:8p`ȑsUC9g&ieeիr{CQ|*O Չ7np:ӶM䤤 2Q jLhV-[jٲw^'LOH$5tuVgâ~ff4`@QQ-E ~ID{LԘQ(Jҋlc˔J]{ٽss9s9annV]]#JMLLW{ le _Xi>XD {PIRu&&fݺ3hϋ=~ܬa;;/Oiӣ8Ap"EU_~F/bUhh||”)48ܐDQTXؚJII޳gOs1nD"#.{>*.$$D$Ξ={%K$%%ѪEQE/,h.{wo׮[$`I-gTzzooȻ֦5aaC  rװ~BdG;wy@= i]~A+} 虴ٳR^eݪCn5oή %9ejIItWT'FEq̝w334u֬!_-0L7Oo#Ljl$tl{}` 3h7ww(,IIŒ&=h +s {6 Μ~bᇘ #îÿLɪU9֭k6,KJJ""" Ize&L c?ۧw/䩓8+:ujCS*p9NEy6jN8JVBW'(&M!!!磢 PT%%%NZ`A1sbXVߺ}{ʕts1ddd辞~~^Fݭ:^s_>)|sܥ8"66vp;Z/AtM:$-䔑IꝻu u˳l226ܧ 7d24oH[ix8>BB}$w~:s ֭]Dn͚>8>>0D"7n\7n7lyp˖ Yl][LzÇq'qz!b*֭[iM?gŊM~j2$+WyFNNvxE1oG[ΐ֟9}7[i0 EEAtn!Ս*(5dnbjbѩS7kwNwMMEBT"dJUcK&&LֵkQ}k B~Q}n7 g86o?{ƐK2i,[v|TUo-)(}|qCfxq,\ݻ_ _w^mqV@z A Fwv{WTUJ"$ըF'P$ 52گPHQ.5mڴ)hiPݻK .͙"n]8/ȟ;skkG"_ o., c!2@QTfq SIJ"JJkܵ,Uׄojkk&Oy\?7c߾}ee!!ˋ5%2, ? ct?{lFzFedfq<=-]23̅ex^`, CQ C10YgzXHMQ\\")2$WX4)}sTT|e211i^J%lmmΝnnnxyEEVffTT¿ rxٴS%0ñNJOϘ$IzF: 4U!"cxq8s ~#͋Z[[>sswWE:pb 0JҰ#Glñ9b ;v/hO...w^PHX=&N]^x®].d V#"#.\XRRUy IDATӦNeX pㅘm۷'$9xРkkkPTnj! "&:NP{5oޠO>_P*XZz>{l##8IDQ7o(:g Hxt/;o,w~\S0XArKa˯(Pʋ$nyQЈҷK;w%2lÆ:6<?W[x/5zN/VsX,T_~@T*ʂݻw-]lakΞ='/_pBX ɉ$;wr@"ܻw JRw$I'g'Z@PPPrJT*U*7o =֬Y6#3C*juYY١ÇeRw@Nw.H  RٳGO++>}z޿S"pp0733jtڵcihhXxѕ+ B*9sfujOбP E1E1LfA8\ns/(A IhKKR:#-,,&mZ!kJGΨTFXZ#Vi$pFN΢Vvq|zqu%%Mʛ? WtֶyÂw Пf@̬LHlY9<==="2rg>ݻlɽ枕EM}?7]GӕٳfpQWW?_x_aO ̙31bmx­۷>pO-<}322};IHNܵ uMо)˗EvС5]v]w^yw^f?cb"`.Wdl֮{7[;lvbeںy,6._^x-5U"QYYy qARb"^WT, h R&!\W&n)(Ս|[IfHutP*|~Ntjry+t?,d@w 1.@Ȳe>||>3ziRsM;;;~!{:rrs =#+;:U8lKKe!l9}4]Ȉb9:: d8hdgww7psst{***֬YKQ}mX;דXBYlKfeffqxaz ABf*e~۷$IOO[n8=-/bT /DҚa9E8bsb}n=",M<|vܕwr0 ??] Ș蘒bN@ y_55PRT71 suq 23 0͵NhT*շ}'H 5k泌Z o& ls$IR$ $E@mmmCCH$*))111 -+H}H$SSF6xkn+7I-B&x7a k,++۱c獴y X2WCcc'$Ts\g')S+QoOرcG>ZI._h.eXs1s "EJqՈ: ]ju m۶:q4D̬,5pͱwp}-O<.ݧImB(3ƌA/\XYUU^^اfϻwGDD4W4=:ƽzӍ}ѱONNn̅ ɩH#Զm򌌌B_aسy$ICCI$EQ?xPWWW[[[\\V9A$I6o?A?e[-meڵQ RpcǏ &&%* Lvٰ5 oUT8.ɮ߸|HcFEGmذAla>OPh$|1΂o>jgidIR p0 S>],zoR钀%sr]P{g3 8G[]H4@JrvaRrqݓH57MVF&XkJ_E`8;z\\?քEGE%^m@hA`97Ww QQ'Oe˂q,666dx#}RPzj'=T((")$IDT*e2X,633CQ >}1sػoX?iӦ Ѿwh,?l!:**!>p?Akj5jkk#"ӿ8xPmmm]oᄁE  (((&:=|2qҤUBsrsׯ_ʃXlT&H yccXTYlvgcwA H[Kk|}}He쬦Z]YYy>*/WXhff:iҤ>#++ŋ^MHAs=M.) Bys8MnoCTnis]m qvN-[y}ASOS8.é(/q&C2i$ 9UU]MJ*))9uԂ-kjj_Uee0P玺{m'3whC'<}= 7!CGPP C E\_ olXrT]]mffF/`6oUDD䍴eeeeu333вx;9=lA[?81>!56<0wܣGݿ.OLJe˜)88xҥffUUWS ~g#"Ǎfm 5nݲe,NKCZp8lD*EQ$I xAT)ňw eg#ԽAQ1ǏTnMܵf ͍gV]_k$6cHH[.{sbxꔩI)YY߭^m)c9rȑbüi>ZZZ̜9Cv7UTzVff=z,,(':xoȐ˗W\A4p5oG[ΐ aAk2.g.:oi;\ttLtt<)1}c1 cJ4ӣMb( VZDΝb\.733Wgr#O\Nܹ=zh $c_mں8Ƴx\3O,gPzZbR@ ޽s(*Ur0œE)Hu641z@QIE0 qBGXrBr0}=ĉ[C HHtc`````蠐$EQԛ`BS20<#87*jzX[[WO!(Jݻ-|RL#Z- W+KEEE1,`2@p'Hڦ\.g8E|.󰺆kԿ4Ϟ5.T(ONHH(,'Jy<1c9;Ǘ/_z횦fFfFFf]Z3 [[.9sfk:uJP 򲳳;|CVTAAK325%W^ݺevimhmB GC޽댪{K@ysV'kT+ aas9 ($Z$`AyPnN\.pws0~|6>73ccH q\6M/$%J0&@7o4p`C@7MIOߍݻZCݺv ]ݻwa4?碉0wl/=vyZ9z$5@7Æ w:ݶ `͚93Rܱ>S cGg3f2D#Y"hٲ`#1)1|sxzzzDd>;6tˣ * CA0wtԓ+UY5"9z*%_3:_?Luߪ._^x-5U"QYYy Ll& , FFF"ccc\-olۉB-Wd2DMJhlv?g`HJNĤ$^>:0|NMn]ܹshYl&&&l6;lܸBtku!1.%U\Co1.҂|>KBC&py4@G퐇#b(`ah+ڏX r>V)A-Jk (‡5RZjo$okM"e?qE H;h@i ҷ!)֭[-^xǶm={>$$T"115K4]]\4]\***EkEn =zo@PinMJfϚy-55"2oX3ֆo%񴯩k66tӔv:"(JoCC$RW?V?lxIIj=BQZw}ko0SSF8iIIװaFjhx."JGx V\\ظkϓL;fL```Rrz×bcM~؈vٳgymD&NjUqNnZzpiε1C3E[woߺ'q".@|}} ?g IDATHeJ>]xqTTJDMM?'Oϖ\ol޲<zy;w8~ΝpRў2>` o9{X,Vշn^rކ}GϞR%'XXXn^222Zv}`SKq BPn[:3t퐇O 4Kz+ QE0"I @B$pq\Vch +~~c"""o(-++-+=|[EZjj̅ E̬*j}֯_ߚOk89K׆}КSLMNJnnnnS<}k-  %I;m#1.#vS>tmGV9 alEk: y= < ETW' 6Ę(yc#EJz YʦNflbrYM|[7on۶ϟ??XJk323.UWwoAKFÒbK*4w: 'Oqr IkJAP|9,JQ 5$R6 C\1OϞ=a77];wV\\{GO f (B-x@RH($)֢/i XrfqtTT;woooݭOW$K0JzӦ3zXCu1ͽo_'AbQA8"Hfy_XwwwkkkAݻ/ӋK:M,KO6}@E%&&aSdl,nhpssK&Ma㆐swwܩAUUUΝW&[U;LIIAd)S*+p/x2%$cDr%ʕ&=M $48Tה_w~"0l0APanUT)>z$@Q!YZZaHd,˪*pLa8fMzmROâz55jvet?w=nݺ6\}F0bHʊ6(lȜ\R{9s 7 ]?0eŊV00m` -亓 BT(UIX,EZ j@PB.Gs2Y R`oEDgaff֯_iSpi5;;!J--sC-҃[0 jccy 8G.UUV>KmB:tP6~SV:EsVa>$ EQt6 %)awrݷo߾}"SVV6L?IDA77w77ty}KA6 oސX,D z9ء3&6]|0ן:c``x{AI d!g, q`z?j|c fWM@m( £T000000ZU&bTU0e@QT]} I&_Cv́Ğqeyh}…D |ӡ(@ADKa`x` @T6e$ *5 1ER]y0ҲҀoϟ?{֬0˃Xvv!A11c/K$,u>~^/CTstd>ejhǵ E=YAcY >ǥ(JݧmT$GB)..& 6(0hOZ~##vqbq/w޽p^av<<=|zղ08(; 9Ak av(RtRENCo6AxEBP!Αhibe$I9أJ @ 01⋌*1ipWX!ÙVW0f&!˗YZZ̙3wȻZXXQYQuW+K~ lСCccc/^$k}SA EY$QWLcogCB(6“98UIR@ 7j1|s( KKɓ'>E1A$V(,( JaGf#BL̶Hp?{(/ر}G|\‚B)/(w}}z^Ì<)V_p W#"##}|\܉'|F8~_Mhr:\]]ӵkW{),,j i(`ee햊5EQPEtl!GQѣ%yyy99!Ԓۗ2~ڞWS/%$IAe7M9 axAE/JeRNNN$)ʀKR)Śf9;@Rr!N> k׬422bXk >!^e!ZWWsAT &ZgÌpB-|hK tk9qdٖB͛MhrON~Iۇ^! EUG-kbt&AǕU[Q\(0Z3!#306ԕ#"HDmkC!$4(7'ؘ ۷oa`u~w/ޱm[^!潋+WRU>+++@a; bXl0KIA11%% P[t5E(//oCz+ag( 3ܳq=Tj\\SP"ɒ !_e! @4 7TLM=\t)*:޽{Jʢsgߟ>}ݨP:x(1)!qtG yNKLk &,G 5P$i$ Z H&ƹ99$%gXUCl۶ձ6 8kqz{377J&&&tI=ӯ]1$ ݻ#""juC.kT"N9ɔ(Ұp6#tajKC*&]碝|1.EmOo޼)pcBr9lݺUU8ի^ԯcc.az eީ˽u󖉩H# KK$ׇV*. Xr;'gfeiged!*F=頏(⯡ôII`gkϟ5aaQQWDG"M'mz[9UU P:,ޣlϴZ[B Cp @3MkCttL\||.VV}HS'wpj*;zm~G0㉫VYaذ^ A8.vVQQaN!!65]"Zt%<<''99l= 0i$ 9UU]MJ*))9uԂ $ӻOEE_|yJǕJN:5 wl w)NP(͛`hn8.é(/q&Clrҟ4"m BsA-C(-ҢcAC' )eI/BBtt4}<~ݫX1sĤ?kffZ]]v#M" pvvo_ȯ?lmܰí[̟?nEo9c%@i>t ǏWT[n ^ӦM6wkZzq6iӏY"//oӦvsꔩI)YY߭^)S!C._^r]n+]SZV9GEEy{fz+4'-=0;5:6BQik@s88\L2IڅG%5slo-]~C!3oEd!_Ojut/E"RJO߆5AԄJ+UjsNF& JV+U*hGO>YhBXru[Z8?H-7ԋ>Մ♳fY=9vGfju衃mmm_, ;{n$L.Dl s$JM][dgg{'#=cĈ´txbIlTн{_vﶷZ'\.w{ })'6cfaa᳈f@QדSAgϞS[Po+>#g"Oi 䀀ni|}$r錞{(Ip/`#cbn:N ߎÇ }OvMT*ýi4 M O tuK555AT겲QKU32 EBz50 {deg]"_ϯ#ݑxlL Q3/s%B;N"y.… ݽUK޽pa:EQAQEm%+ ,`$T*=GS(;6ʕܜ&^w0 11qŊv8aaNo,FZڍ4Ovƣz `Ĉ>>>eDDz]10C),nH (JST2'p(@\lTTo (EʥHuqa?lp+5O&5`|Ri&v`=w.77EQkk?ԩ37oeΝ-O!}FIyDqwT + AM4Q"Fɫ $bK,ר `l4i ";" ]\crpw4Qݛ}vvv晙}v.,iZ("MKJuuR$H"JUG\|`zzz0d|Z P$>$q$xi) ==-Ť !" ګxf8A$IR(c Ø(bPeZo6QgH:6C/GQp^~ $ [:@$ ta````Zg@q\j$$wTC.|uݸ8#B!PBIKN; )( ^p %$E!6ҸWX,_(Ў:WoA( ')BP")_?E)eT(ni(JE;j) $A 8IO4u@ (<'c```%@{000000Яtǎi\.pWho߾,i-|\\]Uwx֬qt@Xl: +޻/ x;-7\gOeU_`|P^kڵ8p~ڪUL`eJffǏ߻{3;8t`^ ۿ/zмWWݪf;6>>~o5IQ(I ZasXlZK  ^F,$jdykqII=H%s+A=<[ L:-:s, IDAT&Bt/\:ujgo޺P(hbQgKKK9Fa=|}VN}$I: NF^jjqSQ1EEEE cɒ/ͼZ5Ti:\eMZZ{SlllB|¬ٳ4U$)Tb5PeXb5Om+~CzEHccjh`˘k@?SH,iu .vIi@.D8؃+}$[lvyJNNffQ_~ 掎-%Ƿn?P_WtٲZkq?@Ĥԩ~~+Aq_fMkʔ쬬,/70(0%%Ucb)OHKK;pP(*Lt2HecǏdv@V&jי^!@R:4uG !(0P(I 6HenzF++{^^>1bY3vv%VzMp1[ z7 c8IQ8m 43gY۷@dɿ,p…vV<{,?]ں{^xğAApk+  蟗`nnLblrCYYZ Y~2<5@bŸqǏfgl6"##cb-,,W8:x;wuѣ,]D2皚пz6ٿɓGEEimH^yuѐj~n5k9k +EQoSDbAM̌{Ap (@tȡgILH۵wS(bqJjoO+pp1'97Y!)LT +@Y.hhyN* |.)S Q0uʔV6ohfMMMV[nҧRRS!C!Ck).R"L6={\]\\-ZLK@tt ^=c 6=|ذ[f:`('7""7ntssD,>8(t'5V<.w ѣGZ/׼Ӱ%ɋzӎl@ޫ#qt p@̭7)㜽o/EQ~~&ObٙYa:^4664f%8PPnH 0}ZWZ45diSw}|=v߿-1k+ 8pj)CDhXXlLlIIT}yۈ#tZF'''''' KJrrrN8/?z())V`AA,ZdEE.J@Y/ӼӰ%D?l#`D$IJeO &"V-bHd:Bwx{{ϙ=H$G\]]r }yy9iWuϖWh؇ q]T] U^y*³6Q6Qhc bTˤzz sy" HTwX \*;'[՝;vX[$&$ҧpq=#=-緝ӯ9|o鰪{Vm-A_OFDծ^Zk5l6êO M 6 2% XрxoڴgeȎC iUs׮]AQQQ1(h̘1B{$Y ⛷n)7oԬׯeSD$@sS6/?reZ󧱳G۷cG:cJxqtk i&)QU/7b8AQT\HXxXvN^PPŸqqDа0HMI??ؘCyJ(5%V 1ϐSL3κC?QUUmeeuࡤ_]9w9~޻y, qq{72g7n :p`~>}B>ER&M:oo5&__ߛ9?"Ba|||||@ hU@&p8ee?Yzz߿CBB*FOS,jӧrB6ϷޘEhlh>}-[<ٹcǒ%KXa%|!ؐ$I}E%G%<^.WPVNv(O~~N3f̐;w_ӏ?:99|ukjK4&6_.Zx4/ L{wSCQT̙32nزu l]6mꃼܓ'޴iS^a0E )ZJ-Kǜ dAS# !IĖ().~nnP\R 7]Ir%ʑ~ڼismMPc޽97s6m 9~ؐAϜ=K1c}89/jYwrHǑʹ;xZS3xР/2ƍ1cǶ%<~[o,(q(MRDsS3^cccbrر.í,ua{ضmnW]AWlqVL2m504TPΟvvvE_~1 4h ͗X,*ΣFiX\UeZ/ټZ5ՔRSR?m]:V^+3s=Q{7nܨl끮[[Hz%lml<.gŊ#@^^oN5-woݾMΘ>>ݻw{]gx KKKQde-2(*ڵ`k֬Q]}=^mmlп Ær1l`++ 33wЯ^&k׭}\.ű?<<<4_ekk;wΜ1| ;gMO+YD˺:LV/6yW]-vЬM8(UL3 H"N;ƾ;RSSo`js: NQTJJ `FP_VѣnjNJL \|ѣBrմ `v@gxO%KToi{puq-**aCr<ZNKKCaYfUVNli[&NХjv˗S._~5zeL:tؼ/ ] ((":k o˒- P٢ pNiW^l̞5JjZ͜WY jz<=''Ǥ$m DX{Ub :;"q\_vWӪ3L:5777<$Lͭ}"4b_-S\]]ګj"`x &TuZ޻?}SioS]1ex -E~f<6cB5%Y`p_tYaC<g׮aaqK=qTfVVXljj6?YH_(llllkc._*x'\2))ima|믾Z>>+u`/{wٝqḻXѮgQ^&475UVwkرcǶ=_EwĘ% (Ott{Qa+jDӪA255/Su1(x]C;Gcfal:3 *@L_ /73FB^b(a넁CQ 0kl3AEQ 0 Cc30 '`U:FiTP:~a`````zMEQLSڣ}-_fעfͥArɲe: vAnߒǥ}VTVU} Y֮UFkVZE(]/AɢBCU6ɣ!EΞp8Ͷ#tŭ bbc/_}b,,-G:8L2eСWY7Θ1y,APa`08$ 5w蛙h0Z)..^SSSGmW.\R}EDFxzSWWni-yƖZZY@}])>@ #ݠĤɓ&xٳoXSy^[UpX&77='7sGEukl6{ر˗ ĶEPac0gu<in32[\[Ix{ E"*A=<[ L:-:&Bt/\:ujB XRR666sfV6-!DroIU\.wfryY?)&&&""2/?Os D:TSVZp$IGn:dnza߾/ޮ Q>cwޝ|b}6yΫ ٹJ}+eȔkׯ߼uSP 0`ʘm]TTDQԐC~2Exk]p!77FFFt">}zI6׭7WY#.]ټF99&'̚=Km_ ((y>+1q"DOdL q6 ( 4[~viv+rPCVzm{^3z-.mXl2pvmKZz`y˖_NNffQ_~ 掎jbroUv?qn^s][$&$8_ȸBQƍqJ'N8p@(jSVW2n={Mnݾ}Y???]2LRRݺ4\JGaffݺ}௿k֬IvM:Z/E\\׮__v\X3f=Q$(^]~9ڷלX .|\WI zK!@Rfv^9O)=A_|iaay2SЊw2+8"'/9\|V(p|W 2y_vvyXXp–òsV[͔Ԕ!aa>TkRSRo'//ckaaq$+((ع{7c%ԪU07avLr'xM`ٻ쉎YlOۗb/[+\ɟ'Nz`hhm[zV5HeS1c}ݻb' lK 5O_&|V7n@ {q|o=zB5.]~z `c`xt9wF.ޢA=,灂qlkbf.722!ģ;J- MMI}q|4`6mꤲ yFUXs$2lYX USo1ʮ$FrvT&ZL.DEDF)SZ]ի'xM|>℉W@\l.262顡w4~7D"eooIIԪUZP\o=<d]c?(9GVk>]"(ygޘ F) EQ9(`VV6U!R9cqUA5E!K.,5ʩuq|V~s3SJN}L%uCğ9jI lw/_|Ϯ]9Bnme=!!1AVVV-eJ)nnP\RKVn vJڕ#fmeyŋZ^RQQ9OZu^m%jsRΞ9ӧO?~agϞi9]pCCVS$ аؘؒbLF'ֶCpssk_e^[K(574wbSso$o>|ذVN|EY164KI,!I8!'^ $@PƦUZƆ$%%qxXkpAyY\b<<<|Wlw.%\| fv6UN7=t// MMM[λcժf?s&@siA6(n` M1I&_אkІڵ~`iSlyMԓZ T?33g\v=+;+11qi9|XC(?ǻJ`llTUU- ;w>w? 5tA[ݷ/44T-W(P ^V~233]6yҤҶUHJOE+ IDAT#W564ީńIs>=;Xg%tnOOOr==[ 6v%M51J*< ;Ljw er\}V8rQegg=J\;Z颶V/Μ;ۖ)Qn{:@TTl N|96&FjE_N܁_[k/8|H]];zjb.ߕ8oذ!66V5Zaa,E7wQQ.Op 2VVۄi(h +>>^&|'<믿XaKQmۑ#=ccb}G'>vVvT*H$)))a }DEGWVU!KJJΝ;d9)hZ'=;&HbccQ=uԩS(*Hk6@VVՐdp9NyY?U 5&O!!;ΟРP(n߹n:]JnS0/<{lEE2ܹs_/]Ku1׬Y3Wiӹsmae CQ +lv6&8"Q|.,s<,+<ڲF)Wư /0)9i%FFWF99 w}QҕEL0ƵZVJPu%Ug6mjچ>B\tj POwK6<]1cL.߹s~IeB+g;s3UMwtt=٬S憇 ? nn/_MOӦM}{VtQ[+^?p#3#..i;cLMULM~Zzz\\=q\A1)1iϳQԔ.QXwƌItiǖNZ&0s̴7l'Wb?÷kO={6I?ˏ?$7231 ku K00CԱ,d 4M51!e' ~ vVҋBoeee0rǑ:)!Z]mݽaȑ꺵ԡl݃=酅AV_~-ZYϚg<_Rif# 1)\#Cr|޽m6ۥ ٵkgXxXlŒbAml&yO=k6ͦe>sB12_~sSYYMb/g!}m3ܾS[[aȑ#hhJbjjᑖP(lg`-%ߛ6Zz3gNAo/PHDa5]AWlqVLzqcjbBBBãcbJQ{f-,-G1Y qt7ܹs)~e=%R'MKKzJE($::ý?Kcƪi*UYV[oYݹ_  job{&-[faEܪ)+xE?Rul=dgydJrUUA>|%J@!C:xH==ryŋ,U(J٭[ZZey42'+[%=I*yfCW2llm Ӯ.Ij]nWuڛVP mfL(CWckk;wΜØ+fl tr//snc|%˿s^@T 8 ڎw8~ݟBB,|32Y7l{Z-mUGZ0F,[}=Û́}-iK_ C@PQR-WA/~" MEs?Ez^YeZ{w7ӸKKNquu)//뎲[!>|fץzZÓ#rIhyo[7"yZ ԡT fX>FY$I+bi~~q7Ѝ wמ78ϊj.D+UE >\bMhY ?o^!tlMR6{|vlI1('H9N)p{ _~?DDD|?_Ӻt ˧0000i)elaqp!:Æ5),BTՅb8CԳKc^}t˯5B= C46uDDqн P9miz ( (+ @.c`````xbzu o  hWTe`PSH rHeХ!_!tؒ}-fYMt/S52낪I,[ʙW#%Cп~^2pwh6˅p@( PJ.6y-I ʪz2wڵt$6kVZEw( 2KQQ_ʔ?wnss{3f wp|Y=KQ~#,m5Z1Y7Θ1ں ޢ1t)AΩj@<1Pq/3#3`VUq(..U~~t;]oGD"= /]Z{-= QQK6}y5:\{Ok(fZ Cw5-?UZA@,CHTAA dU5ۏ+Z1L{խ[n4<=cbcJK-唉^^QQ.:)1iI>t$IWץKX766d:ut޼,&f;6>>~o:ܕ|1t}R7x ¾xƼ:I/A 95w;դ9|__X!˳ԩӢcb.DG/KSl EhXh\Œ3{6쇠9>rIy*ޛ>cɒ5BOHP^qI |wzzz`hhV_ܸ]w%%%$R&&&&""2/?O*z/X@$(@ĩOEDQ5d𐹟̡HkTRRy6ԩSʫ>@.?vVYV 7ȑߒ\g͞ q?A// MMM[PmeR?~=byxx\VQNN f]VhRX)3ksʃ+}$[l5-qrr473/477wttT~~sg՝;v(&88 Ɏ?fbj2θqLmbRQ^~?@___CAARRRK/ϽOQƍqJ'N8p@(jq|͚5׮)TtWSslll=Ϝ9CsR877[˶Zj[$&$ҧpq=#C'.E(fQD[]սRme[__l7UUմXddd]]Z) kׯwSd(8WiՓۆŃYPR]5_ք%f"ӛcDnc޽+j}njzEqrZ"½:TOC>>+|2jAS&Wgggݺ}aaɓ[v5òs/] ܠ'effaG;lԞ}555Ϝ1DEEs _,OP( >y>7OB;hCjJ*$%&:xݽeӏ`a]PgDM)Tѐz {UUVVV 믿F177| e(LKKEw-2>͈a`a?d(\y0urs;{2rnٌ`CǛ!hF>(,F|2:j?ep!*"2NR&6"^=k'L\ b:\S%ky\G4iS޳ŕ>.-ڸqѢŴ*C fC +)7D"eooIIDG&1c>l֭[;VM5h?z̘ظgOJJr0|ذVUZ`ldWCCCܽ3h͛5T^^qc0EQ_狡CR?J5ʩz ێJmJj Æo`UКO;`5X(B1Q@&SN0ˍDJKjr DaػoAgsٵ%e⊠/o$Lj:\Գi|'2!W?G<&Xi^ʦM}կĬ;8$$&"0DR\\^@qIqB_􁑑HR`/qrrrrr"$''ĉyy?W9bxH(++XxQ˂***t:n/v:SM5Z0kaaӦN0駝)TUZ: pcЕ+WҮ7k+͛6'˿FcJF:nZ&2j+۲2hnܺ" (W$d'xj( I .RՏ;,_bϞ3g߾}b-aܼeI&Lnݺ.фXuXYE3"Mك(ITV*lY8@5@i).A> 9mT*Hi .,ztKcc#h0̮Ov5]<5,T B9t6|xA~wܾsǮO(TUZwΜ9m9s昚<.-ö.ٵkwnnH$u75m[VW:I {:}шQsxAKI745;ǎm p7m"F=H>6^X].!l:O5rwFb-MDQYpGAaY+z@:-*ӣ<{|.xӦ>+CvZk.U[ۂ+i=+Sͳ<.W*o 2AȮav.ׯBu"_srƌMdeݿGjZlml.\:i-ٚ5ןO>mm;h\77W77͛{yyy}YXڟv2^D˭|,--ZTTV‹3:^N"%695E }OsPXc-2_CjgA_H/#=DaqIkXYb"V1yr^& @{3f2B0>>>>>^ h=q=1!Q*JC`DZ>}G'>vL ++Q //OŧO.** "77wC` ش6bGHݻps;]WÏ *: \^RRrܹ%K"0y$ qBqΝuu:ݱZd߅tjU]Na-۹n'4{℉*[VJKvR5G񶳳zj74M#u<ͽ\ 3|>6|tbjDGvK+J&%'-]ڦi'.US,[Ú0t:W߾!qe/@Q6A 8,m,7em3c \sN?U?S{=kԴ9߯jYϦ5O:5777}XiSѐUOcS\ =,K&)Pa%σS~-Mr{6( YVӟr|޽m6ۥٵkgXxXlŒbAml&yO=kGUWUqnn_[ dff666vcgjjᑖP(ҏ> ##CΙ5aw{.%_R(orrm3ܾS[[aȑ#<_j`X!!!a11%(?3a{fJ CN Ïlhb''޽zQYYu…ڌ`#$dÆ>xgxu x"ӓke6GX>}zT}]!tSu?e14">YbehPWȊalS2xy'vٖMBշz&a#FX۞VMnC0 Y|}DaaL(432xD*v]ͼcO .z7׷%̛Z/W  AY4MKQB' 9i#DQCa^\KaT}ӅR^>{.tz6n IDATes8.i&frymX\ 3}PB!hYcfb}j100000tJJJjltG B20000t-Ʀ0d````h ձP fN200000j  (A0610000(,oc````xA0@P 銥 m4!AOC׃+ HMA|((E>_u П@yΨN~EϮ" <AQ@AO> &ODy"jʅ(IP@(A")$I_R¾.~]؁"qc>UU_Y<_߾fR /A0:E/>2‰g-*R٨׺6_z_T[_W^+"ˑAQ$ANin4h;wyCH;i>>555~~3g~R@*޹{N`A'Mdq =(vS|2к1I$IjD@c"V _oTG|||֭]7mtϯnFDDLSC1[3IHгTq֭mQ+6zzy%f`h7DDDϓdf ,DYz4.66$$$))7}ƒ%_+ ]~MB1pE;̜<&:zɗ.a,g>鼺ڐ;^pWRЬCAA@e:!,ܐ͡`b?kfV_oD  ~$>Ls>47oٲ]]p8c6n U?q"--BP|edǎ315aR???ح۷jRRoinc JoJ (`f`2t=%%Ρ_Kv,ݽ4xc" ]?8;[}ڨeƊ L}v\}]޽{o+###cb-,,mۑ#=555ӎ()v$)1&8~ğj<} s-۶(r|d{Ub`` A$AILS}A=}܌޹͖!1qTLsVRLK#""W \E"Ų $LX[Y܅t4%"`!FQ_|&W^cM&BGR- ґ"-Ӿ?F7+ KS'r{\=s9gx捛lp\CCU~ 33Wf%?iJ,,,TBb\"a0Y:ߕFƗ/_6x(QSR-`z36mu˗/߳kW~  yyypBEᲲ2_X1@,~~d$аȈDVUW7kU_惞~%"*t\88֎h)4dh`f[H'==}.]^_4_ HK)!ih@^^[IJLo/L(3G7PZ**+jk*< <+ jMe~}ZR'P3Pߕ+}Zn.c]?lܴi׊;(\\+t#q>}dee~옕Uٴ訩1O¢Ņ504^Eu5Iaj̟{NcԴ'vvv $/'00PAww~~ d̘1w^dsSOOIJΝ[x:]K$<۶SK WEJr<,V1Cek( 5 h=a׆u׷뫴t03XEqM#GΜf;SLH;w]}6E}Ag'={N0'6mG+WYUM%t\%uA:ZS$EHI 6U+̖L>g5.sYxhXhTTtaa!XXXp2o߾ظƫW+UIV+BB_RQQ 8sfǿd>sfϞ=ӦN[tI[-x\ Qv1ORWmݺu2#wqq޲e x8;t{wUWWcffjjgg7iR+-\~: / ': :d=~M#4 /_vq4o B kI7\EEպ7Mvm5p82\hoeںe˖IRiitppعccF'&&1W[3S'#)1Q×Owb+*nb`AAU8A5u=9,,,,}\ztxW^ E<$Nutm(-^C뙑~7V9(nӦMΜ= 1 KKO JII gMc~Uᛔ>>>qqG~>2fLutt?xyں׭ *TK{ 6HJ!E*聮1yxt:88g?|2W^ ~Vs' BqW(^V rWLo}}qFhh ټys[o{Q_WǓ{YQYsǎ׭ 2PPPT;4R}U/ I!I pOp=nSN=p@dT׋Ξ)'3W `藶ǜ@^ 6C* ג]KrMYn<8`_}u TzNQQu#ߦUeN6u4`^GOƁ$t-=F۫G8ڬP-wǤ^pH$ nnnm|~[`gϞuVjZj\\lQqO/mۑ|-K:::Wv)caaQ*ԡ Z$ +5h!$aXJ\==>r{H$MxP(dZXZ&_K:VV%ZXZX db鯎wvvrvv3{Ssrr[xi͛IIz7o׭ 2P܅FlxcZ*!RI#MIq p DcT,J*t*[ "2⟳.ۂbbX, ۤʎ][bX$%&&@[-}#---99E;; Tg!gaaay` ɑ55v15T} J\> dp8~ѫ;ŋ8!Cd^&HS8p ݃U6:,^t%K4o'Ա 9-+~Yy}o7wnǕ|34tƍVD¤Zf f͛+W~_% 2css׭ K"/kX X)((˫gƌO;7_hii;V+bY@p%ySw>@ ]+fhPrօAe4kX_fu'Ojjj֮Y;y;">.~ <%䫜KYR\ljf55 .]t:\Qbbb/_ֳ,YSU0y '+o*]T'׼$S$[NqE&kd=np8...+V(j$(V!jۤXkxxLq_}#"P4uʇQ/*22888>>'Lx-)^\\gwnc2kxwf۾;ӳmX|ԱZdjZ89Wxlb9 W?m'۷nf4}||dbw| .]^SS-߬b'O&''3ۤ;w_?k5WL{c#K/۷KظqՄK$O704*,YE jkw#omm 7obMkX^2 ' wf0mmNG~ĉ</''ĉ%.εcU]]' 'NWX[~0 PYY^^v //oݙǎ.OrHR)*3WLA&N믿rG/XŘJNFUUUhgpӧt)~ĉ*s33k~99/7ۑ766\cisJ5XN#bDC(T\Jo޸ɦ 544X 233KI;h@.~ͪ_&@KMWE&M/^:~<&MjQL[gnf._Os@ꥥ0Tnr_M7ȿIYm^ /(*5q[G&xw^h@˽viFQFefYZ#fu \|*׫0_^^РW5&O5#&OjCעVzktd}tST:)b#|$AM (W' ZY9~\$#"#css8SS;[ۉ&?x+PN`uYqӦ^+w_,TWW3Gyy/]555'LU155OKOw9)IOMoScշoyyEYYYM]suuݵkECMLL 223G Δdd4ڑ,{:˛:$1 p=z~{X|QZ/Yyo<&B,?~ٳ|MWWϯ;#"zߎ&H_m-D"JKJm|-N#8Aܻ{pm9֊t\1MM͘ JWgNeeey#ό̈QE @4A8N`a@84MѴJZmMÇϟ?LlK_[!olCC8i``@dYiYFFKk.bʔ)tΝ>+oD#;;ԩӧNg痎,GG+WY)l0{QёEŋ^Ĕ89.-- _&\48ER\Z{~zz˖-;|~~|r_P/^661_s8޽{kԩ2ICB }'Ñ:ݻw_zp|kjwtgԯ}-SU:~k+(Fi~*J߿o֭#GhMO>(8~񏜝}}}cz5 ׯ_r}kĉZߵgwx<ޘ1cVYPM$''8DZDuvޓrp\\,7?Zvod7W76T[,E$q( ) B A$)E5 hx'jjjFʭai>rvfO|||dN9ZuNʏ?|(J}|V5+wppعcc혮F;1g6mٲ??L&m;p8ov d4m߱3eLg&ӧv]JAAs7uyݺY\pqO[ۑv8~¢tcy` ie8APpwἼ_\^%ӧ">3[yzXZZ~6k֟TYnfT*mhhܻwt?O}63ν ([x$I hM$"4 'H (p4M$dE~bccۧ5I%0`ӧ?mFcC(o02*VrsscJƏOt`Ȩٟ.\z%̛;'44Y͕iS101ѭ*޾k30+W냝uK.}*$$$&$Dacc3Mn'}:: ہ2S"4`\.DT( QD$K$ss ~վOҪ]F$ Ze>X"5~ߪtm~P^!Kھ=,,P&˻2Sr0 %HR(br8I?N4M.*O`JĄč705f2Z?U_߾)))7os]TF*tedo%F5jւ¯EQE@ H($bqcSM@(*s <&p<(8Hv^0~1Qtm+ƹ/4= KKH,_t- ,-,;g#._NLHlӡ)J60QEa0 F(q(@P9f3fݻ׃Y;'+T<&y_ZZ_s2 $I~~sYs?ƉbX _E<ߪtmfaaayQEQ UQ$)q$I` 8($0X38M;n֬޶m{kb3=%%g[|W*]A wKXXXX71 75*IqT,y[Ɉ]\\d}> 6 IDAT9jhhL0a~C100~8ra>x]v.Yo~<o%;wx;߭^2fXU 4Z L2QB@ӴH$jllฎ6EQUikkkijxw!gaaayBN=w!WkB P(xnDOG.՘Ș/Y;ӅYU:{BSǚ1.=p@潻^3/]:t%mN&Ӆ] ]T34tƍJ@NƔOxp~SS)Svׅ/vT7n\r%677ݺtc|N̼! B-MM r4DKKit(W^]nk.^tҥn @ \xIԝ?/Fv- CBwkX:w3 5M)P&AE0x"} WO0 mڭˑ#E9vZdy}}]ʝԿϜyzu.cDDF@mMMBBx7K/n:.;jԨ˗5IkYS4r:|D,5։jQ 5M]fFƪի,Y|!P(,_(BB_RQQ 8s&⋋{m \ƺx{`7!o߾ظƫWx;1Eٶe)/""Ytyiiiz>VV?z>}b/I8]XX<=D((,u~`҅黺%*2r]W(1|:7I4M8ńchjj  S?x7*W<<&_x¯{xx(n ;xk녋 6L[S@yui;ōRXS"~{kki < EIFH)A[J*q-r֭kHq|wM2EfT-qqg nݾ}m/7ɒ8pT,^,;1,fҥUUU յ-vdW;w_?ku 6FFEJO<|!MMU=e/<~w:](G*LK7xnnnnnwњ{L#7FjBBVvoU z7oRRSR_~6^MHDrqC~|@썍.]՗_"nllloo(on̻w}}}>|F^FJ| U\񉵶n5Nu`0pPf3Hei/ڡn>MK%R]MHXz5AQLr/IOIw#.c7~'NTUU~#)&7'w=qqJV rH@xxxdT֟F\|%>hH[G;;|f-=ʄ 9?2-N(v*,-=M[[;00 :**:** _[K+%%%4$_.~>ɳfZIOQMLL+?΍8uԍ7544| :|UUU̘)4A&NXVZyǏ'N\eѣ!qqg>3mA'OLFJ| U 'rUEw5u,#kʸuꯛ 286  ;{k7XqT\na߱c۪ 0fLjx>?o%Ȓ'&%U r m9ջ*aQeRVɿY+qgg'---ccc10328N>=???2**2*`ΜCm*iV}"oժqnBP(?nJߕZɓ=4ډnذpjþ̨4%s*._`42e.?|~| ɓ'ɤIKǤI-m޸ɦ 544X 233(Q@Iu:sX 3u[.`t>BxܒBB=qmc}(V kDmܴICC#((hCU~%_|-Qs3͛6'P?Y|ii) ]:eCbBVn7//.ZxLy7oa+TiOAcSuȊDAlJQ=.AjjZ>~X|mҍ@T,帴6 ȸo{PirfΜˋ$ɍ6\C-\{-X, Ҏb\ @wxNN:ŸL.]$ITZXXxܹŋGoJHHce5},c#xY#-X(JۂbbX, .zљ3gR)`cGpw~Ў0C'un\ĉ 8xDž p{ڵkvhjjhhh( HxҒn֦WW@شdʌh7QkVW ɺWzj A$xmXd^jkj>|?cb[nX1c*a p<>E@,#"Ku!OOO۷mvXœ~vpˋa0oxyeKnj#"#Z|c􇣋ڷ:CwRR#nsOkӦM- TWWܹ,EQo791˘-X(Jz3[=~4+DQT62zE_ ̙΍1cFrr;w~jQ իk֮a~eSgUW@%II0dF{(ʺ]H#4Okbњ&3nmBWOoٲeϟovIck^eR}[uxC ݧI1X,hhh똛 <p3>3}ڳ[$ϛ7g7АR__/|(ۻ_664ss)}}޽'%ḸY0o~ҵvCCCdqv3ޫ0n$\[[3Vm8~޴a#48 vv*,2*As =gz*Q>_.GF$?xY3=m6w_{\r#K懧U p8S.GD(:p>r;VF\.VxyM8@q<99 ʳ$y8o* ŗ 8QZSZB |@SP='jjjFXTsdӇs\G pl2WF\&4n҉YiHib[…[~booovT/((3w@.Z#D:@ʈ_q d!E,OS, 4Z("֪?#ʢbTJ =$' nٳD #FWxy wgfd;%e^&Nx99'N9߉XysZٿtLɓ0.Cw֚b ߣ[rk5s>F*^vm=Ҿ,--?5Saﲩc@Tg>vE_KyP,@R$8W gRT$5555ՋAW"u:iJ /Y~ӧ7ߨu`;Ķp36o|08]FD೹o0%(ːʹSҥK;˻K?  O!8$A6DA6aMM$IQA'%!$_-o@pWK*UzˣϦN,,2o lGy)} G?K+, ("h+\-R4r*sKJLJ 7oZ0NJ/`ytTɗF5j⭂2>LT:w.4#0jpg&󌴌hAjjaZJZ^Qw߾#?a&ؚk}6[>faaaay PBaŖ^4Zښ\!an<qʹ4L5L4Luwь3zA?/܁U9*VumϦ,,,,, ~u8; VYq9Xfgy͋NN={T X׵>;زt/ 6z^+5::::uR7hֆwqqihhٽ{Xd#?}{bfbb:w5k{^qlի]ƌZZ_ŦXXXXX7#:,&2Q1qǰV᭤]YXXX^=ms!o/Dߒׇs,,,,,݂3at,Q+=KԱVAdeeeQQqIi =G8JO_Vܤ. z{w Q׍K]DEN5鮦MҲR@==l>tr @ccc+"(:b#ߤEE^z=-/o9w_g"QrFzƒeCJin<^Nn΂_>-tx~~7nVV#NԼ5M{'g3=L\!+ K`MKs}@>8 0 AZ]@ZxZt&&&S͂o|}fBԔTKMKCDʝKMIѽn!ZZNۖͧFlhPr}u:=x<>NY 6š&l$hc,՝aÆ%$$L"'Ojjj֮Y;y wv!;Ljj xL8w\JJSRS`aݵWO0 y-kAF qyzVél*rڈ+ *#zy{7442Æ  P%"33E]x1o@QTZZ: 6)i1 =lud8><'7GK~޼yZZ(ֶym%(bLLL+iz=r^md=np8...+V4Pgp .,, wwYG^^1!2226&v"kX:.[YY֓W\ :܊FDP&=}x0p@ PTE9Wxl,gϞzͱo +K,X666'O{(ުO/  W7l)+)..>qdrrC455[ub]MOOQll<~wenG9K/+/`~ i K%RgeZz$77777;wY;hamm 7obMKGyK@ԉ%=UPHV5R-\۫Wz:op > 060<<<2*t@ ۹{wfFƱcv\0/7T Z]|fU!G;鐐(_#3kQs%(Na*8q,?ں_ÇJi߰SaiiګV2)IA)))aa?\&066\uE%jdai+f8iⴂ&~FFz;c++ښYdW)֋)#]lXM ʲ¦MaշKQMHJ CbFdZZ:avv͚mG<Xh⥲2u3)o޼yQg՗_x6+))ZС c‚Sg'g((,/lFd$6If c]AϞ=ffjt~:C,9䖉n֥=iB$I2%8v _0[NΝ?/MښȨ# LDkzN좩񚚚ʪFQs4@ϗwXYXڍ:bՑŢgϐgU`4G*1k?N7_-//p*G:BWE$R.y&iթle:6ZcAd 0`ÿrv?aۡbV>}dee~옕X[^^QVVNP5ض}[}}+*++:s75oi#G2%iʫ(kai|-yXXҵ$TZӧqVaFZլqOKI4M75IMM 1{/#ۙ-CQ!GG 6%Mrp _i0[ʹPٔj?Foo Y9^QQ:{{(*.aSJOOIJΝ[Viu:U訄>VVgy262Wy;p;@Ľ.ۂbbX, 㕷ƌ؈yMaaQDլ9 \{.JjRNıqjjt~}M IDATɶ EMf^B*Jkg j1ҧ ˯;V+)S$RΝ;}|Wn߶0 #Iðvn,e9\жPJ?yÜӧڴi;xН?V&*޹s7,Y <nrkQs%=vsϣ#})wr]ZZ)~=gz^KJNH_rd{{{ϙ*\`&sda L@PaF>7O%%+2AZ[S*Giqq={o߹aXoA>tf f%E821ZREQPWW]ZZyJ]S4ORWmݺuBpAw33l{?h0rhHIIMS|}?:s̽1 3354ɣv \\\qW.v 7>,,;7mؚmEWW}3f׷2Z\_kΰSaQх[XLp9SP8ƆJa,Tg!)͛uwRGΘ ITyBT(cggfJv=LښWUU.9vbA3 lEZ4u2XSYY ~}>Q!|p{*++1 eidhKAAs7uyݺt8~B6 "L򐹟 4 4 ʳȳ* (J[42\.@5g(* r1ccNKO273ЦTV[p8O E3s3s33ʦ_.ǽ,URXZZ~6k֟XS& lgcD:ŋN72^,;O[[78_ԷÔ qǍi:0pCTd?OLJU  ]r-INgǓ'2M^/K.}*t'މX@:^ógb( 8.cQYYC@_*mk*=LKKK@XСC |u Kסԉ]JJJxeJQőHE(A Ax/҃$U`ywa kA_PN0t(Hؕgʨ:**ٰwKnjtqXSTXXZ@dByS̔]hS ",*GޣfjȒUn*rJ1і$ىAuʃӷJSIPPPVVAYYY/ګwoo(h{P35:喅E_QY[U宩U(GD<5wk7<}J>M;8 ァ0=Ȉ>;EEEzxxdgg:uԩ\6ܲt;TP ^VVnC>LTNuuD"EK//C5}3K,ۯ}[t;S}}|8C9y /VO̞1q„?o o daaaaycQBNDA`Q׮=^}%E ڮH$Q^ij::F .ni{_M BZPt!W 9L<j50Iڹ5k̔J {둅-YFzq^<6u+T͐$YYUШ, ߵ2PAiQAPPFAOAK_7!m  tS7jԨQFn-Xg|1%)ۙ1.]q:(rAVVm7vM~~ ^N7Աt;P+MR=\&ťFH0.ڀ&f rMƏ'00ݎ¢3g~v-Aq#>?xӦNS^%=#ԩS6Dik;d℉R^xӧM&v]/ocdd_bO55 4{p 44m"m 8^XXt׭N{qMM-GǑ-^} n0!![i'nܸq 6ڵ[0iyyTtLTt=utt ǏXu*`MK@QH-״ ,K=b=Z&OKV?mԐ"Q|yJj?gݻ}͝ggo v( _/>xpRRMQv_QkcxU ܚ@wA ܙG >by(.._ߕZZGβ_*Nd 1)O0aꏒlIYϜ=]]]3m_Jf KHH6m!z ,o8$EMbǹsa:|#NaI풒G9qG 8t\X,J3337(J~nH$Z4Z"\xI^reXfvR`og/_n޺(J-;utkk=C#Ko 8CO/Ttu|;vرcnblܯ#G:;;&C3|N= 9ҳGϣ߹s磣NXQbt޽{W[Kk#G:7ߟqf|JŎ w";c|+=Ac?Pw^qTtMYeeImrrkm"&&]l :::\.w?R𸸸-[`'=mۯoa={IJLPC(nܰAi;)gΞ?~9+0~MdII鯿A'OPubDWtP15yJʔW^p߂ 9z׮uvvh3`[PK(6lPCmmRUTTt޽ӧzё#ZݛbUQRNQQ|{Gu\g- {`4t0w;.q8c8'M7lyN)&! P/rj%\0~?,wN9wvg̙Q:O3_1@ q`2p]#F[Fx躎1d%De%W~YEEM8p`~}Ϝ>sQt&??==8.-|=+V44>pJ?]Ӿ`m_aGDEE:Έ^y0Q?b,zᅜܽ{Y,ywZ8=====}!z\[DGE]mA~ ./Q?^ToS,2fضՅekݻ0^z쑜G$#w^ ~u9OTҥ ݻ7@ >/-[|ϛ߬\axϽmN0 y$$'%uP̮PU]@/3aÇ=Cw[-pZ^ ^ŨD2j8poyou-U55-33Hi:WuN/T'KrM]cŲelMm>RD◄(2k>_>Xdwj52ղXG6[zϿPURť~IwlذIӴ3-3sG~R_7bD׮]:kfPJxMH09=AA|RW,X%gu]/(x{ɻЮ\_͛m'(ρ-b'XvmiijF$I[%_^m=z;vʲ,my{ LL߄NC\ N&05n9tX`U༛D^_^#/78E`wjq:ΜsWT KO% LtR+9mn¢ի][=j38xc?T2kLJכo!4ocl֬=pvsakdI+,zIKOOx~܎Z0~G7|/Zق^_MۧϙI}v -(8뗈1{|StDeA;w|OΚ9'O||s88 m9v8qƍ A]:h7VTkYXL]vr u.7\?Ωyz+ 77z.'k֫g=4|056Μ=RjJ߭,Ϝ5KU+WhCÊ+|͙3f>XPnJs=Yr8&< 6oO-|=h>tȐG~(<<#Ǝ{MLH{TUW%);;Gٹc?xc&߾?7mrrJiddd>}fϚٿ^ 'm }a؉ ϯZjmeeeԉg(N3iƏ*B^oS^`ߩƤ!cf_/^嚸n}HriM[wP-.UT\푬ĸv];w{Eyһef{V[ Kw׿m㦍w}׬Y/u睿o?D[XS7l#.\|S}N74wlq!o'&&caÆ㟷͹m,reoc+?SIGܹW^}wSSC%;wܶmGAB~u' zgg$#D%:vH C{wk֬ېK/lۺ?8hй?#O>p-+Wa /_qk[b!!!Ex#aX,tc3_r^nmoUVV!/+-(7]?cƌ%Km}`o`ԩA"x|2EU:<K H"cOaq7:5M U >K.ڜRYpNR`,%K [>{WNum|hCn;oCl4Bh޽ ??~-Հ>cSNC&p鬪_R!Bs rꚺ5[h^Bm3"/MS Gr6C Ï(W^ӧnHuq-k st˧mfrVxĻ@R8ȅufz}t옱oҺ45:bUfCZWWwO?dS },22Gm:D?*$eeW[4vڝ?~pZj<'*6FeA IDATU7,AIWbi)c9=iI'y3xz7lx7ot:o״(ɓ&N|G|зmGY͊9%%%~}qcv$^! (,,b!r??qb&&&N4󒉗W#ܶx\|<X~9O<{ná(ʉ'|ɂV^mG83LWwv3SO7 dYV#3%p!~x@UUW'&$\maBr3d'Ke6iNmRR@xd|ҀX9mՋ/Ԕ}3fҤIcd!B< 8(fp-9?[USѡ&nk/j#dVo]}<|GҞm[Aگ?:m@XٿWr(p㤃 :jo}Wgs (G7}}r\j 7tbV"NiEfCoGuzle!G75 iE;vvx!BZ 0ZK~# c~J޹57&}4Ck"OĿj[=ʠ5uevSEF K o/8 kTRHD䮱;ug z)NJNNF;ww.]y#"6ۑ#Gj$::jΜ9喛 .\7l6=O庶j3mYi{o,c>e֢N:ɧ-[$[6|{aQ}\֛[uR{Ds`c='aNMz%brR%KgN2v >}3~_/X}5t떭{q;9>mb'%& ;w={:K/Bg]0!B0Č3kQvoZcyjV31Z@s~"j h^Z4=ҽ3uo}B2iP((V X_> vo_'~`pᦦ&C`I"##w1frl('/rrsK/^;w$^!Wgw!Mg5 l^jS߻vAmnͲ:]ͿupG "0u#<p#u d@z>gl0?Z}M2wmoVO6";CSț'&0_m ?4ǒ0_KŨxKWo݊jFҠ1ЂT{5XDQLf ƀiN jʚ 4a tb$kD /E!LmllT Ds*'Xb!8`kwMq{:4Bǃa i|&" U =,=ctEc!@7\ @%4ꂙlWQUic볕ˉjӻ앑9L)# @crUUW/*:WXp43-ܭI-Qݺ׽oݮh:quSx견,P}i\xݧ-(QRK~Q Q1Hn 2IN2m_ָ~Yg!BjW1viLrEGJ !y_=kl-0G uS-( yNƠzXR_,*73cZj.c :*fC@kf?( Ɗ [4uBdE!$t<t23(!h %t|!~@תCpuuY?_dx2# fec` Iz$G|-zCJّGF_eͲcfdk5Gf1 0(kB(xv(E1FƆ3NFFE7`Oڿkg]mM%OoyxDuK)qe] E`5A4Y}T4T7j13c2Ӻuٕ׽:WcD6NO/ihZJFWIbE!H2J3Ec}C,D?,w2P2 Ü)}ߌkX(6hlv0̰@jhtv"b~*І =ޛ[[5SmS {uDT37`m. d6L&Iy8clRJ)!PñkcG'Ltσ }(K۱<)x:aG%AHm+MJ&eI#,ĘH$0U_c "#-gٺ s$|Cm6w-RM)<-!DUղZH`"t#BgjqS<3X6_jH$jP(1SaxQ&ؤʄtTXdR2u&`;v p%,Sť}Wn`9xS|%%̿~|lklp:!I2au(e1!0B PJy^55g>v]y޿-@HǙ#--k8Xt|K,:-(M0E5ES\sEUQaack;+UBvBy bUUkkNa!@0C!ByyƨAT.l`)zBAGqq}?TEݲj5!IgCȳǀku<PL!B\C C*Pͳw.e"L=PuF8:n5&ѥR$`K.5TB D};qJlW]Ul~\(IYÇ=[ 2Fb1#@ ҍfC%''Dq !rUVU9].ق1(93pࠄĔ ~W5 olICjG)h:cI"1*,tDU)G"F(So,QU^)InOv4U% D)U9kȈEUe~A!BsQu&b^R} :w`c QEHQ.P@@4k~@)ꄀ@nݻY$(sFX\llLt4ˆR ~&9!!r!~XZ Yp T*[qG5KU8qVfKcN"\QSC4YTYkRiGFZkgOKtB\ 5QEx99scl,L&լ6Q$RmX iMcOkEQ,n;uI|xYՈS0q[%h )ɉQ5N2QiGscC1ĘEzb 1th|oJI  S~!JS5{խճ_}^={^'=uǎ{Ϩ;v֭[#"#WPյcчaac:uV6oOBŘcf~׿jf ]'  iQCFw^) FN_l5#)1ɚN5EךԻN0cgj+SG~t-8Ql$@T<ƈÜgK cv'ǵx9"zv i]NgNCv)!x{RtU*cΞdsu̝=7g.zx7?}xM'{]uu-[\?peUŪիrB|/A=z͛lPi(p2(C;KychTf O:Qذc%F(p<[QޕV`(efdnᔈͽ[7nͶ㚦sC 6{XOڸaoyӹ}6 fܜXs1-'*\ŋoݺU4fL裏x?DqٔU+Wxʲl///ͷ:q\?<o ZWYۼin7B|Ձ( CHΌƚ''%(lr @f ꡙIa27f5]8gC0U@]n+(].iiO%A0Ɗ,KiPa06"SB7L <1C8OHL8|`s϶# !niR k]}z/-cLRm9S %UzR 1uMKn#s钯Sp@5>kSW\Kom_fp-+Wa /__¢7xs- _ۿb$I7Laĉ9NkRW_7m2/1MYv7s0߇˖uIM`[l`[>uRRWL3`#ĹtfK:eNU8$p8|Va0`9YF tXyt00c̣ %H!}OBt#FŪFa! s t65UM u:щvl1FGG[V,LFhqn{رUUEK 6gS#&"/d-IKmUNmRYOmXzHsA U0'|L) F_Cik`zC1u#TUd2Oʀ09Icbb%I4(cb̹Y~Ry`uT wەؔ(d%+w(N56\J0Ea,#+)¦S8&43ބ1u6Y5&0s.?#꺪 TSdwSmRXfAoN67(a[mUITW_&%%UVV._K/rJK/z혺Jd }[ZZ Z/~tu.0T3,Y!իSw`C  d|RV{'Og/V^5uD?;n6}> t&D` dWl\lɚZ',r aX#r-n݅"p@m=SRQ9'c.q9H뭣tc྽O[ut:V<ϋ $I&)<"<:& ...%%9===999::fZ-VlxscTSӦ_ܲ)tmWկw,yw oi~$rcGLr+/yyc.+oCll&2&&C N> nj;fw;utQl5БTA~g> bS]|B `` h~gt?E,"ajGcVpIzg[29e3%i_78^ Pt~}v7vf+by<0%P0ALl6&I$A0:эv} I+鎔7hKV&r IpF<@107JB㘔PWSSOs1@e$8ҀQdRVw5ƌRct]WTt9ao 6U;2|%&̉_JʫʊC>#//f0VY{ّ#GZVu7wZmzZzaQ᎝;nN3wJTT6o|niSfq7333???s2u^]]SYYqm]m[ V}zᓁ6 ^W}xrrŋ81bp#VS+=?-kue,\pRpa=ɳV^3Fqo҉/9yg~wt^zoﶾӌ il҃}oalۘӿw-.aٶL&x1$IDQE1ƄM6`Cvܵkfm=iD!Hv9Rzm19sH#βvݞ;VPtknw;nSvTK7sޣo0~ڨ&vߑ}(bDFjU3 Wgx`mVe8h>9|\5k<أG[nNڧO}{mټś8oH%Q+.]zW; nfXk׮횦Y|c_u=??ž3W%$a:E:fHMK4)tXz9#9BD Q $!BbɌ3,y?a@2x c;JlL܈##lyyYd8lD7fg cSEenƌw;wgczQ=]gc!DZ\\L~qV€0S%QQa099R$10BSDUʊ*$6_$8l8aG0'=n!o'x_kqݬpc}HܽKYP__oc=fDe?>?|c䨑FmgQ:eܹ{9xЋ//uSeeuIM]niޚ:u‚Hf':|pkܰa9jdbBoĄ#F߷oÆ ӧO喝k:ʾArr~`7CYYw:<Ç94y $eEǒY=O":07XAxx0..ad5qLL4EZ4F0 l]YzmM umw{8Ap݄͝bD@(#vm)ftѣ֟;[}Ȥ3 0嬕BlКF ph0gD`7)]=Nu.^(uuY̼hD f%dM/+޵ u]uݘ$jSnƒkg[<0޺}˺,SZJέLY%}5<ґmx&#F^w7q@zkmm)| L6eʔy@/^{(LCAO[BgL7|V6;bxyOy$[fٳ?X6g-#0)4,*ݿ#~+>Y<::%K}IVԩS `v9!xkloc 5uaym~}vY %3c! :ojknuj|Bb\lLRRb4q2*n?r`߾]N'YK߽4PEe1. Gw[ӳklY\Z$7:lG8RSvjÃ#fsqܙ;E\ FOQGt xb!2!~b^/3P7!~U62b"* cHeoEڻNVHKUA/-*Rz@" pA7WPT$$TPEJ*ЪMr{vq]m'N]137y1YquŅAö#i>ҽ;CTCms[p*bf:.rÉ4BE^^VD1+DbiVoa B76ptf eoᜫ (-zC. KiNzzzzzzڽ MԂfV DJDJE e.= FbE[љb#8J[Pڦ^ZDdfCBdDv]ݒj%LK ܼ'O88uCwn*@|[Ώ5[T@LBq]7&?[cUtJyf6`kOʨjKy;奴XROFbMN W[ou]`ive470U7vr\FBqtld} 9 /T@k.hKDe4lV+߉QT ffP%(t&FѴ DMg 5Wn"փZoOmb;@"r!H;q ŗضN0h4s^*3Y4ͯ{뭺Ե;Zsh;UF^SdBgٹfh4H$~p?1K4r"IENDB`luckybackup-0.5.0/manual/data/OperationPropertiesAdvancedDescription.png0000666000175000017500000004522211434710457026157 0ustar luckybluckybPNG  IHDR+ pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleTask properties IDATxw\SW' K ZQK PQ@EEj (.To[@o-*.%uqǵi̽ !B}n=9#1ܜp !P;vt!FlB!ACg qD4445448NGzӽmb1ջ.Pp@ xEQ4! m hjjrx[fV2d0kPXTHP@).[}Kp(CP,oc,iZ:;$BKiuuu۶m۴iϞk ͝7oGve~@k?~aŊ?n֭b6ln_ 4ݾs{5}qcXLO ZXV"4-->DuޢV-݊.[n:t(JYʃWyʯ4q,$GM>.G"3sWW<|::"044tɅ_P(s~8f 㳳f̙n6lؔ)SZvETt,\0?in;s+WDEG?$wywU|>yv¿=c>Rl53~6776al]LqfRB_̀%M+SgD(Ө$I+WRrTC%Z3vG}024ϷoQGGc~Ӵo?pMMʪov횵H ʪ[Hn+շogϽ{*e*^)ZܖAn׬={DFF82sϟo޼9===ܹ{ ɓWZ5c ??<|H6CL,Jf]\\~ٰ!f=k֬=v={zj,o߾bcc^nΝtHc]~2fΜruY ͌߇.\8zhbRH(Zhg}:bĈoDb8 jF @CC^LCSOӤ$.K{X`&?&#`ItK<}3yi!B!(ԏ?2l.++gRS[;#pĉ^ 8=zɓ'>>>ӧOڕxɢzk]rettXLU"_~Vv/b6Ġ8l޾}?F$wʔ):Uf V_Ht~fy/ XҫW/Ap,9r0slaOr Z:"(0 㥗[t/G43/ӓ,V[iҘ޾}-X "HW8@+R>70ׯv729~֬YNNcG;~gܾ5aPɉ'9r tFEGG.E@VV_D 5kQen. eg}npd^&Lqqq^j~~o-+/p9b$m2k„UW }`*j}eSG 7m<ܔ)SXbS"``Ԩ/ZT\\$<<`̐98XV^?!"|`kV_V>=>~;X|KHHJܱc纯$[ugggQ~ĄAU/0'NܻwC&&Ν?@II@$4p60~bScL+W2{ IV4q-$[%|XX@EEE'n޸Gƕ+}$_T{OCR'}+ZZB%[rzD3ÑG_m9 8zg'-X`b_f illpLLLSSS+h.L4eS?uVqqv3bNldr)logpD"QSSSg$ɛ7onݶm̘1& ]~РA<@֖ᘚB,^O>/i x<^mm`EEΌAq؊]z'M./(((>EzB$5}}}`dd$9`hhHnopY2F:0:/ 9ra}$3/K]Z:E~Ec oU˺H>9%Wc 0'Q!&@tχ۴)33s=֭  ~~{޽JKKK^$J:[g ۴i;}eo#py\I_\.W#l~iIs8maCuҤf/ҠӘG4 -]&{ C]fc2dץ_󛝝P -H,r2F>05kW?z[~9K%IK{] 3~@߀ES/Մ2^E""HwؕYir̿QL1|1c~wqqq./\,yyM:uhѾS(x+_d„ |+(Z>OXxq(ݥ^+5sٳV,_Aw}@Uuu^^&ML+k`~!nH ű1͟y6t@q.})jVaAPLprrJM=E6Sbq taBиr媫"a+yuNK'N6:~N׊T{رㄸY,"RN=Zro}]:U۠8IXZR{믿MwqvӻϹ"Y&9M2~} fLOO? Cq(ŋenKʆAH0q5UU [<޻K3jԨ/J2ȝ?xY Րyza}n+͛̃6mcwquqqu>һwV[oIݸQm۶ɜYt :::PY{pd0_<ۻ… ={tܜbŊ-[>rDKScFݍ@KKsܹ+Wsqu׏ߙ+(x<>x|G_l6$eo$!B]dmQۈ;wp.''>JJJj۱>|}|ST\:?, f V|ŋZW^-+{F_ ]9M2^r7~,yqWKf+}xѢ5k׈E"-ŋɄ^>q4oag I~~SY[fm:RM(Hd/&2+M/v%%%555@ƍQ3522ζww8UgG(O׍\e\e%=;|vC={۩]9c cjD<]7W ?^ʾ@uțNRlp; `Xg G(O׍\e[npՔme`S~ijiu}X*<]7rolQ7pxYƼf^Jh7BJ[[W(PE 8BASSMg G(O׍KI[[wCJ֮zK_FdFn p}-oإK$IɑK҉H}꺺ǏFE50070ﮞoD:ZP{#kkk(LLߖ}Bظߝ0"Pۓ f[R̶!J; /[[ ?d`%?l[[[{믿L&}UFzC7-[kCi9u\[ĆB̌+E%66-lu[."*z|rm:SBsW$^B!-B*v&|/;[45yi#b1AZ%}u7o`6Ԫ؆Ty밷S믂Umurd۔   ^ZROOo--V\[[B$h;i۾NTW*ZzͨAn _֫akkby*A+))3>[h;y9jұ^%~%Ԯ~ۥK?%*2rɞw>|]]@()|2 O>z(:j@(DUaaa s;}ի˖.=ztuuu-6ZYY9hJ,?)2 'zASSٳg}IiiLߥBQJI).Ԕ9\ rݻ2''u>@ #=<oXRL|]JOϻO1WTTH~08~,#&|'SlRy̙|>xY1EQj#?x@6e԰r̂OQTHHh$I\)ٗY3ׯ_G\bypl<~EQGN7E:EQO>u;Ç2#] (rCeEeee݋<+~"MNV\^Чз/_(ݻͤ7ag$ysCWFFGEgd b]Ifd\ *ↆkINœU~˗eÒy%>AQTuud$974t"OBN1b=EQAAcb71TWWS }}}(wmڵO7f#t,>*J,X;::Mq566֣iԝb I_6mm&MqYzذ'S6@BbRjIkY3g$$$Od444dzDv5zذ氷捛έz"yv nkaI]}$m)9AXKu<T"3|>Uk9Yuuu-v bqIIcee̓}ZA"ՙګ,1!ӧQmj?8YA~^ii?\.8;;Br s()5dpHpGǂZ%`}:޿yߴaH=du mM<ƌQAv A'K!mBH0":`E!ulB!-Bf[R̶!mBH0":`E!ulB!-B*ٶԄO=ݻ=]vyF*A'J(ǏUhB=2-6*iKyi9}fCϾ̹Am̴68ZRܸdXZZ-xA\kkk@OOo-j8QB322\]]UhBF۰"/$G^m:`NBl۷o_ {oEScPM~~NP̌ 6zжhm4BRyզmN^r~R---+++xQd<.O,':zQw>|]]@['=r===4p@XйFdN}JI).Ԕtm-]WWQ^Q)U@`tHsBBBO;{{WXXX\\:w… Y3gϱΎ- \gii9etH2{zzuLعsG|L@c .++7y`"i7?,)H.ݧTTT%_=6x"EQs$'; IDAT˜;{քoLvE=}y옇#?x@R!]ބo|\?}: $I$22҄o;3 ??EQ&|'SlR把 I˗({n/s3y91h1X<8x.ژC$srrw53>{QeЕ딤-Ǐ(*9ԩjS֡ļV^#IrЕ!!QQ(J$Sp{fjYyEwϟ6EQ=C! y/]>4W]]=tOOX,5QɑLP>۪J@@B®_sr֬Yݽ{I>ƹ=wdp8@$]877~:sf~XXrY軚y2͕='OTTTٓu.@yTf䙃4JFA"_-((ㅾVVV~E;888~ O45mڵO<144־}64q)8r䰳L듼CX,Nص |||nBDC}}`ӧ G (*(hvL2j#vIBRRĉ:֨h5Z̑Q)f[gϜ3fpNC!bٜP(\0uCCC,^,<Lg[=z|c7n3'60]KKRSOX[Ϛ9#!!ј"G{W,Xvm` u \i=lXJJJLLL6UTXzQw#X%lm݃@CC#&&6hL[koIt=F;ҏLV:"s⦸͵556v)nCDNί̑Q)f[Æ*:>8cs\)腽=322?̬ Lpwwp7o._ݺ%} Ǎٲuرc̾?А{4ѣGkc"K11Ν7o߾M0@~ BsPVVD kh۷kW &Nsx>>[n!>0 {yyڵ H8qD% xyMaXw}ԩ]; "1!QAjZ A#S4;&vcyY@[[hP(\0uCCC,^LÉ4ASjkk߾}RSO$o{$)vܼqS0B-jl>*J,X;::)()nsmMm3Al۬dګy=4!&z1N4ۭMCC#&&6hL[koI11n8gNm`Viit[d-!:_D'uu !1)53|\vm` u۴)z#kY <==ZpB%%%x k@E --m~GE%BKzWZZ* .kllmaa!M|knmjjz!^obݻo;Fohhu!kk:C=w@Y!~d[C}(z.KO[=~~2[IBmBl5asNN8;ֶul [zjz@FFtUm"B)J=z̓CBF ]Ojz@fFtUm"B)_ ߟRRR`ejeg̘)&lrMz~zMm-$ܹ3x`%ctږ]׮zꔼMBx/\@Qԕ+OWP^mn;~LU SrC,]oz]u`*lEsqqGgJ[oe\Bh+McJnEwTBqUa,X, t1b|+#3#!!At[)!޵K_!f۪]ԩSpag%OamVcccMuy/l9XoBmm_e,ڵÆlk[ͷrr~utdKcJn%M_!)35K2BuBu."۞:cGBSd[0zulBLګ^!%`{?0f0iBuE*nK's\Xyy9G<})}Əb=lخ;w;yǎ.|{~*v !:mppnppqzcOHv/ 3)))/^L~:hhhrO'$&Eюڻw߆ *v !:vHz|r|Ǐu}s.PS`uuuu{Bٖ"kvЬݻO7S&۾YGAj !Ԧ]> }}}p,]|Lr0v9sB455BCҾ}f B]]7 !{!P{!P!-Bf[RL5B{!bj=B1z]yy~@  E/:j@(DUaaabtYdUWWEFŢ}DGo\B]ٖ,\pܹAA={=fϘ1Ο;Lg[bG;h[nvysSO.`I ~yT'Bu6~nCCC͛~~GWY^+_ݽt)om!Nmm鍻$]z9s/b_gΞ2mm !ԩwpp8q8OƺI*[P_ !ԩݐzz ;v3'60]KKY̘/{(Hdkc"`!: !:̶!mBH0":`K,+E,6&ܬg%*t i !!:x0gZ#bXcRR;W^* P=dL񮫫(ƹJ+!T|ݖLWW޲>}dʕӧ1<))ٳgAf6n$BHl˺|'VVVW223^3}?/׮9~DZZzBbRo97ocOqv6gt ȑ#Ys牔?|C]s|jEW.$ddd̙p8s3\}})S|=xq"و(my<EQA{zq8OF?woIknnP(]KJ !:Dd[//]v!'NAnOQTP؍eetjIJihh}mHM=$o{$)vj"2%n\[SckcmogL6FLLlЬ6ޓbbb`hG:]uttSSSsڵ#G ///7֍Mq566֣iݨ=B-=BHuBu.mBH0":`E!uh=Ԅ/9b#{IkqW#]2a.b!մ`]¢U,[ٳzzztU'edd2J!$]144[h544lmmU OXpa˶6BIP4zKow?oGTKK =zLeee`݇+#UsP.{I322ޯB̹}nTTTЬo#wᢅ/]rdRb_ S ]%K~'zW/[n {Ǣ#Ǐ;|_ rf8~~cGfsŋ1Wr3!թVyUU2our/]s[А{4ѣGk'fddn .SUիWGumOMq{>~؎;454w+Wmmttt_/FQUU/]۝;o޾}{Yg O󙻻q2;!md\2xKMjhᙳ,--L[[ٵK\4ۀu@``Ԛqnnzxx|W_~xFfFBBGg͖E5x;egg?w6))1--CzAQ__w}{.Y,u O> 'O6`2NKKx{yܼ@ŴS_]e"|v>Ci%2جg~v?[Z\%lm݃ I'mg͜%n&捛-*|#Yѣ s1 !z KLHxiTttGz{QԔz28%BH^l{}~~ѱ Ku4hPo;: bZ=EN -Bf[R̶!mBH0":`E!ulB!-Bf[R̶!mBH0":`E!uxl?}(*VYYij65+(*XLښ17dInq;7nĩl>OY{- F1i)Ŧ VFՙU=>}򤰰~SSzg֞%U$#))qǎVjU]z@OOo-պjS*WH[k_AymSsgۓ>tHݺ?jUtS{zz?vL(D@0̼UMw [[ێj])~ `$ ռ6ک9?)c[nxgƍ6TVV8 ,l~^^^IIqy->%9ιrrr BHTYY!){Ç~ .˗/+).&Iʪ8SSSj=zEޠyW22KdO?D pAWT@mmeCC 0?1HZ +___c߿>j}HH|(:0#0`㦸cǎ*ns__k~L$2}7΍9tU!!!=+,,,.. ;o…es=L>O?)--Ҳ ӣRfJuJh''@={LA˗/3EQ*7Ƈ9K:. K~KVuuUdJOOeV`YYUUUK?F[K#$_~xX)Ϟ=.?o߾))k<5c cNM[Mͫ*.*,.*ϻvyCÒbRzZ~}eupE$EQ!!(„o|%޽܌cΜ#Ξ5KN7?ye˖͚~:$I\bypl|}=s~($ysCWFFGEW(wwC~(ӧc<|{qEEJWXnֳǟ8H7bed\ 飯Uaejf&EQYYY}zj^*BB7DG&o0ӳ,:Pg֛##f0'(jff+W } k/B?p۶tM6ʬmxYʏ˳'( IDAThdҷ+/ˤ͇% uiKm֛%_}%!AQTcc@b o߶|^{H!ߋ?yd}}YbĻwe.Sۦ&o@ked$}z!bX^1(3GI-,ymIX_#]l^qd[֦h#JOp{fgG޽ &Tz=27+--gͶ,#=;iqVm<>d[jq+>f=o`QQlb+1ŃCQ{zzz}}Yg\VzE>Zem;5Lg[U^I IW <{Aw>g8ϟN,?p(;;II<oMA0k644J$ZZZ%-)[(hKA/K+00TjjMu877m[y<S*,;;{:::Ǐ?rpjㅾVVV~ҳ5b=EQAAcb7yyyڵ H8qD|||nBDC}}`ӧ@(.?ݺK/&IÉ4MMMmm۷o@jII+EV"O}Cܹss~pBfU<ThZ.$o{$)vb544fyցRizU[om2>`Ǖl>>v$ ĄD+ي#֢S.@\TmO?6q$-LI>ܬd 7Ιbog殥UZZJߥ4kMqkkjlml bSfGEE"[kGG7w /"⓺II !1)53{f#tF;޾}[^%Lv$TkZL8xH[KMq566֣i݈*WSSSfvYŦ%zkaüKY{!&z1NL+ʏXLMMn޸ҪW\CkUp @,8::VVV6(((۷U.yQBH"==zZZK::>}сڃ~Ir9)\vcllSS'Oon''ԓ!KlЛb}Xm;:"86pࠎ}bj§/fFСCϞ;Q4hPo;: u!]&۪&jC]&۪&jC]&۪&jCdۜ)}Əb=lخ;yyޓ&th2HYYquqv;fnhhyy9qmmdU+WO>r$ɆC)!娒mf_v%#3..nutJɓIϟ?92~Օ̫L69DJlw=vNn!Ur؁\|9>~Ǐu>А{4ѣGk#vI74tVYXXv+nTɶ07277b^b!UsFS\.W#oW$Tɶv͑h+sF슄B_ ߹Lᖳ.éol0B9bBOO͞ΫEBo4|q!-Bf[R-{PPہ k@WW/.'}_ɸ\n':"Bttt,,J_8;gحa̫[[rZ¢JcJ<*˗0VF#"EQc }) TadԕRWER\ZGѠ)4G,Y݋NQc13^Gj\Q+2=:FB_ "]<"_KkF:3*&6S^9E& EB"Rȑ ."0ɝ f9~IiL^"F Qd?&"320P󨬡}U 6)+m+]$+ey]c"҉v$D8 ,,,mbL;6ѬGQ 6rPԎ<rdkVN J(.N,X9rRSLvjGW c"Q ~ 5R@aFt>(ĢgO!*CJ+ oHϓ9%JPT\H uCtH1pR[AԘ CK#!XzNXBKXE*Uvrd$dQN@ J$ <]կ@Lhr%DK-!Ujz!Vj8#iry]wջwoheP(FX G"peP8FápP(#HaH8DX BbJ$ 3 ci, Fkt/$[1UQ4RiUXBR% ŸBIt}!ڂ1(AG~E„D SU(JShβıIH~di'BH'QK"FmՒ ¢EQ ɉ+_*IX{Y|y* v)q͚;4{$t@#%ڋ #5ΩLdBFѱ*@qv| KHB\r2e'"0G4#S^ >L ǡ> M̤U'Y)A3P@WaSa ғ&b3:c-CKK_~nݲK$tѰGk}m۶ګ?JoEQI"D$o'DE:B@j rOLoBW/:Fu`sYYU˘*P5=DHPa|LZLe=JIŁUM8YSNډ8u5eW #( UJ^~e򼾾kٺeɓz$$I>hI߾VoI#< ׮Zhx#34U@chNxCN[ CW1`)"b%/.!Y*NJ,'=(Z DEů E޻0D@HD::&H,1Qj-*h , qCn0X6*BIe$f6XT5Aİ,PV}UUU^nW]U՟8u+PϢ"hmkS X,&?‘0r BB<%!DR%b_JuÍ7^wug+](p8t:堡>}@fFR vn#$K)#DXK>DQ v 锸9%JR?$\yvH> F?%&𯲇a$]yU uIiNJgLBǃeNGKҲзA:׿[o}7߿k=bR^^^CCoq۬͛7?Z#ST'`R.yѓ E@4^Bd!/) %aJ-\5.Ni+i&BTW hL (݄TFKR͂L،+&Fؐ~k^ uu_݋/{_B_|ESc:tUW]}mΜwg^ɣFq=zx%V.,ޫF oh*AA) xҭ39rFn,28)q)>INZd&v#גX "2<җiX;y}QOgԁi]-XX{tR[q K w߯%5cɍ$cq @CcqfYyD'/kQ@Dx&:CDuTE8fذ}!W^D٘EN:"qy,4.VK&d㾲Rd3)@IaT#LxK$w-FҪ zQi@Pr{gD$Pz&Y8T'M{ *Zz@T +R@P Z2]bC.W9-H I8"8(HmLAhjf>J Y~ Tw )0Fb}oأ9 3ǤP*[sR-DEg%e$#!CbM8PwG=`0wP#ɀQL0ӑQB 85Ѐ£fz *Ug[qIF31iH' C cX(ASj )bc ATSkGNg[/ G"Q(Q&iY!kqJ 2 @zGQg͂8.z|eo auQqdUHKH;YY5L0"5j4^vsJFHle#JjLXrιE OLqNז';j\S)/yZZ:vw^$HPc^HѧMD"ivbl*CkG_UDrj ?u1G|U?įʚtW_-)L2ox<*wTaUaƧ~je<Ϗ;ѣ W)MȀp mURHRJP:2&e\q*='m2ͪSB587$ Oi8cJƅ_/;モR>7mziiiIlH3g\F?8+; w]wl|_x5k ,nݺmm+/np{YDqPofMOO7 }w= W\YQQ駟y^]G\Ċnxū:.+XBuO_7QY_״!@tvtpCR::Ey%)LD'Ɣ^|gܹ7v &t<ҥ|wyy7tcСvϞbG$y%`M49so/XL--- >}zWUxgȌ6l[ne铭VkUՁ?:ZXpShI٧.ZG»{ԨQvc_eO=m9o,D}>޽ﮫ}kΜ~ʖrQ SG2E\)]'UWRG 4,B%$MQwZE:X>F=# H[y*=3z1cիV?̿m6aҥp}2vi_I k׭;Z̘1{Aw~C?lۦ6`@:`@՞ۙy?bϞ=<Eh]Ĉ$> fΜv۬A|v&,[L^`'*--Zeee= |;74t_ÒIyȨF.l(Pj yyUBt^T W$F:PfnڴSOR6oB**A @:W xIːx0JH똨&D <"!CD4N+r" VF%TA񡬸5)~PRt!@zf AB8JT&'1N<zCjc1a}z޽p?+9q\,-Y;xPcnbJ4fxe֬Je+++gR|)޲uk$ G"7lb貂:1tT<@]~0cm ZPϲl4=pয়|zWkǘ$_Ν1)߱_O<&&]1j.ytK9рU3᱀4R}ADF9TJ) x q@D$ֈbdH1,G UEZH뇍Ȑ>^pGj3Tձ ={ٳWHQ5\-q_{HȰk{}©pG71%v+Gsƌ]__oX͛6oh7N+G&HJ^U.:uO?x`0c2$oW^yĖwDqTߝ!E7Q{L$MCD!»=tLH#K} Qg@/E(IJ''ٯ@HH"f*TBb܄sgHlA1H) `P%j"ylj1/buuu<{ށCh-7|S.Z{nGQTAAСSN"0|M@ D71%f|ٳ^b7/nK`x',|ǎP0sڤ丕d!{L:U#n+V4@4`ܖUPx_VC$ke˖=‹eC>SsꖕmΆ `۶% -3,Z /ͺ࢛]EFsZS&Q)5^6qSmz6UՌ.2h|@vGS={G;=Lַab?o ƏRD3oiӡy +w CW: &VLz%R$HɕJ,⋖_WҳS9FB)m~]vFj/aո)F  o@+)9~.}:1R^oH 62)6MЙ WU"wbI%X[VOm;vQ8+5$ʾ*XV)6#*^3wxG={J.^q֤ڬ96ImۮJI1r6#XѸZ_FEh}%5@C$i7'sEAR*ZL ,S LI1mW;F)LF=-kֈTe[[p,¿Vi8cJ &lɇ ȸ.'NǠb3$$:Nw7A]g0y2$sPv2d@b`(E;V6{˅PM5Ɓ$@I.ӒS5>gpD]HJ4M:Gz2uVƤ1N_[-ߒJ1be$OAxW9~ucr!`7pQ*k"Fj]2!c SRmeCed\Dݼ t46Y7V-Ox5A{sp1zw(R!JڢU+8I((b57uz&3kp,d$pUS9t]K4M$i #MuNG5TYH57mQrWI*iV}BѶXm;Һ?ǃ((* p-3X%wՎ8P8<NqaopX堥L!it_(sұ7hFJLș,%*7Gv- XJ[ZZ223@4yIaBvp8~ef$q$@QT4 S]ɠD9h5rMfi:E&~5BvM$cBGS6k~^^KKs{r\ cch~~~08e92&b(q3M*?Py"BԉZRD:,*~j@=MPeX]0b1"! F 4gRsPYYY{{;uʉ @Qq={;caXA K4REe btb9V<2e0TVS(Q#lYpفd(\#~ZZK. E>q{ɦktI8Eb9QBEջp*'4HN@n)%iK,+p,*"AʨDL21p8h00>q?y a)ȵXf?y7̤X=sD2'Y7+-X"2r*+Jiby,˴I@"2 ScJetQ߫BqG,KZf-:hhuaE7=K ):~UFP2q0pPR̰+˨az歋XMd@t0E8^k69|ͨ(Hp8F0O3 I#FU +HX )6JO1r 2,+Eby(` Pmۦ{E? !8Vp8Kphde%, 6(MudF!3=p, ;&uk'ЯY8Qb9:Q[F'FIu:F% #^,(B3@/c;1~_^IVZ @m:jϳ9~DzY,fiߋ0X;5Ƹ91JwguˢT@N PVAǵi\S_+5 HM[%&ܬ[#F&vR5/|>כ`KJ 57.q8i&hp/!k(KJæSB8*Glv+-- m۲?BAv4p^7 Ŏᥐ#G,ܰڝG,Ϥq֑9vڐ*0{}駟l6mnn~=O0[v% 1Ӧݩ9$|8]U0̒ŋM4MOOfx9:u4g9qDLcOXtn[kȀ8g+c{m|vՎreVfֱT'|tG!d`(B4mAȂpGhvUUyneH$%uo#|}SKJJ}}b[ou{ݻwﺵkgM 2zWZ%vÏ[nضo/~m3wРAdc |˖ ,nظqƍ[J_~Es{ܩSss󇯾V^ݎvYTRc |82okM~T͡qZa/暟(`9sj묳X;U{̞={ƍ[lWg͚57n;w'Z.x~s<ֶ>ĚeeCX1@T @?mN6H~NNqPeXp(y>[v_Ȯb?|j֪;3Pwow&k՝?|**2X>| xΚx0Cp%K?3>~,ZkH}WZ:-Ϙj3|3gZP0x(*.zG|x a6EhX#*po@$[inmryiKn= IE<"2<,bLqfX8{ M#B^1\i:Jl6W rkհ,0pp\45oo⢋r<X 'L 8a>qbLF!8$8{-Z\SS-'4Lxk׬]f={|gj}>#nD׬Y{%$̕ӣ s޺2ڌYFHΗmJij84O:Q@*0LLxeh$DBሯ= 0yjHO\!].פ'.*L6iwz(Y^|&_dE P5Ze]q3Ge0*ncmo\Պr8VDP `[,bNg1Ykׂ!r=,>m]8r#%ƋőH$0OR&9o枽{ʾ,@z[=-}mo歷jRbz#F1b^p7۷hڧsI{F*|K/{*),è;v2q.^xƍ[6o^|١C{yS)]믾zyySNMƶ4)KcG[sL˃nka#w"4Ctw`PΊ6cc89.cB1@!c6 ,X,s mMG|---0q,_)h<|8Mgs.=Zi`N Ѷݭw>t8\Ie?7~yH=:hb3\pjvB!@?v?@,f"a.Ƒ hH( 2ەBSBTsss(/2 s, )L B̀aX4f^SzSK% G3؁ЀO5]5g~^]|2ǧ &_sWXB8tNlZ[׬i;acycǣp[j>jS^6 Gtcx6nd{}s߷o_mmmmm߰qnOW)S6I8>Aw >'zƍk֬yɧsN~ OO=4L8nluu̚3f̸ꪫ +VZ ?nEQ#Ft5|m)r]pjPZ C #O>gƌ$taw8YcY! !B[( G1yF4bkr51,Xf2S~܆WS}X6A&V0E=zggU`0@v; TS]oۭ4eфz/c;?:hԁo<_wn۹Mkv* %e@[yƹrr+*yGjj,ִ#L75X0ΕuPYYc@a9a|og-P0kF" VVVuV/,,ljjie}IW\vڭ۶s=$ȑ#/rqB#%{kNrsZ񩧞qBtNׯ_~z2eɩEJN?}y|4%jddN | T>zsH31,kmiN a>Ӗ֖#G"0<#yX,pv0bٰ81v9Db#0EY#EQV՟EnWGZ[9cX60<:|>[Vv8LJi˟ϸ/9!mצyɴ [lwf~ް>3/ta\=jrgwܰyؑcL]4ʲX22n7fHUcutn+E"avW3{mkQVK (.50bƂ0`4 mȤ i1U6dRCAm$I^b]ܜ}eӦM?OQ *=C322yd4r#Gl@ B8}l8\=wHSc(X UV ckn2ѦoXwsr8l<ˆ`00100y!@Xxcp?וւDz?NOO<3 Sн`C'b\4q~ADZ& 233g_[N_3hڄߍЧ0E"V5蓋Vqˏ16bC 6/6,gAS8pY,TZbA9~hkEVphnE((y?|n0,@ۿ:p K[/ Lh!*Zr(!ub/P͵o?>Ƣ^ n1XŘ2љ3MB?"h*cbL,~ cD] $bgX0G˓p)nϷX <ϗoqj+Fq}XW/ݖ0ei:OoqoɥmhhY;@!K(FǢhl6\u̅`eY1uu;{'Lh?77 G"|0H-#珶[?Xkw)  {7o_T^=Qvi͆s?iX`<6[ΐ2T}0q @ X[_wyQ6t# woB(Xya*XlGr(#?ڳik9`,%ǛQZ6l^Ӊ[,MR{PIfffo`t/K_Z|e=zLe6fP1< ^SY2PA6h)S<'߷2҂(@gawdvlC6+Z,ش*GF܀|ܡu ظ6 IDAT@Ј%p _r_~CGikiT㏝To@ r|S6fۻ[ZbikdfF1V[z!LQ@ CacQKy=^on݊ {dggw^TH-\XŹ:&^3x?!g0 ӳQʼntep X-hM.q8-~n(?\΅d[G|Sc jA5BNI!+Ms)@ 1c^wIDW>o3ԣv@(|ge=n6ڳrС@[nw}ƌ=ǹRAc'鈭 Aenn++:?njnl 1afk9?dxzZi-D00 cY,HQa.#[x ıaCrB=z|OzVvVnN.;w456V+q F]Y= {&y3 nC>^Mɱj,8Ч:/,gx+-`})(\lQxęCR\[[SOQ?\rIsa[[JgeQ4 rlRdABt[P PUUUE={LWjVU,wbQS7#{svUVkooK/$k WFQm۷릓4޽{е927۞gtwbnS9[nRCvG@֣G-k17uN=fP7 16m5fɣFm~` Cpp,+p8r hUZ:8)MƟv<[`d vr=0sVaiЊ3.oxrwev{@=ij ^Fx<(eo.l wp?v@(DYꇢcp9+*utb`jwWTՋ0,n**ꞟ?qxmifYV:Ga.rk|𡗦݀l+B&j0@ѴY ̝\>rs(dDeznW,aaeQ#\"Ƚ"jWt9S:\/r޳{W^s}v 5V-Lo>)n-gs[ֲSrXjng7y l>bBLs3D"ӜElCsD(Js&Lޞm&[hڛ-[6h^ڽg|oFf]Hau'c:AϧtQD9Ӧ` G%aZ<#ΛVOA-7Ǎ3J_u>xhss- G"Q_0OqhD!0c>hKj߿oEY0@8҂1ڬtOE%%%#Rߢ>z+ Z nQ-Ywu `?ibv8il*Fca(#rnEx舑QN{ʽ[n1v8.=2uQDed]udZZiVm.tٵvHHHJs9 `pD}~skۑ#G>|hyeB99B1(75\|~?A4v=x<#MU{z/=u VLue,ښ=0BQB!G^#5@yxzrN2qNV+>v okJsҺ,FcL,* b݃3Fz.v<-OU\ p/X(a 4QhXiY!@ St:].WJbMζ{Q&t.~) y=nYY&+hX1ӜNÑ0IާY6] n"ı@& .8_E{kSwaƐ Y,tNs:3PO *3%BӘO*eP~,*)MTIOO%"LONdݴ4]׷o 薈1Faf[k@޽wiOP{{R,Х&،:Bf߿3-y-W~$D`MM q,Bi{[P8~]+%nWRpp(Lt¨8DzGFB@Rx+XQ`P nEP1]D!!e"`j嵴t']&,lm&[\z78mn9t_=!8"q8T_GAL沲@ (] 烁@Qq; #&pR=bvVҢϭHuQQ4KKK|~guKs=/ZxHSƙäC``W ~; Mm"V=]ۣx&&Kd`_Hk"?e."nBO9Ξ[bAŮ as5>L*>Y^]nn?笳?JQ円o}vƏwM7i@,+/U (8q-2uEb2 -[h}Ecܜ܉_s5n)F>{?X,nwo Jǻw?sJJH3g~D}[Z_e>|q$ɒ6cOXBJ6q+ķ=ݾp֖|БSp `)ouQ`:kǿK bw&MIJ짟|iii3/> /˗ ?{A//^|ᅚ$0Q`[ZZwpW/q)-^b믾Z7o~th}=h.c{<=PϗВŽyޢ}{^VLOZ:p9+ +++ztv"=p}%}KVkvvݻT<3fL^n_qp!!} j̾;6nӧ?J[׿Nah"xƝz˕FӖ?z*\0.rvvvӑ#chŲl(QXأfF"v$lݻC!:—^z|ǎ{O]t\ĭ}xWNzLM֫W/ ÛgJ[Ǯ@\~i?8[upc*tsy'mذq؈uX gY&h'/qEv{>}UVtJo߾gyg?^W.N)3ϿP% Jm DY믾zyyNhb<}^z c8\4;PaϞ5^_***S:ma+{yȴp8|KϞW[[WQkĈBJ.nG6_8p yjkkwVT;޻W={z^1[qoaڵ\.W>}nJEQ{ 0{$vh49IJs͜?>˲ތ.L-ճgQ;yjYÇ_z唲=^5eY^U ~Q,oY+0fxVV,woJ /oYq\,;T[ o>ܶ}S5rӧhmi0ơP(;''Dh$''' 6!/|pe~G?:]t$G:+BHZh'\{\H3:/<K.^% WuqF}_~/)cǒi+W>c2vغ:YgUo_|Orӧs9 F< ^o(L,fddTߟ̇>i.{~n]sHaÆ 6̄o3fwnw]SΘr]w=Û1gFm8㌛o \py^rIt:O|fΜxf}3g߈#JK%t+x<@ݸ<. cSjjjJJJsNVa=@ ۷C O@ׯ_:bTTC{twVU/3%HÇٳǁ4@Z)?c?7xZQ^ofѶ-5wL aɥgfא$M^N۩S[~Bݳe^uU߿wt2i͛k 燄Y&aZZ111V6]GB||vN<Ԕb V;v2e)JKK?u4 4Ux<[QeeeZZlv>_RR'4CxyV~wlݶٷwHgg{&量322>EYYy7n\p]vKLLPWS|ʟA#>EFV8[ԔT3SSQέUrJ*Zs3Ѯ.U($"1?/sgmiVϳچ<J|劢[W^s=z|TTŘ Hxdļ=6֭[n)++/^d挙0چF|"Fw+󲂴JDܹ0cfHa6.[w0LM A̞5+**}ՕRFFFN)7{(yD}xHt5h𠳁>>>{:uMLLfy9y.'EBmkqyqyCx<~ЬuЇ2nB5ASSFu103%1hׯ 455[2;Iɓ&oݶu7E `0JKKSRRb?c'ʣǎSPP㏡6v86i\5ԑw(E^^NOW(/FgmH3J+2:rm ,'v)8gwww!cbb]CCe˖-[((co),C{pJJJAAQ6O+hkkh˷>SL8cǎ34hҪU^60/--yC\\gψD?l5b2MCL۴Ϟ_,,F6F:0C3dj fP~JH$b ggg߹s'552nݻ/?O[ɥz'?~s7'yfhtC##YYY&AР D2NTX('GjI9s?l0id>R˳ٖ/Ϟ=ko|:njf @`2¦<gbjB%z񉈈uO[.{TKϞ={Yjj*/}GXCRF;r02Ҩٰ _YIy/7169rda'k Hf:|0Z#b# uY^J=uTtt$"[n3gZ-[iu6iOPmStڦ 4b0ׯ_:F&t鲬L~ʻw9$%&Mt<Wm*YVZJ$ZCҿA`ii)M/?SK;f̪ի/_TRRڴiӠA >>ɓ's΋ ;vlNNŋÇ_fjb˗CEFF{={I5UTV޻wOSSH_{ӧM բx ;bġqToM {76ZSSÏl.{@ \I,VZzzTT@UyQ.7nPWW䤤ࠠ@ﷲܹ7<.60 HE@^jQ_@  1bD.YcsFhmٲoncG"O>{ٓ'n֭_pp0z T"cGMJJJ Nrss0ap8.;}t{{޽{ <D߆75}[MU h4zP|lB"N<%m|J{h4QiTnʭ͛7s\͛GӤі-[ 88HR|xٳgwӧO;|vÇ:N3*5*jp\:^QQ!bOi7!񥥥8ю /.)%͞L ޹k'۸q㤿&/_;FF(x6!!$q͚/_ {MHHzTV?~6?ZCI`>=!HyNY-(,'HkٳGd)SQ߹LMLD;**Fh2 XJѨTj\l,xA,(++[R\ӧI4T-?Ì3֮]plr+$׋l>mZ*)Fk޵k]1UTU%ݻ!@X X IDATݟ5sVB|ӧYׯckk;s,HNJJN6l8 0 &&f*/4q 1KK$P̚58x`]tcLL|J["HAA^]]ӧj>}lh ?ǫssw9u+# !̚5KF zjFFf y%x[6oFHJJqtrZnݠZZ!cDm@C e=g6xGQ@rۆos L(B|Xmw^24hu~9?맴3zz|xNSSS[P۴RVFF@GWW^^ḩ38NS'BeeUu/^iwNڦ)_TUUF3 eD9ڦ{ӧ-Çt@ m ) AZ+h_K:F,Ɵ~vT,F02O{<M&``*Fk )֭[l-kos0:4|z{4zn{lk׬P~7v͚v:& >QmfdmڵٹRWz򕠩?|͛7D">Ԇ+W.D 1?n\ddsii&]45N. eJ.FF),,6Zcr.FfG@UU…ndssݻwqF?~YKlwCAg->6QSSm>66:]&OH=g!ĸgMMPUE 55 ȏ t 7PfMMkj-6ڵuvZZZJJիW]]\9N@@l˗P裏'''l޼GϞM2``@nU` jP7@!~llsf3Ξ3GP z8jԨJWW76.^hgQNܹG?Oܹmw7m^z5cGwl%1"B'!%%%< ׯ_XVVxvĉpŋ+))EFFur*++VWWw16! iDbXyJ6J8D"%''p֭]v]RUU\ۃwnɡ3ڝ  ERO:S^H$vm F>=z/::H"M0c+WSeiaݽ_~Vty`o*/,,ll'09soۜȇQ%dÒ NIMTTt2\S\s2L4f "#"oܼȇQcƈѠ8vhIIQׯHA۷eۻÝ8yRIIR &ǓHD:.!l>NCp8F݅&.|Ѕ˖Iv(<{[233) **ϟTRRfkjj<=j-觶H$///P(B)9urP=zt:!u۷555 &:ɓz F'""\x[[[&1tذ͛7oJOO;5x<Um*qc0蚚ZjK4llllll&O{hTsΝ;ẺzOOO|r^>~xy6$$$]4lPd!ʻw$''O>O >ʕiiil6ҥKR_rwwyy!ZG $kM@̩S'ӧOGC@EE%*}{Ǎk׿߫/EFTvu߷onׯ xå(HmJpfnhKEyj(IIrwn={ 2DAA'XZZ11<@rRrpPl++}kMd"pBgطw yMٳf"lk&G \.FDc%B>%a@~)((dddXXXaÇ~tݼ|w95R1\FF?2/޵k7YT74577uk׊nuYYY,+33sh(!׭[';pVHxxՔ)S.]PhH&i[m*g5CgO:W k33D74Dr2d5AA C^KKz^?=qq ͮ r J]tN.f3O3 }~}jiiy]Q# uuu=V"lxg%2DGO<ɐl`dH^z3V4 ]]ݼKmJ6o~JjjJjPj>">|ho޼ٽ{wCƍ6׶m*6CrrC;}E/[)͵5uWQ'fў -y "$+WVX|;ڠV!22ɩD0f}ɦO ڦ%Yd2Y__y+_<~파rY=}={;ٳgkhhH.fFFZFFVWOצ1 ~3f/_x}}>66ǎֵkffk333k(?G\x}@ |mdGGǵk20Кϧ|mEcb-,,~usXiQQIqICڦy)FGCԧf߯>|oP$ //>睖V=m2m[ vvvnoCZשS'BUUQmS9yZZjj)BIPAOZ mS:`08\.#6E' $>`"_?O)k-mSe`%OX`ڦ;O A7}ڔVZ q>O"0ܻZVZoF% uT00?Oi}w4`caBs[oSYY #Gh)F5F7222ې.nݻ fϝ=bnnnjj:y򔨨WWXjUO<_T-[ܼ[{E%fff_ ܜL&QB+ ioХK++3fIh5@QsZ[[?>11QKPT&JmZX6l`kk~$`+ WRֵVW}zqmŚ7o^\\?GjjJjjQJK6 8~Ev6PԣG͞=AAA+]rJrvF65k֠1QQ;AWxּ/^|Xh] \z͹|rxׅ@l9i@Ν޼yz`憆KKKO?!ZOQQ_ThѣGG>yd,SRZ" ClP۔7hJyy}-\(}{m߾Ȩso߾?')*@1s*u9ɵٷĄD"yx " P@n݇8)//sVRRҷ_F_m4XYlOzq&0P0޽z58kӧOw]VVVGGw;vEMO_ l޼yK FVVUnݺAXX߸@#OLquq<433;f PGGgf>crrt ps[ D8ڦANr\׌',iӄ'OH(+\fS )BGBe;w^I5[6[Y[Dyyy{{ 7^={Rٳf7y޼ݗ***N4ȑ7n\wuuUQU%W0mteeyyyg瑷BB8e߾}..rrrJJSN 8$KA4mBsM%h6XccczqyH$|Z9#:$iȐVB]ɻwx<F"o,]t钥Ҕ]!M ?wZ[@?nrwgQf̘^]]e֝>>PX!4@ 6mx?42d EiٷwKKKH$%KLLLD/Ё(߿ѽNOJN-8r3jAnܸe6N3f̪ի޴UU6lzH"͝;w&o Tt%"!3.,mp<M]G373[da;=Vz>_6>Eo~ll.,< *HXXج3N`sHmoD>*.)|H& 32"/.)|5fs +%+* .$ /+)-{ӯo>tHО)i.[+q8`ʕ˗b/V,8\.F+[s8رNoښQD w4$i&Md֖% 7o-O ._2n&UUA455 &:ɓzp_ѣС? As -..ogPAs\\\dddzy9>ÁMMMI$P(& ы cl6un Ǐjhݵ[^6,6[lhv'ڿ{E?yd޽|wnIfӱ>\.F+++p ->EKAK-DO98 ۯWP) u҈ "!ZP&ɞ5ր"˥R=zM\n=Tj Z''GR1?AT4m&5up/_߾>cƶm;ƌ::n[VZk&M7~5k^z:ceXb-ty"$+=|RR~MINC\\\v(tqSN+}dC떖ȟd$ݘ&"dvRRkTTQQQ^A-^~t钫xÚ3M\(otL6RLZSSTTb߼yi7(N޽{݉zS<̙[BѱS@ZO=I{pTII~{eZ헫W}^ݭ[ri555 ˗D"I dp.QNA,]㳓Y0}Ll AXh 3s3tGSK gxm[C]EOAQ< s >-pS "5ݗ/nٺu֭ eFԩӑ#B:b0`%dHKM9sPP[[…r `26}l DⰡN 4&4/_QgϞǩMs Db^5y_<cGra||¢iM$R۷'Š>ϑ%6o];xAY,VfV޽ЧO\ ')a4y5͎O8| ۛԹȧO->ctmm;w)={g}իYug o 7Q:{m/+*(STX/Y۴0/d. DA:XUUE60鍦Zw~ullH)HO8f׬Y#4è۶uz˗-ݲm[pkjjNWll3k5 555+**>z0I1i~J+*-|]mmVâTZZĎzdeU!EQup襤D :kivu 8޹ ':vquCiHJfO:eBg,pp/ŶtɓL&eem%####C4xcGGrk i@ZCJ"##> /+/ڽiNW/_khjhw&!KE!gzk< k wбY x엺zziIIqqI)쬥%vH"o_KJKssPmSS'EUUee9 {k㷀mmPTCG䈲Jtdr\<'#+K"Db U 10Z) WUQg0L&C^A IGm!11-mnG nu&P/ @"?w3!9ЁX0py\8q_" \m !?bqA`-«{<I[s=EEEشU7fs:d$7&)Jt#GS000Z̧```&ɓDE$䉵EB)!BYfB7O"FEkj*++nݻ8y|Zly݋rssdׯ_+^]mnnN&?~(F P(fffݺw@2'9tȑ'Oq:Ėp00$))3nnn 3|nJu""#x0*JUEEBOϕ|ۗl@>qlRGӛ={V Ďr2Jlbbü<=#"#F?q\[Ggy`0fΜSDׯ_~BBރݽ{wp`y9'N̘9Crrއ޿j`@.--=y"qqq>|Xh] \ZppEA9 /2w<117gϝMKKUQV>~xNNNNNαǔϞ; [J[{ӧsnݾtpTOz|}wKVVw~{511!H+B{ٽ[!Cܩ VRRҷ_FC4j؞{yyzB]"@?n„v;4Ԝh)p\6Mi4Ng| ;;;;;,ѡKQQ!((1{s߮?J.beiM0X".6.lԩSٳlY ơT*= 1>抟i8ԩ@`?~R-_]΅>Rk3gA7Mr1>hϟ%kE&uHHHPPP277$3 6`2MM͈D"ɠiEԥ1FH%Z9!!~MЊ/X|]Gf Yl٭۷h4J7bKKd2+ӁtiDha&#( j-%Cѭpdr8.pL@[Y[h񪪪;|l+W4eSEhpYYY -ؾ};r hfj Gtz~~6g,ӧ`ka,,b´'L(Mf6agST*z=`_1VUT %%VDKPL,mSclbBiʭ[( lo^cccYYY K??IנR;vptt| AZ\\v:GGaÆ޽JJ >>@M:Evsϟ; E533+0ly#Od ˗/Xp ʉIن-t[(&==mҥn j}S<PTT$Z*?LC C")u\.'9)) Q{hY:؉'0EfJMIɓ&4!Lcwlt:R%M-)'oߖ,^RYUQ444owsΘڎN$ɓT܆h[?8{{ .f\x[x<޶ێ=:oUTU'MԐO@@U坝G 8y :͞%UF$+7m"$j˗/ݙ &ZJfTT[[mpvرw˗vڽskv֦R5. uiPC=<<^x!MY;{{M(CeUc?2e =r)(J__ܹs Ν˓ĄDXfMGhq!цh_:M|;ׯ][f%K7ohul\~ -.)q0ZSz'O,v>}''%6#t9ΰâKB ;ֳgφJ~gt_33sh1L6ȑ#C󧥥yzy pĉeeeXYYѓhK8!?5~)߾z6rLm KV|\Bd0 . "++KT7tuuJJJ:|-JnŸnZUU t:zXRZ |%ʆmߖt5.F4C577o_cZ6%Ɋ ")A4*iZZ[x-._IKO,+&:Wpގ1$L ې /-)kZwakOQA6-*.͋&imm MrtutsfpHyDx=pjhF+>"17W[G5B8<^^AsyqQ_ĬV%YBhiifRwĈQQ$}YԦԟaM=gVÈOϟ0ӧ"%=LMIMMщ'M%mHj\&FQPPPSS}$o?vgm⌌L}}})E˶m[LhBccj'O>|pVV&wtrZ0o^RRbN)~7ofeeP(ZZG`_g-FKt#iXY2JMMMQQQiiwo߿Bxpݻmlzoaiv tttû7o;kkikڦ%e^WOO[[Ȇ gϚcaid2|:ƟSשS'< /Pe'ihhӓ )Əo/{0̧?((ȓHDUUd2PmSYYD"p!}a48pڵk_3:;::Ο?Чhj@EeUC ={ܽSZRf+*4ZGóWxNA^^^N墲o8oҲ9f[BD=6'!ٞ;9.MwXo <㷦=޽s.}FU{!=OQFbOa2G 13s2ر|e,9cq}=WQ=g!ĸ``jQ4555ѥ1Z!?]B77ĸN_[۷WWWjjjmFWG۸I=|PfBHhQ* 'Q`L<9%Ex2ooD'ꅾ222 #_|qrRRR?;jԨh`Bt"#"oܼȇQ mZ; DC-Ja`1S ի!CBn.][cc}XOO`o7nCDGO6$>[}"2ydffèG{/--ѽqZ޽z1w NB"ѦzVU6`YSj}.(($/3&PMM!D"}**p8NyǏh4AFVtuL槢b~UF6Ї)d}~BȔE?ztoj(w…]uFh% (*ԧb>ςاQo߶}۶/ج:6@»4_dt2]]ݼ{,>!ʪFl+jjjwݶD2>II_|;KSgkUUUսGO@:jYgbj:!F^Dds>}H&{l9~|W||<Oi5x)GVSKm*SWGҪ7 !!lE`ƍ(sgrP͹gϞ9ǐШQΟJy㆝ty+**BcccXyhXXNNNv{yDGDG{yyv8++4,T̛(ȌjUUU:.,PSS00̇ZPSU+WB?޽{w nnz)''׫WOwMw;<}-+O&o|x VNw7w;;;vc7mJ)3X,VƩm*r= hi}--m&'ȹh +%%%%%%0(PWGۛ,i FLfhXhd$cJ.\ҥ%%`iJJJD(Dˁb,aXڦm* >[99ٱqe> mx"ĕ+) Qn_#3p8@xǡm*i%{0lFJ'<mHGGWEg1R)Ǯ^ݠ=j7k#G&&$![[c3piiir$9k׭X t䯿B(QQ%%8NWO| 0Е߇D[[۷|pݯo_B"mShƂ -O7n\ffF۷nER(7/`ʊRSS>lbby[ L$^ކ@&ǎ6NN3y(3g'Nr>/W [UUqӦ=z/^Tlï6\vN9;7ZP\\ojj~fff_TT$Dd2YOOoƌѳGEEGi4ډ&&&&&&'Oc0Ǐgfffbby?yo^yA~ʵ#11qUU\rv׮]iӦUH+\F~*ʕ˺Çcdd4~ .p_t~X&!EQQqÆ͚57//[{Μ9XXӧ555T*@&oݺȳ("2r &3 `Y|[%?ݻw|kblp8SYiiZZǏ_999>Z oڏ$ |yXrc :^cϥuRQ9p"?????*; <A8bhxo\_lHۢdaaQ⧴1 /]O>66?~y&Vrw 2dӱ T{lNTW$)&%']ze~~uuRwsNӭ,}etRK.=US[z_|A;88x{{wޝѣG="[FffFf 0ќ_R˟"wBC7nڴ|;'$ڼ}W۔ڷ0m M'ORQQ4}jjj\vz.]n맠+B3ʗ_oݹ .RmӞk[۴ VXeP_jյׅ6n?W]]aO6.^d*!UO=gl55.+k<<%s۰a{g6m:sR={$>|Ժ!H`"(1}}bޮ`0e>zz[F{)@$ rAY; kjk MiyL&1Mqu.7o Jtx"WWWmFj9G۷;(yFF_N8}e//ON WtQ?y2kDF6>)'GFF=nldޥѣGԻtp`UUUk׮1240?Xo߾YرPQyELrpzΝ 424p>Bې`9}nnzz:nfKю=bkcckcs1<)MԺjhhkkwPSSSRR<SrRNp]:G΁ysuuS*v% i\`M9ρAGeϟIJ-Z{it:}Yla0|VWW7)55됕UXU u45F@?!ٳLٳ*/#)QGDR{ѣ|ojZziY+`ݺx}*55SNgΞ}ےgΨ$%%>}JDov ~7z5|ċ/M2Y<8`L: <3CLLLׯ_UUU\%"]]]bcbN<jaapoD v<7u4LKlڴNLE mmʕW]gKR#۷ ܹ ߒBԩST'M6tgxq;&PTX5L@aafv@Sa>|LacJr1gBXIK!|b/N_xիBlϟݼ|ͥNInݺI]n(((7nϞQ1SRMLL "⁈'p161FRfm?zhFK.ݻכdZBp0Vy=tJ}͍YYYt:(EwibD"~ҥJ{8餪 2}tpsw}%v ww"@9rlrsM6.]lٹgϜ9{ 7933sƒk݈֮,8"%K׮)՝۷0\sŲeˣ(Qii-iiitf][ZZ]r۶Ë-ZvsI3'O=gNNǍwݦ`7n޺5q$U55"mݺ9kDNNJhW^dbS7wI.Lzڎ;1 ={ڹkWXU%.MTGi'W2#xi~S]S=qDggfy5PjtH+h*xbJv6oߞ8q͛nSJ!*({PN&d2Ժ}񸪪4dX,&IUU}'Rߟ:yJ6ˉ W._2t{sx-~li5m'O`Ƕ𖞞ގ'MZ7ao`|{+jаШhLCOOY>BBvH)6j9m=׶)-TaƜv´Ç"+гM5M~0mӚZԻwoo_v|_NMD؝ $ ln\a7Ǝ`\tYDŴPcbb] СgtTTtTYYY?$\)2mJӅ`ڦ5ŔE#ml\f$ɓƅxknf.''@SŴP[  nnvcڍݸi#DQ!#PPf+(|^^8nxEs6KuTMje#]k+k() Ѣw"k~ yɻմMű?cï1:*^[ Z0BD[o[T&!$XHm ~u:lXpzl VV:tRMM W H SSRGSL* #wdNgCBLTKK="E15`ێ 7fP^%%%Sh^b;~5;; +\Μݚ$m~~0|pHNN/!Z0B|dܕp.$@N#1\mMmSg۷5ȀqB$3P ysJrje -,,gh)p" ["[ZԟVR\Wڦxͮ QATGWGlmSؿ_K/_PPTпL͚kdúPYYY߿f6{xp4999#׭](jv IDaaҒ`?y34㈖/;'@`K H͵C$tLR&6m mڥsgIqYYZY5sݜ.]xYҩVvۖD"͝3w 7p N!mh4z2~zӬ7%?=~ DNL> NŮjzlLp0cCSJߕ$%|֔\(הM^ٌel``2f&q b EtQMb~f@OD)!aO"S31mXkuTAHlSF&@$ۓ9Άb:UmiO yi@!C,j9p IDAT$AD݂|C\JT;޸G.v;vPwPrzo$)ԂRsUՖCôg,8zo27lC xiDR+-mbe x<^*}2- W_΃,ǐ;bݾ-!\%nl"r:Cyl" @r"ZI?.Q v,Q6u-Mܤ78@ xv >sc&w(i)d⹴]RRV ;aܦP ?}&>@NN_ŘeoD:I3)/h4p89"!v 'v=ϻ@o$)o4S/BO@K8,$PxqS{d3 vQS*sehׯ_8OܦxQ@Q~?!mο|fW?&:qe$Pp8x}zUT|aFxƎnX5`7ʡ&hjhٍrWMAHnSD FFj,x|O?@-83BeV}}4cch7H$ff?yUkŐC(]>ϛԌdV/KnSD KޖnsSݢ奩?N}į _>m雰yZ2S)`g0|efVFjFRmm V4/뜕moݽ4Ji __9_]So6E CA}U^-{3XDE'@p!l {씊~4_L3,37]g.Y;ͿXg0X#"h =6dLSq`kvm1mӷo&>L|0ŋzo#FAħϟԻ8UpUD99N F >axfe@1◆bimS=g ^^^ 2 :ӧO>}HOrݻwa/Db'iY}M`Ыsdr>}(((H[1405zQ\]]y'$())ݽENv;32"2ֹh99!!!o߾uswrQEEEl_|"Nn6G#"uC`СsO:MS0H$Q._^TXxڵ bGym8KRMe2ׯ]=zΜ™Y)SDkF{v쓡+m*/^#%#8u/kJ^^~m۶4vLᑞ. LMɞ"Z0dFkj ӧO.ҿ__()->_[6o^|\ܩSFZ[s6lJ!CPLm*$v -iF"""mҤI***rrr}zӔ)B"3XM8M[2 4]mc۷o$K`ݸcESb,im*PT0P^3c7\koR@mSd[ HW۔=@Jj ݼTj0C8ULEE\|I&=lقb,Mqx<@..ID… qB8UNADETU;M6}O]]]YyA:vlvXqttCN֭[%RDK#L$)W| ÆimƍulF:lhs-f׮ޜ Ə~5<*X[s7UMurrJMM}WYҚڦB'88""]tqtt?odJGc#K\ gӧMwtHkM6J$#"#KKJx|=ft"Z\ M"렺6}6ёp&:XȨ"c)bAڦv)i"()}bJ65oB@ )B@ )B@ )B҆MTjmm-Je0H)+/wpwp(+/T@@U+xXZYq]rɓZh[-h ٜ߫-GXJ uNm>zhضmӧ΃+{apIhkO0~Y2Ğ9yIuuukFMVLmmm\Y {è_MU OL TV`e?2oʕ+X ⲥB``Ю];{R#c0m}񸪪4dX,Lش;HէJ0/… /\ vy޹`)[Ç @8|Oq#v0rJ{Ncbc***kSdI6`TUUׯ[I),j_MCB1U ==={{{ggv {:~xl\\uuubBBS:Qc?"lׯ]cWj"##ܹ[PX@몡akc3opG<`[Ϟ=ziӦfYsٽJYYH$xPSUyϻw7nd$80Nql\!{g<};,8*Oʢ)2KTHemSL= E^^l9X,zX[Y@Ii gaЏc_~ͲPTT,=pws핒DM+,++;}!:H0а0J$cܭ5B^SdI#mSp6 ȋDruT. 0aÇݼy33#3;';..ws6QSSSUU'[n7oNHLz+pݓ^jcT}UUl( fWMCHhimS_TX:j(varJ2-:[.'uu::VIIɓOj| Y _|y!8Ȩ)dkk+kksLqA@x^C6:c_\lJR111~~0~඼: L{{%x򥿿?YM""dh۷o/_6mޜHJJ-((hLfIIP Hdݻpmc`@ѦME,g8$>ݾsg !3: LuΜّȲED,GXq.&L k{UzZzzZ:gmS0fɓgeM8}&˖.kưCl¾4qV@=f(ESd [ؠm֢ڦ҅D"+H$2llbrÇ ٰnmǎ9lO6w܎**;w4ZQz2 `d҄ ׯ[ :tlXȑ#lՉD"L6246u3gUT\-[67u 궶&~*BΝmmmO<)Tz>Ǐ%%%s]]w{zَbH$viiJ-[̝=ܜF;vlmme叾L+am3\ 2S€Sd 6&=|h|ɲ&Z2)iJ^`7| "w}}-Pcw(C~6EpmJį gAS4A1@HS4!u!k~ x Fwܖ+r_bp' )v gAh, 7D<63E"MbJ@ڦݽǏ***s9d\///old4yX;!)SdO[6]t){۷oii{챵i/Pyy=Lc̆ 4J45iߟWU}:DՑ^}ٸ{ʓ /7o!6hGfMmSJe^ooV[yyŋqa]IoImm-+X蓍aFR!6(Ȓmz~~n"$'%hI{ns'wSNi55%XSZb}d[ }imoڸq)jK"FlR~@ԔT"*6[32""CJddk6GYvM'c8mԩqrr20[(D) }tsPгhSڦgΞT*dJr"C ^p=oܸKqq11ޞdɼ~Ȉos,+K+pKS_dx+l߹#.6DSdI6h]r훡M\l͛9۷THkk}}}ᑞ>$I\rqXv3A֌t,X@:A1Ef`ڦF ڦM߼~M&[.9HW %̝;GĶ_T8& Z_s]~mYXY&yU=g_ OPTT\fȑ#__xQ!N'3X2'4!R!:( iMuPRL4ٳN**Euum蕘:4#=5axǾ"""kҧwo___؜9{`֭}^/\(//+--mQ D .mSNmӖs m:~쨙7?.b[yy8graaa0gll[[[Zp P/cRVV"-[֤(uYHT ڦ N%*Jh},DG<8ŢE>} 3=z ENNi:8' ~~~t:WϞlm2"JD FR(XBokjfuڦ]5 !M3@XHx\͗\ƄDf͚;}=‚Isṕ} 䪐XB{Ak'C0Y|L0mS--mLT0ZJ3lƍSNݻWǎkkk^8uOB#026H i kk+W. 8n>dP斕ȣ?|p=B0뭉vM H$w6M訢vNùΝ嵛dΘ1S~)55>>hU!.TU׭[gϞ#G 2DMU}ǯX\{A3YvMO<9~xMMM //odl<{֬`Cɍ{DU0Syyy >ċÈ#} q71A4 \iL4mMݻ3{֬UVqxDSdL6{tl 0A־ ZSdL6e 6\*Q)}k~mٲNhSVhڦSH4A1@HS4A1@H)B@ )B҆hڦVVBW2>>7nd2L&sÆ >>Bhˠ5omkrmx6++ŋ/jjjXXL4O߾ڢlڸie}r!TS ڦMZ, M1 QP(IIB%$&n߾ݓ?xdo .@2,P6D*)26ۿ?AuF#ɽy Io`ѣFruuPӧOgϝlٳ,jŊzz߿z} =l5tut)}$={</S@FffxX IDATOt%K (r,C1E5m7ofee;'J_1u;vZFmذ1'7]RXXXXXv!NlFDDGEEDGGWUU͞5H$޽Ea-//xRjjS8ٳ'CՅ\ QPw>}} #ѣG%*avϞmڴ cNyفijji7h `ڦ5-볼 O Μ=3~vQ(Tܜ:xyyFGEEGEyz꠬M2x߸y&NwޥDQH ӷo8[UTT^.ԩS#*5u ew 1v ҥˢ_B8zSd[۔N "ĴMk[(X>ݺu] y„ǎ"e111^w/^o}JT4ٍSPPPPPk7v㦍Ez[I/_ӧ[npس{2H477 rpѕ'_o޼ʱi顡wn R&MRQQR墩Sfrrrnnj;= .mS!9MR+W^ l0 d2KJKsss/]TPXp;vV.-)KF"VPRZN<9 tRu6Lȶ/YkÇFF؆*PTlsWJjJJjJ`P^oSQThL&34,I)--#h"ζKPL%MZTٳ :u͛9qqe;'MD@@hh({9B"3ڔ5|=] znN#GZ>}uqmm턉؂/_ldd$d9s&M\PPP__/`+TSScϣؾA)6>𺸈stt9?|,Yƍo߾ht:=??'o?QT*c9OL[7o هM""dh۷o/_.FMIII@ p8wotϷn*M.5$D"nbAѦM /E^ B<h1pᜒ$w3fws}:ޭ[}M0UAի+ilml9RB6thBb▭[]lo)m:w"(נmrڦbx\%2++des~!Hu8,<]ZRt:pQp&O:yL۰~7o<@ hkܸ|ѫ׮gegWWUiht3[?T#"#KKJx|=ftf=5mSi6;Q[ִMEsU%67x8PPccX 5; t ,9˃!l|ڵ/=tvvpH8zr>LZZ@"իBpi3:jDu:&ibf^UU%JHHȢ Ŷ,xEJڃ?~ _;OX0{6p*"TT@L ?#ÊpϒK6*L[6Yg+עO/Ϥ䦎fdfnݲFoټyҤIHE=E4xLN2g Zy( uu1ǎqW{rslyTC@17G=L64NG^4y'9"ikڦ%%%t:g֭/(,hs@aA#Gx>`X=&MHE=E4bŋ0>;Öߍ/6  !!|3,8H$8 %9uꧩANu@iSڦ`ooҥӧO}r\N }vp`~ReO-gz K3+0=lX˗Ն iǧ9{}Tl?^OE2ҦM`A޽zعcE9-q"N[g^EEE??>{ (.{hi~Ɣ͛Ax%"8 ʒчێ)Fw5Ed-obQϟ?h_tSDK-{2TUA}=|M÷o %>4>B [+*6B}ZZ۔ЩS'-`t}QqQ_`ڵB9I>Lz[. *VgLaGs%%B4`+> T*<{Wz2 ЪUt:dgêU BWo-\(9ج\ٰ PS | yBh;ڦT*FKaÆmO]]]YyAf51iڵL&s޽o (J.{?}km9s;(**::8ܱS #3g\zU}}_G_HWZelbB"-,,߇Uް~Ñ#GlG٪D2ldh8mԳg > BQmӶ mScief3gڑm@ڦ;&0?j[P 8eKE6j1ײM0F-p bUAM,b$E2M*&kyǹ[ݕJ0wǛsk}>'O5eה1t,OLt&%&&u,<5e6}Uj/\x85孹b?ަj: V:aϛDL5֎˗do8Auu$(B{prvϧ.O5qϻzzzAqIzHcczߒJ\|<U7~5D}N8J"IĢ%K( YYJ}S:XQQA JCOOED/lbB4ǎ [+7/D܏㸝inܸnݗsH>2+S_EKf];%bTbVV=aLfNψٗqk6B`@7 Ӕ\,P JApap\H+w+l@)(}Z;Q.]H3+Ry\-tx$p{gW`0l&˓s9s"kjL i&n.P %leO\NLg,~:\!LγwN))9s/7nssׯO#Ife Zӧ_,}LjU𨫿TQ^FGsbw}5k֖}dʪ*jmdީ'nSGKĖ͛.]$ O,Lցvkbze=8e:ڋ0qeq 7XDGխsyDž֧qqvi* | xVOQ[^YKG^]aqlٚ4-0I9rsVBJ25f\ZVUkka"ۑnRK?M?9q%#iVRj.L\1@*1 ! d3$bѻ|B62ba{= EF,d7oڤRH8|ef3$b _ЎYPowPyY%PUUqojj<5 !XGYx{IX|%bQUUЃ‚Q'`JU@ brd V.־VD\\Eue\ h[,˓Y/j- dy5gFnE';ʉі ѢmI>L)99x|QZ?OM&Idku־V@zPJJBI~W5N$bQMu5BkQՖ%r9%ijj466^Xb2(9Ϧ${$\X5440hbznǏ'I:3ۋu+Mה6f ˃fn\@@mP~09ua?9,Qp˖Ë;OX굀AЏAX`2送\nv?52 IDATxw=3;yADX 9@zM `DEŌ`U1YI&Pr1a'O >:9UΩn9Ly 4hРAC,jՒ/ϋ']% z=HLjj*iiiujÀ*yw 5kuޚCuSOr=PiuCנ+9d$ѐaXڬdfdҲe+Y¢pt{ҲEKRRR\fO 8á^M]Qd|2ʆ*[!+-@$JQTߙ^YImF$OԔX>D[)- ΰeՈ|X$ԅ1rDM_8^?(/-cΝ,|n`dfdr30L D)$I; NSN ~'lNGl<1zňBYM:Cj0lWZVA- (-+˪QЈE,)RTU㧱P 99IB,2q0c+D;Ec9q 6kێ-OZL"Zn}yy9%???8}EEEi{޽Xw[s6hӆsۣ RRBݪe+DvHKM]Ҋj>$vؾuWɺgx]Up8%pjZ9x;w&##͆jnvL:wZ~S=֥MT;'8O|G m6Q˅eFAeaZ{+*jرcٱ}{2V-[eOY6jl}mĸ П)b!xRXN?6Z^9W^u%:C\u۷/]6qt:xÎwQPܑ}X-qp|3gзofΜC`NŽrN(u߱pGA6(]QQ(:ܹsXnAHK:pZ,a]6s߽ߛoniWҾGU|WQ+"2dee vZ@FF%TaO%v('ٝ뮽m_{UO۶m5t֮][\\܂TWUqR=zt磏>ڼ^#c͚5ǜ,s=2~hQX-3edҢQԺp=Vw$|W\yDDz0[,lڴ1cwA~X~=2|  d |嗈Z9Mw,>iam(rJ,SRRBFz8XUYE~^{ + ,)))E;33S\uRpǟ33)2~ӧOgiX-.?von˝;бɇ);^pgy&t:z=͛Ǥ OGbl#ő R 08BJK$Sd̬,?wGyyy <ϗfR?%)*jÔ)p8{{ƌxϿ?#G,xYN:$L&SPSgLP~~>z+˗-' ٞjOQQ̝Kii ?>:29z(ӧ߉,<<^zEκ.?6m2oGb]w݅ ,YK/G}*wwx 8N?t6n_FuMM fc3xwy'C-ˬ3M(JL01e$>*.f3xȿeoȲ]}QYQ/<ϐ!K矙+)l?."\`YY~`aa!wLF9gX֯_?PVVEN8m۶QYY7VUUu6(c$Ib~뭷7|=|]XXH@m0kl6l ?_}??O[;wߣԾlc(gœOr "7pFִun`4Fbݻih #3Ō$V Wd.uv('VSE><˷QH6!E._#\|O'~ W^y=sBnڵ[K/aݼI`8^|>sY~^o?}6Zz$@&-50[,ر/d7zO{/ӿ_0ӾCw-{ox[&Io:'O<7H52`{꭫/~LV^{ dyg)M6{E~7^|@嗗'Һuk,XٳXr%;6d,Z<=zܱ1uqo?^}Uzxv>cͧC}gfҷd޼GpxRSSE',cs_w^.2t:>2Ц];5{6K~{~]ϳ.%Ϥ)+8&"Mam~6l4m$Dal~_pԊ qP 5.Y;Oz׽~deex-K16{SO3m4dQd ~qGCqglwH}h\SSmm4Tqᣏشz5zY&[hF鞽,8@zVzGǼi3 :thÉ$J펠[.?>)aw k0x8"#=;Ϛ peP;SdŊy93K嗟4h`Pw@NLxW_= O^~ium֭[#"mڴeʕ!ϓ?׮͙(JdJE%zoK/鈒A=epeeUVxx۲e N9nǎa0wI=駟"GٹcNt:+I8No1O}wz3'dt#aC7_sxqJJJEz^)'a4Xt^7_͛3|Ĉ82Qm6{K%NY]#8ҋ/2+sYz?79%״{ ?8Nv{ﻟ}-7t<0# Q]];XÉ=`y'ywڵ+;y.ڸߡ ==>}tۜ>tܿM65rSѦ 5ԣֶmh'Sӱ#)ys?Gϓ)؍Mlݺ5- "o@m^[Ee)GN_JmBՔW+Lz<̞ny˦PS: Y S︃7z.?z/2Ǐud Fcȶбig {!xgΘ:vĞ={زe3No^'++'zo3x6Ԁ,SUUdBef/C>cvM]iSg<}#yo`ssTyik.h<ڵgUtB腋ѷo|A5k2?ԜއB{v2f͐Cup4s(;I8chz:kxwAUUzs˞={m۶~?bt b'r oX-^|/~ [n̟? 7"CmmŽ;jȧ->XQ&"$1s|sغu 5p8?sƞÐC:l(N3f )Xy睏$lT6ӘPBD8"K6Œʼn`m4[ݻo$I`406L~޽W_{K9xwݎ1Vc {WҪukߏC4iõ]r(F܁mϳvZyl9۷o'PV̛:B~~>'IQQ͛7uV3s9,6E/;d޽{G|^';;ukb2ۣn&_֬%;;[ QTM=dw S(ÆpQ1rͤIIKKk.,_';#"?$Iqm[ӯ_?9'xdܹ-[ๅ)*bkzݻ*&OBZZ{/߉exwSuI[:vH⭣oy4CII n2Ӟn{ԩݺuv^whOnݐ8OoSuqj>]Ue%g>ov;m۶N]sp ӶM̛ǒŋCÃ[_9.+++}twӡC{-[g|ѭƈ#U^C=v4QN'6{ #<Ȏ۽C=s l8N&LODgoAC8 BדCMs`قk֒r[]]YɎm[yWٷg7Xýsvٶesmܫ(>n{N*O1bxm Դ3^< o2ĪM B =z`0\W4oޜBmN˖-qBVF7m[\ Yw/{zv,<^"j͒%Kp8\Rz***˥yfarh7avC޽5{6,3w\,f 2taRr(m6z>V-[e)#dwD~ڵo駏gaڵ92(s 2> 32]veRz(xM!Hqy袋`Y"wC_Aﺡ Cy;O):vZp:mwNnkfZLDӦMII12s(((Det;SO>{yROfϚMT6E[ r)lܰ?.I"=2D͙3NpQI p㍔Q~%ۆ <^1/jm"کƇBM}٩t:r7Ea!wEBqެ2[h]TDnss;O~Ռi`G 8js GWt)>Ct2lJqqn[֣|5r}yQV?8>a#:BR:\$/Α5oa L<ٛQ9t4:v@UeBACJ YlٲFn(((-Tk#< 9W!lϓ~ i $Νt]lEIU*=gy_t,8NF#v Qtܾ|۷m#t:NM|$CJJ :YDӝCk67x#ӧp+U#Ȳ9PoK/KŀDظ+v%ɵ`j/-o[xf2LAD,"#^[ 5v Y܄K1x 7jCqaM8c7n$5-5kbN6~oތn 'V 6oތf {.|F9#JQ^^{{߬fo-lM&.boHgʔ)(^Iػw/˖}{N(:9\\+WqbϞoߞDPaģ&;lM}ex*^AsU$XwCf~yi9,DQ :sҲl|6Q֐q)P(=<ʭP YV%Z'xEȣFכQdϢ!Zqw,R@]np6xMu%lJP5{m |={|Ջ\tI9t_~%={cr{tz$ɡbX={CEw\ܽzǽJ%wČ/v>?lBHvN6}N=>g(2JE***8|UUs?o#55V-[E~^999$*X%#3k6Im6PT01 L&N_@D+m555Hc!8"6P`} IDAT0xO@(*~[<WHDvtc%icL&;>L{X,ѲE ϯUr:DUu5-["+3S56өnV;UQQ#G>+55-[EnOFG/RJKK4o֌&MS"xdYF$6fIꞪI0 61$xT%P(iXEL맖GpO(E($=>q́DƛSW^u=$fo2$aZkA5*bnI;T{A{IEQD6)1uS =yy|ʶ)A^GFz{_>5_ ķ8n^YS:.gJ(|{%B]`ݟB!گ"ΐvlYMr_2I"Gj7T@ڻ+ k!#' mP؃ Уo[BNGFzq0Z>/clF:WDP9~^4}r{P;캗D2H&Qxc= |Ŝ2]v"[vaJ# bV )<@+?B+vwa9J,4@Qbn/ oqjH!S[4VEMQ?V%iMdoc7~o|xuGa3|EN6 S*9'hj(7D.J5?A+#NPkx;_QOG AZA$Q@MBH "1dϴLK։UhMk쪸 o8$1ϴL,֮m=O(掴^FVk+~ށ_"6BLoD("am(]CN͇ b e4 ~H_PG>Ӗ%#jr Nԕ],%V8dd+N$G֥&2+2'Ix8u xo6DODXKm <*OHH U "?ȫYxr%o"#$O] xՓ#B$YHxи =WqD_]UvI>Ud}r*%# 5<OVBIDe(Ҿ.Tymiu)t&8knNP$(|a, U!TT T@ʝH#4q`xdžEc$[+ٞxlBCG.%%f!ʪx29A%͉9dHdd"r'"sT! /_9;wC;#7*$U&ۇ4nn7 S%}Qd/xǯ9|Hm<1 !ub%!KigQj>n?gh5qģPΐ^(KȔ ?petB!WVĉ@ J9}s W(!^! 7$""yEE )'Dɦ:=Li?:Sl1?yBEM J%C؄w`̀5V3GL/XO"OBs+~"A((_E*JoE2QEQOP96N1:_@59Td=㴯k޺_x?NzF7 >;ERs0FU~s8RQ2oe-L[#;$}kظBku\ƒDN>lO'⟕ !އ־tG~R^ G%V ^5ɉOH^]uÓnܞkOXLW"d ~fp$4qM pII #)~cG+L\QpWO摾li@'tE$;ۓ,OI%j$וMDFB,8NNG"i &zk_&CI5HO|Q]54 tF}%R̄KjDuX7C !m„fGvv6A_k#bLTRRRO"tN'55t:3VD6.uNuaJ }BH^&EB-'1ۓ($ ưu':j{[RJغe3Y ˔*aZZ,l|!4@IS]SuEVz$w F?T$h;V5A>qb ͚Rr&MEQNw< $ O ݘ˧dORMh(3?P$:8,MDl/,lV+M6edeecdr5pIlXxm$=JeI<Δ!Uu=1 uФ\$0:T%h5Gjbِ$)vyy}!B"NT;L~(x*9j_1='c}ʃ2$ڦQ>MKM Y]= lj!y,i 7Nƪ֫o144 YoVA"Dc&OD^\'G1FBfqRN~f0ܥ w?]vٕ@\ -[iD\%h8PҠ},Cvuk]E.A%ϙzwA`jBV%:0}ߛw}O̜1=|?Fۀs/*++yrZow}uyRM]w%orC;SoQ]M4/bҤIj=Bٱc{ Iw^Zn0ΠHPE)t5pLA:0BI@鉬A hPuQqq1:N9Y9x zN->}Σ/wfc)z&OĢE#2ws7E$ڵkٳi޼k?('OKR/ņƺO1(HCҡet4:p(951zLFM~wDQd/0󮙌:tXf ۶nes4 ##3F 1d ?2s]~K _8>jF殻߳ps:|M-_]] 3,XJݏ?7q hۦփл\ld ЉGR5$=10ښ$ `wL >[nSҩCGڵoOVV1ŘL&]ϟ?{nZb;o/ez=T{;NnA# IADkKגi0L8i%^5n6=?|oDcd4btsFkdnp8 ,@ NLNҠI`nt}57π\ƍw̾{,s駳`8N2e2}92p:9}Ȳcƌ=m $Yfҋ8Nlv;Ĉ#:pݱj*dҧOd`ݺu\1 8 ڶmw\Ke32ի~!2s.&M{:rϽCqa20LlڼO1|{Gձn  8{v>РA94!$Q Z`=M`Ĉ9k d =3O#s1c @NbM̚5ʊ FiD̚5 r/\#^ Æ O>f wƛnFr͔ 8sɧ0|p>M6r'=݃[naʔɌu:GKJ6l}d_$d41!&k\p8صkzb.,ԠA=qLTh4Yڵ+4Sgq4+Auki۶mī5#e`Bm1c'H %<`+𘮉 .#b+CA^x:FZMu-YDb4hHLh868VQs}MhР  MiKhE  bE"M,3  Ѡ>PRʠ  YX{hhР@5hh*i7 ԠA 4Є 4hРᘅ&t4hРA ,4A 4h8fQW]ɒnQDźttz1:M?jРA piN# "ݪYm6*|6P2I#0Ʉh4hРAFxAB3:.vlk_ptDw4ҙ$4? LMhРA O]ɒhqMl_Çd'uA޽zgt6A 4#.tv;Us?0:ĕ˖t:q8v]cq?#Mk &S}A 4cn"@9r+t"KR|&K$1nѳX5G ;F 4hkgt$QZQI閭c[_HNBJlZQy]YA 446{ɴ8柽]Y 4hPO/׆ 4hРAC]΅&u4hРA u:ѠA 4+ 4hРA1 Љ RG4hРAB'V;An*c A:GҠA 3&f1ё$ ݉n#o'tFR RRR0We-A 44,}tIeeNOzz:4i1jbZ)))fj2I{ 4hpLQ.Fv88xIVhժ:b41dgg@uu5jҢE 2J 4h覮=ʶ;ڥ mvj.v}J `48K+mdоM:5hРA u?uYٹsl'L>s(TWS]]AUE%UTlUSRR}͜|ITWVz:DjݻmclKWii=wٯhzeS PоWn+͇RЪyđt&lߘ((,İFwXqGAB~>"gzy!Cӫ|Bq n~JAaߖs[{%)]SI{]˰jР!qzQ\\_夓N2jjjk0W6ۨ6۰Xl6,66bavoUf+5*ʫ9x;t ,K1ŧve_~ɚk񧟸?{/j7qTVV) Q\^~e~Yb_ii̚5+&j䆦5Q}s5`D``Е꨹ 2MnjKz+'dMuW4L_ N;RD%d, x9mAʺˆ_SE((,Db @*,;tPF|F(04amlI%ue*>q6 4G@N@$GL:Հ^0 2G@A'!K.y$ѡ%D@@YDtȲ, iղ^MSOYf!$%y| o'xݎᠬK/'Mkaۙ;t:=N-zTRRBxM~4i҄|(l|/oCsqtc=۷.'rѝodRCnA[Oʯ)8z:@ .{)vAl/"7I3@rLߘH{'M nK(Dtu#eI~^B@kbeGj.qj\BA b'֢}&Ȑ߭D\` 0)l#P}#g]U-;+$Iq] >I# aJVw^ )&Xf5VjjXXVVىfbu:Yl,VֲcX,X-V 2ڨ2ڿXEUUK^^K3|f:Zp͚5c]39xygw¯ٺu+o:״)tCHT6W ƞ{o?>3F… y'GBzrJ g׶)+uʕWuoώfVbi5y'bf*rF24)EٲZCE){8 ^v_N'ԓ6 '8E ɺ;R:hРA 3r⋗WbRCuAСD"z ףet~~DQFҁ l(ȢA/ N[(/'#3Gy~_xÇyӦ6֮e֭{=Ϛ4 YVenj3K.z?~*=z>}j*M6SVizuS0A{%8Opux8"Kv6L8z8Imҗd S1}oe, rLr-KkmD*_| m"qvs ͇v:U3bpʟ)G@GlrfP," 4;.zau,ITW(:1AЁހI:$$2 2]@ED$dQYDYbq8Ï?HNf0` 2MVV*m۶\Ɛeصk:lRSS?1.b7oN޽Uǫ׻ZWe2R[ _8ppPb)R^PE  ۉ`u]#g8\mjQǸHmUX.5c`# IDATwx^sgGJ}eanG=]y)@1}4K J⋥/ۯ# lXseqR?OUckРA0ulRR QtbZ1[Xv;Áfaia۽ficsZ98l6WՎ(ܵ4R)T9EIuu| o:W^yׯg„=vmλgY9mH.Z餦ZV\_VVm۵ceXL&lݺ5l_j-6p/6Mnlvl\3r;صp@ƂL@{/{X٤7"T ؆H"oMƟ)^,:pлYǺ2cD,j+۔ Z 5̽_%d>P!`ɵpթB$ d}:7f yy+Wlْ#Grcyͷ۹{5tA漱cCy=ٳXdg0gǢEc1ϯPr.b۠)xxⲌ2^ t_so%j S4/Mș2k,1_^C_u] gz!T; 7Gʯ1d Mw-Jq_򅪛҉mӊT?UwV&4hh|H/tMv5=眘wO~TUUVb fڍbV!Xn:S:͛0yyY8d A@tzt:4 ie,EtCd$-;Uϩ0`PrU m<S $5Bwz8æV"qFGÀ;&4,Z!,R?MIrdw&"Rf 8Ƹڄ-QseKyEx 9K|y q)4C!tgdf/i&GEp՗ TRzϾFj2bw8tz:uBϐ$ 1Eu נA 4$rgdu ss);kѿO_ ѣoi_Hvi`@DYFv_t`a=ޱtN:'v'7J޽;[I 4hР@_^r cz&.Ȭ9?epm9s%lOkjHKK'''kFZZ:NaSYYIiY)Ea!cͺ_^Qs?&\F)Y[A 4N]^$ə̑eʊJ6oۿg@Eq.k0bt=klwoLei =vҋ/'p\|[1oCV,R;JM~~ k}b_(-+lj=ɧ+&e֘'<'k;8΄ͷ& [ύ_ml [@ VZ[%[28ݏ08ڶFzi5̓usgچLbLtv+C d}ػg9ۧ7]J9ZZ)29Y9)عƺYnWa2!p3&#cLIbP݆~,X,^}5fLݗ .%KӴiSLJUC!+a6(7t|菺d7a:ʶmn ;9bn[ "^3rzZ@|O=ʚuٺ}+7n`-jْ|l6'с늢4+ٷ/ NS|BN@28 w*7|ލyRc,hٲĉ ƽo>Zj0X}ש jECپ@׮6oN@dfVLM)_9Gn<#HM+%TU8.KgziH~Kt\ʨQV,.afGrej ў4h i$==?#^~;(fkNB$^ӇO^""+`IS(]Nz6[iɸ{9;go=ҩ^}zzr%p-ܽ[7r2))TVfcS,x)d RRH6h´ՀCJJ ۶nqc^SO7~oמ+W:_oʀի77ovKࡃZP^=xyz:e*&NdذrJ:f6']#""xW3fңGOZjp(%ϫh*z fΌ%:Z;}R̬YܿddBky}x&D6>fR$'K7fggSr%}O>1"o-eJ!̼b"fL~iۧ:}7״mb$4(UrF?=tj`+ÇdziS_~ղm{L>?a bZٱ'a6Þ=طN@ bXGGΓ+O`Ĉ,Ze~{uzOЦMkIJJ$~4 IXeo輽AGWː ($*JR2ei2/H': Jŋm~Z^zݾ]1b/"LaًwꫯWՑ#G5{:вe Ϝ9,_AԩSٸq#|N]g:xү?lقo +$A ]wމ& @Š|'mezIMޡR% ?4~l_V]A45awޙk5иyscHMtI?Ŕ~7o1n\|imؠ`ԫgvm|91? ˗Zu1Tn揓֛cqUnaTn"--}='J%ԩc"&F"$ֲ;g'W C1t] ZMxw\NǺ 5v=o6oƭ{Аt>JKlFK *546eAU BJn˂ %=MNei_0:x1cFY`>(III>uv 88/D=ڵ #6']َ6kծE\mv2ߵ[O r( 0;7z۹JH`o([ܿVqתisMY::&q𐆖d9v+;Զ[C uM:ul$$0gںedc*fvS ~<\sqSId'+_GGҠaE]端б}[^6fpgRV ʔ+KbB2 B$ߏԔ\ߑd{~D`˲@VB##i(T"ڂѥkW>S8 M4i҄dgkcwpӧOoXS&͛٣3bATb40hZFc#g_VpL&طϋ;ѣ)d|}e|3ͩIIZ3\6ݟBi۶{_j^/@sMKv1 _͠4M/uԇQ#Wde$0fd[q G%Fb{غ͋ѣ{Nrn(YZO&iX'ov*4@0$cgy^+0nXzC x/vɡCrcv}w%u 60l"I//~sp_*7R|60w/7;~WPvm?ϳvr|Wvt:| }eRmcVykBܾ`@ry~'7n MhYIWqqvUfM)55/QLTUyIqh6gncwNuTΜur}7QQJor)gzRSᣏ \iҰ1۾:ek pVoLlڤ %;vzQb:F t(o='}ׇ8qB͙j&W <]W,$Ǡ?ryV|);vh֤ mڴ&59ĤDRSR0ۿF^CdۤQ"mޞBa B l-*T`ԩ]&2r(T*Kf@l߶7nPB"""1c:XVfVD.;?D=tJĜ9,~Ϋ`ó ΰb. s7ڦm[zg}N2M{Aٳ> ݝwya0ȄFUnK^NUOJ3iVav_!Cˉ|i6/[6M5 w%$HY`kZ/txÏo 7xt'PފsҌwݡU4кMl0~BSmaݻ;gX^ǎ6vInŊ:tHe6/j)?ib\`߽|ݻlFILr+sܺB|\lg49v#W*-;ƶm;8vwTF3 yzTZUl1V(@4IZí78}ǎ狴Q_EnG%r7$n]TUg\I}ل>Ļ׫W'Oz믽X$K=p6\^=#S&Q>rTâEDG+Z̟{$'ItJJDDh\L|oȤKq6rSx$j&',Zk*ŒLK@Cbb4h`D1%\BPՙ-pS8wNE߾D=;vxCw* 32uJ=7IIgq+COOd-m :Çh-map<, JFs'yFwǐj0Rx7Qke (@dd%vrECVYkȆ2]o<}c|Nɺ42zuf]]hȽcv{X,,kJv 9eɬsaWl/xYSer8e F!,iHHHƍܾ}w1&'c6ZTf|}}hLCʗA`` ?,MCFFӑ*I.2y <-/a)U~"l%iܒ>zG9"dEJHB Qf j׮cf$\[[VjLA)҂N+a0(P+ bl&@Æ $ۯ`s AF{xVV9U1dž33t4T>VL Sy 7k-@ xXx$W۬r} ɩ@ Jw?sU o)@_#u"9ç@ AaPA *g2Lucxȗ$OQQu%"@ %@ (GG ARƠǧJen_V-jņV慿RAB)V[8)r;$(1)MMqX ɘOy'BʔFR)GM5d) )r{zYT)_aOr&_ | W=d(+i8($>ˢP#Apss azyo))(Z?YG|ȋ\^Ԣ(ޕ*RI8!4Pyy!)(@ {RACW,?IrL܃XA!Pŭ@ x6gGRXuJUl~PJ IBV@ n,V Z-C AQ#@ X#R@ ]GFXC8}ٞY$ d>_Юk攙1k ܑT$u{zp ?nGIBJ#uqq2${ wCM;Ӕe$-LquK#M~6u5Mo#N;4Hq|_H.n͝aqJ_gNr)7׺Yut`pY/Kf| R9ZVq|y.I9v] NV?(_d+@ eU!L]W@ J,#n.@ d\h+ȈG9\ Bef3fUyQԨTvYJJJ"&#dh2RL9O?sZ]deɓ'1pt@ LrJ25kj{$AzUsgϠQ'h@8:@ dIbR"eʔb1cX %MYiXbvd/>J;f REe}~E&u7Bڽo1Y 6xԮKJ[rdd 96{gI}Dǧq:gehY?PtX_1P*Y*_aCt] @VԴ4&cJR!o,wΓsDc*H]M2@BÊd"5- ՚S0l]W]W::111էA#</BB+sꔦDDD !hݦoO(*UZ<Ө>3<6Y.lğ{WNsFUftiӼd J4yzܿU;>Le*Gt]ѻO/^{s.g IDATBҨh(Lvy hݶ/UjʖзO;v8{VCrޜq=o*ȼ{ԩcD|ܟ$ҥuDL25M"22sR,̚yΝ #lfTtĂwj!&FΝ޴o+pv*c.q+%"eo^'>!71 H0a[RBc6ᕘRߠg9:E*zO u%2g/x'uG))1M+W1G;]M6˜ Cɓk,YY;X2C+3axmvoߎC%le$~}vl&::ɓ&‰%hl4sH7o99qxЧogٶLEE)pAź]P̠̉ dɻtȔiAt́^L2ZNf^/ {v]gof jUMټEL{j_.^T3jd,o't]&7ftt ` z&x?+=*__+[BL%GE^4+QѼ)\?=R K;1FRgQ_L24Ҍ {?l Srbcc1b5j䭅 I3a2a! {e oԈCrE]ƠիӧM#.>ZMRٳw/3gDP`2(_<'O)p O7hѼ9&L` zn Z`ԩ|7ߟ$-Z$tiΜ=7|I/y`ȑTV 0o|"9ՋY3gg+/;ڵkG9xsKYf ={k׮ٽQcFI?S8|0&NO>|7f+{^͛,x[ٸч?OiX.z/|ۘ5k}$ThfG̊dN_kԭcb]&ZLxx*sf'-M%5v{~ͽGj&S÷ R kUPze.ZNr+Y1fϥq>/P5Tuj"i$D|#g-:ƏcРAӗ;w^aghؠ!3g9 ҧo_z;{ ղUKLʅ ӻ7ǏN:ʫƏ!/Юm*رc` YLo.ۿ?VGYiӚҥ8v/^dvlgx :v1x6iJxx8#ϔC7ns~}!naoJQ^v4zVQ~:F0o\8OVrΟ;:t@Z $$$8{xFnm璽FJ^.hehڬ[ܿ/zVjְ>xZ΀ :Ev-~T-bf.wVX.7o7?Ӄxŝl yutd/Q2jc4 WP/PdhLe_]:DO:u,ifm]4:wBejשMll,,֭ۜ=s&S~#2*T --]~f⤉ݻw#\83;/ٽĴxihْbb:uUr V~1ܻw=$I̛;k׮qq͚ukYz[ @1ْi*9ٌVh4:ۍ9___ZnMxxcR9^"&7/ (|fy2VfLv^4n9))>>2iiYƛA8EnI4O]ء+$'tWV %kҤq ={Zqmӱ{ G::*}qf/|kWķ2K1/BR1h.^㯨44j&#9 !',SSNo[xOpozGviڴ 2-?jRSӜ׌FxE֭_Oʕ{.ZT"Xу0fGFeڶi͊?l6kƎ;ѽ{wdYG7i!2-[`UfF#k֭U˖YI^vl۾-[L#['ơCZ-5OB*U̮m+JA3i4jFFW~kVg׬YoooYow?b%^/3kL .JD(HJTy௧T/ GZx\eQp6mIg4lذ*yXVA P(\|eˑ{;* ZƇ(^^Z?h/ODDh45m) -}V˗P|s@  @ (@ Ȉ3@ %@ (,c61=_[RRĈz@ J2\θZs1a20+W_??Ӳ$I~Ze8nߺZv@  ǒ5^nWbZtf3))ԮSHRRqxFMΜ>$M@ xFH0&da20)[.O@ #QXX$$S*(لLfA$$c 6p;zɖ-sMÆ r g2㕊>/䪏yqԩ"Ma#/=Sa]gZ/ [ߢsYECA!QBZtV+iMh2j}/.^}U"##ٳ{w=h` %f℉I ) >Ȳ W^E^-jg@`(qQ-4E=V+%In@fVJBբjС.\`/h٪UU|RRIڵs 㪏'ዒئ0 &/^yy%#** *&Aɠ9:X61JF 99ň5>d,|yᥔP)H u NRHNxx8_~%nb…(%f1j(a9;w.Çwc2sMϓt7o̪O?eu1xL:Zj¿^ȑ#[-7zaLKcСs̉|'ܾ} Ϲsœɘv#5j$...O3]:{ÿ^x! I EF bnj+<Zi nӖٹ֣$Μ9CRXa111L05kQ)RGφ4DziƌS,^(puo:uUF˵I-U̇$l[ :&&+AJ^ *J%VrNpСTVK.኏7I߿F`0d&C[p]b vޓ9sfsuN~}{n:V}{~SP,;:i4iF}1-Bd̔ޘѣeV4z&d^y,mQ،dGF"?#IT"[sl[;+=ˣ4ԋ Ďgc< 2ɶV.H̙˙:u}n]RĘ^&ZшR,w@Pr].q]Wn/ YJ|JO>%dէT[)>_Gׯ7:^CPqGTZ!SgX,f3 lݶ?!?O֭Xcf3I >;vIxdY('馥1mtN޽y͙n3f3zBF{33-=̬]>p-[>jb2Xf 'Ni׮!|*ۡ'a3[>"?{ԭ[N;2o|T*%c݋hzS#ڵ+[nsQ(9!}<쥗о=d6s5ZlE| quU5oFrRG$ o_Ghh!_SO_˯2mTvU̚ 34Cŭ@P$( ٻg7B*Lv`G"<`/^;wذ3Š[-@ Ge Gz..dd$I=uxGΝk 9uO6ǑdI$9ӹ[dŦss=n6p4=MsIө$eQGAvHg1RϞl?\sҟ];12==9ni^)x%ܑ9nKw-YI%H@b+xOqs4_z~2wœsm83~eLgpΝrIE"M٥l3z,wsad3e{^r B)sΝײ=2WPtٜ;)K~ jf|X3g[8@Yt;u;C0YGv ŏˬݰ *;LewEٜgO2r.~?sLd(gvѧ(_Qf] @ @ (GG AE8:@ J,@Pb@ sU~]&r@ %dzh^!Zt@ X#R +@ Ѣ#;:J={9Ͻc5ܪsy?V7L(˄mGjr-g;RnG ({-]nq+Gj8ϫ?Vg;)d4B:uzT8%&&ᙎMx/'L&fRX@=d IDAT?XNf͘5sSVQHFE-A毨XIӅ^օ?Lu%7((&ڠ>ڳg** Kx> @rfx^GC}*2޽lGϞKFm;p Sf$IL?-Zj1/@oޤ숑lْ'Y6or;{{{3~ y~ /lذ)SW[l6(ɶwcSuznua+ũWajcOq^ܶP/A:ɍ~NNJ&sGlx9 *4rנTbR߯Ѹ}{͛ۻ-hL̍wh}IٓsƼ2۷'`$t햻aJ^V(Jjլc+W.;ړyӱFEEPBBI>--F d2=l_`\؃#F\w]w Jnz EPP yql.g1)H ?ܤ1Ack@ ~_|n^baR~٠dd|~-Hj׎S`y';fȓbq_OA.eeo BrƱ5BB7n?H@ʺ>aÆѤINF`nDEaTf1f{-e!1rξUW[PՄX(僨9=B```ו>/'eY&ϕ{yT3?󝗖-["I0id~ٷ_|ɒ%|F~#uV6VC˯$hArx:9u[mGJJ"WO:uDҮ^] YĉnanϛחRs碾x#s}SŊo'cGB;vرTvƍ(qnǴSҥ+5j<ƲeIN wMJJbɒż۬\iӦsϓgk}w2t6m̒%?>˗ YMresԷi&||_nݺzjƍwys֛t֍O?%KazRSS8v筷ޢݦ9Ѻmf& f· x;N<Ϝ597 M횑f-q9J`` 'l6sa4mk^2ҽGl²e˲;<&OLձ60͙,_AvΊ>c:!!Z5kys[R? ˼|u= 3Iti{vVk{-yxZ3RVL 8z(ѣLX xlW~Bm͛FCr3[ c 'n]6HAXJ q_phgwgL w/*/#Ҹ1r'vD=|@_Oծ?~}Iݛ޽8p ^˓mT~}ܽKLL {$۷ ֳr)Jg|Zht7Ys`ZƍǗ-[ҨQ#SRG`ƴ|tbT*tgB`4y+˗;߿>SS\9=NEL4BAV-Þ9 ';LRb"FgՕ͛˩ߠ+V$%%;ydGƍs'p^ 4d~F6|cofK-FV+&uy{ޞ)x]ϩ>9ȭ.f])<:KE׼Nig.M3;/ڶc_y.n+O *UlM,wc|,$m 't$t=P1ލweo5pӡիqcQSvH=U4q(bc:ŗ^"11)G͛7t|l˗}v y~IIlذOR1j(ƎKϞ=y2j(ZlɠAp\8jHbѣ5޽۷og(ѣG1qzŨQ#i(Z͛7:m:;vG3iS[N]}# ZJW_eȑۗt.0=B=ضm3yeᘍ&zi8]95#͛7So`"l3)S9V$䤟쐟>}Z2]yWkV,ի}b0vXOXrʾcƎͳ.cnj%.!={2`@||r evF]ϭ>V?m"JUN@i=&UD)Ary<&ށ(UON $TCoĔMTO|>{g>3Wyζunv x]hղ%ΝϽ Ei`kuˣV+ <֫7ݺ@yšg`nݻw^w:oLF"##KU+eԦuvUySPyy#Kp/>{@K'~%̻N \99*Ue˖-,\矟tgªɟQ|}xySRzʻή׫ۥַ\ױ  ?UrJ-_>>X+dRsfV3:y92vvN_rWjhѢTm*kyٕVuUyW]k*|~ѭ{w&Nĥm?>FÒh6l\D+VfX8]rǻM:Ė9}1L;~N]|˗c2dMNV9Y"묾ӧVΒy~>3+W⭵k q#|чy!DD{nVYcќ|BCC:u 6ndgѺݛ={uztkVýMZEn8o޼Yd4Yr%aaڵ]v^/BTΟd}iݗ}=_6mٺe3˖.td7Xj5Q|t?cڴ4lؐ?O>0\"_C;r;p@6|}ѣGֽ .̽kb <6?fܹe}N_J; KA՛[F#| {*g7<믿fРAmGfYvnŋ9yy.[Gulټ%KV9_b묾Ӧ9VqVNVf[92bN3߼y F1f(EQ g<8o5ޣ;v&33ӧkouvEKWlU͊N+Įݻcn`kOc-lܰ!yښSbr~/EװaDmU Qdɫ|+gURxvxlv?x[tu8z{mvx0(E 8>z,)Lٔ?]|!嶥7NJу?جV2ә3gouUV6u6mfb1ٺu ݻusvg;+ɓ<ՋF #عsli]Cv{'ڵ-raO}Q<&6#F2x f͞MrRRiӦ ~ 3С۪U_YmU~_d9&y4_MxyK;$[zß'jxbz7r_#U&NĵON.]r-' w޳%;Ζu}z͎:lV+[6ogaX3P&*v%mixeF`Pq|) q6=裌;_/\ȍ 5mt,f C5z4;wfN+-`Y4{RSSŰñZm̞3'_Y.X^f͚˯B԰a̞3Ν:vzN; ֝3T/8{!kdcǎ`0OVù~8+԰QCBwb߳%;>m3g`4ɡC3v,9l\y?7aii9(Lgծє><16m1) [e/:Zl)KTt38t[m%v2[fɄ/33]ϱi"##ٺm/L.r>#=:|ʞ={*eB4 !a8~#{nw|Q:p'%;UTH|*v2g|2xpWFy]:uĤIKMmᇫLTv^jxkqR\gdΝ;K=f }c~Wx匎F`P!{|xwMe !BKUUv;wi1:cul!BxLUTV@1F'C$B!O3:ZU;y@!Bܝ/]iZKW6sdB!G!ebQy؄B!P5aHKKVx8Ye|jU%HNxx8'O# Vt>oڿ3ԙ;Cz^7>z_L-=2s]%w] !\nCf%<<%²eWHl85}fCnۗGXu,Fziw]bjzb2Y0[̹buW%Jjd%)d+S'qsuZCHy}X!/ٳ7<O6IDAT߮@GQPxroӦ\//fM[ҰYm|ǦM^___f͚r8qiiie^R&YY24 [6|`l6cX}ٲ_1|:rӱ4+y7cӐq([o˜x"ۤIwqҕ\ʝ;wزuܼyCt`vvUd$B/W2+رc@ZZYYYl:Al:nHrr2iii;v={:-oؽ{7>>MfF>4;udi|?p"[4Ghz*׮_eȐ'1b8Fa߿4x >>} >l`Z0S$#Gu?e0e4>l;ׯaDDD0c BCs:+qq\~!CS#;OMǤ^$Œa=ɔĊKѡ*gݏuMZ{TץK=ngiuׯe`,Iޘu@%[78.]Ǚt1C!DʹUVbbb1[,cڰXQph1eeaXuddd~z>ݶZ |+:vo~1kV dI4ڵS|F^b?SO??hq4#GdYܱ+$$$khܤ1K ڵkyrܥ3_NleLR&;g)zR-)tds}C 7L!}u϶)ĉ9z}6l ..5Wc2-$%%3n3L4$tL9t:v̷lxx[.Oq&L[|1=Gz^;0xofx!!%sE.\dd23q5j\bߍ7K.1c?~Ӳtdٲeh5, ς !Be|Ff 7m{{{[ "ѣGLFhߡ=Ol7_-jNRGشy3.^,q#´4dNovgXի[θ{pIv* jWVP#ȅۂh-%ȯ '--7w}Ou8s ۷ʫ.elظ06|8C`}L: 'Or* ͛5]9ߤ O{nq/AFuh+p!ӲML~~2}/em;F!ݧkЄF@Bˇg`D360jrAR( ыz*NСvFrnUqB[m6Z%бp"֭;:t +3ٳZ&_hY ՘]pEZ恺_A%|~<ޙEO.!Ч MׯÆE裏n̝b[?_7nrܹBѱc't:]eZi޸oBqȂjSp:jVK姥qiԪU؁j-tDUUL&Njղ%/bɒzCCUu%(_9gt<\^-VB-|D&D|@`uZje̘*ߟӧ*`0t){ԩS 6={W_9%%5]Fu6V+?#]n[^Ӷ^{9_.@ddЬ^sZ^iX'@Cwܬ}-?hۮc`er""1l0fϙup{Leݗ9ӭ?rul1j9ňS~v<ׯw>}7ľh4N׽`Y:M7| _xTM!U).w/cbT=[O@?[,#bs~ǕNci,\#G1c,O:z&Lxgg0&' /L'zI4GөcGz=7n[n..3cLR5j4Gf2sfn;`ԥqWm4k79/̀Tn@,^j ZׂUUX,>(^YۉuFv;G¸qׯ/5bO`.[ 3PoRiւ vi`ߟ۳sNTU%66Ə_ﻢhw{=, iL0:J[Əw^^-X!rXVdfdxA( ~""BY{U揍9|.-V+oreM~)}:rmA=Wvi?hy:?R3Z28U+12glzÌ38?۷sgytԮSOdqbv~~~tލ3g料w-ZEQ ,q+M_bbX_|fBkan9n~}Qo t5,;>!E O`KI6&wYYYoߎ3g:-cd G~EQeЄBh(ʚ5d̝K_/bIlӆ-VANY@GQEϗOP3,VbOVKff&Ǐ~:.Ed0N:t9>V`@!u=ɅЋhXOT(j[^OLE[m G7yGMۤ ʚ5׬Aj+hu{}*;w!\3fRٽ{>  :^Tp4.gN9MhH(g3V||哲R(1&jtN#3+˥ }Ӧ FRiSPjr{}*;w2.!(/kB(>eʻOi .^ˈjW^nW՟߮@GQ.4 AAA zBCB0\^?||| OW s7Ȗ,RtCQEsG(՝AexKM:p B"KiZyJ_zΛ 9@+XB!$&ˊh #A!ՇA8J?Y!]gtvM!BT#>y!BoD;FG!BT}>}j@*j!BT}~~~<X-VTT4u%>>%BQjOz߻_ݒC!URfffӧϐw}J!J nuV{NBCB6T32߯/M7&,,-B᪬,222] aۯp5[)BQ ue߷6~6IENDB`luckybackup-0.5.0/manual/data/scheduleAdded.png0000666000175000017500000011015111354335537021023 0ustar luckybluckybPNG  IHDR>)F pHYs+%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackup - schedule:(/ IDATx]w`UE?s_{IH$IhAXP*VU`uu RTXq-ku4E $ ڝ3L/IJ1ǽsϜ9̙3Ȩ`RH?ʭp,r,ҹSRHE L$?!+T>*\M)W!b!3Af>gaPJU,a)C8wd_l^4JieCֶP(SJ_I@i+HO?d!E~_o' vr}Jڼu)QJ>AP r:5Ld@q|BgwWE1uMc V "dϤOp4r#ҥDyBVN%(9'H:R^eؿ?U=R)N,zHZR7jUzT7ijJzuJ0DTD+&1J%RzܕG}1kP^Kp8\ݳK. ϙgHO7v\I#nr55 dR,"ĢhbYV|&:;!Tru(2 :Bf,;| E:TG9k"7_8Wڨgy[gh.%*(*ˠ"-wp/h*)Hhx;;G+pKĽ tO2ST1&,m'b"H}C}8vj^j{1hFL4B,+64GbYIJ *|؁!yp@,b46D"a^t7v\Vvv-D27hC(A1E"m[ږݩsԔB)\ɈE29FNF'S9&F=*5Eb 㲲,S9Je QZ%\z%vUD)q"j.@rW-!h([ˊ# qDPJg*]HP TQt2! &S!rfNjXm:)6v=ضdpS&穔nS."pR߲Pr8egt5CX, G %@ C{Qw֡mۀHF Xnݪ0Q"IZ̉``%7TbQ&p"b"JVCʽmVi@r0`PSm\R᫵IlǷ[W/knhNJ-"[IE%I.0}CcÊ6n6tYYh4uPX+TޟI,y`H #B b!KrvF@nS;ǂOt`5csEVQРGxfC% NEXFO6QY A.6voRbVFV- E۶g;CܵXgFT5*Z/n)|>˗/ݸ1cƊWSSӱcܼ}wr,bgرVR]&&fhnnnnnn7}=cSXP2L8'77'7W"P_r?p&3+;?/O=99|eeJ|g%j"˟^{o)idgSMEe5뺌l/) kQ,Zf&>T{K233 }[l:u󕖖 9i1Bwٹ9%%%XX,v%/+ޒ%Pؑ {/oӭ{jT'HSl޼,AҸ($q嗇Bm.MLlYV~ 2d "L! #F9*` r@uC°^ Dp298(XI!%2.s$Y 4^hj;frfTncA,_-zP}Zղ&L8cҏ?Xgee9ٽzz%;Lիv>wc۔?Sς˲57eYWbL=zlG`'kbY5-]v "=#6eJlZYRRҳG_QXXH06,_b͚ot+.*fBܼr#F/ieM)߻bǫ)0|Ŋ:tׯmӯz%Hs4Dd n\wϊO=T7 ʫڥQŕTf/_6rH58ame$Re˖<={Sr=w]WW{ݻw۱c;]{{ 墰gp*e*bYrL|i{EHXVP&mB~2'jnY) bDc^,bYn=@0珊³ N3Bxw8ur *:g.&<:|4ʴ[,qoΝ :uꂧw}xssq{:uc1Ȳ=||Ko1Gݧoߺݻa=ІϪn{y`@[o]e˄3裏jkk'MiӦwyޣsy~Ĉys96lX7lij֣ RRRᥗ^V{gy&aEy7lrg{liiimm /0lذ#G\vSƏ߿$^6mzWJN=@0H)mll|iѢ۶ڶoX?jԨ>ٹkע_]7<>L(1bke˖7^[VV[[ܳ>̥&]s5rV.:thѢk^zɥ3g̘1sM7ݜcb:w ޙHIX:~=aez¡)u{{76#'RSchڵ;wϋdCIjnQj|VccC0̈--mb,&GX,FPj{$7ozG:w׮>5\[ZVvޯw^>[Eŋx ^:)??O=CV^K/͛7 YSSg}FYj:Hvs9'-- .[Ï"MȚ_iuᅴ gLnWz. vն|݇@m 4!MÑHZZ6cmS;knn [[Xհ7723m;EMBoy˖E/]uU3uw?~ԩS))O[}C-ؑQnڴINz[nl^|޽{Nw7?'OqDw|MÍ7 REfJt{‹htY`Ϟ=555555 cg}v%,\wܑ^_7o_~)Sްa}2dǟ|>ڧ>¢N9eyjkk_Z;X /H0=xyvzz34~]WGsN™OT,f<]z[JmP) QC=%`tBNqIbÔS #آS TX#3| `W4RRwkީk|EmK= "P؄ujmr693 {s^Jmb?ߟ4ed;sMY܋DLX`ˊ¢)WOyǞT̶g̘9s̩S͍Ci8̜1s֬_? c8gSyks*uoJp`Xȏ /pXyGucpH.ȺD'wߋ V eo/,wޛ^c_qqii)khYĶeYH86̙%6nF" 3}C  ~pСtɓLnV >,2ۧo^ .ӟ,gϞw~Tl[M>?nظ>''6n6Lzʔ)jVx晅PXљr?~EH>}un:?.Y?[oV򌌌ǧO?#;ט65Ob:D"̌.]nڲi`nK|n^ݱ0=#=09i@ZZ|}~i6V :o _yUwqg}d{~̘}=_M6 (=y{n999;v6}C5k֔SJ7}:dȎ;֮YFZ^>wyN-Ǐ?U>૯rH.zŖaÞysLrۭ~'~>డC/^ >[zyF=×_~X_Wگl޼yX(//g|Fq_jժ\)v$};@#Bm>BGRA`~I/=5Iͫ=FAemS#~`J/2itM$KfF,\c6vAK@9m;s Ҽu풁|>=D##F|:u꒙`6px5Ɲ 02Q 4 IDATҾK,Yd8J=OiѢ-|7xSnn.[{ o}4# 9/>7Dvw1}4HMM=ȣn6 O_p%ݺm޴ѣO0AtwM79a`'֛o~Æ/--[xŋ84&L}\uUo\,ʩO}/`";=zٽG g / >767'g{u5pIOL wܙ5vܸN>6`F9eeywygԨQ+?ޛ|Օ]w%++u ߃NnlPǏJvš0w22ȇ~N%ӕD>5&$tSG\߲JnepbEXnA Taa%e#bgd8H*UU xfVTTt޽@챃Ñ&m>ߛ|Us!Cv 4rH$~Ν;w-)VTTTWWѣ0H뾩oh,+-j[. 8в,U_gWaZfmCCciiiVVJLΖں={ձvٽcǎuui^WwJ^Oݯ€8í&ٷަ&A0?qF.qH} 3{ --B;e ^۾Y tH[n+JȻ)뼗 TeΣ ~/X|OJJ +/gq/=- B7 q=`e'xʥUX4j޲@  V(؛I4bd$ &xm%892OpoX~nj>km _?KW~UIS?Lz;#zXÁ@C,xuɗ Unڣ:W^@ALV(&C=DЭkWdk[yGUz TCsB nݺuޝe#ңMTW]HJq1@nAe!.+-si6\/r%4C{鍃~r ZLUԾORV>Ð{* ~!I8Ĺ fǍx$ƇO(I'ˊiKDc1?Cu^;wvZwgYH8mź$̤` IV*'a&"qc)8JN ^A4,Y\V֯s.@&P ͺ?V**+_}嵯Womi$V^~)(5iii`vG}e&;fwHKkmm {t?ّp00^rםwfeg]p,ip<Ů2D2,u Dƍ?̳BATP+t~[" aQM$d@](qT* B IP{CLW÷k R(BаJ/U ).8%аs/&dW)BRRR~Z :/SSS2CD[[[%P:v(|"SyN'~څP(Ң0XaFwٳ{$////##XeljǢֶֶԔ`0=҂oǩ+A`q,9O{͵+V?!9ƣ@\# QX}Zu&S< ]KqL8]P*R?V+ˋR1;=BHkkkyH2W'`0CZ[[γZKLZZZ+ވg0475Edal: D[P(D@099==#==DZ[|(27W GINs"P"}S}ʙȌc%Qb&(t*L]D}BLd7ё8z(MUkm԰}J~& {AО+ƅ=ѝ0d"L%.}kC^ 0OY q Eh!l8fzuDN.%R Ă37T=p8  P( $ L2Lq2|lFODG+Lv,ŰPU2t+\.H3d6b|sHŢtQr*;;9Xȁ%p1A?F#Şd}V  YJ=[3a@(8 xP D' @8"P=0v3 `XIxY7Ҹ-%?RdYQ)V϶m| ^(U"b)d.% BS^>UqA_ex;erwcL/ĔR?ڮr+3)EjԲ=l4f>ˢXBS *sap榘VkneoHc&ih,f+t&s) }*zڈ?4<4+MΏBdjKe,<ں]/LF8iSbQCz#@B׳踨P1֚p/vD u+l(cW" %؝.%UL޿Ⱥݰ(BC)w$uzǩ4H3{d>(ۇYɷ9TC㨬JT#CnG3~]z֗)lō8HMѩ0ѸR֍hdXR)HQ'hV1F˂ z<SV-\jyC* $Ttu.pdY ]A(pp镏A aTsQqƺMZ/\ni @ӇD>g%+ȶ U-c(l%6)uT]+lqpkざ^~,28^iPBP"MN`,Z)1 G%YjJ:*dX`Ul 'd!D'p @zC3(ţ諌 RJ4w,;ZJxJL5&^S{JjDmZBR^su,e 1LqGQ:gEv;S{b_6f7t8S$$lڔ=@^r,XnNƵsWbQPfZ1Dlj[i%-Z>±G8j+OkB44_ĚgRp$s&_L scNNcLZxD9@b[!0 㯂jQ$P ҥ  5U<#WiC]{5 -&UQ%QgU>㔅9PkÄnT@ ήX.\q`Bm@_ώ5Lr/I}(Cm| s %Xn|a]b%&Pwj+NXgpF쮛]2ρE?@8$#]G 27&L*$'qre ?#_*%OFwx6|sm?ҁPyHciБ *d /x+.ST5cThf\ WCzq3CfuiG0.+6.' hEMs$AqS%F.=#b%l>b9?.*Ybq\yJJI,.-2gM/ Q/bLpLDa=ÔʩXL˲Z˜į uU&m(7DTuk*/\E 0$ AnNi ɨެL܈|)^l&#^ EvK{i K3q*Q:xyT S9܍y(K&کXηgIdDFrJx3oBX,*فWV2+h`GOE('x!+U0F.;'.Q$d9ۧiuzY_"@_k+4){q 1ܳfEuef90m\R Fz5Xa֜2Ѩmq6õk1b$@WD(7m~RsG 7vшWcltZO arM}@y{Do򱻚qî+X]z8_{8'%r ~&zu)ϑRJ q*%t~y]Giřg\Y0'X pXNHA#2/Kݟ^x˟k | Zve\)(4b!N+D9"sm6%p׀[Gŝ*iR88 N8sâb8j{5+KL25)EiJj#sY$`݁v#*T7.@,>[N@0"X 䉷$0e90(r@^esgJ' ?fq` >lscsN.@ M~XL#Pa[O]0XFw~І!Qvv1n͗|z[wN--M 0VpP3 /U30ip*ܵ.+2OB2'H}#!JAݾp͖4b;d2k#X¡-I ya5 'X hhK$sNP6_Mx]Drv`r NHnC$M4 "ÕC5amzE9FTVht?cv(GC R i+8A/0ծoxCEhʲ"(~)-12dRw9Jyqr7mY]%'+ Ȩ7#)l"}&{@9sܝRͷ¤WxD$",>i2Ꙅ$ J6Z 'G!TԸSŁvG^ܻ9(+cq w&E3@oĭ8_[p IIWfcyw1 0x‚4y2,AYI7 ۟xfPUU ;]yA'׾FF\xQ'y|:PZ53]T|oe1w5s|?'S;dc/N`'ZIbӧ<0\S(,8qb)eQӲRzyݙG! BҥۼnPqW\}h};{9LΒo(< &8BL/Ԗ8 <RBW1C %pBxpR`@ E=(abJݻ/Bմݟ{)ktV=qJaxQ+*؟·W͜宿Y9zTU3fdMnвomV͘λ2% IDATˇ]޻}M)O;t頷j^!f;ض)s2&m#neGlz֭6شޗ{)þ&*jt,<ׯ;cFof&8/cYk?P)T?5o  ]l;4}_ ߰t̖&g36ygưa׭+կ*jLJ!+{ͳ]|tX0$@/fQ7owկFlX6kVƍo([xf¢?/jSۦU̦63lsmڔqTp$6eP)P 9U}?Q(-7w S۶':9&$6f*7@bH<6LtH̦9)G/p0VSO^XmS;f āB,sp`pW*O~U/SY q}nuw.\E_n%']~9,\O?:]sR4i̛g [H{#v:Hmm՗EalJI)4 ϛǖ$O<nݟv,FiSBU(r_JJW0 ̕=f UV* !fD ڕqc.Y=ktrv.1]oסCر'SԩVJJ.c*.vP|Vrro~#wfe)IEv#WoeRs"4y/5WKc6cJy+NJlQ92{xΜ6Yh(nXІ72o}#X`"ˆ s`Xvbp9،=O/>T˱B=0zT_XqV (0\ZRIYY[%N8 IȎQ=ڭ'cwoۼ9{wRFQG ع3->:%B;v?/R,ām8get馊uݥ@rII?9 _XH)uy2#G жm s'ss Ǹ uޘJcGpjR_^ԾAX'5Ui)TY 8v Q *PA+"qE"6n0;Zh( J!UMq%ǃn6-o(Racvn(q[|???}{Οa>u(* mzyW?߶ysRnn;sӳKmۂ]JQ&ŰLTa(,4`Mqu?{t*+C۶t0e߶ XTԶu/dD}~AAxH]] ??RW|>~5A"v(, UWGyy]\V8 ѼNK".-,ī!`*olhlfwv:21u(Bآ ~K@<%*XaLRcew%}J}l;6 kb|]z T{O>ܴ]0Qڋ,sG_ vZDv/1SjvIۣuѽ{u v {ki?||&@}!Ѷ]p֙P5k& fci s ;˛}گ_ƈ`jo ݻg˝wƷ*GXXcÞ=<6c'LY3cm3fV]wߍ4Wl|vJmEM۶: fͲCm[=[ ; PפԦv  C)@nF{p?O?Rk_/% kUm1vY(\H{R%osS6ə3nV]3txHmlB\R;x &&,i1]nӘ]۟x"PXL'/JN?塇Y`Сŗ_8?j75z ~~l}f(t/EgK_l%';Çss;_?Rot-5.S#_:C2X/oDM7Ozo W[/r k^x$\3wa]o^iIZ)[>x/L///3Jn1R[}ܪn9+^` ߟ_.t~jd׮sTM7_f׼֘|A*1Q(y?ҧvZ$̐oQ]Q7*tͫu;Z 7ŝb#9IiVG&0t'|g&y}9>j|LcMIK7hLtڵ|!|SOڷ/^}r#`%oxWA޲͸x}UHI7j۩7U.U@6K1 hǏ7Jh{,gTWBDse8㄂8K_菞WD d'n^3J9NIDur0XNi |*W >쳰:&TjzNQ'>(?eQ/F|bxx..){]ݝ@(Ŗr0s:b3[g3dT3#71qo'zёЛ:1\Xer[wMzZb إW 2833ӋR"O)/~ϷOqjM65ߙ3˖r8X`_-I}??6m2d,Ž{w IIm|>+??y啊`9XW^ +ӹHŚZZZ~b !CZZ>߬]c?/e+555%%yΜ/j՞r8X`_-iiIuy/ګx466b[+Oѝu LzI=<lF#))w҄%c_N).>}aa$%F*ZZŸ˫a1>;5Gni3f=ߵd}77~;rɝ.cAVm[G}W?yج_:?|m t`ew⋛q*l׷%C~#56,'V)nv-_=&Qi3"X&|h? Dڨ+5\u~{][rVVE)_ nk}]GN;KO>!SS:{VVnP(+Zt'# cXЙRTHN]~}[om4~Y;wsLќ9}gѽ j>/HOw옼aÞ>Fz`M>]%̇/ص-++P]ݲ}{ t!?tȐѣ7*RYqc]m]-[S'Xj_<;!xq3;;x%99kaV=<-A T=6ٶRх9=ѧ5+K&p))3xR?cUy7߼t!!Cr7on2cز?ڲc-噶XEE8ձG5G[o]ɾ*k?S PL ȩh:n{-8b%%Q֑Q8}1OaC[om=]|sw5%1v!ܣ :wN9nwY~[̀?=9'뮛={v?q!Ų.)>}ssɯ~B$%$kc'MꛑN B>1c?ar2zhc"!GwLJ:wqE/t_-z ǟuVL+>CIJ"GYx!Ys 3,> b亂k=SOb c@G,d}t(E~8ӻɰ5~_~yƱ' aӏ>(5z78 fK'85ԭmT_eN%/<#3mQ>؅.əS],joSJcH$h4 o]rI>ve3ۛb#FiM[[ {[ + DGEMMcCCd#2b1;w6K>'Fk=2gP q(U|Gzxd駏S<4N ( 4//8{~?\{mٳԇ%r$?-J&@8b:<矯LrI?t{r͚]Ӧ~ё[o]VQwܸ)/P [ӧ8gee  ctZd+"@졇|w֙b.(H)/92{'w>}w_U|y}g~{+kO_u=vlީ 'd׷Z:xpjJ>qb_E]7{j}}6S? }Z:fL4رDg^w}玮Qg0mQݶ#g㨣^>N:F9JW^oŊ}GQ %BR@RԟrwSN,׾`2;qX(ZLpºy(ʕMM#GjbM^Tnu(,҄1QkSf0YDxX+3EPqqܿggG\l\Zz:?c߾͘1zt8%.CHOߑt%J];Y˚ _~y&OR(۶O&Ҕ#GjtliBk;0  &^Ԟjj`OW(PIOXɼe=AB\#_ u:Kw-(h2OVOnhl'Nj Əmh9Ѹq>GOY׆}&SGQ 0 Y)c͙>um7 u.?y_FFwߕ90 ҹ:^($_xac%ϱu;wǚ5I~̙߳,Ku,sJ6/iBW}'~p`z uK:SLC6`0X|M\_[}Guѷd~߿W&GEFEFdX +ʺt!IdiP,$'?z`6/wrjjdTW6Xw]{[۽O4IV?|G)04M'<"B' 4\дyy͛w,#|: sf1 a&b3"04CWBiH~$ HwYdwe{~5r XY5cƷ,&9ؾF|e!HD.gךۢKGukA_Z׆}&-]_[o_xΝw/Z4.f Ja9Zcm3f͝qp|J`z|.煍/M)tSͯrcBAt͛gW坝&A[s%bb^x;V}XuT4=?{/MW-{=鷘DO^TW>"fj΍=båb grRi֙;Z:͍ncD)D"RL"ERUc][[{} Pk4G8o6mz_Fȕr˺^$=ܱ>ù̉5))/dg7g3'O.Z4$YfÆ6Lf:0PŸQkw ljv1$LJJ`t*'feNYh4#xΖMgKJzk3#_@`0=ؾ矟-`(- IDATcgb>ٳ,HjjFiWTwc͋ؾbߓ+'jV?߷Lsg֭ ~bp}m~}ƍӎz?TdM*--, @d`lJ]b(BDXر/xSO.A--tPM7}wLFFèT#] {: O~%,LҢ߾@@9вeq۷_>p273իWg|Sx㲲_].))h k|VkPXٽ<|b̙k3uU^9]]V0f7.)õmhJ(%%baly;t:a0G?k$I( ;:GFDΝk}E+[>>f}mu+ف.r=z 4A3'***bcc{}KtYYyZzhA+)GWv*(:07fax$+MM_OLب^)|'5557n{rӦM|?/-[>쳳g:J (H|رQby!Is׮?P/ו8Qruf)*j)*j52;O=~wX]Q]O"=!qCxf;;lI}gכn{$5okkw? dTL0_gk{M}HN'fJ|}cZupM59RadjjȻfniǠ,;Wg?c%b`XV}A'u36;ʝ®vDkblԙ-HRDpIdra]kܹ\:;e2Yvvsg]x׮]޻((8$ p[pxE9fAvdlV*Z =ÆLF*ԢEۇ8rWkހQPGvkY|'r[[øAٍJdJx.9N7[bH$3=qqq墘萐 ّ"ڶm[AA!2Hs8Հ]HaUOʎb墢9s"ŀEF(Q}\ RxkKb7"DWU?Hut;A8bac8©}NǓ$hpK0 +6|?'oBhJRp-Aª !+ 2z˗xm,_h8uz!;;Ͽ8z(A_~UEe?dmyֹ;o8 ej [s _W^Xu!W 04{qDv r"~kL&3>lsg3J-[j6fӊ٣vYpmsԩG}d?p Ü;wv=|ewϜ>=4.%!P(/\hll8ab@KNê !`X]Zm]]M~~_7ػw/3rygw6ǰ,K4I Dl1#i ؚ?;ٻEDTqdOqD:[5/}|d2NiJ(8wض=~_2i edS~~))~eΝ;{b;pϛw@j`k8lu!W8 `Y67/qϿeKd ܵf'&\hѣοy3pŻvEA! Htp1F%OLD!k`ՅBѻg'//ؑynwםw躺ӝpk.~|J'xKJZ^}5R 'm۶2,3!)$Iqcn۶733ӚA{.\UBy&QoSts[,X&Nll,^ GdbR5Z 6ʟ~eIǕB!p: Yi$qKS뽋 &%A߭gׅB}],--{E1----"䶻JvƎs n^JH HjEVB  2Y~nN@\&Xם $Dn]^N^DdA"ɒ'>rB$TJUB{hoGŅAA*$s=3BhHI0$ 23x;P(!!!RY!$IJ)QFxD"QBЙ/i!t]yAHRDԫ+-?v"Y=KBdRi Ej!pa9Wsd<B#ҽl.B V]!!8a,=ׇ(@0 ,BFӴjcJ( S aՅBCa^?qR 0xR}A!; C+|B_?OtQ Cz h"J՚ښjΎi aY+(0b\Fb2vuu,;Ո!4tX5LfXnda6L,˒QK/F-Oó/^'/lu!k/2?6Bh9(375,K\ _}"?n%%%ϜYd 0hOIMMJLPTTwСQ11iK=;*2f޽{Z[&O糲cnĉ); f}a !=tdZR$z#g0]v})%>2D@I QFW 55=A(N>U䧞\C7[Iy;zV,_>vܸ5W=vevgGppu`˖e2ل I); .'zXv$ `-@7&tk5BaX( (!abttf!!!ǎmiiAs= ^xptwwozwX,nmkkok[~ddd446fggS"?fJ[f}K-\x/'1 {cG٧,\!3ip#Kwq,F`=B DHz9N zsm࿰-MM\PPX,b&B'"K8-ty괩zyTV[VVZ___SVkn\Ypa !8q 2| * J]b+IKl3 ~<) Ǐ_r%ʕ+k(?G HcXi$Ay睻w﩮Z>~2YAçi q}-ޓ?Yup,8@  55eǎ111b8??^ڱcG,\IuOD}j[`u:K/r?8gWlu!8u&QpuN$HߔӧO_pqc_^殝WuJKOLܹhѢѣGeewfaf̜)J>R("!)aUoh'_RZBh+ϫ=jT4MWTTpCPH$g"$T*)3;$\.H$-Bh!J% 7R{\ê !H#f'!z []!B 3Xu!fB!4`ՅBh !0sKH!p[]!B 3Xu!fB!4`ՅBh !0#BƆOG!4aՅBh !0UBa.B >~!pSB ; 0!~5ގWKxIo0.$Be C@@p%JIuw !Fe2H$v Z~b!;B 3Xu!ft]]!ndxB^%WqYt% oª !54j]]ގIRpEhcAW1 cXI(Ĉ=Q^њWX{Lաގ]GttRoLt?ym)7hFQjkBH]ؚWGB>nP@}G^{!3+uTW a0)%ahbjhQTIe2@p jjNekO ~#wkN)B{ <:}ժKEF04m0zXmmm5-l61 ѨU*G3EFTVkj|||1tuG7(`5APH(L&4M[,f߂d-R_Y_𿿭n}ћoʍuyv?~lxxhQqYխ&ď; ت9yJʜSIJ!7\~ ItV(O5 HFˏ8d2L֖ɟ|_^H fΚZ-}5ǏBa]35u5Y<#|NW hDŽP7ҥe~m55p^,N"WH{#qsưqͭmͭ!ܗq4,/)>ܹd67634QWSoYY1Ϸ溺1cƤNzkhOIMMJL3 |ipEB\=#j4w٣JKKj`%%%Ϝ?uxɒ% "ZwJuwDYY?~|֬4k Wֶ,Yl6ݻm) Τ=YPPy6::jΜ,]}QUSGr`2Q&8OŋIT8,!lW)qcɊ⸱cSR'^]3\ϟܵ㇌s94ɇj:v~454vw P-W'gL0^٬=2G̛wkpp08:B ]8~:Y%&O<* пfs詎q,E(ϻ?;[|FIiIDATɆ8]ۮizro>}/bpBO>oŚ;D!̚f.?E,Zh:qm[I$K͛w˪k=Q#2lO;fbۅEQw'q{yk+ t3lL󭯫ʹ@U?zZV% 8s6Gwfxt̲>,xv覦‚\>m@Lo}Ѿfϝ{/%''㻻_?RϮ+wĥu 3?iݳ/33g40*_ +ɓSZmYYi}}}TtTTTd~~>s~~^ ivz}w=3g3D"ʚEa~S?_{փ\XhXHHpaplW)OEEE֔.]:m*mrD^!!soɖ-eeɓR&MH%.&}q~Cʪje):9TUt: M[,XdYꕂ7BB X1nd$55Uu5F:4SQ_&c?K0(=--[oɌ3ϟTjڽ <ëuy`fJQYUGQҒԔiS-|!GQk!Fw޹{%ﳆq@ W\Orʠ Tۿ2}me9nΜ$i6Y1z˶e2D X;̷vbpumʴYi$'֯Oa9*:M%P߰}!QG0 SVZX_;*.V,Dbܼ^  ῲ 1g].3gj=EWV @4CMضUjs-bC}ۗ}3oyoTn\@WR"*wo5:X78u!'Q5uE3gsyR,Xk/N?E\jjJaaALL̸qh~)OLIh4fs̶MpҤg,}''q,wk|+k$ 86唔Ig&.#cZ3s.Yx1=BfffssWP0~8OH}$Y@ `Yq@ PLK $I>oDGGDx3ԥrtڵDeB& ,?o~khw8b)ok>~-}j]W)]a薄H]SU?aXDBߢW'l|B03fΔHKJӧ/\pܸYY//_ϞuS8Ӧ.;ڹsKꫀ@\rT*]':̷U* {W)J0n:ĝ-=zTVw7on+G 2,;;칳@|BC=ħ‹/%H}/qqcƏ7 665^tzqゃ£Fču7Bp4lw/ ׮]kpmxKTV2H|hm4H __({`_LZa͙;.**ЖUר7"!)acv˼ALtEEn5 445~Grfv'o<9n^YR\R?޺yrQLLtHHȅȈh(\_&!EĒCGGGw74gU*;+/4 Ϟkjl$HiP()xٲje#.(2u|:=y#1"8j\G\ ʠ9W^:MO?xM`Y6 .^?d_F݅JHL+ Gܾq[>S9'O;hn[[W)*ss[ZZČRr1BRi8*::*:cǍhRj8ohXhhXhzeKll,}>~~SMoMgiMME78J f@ xd YY ðB-p1B"5A}YĺD9kWI?_.X5yb૯>ʾH&OrS}.Wt׏\k>h6uwa8fL܊KGRV#:iڐ_"JVRR| Vk0h+jf8E፫e#֨Q֐>|hb&;o !!õ\ժJKK"#i=gZ~njV@3\.W)Rz_#JH#e]\&R*~[;IIIILL4L,AX$ ;RǿDJ%OpH#()S>䵯!cb? B"(ȍ 1 KUA247;' @.[,fWRL&<8"!%vrr4^= :TdPEh43f~qݤE ӹ,6`X͌>H# a(H?}FPW*BC&MdWOS|ގJja&C_mGrqw\I*J=OFID.K$[h7z%)5iSI0*Fq5H8P.n T*H?~Opv^ U%%:oǂ$R*D }?a/x$}:A AJѯ]x$*x ,Ba.B V]!B 3Xu!fB!4`ՅBh !0UBa.BÃ`B!4  \|0CB!#J'LHaaTB78 H$b:\MN>uC~B7 [?u bxaBXFQ*&%% %) /Eh2W(RD*z;ZB(  4y1_wi3$B!Z>t'ٮnIENDB`luckybackup-0.5.0/manual/data/OperationPropertiesAdvancedEmpty8.png0000666000175000017500000017761411717123226025071 0ustar luckybluckybPNG  IHDRQ(sBIT|d pHYs+ IDATxwE?=aw<QA39 wgY xT|?g y&Lv .ftOuu罯~NyU=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$)8qAA$ =d˔8  EڅbY,#AADEM KtEKB  B$r&ɯ#qHADg~"!RqJMF$ V@=6u 'Ub+AAttH'T/'Q B  +EM ^DȢ"AAhP|g?y; '=0Ғ8  RHFZcDJW4Q(C,EQI AeH!Yjuzck‰$ +"@ҙO  #$uYEgqlaIPFHjIHAH-$5Ea$X`F HaE + "@f) H9i(  Cb]kHXBH60qH%B)٥PQ耜cH^AAd)m!15, UC6*IRN0(P =e{p2 %A0s 5 }a1> A Dp~ap%"h^lTrEOX(ʮ6D  AtP %@GJV@bĢO|7}{ C*G CpKF!AUHAPU~/m: )>7?\/װ"1UC2(xY`ϡE(@ H8T/AADRЂP K/ZL!q=7(e=k k)^ÄHa[ocz>\^1G0$ "UdYЂЫl0>CCʆ { ShQai]JB)TQE`  O !AAه{ [}@sШ+$^-[Pfz y}d>a1d~ '<.0$ @7`p`oN 5M4U3衴K4NK.] "A2)s|}\qןoBDv/pՅ\ dzCBM,ICbE|n0u]p.ZFOG zIVdH/{61^czE P96r! YEkZ|W4,w9@>;z䶺F۳9"BdT~9{fE"3ZBwl$~|c 8ŮKVa`3>噮9_.Dz}r6ϗd?_J*I:VA}?#-'$̸vlqAKK f7|c/NtZ,eNkR:B(D4;.ԝײ-V=\ĜP2( E⛉]\xAflPY.> x<c15 v<8F&8Hm*׶ Xۍ?7bM=l+(b-!ˀ;]H~U}a d衄JL2Jv{0 乁=TG5l%!_PltJG¼MUoZ~#_#6lrN טE^?>'o qڳ%s>}=:zlbߜ5.躎w?~zDa8'w6ͼ`1XgZ^ ʓ$XgE|8 _>_ch:/ct E^ G!ְu n >U[4 [t:iV- |¯7ZToH(ʮ0t']rpHr@78?WӞ|Qc .MңvuGFYY؎W~; ɒN'Xq/J>cSTZe*1],N۝qMt䛅y=8w\Y3zMf@>}>F[D_] kסCeL<AU`H-8kLPlYЃSGaaha'[.YNI &cJTf}XF+"f&02o!1͈"HvW 󗧠-k<3&Î`YgP }ۄ_d|8x(/+Ƕʯn'$d#Q^Uk[QQVQ#F{Ͷ7{ieAxl0е`ܣGFYU @s;·ׇn ob񄴏K j2[,=E$g(clBKWBO(K[{#ݡ@ ;|*r Tۄ_{ָ5e>dx8+W[Aݮ:{; ^q՞;3lz~EP`a3c׭ۢ{lcm#cb+#'͎0!`@/p*븷 J]Qգ .A h# mDm9V8 HIaE!;'*6QfE+ƗmÖC])-"K%ގ42x#ݛM> u:@Do=r:iعkgԨ+pkw>hZ@xQ7@ [R*CI)! (XK\^-^Oa<7uJr4(yI;jwȓn@c_Bi(BE=6|Z𷅂c:?9nhf$ ,+A*bǜ $na)1q[lHJߩq`'HHaSF'E50֖fogƥ6/펟Ki9/6^،RHQe,xs "!b_'|:Ͷ6]A @sucoB _jQblc-seYQk#\D\LlL' $EVdAF1K:i#[ 4 =lvϗ7XGAqߠcs.>k61\6TWu7xköL;ixĈZz> h[&`Wh{@hՀ6?W=~9ro)Zt&5gra(a 7,F|9 ]JJb?/|m>2+HPux>|Cx=h'dEAk[+4z@008d PXh#vasR,bC^ , D.Yzڌ) SaM{*)ݼ13+ea"^f`˙fckKC]1Pp9Y&f(dSni]ӝ4>G"9:VW4S*jmn݂]}Xnz)kwqsHvw3Xyqʮf[D&W?Xz2!y`-Zb~y.`op,^>}p}cb|v//hSY۶mEKKmmmŶm[-Հjkh|؄aK8ׂM [k^3 o7>=({9pMaۿlg!Y+ v7iرRP[հߖ=k#ǯ"@yc_6X 1'K(rsrkk,;okkmEnnTMbq8ͲI Aqd8di$Z)2)`#C/fF8F@FdaV̥gUYC9}y[oѣۄU]Nt xzT⎹s1hx񨭩l{qȑ&`&`Zn 1w?5զ8o$ 4o֣?9U=*ѣ\o_^=&[o&:G{IgF[*cŘEaX\ {=(tz _ ͮ*/FD"Ci0{1eˡ\(a52iB3hx3E!căoEx睷`L[i(4cҬm0+O]cҀ`,…k}O͡\Q-z -C icl%`M0eY5kf_K^n3?ʙ=쾚nM/}-1 _v܎uغm;qt믻̛ 5xe7oij 7܈OC ?ƍmMIJzj|ؾc'`CwQF-2Lu:N9Tj̜1Ӧ]c!뮝fɓ߬pVt^6,-s=%?[|g{-p1qkOa]/(|s*|ݧläђ\"o[7_E˗cYXn>%3g}z+:`xI?AjqƟN7܀qGyː/GlkYG |XW\Cmk2+/+Ȳ^xY(((@ f''|2 vqC`kX=5 6̱XėQN&f_7z)Ը"f$9^\`bppcK?k%6XqϬh=gv)94ͱu&8%oDi޸qG瞋;wX힐mU6,YGs9(-)+Ɔ=>mK~ zvyۛ6n“:  <>|s6_)mexiR\y5ӏSĞ'Y@ CMѭ| ߋ6pU]dEK V%WT:^ŖEJ$Kظi QQ\ TfC)>qhiL5|Z(VAɊC#VVFa%dacy|L6lmkw3G;~ :cLl;#{/,0>gnV4r$'xעڧ`SUޟ-u:4s:y!@i 2{[3gBmM y̛w/Z?,H{ D\0ˮ:,Òs(ܕil:lv Bاei&-OeWts*6l̋tֆE160ڌ( ۢ4+f`M9͵wdRycW}Xl˲llؾꫡj*6P[SAƛn5q+ָm^.]x*ꫯaSr+8dF2~(٬(E%(z%vB~g%r@Q<.U N#'/'Jfu!,Gu,'tuX:e7*]#.Atn<m s [fcfśŷߴV'!tK'\^O1N<6+t&}HSpǖ^MƖQ4L,Evpzӆ㶝sp7xCېqF׃KKkԴsαعih01{l|чs,f̘3855Mc1bxGwo#ydƌ1 {ţ>cZ?chl܋~cƌ1}`̙غu qE1q[AA%fvH6 >1OaOe<7Nӧn,CƊv`c#d󱋾G-Kl=ڟ¦#4b6|9ոy|=3 |Q%}T9~Ȳ?@mESS{AȊcA vYc65n7RئJ3^^3֮Ymu_ӏ?8ג&YްXm ^3ԀoQ Xf / .Ė?I\n{v US-!G^IQӊ16_]2K|P\O$\n,d9ml6 VL̾nHc 8Df} uR$ͼfmڬkfo0g;@S IDATB]˜G68R(oQy6_V{g*w[tfndѼ،}-0wmŲA1kTjٳo]#?%=9r$9l 4Ӧ]xbG4|)pg=0bp|̙37+";7|1|V|5̽bS 1|>$h`w@uqÄ 8S5:2sdkȑ8{D&OZ`ʜe_vQeu/f|;I5ώ e,|>5m3ݩP11D_,wL?Y>FiҠYdO9$-b}Iw_ ۽ `o~dlokD!d|n,۷oK.떸-y%P\Ŷ1le7t_uȊ/WiYjjiF43'mҖ'yt:w {?zй*5(,8 y#{#$l"Z6fŐF yzpՏ/>6!(ǃ3:R4x=^k-^:7mT9PUUBnpEQi@zh"O~8ճ [m( =dc$I\.|లnڶ};d9hKU+ ,TM5=V?F@ m~'[,CyjO&905h)/#ʊo^P'ʟ!`5jSqI\=g!VL[YŝG[}#S,z:&5_͏k\kBu@qeboS=C n'4!Śq\J#||:TUu 84/IA~e4 6lSj c+bɵkK3hﯞ8$y.`lCl1M F3ZOЬύ\:UsoD mMƧ^' VĝWLbݫgOlڼ9!{¦[:6{fuua˾C]Xt.XC acZNtmex4o~m.\~8;:\Q_: grʡZMmSѯ/rv'jquY֡# U?gB.<.<ЯornL͏=;ZU@EI6?jFM>ȊC(%JCE M ]6. "C($wqrvI`  "1,H@4$E"Qx ŗ-U"a8εP8BQ@'K0z^2v?b zY2{ 5Y^oݢAwkt=BbkߢgR$tcc /ԄP )M_w[>T UUh @4Ȳ '."ܹ @P(jYblT' ԫ~Z C!ɒ%nEVUCic"3~öE( YT2Fqe!9 P\ W5!!ۆlL $x4f6*0IObKmݡOJ {9٘fA՝+"sy?`+|eΙ~xFeaic. W>^DV\u/ӮH$ 7]454HL^,![k=TW+3l:fEa$?3c:ӈ%M{4yd6Fly!^BRg D k"xy{\l؍KLsh#m V Z|DZ`+N;Gyg\ 8B֎ǘ!wN,OY ~ SBm#-ۚ.I==MuI7]8P+VmG: !K2FV8hO6xQ-ɒŦn}Jk[xҩ`η$v9lz,o_FlD"f=F2^HTk"i)qw&7sato@RY+3Wn?$#.@pZ|qq 3=Hd+{~2H0q*$c 6Kq |35dçNY񽸐eϩ(B\TOYx;``X+†_~7l`7+HB6y{zmeo8利,8cA){ -Sa9\ Ǎzty㨱K9'!>߀-k"L;hA$FYPs:!W'i%!e Dw~"hi]dWۘD&sBadW,nO8~`@8W6>ePĢ LZMu\wH;"4`ę +vX?1"ȈDX ouf!Ŋ,b?4DF,ʆPV.=.#1p͗agӞCONLd؍gD ~U*t~$1l7q"1^q'%L%®;.#윤W1eli7V{ɺ_H 2_f8@}tNlMC|6!x;5qTEm'i_`,i'R}d &-gw, TWfpv)7Ԝ Mddb)~0z^{bI ZF}LԵ1vmh9iu./);tP;#Q8;=/`fNEjaAzu%u: Lgb۳}u_7F\\_q:%(˼ |1tFGpkH/ ; x ;O.n @=2p\7b"Jn=gaC!N6ö;?f/Qh L2r_zlgHLϠ_#R ^D$K9 '3;b^"qv~Թ xP(6Bv{Is}$~"mv!.AT fAH?̞}&֯PlDE͐}a?񿐺t븰nқT=u>|q{!1HB&ĠL_~ȸ~Dbj3>۩m(K/ C̩]+S5 !ZAT3 HDb7İdvc~K`l&"=.:\/o790%K\&WMb0Puܹ[ BK?3-5S.YN 6 $ ~f>?د7-}Ѵ֟<_ٕ> #G@2s]g$aG^u\U={aA *̬lhb'Wl~ȬӟqC'vӘ̼HˈЈG@UUUI/ M֬^GKBP&Us#6MM^IeK Ҽlf{<`1NPwLqu`|ft_VGdAd0IQYYt"2K(rƷ]%.'6Ⱆ0 tie*"0Ʌ OAAt]֭JRa%'+ rjHJJ)|źZx_ H0 $.I*S$ENEzG2r·t ɦSX24>4 Mn^EԩaHCfBnV$NJ>y1X ?]WvO1}gz͠|1G.@°K!QR/2K,DT#{#,s,(bZI7$L(L 2!"0Ҥ[(cVPW'}'}gUUz0bpvF0 aH0GoW}=V|ʼnw@A1{nX FtHQHX\f 2 @n:f  :@SS^/֮YчNw8i!O>(,,LLhA'ӧ6oޔPFC=z𸸎%ڇ@,2 I+vB$ 2w&S[tRt@9pŜox0׍,AAd/ z/pt8hF dA0qq{QS[c3!CpGbƌdn7z_z%{q6|8N0?8ƍ#Gbĉ4]K/&LO> Ͽ] I+AAdBîܹw- Mۻw/^ \}_dKx`]-,]c՘:u kcժU喛/^3gbÇ}?w̝^z1)% "}d0Ceee}l|b~M2 4M8 꿢~Faa!<(֙۞(((x"Ï?%AAdTrcO#z!u8UVO?=fmlVTT< gp 'Zt EAAd"/ O7| +|Mm^{-6oڄG}c~G8+شi#>CS@A~AdP2$//ws7~'6M &3wBSS>Y .x80^CA"u! lbĈKlgw?\p8mx 80a>ϝ4 G\C  :?lC(:O~?\W^q ˶Q_^joY-źOI'd2B:/!o H:k]k8d-!A%Ͷ$9@l@H+yyyسgAiG4ٳyyyq3O^fǻehhh۽Ez=e%aA]MSCC44EYyP;t]5A$޽{6;  ѭ[rrrb?f0<$:Hnn.rssAA$,44ǐ  @  A   s z/& "C$wb]A=AAAADJ&:-AUU%g "^@nYxG;ʳMPVV " hnnƎ;(2nm}vFF@ 6 <;$  ~a5$ .WדI,˻8vB~*TUMw8ADG EAeeTWo@yyyCJ9/ wPWW!C޽{aM)G 2UUQPPz$04M Cs:Z[͞T/C޽Pl;/ʛt'BhmiމWD Csg'GG~СC#nRI;G}6$ ݻwرQUU8)<0zMlٲ^z(8SCGݘN~kF$O7n.v˦GmF˺DM*N-qLHdI%!+ bѓ5R4رO>.r,]r|SW^ϠW^ػ3i/AD뾨R]]ÇCESS>ਣ°að~z :C믿 &ࠃtR=]ױt?C E^7{W"ʒʊ \}n*sK/Cpᒋ/®:s{}ØŐO<.ݪU8d(<}za>FaCfOCh/0}t %8S/b֬8h4rf͚V8׷Ok|cǎ!k1 }c}„㗟68A;0,z_[z Fc=j9/퍑=6/7p fϚ'yl)ɾ}z#ּtb?$ZhKٰAmھ C°ѯ_?wCss3|Ms?/qG`w}O<${=f«fn1kl~?q,Y$a1nYubX`F a2u &7_|%QY;#/E͛m1iҹ3g.r6ߢx[owúuc1cp7૯BKKp/;V -{˖~ ^ _|^{6TGM?a '{uL?ƢEr0q*\q/aŷ,xx~W{XM|]:k">Ә:_]]AuuM\y隍~,I$U믿O[֯Yr2nf1] /xbsݲe7ٲ_r<^x0e1|w1kE~}1`@u0^xy>w;+ƌ7'G_|E̾}¢"6c >~8C,QճgOZs]mm-NPZ΋ SOaxᅅUVᮻ?={E1lݺ5OOaaޯo_l۶O~nv4Lfy+Sm۶Zln3JLz|M6wGe1 2{nNZLO<C|aYw6;4;mPRRX'o]rDO]!C'' .S)\x?~C &xHCt] ._~/^1cǢ;϶͛ѿLԯĦMIUu~/))Ŕ)S1j+W]}5~#G0WUUaw}>-^Ϟ"\rɥz׋va쳏eegv ;O߮x"s'oڵk?ʫj3*YyC?mi|OGblim?|o/5ӮnKJJv2BWk6h As9_.@CC8sH N̅^믿V}Jw,N:$#q Sc8`@b5 71Q^^K./FSs:L4+TTT`E󟃕ÕW^s[n#>2\:e Y3v,N9dzʩ:ec̕W]gyN(/˯w݉Otɸ;$aʔKQ[[CݑΑ/v1)S.ŦM0x`?᱗M s '˅/7C$_~8򨣰l2t^HO2G444_׷;o]GN'ܹsqĉr_"lH :쉔("@Q[n-^@ (Js<|ɣ&}+lٲ}1j.#@Gy$|>׿PTTdn3zV齇~?|==x`i BQWDH\޻8pKJ Wmߪ}h|g@} P M~`oh o2P@ExB ;l7O@-x+:1psQTXu|Ju(۷{i)ݹA)!(ǃ[B1L= гౕYɉ'۷㠃ԩ;,|G5nмLG:NAd".>_fIMhD\;Z*EQعc\ ÆO 'kO :%55XjrQZZ|T#ak">1`@lذ˗=v;$  STR޽zOw8i!!ie%%%AUUAх-EEEM0r50ގlGeuܼu]qcС()-Mw aHݻvožtCAdwƷ߮ȃBI miPU>C~=EIޯd3+Y# O:'k֮a0p t-A@SSn7֭]G(/p;Ԅ;C$nv_Wd0$:'O(,,Lw(ADPXX}bڈ|>oc`Ր$ .WדI VHA6 ڵ =zT! C5ET&m {]߿c'CU®]R"㥰zK(9H tj '"᪪Ç͡=ѡ~h [ڶͨohÏ{{ϪpĈ*UPQPP:@Qk<ܺ"!AAihiiy'o_][Դkwao TD}:ŶhiiiVa|ayE9AA @ghkкk+ZA4m7|{Ы#?WAy'<:Id0c=ѳ.\ "{0kͫд{ܴ ؛MwHv+敐թK άΝ><ƎO> "0taöhز MyK.>[kYρ{{Hť@I.M°3_<@x<-h//-[PUgqΚx#FV\iǯ3xMxĶm{=<3ذa0KO躎W^~/,ZM7>gy&$IrL(& HfP >j"xA|۞FmqArP/Y'&9L^WF״30cmxWPW_ogEp1xqacp=wcŖ"4~K,1Eᢅ qÍ7K,cڵ/-y ϙ }{챸;tҎ$  Hia+fxs\Y>PK=p"ݛw pp):[2aȟΰ̽c.?ٽfϞ?oKK^wd`_Zl|eY^+ <n@e(*)7hn_B%^nty^x!bھ]߮\S>AXBlJ(ާ7@ @UuTKGv8_1nvO-Pr9 pmۆ˗ g{yimlO?aӯ_? X`=qҹsnق=w{3~쮯G&Oqԩ6r1"sDA"tЎEwG~ڄץ_< tx(mBr7-Fa7/|~|>u(g 19ę d~a' ?}vCYY8L\q>'Ot.]k1qDs3g;Č3лwoL:wxbxDß't S.bn?sPZZ{z*`4iRr  :!T(ض=>y.x<:(.AIqe%(--F^^.EɊ 4Dr‹.…]ñhاM8x Yq?q 'N81j# dt9r >b Z*T(.8%PVZʊR n;ztHAȊ۷mp}ߣkբE(/EeEwכ[Bbl@  CebŊ1nz|a`hl ׃\\%NJ_{i.r様;=; "È6(o\<^/uG~Ade~=-[]PZZ R!vZ0 5>0`7T>ݻ:䳸zD![Jx;(Mnn.PPP% ;ypIQ\RoN*zXyyy(**Bnn./"k!9w|elO6)"4A;AD,{9'(E=łJ)zPz Q떙!K6n6 ~߯װ:mQg8NzzMPE^U^U^#UӴ^FBbbkEE 5yI(+,(` rjO[9B!B@aa!7lo~}7n7^Ʉ^GT!p\>hvM}ڭV#"aٽk7?viM)++#/7˅hlRYJCѪtz'tfk!6N'vbL9NN''IUUU5tڕm[( C3Ia0W%A'EGGKP(-`aa!8N68 -k-S] Ӛ1B!Dq\kyˁZVQM~qgiO:Hrp:l6IHH@  !"쨪JEE.}ED'A+؅v* r(++egA˺rԎUCӊgEEEJ`(/B&0T:\*J(/-_J3wU4D`Lfֈғhl`12Ed`X )d">>]qŗp%7|zP!h~0s9(+-"K*)Ί_śP:c4걚v 6aדO~^r23hb1>h5dR[Kǻ`R[B_ܲ^sP\R֜(Չ%),ؓpLàW09XJK$-a'!@s?/͠ךFtT=N=lbɒL<"+V`ѢEdeeر0z(E`ӦM̝3;wp8ׯ㯻>pt$o}㏳7ͥs.`{Gy6O<_|M7J/׳yپ}ee,^ۦ+>5E̙uY| 8{ŋ7MB!Di{9fL:J4abٗIRy!{rUBlcc(#CFFr[t4y-0~x{b F#)(B~3{1ۈeС۷#[nK.L&.2F׳l2O@ll,_=K.mt 4B!}UFVѬŖ$v+8n.\>(s)b{:EC5غه+*& Cw.th)2\[ćl۶' -[YrӍ7ǍٳPXXHyy9߯[ԩSL>;vpRn .M:`y-h}Ç_yR~mFv0B!EhC[*$bL%##c68c}{bvo.##ȉYMUdSCXrDqFҹ3߸K=ǍGbb"\y}!+G0w\6oތhLv;}I+\9b><9If|ɓ 7Po@4իW|rҸ;vlB!ЅRLU u1z&*bHKJr<) $$^[KR)WHqwA.0 ,6BVHD $FCʞ&oF7nۯ8zm!C0e^!1ݻ7sɥQT\i8.>q'D[tǙ&1JrԔDRRb4ݷxjN9T' ?קӉ=7N9 /'9 vT=8Eؤj_J[-J$B9xqq6***0fw:cTVVg"5%Ԕ$c1>/4X,E3kM`s$pB֡i +BLl C`DaWm)92L&#Q=48.~^ĄxE_4wlVM`(.%Bxpز!zD>̪ҷ餧FT(ۻw6FLbb"z}J`(Z]eEKxBm~Zع3/>Iu>#N:aZTVP(>-s!r8|Q>tc6IKKIFGGcو^K`(ZUrr2%$)9(z-"\N*+8r0%%$=V IDAT''ͣZDGG7?EQ]i8؍-eQQ (--i!N(,3~+ w ya#@ٛ#lls Bx oXS <.B!P!Ba*0*Bᇢ~L6w\|"B㊐ k̉rB!-er$Y!D$RU˅noDɄ^[P!0NOFh㭬ܜFj":0_c߯HHH^/D ON'.JSUYIqqQ+0L&tʶ[Q'CdHȯWVs$E${]" '*+Wb #KUUоCm#E6'տ\tvE> zzI9\PXHSN~Hwqq[& P5:ݿ"#/"y뒾𶟸T \..UESnt:p\@U (0l..bcc9ݤ6R)(( !! b9"׽. oI UC ".0TUʚ_c.j>EeEZ}^Fu`^ziӦ6QD ksXqۧC_NVH^"}a~iZ@45 PFf{V;CgZ~jyyFkZ)E${萾VS`/ 'h'e[̝3;nKͿu5F} 5# = ? jkw\ sѰP(0?F]M\\| >Y\.g@^4b>Y7Uݿ=M]`7/c ukqjL43jGS5Ƕ/ςGye%]:1c8sԦpk۳w/7oNns?}񵟨sdYUU;7OwOĖްaCy0 6B#u# [ϯ>JO4i ͚EvW3tu> =4M-#Mf5Aqq1>ˬYjGshj{tF7B||fҥ?7MᢡcL6 Y?OFz?$/Æ}nXƎǪիYnPb ϳ{n[̙3|\,_|y4L&SMk`?fN+tp lC?,JK9`x[:͟?իVQZZ-oa„׷/ HkG_kW_k9B?0lg%;gF:x"oh^{zUeɒ%S8묳t$,36n7& \3f, 5x)//g5cjU\>|87t3+>\#GXr%U7p|2馛0\>|8^z)G;| wMV/>)StR ڥ So;uWO@_~ݻ3tPO?;v0eW]n_|z*qKocrXt ΔɓY|9GimSn#;'Ks!v´iС{9^}wgD/ݺ(FI0yYB6mڄo>Lm*8۱2}?o}seqW]yw\nG_uO494x"{ hcƌaѢEs9u qpyrH>_{߯wwG7^g POΤIX,\tE|v-+WW_M?̙K/s=wp~-?-~X_}ViDEAQ:Uן 7߯\M6k.'??kƎaE ﷱ}Ly_ ow͆ 2 . s1 qHt`l°/A`ذٲe Yִg:t#GIKKGw}c~HMmњ_~z̜99s2w<̝̙3 h,[|ڸ{er%w$6=u}ɈaZSCRhi߯]S.=Xnf};]7_OQQyO?I&ALl,'QJbRR['LRr2L_|pD_1։$­N/X.- KG^Ν;/Ϗe7(M&| 歅oC`0꿀⋯}Ym@-{Ͷfܵ|';HOeWRQQNZF{޶mꋒR> &K/Σwޘf11\/N$'ԛLqqGs1ih^KSPPYg qY)((`eKdܵ1 ֭֝vAwpxBkn_~Te_ʂo2$$ƻrrr~z?N?C^@^ޱxB5[M66$& }(F0}m{z[zA~6[;-AnVet:;GGlL nȀ8|0g4؎Ԕzig߷Hʭwg˟Xfώi}fui \p`}=n&]Gq%[\֬F4rry޵vjCRg_ d>BZzZI0yvɛ d׮ݔ~g+66#G1??6-d>}}7XD4r1ngUZcUfgeq_Ix4=x4u='kʁt}zGڎYC{Yf>,DHKKy<]vܗI]k2,b۩v^EQ_}ui5x.F /<485O۷}jj o&k֬qOVrwz<(.' RRR8`(~KrR^dr<{[}V糭\3޽O>~>XAvα57TV =ғEVvGm}꺣HK{/S^Q ۷/_e1yO? \p!:V߯)s/7Ͽou磯F'Z8XkyZ/22<槵o)={O>q_][CsnN'*|Mڰ/#Araü]ܺSYE?$ 5jIvC;yࡇ/~3gdϻN9~**8œ3fx%..]{x_}us- 2ljW٫ص{Οڵk?a;.c޼?}{yf3gIL.'(GM yCiY)_~^{#G8^{Nb`#9|0ʠTH0\wY~t糹mm<FIObTVU˼y<r~oH_6 KԞ=O_{9^}qXCVX#;l۾G҈t/**FcX8x0u/ukիְb ((,`ŊYQGk~>o~N[x1G6j,Y' tM?i7x'v> 3ax:wM7r0ބOq͘14s9K/g~d7Ogy#0a'LO޽8q"WAZvx\I8Og{ 7M7nK ՝mh>[g8K/CQ,f3i:/8>G |8:Enj?Inn.;t`„ eg=O>I^ANxMNyTVVpPYYɸkƹSor1A3֝>fJKh͚zfwq'{.^Ө=7@`\GkK/qyhp֙^iS2w\-ZDbBFt33ez=#G6m@;%Æ[o1{lmt_ ts}zO? ^{Ke.OdQ-۔<^zF^=׭ L_]۷ xw8<5I:d|_/:Pp£9\9\4M㧟~r/sr):h4r=r=zM맟~j?zyǍ瞧( njf^L<ɓ'Kҥ oGWt_{\{ye-9|mTtG'= *`tFM`1@b `BB$Z 1R 5۷6qz`8:W`_y]zk>ZDS۷?+W|@Sz~F$E${]'>}d_ɢe:w8=jnQTtyfOރ^CzáJȯ2(pBJPnJЃ :pY.M#xh3b*e^CG锦GW:*"/"y뒾h]苯DS54 +~mdaW 0m=.yo4ט`q}n½+"׽.JOTMLrIm oKB?0l7L8vGUB֮Ofnw̛297|MB!"Pd0C3By xo0HJJ1ydUsc·ܹss6U!! TcB>0taޭ曯G*++Yl̚5QmBZn5A`&, #if|MXz5˖/';;Ԕ9F@Q}7_|CV\ڵcĈ\uUt:s.믾 ^!Bo|M)2**+YN>d+?nX|9ٳYj{>v>__,[9sfsg|r19sc,x-ꫀI&dI&O5ZP6aloA1h ƫhۦ[l9zbь;e˖y-?kKLq\+x-XW&dI&d:6ޔrC[J\y1w\^z%8\<^kG-))}SB!D !0lg6[Z&/ycdrrsXt))^64/%5(/ %%ڵkW?oW!1 Cɡnzu?j(Q^^Ώ?Ƚӧ-/ESZV{W\7oSB!Dd 5tqޠ2i;}Ԩ$$ijx]w-vcnj[qנiY1V]vLrW_}߼MW!)lC-q[hyk_};! `ejʫ=O1~up]ykLB!8&2h(ɡd!B;*&8uh !Bh(6;ȈB!!0 !-&%DO뉣Om' !qb;B!8.$0B!@JnG5&B+NB!DsPпDC!Bѡ}$\,Bo|_\-C!BH`(B! Cd!B1 2b(B!01lG=T!DhPU˅hR9F^NGs+ZOcyCZC m9vP 'N}vɄ`@4EWyWyWMCUUv;.I݉yp80[ڭVkL>KKKܷJFev5iӘmjB; 0 eEE;? !ilWNٓ8GD7p=WUQZRҤL&<tb0xkzE t §ךxt=88Vk !D(KKEam#~JhQmA}2hht܅~De5ֲ-s+/yG][j7nt=kk7-w OB>0 ^G.]lBgҥ ;wlr(,,fQTXy@sqp;9W{i{|ٽqnc++*OH8z}%nsL'L egҹCnZ[[(45B>0<9 k~#EEYo\!E^UuQUQBTM\ P:\JY7:߲2#A@)>~+:\N'U _Uũm8۩pQQ4ѣ[n :ai4 6Bv4WXJvAn s(-b~)U1- Y#&JOrU=V}(}{70Ǚ0((^Biڢx#y Z6U P!Dۧib͔P^ZByY%# IDATFugůIM(1X QN;IXQy5"EbY&; M9~WO([a%|P2P!粦J9Q|;J:RY'ꙆA`r:7艷Vߏ| ڶ̞#q(fP UYmFةT+Xc~;vЪ9Sڹ/H/oa P!DQZ/+)Ί%g| TE%D3P bjķwM5d]t:'@-X%bonKhqz#a &#ߧ=`c9ϸ\.y&?8Gop8xٙ|`0c}/=NC!!CTTMJ3T6m/o#&#Pic,ŔOIO$ jÚjmmb?ȳ x =V],R;9(܁%֌9ڄIgƨ0;,(>s>3fp8xya1^{5˒%K4Gy] qaM`؜īyG'sȝj!+_hV? 8Nt aAvq_NE+A눡廠z[Cu `_>t}XbqĦ.΂b¨38QQ1a7MvTFγz̞MJr McF m!B!;]t"EN S:`;%M_A{r1:wH(]E8PQ\-珅ʈaǔ{e%l(7WaԎ7=sXi^©Ѫ4 ۷sa۶my#}}N "ěm eP!2*bMEԍ̥r9 d`΃d*ՉQ+'ʤNzDTF4\g[Ș1iWvDh!ߙDžnYI!Oq>[n駞"&&R.:ԝ'5%ҥ3Ғb(N9#;RVVd$:: Pk7a񚧡zCMZZ]Dlv@JT2P?D@/C!8de&II !ߕBѪN'23X,:EG|\{vbryt[uegg而tt罿zCE^8_k7#C!̈́M$).*-iߡ#XFSk7K!Ba(..!112t8#YњՔYlX[,ihߡϣ:]h=n1M i!úX̀F~A>EA#rel6QWSbҙ***TWTT11X,t:^}-Uh=nsȰmM`0[,-&"]E#*:KTT.UUmzEi6%o>BP >"O`B!D@ !B3b(CB!hq=d(#B!B!ژǒC?0lʨmư?s ck7C4l3!s}0 C?8M ~nㄧ&zNT{Nۏ?DSzsM<ߣ,E@gp;p$'7:} Snu!׮N3$zv.x 2wO?Y恆9λ(;,~.>IwNcǜ<ÚA8yli^S˕s<kku_Sۅ%=T-hrIjoS9^W Õ4CA!kúw% LnĜoɥ;0'O $?k%n_mYˁS40j<Ͽp瞣wo6YMYϞtUy$ZMO?˯${[6מ[m6 )'wP**muOr+?dR(;g@T3ױG8 IwA-pd0жvu|v'o} ֹ)tq*u~Yo=`ٳy?yRwyd)r'LWf8Clz``>;Ï$Ozwl{ݵVr'c7ldei'NBhߺ}ٟͮf;$|16aa< g|<;g':Ιe_&Áֈ>e*9Lџyjh[b==LMszDt}/;nsx+C!"MK B`t(.MCWUw܁9;o%c|VfO]Fc՞@j)~Ҍ`(*nfY9$$gjWm%k$&Mtz;164u8#jNJj"Qo?@=uߟ$(x&ICwI^Өj߾l?뮛k_Fh):Pՠzy !"aAoimTJn˭ /U;euzi#iE:a((KGƴwE_^F;Pҷ;oϴr<8MׇBg[6ם\V+,m6u^b6nD#a]}ot::̛)7Sn:75[wtUU(N(<m ݧQfm+:  x?ε|oӺp?7W9n?qmI&"{"4?eV(0 -If+zSzpҴ7:=4{>vq=whFIS(8|(N'}.?iC̆ rb6m&4Y]}g $¡f>n_m+q:z=Ix].?\@{S|y}P[l̡.e/,X&?_4Uwc/K/|Ryv/8?aÆqǝ/;g6~ s.Oiw7|ݻv·x{[ܾ `eCX|G>X/FlL>l5C]ד@cj2Bܟ}P3bRYa/T):('(zF&=Qh#zrMFRb{ފ+{IKK#&&o/#σ>@zzf1cP^^Ozz{ޖ߷|Z6d뮻㵨1Ylz]cԞgUFpd(K CB!DKSUE%9JD45;;T:ljbդG5pZbp*z?mJMMhwNn.c^㱌NX&1!d21C߷oCQU:vΝ/`|:]9áPB!"9:R=ΘtvcJz=(6iV뼦vRs{,Woe|LRcFo2x`-^=N =)Jn!(Y=BҴFlԤi0$a5'Sr{sJ$RNIƜi~֝7<3s&{졪;w߼ .œ9s#//sp!SVVƒˈЭkS1 !x秅m1J~Qrrrб#7xcF '+ͷL`uyFɬ_H{ mj&0=T|j.9&U_z}k(\uj7h4rԩ>u2.R.zՂߦʨ~ss CB!D u%!!"AbbYYބýfP!hN:u~˰K.%9%‚nR|B"f?L&I! )4iVB՟Ru (,+6ľ-꺂/tQXX@*Vjh!HdfI sk̜9SyN[( 58a `x֊HYVbbcIMMw+:Y;/0 g0&H-t:iܨ1iii rrs]TSLt III4nԘH3Yu&V5O{~j ={bb!::f͚R~@$tFbT3wJF8 <ׄu@MV+Nssb \A EDD ]FDDDDS0.Cꋈȹd""""rV}04 EDDD:+YDDBa t)RMvwx<zZl6k:?k:pY < c OHK#/?uaqcvGF *i&9mQQL6W_}c`ٳysbb2nܸ5 6~J.]l㧕Z- "" 9ҸyB^~>?#Z&:* f/p%ra/({Ǔ 1c{3^>c&}< $,,0,XaXq" 8r˹Gzz:v{aVտއAJu='o  ""r5>1^T͆&,, ˅ff?XV,8ɤd&N;)))%~ۿfMw߾O~nXb{F%tԲ0 ##㗪 -- 4 fpbَ5_mܧLaWj*EEEl߱gߣGwϘAFFL>Ķ9yLL RSN}c/,u`Wz ED$Kaaa9y/`X8tٽ鸋8|EEEb!7'rob_%==ƍ# 2gf1h@ٴ[ "//}X jz"胡.Ce}kʊrz<^9G2rQ\O8vz;?خS$n#2Y:X,n&nOcyirK3_.O&(Hȫ`鳲 1d80cr݌Ep/*eC yab5{ǂ-XYux6 GdA j珞P;jg"gsGx+ԣD#ʎf`Y!܂bf}oc*t来K0p]ng˖- r+vwͮ]yn7SMw&Nѣث%qQz>62g\n8q㟧v5Yp!{獽2e EEE5O~șQ0gƱpxX닏t^?9$ڬx ڟ<+O7)gx ED$ToarY׵4|}>6b>\:.Ln[鞰?QRR΀PPP>BJJ؏?0vXHHH`c5Yl9;wW1 {zd\.{|I7 8^K< w}|1UH3 BEǠ4 XAZ޲ WrXqquf!_7jАÇ30 &ӴY3> ݻ_ˆ hݺ5I1 tn}d[rSiNvr- 4RSL U ""jzN˱r⺉jPѴiSKD3u;o/KNNbߟ'%%PZXX ȑӦ?&X Ϙv%HȫݙǼY`fWZ ޽7}fp`ӧO{nڵ% ˖ጠEq7Ô"sƗY^K((( m/8D-3fLF!221c{hJc(""!z 0 Y16t(͚ŘЭ[zkyK'[7g%==F3rĈ2k?X[1x _~;f >nݺ1d`C yIBfY0,f1IpZև>8mq=p=y~7oNnX>|s2=YӦMzUbA2hJWxFPDDBf%`:qqd>\X0ZtYh*1 cHR0dZr?#>>G20̑%g[kz֋paF\.VO@$tF:i?"Պ$""BgaE """(X|""""rVu`_ """"r """"rJgax]Tnj5 C i^g$M5'r ؝ waaa7ե-'""!fu6ns]TA6mvfa5iHͥ]N.,v;&bf=gUaA>`мEK6}qqq.NR0!&:3OYpk1ZL@(G*/$>!f tIuNHAiv&aQ0x>\"ìti &6˹Xǎ ?Xwݺu50eg 7gb8F[H/v"B0@ 5HPDDBޙ)Lp.6p8>_}ؗ`Xu`(""!4LL-x`UmL3ṿkΙg"yX-cAr!&f۸μt)~lٲCn=ٵ+?fisip=z{!;;2=Jdž{^̙-۞72nY_QQ'O獽&ƱmWA-a0hvVرAe˸e@n߾JQΌ<4j>,?x0 XU ?S'cɧ0yD]j&MgڵY^e֬Wٱ}, *:kwWXwWpob%lڼ[o-kʬoٻ9sf3k֫|ŗb-[0L:myy͛ʎm^˕Wvb)U؎3Z}|YeʫC0㏱]0ؼe :vo~$2d0z Ϣ?{kٰa[&)>a,|Zv8|8ev+?i^'|oI^7ӏ?cWVĴf8 2胡HmjoӰK j/,HlE= X-Vb 1b ʰ߿Mw^'$ߟЭ[Wy{)>x\rr<))).~Bbe۷ҵ8RRRXn=p:uļy ٿiXv* Jc `XhWJ4"^`j%0a繹һ@:{n<L>=Ƿkז|.[N3-ZԧS^Jjnؾcύ_f}{\ˌ/qCL1JtЁ3gr}0 z':t6Юڣ`(""!0 ,`Xw8B B}_wj-:&M3澱o,5=Zb}38`@7ԇ>,}^[new!4஻1ch׮mji߾-Gk.A׮]:Bvm v%H3Mukskf> nhdVW}p {{9e}~=o{o7)sޓa;c 0ҵhނ?,66lm,u 1eY8N\|\۰ ac FwrSs-Cʹ(>!t6ś C}DDXV\.OOѣjf[. ¸"Z8=Ml8'6l$j pX2MCZ`ZHnV,:| ]maͧg`V$g0 ED$d9N5nD4VZEnNnKj&9)t:]N`(""!jy3SXtIRMNgQQQ8C iVIDDDП*eX,u P0ABt9.a]ȹ 胡 """"(qA ͺps@C9;?PDDDu 0BPDDDDODD$egsND8a&N5 Bܜߢ91ޤuHa۶mtrHVV&K.Bb]N`(""GNWҪU+\.W)c֭\r%OII3ѪU\ݹC{C~7nK.1_C~ygR9J͹o}4mzimj<1mY7,z?Ϝ״)ӟyqvUj&L8h.|뛐PKpcϞL/9uc(""A#77˖x(yxe>xcQyݲ/KӦ~yg\E0q{b볘55X؉@u7,zmÔ)S2e KLyƍ о]{^9ԶJ[fy5ֆm__ ~Z[^yϘu92!y^_MGzx}]$%'ŨQ/J;zhIH;` qҴ\ziqEFrl޴Jo)G~Bs|ɧ%{HNJpЯ__vQϤ%//Ԅ&MШQ*Ӯd ˗a&d?ΝHNJ"#cZdFJJy hw0omGGGw߾rڵ3fpf&335k]v-QS 2Ϟݻٳ{7??r;5g!y6|'c@.F=""t~s ,Xɓ'aZ0aiԨÇ+1e]Ïg&M&..8pxI<^o̙;G}kضƚ6r؝=_Z[^yڷoϫFda,Z&Ç cϞ=̝7sY}䕛DZ` sv;ح0CT\ZOKY|nF˖-la^w0|Hl[ߺuoM3â k\E~+5~}̙=Fll,L4Q~tyyXfͪܡnvX8o.-oIXد}h>;wU|u箴 -?aArCV!d/{ 6xc ׇqaΧߕ,"""''';%ThԨ3j*5dg=˕{WiH"""عc;ޯ&NdȭҮ] x<ܹ\ٹE=""Rgi7򙉫W65).. tIeX,o3ŋ8o&7'ze ="""R+"""X,de!'gK9#^3@R)0wHJKTd""""rV(`("""")`(""""r5""4 0 <OvV+V8DjK3͚rEV8}~~Sw., ,L}DD$^/apZnM^n.T8+*֭[[z< "5@""p4oђrss{䐛wbrۯYZMPDD󑝝CttyyYG^n.111dg*"u^C.?FDD4Mn7abRPxpݘf{͈;$}BG$''e˗,[66b=7J+u;#{pQ^yn nٿoMQԅLPDDBi`Vbbb_}EnN_~%_LLL,arGV8}ۭX˗1K%GGEr*Zy23x wO7xy z>J˓30õԐVpe;n}3?XbCQ'Զ_f{iiiLxa">Æ3a„ey]^RN__~0 ~gulڼ({"&&͛6bb߯;w*1{惕+ٷo2,zs]veԨѤqcÉc+,9s ED$dT=V>~e S_|McRⷖA{knȲ/SV{/LD^,fz-X?u4 țyJ;Yپc;G_h ~X0"uW*ڷ`ݻ77x#*/77˖Ѭi].cӦz˜|&ѣRIR0Qp$$ēw h۶-6~iefQUmiS6㊌ټifHILLԸѹ5|ɱ[1\~=t&,,l۶]еKmF%cxV^imӦ EoU<999ԯ_ZtF٥`(""A 7hЀLAx^7-܂(嵷}ziv;}gd9?=w}C<½a7*5Tx*ފXl)*. IDAT|)J>alټ~ڪ2OLt4>$#KPDDF{ c^yBBu c/77ǝ(ڛ4y2{`3X._bWu-dy1ԸS5ouspʕ4ouxWJkdlXHIIч教3),,M4gϞkWy:u3g\Gqq1yyy|WeT7Y A""pVr$+֫Gzz:V[]v?>.;3hjhؠݏ3icy}&ML\\/} dddФqyJ+͵veis)۴rǂʕ+>tXٓKУu 7`zݻr3 v`#" QarA# >wmu矕?lݺ-[`ü^/;`luϪ*᷏,EDBa\peNc鸋=p 9~mybbtчt޵<]vk.N۷_v\Ѯ ͥ-K܃sr?esWtkCOXPܐUYp BA1 ("Xko6azqSVz π=4j%ED&4IO?@xxyZr$u7+C$?4b)|7X, %ڡ0 VYCFFZm+>dvΡ rrHNNpZIƍH۟ƪUɭphhب!NueIII q:#pQ.aFsU %_JDDjt;2X,:G 4P>""""gC """"gEU( """"(q """"(q """"(H% a e ѣG]H@0|&&aavaaXusJ Ы́.ADD$  )fϞ=>A^naav"##]ԐAp-?4%{x8qVDG%+0H'a"zEDD_@AA!YŤL hy9˗ZsHaa6ׯOaaaˑ3`x-_F[;u7ڷVϡQ&;p݁.GI ʕ1;XcSTPPnPu"""g׮iզ >b'H53i&\݋ֳyfwh;xj/'v/o5k(((+;q]wp8QX.YY,_lHAꮝ\Ѯ=|6貤 cxV޽{p7Uq'ߊ_{3̗y}Ƣ4iB"ӪU+ 1 R(VtmF׮]ڥ ۶m#*ꏹHJN&**QFŗ_fX""")77b 6ĭQꔠߕl W}999 4>wQv221澱%z /TDD$2Ӭy rrr(,,t$v:^}3g𡥞tb)~<%ک|"""nw..ݼb]T@Ӎ‹N sIɜlYEGGw߾nٓӧw><w3iʔZ]DDl1M];syvn|>oK ǰV\J׫gO/YBO7pxI' ʄ HO?HF>EDDþ{+p"uۼ `X S&O.s\ǎر#iwVkEEE.GJ`("""g۸+(..8) EDD|NE0 \n7^Ӭt򉈈Unw!itUd>rr)0M,V+arիWmk EDDo7[qqL+.eSXXe~٧5FPDDD&;(G]c EDDDP0?%9ԁLPDDDD C@04BHB `(""""gGHCIJN t)"""DS).pmZq\ߟPW%"""BtL,Vra^8 `,{:]u-ο0eHfZLfM CaF؟ƻ+DDD$cINLaF8@! V+187~b} ݁.IDDD ** Q;od0cti"""R, KHo(d zGUH?j/YPDDDD C EDDD?+O6 0x<Nk۱Z!y%tdgsND8a&%Aaa!EEnoќZ>:p!ጤi\N_]  M'""RBnN۶mU@S-YY/ t9fUr0@󸢢hݺ5~ǣp(""r޽JZj t9|lݺK.)))|??Zju !O477-ZCnnryܜrŅ+KۯK9 ߱`_J'&&y-u|LL \pKƣ >4J?rs!;;UsP&A\\\(K/McΜDG33gvt:ru#$0LL*+4M|>nNnXp:$''Ӯm[ڷ_ڶm3O?uڭϊwhպ#GYӦ%j,ʩ*˯ezʹ+,?pf&nՊ}zse3vߝP%O??t83 5?n]tay $ 4gZfkGHL4*?y?EEEOڵxG0$'%UR(V\E޽ʜ婧8`??z/LA%~BGKDܤII_~),,}ϒ:'T߉0xr@<6n<ŗ\y󉉉EgON-_AR[0 `xbq姯2-\.~üٸq#]ta2ۻ瞻y'iܸQӼbz}o筷_>Knz .T4m{b؁0iDbY bxnٓ_`%2x1'U oݳ)S0eRSSoۆb̽0uT^o|_{i{t^bUt2~=7^}e&%w |L4˖{3̗y}"/LD^,fz-Xùb?Dy}Yv|3֭[ϝ(sgyQy4^6)S7U߮eOeSe>'0x@%K> !ͥm>c?eNyƍ о]{^9?2ߥola/Ҵi߿wY7u4 țyJ/AYߝw™|J_gwM7*]ogy۶.>ck׭+1y^_ʂSZa\\yy6|ѣ@}'|iiӆK\Ƣ*u|NN. wǓS3׮[]wEJJ QQQߗ?z׮x}]$%'ŨQ/_6K/mCxx8Hn>͛IYv;?s/`[U] >a$$,mPtz=Om۶D8#g8Mӻwˑsc>JFk ~w}/s#t{II8ˎ;*]:IH;` q6#YG&11ﻯˮoqE˫HuU̘1z+;uw2m[cϫI&4jT޵Պ?P+ #G}E32IIInذi=qe>|(O1zMK[^ETt|OaРA̛7.;7[ܝ/!22aC2lPLd޽,[L婧.^=sQw2ߥ? OOdxs[DshڵoWeW緸U:\]_bxE ,oe`if۹s'a6?)S x=׬=;>>t4i@ZځR{JcyyᅉL4ĸ/60[K _~=]~yjO_crNuY҉<w3i"H'`K}fUj(**i/ȣ{﹇'{J[~i*ZSu֕g&33,^ Quߧ֩:AY|C rnߟGzd< NۛQ|J|wfϦ[q'޽{^[p_}wOHYz-oxE ,oBݽ-뉴6 6v[ai0p  ۮ??Smݺ-[`J 7 tnz܅dzD8|D:TxLȹjڵ ]T[L˥5mwүO9yLj%;;&1j'b25;CΝN;Ƴ2ܕV[qZPܐUYp BA1 ("Xko6azZ˩,${ V+I͊+С5MXJ{0|  4HIR(d׬!##\S "2rr6{~'̙̓>Tj(y|^n}"` m("x+UZlmz֟?QEъ ި_RE?p63cwC961dv$:ެOCN9rW%\\).rߧ(3fͯKq$=l?̹JƎm`0޽{HJJ}6J˅m`2z}nOtb QY2'{'m֯63hȉbX)1JG&7`phπ54{ !/KJJBQ***quwu%ҰۓZ]nӧa>!l6\>}B!D `(B!D7B!DOC!B5$ !B@B!!N0jUU~1~kkKOgCECx?* ac;NIsE B$ٓ4xNGrwWWP>9>_bӖ6M\kdT3:B0 8C׺: B-VF]Ul$F۶ ;%)/vi{OD}oʪjIqwl][f %---5M^ÎttwuD/TSSSnĖdYnڌV9c!*it8-߷n$ֶHv)CZ>`hZp98x{?7UPs״΍s{>#C] iFumkk\lk½ு,XXgO"/1՜ub-}Тx꼤gd>%Ԯr:b5LknoZwM j'7sNNk܌mf-,"Gא7|X\)QkOT}OĖюei_ qKo|wZf%9Yz ECӍcBΛidgrp2U-d4XT &뛬BZ>))0t4Mu(̵w:*x_y?BݶۦC VGZNH/,/0Nϛ IDAT0w=ȷ;vt~1^}-}Wu}+lӆpA+Q#+xt jQϒ~ʨN^37ox\3mF~cc{ų|Ʌ+%|PsM=;@ LUKPkЂJR7@TWoh*/3op:[ݏWZŌ4~zÍ޽`0cLv>Zz}"0ctJ =l,vap0 W.a]V-z go[-{E̝{-~>Oof6|Fl1Mwu>c#{2a?h|y3˞_/p^~&_ n?_`e˞oS;I.]0a+7-*BRߏCGVʲ"#5Mt94l~F~L/筷7VK-^~| ,[ol|K[uֲnb[n/yP(s-Sc~n(eFBX voI\+=ɶrL:ӦǗ:n߰wY3Z&s_$zuL}mR9z4CF~/L> } jΞCr+27o9Nn5nlڴ'#.G?Z+۾'/Ғv>H0ar8( XBYmg=yhB222`ӧ,?_19;0S͓seL&ʨ$;;e;I^^>6Yfx/۾quޭdfdO4Y{Nnn.N[n}`طD׈_ ,AZrUq8-zЋ ͏-w鼽m`}/ƻǬu?d;?Oش&{.͛GFF:FϷ{souuoa[`gl]YZ Mfn=$vF ٚsդg<==Q0[ob#2~1mSO==~)sA3O{۷e{F'#ؿL]MJq syn_>|jeΜhpF?n%77n%}ԗc #jTމU8;Kᨃ6MѩPJ8J"d(7vަcSRR(-)!?KKJ/QY+V`ԩ>ֶɵ\óKcg\uKLlKڦQ[QBd wo;!lYoBYI)yy;&}8-5gB yMk,zwN>m>x=q~}M8N'<ɟ.Ÿ Mm&mNƂ 0 M6C[o6gS.;|l̜~Arss-5 EW_/e.GBA/Gռܘ U`3il fsl3fNΟ2g}on ,buߌtP[[3|fFbРC=ZW眜l|~c錋EG٣o`odd&%J!hI^c'k'3Qy?(ٳ뗷MN?}/_ҥ7p;Ҧ5[o#I4+0pk)<y=vſbm%3O7f_ߍceeesA |kb׻sJ>;֓*R\."trK<\vO|S|/j֊L׶Xؿ?`0PɓCskˀ%O-R<)Sm]z ?J{erqb 0,g l1v^  zxj()+БBT-=v/vBaa!>xz77?I,Y4%%Ԓ%oܔ/hTK.G{ ޳ЭCjml08+o3YC*g&B\1V֮k^ooIyy9ƛ{\sՍ?##G}~ī9mbW_y%XW]dꔶ\~/5xn̷ `$M7d><_Sǵ9&o{Ŝp f{ c8fh~zMhɓ+,/CQ~{}1`~?j[I0] ?)IpżuZЁjׅ04$uڧ(!@mj 璙z.'?2jX3kL}}459K.~STTDbè33&bV| ?9Ǿ .2]9dA}_yY ҟ9j$=Fiiib׻sO$]{GpOJ^S?0i`l#|L,*جdd 8p@ғ =vN8yٰ~]+s.=f+6 |ί#'wxj0^ˎsLӿ~e: tg! {f͞Þ];u-:+C)D5$9eT`Qu.ul[FmdētP%w5d`Kʒ8OIK~n&kmЎ."$c~@/HI@9x cjt#FLYm"k5Mc} vRYDHB .F C~vW^< " Pcg5pt]磏?ΚiShKL8{K7@ >`h1p8x=vЀx{աsiv{e[.>Rt8ظiw.TWU^p8dزRXR#{#9CJwuJ$~ilv֮;NCKT_0~{oXmzo,mߡ6w)OMEwP]MSq-f6=sOT}2b!%5wqp/O?]er{aAsJ~_;o˩JNCEi13 ;c|}_~(.*d'kPp0Kǭ۾nciiNnǞ累U(_422}P]m-nw5"z)N9rW]U\).r_?bkK_f`I%] !DTU%6d0YYxRf't:lq5X^4'> GUUv;III=XHQ_C_lҦ}`(H8;?iS/}T!BGB!$ !B^ -V ~OB!DjtwU:U>$7; 00[zB!D ԑUT:ړ&C !"Q)ڶ[&^ l66!Bc @!B =Z=>UB!D4=>P!UA{|0Lt-BњD|^ЈB!8C!Biz~0z~# !B&2M2,B@ Q!5%P!ڽKaL3-نI7+?upr/fttdnz\ߨ pOdt2:XlG3XL`BV+8mഀ3 mf~G38LB!h@@P*PO*R!X !2{"cHzs+G{ jP W6`lDuL`S}B!A  GOp` i,+>+qLjcYCǦh4`X#˂4 H<0+FMPJ0B!D&ºj!}tF:4= "ImeΨkgÆn~u rP p T3XT0uB}B!:MdT4o(U_ {p@1F 6(kx6[ad#[½ JS`HxF) #|GTB!B`B-<gk hHaQkؙՠ^Q bEk~ŃPBv%p!Bv2jj  Dѡd=zNFu,Ms )Ty~(Pܠc$"]~v6g$Z7"F!=~Z$&AH-1 PWAs7F>Qq9;4LD r_@M|@4ZoG|b2)YB!N c5hOa4jJ$8B%A!PL/ h2))h\jj<ƹB!]) UZqPhh(hhyEr f *QPr\`n wfgf~3]UO=U=;]AFFFFFFFFFFF&ĉ8xN`42HTw5DjT#!ԵG^&0Ϸ3j橩յ+l&33⒒vEFAܾ.u`罜`~X7JDѢRQ(u$Iz*++ ~|o-C_+*-ZҮm6oLqqElL8l;rDASRAhiC*0ZP A2IJ0ڝzATd$u_/( ''Q4<.7Qr5]#僙^l\WrִtE0VP aaZ´ZJyu$0b2Q\R,kѮMkزe JDvB@DviMJB a ITu1Sr\週akaHA $Ae(F0Uty*Ą6mZn9qqh52Οh7)#SHdؿ.u`^FT_A ω/#Bs);)|>Gٌ(UwA[>k}`L{$9 ~[ dk5 RAxX8vLQhDQ^ZZ۩V)Q˅TT9w>:XĆZDgps';L̨pLITTJ "]]H~ 'zcǀn/śu jP#v&dHԑDXD̗@S5kFlLL]Ro6m8qJ]]## ȐG>Wߍg*8o~^>_(evkc*Tj0(h0Mrr2(J EEEPcXZ&%%8[xyy9U z';لh4Xb b2 "(4KN_QRZPVo0T**)B"~r#' bPAkҎ_r63W"*-S$!>JF&8xHf;Lz0[w4R -7'""]wT*ZjMFFew1dd_g5>r{XMho@Yp"2ZV?a:{aG}FDѸU*(Im۶tڕQFѥK"##)..СClڴC tؑ!CЧORRRg۶m?~<~ JEja@\B 6|q%F H$&&`0t2RbnEEqx'/}\gPщŴHmLTnx+-o|W߰P :H 5&q5* BAVdBAVkW4egaF`w`ؕ$F_[9Ɨ<)?(efdR6˦Վ(/1K?(5XAפA >[!qq z$IM69sҫW/$˼y:t(-[UY_׏s2n8m5k֌ &0o%X^0TB0QF7yd+ QTZyЋDo\̥ tԀ2 .whH 4*Ci]ӡP(hղe @Ee:^^h2b2]REQ1Q)Uj ZV[? мys222\4ed m")ВGդ!U5yA`!U`/8հBzRu)~1v}]aRe5lP(.!UeEȈߞl2!"Ɍ9EhX~VT 6t%''3`а͔HDbb"$'',; P"OVTj}~:wJ[v,uAAbbbnv4(r)2_@'cT`TI߸QJTS`oS%:EtbEJ\uFm:F~ )HxPGAE-ZԚ0ɱ9~x"1w4$ɲ ^rtz:G̙3_PcrF;!G|՗Ŷ-ԱCRɶ?SYVJBBh׮-= lF]W^9~9ѽ-)ײ}Ə, ßQb#v]_]p[;ψxg[sk}~-bۖ:^PpX^3k=zCV ST$&&Ҷm[$IԩScٌhٳHDNu[n.Bcݺu[ qE׮]QKf6C20VEU&Vo^F}QcFQu~bocYQP"]#Ig O00v<Üษ\Nu%yt2G8Wy2)ECs "4zP#)@IJprw>%Igr (,* 6$QV^ſtz:'Nŋ>8QSCitW^z}Ӧm;+CeY;SV^ɓ0?~E'p[6we/-ZwOsǝwqܹ̚9|'N:͵S5E$:Jpa @ê\$8z!8"É(j,6lڴd2l*xUv}7\wuL:odKoҤ aaa6DA !LR F tnۖ$/{J]%PV`D4H"  Q$**hYFK[݆Q z(@6cR66x;?Adr# 9e(ՠL8TQ ! zZDTdF((,=Kn^4IhBf( ZhI3s8գGӻ_ X|z-m1\9` cƏgС̾v>^qƲv:r10IvWm_]77G$og5)J֬YCYy9IIIEx nHb7e/>B|#gqR  OsލYVֲ1j>R!UWR%1.BpXb=/ڵ~~}v RSSm3M|biF!Cض2d_5Ǐw8$`-t&$p{tIG F.>)J J%EE6ng6"  ZGuf쾸ZN"8eS~,/oxk8m}lܸ(0H^j o?+l6sEzABBTTT@ZZ/^l6NsT7W RE=ʱ'8{"*Ig@3ވRBTb6[;bUX9nG "т1 C()ca4S_A qVoέH@0+Dt'yxT6IY@.=\HPG:We9 3v:41GVcw:HD^~>'O"/?^,V3gϒC<$""ĠmH\LtX^^mF@Tҿy1_``mL8&Mp1[Ȉ"#9s>9]R^_d4sȻ˯}xs)-.7Qr5*8 m3TQp8Pui*{aM P*"*j>PU@aa!NUVV2zhڴi?=zR>|I,o֬V`0вeK$CQ^^b1 DFs^fϼ z ;6<IodPkP(5j*uBA :j,w`ۢ$K/Ĵ!QJ"&-pKKvI&1J#gouGAUemA]#Ѐ*$Ac R@E/H`2Y&=IWr0=m.R+H 5BX!(Ңyt:22BqI ee$%%Tۉ T;T_E޽ޭ-yY~mL:C5Lf2f~Ⱥ/՟lJرc$Ç叻 OФI}aF#t:SM. _èKHUM$[@B}.5꯿>G\~xPUDGܮbb7l;vкukT*%*>}kܹ"R\\IKKI&^7?pkG͗ѳI yL:Cq $Q[uGRAg#c֌sS+jEl;UVGxX9;D,Ѫ$b +a€COH3 ȹ$E֢HbMA@e$h"a""T*P9_L`@Зj7Gj-娣ɨk8rrrL7f3ٔc͚5 Xƛ|7޻!"+=;ɓ'<i#|-7mWk(J*++IKKcȑuV,TE/べ󈏏gG2~$>#v]e%=Hz(8|DΗ_pk=|Yp`\%4[+++9s ~-&LW]xN믿ܹs l&33k2uTUhvZۖvaat{,"Հ*RP ^̥wOdP CnY;c6QT\`K(ͺV>sTf7FSܴWD&QDNIҋq<ñOErW!٬Rkm6%IgP+Cjn`6GGEѢEٓ$l f.Pմh[`6 AW\5ZFKؒH誐/R i@B` 3$e}QHGJrp§$IܹsRhX$3iղePKAA~3,8-g=~B]4L=4aX 8?Ј h{[+UdtNNPhۮP- TMdXQQ`N}P0Pg iA"ibA_Pi 2B]aPYtTC!33෽a686[s $%%qvx22 _mȂC~ڸՖ57ƭDT$IڠRÐOLt4 ӫ Rj6tBC ){a(C(>{3B$B+f-H&G(og|g״|YχyiL6Q pvl2QPߨDAa!zm3 -ڿ)Pj"[xX!AeB8 B((DA\% o& _PP8$GA(e\f87&:&pQTQQ Ш… $''liӦ5zLmkUcipx+g8u ]8 h~t~uy!pX(&`?4$IHm57{쩓MEFUvC)uBlݻe/?< > mm~ '5sdV0lxԏ@S kZ6Da!U_LKGD~̆LPpMa˟@uYdg?WU9ۨIюEή6qw rk;5-;\^mkzQtgf?^.g}(7;nsѶCC%gb IDAT 7ZtsDGoW*_caW@Ë`^bOy_k@D~ p ԟo3 Ve{$cQ݆TY¨/B&:,-BTK3*|"YO|x(~wvў߰4}lKFY igWVcU,2djRDQDm[/k~0!.wLnUՀx#/TwNg-Mr1ɳ=6 6=ڷs_  W]r)y5U< /R d>Nw.[ ]մ'Pj~$WUhXh 3@x-kqQjX_ux0ȳ2P"""EQ^!S3jcQU]v}T8Tc';H5j$Bː, A܇y* j84BRL9 sijOXnû3{b-Ѽ,0dklF Ջ _gݺuu9vAtgĝO~93fiӧ;towзoZ_(//7?O&M1b>S5y~o:QօCIvԥKgHzyup:{sN9rԱ|tpөc; {;klܸ5j>5;Ծ};Npڪ[~dmmA s>Ӯ ~A.~T>$˕=TG,% ^z%,x^|ўps4BoWLJūID=`ݓ ͿZ {OX\8W ;ih#IbY/oz4[ÆcΝ [6oaԨA'XlݺgyV-[V+xIINCAWUzF-{?V]=>/lInl"ykŰa3bpΞ;}֭+|_As||^ʘ7o.c-<ȰaCyw2dXÇq]wRXPSGgv(o>Ox9rDzso>̜5]~9k&Fc0I݃mt:+V,g!ymq4>7|:1b8FbEח}?[})S۷}Oh䪫dٲe\9pt1۷s9v[w?ewG;ݻ3С=_z߾Hhd|\y@ |2|06]l;fӯ__n6=rk"N?;ٳٳs`0օU[EϞ=4i32]yاڦϚk]s"d!X$uNg6(+SRXVoŀ⋵c<֐`6 !Cغuؖ-ӻ7.=O9|ز?$11->믿M۶,}jDQdu/{naywli,[FBB7lG vO>#2< , xͥ\sd[>l{ڶm˛Kf?Yh1jr~e>{9X-_?Oq} ÇIBPPVVFlq|,YJ%Ksײyƌ/ۅ8 Ή#Go^K$:*fXz5p k}BAii)?gmozڵشq#zAE1enΘcyTN}cxU7֓Ҭ(QT N?m4hz@l__.M7>T % @ŎuցLcJl֭ogӴiSnfV~Ӯݻ?aٶ^lle*OӽGU-L!;ѭ[p?AB&̜y3#F gf}~-n!6.ロ)SMMC]<-"22n;۷o7xÍDGEq׳gn[g}Ψ#QՌ;۶~GnVb3gNj_T\c=+JbbbPJZΤuUWd۶v ցrm76;裏:l0ۉbر\p&ҫwo.^`w͚QPՌ7-[t:fLF]D yGxWIHLD>L}j\Xbetv'B|4*${fmƝwIRRr /BO|}^ϝwETt4Ə'n]5sxO>h5vX}vkG\^lݺﺋ$nCf37[,Z?/H^A2^ͧY t}XX'Ǐ~LKY,y>6_ AZg? 5][BHmF9##S_Z ^7$pL:` {˫۷ko#Uk 6͛_BG,%o.]hٲ~]҂磏>bY|jGmpXNbbSrrr˂xOʙ rl~P?o FÎp?v> 6ŋ/XIPحILlj[CRR5%-+ I&ꎻeo/c}ǹvE|((gQ,^իװj*OvxU㡇tnBzz\9?_uؿ'&6\ ӎϮ/g䈑,Y`{,zk6;v&%ڬZ7p&M6n Qyr78['ߣ _m fc>?ԅL;Z3G'??z^|BA}v|'fj;DGG]m :{u6F1ѣ׬kWօ5kVӵ[9h`?'N`08/-ʕ+(,(`/;|V}LYYV}̈#[EV^Cii)/hђq V\FܹF_),(`O |6T;PVV;ldžΪ?6("?06nd>Ӳe+ɓ'YbC?CPCaؿ=z4wBד~ )))^nq3H}ޡ.΢w>|٧v3jHvٍ^'==oٯ1cư|rsϺ+ gS\RGL"Z9@Sŗz ,dq!# (U3utY8q"{呇 }rss2ZvVuiә1c: _[E("mڴ[у3gΐV5ѥKN<'OfQ <ヒV[0{L8ݻv1ڹg==wI&}^Jc\{dvɽÖ~w0<}L8$I̙3JƳ{.r)6.`ZZҺ0bpr?s/g320a<͚qf96yܳվ (NxG3g&M;ھظ8=8g}${q{1{/2` )Szh^~8ٳou<#Hٳ=ٞ>}SNa׮]}eylܰqc0l0l$O<#?L>yeKX;Gf{x=]:3i~۹syz ?! Ԥ&`$&>ɟ:এI]22!CP ib(U4AEn`ݗ_͟~X-{(# 임}}v^]@vOL&f3*_x?zjK֞~*s~h CN?ZT':< Ze!;sb]H^Of/ FBu"˚ .4i:3ꬍz]w p >MrLJpqƍCeez"O[Yu|yty[֣GhbkϪ}O?Pḱ|}ڮX먩@KNB>k5Hh_c端qϾ0ydyy# L : 2|Zf֬YkO?a4سC38222222222uχ~͛3f =t`yLlĆ(,\LyZ-w}7 ~vO&D#H: ᩧr(յh"FBpk?TуEj*͛ ߟ~wy'VU'##### ~ ޽jҥ ~!{݈ 1t:08[3_/B$|)פ cғd'&2]WdVptxjo;>zhXUo&cƌGAi l:=c6Wƺi5פ`Azv}}1xpֹi_ffo}Cv C&0by0O?݅7'+RyyB?xcK>d~}|2nh@ML7x o41j(͛ǹsx衇x ݴ4~^}U23/ 60f~q1ldž ƿo-[ȑ#>|Ch"^y/X{w=z4Æ |L:+WPYYɴilid^ ҽ{wƎuިÇYrm\SO=EQQ! >OJJ3-[ƩS7RB|Fe\بo[ keg]?mOp8n}H@,>:ǹ84v<%%?ouֱg^z-\x_̙2pӾ?ϖ-Sbo8To}9>jPw.p-IO/c:KW]kV?}R][cBvc &OΥg7GXX3Y9{I_Nϫi?=ʨډ$2e 97nk90`?0 .$77!m61l06oBj IDAT?رc8qիW3p@_~t /رcg ෍@8tyyy|gז6d}9BVVׯ_}222222nݗDDD…a6*y cݺu ib l$O`W|0q}6Ryv,?<7|3-Z_A{nt:Ym۶o׮}geʔ)s= Pk;`mu֦۷ԩS]y:xddddddBl2j4@2]džĸ 6ǁ .Vx+y4.V3[=:?ٙ { /-6퐖u6d-R kk@˛ZdK٬,['|ԩS޽C UV~j߸qItӾ䓝0 -yM֯m̞݆4}u6ZJM7U۾ݿPo틌Lr?_a [rIp|LĪ_ى~g[lr3ί9}1i$T*Ggf̘A||<]taƌ_~%3f`ԨQDGGf@s,Y?F8tqz=7to3f̠Ck׎ӧobccϧΝ;3{W]sNw]\'lٲ;ݻN׮]Y`K>Owdddddd|htզ yY8H96u#η ܄ne-)/bk`KG=^w\]6YPhX6U8ғxw}G~P(=z￟E9]˗#09{x#ޝmҶm#G˫lK/Exݩ}},QXhXUpmҥ'yݮ}}?~;X~ZExѢEߎEhkqΜ)F: fń L̙STg6o.ٻw/֭c,_Yf?Ȅ 8{Q)S~p4~ՈQ=2s;Ǯw]'111|>}^/kNǎQ927נ}$뫭 ii ÇgРA u_|W ܍}222223a,ַ*tg^~evw̒%K.d ZO?AGk6"aaa7mLlFS18Q$uUmWPQ1b/tԶB&H ~)wf֭u튌L#dggb0Q ҜlBVфӮ$&&z2R*P{[JC JÇ%Mk]1=ĨOFFFFrQJQk4hZADbl6QρrF֦`(B)Yg`ĆLpWVZFE@vF&jL K뢕U?{Օ B4ƨ̘3x!7q4m4/B$5!9:EoJZ#pr"" DB)/F{僚i.ϧ*׾|kkhƘ1c0f( ' Ø1ce~F'.6zPƧBgш0<.'"""""xExG6FY_/chlsiTDDDDDdn9#DDDDDdW lC#"""""{ytz """""rlC>s%-pssCtt4bcc_| )kG4Lݗ/g7oFbb"|ICш';Χ3H?RX8<ϟ`HOOGQQ?""z-tQRRGXbїEahllRDjj*n ŋqAtvvbF C\\ԄD( -d^LL T*p1xzzbժU#)) ۷oǽ{dd#$$Zd!** ;v@ww7V^ A/[?' چ9111āIIIP(˓'LK痳8>|PTP*HKK ;"T> EEE(((-[k._GQQ?""X[̆)@jj*\]]??cƌAjjX-pwwO<7eeeزe2۷o͛7ЀǏ# @L Cff&q ;vhH|'(//GMM >3Xe81/233q)455ݻعs2xw"Y̛7^^^z8={hLhZTUUA ,,(R5>9j6 AFF*++QYY Fg}vH?##׮]Ï? <3b?,`+WpU@ii)?I&6 :Xnώ;^wuu!77aoA0zsN Xv-f̘~/RD`` ||| ʬYw^7?g,\_1ߩSJ^x|ra8sQO?" //صk2}7(?W/886`* WTT744[|-;9򑪿c?)z?L A2 FL8 zNzCzz:◍5k֠j>}:/umYYY}ձϚ鉖omm-,X`q֭[1qDl۶ 7no~I 0Jq=ڵkbT5>K[iZAZ.XET-MjÅ!T>RW ?""~ct]׵~z[ m?]* &M¬YR?C @MMAAAHNN6ZŋXr%0sLF酅Xv-Ν www̞=շ---ҥK1f'R &ǧ;v h4P((GMM """ ɔ2}!j| T<fn}~#gΜ%) _˗/wv_"""c=ԯBG!""""p~goΆ&KDDDDD[c#N='->ppDDDDDD4"twMɶl\z= _ң { m<y """""k{68rTDDDDD4":!44@ѩ ^kd'DDDDD4P]pmlt:#}&NDDDDDdi]]& moM=Lg:әt3LgN Axt8aϽ;UW!Պ JDDDDD4xܾӧ 777(  P t:SEQQ~gN@ {fIϞF%YEDDDDDԇ軡wF,zMRYEDDDDDOBGN@n&B蜢0mC$""""᪻hok^1^b ]9!B"""""\Z @ hkgכF"""""Bt?л=5 LVz j0DDDDD4 uuXL~t͆ql_þw[ ǘȹAhg4aq No~q'"""QлMϐ2#y""""!F ƒ?ol}=\Y >t~hzݧBhnussCtt4bcc_| gb߾}Gss3rrrp9tuu75uT*9߼y3OS">>~~~2e nݺFQ`` """j;wNL+ɓ'HKKCSSXd ҂\ÇAXL6 8ut:opDDDDdxdCc>v=وAdd$8HJJB@^^LTTv؁n^ I/RK\\>ZT*(J֯_=zŊ+vJ,;v XjƢE{n466BT"55[n???8 P(ɱKh0\ n vJ TVV>2jFAhh?##׮]Ï? <3b;x `ܸq(++Ö-[K/L:u MMM{.viqM444}?,,LL'|r>CHH3lƲe8ADDD4BF OuvQ@@瑒*-;ƍ˾B;w^ڵk1c 8x ._lNjq[>>>P* A=-/G _ϙ3 .4Z0ō']vjOʕ+???hZez}y6ꂋ_tꐞ;v,y$''d ,fCVӧOe/Gv횘VZZ,ܾ}ۦ}Pn_R.nvQII T*RbeT*!.^o;uٿ%~!BCCwwwxxxƪ,9qT*bbb0a 55ULڊ $''m}ҥKbZaa!֮]sg{gCg-lS~~>8yd_/\M68{ldeeATbpqq1ya;ٿ%jZ(޽{j8t磦HHHFep!\ IDATqɐrylڴ ݨ #8/ƍQ]]LFADT?e W?jRp0xy'""""lwnB􄛛 ABB}AthmmCg?kmϞK?1deַDDDDDD@SGFMR9ADDDDDs """""! 9.phFG'GBDDDDD#V8hQGC)ٱHqEW;NFΎ9~S"""""9n(jK tphxt9]P"CDDDDDDDÚu-5}EDDDDDD#+ A9S% J,DDDDD4X< """""l8; """""1 Wipd9ADDDDD SvvuQc?q;l]8?Hs16-[e˖9; UGFKy-ODD4lȹ-,埈O6!>A͛D<(..FAuu5@ 66ӦMCnn.N:N'kطo܌;w]]]Y˻Sb\]]_|&L@ffԩS???L2n݂FAII'<< &Oׯ#-- MMM={O?Eii) HIIASSd|Rz\YXjCggg?>rrrӧ#==EEEIT\\\^z o)+[ˏZ Wa,..Fmm-T*J%aaaCzz:BۏŽ;ݍիWC8*;4{9DGGcpqqAbbQKiDׯGII =vbŊF_l?-ݻRTlݺ%K'!!!jI9Y;N,?{PPP-[`׮]hii믿"GNY?Xx1娩g} V*h4; d^LTUUƪOƍCYYlbgy&pqigϞżyٳgVڟ{7+WpU@ii)ˊO|䔟cq;f=ʏ lHMJohhzΜ9XpNoܸ`֧+00{_WUUYΝ; /`ڵ1c~>>hO?" //صkURbzonnرce'U>RRg֬YػwQzG ]O6~JtHii)pmhjj'ZZZ=Ӹr oFϪꐞ ?d/rꏹfCVӧO9y$RSSֆbtttX]]]pqq1EӖkpnRITT~:}}}Q vZ̝;={6{~˕bҥ3fL4Jq>ŋ#t@v%T*JҪ?C @MM2rꏹAAAHNNnee%t:W_YZb_*>J?/^ʕ+3g_*>"""{3_ -1bxblܸ8ǎCBB4  hʅ i&477#77hN< ogΜAWWRRR Z9sԻnj{AСCFSտCaʕxP__#G&"//IIIoޗYYYP*X~=\\\d_cPoRITT9{,ojf͒ g[7M.:!9I|h2ڿ?VZ ""[(8}pssB (PP(~~ :maQTg6홿ʇ ǏGlll)TDrlܸ>>>|C"""zP!r[LVΝsv(4 }xwގ/OvvHDD4=fCA0+n2HFEDDDDD?s4_+4*"""""rap[""""" ipd<う&SQ|Zkd~}}}{n9-En|:{D44\ Α h=hk.?li([||<?;;!Enb8(“!۰k̙DZXD4< "!aʔ)x "";2Ө 1***~ 6VHHbcc1m4ԩSt6o>,_^^^h48q`ԩL[nAѠD\P /PXXNq͛7#11O>$hP]] xWWWDEE_Ą ir-~۷hnnFNNΝ;.1W^ɓqu g|(--Sӑ&ο7o+I DDDZ->Sg}KK/~唟%49C~[jR:iɉҾ]hh2\ 8D.\@DDapByaaaCzz:BèERRa~zѣhoo/VX!~K͉Add$8HJJB@^^L\\oJR4;Ys!:: ҥT(رXz5A@AA-ZݻwJغu+ //K,O6BBBj{9Y;澌Xr۟9111PT±cUVYCs[*]N/,m-_gor[9WY_|]hh2Ө.\p=2㫯###'555o;}._|x'qơ [l_HH222PYYJh49***777ֳ8q* 1110a|||*פI0k,T*st-?`to:~iR-''~`Om\ 7oÇn2J3Bxblܸ8dZ/zwZ-:$K %??HII+5c9s]]]HII7j5̙#K_|YܴiktMcǐFB!СCXr%^{5ȑ#&$!)) ~r#++ JׯclmADDĻ?~+V:9r ,.s`mOgo9[s|-?uv"MA5@{[ D4 .9֊FDDɋhx?!"[(8}pssB (PP(~ZJN6tv(* f/ Ti+4*l񈍍7h9uYDNVj'Gh)˗/w>hzF"Ө!oMDDDDD3$ADDDDD#G'""""";1_pd'DDDDDFEDDDDDviTDDDDDPn}0h0_pdd#DDDDDd/ """""G9ģ 9D[=@#DDDDDdzl#dBy8ٍlUvv]s[sTſb$兆6g5gz 8``=#gze˜E-[lȗP>2OlSNf@f c oC|-7a$$$`x'P]] \xFTTT@cvKR|wq)Ym?C4///ڵ 9s&VX!~7| į~+ 4/֗F'DӋ!31uTSL[hPRRo٧z 6l޽{Q]] SQvv6ۇx477#''ΝCWWpttt@Vܹs|rxyyAĉ3_v"_xx8^yL<ׯ_GZZd0iG‹/ & 33( ш|(,,Dgg'@ 66ӦMCnn.N:Ni._7oFbb"|ICшW*>!E*o6?a;w>`=ٿ%rRG޼yfTl_roJs7K%oT͛7cݺu6W_իW&WVV~˶իhhh{7vX̞=o݋cǢɩ?mWEN "##K/x7e8<ϟ`HOOGQQ͟rWK+?[?hl_%%%8z(+V0FRRoߎ{Ž;ݍիWCȊ/&&* YYY8v<==j*/>Z$%%T|RH/'EahllRDjj*n*+Cs=h߿...HLL4JAdd$8HJJB@^^ ,, qqqHOOGSSP(@~$..N* JRpO~H߁G7 />os'[XnO9[_R~Im-9r7s%eq(..`{H?)gϞtY˺cƌåK)r?>PWW7n`^-9ߏ,ŋի."`˖-صkZZZ믣_9ʟ?C?c5ksO4I/Qzvv>44T'轼n';;_ϟ?_?Av|矷L}Xr7i$n͛~FyٲeK_>00P|SO{=T'NOeg}@@ߪ꟩'7~Ar}ۇG*~%?[_tkM͝;WoߋsZU~:~֖ǎ{zzZ7}FFo>;;[ ]G*]*>7|StR=o[o){YS,?KWnhwk*l nnncƌk4=`篵kʟ>ߝ۷G>9dsNr_y_wd3>\W-OzzlX37}ΝxvZ̘1?<˗/,_mmmX`Μ9cu|}7,;SbիWRD`` ||| ˆV'00{_WUU*̙ {)B޲㳕T@բzV/} {Y9TGb~9پTk)]@k׮aڵP(;w.z=A~+\vcIq񭯯GPPk虒͛7T+{0 FV.]ASQm?RϚ5 {_߸qêm@sssǎ _tʟ?F a&5n)N;v,y$''}oݺ'NĶmp |VOʕ+___%_mm-,X 9֎ ...VWd֬Yrjcؿ嚚鉖,F(]Kjbzii)pmۗS?XR ~HJ?~<)-ח8q"t˟0}akdc)~rZl_.uo sWWpBܼy `…{4'Enڵk xaՅ ޽)))HII/ {ܡɩ?_i_}+.URSC>C @MM2:uuu裏;grT*zߥBʉ'R &V_ ͪڊ $''Nii).]1cؔ/]J___CT@R~~~P*Fe vZ̝;={6{=1]NT|RFrr2݋4$''KRϐI&a֬YPT&4?enR^g_nw_Krꯜ Tqq1p9W_5> |8:_1|˿ ϟwww̚5 u477#,,̮ $PjyR˖-ZFhhc돣.^+W"((3g/l+.UR3lOCqZ-^s=hZ:teee8y$֭['}Gߑ .`ӦMhnnFnn.Ξ=+;| "" vdeeATbpqqxKw!\q<31$$$@@P {9s]]]HII7j5̙#磻)))'O oEcظq#heM )R[ngf  IDATXn?Z_?~+V:9r ,?enR^g_nw_KR_n)))ꫯ ֭[gt&W_oɓ'ݻm?{TJ]vm믿;##GGo8FROn4ٳojaTTJ^?@} nD‡9ThǪU4<u-> OOOAP@P((?O}NCkk:;uXYMnIP37GoqvHv5l|8_wE{{;K>}!Hϟ/%?KL_#ȇӨ&M?Fő """""!v["""""YWLd;Mٺ]Gҗ fC%σmٲeضmۀud{;r۶mRw h8RÉh2<ȊAo[|ZQgڟ#cҥF󶉈,1\1G6FG8aaaGYYCqgeeewޠ<F ^ NDD\hh(Ο?0F . 44a0a8pun?suuETT^|EL0ೳo>,_^^^h48q`Ϟ=OQZZ pssCzz:RRR$+K7eggcHLLēO>bh4TWWLF#/wN!!!ŴiӐSNA~m3`Æ ;v,v-k} DDDZsΉqKՏyOO:Ô)Sp-h4XUNH/ޞz)lذ{뿜dǣ(,,Ç톇W^ɓqum[sۇx477#''ΝCWW50Um?/~~K9?>rrrӧ#==EEEڏK[ ш|(,,Dggsew̖O*>-&"2'=~ 11r1118|0jkk$~aɒ%eHHZJ'RT*fi`t455!11 999࣏>o~y[o^?&&* YYY8v<==j*_fMԗ_%%%8z(+VdC#)) ۷oǽ{Ϩ(رXz5A0h"޽P*HMM֭[+((/}1m4|ޗj?rOQQ eڵ ---xQTTdUXRT111āIIIP(Sw?K'T?ȹ5aaaDUU***hL.g˨| Y̛7^^^z={8m_ \v ?#2223XnRFFFO>Ayy9jjjg!$$DLvڅ`Ν駟dK/!33NBSS޽;wږY+wwwO<7eeeزe/ENCCC;E^N̄VEUU4M۷o͛7ЀǏ# n7>{O'`i=ϕ+WpU@ii)-FKV!!!@ee%*++h-/K'T?YzQudCP@ٳG|]UUerΪ~I$//صkUY~_QQQ!oooY"͙3 .4zVZzTVVZԩSqeX{ܹ/֮]3f~}㗓˗ ,3gNƍ _@T"00>>>Z3[_ppmX˖g/oDcǎ5_~* VUU!((h9?c (K'T@\iKxq,zI *>Kollĉ5kUc"++ o6Ltt4ƏBbfȩ@KB!==@?dO6鉖?lݺ'NĶmpƍ~Ygk׮ik֬Ayy9j51}t߿n9~}l?{.f̘F۫#kR\!EZh9?c \(T3+CfեKR (JQYY N|Wv* &M¬YR}1_bڵ;w.1{l{b7w^!99Y2"g'N@R!&&&LRSSt111pss*?򂻻;<<< cii).]1c/T@ӡ}y~JOJq>K4oooܿ Brr]swESE?{\t/܀ڏ9rgIosRb ._mz'UO"rG#8s oooj̙3!)) ~];~8VX?uuu8r,X`}~\x16n܈j;[{AA֭[?OGMM """ @nʂR"Z,Z-^4z=hZ:tr:vhP(K/pI[{5J>ϟ?M6QCrJkǑ#Gwlڴ ͵Swx"֬Y9s=kCz|\ݍ=Xron`0gL>r|:, T1QفZFkkgax|Ȟ-_!ù})T31'""""aFawa?E0?G[v;Tgge˰m۶A/Nbۑ3P{۶m#ziTC>scٲe#@قchp1`X ෿->s˰.cǏ[lG4?}XteGGndن0 _?4z >lo̙aѬ CXXCq4ADD4dʔ)xà…  uvve@|vԩL[nAѠ@A@HHbcc1m4ԩSt7oތD<(..FAuuu g([kUhooǟg 0vX޽[jZ|&'L~OH_}J*~SOaÆ ػw~كO?777#%%MMM%K >>---Eaa!>|(n7<< &Oׯ#--M\}!>>s%| LmGH?qy̟?999ӑ"!::/"** /"&LL'/~ ̓|K?k@Wj}CX|9hp 1RTTϾ-K5~9cKcky ~8p~X|||yf[NvwAtt< 7Cdc())ѣG___XB 5t455!11 9992qqq8|0jkkRT*o<zG7 孷ޒ~LL T*p1xzzbժU&U/>Mn۷޽{yyyXde#$$ZFTTv؁n^ }q[hvލF(Jb֭vOSZWNe2Ϣ"`˖-صkZZZ믣111āIIIP(){9|w=iKڷ7+u}Z-qDDd)ecXFR'sg훫@#O>>>&ӦMCqqEpqqTfΆyT*9eeeؼy={6>rرc7Z&%%/_Ə?V>IU޽{GLL bbbK^HMMɓ'Ѐqqq kA?H)@@6l؀>|̘1NNNp7Z&55zUUUtݮ]ݱc]w"##VOYtI?/]PZZ2<xMIIAee%*++K/ "55UUUN|cǎŋ~hfn1׿ڿI՟\RǖXmӦMx뭷>>f󰔜I?1bè}%]vw&|R?o7=z70Jl1׿ڿOb'+V~['em|2T*1}tttt@P?)._lQ&MBMMr &F\z]]<>̛7 pttDSSHOOǍ7L+agg׫َ Q)OoW{{;n޼YfڵkP(5k{vI$߇2Xt`'''888`ѽᕖbɒ%>|iӦa֭_QQZ {{{%qa1uvvFdd$كDDFF qhZj3* BzII Z-ƍoooh4ĶoC,~@[[{nlذA٠mmm Ŧj.\O{!wAss3i_z~񤏟sss4% .\V+ݡhַV.\ %RWnv}k:~OR}RV?mQ,b̙3(((~^?k,|7<>g#99Y)8x.44AAT fƍqnO$"==֭o 7::yyyG}$i\ ((aaa4 222rJݻuuu8rim_l!X;+++É'={ ""_}UΞ=M6^xj*ku9btͫ߹si&466";;ۢkΥ_xbbb<󷨧OF{{;bbbd *_QQ֮] ___~kCIoo? r?_oZ?%OS,P(-?~< -Zo3Qp~zX`BCCԄl@G~Z򈈈>lY}{b1W~CHHϟÇXfM˙?3gP__FXlٲEHΝ;#Y yyy'VRb!+߹s$|؝5kV=Z_ 0|[?r|Ks[㞉?-u_t?<{7o:͛7w̘1Cϯw;vlǧ~*sΎkvv7CPXvxzz Ob:>ug?\u7n\g}fr^x$O~-=wOn?bsLex_m`(0W?R믿1o[5\سguuu˙?JFOOOT*(njv>>>Fr,%>9sqBVܸqvLտT֗{֏\b/V?<==%ǯfɆg3:-Kd-bKcԩt zhsS]]<͛H*%hhh#/--Ezzz0k[z_w >#F ^֊vvv=r^bc*[?kKLr ݅x\]]-aڵ(//Grr2nݺ۷h񹺺}4b㳔)G|Ky Ν;׫<ĘZ_K50?>#տ#Tsez|ѷǏVZƘ1cRWA?|#ֿJJJj777h4K0zhXii),YÇ_PP(L>6mnjq="߅ j wwwh4^+++ڵk1a >&L@DDoZ#@֏!}zKSTTUV SL+bq477 ݖjpwwW)**h戍RLb vgΜira+r?Ę_.\ 9[oA=*77555 BXX4 "k_xbbb'N,[rrpS۷qAOKKCXXt:Jp6qFܼyhooGLL ___!߿aaaؾ};Q__ȑ#Z񥧧C`ݺu|Ӟz o-%iSR~䶏>r#=z4-ybժUxp-9r/2ΝæM؈lK_~g)O1]&<]+w)տRTٳgi& O@O\!"zB-^xqڵ0www^j~y n޸S{{{(J(J( (JP܂0'8L_'"~chP6nJ%ܬC""OԏzC/{gV|8uTDD$ 'DDDӧqiKȖx'DDDDDdl 0rH-P-+Ls߆jآ\C"￈ٓЦK.Ŷm; HmXm0N6'}g EFFr뇆KJC+ g}ߡXDj f},YbxV88c)S?3_uz}=֭[(++P2ܾ} O"C&L{; "B Zl+ gϞ0Ȅs!  u1`&xwg}ty&!!!Xp!?GAA>|()aÆaΜ9/ GGG෿A{ Xp!{9dggɓhkkL8pssÄ put:yuניXO,Yz?L<ׯǞ={ʟ?hllDVVΜ9vo'0sLHoEHHo XBmm-Z-4 jgP*ɑܹs1w\۷OXXbЀp(Jdee֭[=zpuuʕ+@웧>t&O,>トرoߖ\~Ν;#Y yyyV)ZVEzz:իW  /;iFDDчBa͈GSS^ua1g$$$زeU[?b͵W~Ν۷vvv7 ^rbG4ښ`n|#rR=s,/c'6>Ho䘩 {6RRRpeHII/(#%%NK/$9n[b8|0QSScǎ_Hwpp3<J#G 7ohH)_oo$@@6l؀>胊TNC@@3eHMMɓ'ЀqqqBcǎŋ~hv%|R駟w؁k׮ݻȀupo`` RSSQUU O+s\/c'6>X#>_V=!RswYW^{nD___̚5Χh"DEEaҤIp ,Iٲehii_~ sc͙8qeֿ466v{=bJF'T* :::_+VصkQIJZkm__l|yCz_s/M4 555M}ê o}:u*.]pss^EEE;رcq]Qzii)qƍ󯫫CRR;ؼymjoo;?lقcb۶mt9j48-_mm-L^6 Xv-ˑ[nE$bb/wr'R+A_en|5hhh#,Z9bT=&MoƢmKOj-M4I}ԷeT攔@ nnnh4(..~QQQ{ܸqV5J/((@TTOL6 [nҷoߎ899Gq]QQZ {{>-zD)wƆ UB]^rqhZj3* Boθs)-r_pZ-\]]ޭ2UrWՏX֚_ JKKd >ܢ.Յ }.%[R7~꿦'6>Ho֬Y/MBu9xbbb'N[ӧOׯSO= Xr%݋:9r~~~Bcƍy.o߾ ^v#==֭]7"_oYYYN8hٳxǏ۴i|/77555 BXX4r_qAZ nݺ#GxDO1oӧގ8;;#99٨2UrWՏXmㇹ -- aaatP*ߥ***ڵkk[>~ՏMX|bピ|}}1~x>vR9) 4]4}$jʔ)xb_o$z?L=z?۷~mK48dc„ w^_oQeT=uSޝ{s*\P .s=l_~Fdee̙3hooT~{{{`…?x#bykI|0{l,_GFJJ ~ ۲}{Ol۾%S,bK` (((?OoZ[['֯_#F !!A͍o{=><}6g$$$زe^XX8b͚5F閴)OlbW,~)z?rssb߿w/ 7ߔ͔0>Q GΞ=Fyy9jjjp1-˗/DJJ ^|E;vڵk{.222a~%|R駟}[rpp3<J#G 7o6՟5/VR;v /^DMM >C3@ tFcƌprrA~~丗/_T}:0m4lݺUrθsHⒻ}oߎ899GFMMTTT@VޢMĶhZ6*++ֆ0?ޢ?V Z1c@R!66g`R?bZ-݅$[RRV 777AѠj1'};aժU”)S+ۺ}Ŷ/F] .ir#22{Abb""##KF/6gܸqV1̙ !,, :JRXqFܼyӢ'NHb[FFV\{G_8s|"S9) 4[GHe/$$AAAF7/>%&www^Ooo\GީSptt=J% %J]^6476 44[?0ƺF ĉ ѠqF=zh>P5`."쒓Q\\,D/_~%{=/S UVj=N6&8 """""dl """"" N6&8 """""dl """""a,33SxtR3Lg:әt32;2@kKsECDDDDD}בwaooR B R_@) u[[{[[y'DDDDDdlMpADDDDD6'DDDDDdlMpADDDDD6a_ʆ;YlHtRN2,`FDDDDDddŋaggŋo[kDDDDD4X힍]vaxΟ?]vIZ_P .s=l|:ûk!̝;vvv=;;;`8x ϟ-[[޷CDDD4X̆9ݻ/f̘7|SH Ċ+CT"++ Vj48::b8s挤κJl&|>>>;pm,Xz444cΝx֬YB\!}Μ9HHH@}}=4 bcce'EOIZ7$$ǁCYƢmwDDDDdVltRܻwxw|߿/,3{l>|cǎ!22R|r >gŶokR7xFǯk8997Z&55zdƎ;ӟd/~ ɓ@ӧ[\_ ^Zttt(f2z]x=qD\xQr, BRom]Re˖~~~8}QQXXZ >>hW )Rh JBUO5>yt={oȺ2*.F!qF7;v,޽ ϞήDBlR544MMM'V>زe Ǝm۶}Q'FSNťK|vZ#99n݂ gO gr ݅ QADDDDg7;;;#22{Abb""##n@.((@TTOL6 [nҏ?V Z1c@R!66VH/))VŸq VcPn۾TXd nX|b6aذaFa^YY6bjpww+V\ .iθsH'}WTTSVLW^y(]j7Kݳ\TUU>oϟ7͛HMMEMM  99YHʕ+w^ȑ#Kzz:4 ֭[;;;/K0t:(J!YYYN8hK7GDD૯ٳgi&#;;j*ku9_|jIisaӦMhllDvvv{NǣGo`HNN6:{!\/Q9) 4]4$[HHw(-cս:;EDDD$u:GGGCTBPBT@PumkkCss >lÜ`{O3kKs]FE7j(,\K7nJnv!=qdK푡/{gV|8uTDDDDDeTDDDDDO ^FEDDDDD'DDDDDdfa}[F|m m""""jdcҥ]""""!&LIcG>X|97|  V;B{(..ڵkO4t}8t>̙3Ǽ&O?PT{v~3{{{/ނ ?vZưas3gb޽+7>gff %$$`ܹ1""""`3'OFJJ w7o&RjHOOGZZzn?pトرo PZZ ^GCCLpp0v܉Ga͚5P(̙C 66[lJ|R_^^EyYl$%%7 ^u'}iHMMɓ'ЀqqqF`Æ }nj37Z&55zUUUt 4J߱c]w"##VOXXŋQZZ ,Y˖-ĉq1|7ڌ 'Nŋͮl2O6J> V-sUuuu5<==U*4 <==RP(a̓Ȗ4TTTqDEEYGCC___c {{{l[lWn'Ns<0J:u/__v-jjje,_֭3ȍO=gh """"`K/ !?sō7,ʧK,Í/))VŸq Vk~qhZj3* F˴wƆ 0bJ!,, ϟV;\]]rJ\pAHsvvƝ;w ///DFFZ5>_QQQOULDDDD'68z(͛DB#GXOZZ~@=m)##ػw/a^nn.݋)S`xwL^TVV'N ::[ZNNW_uK;{,6mڄ塠@H;x fϞC!::VOp9lڴ o""""1rS&hmi8Ak!!! ‡~ߡXd09oo\GީSptt=J% %J|k@[[{[[m ըQp/""""""d1XaONNFsss߾ """""YѷCe;^<""""x'DDDDDdlMpADDDDD6'DDDDDdlMpADDDDD6'DDDDDdlMpADDDDD6'DDDDDdlMpADDDDD6'DDDDDdlMpa%Ÿ;;S۷ulQVWWW$$$ z+ߓڿjk=>kaP-@g;;bҥ8(7C; XGhh(222p&^>zXF]׿dCdMCO2/^0lfZ}U:RRRcժU9rd+>t~?Twm32 m&L{; 3xWU#F?%K`Ŋ92W S R 7eToZ[['֯_#F !!P( Cvv6N<6!OOOa̙xqg]';cYYY8s %ׯAOLdz>bt:!>1'NDhh(0a\~:%%%/F/ֿdffٳx )) GHH.\QPP `,^cƌAjjE_ם&a?˖-t:?.yb\b/GQQP]]رC9Xמg]~:)ga(?k)&ݻ/f̘7|SH Ċ+CT"++ Vj48::b==b۷5ADDv؁۷o `zh0 Ν;#Y B9szh4b˖-VO˓k&WXCZ_nJJJpQ+WFrٔ/ֿ(,,D^^6oތx455_Gaa!j5fϞ"""T*;w.BBBo>!<<#V>:/gÈɓ @Z4X|bW/_Lttt6b|59r$&Me˖A T /6K=2;~XcI`ɆXt)ݻx;>={6> c)4ˑ*tY-vۚ7@lll\~~>~_ F~~2dƎ;ӟd/~ Ƀ)))(//^ٳGxgRpM믿ZlRtZ[[>~i?\Yh0X"55UUUBEC,>cǎҥK?ТmH韦XMMd_bŊ1b pixW''';?0kߵkװi&0kgRPrH 3}zφ^Gmm-:::F7ŬY|lĉݸP($/+e5>)[lZZZӧOݿ_:''>>>7Zիjxzz T*h4xzzBRAP}s#7zjuj ޽ gggaѢE¤I?VLJ^1a>UUUĮ];% i*يx{=F-Z6|?'?˱n:$$$ \ /u|7W?M]~ Hk?sk?C= ѷ!!!5jǧ Rƍ=[[[ ???tcر{.ۻagg׭Ŷ/UCCdQ|b-[`رضmw8qhiiAqq1uTa˗/ ik׮Eyy9q-`߾}VOJtkksF]]<@͛H''%~S[.^o>nnnFwKZWo3OSKO.9K?Xxncvjz|*>CKߥm?k?C= G={ 11prr ӧӦM֭[ǏCBVc̘1PTF;}II Z-ƍoooh㨨ZbۗK,ÍO|ֆ:޽6l50D[[pniZ ף^pAHsvvƝ;w ///DFFZ5>)5>k@*'''888`Ѩ8SZT~nnnpssFAqq~hZh}kY_rj}ڕj`ooXrp`_g()㻔 7GnICY@ >g#::yyyfoϟ7͛FOEMM &< ##+W޽{QWW#Gϯ[,h4XnSbۗ*-- aaatP*Bb񉕯28qݮADDn{TSg?oBV M[#E 6(鱈39ic5 LgI8^*T%*"KIC.<%k}j{NNNV^ 6yyyX``ϗ_~ttvvl5Ѧ=MR ƍPT1{C3ߖFAjj*Gy RSS ByqӅھ{O䧥K~+HUV᭷޲{_uׇ˗/eig~X~B?Μcv܄=zEDD ,,_m͒(bmYh"""sN[bg_g翣篣o﾿zWC"@,C$C,A,PC@wwp kѻXe?!8|Ƕ"ܿ:CX!ĉu) 2!^{!X̙Wghk!2t!B!c]FE!BqX4 B!X 6t3--.g# vZ흽翵{|BAffμ8v?B- ǚQg܌=nX"!!Ũ68bM[ʙIa`3zdST7ի1n8[vOl>>(Olx8z{$Y9JB`g6LX>/3T*P!!oP8SU"`#)) xבW^yAAAXnnjq~Ar{ ŋBaشi ػw/9zD"Ann.RSSV˗/GBBPVV*\/ƚ5k0uT\t ܲǷ%%%8pىR|dd ̘1 qO^~ T$!$$QQQx衇PVV> \۶mڵkzci,|fΜYf̙3iߏ(Jdddp_6% ybbb၂8qDEE>STUUΝ;ܲCsW?C9z~՘?>JKK燙3g"775552 6RD[[͛/_ R)r9PXXwww<#>̂ ܸq{˗/l@R}Xc׮]h4x!PQQM_t)233L4رCXԩSfqRRRPWWG>>>Xz… \j]b`z?X 33aT,ol秷|ss3LnT8zXگskWWWlg?B&oZ-/;;HKK͛PpwwGWW4inݺ ԛ~u>>oi֭CCC 1sLΜMGܹO>$<<<SNŲe|_:rL<zO8\T'kćڰo>lٲ;*Ԅ$&&⫯\.ǜ9sϞ=M͛7ݍ$'' Oܹ&Lk׮] sśoivJH$f/G*Np|?e#H# >>},t2 ˳ed_qKۏ2;sB6l=z+WĦMoꐗgV9HLLDAAb1w4ؿ?ڐ`n \v aaaHLLvbȅ pIlܸquHJJ7|3bj{NNNV^ 6yyyX``m?|HOOGgg'F\soM )ƍPT= EXFFFb֭hmmE~~qA&!%%...,.j*[ck>\|(,,`>?h4HMMp,9KY{?YǑ۟'DGD&<`tn 'XKDDns\`ѢEΝ;mE5g?~?!q} NpwwD"X,H$X,X +700ܹ38h}=qG5~xDEEC: 8s;CX!kqG=BP(P[[k1^usw&B!b˨!B!."B!8,lB!BB!!B!*hA!B lB!BB!!B!*hA!B lB!BB!!B!*hA!B lB!BB!!B!*hA!B lB!BB!@JJJ?kom]>+{cY; 33ӡ|g}Gs{kmP( s7>[,VZvz[ӵXCwWBBQ]]mPo忳燳o߽la `II]CΣ>}: GRRn*@T7󱷷tN8>Fvol>:~=־O:=ᨕ@qӧO۷m8Zp0|駨;w?c $$$ӧOǕ+WPPP:X%%%QZZ ???̜9Cxx8}YL87<`?]8qT,cj򟏵?s̜9f™3g+_~@T"##(qg(GoCX3P >ZFmq!۷-<o~M_p!␛ ZkB, J!QTTB72t2T|6 BRR222p r,_ Jñk.h4D/]L&CZZv!H|, w)eYÇqurd2dgg3ϷRK,CIII(//gZJJ pQ܇K5558uoߎ={ /jjjx[l"""pA`ڵǷ֟T*())y寱>K u7Tll,JJJjGm7gFLL T*ǙfGoCXWSB?Μ@^jn߾={=୷Boo/7ϒ%Kp1$''s|.yj5v-X|6 /bO /jzs[AAb{bx|< sgBT{ż,@TŊzaڴiBkk+.\ϛU)Bsۋ)S0ŷpB磹$h|߱cp9om:XXcGV\8 駟f~/܃>~wHOOquLՏ/,gCǙO3aTPT~:Z-ר:SO=S`3f_H$beBĠԛa.//GPP٣7˗---LxyyA$4 ~nG[nӓyYӋ߽{7VXcsd)!򻳳skWWWw^Bg k%oiZW_}͛7c„ (**қoŊ[^#66)))tT8s:[qsۈ?S^UUUܴzի~:Ip-@``2!JV]]]fǷ}cL4 ZZZ?M?y$ӃZMǸQ[nںuBv̜9,>/B WTz"[[[rss퀟~i$''s0,O6/)>Kr%l^+J(H$DFF"--cN?T*9w}c|?o'D FG<==,dgg#99*_?80w\'N@.C*bĉ۩ 1ydB.RD}Gtt4~>@[[ۇ-[pGt000D|W#b3gwٳgiy&dAci yXde.Ν 0a\vPm _|gϞ\.̙LfW  T:#0=:<kkg`_qKۏ1;s Ŗ?,8jllܸNƍAdd$n݊V'TTTڵk Cbb"4bchkkC^^GRTTLpϪ(((X,狏opN<7IIIoF,W]]ttttpOիa#// ,,>/NEXo+**h QNs7Q(M7n܀JBNN?*++188TxzzBP`޼yt['KXVG$aժUx뭷,*Ǟ_]hnnFaa!YǙfGn>33ЎzG/b}s9BkE!"";wu(q}z;z:z9z+8׿b"bb?/z{pcN\teTƏ( !?uqǚ~1mTo'֥P(P[[#b^{5[`1g}2*B!B B!hA!B lkg[ZMlg; Lm}[>B!a77[F_F_ (..Fuu?H7!26YFIIލ$ =T*o`7nCcb|g裏r?@D!G3SLAll,BBBŋ?*J;Yf!::qqq8~##O۷o: B!8l$%%A$_+źu)#99G,]`Y///{__K$|G[|9>ݻRݧ?V[x1ߏǏc۶mzZpeffbٲepqq1XbO?ZZZT*Ž'H|rdff"33p1Y;vcѢE>R'qA<쳐H$g_7{gG"&&Ƭue Kɰt !b; R6͛7_/j&IRrxGRPP7npc娯@RAVs󄇇c׮]h4x!PQQM_t)233L4رCXԩSfa k,ƍٳg#&&Fﬗ#ןT*Œ%Kp!wb<5558uoߎ={ /jjjpB!77jk׮X,FiiKR>|ׯ_GRRN8{. ݗa=Bl?!B`\W˗|\zUy"??rV{nyBCC/#--MoO /jzs_ 7^,>{glgL} RDSS+ΝC__2e `ɒ%8vǎùsoY[O!#`믿F}}=̘1ǎŋZ g 3fq5&&===Fee޴^@*AAAسg<ߟd2HV+X|x|AAA&nGY3~HIIAffCԟ#:[zvvvx 7oz)Mn .5 B?>VrG&퍴4l޼ Z wwwtuuсI&֭[@ׯ_Gpp#;vI;?'O"-- ===E{;*on:444@P3go ŧk V[?~T*9r.ǯ?JYFGQQEgY:Yۿ~B!n߹s'|IީSbٲefyGttͩPWW\ɓ'#00r\o' !J1qDxyy!--Moa߾}زe wTY HLLW_}5"6\9s8{,77oDww7,h||o(3g{?+DGy=^}}} LZ嫪~z\FE!Bot!B!a`B!b4 B!X 6!B!VA B!BU`B!b4 B!X 6!B!VA B!BU`B!b4 B!X 6!B!Vq B!V?~gܹ3D"-D!$DH++.bhZriA!BۇnA D00"v$p R4 B!d h4) C"@@@BB@ѠϝGWW7C,p=B!At߾Ѕ 1~xD"\]'{h4!B!cV8]%<8\< 6!BD"`B!VlFII gmge/q6k5X#Vdff:T=oLha{ aκ]D0oAOȪUNokvk(JHH@qq1mUmwp#wQ[+vfü2lD{XRRbWB裏b߾}j}_[  |Ecc#.]'Nφ7_SοѪoc al#؟ӧ۶j}t{9|'CPGWWW̚5 шml>Ǚrn˨~ߢ6m+233 <$$QQQx衇PVV> \ ŋB?YZ7eoƦMV޽{q$ r IDATss Z X|9Յ2TUU]x1֬YSҥK斵4>9pىR|d|6>}۶mXv-|A֢H$@TTO?EUUܹô3f !!>}:\1.))Auu5ϟRa̙EMM o|wbĉ<ᯇKr0&&((('ϗgSǗ|c̙5kΜ9#XJܗMG ?_W?C9z~>?9b(jhZ{ը 6:}aѢE'xo .D\\rssVvZbR)r9PXXwww<w6CT*oƺ}AAAHJJBFFnܸ_^^˗sv!!!PTzUxx8vF_|"K"33dHKKÎ;N:Ŵ,5qqq8|0_\Ll_*bɒ%8t )) bLOIIA]]=> >>0c)!򻦦N۱gtuuᥗ^BMM o|˖-CDD<]VoJ\%%%165V>_||g5EII?>Fh:ƍٳJŽ(qYG3h֣o@;nF0ӟӟ3gߟ7~O?mrͩ{eBCC~ck;MҥK'ϟ?_&O=~`m~ Z'M=rs|ۿ}vovҮ[N;o<ɓ"Ȭ%%%ډ'j% 0ŷm۶Ӈj砹_S[ھN\Rj?#K/NΜ|q7vy2~>?9FC_F?~/o妭[ P(hoo̙3qAci r.K.~J)r!77駟Frr2R>`Μ|3X~B?ΜABvv6M sśoM?qr9R)&N///r'OF`` r8!J!H[?zDGG{/>a߾}زe wT@ HLLW_}5"6\9spכ={鉛7oHNN4>7Z5|}} LZw܉Pxxx &Lk.X wYr`Μ9dv,ш]~J;:\ cs#H# >>_qMXS3POGw67ǬZ 7nDEEwĩSqFnd;B[U5v=Aؿ?ڐA&!%%...ܩA*,,Dbb" ۾.\'ObƍқV^^$|7#Fzz::::Q`ذaۑ K|HOOGgg'pi5i h4{:P(M7n܀JBNN?*++188TxzzBP`޼yt['KXVG$aժUx뭷,*Ǟ_]hnnFaa!YǙfGn>3ߨb>a޹  ۬mEDD ,, oC1<(-h"DDD`Ν"XG_Go?G־z'tXjh4h5hh5ZhZhxOIq\)S ĜF˨?QQQ&OBl0,35Qgt>BZ!{k:9s cMT?YXqB!1heT7֭QM >#B!}K!BSAIG`.<ۘXn,ճZW|pcnk'ckb N =κlU-S !bTWW:BֺJC 8ůk߿}h룏>}n 5ƪU0aL<O=233+֭[BB5سg.^>MMMxG}}Iuww#<{/A/CoˮYP!44To1ZO۷oz !llwQǏ۷ʂD"ADD~)prKJJm6]> jkkQPPV-]xbYSNťK͝1cӧʕ+(((@]]݈ri&deeq[~ٻw/9zrsstҥKrJCT׿D" ** =ga``ڏMYTӾX~wbĉg^O-))N? cm,5K%'xh~mO?xxx'N`%Ο?l .… #q-ddd0׏%XsuuܹsYYYpuuE`1?Y^~~薻ta?°xbCPf+_q VAܪl={oJXd :HJJX,Fyy9syqqq8|0_\Lu|btRdff2 iiiرc %%uuu8z(;cPP7n~tc`#$$*ܲe˰l2pARRѹs"77i^777̞=qqq8{,2bohnnF[[ZZZ0|A$?pk1RrEEE(,,;y%g)^D.Өn޼iӦVT MMM(((O>iVyJ~-~'(J,X&D|222w֭[(..7 ӦMƍ .`zˇb˖-x뭷h0]?OO<w?O>ͼk%K?DCC]cǎ!$$R`S'D|… f466]PThnnFAABCCZ~l͚0_|'M_c_ڵkxc6mLCT⣏>O8p:,_hh(78{'kK޾,L?||gPݻw ~m?|؎lLK~,aX3khh0Y|pR?V.Mc,[_|`^Xp TZ}?<<<x c,_z5>c_`Z~G"u!6q/rssìYzjZ ?\./|}}!P[[+zYollT*D"1|OOOܼy@rr;w"44pssÄ p5yֆ}a˖-puul,000D|Wf-{̙;'O@rUUUX~=qaܹx7,{Yci={r>>>3gΈ"~Kr9̙];)8|X맾Ѹi:ce⋟k[|S?? ͛1|!00eXpK|P(XjP(J7_|/{oK;qr9R)&N/// ~G"Og6JJJݍϟo[䊊 h4{ݜG_TTL0옓իWcÆ hooG^^5 )ƍPT1Xօ pIlܸYYYUyy97ߘ\ee%Z-6mڄxJ#>>G[[M֭[ڪD%3~|O;4i_C,mJ "55P(z/d~/Dzz::;;QVVf=ASXXD@,o:ce⋟k[|S?V_x1uT}*'|8w3·:ٿoزe Fc(8cB4 \v aaaHLLŊoo?kݳ!73tU o 9$C@,AC!+8CƯwZZZ?h0wx:e 8h}=}/ǏGTTٗPB!& 33zߙ'g.{Cg}7zφK c_mi|>샽篵P (..FuuFIIف 3snc}: =T*o`7nC'jG}9{6~=%ZY vfcʔ)EHHøx"?CR B!VsO>utuuŬY8?~ƑV3}tܾ}{k.CL?V9J9 S7k5l+ [[n|C0;=aB0شi ػw/9zD"Ann.RSSV˗/GBBPVV*\/ƚ5k0uT\t ܲǷ%%%8pىR|dd ̘1 qnļƶOЩP!u눉 p 6tة^˖JJJm6]> jkkQPPD"ADD~)p>,]+W;J%~_կC$!$$QQQx衇PVV> ~3g̙31k,9sF2GKK J%222/jMo,9@?Y7S,?g(GoCXگGii)0sL梦8{%g,4: R6͛7_/j&IRrxGtAAAHJJBFFnܸ_^^˗sV!!!PTzMxx8vF_|"K"33dHKKÎ;N:eV*%%uuu8z(ƶJKR)>ׯ#)) 3eyL=N.C&!;; : Xr-[e˖Xp!␛ ZkB, Ѿ|oX/!Ƣ[gܸq={6bbbκ;Jm}X7ֿ姥~t a_jjjp)l߾{AWW^z%ֿP;j5Lg6l5ů~+\|իW*Wll,Vؽ{}Zo|s*((@tt`###{]\\{OX gM///… 8<>cǎܹs~K|(J444pi!!!P*hjjpVX< |PPslK,~Fw9990a_Kl4+W"..Bee%~'YF/<<<_|l过oSòRBퟦi;wŔ)S׿uKXZ.Q__???DGG#&&3fcpEV~3xoAOOQYY7555J(//GPP٣7n ---LxyyYpn9_.>}Xb֯_ٳg￯l!|g*> LsǗ_Bp5ܺu گ`߾}z˛2|7oz)g_Kl4>oooHl޼&L@QQ|+V@EE/E=~HIIAffߦڇeycK~ZPq7'_gg׮럅3X|φl}`fggiiiؼy3sj{&M­[zӯ_ IDAT`Gw؁I&wAKK ~'ODZZzzzP[[~=7*~M[nP(ގ3gr|o|:ֆ\w;~z4_>S?>7fpp...fwT|嗎%;J~#aŷףV}YTǵJJr<HKKc*{uRpEKo,XSC5MꟅ3ߘb`ݹs'|IxxxNe˖x߯~]]r9&O@r'N\.T*ĉ5@[[ۇ-[pz& 11_}Ոr9̙]/zYn'n޼n 99YP|BgΝ 0a\vMocԿ!J!HZ/>1ؚ.}}} LZϜ93byC?~z1ZEE4 RSS= mDjشix(J̛7η莀FFFb֭hmmE~~>75-i_Kߜ^D"Z oEsk>\|(,,`7KX?ZtdGn>_pKuhMxt+))/""B6c,9mp-wy9k>c}_pusWhsz7C۫irrsQؠmlmtQ{yh6^GXeAqqqX~=;X,EJO=qq,\EEEV1|poرV5Uzz0%%%_~۷/f3V\;wնm[ q%tRdff:gɒ%2es 6 ?8JJJ~zر6Y[mzz:?Gqq1ܹv>==v½ދo:uB||<,Y{ݾt̜9ƍCLL 222_k*  Q`4j*KSu Qu 5ޒePYYD4ۥk|JԌW^-a9r,DEE)>Xj;ׯcժU5~_ݻ7V^'N ''k֬qYV* """ZRQφlZR\}lx衇0qDyç~u,S}r0f$%%!!! ySN8ssӧOsΊ .cccx3rHGضmKYEE ɄM6k׮\橾}999HJJr>_M5S|]vYGMn(;~N<|\PP+~ҥ >C嫫燈Z&J?{wF:jcaR)K8-Œ%K8pCń  L|W8ĉXr%?m"$Ѿ}{>|СCdgg"""^=z64{lDDDwANN~'7bԩ(++CFFfKyKLLıcǜeo]+%O݆5?;:D!""IE an x @Co4Bt]sܹsѫW/`0h4;v`ĉ/~{7n;wƄ <Η#Fem?pRRRСCtcƌAFFHt))).֭CJJ L&BCCScX `ڴi_:u cǎŞ={bKIIAǎ߿Yo5>)}yŵ _[}Osh׮}QrƼ%5MA:ZEE#>>111El\sG|\ܑVj]o=+Wtz5dgg>sW"ӧҥKXzr>3<o||ԯYcǎEZZDQt_͛!ILKֿvZwƌ3P\\׻sRJo߾$瞃hʕ+]z!""KhZt(@E* d1 e _~x;x4nsRwO>d@DDDD]r7l@HHZ-DQTlj;+JySDcPQ7}t$$$8O&;$"""jT*dQB?6+W"##7xoe˖1JYp$IZAaTDDDDD-Pii)֧CQ+FeP\\$a䨑j~"""""j4j5sT@@:t )"""""j a9 1 mڠC(,,&7U@C\W#j15=Q`***B#&6VMAF(~cy?lT ψ(/AHOOw9Zzو¨QгgOŋqQ_Bvvv}z?~<AoxWg}V+V੧ٳ׿}qӷo_,Z_~%fΜ0wT,_/2k<ZRR&Lŋ㣏>=նm[.͟?wV]qذad2Av}ퟺoӝ񥦦bȐ!nBDDDDzK6ڶm7"77p |>}:݋T7Y>p@bʔ)r NѣxbKĘ1cg0Lxq+xw׵kWwûヒK.9_ߴi |޳gOdggڠA{ᣏ>СC1x`}ퟺƧDU|11hР'"""A$t:Soƒ%K/bҤIG>#G233(gypY`ڵԩV±cpuZ (0Fիwߡ/^2O^0m4書vKѽ{wgoĠA}vyV^l>}iiiݻKS_^ҥK1XbE꩷s6yΜ9|$s5ڵ:Yzlٲaaaذabbb`2jUW^Jeg…O1qzg˗1{l5 ?[u***BHH녅p>ҥKիWѣGuϞ=o~iiƭ|ƍxѯ_?dddl6o811ǎs>_䏈=`ujK,_]tҥKhM%s<!CRxx8nܸRt&LzkĈ#h\^?pRRR.] %%ť|ݺuHIIdBhh()X,ł 0m4gMSNb`رسg[l)))ر#ca2~O۷.&"""&a̙(**| qq裏\F(UoƲe0tP,\0g?^0`,^'Oޚ֬Y iii.W[Zv- -Z'bڵ.m޼-Bv`^3,lܸ'Ov+۴i :Vk.̘1SL֭[cgSm?޽3f/۷sBDDDDM_h[o2H7z_uu d1 eW#7fׯ~% |ωsgt}Aj!mlΗ vdwY$_xa N1|pCZ%%`ZYJt@? lYr%JKKsZ=PRK """""mU-p5 &DDDDD lQ`ADDDDDC^^DzN&DDDDDŋ9s 77˗/a̙Y7 """""S^b{o@II RS@eLۀdADDDDDiY@~~RSSQRZTa֬7pQ >z{A`0L}m~g(/1jhcOc %سADDDDxDd$.^8z=DDDDD73P1u5&DDDDD f8r8VADDDDDPqqQ=DDDDD l**n7b$DDT]DD<4tI6BCÝ 7b$DDT]DD<4tI6s 梨dcDD-ZFXX/p"G5j4dCb"^ͅ( 4vHDD-^6wAll TQ@N6dYnn UjT*d"&&dU=BLL,&~ dfYqw!"22AeFA.\8 Q]Al5U "!(nb~ w܉~pDbh{'^! xViďEgqkkpWݸ;nin䂈9MEmx'eeh߾33`!V"!_Ul3C$,[ѶlBCBFa8p5ڌ`A Ȑg#G}PWLDTW "jjeIFEE%dYrȒ) G;\ %F V 96' IPZRh-fg`vv*f !jDpe/ɇ.O"b["::GB1&UCmf9) k.$^m}ѽ Iycqm4*@DDqQ _YYJGR@XPP$ZPe(WʨEXVlنDqa6[`Z,f*ȌAea((J+:H;Vf$*.:d2оU;jDAHW>+Z!)3y< F<@""rd܆wtHv $A @qX"*$Y4FP5dwރZ]ʑa١ AȲ  qGDH$\ B ʀKKO'U'"ghb[,a H .9V U(uhy##@7Z}aϞݷl[[]^رADt{,$;$I]0d ]g2b0 (k!~:p^>j$Ɏq_$܃lSaqY1ހBg3 ]:pî/]eY9}H2Ρ=p * }-{olVXJww xPKTUvaTDDGf <<?7eg,[lX,ahZTj 2 H+ Im HVd!>c{AQ)aTW*ϡLseWi eihA臡re9~ EQaXCnOUqz}> "Ȳ {eT*e6oe@5 `B`4h0h4"hDp0U@C(t _saE[$<x4E\\e^\sWS8guȰʼn1קO_+**??2d(&?<^_~I=_ 5>|ĉ6W7ټy3FwEqQǸjR=^ogo~ rrN;ˎf+ӦaSq& qm۷cǎpjJSDD9'{/_ V XcULwQb.ǿmKd B"_'5;v  '`߾β̚qZEGcС7o~vލ'BHKAhh(F?:&Mx߿c/`4&eٸ=z4y͆ߌ lys!'<nUI7$ff.I JjlTl>%Γm6XoKv#`zaWݰ<'DIxq4e Х/IRDNl 1h }g.b)Vm8Q'Ky1tn,!C( PDU*<@~jp<87CdFEE(--c_t!!yo5XΆ3tm6_{_Zç@<YmFcAsjSc.>6lAYYXZ,2d~cs6j5^z%lۺ G ݫ7~,;}8E(//5kq_zgϞ_|6w"Y,]pE\r#C2aZqƺm8QSʊSdaY24*Z -dy|H6 / /"G!AdDdǪ/W@7))#<"gJt' µl_8J:dh/Bom"r*G‹/`޼yX0?>7n@E<79̚Fͷt.'DDFEŗ^ܹsl2ЧOH^qFAΝH_0Y[gc9Ĝ?FhX~KHf^yL 11qzV'"IFDUڮ:c{l6\|wqqqZ,~+:aΝ4w˗p9CVf᧟."dBQI1$?4^E 5I{)?ءՊJ-[M;V7*""jijuʲRe=(BCDV97l6+L& ,V f3>5E(QOtl64p Tu)l5_i{RQ d#88zC ݰݺuÝm*BEeΝ=G "2^ "j:OC᝷߁^opjQU6|ugrm{?<(H֭ZC9rUQQQn ] jϟ!5z^q! "" TAo0 HvJ%TiuW;X̵FũӧE[ц%3A.H mP֬1eǎCLL zVkCDDhQVZcǎ#>.ClSˊ4ĕƔ% HwCDDʜɓ'\""jMǔoxSP.oY36/6q%_|cKL5Jm)Vk0]zj,h\6[o^GVLJϠi] 2\r-ړh]򾌗~s-3j.m׺}C/SQle+{jnv|=C|+^oDz{}+󵏽+Uo8}Ʀ}8qsWs\%;f3dY """""zd[IENDB`luckybackup-0.5.0/manual/data/MainWindow_DryRun.png0000666000175000017500000002610711344506513021664 0ustar luckybluckybPNG  IHDR9tF^zTXtRaw profile type exifxڥm#+EY$rvWWUx=/vսR/$^EJK/5.=x'5d)$°/_XOxdcع ۣ6hPcͶdq/jfF '/>93򼿜9]xx:s9J/%-ZE?ƫtI#Et9[%)LSK3`.%'ynyS&93>|gl7Tv^$_'ϙ7\r3?n JAnd(ycXfPS"neb`ip3+!bk MrP1 @S.ilS,qy&MR ͖lZU?^*95kQUSתMefPFRp{͵TVjoeTE5o;{v,wVw&>ȣ 6<:e*YgRp˖[6mwmC|p u'j0!Wbb \b.r3T VhI,`ْv.tD>pKp~P{o>tyq0fwq&ӣ'rN۞Q,o>-ms|eĐ} /u/FZNƁa*֚o+-_;qHG 4VaeNaLImpf % e;٧KZGW)XNչje'gKbLyIkl#*iۍg1'sR?nA,H<5I|wsטN, *#˘>vqV̅XXٖiV^*Mc}dzHqCO_CGXX][}4| `3; M@WVmeUeSO}ϣ${Q8i0%h}*L͟uZP;ԵM1o!1(5Mo眣sYHj,D;:n1+dI4Htz0@jkf._ K} j&\0<^ ֨s蓞fT}6mBOjӷz4fG`G) k:Jc}jD}Ԑ\Hu JN@P4%QuPԀwJ3-y`^20' fZu@ y =qaBa[)7TjKaƣv_8,Do%ōtJS>3R7N *S[2h] ]Z%Ԧp;M[[dyq7'A';7:MDFYX(>FZ;^l"Ԍ J[C"`<_Z[c\fN!=W2B̊@J~"P}ҟR@qAvk.Yf//k#r x@@9Bw:>6cA Bq!ln^rCyi}Eٯ^T%ZSc5f%K@0 35C<%z$>sg=P(O{GSJMj:D>+l3DHާ݉8tGӟz ?>5;6fwI?0b!+12OC"T[9~s7iZyJyv3 qzTXtRaw profile type iptcxڭ]r$ y  7?Uv5㰷;$uUHHd&^Jӊ&>km4mΖ?xeqss6ߧX6n}QF+ױ[>kG+q{r*ߙygO8$ Hk BbKERKQs='%H" Fqzkgh(V@R!X I*"MT V0;4-ZUjסKKo]{ȣ:d1XԘx`6,NmsL['d̳.\pi]u=vʩGN;z>vs^PMGS;PV?`$ܚQ1Zx+՚ontd[ObT够\ѿnӵG-o+n\O6I;c=sSL}[<i<{<-_׳ԭl/Y\g=(gn?!]5LkNaqZ"NB:IM$n^ܘȡ?H=pB`Jv)YE ]/A/=[8ݿ^کMp$K8h (?57F/&'!mO]2j?sy^s[j9uiB[H^<sDP"@W&;׼%<:`'@Ah3k}Wx@`d3L#fAo8*O~$3j$Y=`hFiO0q 쏏7 WvXnbSO1r]hwx$'lNNm'Z+\vᑵ>4lM.B|ܭ c% 5k=z?w $G/$ IKWr @ y]+ e4Zl[Zw3r]1(Y;HT%es% #ڵp-HDod{gdu8َY͎,$]`Z;]BKh ;>f#|K*P?UR"1Yt'6TCDTyfP=72=EP36$r/ȣcr2ecQDs֯(O/T˓V׬梞AWHU2~؈p(7k!4OxD#wVNsIƥD=a#4lsk/@Þ>RZG# 8~i @"֛!e"(RjEwe WWI}8 q>Н+EH@k2,u/29hoGbGy9 Z5w`}=ebX"nHeďQ4H"HBz6;@a (˵Ԋ :^̀DݯBbk Rt v 0};U-`]RI~DzӐFD7Q )w8 Wm<m{BW:HQXλ b3';]BRӘMsC+lȮq9͆J}>`_?1ژ ?k.<x ߈HsBITOzTXtTitlex)MήtJL.-kKzTXtSoftwarexKLNU033PPL*KW(K-*S0331RUJ+M,T0Q0204P(_?IDATx\{y3~ދ=;' FX CJ&" +JDd(pSB)W)((E@d{p{>fwr'$󫭭o~}gQk` 1`PĀAE ܻa)r1BHB &DA8!" _QL!d{06L<U BJʹi1 ,s<nswQD4%2,U4pz{d"`0X]3`  |Er[fK:>i U'*c X-p4]㱗 E@$IBR0g'YED`()h)bXVkkknyݢA]}E|XAb.gp`rʋ!cBLUayAFT&4}.hUU- 1fDl9qwa;$4MUՌv೘%EQ2&Q"!Hఅ-thRم{#Mĩxr~IqCazcM*8yyD(0Fq)At%\^$٧PUee,S?{!(z(h4f9v{NH@z]>A8ZGnv?+ıY&DØ2Dt p"z,Y|c,pGkdŊmV |>!$kl܃+a9gÔ @>X|0B"%1c^ f2|Μ9+W,.. ˇHSYU bNX$zPZq)$9[[[`p``}X;_%#E~0X4O=OGGGzb?mLo+q@4 L7~};K.\U8noo?zʕ+eǎ%K~NzZ a"ebk8G@Fw񦣿4#U6 xTw8!Mvv}{}}}{.u׳ v{/UD~TO]f斖x݆<*r Gm7m߿iӦ,8p>|نP^QQ¿䒫҈oOh"`0 Mbe-ͼ%ÇZ5hݢ \91՚å}E1Crm#G@U՗_g׭˛fY'}*bwwGmMhhgؽg< cpXUEzmpp宾AEQN>t钌{dEmͩ~>h?( u~GIo~aG=<ƪh4Oh0u@c@ģQJ0B:zYLF*FbOSO';D`׋/N0 6mTWWvr>0Y Y^#u9TXBӔpDӉ遠.D@\U5MommH?~|OOwoZ!/^o޶T$ ~ލƢDOPA$D,1;vFSЮ۽&j3lv! iQYpT?G*Yv룻O_@6)kxlDlfXۺ1xou4*R%AӔt6D~n]ɒwygnnj"aH0KU%t*);|ڙ)7t˓vy ,s2n0f?ťD"q_ؼ|3ffiBHFccccɋ$oS4U'Upap `3'D" 682 wv|jj˖h.![oQ4s>`!D..3ۋ,fI 1#]`L'xݻwY__ $:ߗ$zK'8z 3_AË%ml 9KG9 &PpigE>f߮Q8]EcǼ^̙3JDk<}XNyD -Š կ~ǯ^lΝ_Y,&W`vF6}&lԧ@(hZ5fmnn[~}jk׮}[k֬'/eY-3c V#>h]64΂&d1紛=8ȗ݀ {M˧n֬YK,zZHC$/GUn[C4zX1&by,Z!WΊBg۷q;vgoRUUU>e/K>G,1BU:I]%OO)AԄ))F!XrKΥq}-gL&KR륕֟-^DQڕ,Y晍6:Nw3H?h] '2F)e۲$5/0(efjfv&Xh$5xb@3l̙j2|ovڵ[lsglޱF~I".rO(5_< 2A 야߰3XGۧ|,mjjYo&Dh[>uV#ٮ#e2B(T os  s} v_A/cg̋ s87o5)6mU5ZsFKEqժUUHu8,Xp7/ؖ=PL"Cne""W;B}{\Yʋʅ217|E1b("M/.ْAtɓ0 JJ7Ouy^EA0_ƞjEQ_lYqgwc 1ݥm?rʕMmQpڝl8m!RjTc,9?I1@P`y>\S]3inkljni.-)q8\T!$$+Y$Izxd /IS+@WWWWWw$k$I5%>7yc8I0/v#)Q&2r̙GZ%eIS\Rp!=f E 5Ք4}yDLJM0BxxPbc>I=O,Û,[VIB`d1 J8xɓ!X၆8 ,u7!$˲$I9"ߍ=vСjrGկ%.57; d /3eh#,0nni$WTZjJc?f2L0P=!LucR!#_ c /dٔGT~ae P y4 c<2)62HB̋$% 5&AVawz-ca"Pff|JXc bȔ]e] 12gWe1cg JhF6P>i#H")bk 0(b?!xcc ;%n2IENDB`luckybackup-0.5.0/manual/data/rsync_shutdown_button.png0000666000175000017500000001742611531740166022777 0ustar luckybluckybPNG  IHDRN7k4sBITO pHYsMĶZIDATxyxU7K4m҅RhJ(@VZEq+.8Πz szܫ,ΨřesG( -Kti6{޼!]ϓ'Ol=564U BgTtM =:=_BV%^ŕOD}Q+S ծ=|]'#{T^*]WUW"]\{ޓ}WD0!z9_pm#lB#г󇋩Ї%մzhiAu8bq?\99!DEvqnq~eS0(%TTrA jt"w갳3ۮ@Ω q_ 9r%~B`YZ.0Hp^Ӝq&.&X_<'څ+ RRdCw/\ @H' .3` WBUԾ}X  !N@y>\{['yk{_$]8x>HdQ~ѣ#,y?' y<ޱy"Vp"`ȁ9/&$DY ͹.,=Bz1H \=$"IDz/  g4y6}@\NޢPWG Iꏍȕ0aU(zH ^eQQk49ZZ-Ε˕6UxFS(( C;AA!cvNX1jEJ?G$4EO$ڠ@E5dHA0tZkc1EcLQwBQcDQc@aL٬HJyHb0X1;vy]hi:+8x rJCm1zZZv8D#Dڍ@BBecij[**FU /X g0h>].W[[+*pb^ 59k P<mV 3c1-,jy8ߩ1|>IF9auV#gJ=Niyr{YkڲХBPT )0inQĄ'j*))b@H^[;5<2`Hf;c^OBNHMgd-(($Iu 465]~7)ሑ#NZYKTOOO_ӻq!C}C1aB*l~7By{?ŗ۷W_mku|`bݛfD8N$A}>Z:~?(lC) , 222 4j 6ji80+*Mر痗04|JVpVBi*5}6m4?l믏$gt!$i|@|>`Й̈́޽BCCQ#G\۷ UUfDQ<|Xc S Q18Rt=˲EE233}+gSVTߵkW+nĜkV0 s+?&M7oީ'K-[6hf-[l㋊4ͮ&Bv3СCVGJJwGQ7|sΝ;w Izto (&ah(+ɓQy l^G'؇\ږbT[rrrBB/ǡY [ޟ m0&?:Eb @+U͏NQ%i'oro(.^f͋/-]8ôtt}q0! C$%ATWM<7~9jmEg TFIthOrM~ҥK=Z\\{{[B9f֥_9ujza&Ope;rP-eǎ!@Hof!QBf %cjјfJK3eҚ[l-tјjLMS@ t:B]XZIZp8̑Gr&c~Xx-~qVZδYa^ꔣio{?c?xȈBDX^^^Rr39./ .ȧ*J@~~DQX|G~?IXQ!^"Yh*RK~W^6Zj޼yzÇë)˲!ϘB*$I;$B!r ;.ᮆd[ѣ噙'O{۽wᄇ[S 24lIr@b _L[ 01C764|> LQZ=c>r(yy<͹5 )))HşEQNQ/S ]; $$*a/[$ɅOnDO=9raBȌFٚ5Dz;fΚ5|;cp?Ӭ_;6??i)b 0@^B)SÐ6INxxp Ċ1ܲBh;>{ywٲ!4k֬S'O:tk PG{6YYO,|p&Xd2JUoΝ;gҤl^|YxG{{iɒ? RRSοX,;4EQ @֭gV|။kuP[X3F_Fl;YjnB (EHbܹӋtSŶiӦNnj|ݻ_?.߿iMvPYYveee]Kz-w<ҧi !vN',q'ONKK:tX$iw/QbJu#@&Uk-.I;c!:T44&h7lXÆ ٛ7o~:^IiYaJn*v@lrsx%7]xܷӊNN"^X )ӧ mmaTLӂ# !B4H[hwhڵ;158ygyghj&iΝ۾_f+c=vi;RѸvݺnOiiy^~e̵k׾λW# Geժ!]J撛_y IMIB4jc 0jxƯa຿Q-6>(@P@ w9֚_CB0s4yE}m>oҥ3f8 M2e Xl--Y Kuuff,v:ztfH0ocQKϻ)I!@rtҿehTt(| V+RȝĪ u͕ ⁢(:>9y׮]9,y{})k5#cV!DtC }b!aD{r ~[Z!04N0 ;l5V(AB^.H#ņ J$\B1c>|xԨQ!a޾L-+C_~-fB֟PCxNv̻%)ɶxGAΒ?s4dt0z-bT tMJ-?vB+knfHUffd`*+ODHId}^$dS I:gyDǵu;kA- HRJ1XpZ[p^RY3Š8 8P_3f*Un̹cukߺ'y^ɲ֭ p…ifZNE0I u4֚̌ DO@'qGVZ I@DBȓyU*q!EݻP.% Z-a7}5"d=TSR)5ROBO#>ӬA @ а"5R|]_S09>A$;_̙{>rsNΖ[_iez뭷^ Yi)S"=tjBJ@u(jk'OIJl0=y.[Ae`:]ѨT*cH P( _^kl)-|0&n 'v_!bPTvH,6on_Rmk.!ZF{h3ta!oVj[vG4LN P~0IZ}f3*JeUUh4(NiX ِlHBrtɓ'u^^V. wtPF0FaӃ]#i4myy<){g%ID9MRD:}?]!tAIHO !i]QRu}b0 ˇQgaiD?V vcGSw=ghQGp1t Vs&@Ri4%YZy%\] V5 NNN~0Vr|jVD>tzqxBeˎB:DН]YA*%jDHҨU)dUXVíJ.PCYaPdP(@81xp6^E"1ۺ8W=H "a7"(z; i<:N:}U{铧NfddzlD$q| !D~FaVH@NWtCIHOgJyI=TI"it\;`%B0Bҵ6##xJhXV"'CY-%"a{[z!@PXA?P"Xۋby`W,TE@)6QBB 5oٙݛ)q3g̜gfDB;X.\UHhO?S Q#%%55,$4$,4Yx  1{$Jl2TqW2l(oά ru"PEĕz凑`4DQ]mt9nwddm۬Q#[^2*:MJjv2L^\ uEW IНRg7N !衴$IRi;J@RlQyWIXdVsJF.Ϩ*^ i?XPuWNLK elBU1&z·qK~WSCеz8BdԔ%bJC]%d]F55!"tゆAT Љ1Yy`*LdPOFfEY9wrwƞ  Xl֨wvo԰?G$IdX~qqZ8 f@鎔 [ P%L:pi K%iz6rr!c3qJU_3Q8Hqq5sw@.q ф ]^3W FT: ռ,g+(5kg 3#KFₗ rFכ9Ԁ(*kfpԠR| f( T9`")褷 :$IX>X, SC0@aaz =jł \GJcK0I6]k*Z,@q Řp85qg5j.{IIu8->xX,s %%%N+,,4<<<6F|aa,Li#*72lHI?-2t;!*: vrMz?o$!,ӫ)%8mX\ ( \>=@dXjk.J qsP;zwTYwt&`nLR]^~IdښHtGiuAQ=+!@HNu$sBXCqHXUAy]*) Tsk=2pJ=tEt dBw0};I'FJz;vBIq1M $˲lX;zXVuqDDD~b~8`X,}[#pYt+J^0aFÑҪٻ-77~|`D>*rwC$z{8LeI¢h2^nsS5p e$0LhhU4sCKRN>E2ᨦdJFgPwDdhµ/3!eb73eLZ[zP2ؽGKI*h$NeH'hs3]TD $з>.Zca!DL?۠:D f^'DH,' ,}[ۉ~ɜqaR BQ3L̫0 m\c!˕:g3ڎRCSۭATf;cǶ:zլYXXwrof-_8&mrrS<âѓ:@){dmKS$I[=\zMݰ) |h\(vL*01NUx5 ;{z@bQio2䀻йaV- 2YS%$s>Xnɜ)O؁J31&`BPj3s5C2p:(Mȃv2i+gnyg j33~j?j|k uF.)NU'΀UL e-L^ڌV3O5_UT^͖{4g;K 5k*(( дi3ޅXQ^I͚@ ij=jHRy'3ijLS;wѵ@6+Ø,v{hH(( EX"{o8nXzv9l[;ȥ5k֬٪uCVZ15jլpFfHW+L!&ToKr*CZf3n[i@(i'% OzaGjGwi8NV+pK=+FVV4!W (э ^.ҵеרk AHMwo:jj)y!ZCհVS;isjʈݎRk~ՐI ?,kN`! SjzFҸV(PC8=??^z5kj:bckԮ]c2L%z%PV-NILlڵj[⢭\j֪UfV)JHMov3ƬYf͚5[N9gLBCC~ϓʬ$_5Kl{ޜ{쬬>}kV?&5n9t&gOƞ=wٳ'ckt L$&t$pK.2Mƒ ?h+O&+{~Njz R$h"MJԊMuR4q-IY2#A_leZP2UP$08PR'U?͙)ưsS"/N MFL2 Ɍ?G["S%2cA}b? 3*3u 2kT]d~[ YjV{̚AP;291Hjg1%SBYYY}m׮oX_߾]omC̔|ȡCxN_RR/ΏVH];eY/i{3fnNWܜ1}a \ޙRtLv^[o G]P0cQƎgWtԝ_;ZEvjڴYrrSSP3.7ddd6lب^x?O?`6lػwaÆl6Pqq~aÆ<>}nݚ$N}ͅ DGG<}uӛ7o>I:tqIIIju-df]t:|tff'2M.\ۥK'|~t>ռ}{JԱcq5i҄s}'7?}tDDdΝyd,вe ^x񷋿=txO@8{'ӧ[ӑQMqOnݺ'O"wҥ_mYx<⢢|ZXTX\\\\\\TX v=BRw@S01KU-b!װ?- DiY*Vtm*Y BU0:fu X,d\X@`튉cyZ TpI}$SIL'ff9@(bX]Bň^$WYb$b\صsgf͛p֭[?3 .:ms fM57ݮWbz2)i,i3sݶeKN ԫ[OSpfq377{~gF>g|kj׮ cN6:q۽{wͦV5nm<K2n0j-.*Ͽ9act1c $~<52}J;q8:tz}cƌ$i$Wѣ9G.Z(##+xq/f͚ >1#qc|3#6߽g%K1OקLf""4hqʙ3g/_~ŋԯ=ϐeiӃ &SO7^…yYtM I?ƍ5O,\p@5SNݺuA,jB6k0_C$#G1c3>5dgL#b^Nag7s8%'{|Q~03{Ĥk=gZBBBbb2S||b!^O{?Iq ܻw/_裏"n _}U6m^oNNNzzU+Qx;v|q5Emn℉5͝0q®;?d{o3A}2Ϸmn 5=ztv>7x֬"7?:u#<2pڵk^}3f 6l=k6.h_VvK;W#G}xԩGƌ4pPݺuKJJVzY-[¯n:Ǔs͛WX=HG$!$Iiuw&"n:|^.#*~1FߋDi0Zmni$u1dLH]pkJ~$7K@K<\,sС[tM-w֒KCr =m]~l:9yyuO(+ؿ[lIg,(r>/6gGǃV>eʕ\íoN8awkN>}„}%ÇL4pH 1R4lؐ4l.\TU+" pFE qFF@#U3:=JKKxݺU+0Dj֏rL:egef͚>pZr{qqQQQIqqQqQ!>PF'!OR wP2NJ2\-E =)]PBD_}ka$~h:gLj?PcmAԗ$hjJM !qq:ee0ؚ7#Ԭ"&PO$~(A&FTZTVr/c\8w)S7nL#KAQt2x,O%}֭>ܠA_^T .ÑwY3}Y+OqwZxZ`ȘgNߺK.7n/ ƹEcL{dllV]>רQ#<}Xgm߶hѢ?_~ަ5uQ.\>|YԮ-[vz;v ! 5jԠV+Rgسg&%%166^=zI&8ᨪŝ>}_~MHLf!Ĭ6^Fإ\Dakc `if劕O>{3[/XHHHuJFēX.co6\\^$̵Eũ5z%ݢU\I(Sҙ%~d(!CZ" V}dhP63ȦH- õ8!CY4c[*[;.hPZZEQCTt bccivԀURF٬XxE ~=jGhJ$]lLHjԉbŊZkѣG~xK@249w9s<3 ?g}»4c) $>\3 &.Fݺu%E2B]wƫ|11 Niby'׍zt!3D íV>x} CӧC))Ep٬y/7jC ̙7nLCYƏmIĉ.]hإK+VS6lotO4qFGss'L]n 6zmK,~qM6xQGOL;RDR>yJTeߴf6p]'L*hdYG<*Uc h6S'W|̄i2fIGNܞ6i=sDeҦއ.%ڛ,ͧҼ.[ۅ6W(V#pPJkޥ|'f͚Eߴը68z ʩtw2o9O?Ԁ~C>_dTEUI]48ƬSҥjժIygqqeN= ]d_2oӎxGBDOmn&ȣl[oύt/vn۾׋x*gӹ@ A]bHК[?@ 73wA}X4mb0~; h"Fъ(;2Rfqr6lRM7jrn۾ S땴t6!ᗛDFFvL2RA:hH(d% Iѳjހ1jr/Ո-++1dLЭV)~}r*.&6Q?<?7Ω%J#"v{h*111p{\gΜٷo-4bq&jlPNA<2^ v2PpJV[^ЭCBŸ́y&jA9׈fb̬_ m&CB94 _s`CRWԮ*hKf6/RPh7uڰH: LEڐW1NJ *:[Κljݬ, #4P>!ClZ0uW/ĵS!svG̞2ڽ{׺?~oymĄDGHB nL {15XmVIKP8<"BݻJCBd@nVbXnz+ G)JZJHJhK"CU2U+2kX=YeeGDwر=ԩSG/,#"#CBBΞ=aÆò_t:#IRרQ8ʸښΉ( 7bȕK x&##P}̐ZavĒ*3waR:' .Q2xy8KU Dlu5(Ѯ0e.ijeK6VF*:sM@W *NSu)wB*98QJAj.е/PJ+tʘ:5  D_d U#<';%"Zc/! as:ĩ2$I9v#05xN1mFq9t-xpMR[fOXڭc҆X> ϟZ,jՊ!Tp' $$$"2!;]NjZDz3Qx,9ӷnddp}O)잁5+6F0lX!3CXJŽ=ys4L/JO.K4Pn4|3LP}V pSeREhk RDc69#`40ʁΫWM'u3Iб5Xɨi<M6 Ӫ pDDDȲߐeeG108H3%eD H !aFR%%%>U:~}VU˘m aԮ]v n񄄄DEEGEEK^vV=*D@BH7Aee l *rꗊMwѸH ?A Bv܌ jlz$ t|R-\mMQ bB>$B$ԛKߏZMQ>{ĩ!?~I|W j7PL}U#D[vGqFato?JNG^. }jWYPd**v-Ye2 21&Uy|UiDekԹ,g$+ىvʓF$iJ!_T)ȸ% (f3[#P#&2k(,_mk}}~LF4 6BӜAPK_$3"͡8*[hHܜZ[z("Eԑjs, L3UYШU!B`@dټ:zD}{mvW̶D毪(2޷lg܄4i'% N;]BFy$@F<D.pz#r5PLRJ˚L5gHzQ ZAis|7"Q/IML8Wf6tWJ`~jxɰ`  ɱ9@0Q@T)W2Dbz@%b`5VhhH$ʟ "Qi3^R¹YIegkQ JB8 xu$b{u@5:VZtMFj#*mȱϴnX(}*.1ۈ.,]W4_}붚5tԻHh3 L&x)n<)fruIEˏ&t}0 ^2uUwBh; &R8(6WA|B\|"VK Skj+IC@["I:sOѣ0PUCS4ˎ6&@ߘ&*QLs:B+ D2䡅*9{Ts(ĺɇBuVr x31_#2WՒF &nvwXt#nԀ˃x\r]OuQ.D4~JçUfrAp]NTnAՎ Ash0"=Q˭ pN9]h%Z,Ё;ȧt#j IF 6HŽ_J}b@Ot{cL{"]g]W {# fCÚj:Ȟ/!Cauij8eyDAˡ\=3Cj1:=yzRsD=3ғ s}Tac) O&1KF}r?\V·Z(%{:S͛>t3 <W piL۪n2Ui4sӧR0u!5'sj*9k^z)00`12^X3)ʚDj'oӐ:Q*E|՘ d\ߘ:⮲3nZNM@2]G+=iˑXUM0oAOƓ0=Oأ :4apN6Tb'2(N0Ӡ#~`itQ(J@Ջ(p52( 0֚OF>:R7l Y6@on\ĸIaxHh@wf-JPy r Q Z}Uw A_N"uiz'35}²a6hJCՉ RkBmύC>f(ssrm+u9a`X,+ Aԯaa q%͢xVI&"6$@K7zSY_f՛JnRk'%m0H zhv*͈DgӴԠPo#㿏QKp5O>e2_ѹt QiRׇG0Wph:$Vk(YP\ Ǭ9NI'6Mw:PSl07oж$@SNmџ4~ycHCU]j_I׫ز4# _1P @F<({*bLePV-W> yT݆ɺzAo6չ64Lv,P5Fr< ͦM2K!0|6P3 sE2՞3s`Jdh 3Vin6榥)2&o8ez[rc(&G*3$`ae:c'h:\t}\P}l^vF0ǒcDEūP1* e:E:>؎.Ψ+'#Nxu=`'uPe JXk&5qD~+vc5?vE3 TiCFoz P.oʢrntUhx}ɾ`r!Y,V0fģfw+},c :vv`}jP7.oU:tX,%~ůʲܤItttF~%%%Gr&$&\n[ PXXs4IRȪ)ؽ#͛7h <OKKK۶m Tb ///--r[! PaΜ9Nr[! pmv׮]Y4b3UVM4 ;ڵtx ߰aԩS׬Y>l谇?t7|sQQQ{~lVmڸ)-mYFffaaaxxx{nݺY;0`wO?Q#ս5`ɱ9qf޼y7'Lvr}~}8 9j$ |󭴴e$oQQQzWdg6I[+37qq-k֬ytΜ9^>id|>Q]ZR9X S{rrsn޼yժU7t3}?TiE+4*5)ٳN:6566va8^N?t0>6t^.R#hvg01!!!i-?y$w>~׷mVPP@S;pyIH"ɯLb|ȥyKWRJJy=X`cٳ׾uG^7UU@5rLdm6ۘ1cƌ8{Rm۶m۶ zvr.s+.n^!6A@@@@|FN4WslV. gV%# vp8b/ pB墢GH?3_ۋ <OTTsW~qqr8UV{n_nCaU1y x+Kd\hkw6~_ߢ4@okw  T7oU ~܆n[VIʗWs|>[/^ll @I$~ů ‚`A,߿ 7ЫwO>v 7m޽_ߵk~ lQX Q蔐СC@ii -qӦ~}[8p?z}/ׯ_֭[?Wo޾}f͚͘9Yf͚5p)_j׮]6mcǏ#~ZLmCIi /MIIةo##D]bC n߾Zuvԩӊ & 1ްP3S =PZVk;vآESMmljռ,\@˸=3gջu֭[իٳ<^YomQ ;vMMMm߾˯R~V[fmiK\s5)))/\XXTz5>r ?,]ׁN$\?^*]Pnʋ 8{Qqq/k׮cN3gDΟ{gRSS;v{Vh0^}g?_C+;y_k~bBo=K(**JOߚE{!p_/\7x#-0bprs·Gv֭Z3fƍ@z-oڴx<{|w%%ck񯿮ٳ'cʕIzq_׬5s挺<Bcǎ]j=:{uo###ŬrsB0Nݺ'zxung[n%)YYcݜsvmZ{T".\x%K.;gl0^MiK7jݻO#2tyI>7@-W K ЍDƎ]$̜93#3N}^?-[M jfU%sмy6%gvf{t[y?7m߱sW_ OJJ;[Xr&sݼyUnfH.~r7o޼y󔔔w{_߾o[-.##cs3{647FDD׷lْy_׬3, a\tiFFƒ%Kg͚e(I"~gݻw2KZ*!!>۾}{fffwߵ|Ŭrؗ5﫯222X% ~'ܹwsϭ\+}u֘׮]vz7o2o޼kmQ̞=;??aÆK,^8{JXUn6lY2f#`ǃ|>~ج:YYPA}%R0̺1 gΜYz={/d)K.Œt@vvv`pO2eʔ)s%3f|7L\ZZZiT.v+zݴil߶ S]k^zږ-v{-Ǎ'XL'LLMMl'Ӗ-lSQHy'N?5z<׏?(>ږvGݺ&N;v&N4ཱྀ5vG۶)|ʕn]EFFlV׶`Ն%pM-8Jܿ_}5]CCCcǎpsaU'L{﹧ `Uj/ݣwHhӦ-z3.҇jڰYrmV7|3gVyu^^u:mά?""a6^*WP8@d 'OҸq2f(--R<|ߎgϚ|U5jL:~DV\޻Ï<̋{0`}| Bhݺuwym~}©)8%E99ƧÆ><z% <|In9U+V9rs簆#9Gntq/1k֬v;:cW7ktS\g9y򤡪೘T.SNtJ% Ν;u9rdmsfٗ7ߜpatn]#YgmQ?v a`z5S͠Ycx͞ er:}Ƭ\CghZ̧^(_Y)4aVt5iAXaC`霌Y{q֚itEtE0FWw o @ǎڵo?wڵk׮Mvڱf͚=~hhX0̺q ƢbUf.st=!!_MLL뮻NrMPUO]w-[_pi`{!ٳ4nM6kXV7}Sp9w){{o922T1!HJjookzeVګ}7{CCC].sgj,Ko.q:$&&X?dY}Yf+Wj޼F*ŤЊʞV`="#"DmĤuѣG"k ) ݣILL<|KkFE}W.טGyǾ;߿9rd"Ѽy'N=#xT S fק%N<\cDU3i䷧}ڵk}֫(on:0{lY={4:ujV>ϗ5uTx]=`}ӗƽ}6ϝ;u붙3g4Ȭ ߈3޹?@\HHhHHȉǏOgӧ7L49--O>A 2_ƽdb }=:qDC&O{n߻'M ~11|Ax1˗|'''gsǝw>3?@`Z׻tRV-Cɶml=喛uO ܫm $G~a ~Сv#pq-]*gT 3 fק%lIl=__CBBzrUb@Ţ_~g|[;˯ܰqϯ]VGm)go޽̙3~/:&qѭŚVk\\\vF&5L4Yi knrN vmƌ_beΑ#V5%#ÇGM67p9~K.zwtzӦM}~[x /rlL٦ܫښqw̷ݺu[h߻v?b4LLرc 6y0U/Yd媕[ɑe9...MC:,Ν3yCΑ#$5jܸWC sXݣ`7|㯿68Ηƽnp}l}@3K0RZ@TTԠsWuyN_*wT S f7L .wu=z]V5ؙ|e>񵪮*>+Mni3bh1#֎z˫U?`ZK+>#7rghٲ%l? T3|ʫ12/@9rwutEի3vU%En;BB7nФIYa1wGlYO?kBYY٪Uw_!0Y_Z4 'ۿq㤡C}Ww_ؽ]Q򫯆 ިQJ~]UxQTTԃe.Z-jЫ~nEff&ؚP9?/YAU~A^Su_V $gɈ xtw).-hԨ7=kj zV-mr[$ `֩]UOg3UR?KKVvֶ/9W^|zaaas+zEݫ3,Ktt_"t myݫ9$I i, P9HT!_\ vRh{/ T7p;Aޚwp. ,]@@@@@A@u`wF\GQQѡC˜N"IBH_+~o~eY Mn$::r ؽHфĘmUœMGFFD~fnZ**`jS7oޠAmUȓ'Ofwxի[1Ve,ؽ#,,,>>>**r" pu#***>>sd~IIi_VV]Ep̝٣Zށ###_ꄃ͝3wǎ.Xָ 4klر۴K(jGY\\_w:˨dJNf{Np?yȽMuoLwK>/,,nzbcc{>n[9oocwK,:e/J/9CҒbJ4n .nwZώZuN!!!y۶\r& P=dr{^!хC|gIaYIQiI>Zza!(2ZNx.2v7Þ={BCCabb ^zʕYY%%QQ4oֻw=z:m۶H$)7nW^]\\e%==mٲsχi_ DᦍҖedfhqͽ֭[j& pvr+oOiIqYIqYiaQ$5-)!nFHa>O+|h\TOvԉ[o56kf(&ﯿBR ӷo]~^R Ԅ ~7:eڴ/!%^6ifeЛoa3ʫTPt:(ٻ({GjIkbo1Q)zsIni X)E(maf Ky>p̙3圳s765gWqnx5lωN02FY[P;-Yu/"Ν;rժ+;vvbBPB6힞AA AAp)::$$D=-}qqH6gɦ] ݻ766ƍ?xt℉di_~uVDDĄ 4,\ddBG4K%?0[MTǁP9Rb H,y 'zrN&k;w'NPPPXPp <:EF ?Kl8x =u֔dX,W(=z|ر+VKySg!Pg#G-TpQZ.pdU2ul=JcIeR1Əޚc4Y,ow%w^thu1g̜dɓV_oرcǎ%K>=Yު iܦfc!PDBcP41%=\sƆoog`gmmmrh4=mk{Uu|IJjJNvnMMP(Rύ|u|||TѨT_|1iҤP`9s樢YFvrrZt5UBl8uа{,ְaV\O<9,44-=Ç \`is#| BnʥüE2. ++F`ocoo ilzϟ?ȳgV26 W_]zhOO6|Ç׶!Y@hI}=- DbʂbB<=d':~w[_B>MF-,,pdl6sw/dpY IDAT1‚|da4\`0̝r9ULP\L'Ix`6 ֽc2MMMA!AT666,}h4@ X\xoOo/#Sʺ h4Ir{/d0Rvk ESSD,f2 ur8 bd|>ɉ"غ C!=6wFBgk3T*U 0L[Xld6l^B;B!d2 l/P(&5[wB:n !muG!zlB[wB!muG!z'wđ}Bۓ;  E%n B` %>^|>pL  L&32eA(&=9{/W]`\n+/F!d@KK ϯ4ܺrTdem v @}}}Mul-5띭Qȁ0_83B=G Q(BaPBҬ1 PHue !< efZXU B|>q9ro؊caaG!d\.W`,gSSBZԂ PAX͑>=|(fp|!isr::9TWYYY$?v'B&egg :m꧟|j—#BݍBlllZϜPPDH W\_,̯^!ZI4Ma2./7B QMp;[dBѣ۷+-o"FkfMBR,He2%A\¬% $"aCYؘ"m|G"5^ b TBlN9:8,X`ĉׯ///uΙs#FhhH{ \.wРK,6m9VP X\T, lQgΚ1`@P'itkBNuvLL̛o ?s;B6힞AA AAp)::$$D#!!fuҵSw8J^S=CBL%cR޺# ݟtgg]w϶yl6f0`oߟb^ Pݳg4Wד ?Kl8x 1x[6MiBu%)0c2r[Xl:Şﮰa2BvImKX?/9Osia~.߽P_PXHyy0?^{56>hӦN06,x\.'8{ MMrB5),,"U¢"B ` * Ūk&CɃ~wQR8$_P{ uz~;690Ϙ-"| ]__wܹk׾$/?A'tNwyC!St]-&lIDEuj:f𸠴!Bf2rBɤRMs[c?#g͚Efff@hX i4E .Z---7m3glGu0gΞ!&Lp8-"  Lbx=##Xf!PwDL+g5%,W+ʭR%]𰲶 JELeq7 vsu43hIrP(}2FSHxUlN}':c9߅ ξ/sr߯1F=tB8ʭl̦rYtp?'+)f ]^VK*J~ߌLL:O?S6ϟ7/?//888777L$=====];/;b_ @t_3]tɝ;.]***Zv3g.YYE!}5Mz(>b(\mm)Y9Y[[[rfkMߺS(na9ɓBC>|^^=7bitҒT}|͝;g|u+.?ܹs>7ok7k|T_|1iҤP`9st<!':(O9ȸl086V|;g0}:ߘGv1=?յ#7IB$4h0wFBǓd999|αrhĉ"Q\&ť5e"҂`o`oceeb/f0,6'>.[|џ2wWZA HET; !{( BEQ <=24A(lf2\.s  F3p~Nznt:M.;Bu\.o) ˽iccd2)x\p3&033SG_з饫OY|LfSSΎ BS*,&K_&,/^<Ȕd;:8{Au431ƆzTjaaё!2B(LC]ŅBfd's>pLY{{%;#!Գ**LH,62YlK@;B!d2 l3 aBXg4mWZ!B !Po;B!`B6غ#B !Powġތ B!̝`0h4yoAג ŕ|#@"Շj!z1S $gCiR$ ,J<|^e]}˾_ugWE qHBaHvy9J} l"[wk?@'ZZ؋Dk[>*KcCJX,JĄ sJ%bP*J}i*+ʕJeY]$˫¼46 Jm7SP4)Qu7uuDS') Rq@_^楱!/a5OV\3BoN@?a3 BT0Ak0/ >X[A$RW7sCIs&N͘EUlV߻~~CT֭;w^gm*dhBZy af/Gf̀i+.ɞJ֝L=%W*ZI'Oڵkߴgڕ)P:~y\_]g /_c6]L[nBDHK.W,\s7v' ťK1W^kjjf2D;~cx3U5P:^pڡMHҥ˖JeHH3 Zv3I-j'ocwBTuIu$%UǴ:WEIi-裐ӧ 4bF9-OiFaM0tPHHHطo˗it?7lذaC]={}=6b-_wU=J&8q"**ϟv:JD'rmyyk׬5jBȸmݣҷݳ̚JxD89q.bƌz쬥:Fo:BA_/{-ǣGJ 7o...:e֭[i#b.ǔ)A-]dܸqډϜ5 /^T>zh;4m„ olެ˗/?@"OUx''ϟxa++k2NΞ=[_&^zܦNK/En߰~! b˖74o'2澺UԎIRRSτɼ)|}#ؘN]?|Os#Ff''GX6IHrazַ"(((8>>Q-4pK/-;ȊTRR9h *r޽o//F OGZ5jp=o:G z*.0s}/,..4i\V\\o!wޕ$=#==# מG=%/\P_ _~yUՄUUWbbC\񋦽*`5l6[}^v_싏h"Ir͛ H[;E j/];w.rժQQb /pbb.'{.//O@ssFHAA?*2v9gl.rΙ}vz 9i},(,#ӻJ ;aa u>z&왝O??/ׇR(T5L2~;4i$\鿌܁[?(%d|󍣣?…d Γrцgo%7|344$""oƿb+.Tr92Ś4iĉ,˗/,}-H5I5۴=uΊLٺϨQϟ_VVv+W/_Lurxݷgϙ- ƐwՎݺu ~2[.\۷>8Gݶ-nwp1[ZZ@x2Pe' ZjLw䨑?8>>Ç~C |iDyTrs`ժUjMU@kem3<>q$L<t]r3xܯ~I&q8l=yz^qssc2+W,HRZZx&ٱ}/{睷< N^c̪4h =2~=[FkkkHNN ߿;bcB/r\1cX7ˆ &ZVkVkNmDʤ率E]uzH6nLII > |[NNyE90})?U!﯊}=Yxe2z4*U#}g%kؖ<3C$بsTW^VƎSq@yyzw?_+Kk!">l$J24,\W_odiu֎2~UUzzRČ^w`pqqٹcΥ3(=k9jaaaQQQ7 P[ZVkvTk!jn7ӿuZZZF6,547 ,-;l[l&̌WFfFZZyrHݴN5C Jsܿ1vvό,ɜ5kVMḾS9 8^^yqqqw] ^^ ޢ]XXCgd0}-itcNmDʴU9E_'Ӄomj_+{(77wHu@_z¢BNNN=zA:yiǿ'O"S/Xi!VX!!!adRB#nB1V̼w_dȊ+ d֭әH!s쉾x {sq*)))IT] &M 'N7U 11I=vmpssoԎI.]!!!ϟWFN^iGNىŦ$}94zfX?M=r 4JyI"tEjS6Y@]4ȏ՚pfӹMQwu1rzuP('UkWw# -, ##ЙÎ;wܹ*b[FQvW\bʕ+T*588 OppJrD"6>,15@ jMbZ3\ܦ]qʔ= ¬Y5B/F@}}9 m@iT ݑXZ.^8))Ν;_<6#̙;{3gW|WVVVN /~0!BC7Q*cǍ6}嘘{IF}ƍO? TmduQf=<<Ϲ-_Laqqq19s>aT\׮ƶ=Q=KINv5vΜ9Ff־՚pf]۴u ah G]ccqcjpʔaa99~wdǎtm=ag\./+h Xt33z:pڇQ+d^|wYh*믿we2/#[o /_G=Gg8p x!ZӐ!4bw>L=|1cnjѝDZ a2xx:{;atNtټ'm+׮]/(hjjb0NNNCϘFg;,,kee m)/Af^FNߣP ))`oK/l|uZfnGo޸)ɞ{n7 OwӚB NW<{6<--~k׭H g(tsfJIN>ynL?mX@cׂI Wk1гMZwuV<͛h2'iCׯFU\./,,?ptO?7nxWEŋze7ml=vsCBTju5r>wKFGG>W!='NZ8^}.DGt<ߡmQl455]Yfz6btz&ҹ!Ooz.=U1c r`1fKto״NξX<\YݡBwCUX}2թKWF:?M뇫5 !I2St ]gJxU\'m щqt.t,]ǕPq!г!L”XLJD,Sg`\sCyMO"uXquz+3eT{Cvd鸳o ҹ!ԟw\d': $LٺS4 dZO~tH$HD\7bƆ^oa$+nMMM佬&KC^HL&kni%ߧDPyȵ7o(Yߪ (T/Sb12x@ 'ۈ;y_^(*,w׻1a+:ooX\2w] $vU__"̽-Nbo Plahi݉",2჎ !d}'B=D,nllwpttr"56JesseKssSC!;[Fo Zw*(r BݤRX,!IBn[wB!m: P(}A7! h]߮hrT*srr (oooS5ULR@PCeRi]ΞB!=q4#k ֽU&7wBnK*ZYYxd = hR(--B}]KKYISN@g_3O(bD*p"Bڤ=ƀg{mF!`|B6]t;BE>qW!0.!:bp̆ڇl6 FE$C #3AW* rrqA {7\wnn@ 0kN[΃;嚚 r=~ں BCBhhhJ%ē[A[H$;[ۆFBa#P;;RPFIHe24ihii?o ͭ[>z5:m׮=n?sVVDǎ;;;/[R馍RRUGY֑x?իɉ5l`^Ṿ>Ȏy?իm{­[wӧ@hHhddoLHHs?>bD~~OǏN3;;租NslÌO6ܹ䔔uvR!aad̠d@W_NL/-,,@88#3tpjkk#WY g}kXg;i #>OC=17an8wo 44|}`) cȐ!_5\2]Ǝ:6>ݟbX7!d̨Hعsל9s\.˝;w; \uhv`ٯ:}k^Co0ܸX RIYTT!vڲeׯ~~3p\XrvʕUg=jhO䀵ΐɓ'2e XG׷?9`cc "Ȝ[ÆgP=O0cw,r}}z`]]ji \9uXZZ{.0pɞL&3k8ՁkbX,_vW_YsT6o|fH$jiiv د\ zj\.JKJJBN^vM̈́I̝;>E"H$pž?yq:d7KNa9Dcw7F?Ѹh+V}oz#XF|x3f/-u۶+Lʺu^OMM裏Gv:rx̘1aoFfYro ̡rPu'k4Bw`0?~ %% c_}Uv_˩S%%%5 NsmSL?ޭRFZhQ[΄ILEEES(O/y[Nt[ب:8X:sPoFd{ͳ_F''{e77Bryaa/644H$ȪQ-"Q drrݭň+.-~豷7)!dZL&bݸqGaڣ?ѭN#ިXBxlly\nwg0MY}|R,P5xhz3fiiiieyR̠=< ϺdiiiڻB+az9JR 5绺8;;s8BulQ/GR---L hp8>p[!ԣaz? r9NN@\!Pr#|VB!`B6غ#BM7:T*JL&#`0T˳P'Kwj]6 ԙ"̫[ B,3LKKKGrysssCCL&cf|6!>OZw>!\O,[ZDL&S*"Ёd⊊r.ۭ-16kI_3wrPCP$J RT(RD(lѨ>BP.7>Xꭞ=oQ*MMMrLr*ŦYZZ; XQ^n3glٲU;ιs!CsrEb7nhaa---jX,5kN43Z/{t^d{￯̈́wJƍH,d2ى'GE׼֮u! *ߪT,\|u :P(r~/**R*_]?ydr* 9{$ BaB Q*7o(.)~ɪD,Dӿׯ__SSCZz nT] ;wx%n%$jk+WX,V^Ez}FUw|csɓC 12eTi㦔dUHNNNNNN|\T< AjW|o[uW^S+~뭛7oB223[-z PJeKsD,!C ~{?y{~R GI$b;;fBH?RSS~o'ssΗ tuu;7o&?ӱ@׮^mRSSOm@d2O=ZkkFFE&%%^ϞQE1sƟ3gL/%G3))˯}۷"1118(<?hc+>$pegϩd9u͛7y<'|iʪJصs疭[_~w 8MK۟ EPPйs%%b }s&MR2y 4h@ @}UFVLŽPoVBy]I(bѓN{>ÃEPĢ% &` /_}1lݿ{~t"H#P.)!m$ŇP(tl#Sh#G<3o 6ij*J&&kl 0Xe*l8|W7o&'$$hfqcw36hcc~K6ۏ?5&)9 vz wPfPT; V[?9w^[f VZZfu: ٓ)3>߳W=ʕ+୷ R$uk7޸ ZZZb]F6KKHJJnwO3Y,YQ^駟jDhus|}1Z$D .|̛7}B}v41Tc[8vD")-+ύ `=gΜihhdiiQ#3O|~UUuEy_?9Mv T,:{QeeL\QQx:ujm:3s#>F|zȌ3ȁ1cF_n m_|w%8 i,֭]w=6.55H=|QkBjk+>췋/:yɓ'`)d~qqoݾsNQvs>٦UWWht 4:"--N߽VVV)'s8KK%K|oF?4c b|}}W\qo/L1ʊN>֭g̰lca>ٽ{l6bE_|Vgd2?0dX|?xM7 #TP_1f]r?7ʊ-X_|aL ?裏Ȕ9ѣ|wk#GP6yFNpj,uF*D.bCCTZZD2T;5PXZZZ^^5wV*(TU"fy{xx(2-,u1&foܸ P{T~ }յ For ,?7ɉbI$X m=9P[`D2sNRNx222rNxN.vv\.aD2[) c666"H"(Jb8͡n: @z%$:y5p̝tD\.7//w1K?']mkz؝i? T=3wFҋ756X0Qg`vYikuc6ܹ@6CGX0Q &!PocΫl~ #Bp~VyYyCCB`X6^^d2lb1GS5r ֭[23UnHTQ^^Q^2a~f!BuG7S(QQT*u"*޽'N7ܙELhe2YrrRQaQsF;8xzycsssV&[X}|Fb=i${k 7odMn%A݈(rsεWx~|Ɏ{Fm[W*iiyyy `iiٿ /Y0i GzUu׮^MبP(RiEyQ@DLL̕˗+++%y> IDATRlhh{3aRT=,D<jުì,6|]Bsn[W(nz\.=u+!*2BP«LL  Hk޹{ /J?~t#>:55uܸq.XřJf2,#/^(̙;7,41<$9)\cVڌJ5aDOOO()){2#=} 7T=up8BT,89;Ϛ5 g3Ș3f :qPu8izX@_WԣlH$mM?77&Nد/۟ rLL^^^}`"d*oa⤉c.&'@ 5{G 4$D;MI_W8zMMM`cmUUd%a"֘\q* v|BM,D"Ps+̞3;`Xkllvs~*t ȟ7‘OND @xn3Ў‹2 s6{VV555eP3Σ^^^^Ç8=zTKÇXގ } \^SSScC8:9U?9_:>~__߶oii~]E4Bbcw6IPR\B^p[RRp3|},"##d2L&+). BP@TdTNNP(T* ~VyB}N0ښ原0Fx8s _PPS]qӐ!5ee}|`Affd\ruQ_0pYZ W\IڸiS())0,^2NaAaDY_0bDTٺS 44S(oaÆ -\(33B*~|GI?~{55bB iF=GEΝ7O 6}6bigτן므o~hll(--ɛ>cͳ@[ F>b3Px\Y3/Bbrz3.pKc.UVV&'''''utt~AB";lx< rs<D qР%"(==]&|7 ۧ rc q8aoބxrܹ@r;] &Y0bn"H!_uJR,;:9;#] &X0gu\JZ))XZ#`όSg[wlv7`"d#Bz<!Po@3 !;<\;3fVҮ%K.% BI0 H 䆐\:I.I.7r "W>ے{jUX{#TVky]g3gΜ3ֻg̙A_n! 7Bp! 7Bp! 7ͦBl 8%.qK\2 Rt޼,R_TTVuɺ`!&(777"""(Ztoht8$B0cbq}}A@Т;IjZ"!H$jh49bE!!PxE"X<4MV1!PB!P >p0M PE !B1nR)c&8߯ыB/Nv۷o!(䂢a&SF,aVb$Y&<1'xH23+355-!&HEwɤV0 cZvbqt`Q1:ϲ̙3Q_B(Vtg80aY9 t8QQ rv̙ӕU.\B(\Vt8n;].3tv;8"heUCVVUUz .[&& ZYl9yDcS#Isl6[ZZ(={… CX-PR[W;00 "---3+"It{wM xh4quuޔ[n ?MקOEz\.Rٳavwx5 {7 C[wM `v_|a\PUUi|zLW.B}̵g93Ī:\lR6 'N<_t~%ޜ6eӦMRo-))9zhDbpJUe'vw¼$hnn:vb{{iIIvvۇwvp[qŢ׬]?]MBCf;vرc;SYYRX]UUYk׮钅E*jݺu8+WEDDxp:CR<9kjk`ʼT>SSV@.d֭ j5I111y+;́oBqվ; .Co/|ٿg6LFFFz^4=bĤtIU#&n&b5ZVWjڅBhB}|pu,~n?[1,;-9z 2&nUь.B0~w)J1b1:y[o3\T7z;WO5HMlnnN9;}"j2dΎC89B!5WjLRݭ2_]Sc6Yef`r̴4(SחNc.B^!',ǧ444/,ܰaX"Y\^^eeZvfzEx㍥%5A劙3Sy/X.^p8&㨛H$O<~"I))K.{뭷2g\RUYŲN[b[o> B!Eɜ}۶kG\7;=͛vWX>0008P ^eZ]}kuu3t=XPWC;Al6"fSeED,Ƨ#B٥(JP#H%_WQYSSU(>!BM+8mIuEE3KRVhS B(;I \ GEEvߙiH*4B!@X,iżq!"FnBh|Bkd1K@0dȘ2j8e8@xtD"ɪr9EQ^k_0q:sTiiYkB`2al6tcl6-VpX,֚D-UCOD=ɁS}}=lnCbbIt0@Fzf\.f3[,pXV^o2$HĄpQQ 2,8Y6HJ҅qvr0flvqnSor*G+FK(JVwvvp@ot 8Z ۷[`0ZZZnFo~xv_|a\HRUUi|48+(ȯ ŭ-7r'(OMM[juަ4*&Ө5kt$IJv:hlhٶ};vBq`<%#"">˲6 4qZ-_'h]~reA~~KKKKK Y\~Æ(ΙVr$==J.@v!*#/=?J].N^.F,˖ nO>ZKd^bxƌS'O_}7I11I%yWvxM&㈍ 5ݟk*i Bh2pGf$H\6j(##.X@nmm } Wy4!w2Obb?ц6dfeI$x*VkݥTFp09}S ohe}GAddd0z1F)22jBjZ%AvG* $Fc_o6e9td.9;;5 ާ8pB>_GK0zRLgGG|¥ǔyFy~TWuk|gL?:6Gq PSSSVZZmZ[[RRfx=|4G& oT)J^ƍ!DH*|$z,E BI,k5BRB>Z]. &###[[Z%IZLK UWW9ek[껻Y>~xc((d2;z̟Vn]ljj >>b5>Ǟ =\ㅅwUלs555feYa++*?߽;BBZ z=A EDll /D&UF(Bq3!|1Dt :8%9% ܂C,fff^Is3[[.^x#~nTF~g޷$;'ҏĤ\ [0QQQAb822 3+7j3|4g^mTN(===ee F˃w!8XN;.>P$)D"!Mi1-JeR)MӞ8f|OIIi999V]38Z@0k+*$pÒK"#(5322B!钿͞WZAzz5ki4isHHHRIz9EQ7xŗ"#/Y|wovN$}曓t:>/ gXzGo˗񦛒SR$ I</2R9gΜn-B! bFJ\.W*#hIQQ1jF%%i5ڈ_`W֗뻏uhf͚=|$9o^y7@kV]s͐tH余mFkŘcCR,]dS90zr' CRgBhrpKrCODRL*bfw6& >3;B!AQTCCCRBxjZT:]:? >_PRϏ;yBbRB] bqeEEdR*8]N(jLFLfSeE.99Ԟ5;${Ͱ!eF_ "BqYI3FU(}}/ Hn;d.E,-}diZ#1IRVhpMjul} !`Yn!HT(?**nYH$J4MiyqCo hCb$ Պ!?ee2H$q1M"=؈&)aM%"hq.!4n ҰB!PB!PB!P Ztn;X{G!&oEhƲl*BMem6*::Xl6yL&33  +.[, `U C!&C! FwB(`tG! FwB(`tG!M0f 8\%.`)JJe"lТ{QqZJ%!D0LEŹ EP*^__bcbwBan%ܠT hѝ(J%HUBhH$Je4U=EMBM(%bqcBp! 7Bp! 7lux )%.qKdYJed; sϫT`!&l>{… 5eQ%%%Ũ"!6X,]`A2Fw`Ap"4 HT*h vEFѝ8aNl("hZLPRG!Bk6a"#N?GtT0>B!Bqnw\&Nns\656RcMLJ-ݻr nwqqX";w  =~P(df߾}ޜ`0| %xG;l؏BWt49B>#G+[ss,[|t2HZ$KΜ9S^VVS]Rѽ[o)?d4./ZC(._ KKJe`1x㍱'oݶ 6Bк>?hҒhj>ҽr kxXRIT+V+u"//5u+np y+qq{~ںm@}wy+ ZZZZZZΝ\nҽ*#/=;c^IZF . IIII0Fz" q !!qw߰!3+K"ƣGHGvj ?!BM0x%tvtzr hmmŻjLS MFt`mmm.r575AA> ,vww@RRxqϭn.BHMM]H$ !4ՅYnr:8E#}P*#w}+Heg̖掎C ίj32}jy;9ZB/D{;tMeeNS*>U\zS'X[tP(wÍeuAԴԬ1G,_8hop8&!&JEw.?|~CChhGKz!O+W]r(ʏhu׍<!AʊrLhj,"6Mbx ]5G!&Th)R(r2f%|篫U(XB#;4GdMm"ߙRFj59gBIgC.$)|ATTnY$R)Miп-n7ΖnXPLXLӴhMӄ:Fm1AXꘘ`Wd=0rOQb$IՊ!X"0AFw4uD"w!{W!PB!PB!PB!PBɚ͆`ȴH!PxĸoBp3Ѣ3zKK.Mf 8\ 2YL22'Fw`}}}ΫT`!d6;_pBL(ꓒbj!JhH,lv8*:"" |-]B `r_n|$׊asgYVen:yB(1̳ffj Yq˲VhxXOT"HEMz} XS4 9s<ص@)d22 cYsp8,flZbTW'$$&&n1=K=>}EP_7OLH$I X5kfr8rl6j&H$HLHU_W+B>fĤB!8tXcfl6i)%B!Ѵ3 tvbS\tN<-]L&p>}r?Av|q͛A7e\>͛&Ib[Yiigg˲QQQ ,pmmmUU`pR4999''G ٺή:t:/Z|󺩩I?  CD"NW___W[Mw:yNY߷߻7r*:z*qWpp}]7h4^p[nc6b7_0ʕ+ F+MHNNnhh橬t\:. xע):"!fp8 fcYN(r$ X(R$C4_ѽ[n)7L/,Zț`0xÍXOb֬Yu{EE%g{&$ˉlO/pa͚50JN.-YTx>j^[765ؘ߻ZuV#AxX" ,zF5ibc333Zyu &D޻  V; i4Z%ddd9sv…PYU3/uY--+wݞD:Zi wdc Ç믿)-''4}L(-)Q:s5-B0q<e2 T*#r96Ţ\`InU$݃\фh}LcN 4sL$8s:uu|>ƌg=seUf 9sgH]F5\lݥP&NʣY}(BhvG* $Fc_o6e9W3>>dWTMӺd]C}CWWWooHO_)VS]k֮IO.^~e˖degViB!"TIF(g5X, H`9^(#DǏww,]x8$%鮴Y3(2MG sZGG9sg_Ԛfe诪/|dܹK.eY#U$HRӮ p5-B@( Rz >_/{ވ~H~:u0.NCʺ::`V,&~ p-BG.Y'W ==NK$I2T"y<7{/چ^!ݑᨯؙFBQdCCCRBxjZT:]:? >_POQ!7 {NP2!ŕ呑JXt9_ 0M:.cti$IƮZ2AnKQB+98k֬$]%UTVWW(z+`t˺^SPb"!-h#H|y?JF>  LVY,WBhҰ,k1jyH| **nYR)-iyN,$iZH2S!'a2h۪ 4-? QD1G P }E&6帡pBqCò u~LxߝHX (K Bه9e' I,C;qCB@pCq1'8I7^C?B(8eX a'Iυg/C!Ha8dء'&"B.E&rM3Ir7-݌[B!7Ѣן9zt'.(*qF3BaeYժv;8q$S?ѝ8$97ZDi6qBrBaviP(>$ɉ~0$܆a?TD"H4Ԁ!P8X>W'0YB!4p$9#)wb^B誰@N'KcpBc8Y݉a7#B qaqݝ8B<e9&| .O3;B!B}w4ѝ(L!㨉U7ѝ $Y{!q7}w!=ujroB!<| B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n0#B;B!n)i: !BӍHDWWPT`2 B,WWV+2n]}!A聁*NGNQ\.+3g&&&]}!QYQ^SW#)iVKd}} %)!&RFw`;Ir\ DEFBMH$JE"Q@NC;A4C!C! FwB(`tG! FwB(`tG! FwB(8B(F$A}ɲ,Mf;Bil6765'$(`;[RuR4PebtG!4-tvuϜ93..N,.aZRi{{;FwB4hd2Y+2L&h4CQu!Ljv/X,!d ,X`AkaӐ RWW㏕N¾c,yѱw޽{NÐ-]29;Z۶>hXJ%l߾`BgBŽ,2o姟~z̙C>]/L?1{agl3g|g& ?9[gΐu֭[78c^|Htͷs>*..v\۷dѢ7ӟT_ŋ_kZlZA.P8wΜMwݙ"ϻjm.?oZZ 11]wםwx<~8{옻R!S\(_l6?j[20|9~丷G}ݥmߞ;?9%_Gw޵yv!4-]{2GλbwlYCy?{wfc<9RYQG):Iwg̷.0~NC=\Ttޛo5'O|WFcηtg<8w7|~ʻ;q[o-H8{'}dvx!TGX,cGo+Zpao_v>|~ &bxf!4-lWv[on{xΞݟ>~wZf?S߿~ټw=u;Cuuw{p1x?ѣNzwW֟~чEErs={Xa>+Ξ=G xv2v5cԷ#Gꗿt3s=w-|_}Vȑ#O~˞W_[o(++5kK/ɟ~㏯_ALbްac=_z;ƷS^J9s47\2_j4771wvSOYYY:{gn'h !4Ph[nĩS3?zRre˗߿̙3Ο?x駟~oЉ;>cn,ko qe\3RBӔg0l3[lD"ZVhɒKwQ?qqq"hժUV{7lP]Sy&&%֞8qb @R8!<#'?\0#%;Sgq13x8h0]v5559NUYY-$&&Yl@(/>#f{nwYY /+V~gl6FQԘn< l67߼‹pvܺuB;s2l߶mcnw.zxU!МM%l\5~: aO |Oz_yv]PJU]]-Jo+U~Ww}wBhQ׿}Æ _~EBB_ ]C`tG!&H$zss'%%-Xg GUBM8\_ȑ#^Z&M0#P` uwB:f;F[2LgBM <3߹n dDBhZ&)=X5BA yBӂ7;NL6կ0&a U;B3nWpgBp! 7Bp! 7Bp! 7Bp! 78 Bq0.+ +|>( t?x!PM&SCCf 8KZ$1#E*@Sv:]J%2 !fK&6"?nӏC_-"`Y,&Z-HUt`ZfH T Ø͖,X`W'ȤR2L:He4{J_!Uc Xt'''GEF42&Hɺ`M*ɤ1 cق]pcsi숈G asiڸ1n꾱,"Qttv@T*! 0LT ,!ӡyeÇAJƎ(`](D"HAHE(ص@cYt<׉QqNnwp, W?>xЮ|cG1˲5=B0#9=***k:꯲MWpMuHvƵ$Ω֩PWW71O+t&GGJZV";Z8%_IB|X+C蛘YHkEwE 5oIIPwr>Ф'1 p <=@W 0|H:f ϷcMZj*.b&7릈w2Lo7| ֭۲e\.nw/5rկ~>J|hk\FBn_~wʊ#NjOHX0m?-;;ۿL8H?@F+*gh^|у fws.cؽYc|BMka>gDT"cvw9YId oP[[7P{_ծɋW}}-{Sjkw[o=cƌ;h_}e;/㢴>ҋX0>mf\VOx^.xS\.WmMMmMG}x+ aGN9VmS67f~k:ҡ]YNHww:qî; {(#|:@JO{Hr89%yb-PW?BgfγֶlYno߾=#c< 8{ܟ^See[+ s](s/-= $馟>WMMg^WE灃ݧᅸ\[\VVӇ~"/&&a/={_}J[{<Ο}ťG6-<~miњ_&|RqM~/Xk={VNN}spgUZZjZZ7d|Gsr.Zp=ϳ2.Z3DZC6X̏?XNNyY?A/ؽyܜsfY_4~P ϗ!wUG}P\$ )fsV"icFw1lK3gNFFgpf]d8[sssΝq'O zߦy߶'۳rsso-owfQxZZ'seUwΞ3g͚/dQR3UjiyۧLՙs~Φ3f|+WbWX455hĹsrss^{5ǹ)===33oƬƀR<:tGS}S\Qlp6X~_ʎbKEٺ*c/Xg}VVV7m3.> E36qΝ;yfG\hџg\n;{뭷dee͝;w L.}wzSBWjF%˗/Y[ yǿ:pr8yɓ5G-(KJOxfxuVݴ7/>xPiiٗ{ ѳ #{|Moii~7=On">W4u=锁oh#@4Xcr+8TQ T*׭[o߾_~y{c2x>w}yW=v~9s[_n۾ӓO !*|P=#{񦵴4Gٹs3bz8OMuxi>_<.xw37y~ b~_o}j8q'?|gn߸LJKJZaW|G?Oy>ٹf[6YұJ~)qwwvY,@JdGׯ~'#o^/~{|G:v_wڶmǽ9̷ߞ?.7w 3il3HP<`WXkj=kqͬ7ج )'ϗڵk z}_]ZZO98eקlR[[k׮O?4>>_]|gϗ xsΕ{w;^}տceSح`RagVb™zyd,h7wЏX6_|18>ovu|wYYٱcnoO |DO>vHx_xO?ݳgvMO>8 QOJ/u qo1d[7/G*GImm-,^dŋ஋Cmʰ__~=>m[~Wq#99>"^dޝFEqm sȤ 2) 3jdӍh&ѻ4QF >`T4}Qy"FD$(@ "0+3 ]=VmaVLrYvTe2B0?(;wpM^'7?^;bұTU]Hxbӕ=z455U$}gn:qDP` ]~#nk3D,T*=n:Sˊ7v0LjWgguR^=tн{<==ŋ~NNN|>eh(477)ipooo7|pҥcO={$ 瓒I z)18*WBm5V2 I5jJ\F*y G;::f<ԕdgg9YW՞܇ypK)r8Lbѣ"B[]&KKJϷe_z\g͞U^^[F^W[D<ji}>6&5ȠwC%j[%|qbq}}}ccE~466X"i}$[Y94ԔG#1h>Y[Y)(--./UA56+A:X"kh))  IR7YWF.oܝt2.k$M{t?S]]y^Z9 %,ϡ|27nW^v--=헟).. |ԩ*f-hn7mu`&Yt:* ؠ5jZJ$4HeU55|ZҲR+4eu0$$$*jij~V.'M411t*jտ0=m t};_R`{{(nCUK4kKKGAIq\]߾~ƭ)SuM:M 'U˻ͳHvu WW ^c.ƧLy􃵚iK.P5֋g{7[nN>WaXlvWbE ^ yef>{ڨl^(J;xxyZۿv/L ظqӏN@nn.*_ۃ֧D'-=$--/7!11/?l vc]4&R5j2B`QduuY]]qAQfYs3һw$&$ɓ'?uW wޝ{5|[榧^'RtJHطʠ1FUIEƴ{I+sĘ0{Y$I/e| N8"##233j{6)/\V ?SQQhT*գGN.X0yݞ &N{ƂjQeMqks`fsqpp(((XhQj5$ 7-ZTPPrcŋoڴI~ƓB&8~77[[[O6w["8|JJL~Af)~eٚ1cae!!bcOjRYXXx26v߁MȸzJqo͚w>{ei TM( no5Ø))))))K_ow)uS:w{MOh }ر?hCqF]artg.f(sIJiD,ZlZ` yʹQZPDXvpvpp;VG,>S8sYU9i| V,_|;g.%K(ڱc'[ bԈojz6*$|@.H[5L's^vmn~}]-@S< .wիVeggk=-%|_oܸy6sw> $Z|e`j\ME#9v&YԩSV^mȱ`箝۷oRƌyeӦͦffDؖ-cbȨeX~~~gıu/W]j(YƢU&Si֨';,ǨnzȈH))<ob@MUIs3cGn۾ƍ|>/0(h}}}[6x4Mjhh%,, &&=}d{ZG pKαǥyz)8;ȅ %`ootRTA5h.]JΝ;mFIdܹz$ Ƴh&~6s_~)__EՌRIg?~61~mllrƌ ^[Gpǎ9𨨈f{yy.]~]I c[!<ẠE_\jJ_$^Wdznذa^()-kh4¢WǍSFf^-:|Im(zF bpg] . RSRt2׃i/3w:.nsXزmhNi1 +W|PUTDڥfa[؝UgdHoھsg.\t_׏dl6.E,`{`d焞'0]UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAADOL  "]]([?1AA$X_bDW$$ *D)a":AAtvx')`a4qHb  l%#lsZpR%"<'AADgAw{Ir ' LP?ؤlMJ, I AY&uwp)# #-Ɏ  "`?Fd+$KpE2"PEO"AAYq{&Xg7g?=&HI P.$Y$ :BPe]jp)D!+ezpz!AAYĈ; BPm]FU f0VP.dFޟ :$Fе! %$ Aȋh Z!dќB] 9Vq(%QHAD`z [P5aB,yq!d Cb[/!0S\'i 'P2AAY 3PjK@d{vW" /ʆ( A%PT@񄅢 mA$ $@{ Y4_pTm$)(QA,$wq(a#z5 [Dܡu. t@VCAAY@W rP ܀>SVNJC=9 <H64QLQ B nX   4 H"$u5@/ $Bl罅ZP1Dx0tznR!AAYzPu2ЦH*szNe!qb{ ;,S5,u@ ZDaH\@]K C%IAA$-(Bz!sPփڞr5LN=K( ;(s`! C  P5Z@Ju@ -F #kZ34lB0=ulo-=B9JP渀\/PzHA}j4: B0~*r5(eאW NNC淏-pb< bzC tSJ d0/_tIS5ӉJDDT $2IOޑwKw&|!DjQ]E@{>>Q:t)tĒHy<$g(fYgZ碫eQtz ^[ dE$K:=4PWn56Q@y J.~n#)g!Uah{ wO#K|7P䣸۾Ank=#l "4@Fl'gV$":%qFL7m\d1_\ܟ%y,ש!7.a|IeԹ$Z3ic`c$ M[Hbnu0jabg3rN#//`eU:ukI:IK6cp >6Rw:\˶Xpy6vsBa[˔0o&vQsu=Bgi841\g|[t(L+t/6[ u\&0`n7#8-6 7[Xx\n^@/wJ[H#W !*ch Hj(1Xdwp( \/tBSӳw|AlJ)VI&.N J6Ui|PFe9qv3$\cyAsߟ7h_Tniϖax豉!xS|srrp:]['{@\G49\cix1`+O`m$||V`Gy1/{*7&X+z5aXց64H4VmрZn?C0 Z! Bd ޘ_hQ!(%vCׂq9eV-D^n* >.%m_z` 򎑎F H.f,] =,_ltf0Xs)Sno~Z TtTU=CZr_l7ȾEW3sQkOfQGY4 ^83vݺ-+X6J?֖m-126,-2챊z2Mqh@yY) i_챱 6 D@[B ␼{uU= P(=ЖHdنcCVèqmLlz_t7a|6l9ԥNzib+Bm1_( N#7`ڽ9޵ӮEݮ`Qlwܦ^{۵عkgԨ+pʹkCw=hZ@xQ7@ [R*CI)! (XK\^-^Oa<7uJr4(yI;jwȓnDc_Bi(BE=6|Z𷅂c:?^|nhf$ ,+A*bǜ $na)1q[lHJߩq`'HHaSF'E50֖fogƥ6/펟Ki9/6^،RHQe,xs "!b_'|:Ͷ6]A @sucoB _jQblc-seYQk#\D\LlL' $EVdAF1K:i#[ 4 /<|vϗ7XGAqߠs.>k61\6TWu7xköL;ixĈZz> h[&`Wh{@hՀ6?W=~9ro)Zt&5gra(a 7,&|9 ]JJb?/|m>2+HPux>|Cx=h'dEAk[+4z@008d PXh#vasR,bC^ , De(_PK((O5)GiU)W}Ѽˏ *w7mq~T/nm}Kkk ,S$Xk,l9ӬvypK5F .'Kllyb-8-ksWHZ6GRPJ=~_S֭[P֭3_.{ng۾}޹Zl>:ҰKqGj2(./jVM?t+ ]} 5cJXANP hݑGi/|>_ԥ},0;6luVpw|(>[/892HȾ`Ү'=W|(`䇩=lCdp*:C4"l#m٠HLz5;v֙ `xj_gvƹMNMjeO}κ=.,u F!D墧mݰ͊P1!%NaΏ5q˱ڴd oswk,gHeWMX-",z\<Ֆn-|\1<^ G oGP h8qvw>0vo1yXcqQgm۶Ҏb۶j@5ŵp4J>l{CŒ%kA&-_o6;>O<8^xxaۿlg!Y+ v7iرRP[հߖ=k#ǯ"@yc_6X 1'K(rsrkk,;okkmEnnTMbq8ͲI Aqd8di$Z)2)`#C/fF8F@FdaV̥gUYC9}yoѣҋ/ڄU]Nt x%zT9s0hx񨭩l{'qȑ&`&`Zn 9g6?5զ8o$ 4o֣O>9U=*ѣ\o_^=&[o:G_xIgF[*cŘEaX\ {=(tz _ ͮ*/FD"Ci0{1eˡ\(a52iB3hx3E!căoEXm̛70i( ͘4kCkAsS>Z[Z00glmQZl }3OǬ;fk*[$2k{=\p_0|۷oLf- -ڼmE$ w6WQml݃~;QԆ K8UE~C9yi !翄VzU Xl:h:4]sLmX4] 7̱DzeWSט4 6paZ'.hus(Wvˤ^ÿC -Cf[leg/Xo6LYtZגWrf[ä<5~v_K-cgnێ;><ýsbCu xs)v͛1q7?qp,^|! vm8C?`ԨѸ}4r ?nSN=?3^c!믻֒'+Y(܇lX[z2K}(r[!k2c%(N {]r!*F]%_P.TNO/I%:EX߲yb51Zu޷ԙb.luq([]o-ߢv 38ĉgGoEf݁Ʀ&|Mhll3Q]]{k6-#c;SO'_>_ƉqU8QRR;vm fx]MBXYUƝ RɡbhpK׭ @v sPXR}K v6['7CTMEsoMl뛚)PK/L5caE9PNXϢ'u=|il6ֳJ]ml$aNŠ/׋X;e.1$iD`ʦ:4]>6ṵ;|eouU4]|9f͚uAQ?S~`m᠃Ɖ'|0mqÍ7bGGs:2˯Q[1c&_|9=(rsspWCFl暶 >#++l1c& DI'|(vqC`kX=5 6̱XėQN&f_7z)Ը"f$9^\`bppcK?k%6XqϬh=gv)94ͱu&8%oDi޸qG瞋;wX힐mU6,^Gs9(-)Ɔ=>mK~ zvyۛ6n:  <?zk6_)mxxy\y9ÏSĞ'Y@ CASdt+on!M\~nYR@I 9͹`ġH6j`ŅꚚHelf8Ƅ̌!ZçEn84be`Dy8K^2yoJlpLv;,J=kċn#Ͷ/ΪQڿ{ߏ[ϘXlo.-\ϛgnclvm8hHO`?EUOϷŧ*t=?[thtBw=b ef̜ښ,[ sދ `ޣ C8D ./,̲kN1˰d- b6wnZ'Fd/(§݂iF Bӱ|ݜJ "al 3 Fd6# Bö(lJ9{7ظrd{Nfamsm>~,^g'gq&jkLb䓏cF<<3&bl6O>݋ cǎl'ظ>(ƌc3uTWW.b-K>l]wy KO|(-V (Ww>udjf7V%/g]=jYb6}f1 ˩A[Oߨ-olʹCeyvocM-cCV[ˊGـwyu;w6UPz꟱vjK~4ɚmjWxͥz嗟x71xZ 7c a$pUٕ/TMLc y $EFO+ƌJL4~y@v/Cq">r/ I4+`X2 3J\|=V#-| %ԡJQ4󮚵iڮIyamz IDATHmM f3ot/s!Ht'Ek p0~->x[!?읩(miҙ==Fb34ܵaf7*ƬQEfͺ_t18p`ȑ81x@\{5x衇,v4MɧngqjkkC #'?sBr-bho×_|Ça_c;-6ՀÇO y't]?LSN9E^S/1^HF'NdaA>;-lYl_VYmz[;C lp]^_ͲCh_6SޝK\CRqcc4& Nf}ĜcM"֗n_}ivAvvF$KW}6a*dnےWťXl:oN_VqC0uYrUX vi%>6mDKK3:sb+myŸL|'ѩ\I۫ k_‚׽?7B(2P}0 {@e>|aZP\Q Ya0?g[pCokr=p{<?O?w[ py%Bc-ې= Gw=#?/4T͂iDq~;ZBdی5ҋ9_#E;ⵯzsHEq UU+T)PŜ&{<^|d9_ ෉^=uv(C6\J#||:TUu 84/IA~e4 6l3j c+bɵkK3hﯞ8$y.`lCl1M F3ZOЬύ\:UsoD mMƧjb+Nz+&[ճ'6mޜzVa-q =~ TY^ズr:ݰeߡq,K:s0Fr -j'\6EH D7_Y6s.y?[ngct-ئW9|[5j, f}пs!^\sPW7z{r9W7k&ǀmo* ? ä C{w5#&CTdEBN~xp%ۡ`o rYxȊ Y;ĸ{9$0A ~U$C Dwx(h<ؖ*0{XCZ(yC yW%^_QcfK,= nM S:!h_o3)\bjBA(/Ύ-Yap _idYj d Iq\zz (5],1Cm]VZ\zU -d"+*ˡ4`ga"GP޿|0J׍Bh-s4(k6BB $ArI(h>lT`,6 A C5r13v͂;WD ~V*s̝3>+#_Do)\hY}l1X_]Hohȋk"ai,ّdmYC÷zʩWfN#st͊H~"Z ]guKhlظB.-`3ᅐ@֮E`>C띹8me")!FcՅVΝ!wlθzp=1 BXR%(=L>FZٷ5]%#{{tkloqME2yd+V1ƋdWW1C/QϞ9<˦ilB 9b6J=FfC֎uL:m>,΍k$Q9u"·^~Ct:5+6-;Q Sw7ae|7lNŖko F/\-O0W$ֶ|qCS?oI 60sذX&FPٸv2^HTk"i)qw&7sato@RY+3Wn?$#.@pZ|qq 3=Hd+{~2H0q*$c 6Kq |35dçNY񽸐eϩ(B\TOYx;``X+_~7l`7+HB6y{zmeo8利,8cA){ -Sa9\ Ǎzty㨱K9'!>߀-k"L;hA$FYPs:!W'i%!e Dw~"hi]dWۘD&sBadW,nO8~`@8W6>ePĢ LZMu\wH;"4`ę +vX?1"ȈDX ouf!Ŋ,b?4DF,ʆPV.=.#1p͗agӞCOg1cH{K%|$N.Dq^%O&2MB޽ 5d0 hO5yx5h祵f[㲼S]:jD"6ERv3C$}-E6vc^vmRxMbڭd(&Cg76ɳ 1캂0 a'_ E MHW܉lI)ud;~⩄;.&;'U/+HGzv4g3⎷ZLXvvm/~(Ս^Go"{ڒi;q&| L# 3KoxMh:$%McbHJ5e oMF˙L+tI1ߡ߹y2af}; 0cw0.RSM fËGfEԙаN: 9/ֹ%mrQp=~鰗,.6#}7^ w\u$C Lr$g# Ҏ)1#̉mɰB0c^lD CU*uhY0+'Ptxwjt;g7bmž852}~=1.C*bl7ř5T, "d0$u7<5 q݈|*}]|8 ێ`~H%$ SLZz,3A{@c$AQ&A؈KT ~n$CHj%C 9`|vR1xa 5%$g/v,'bQl3d%dakiO/n/-Mz~/;n/6?$;Yp° "1;>2Xڌvzch'ʒKFee溸sө-[rJT셁;Eqi+&5O:Y?8%( jvMWOcn3" ^3/#:DCC#k 1UUUɂ:4{aؚի1x`yyyI*ݤjn`dƿ =5)>qs ubF5f#|0;$wc#;477[^.U=z;=0$IFee% J,Gt13}PXX "N ѧOl޼)ݡz<2[ױDEF!:inyy]=ADSPPnAajN1p8\𗿘cm溱  !ㅡ_|;EC0ADW 4M C)%2a18#pƶ!C#3n280lp6a>x9|I7#Gĉ?i_~M>'|^|i>4AړV -]9sכ[o 9w^X7bЃvXd1|AYSNAuM5^ <Xjns `ƌGOsf%%AA$@YYf1 ߬Xg~S/  iN|G(,,nꪫQXX#< u_x1d* p^xqcI"AAB<܅9cG~G5ζ}ժUxO?aٳm6۾cr>홬x‰;555HAA ,[nŗ_|[nٶMacQc6m~h H  :'?LpϽয়~m ?>=`w${b]hjj'?%_8f+u 0|a1_rm=ž .&繓&a}sQ[[?;h kHADdd?NG?+W\a6+K,M;#Y# G @kk MAхA~vHɤb"cصkMUj! 8j ( *+{zR!aH@ z 2>/ݻ6nܔ2Dly!"PUGIII5Z%2]lzFghXdyITޤ>AbTUEkK3.L8NNCFwߥ(8` wm/IwciӦ*qS@Cc#{Q[زe ^/;P pᇧ$R[1!8׌$IG>}1n8\z%(-MڍuʛT'm[u=-:)/ GXgČ 5aǎxpcɒW3L:z?}z޽?oDinnbѢE8ʫO>i/AD#_C5eq衇\pQGaذaX~=C7Ą pAaXdŞXx1xq!SO vc+zeIBeEj|jup饗`!8ppaW]=babȁ੧n*2z?]G>m #G ǰCpkk!|6mۍҒRr)XhO[k+fΜFA#G`hkmwO=C~}DMx1v r Z4759aðApxO?'p<c/$kkônŰCpx-祽1Ĭ0qD?ޘ:7#ٷOo[~Ě7XrDO -]uް56WVW۷%$N/ vѯ_?wCss3z-s?/qG`w]~郙3g^7/Z3g~wqŋ떅]*oߎya)S`y_⿟랻? _~lټf_z&ٳ/\`->Yo}=[Λg;X37t#+c/`ҷt[1yBN1}x7aCu4|)~?>4>c,X+W[n׫W^~#3y_aҷXw$Fv9묉Ocuu 5qMk6\'BKW]nF?mΟ|>_w}-Я__ǨQ㥗^s,[.3ޜo}dn_"̺c6¢">}=[ngqqYa1s*{@e>c&c7y?: IDATQ 4ӦMðaCqG;DCck3gGUzTUa;++3f2ϟfϹEaQnv;Ycx_szܼ<\|. ۷mκ: s+K^1H3#1KyEvX'o]rDO -]u>cZZZ0PW_@]}.t˭cL!ksRr3 CCF/ʕ+o~>9K~Ti~\W[[ 8-~jj;aÆj:<39c:^zi>`ժU?`Ϟ=EQL;[nE~lv S81|0>cu}1۶mu߭Z\{͵SO=mjٿ_?(1=R7mڄ=βNe499h53466b*_炅 qQTTK.\z҂ܜ;lTWWc}1>ocǘTTTZl_b3߳gO7x+~džӼah`l7R$ELS ^GN'`QpwnQBCC;@ X,4I;v,oX`>p'o\ر;w8o$s9}ؽk'`ʥl :b}$ v“O=\Ҍ|bM[,ǜ30s `Ϟ==*,\ .c=f2t(~I`cm-nw`֭غu+̾01'⭥KsN~l=܃ѣG?m~g\yՕQmUW]5k֘?oCM8͒H-qhB\su1ۍII ֮]rF:!™@ s>hhhW}NJE!jN̅^nV}Jw=w߃9wW\r\r%X;.MM83҂+ֳRQQVW^y%̞[o=p)׿e9vر8唓p)bꔩ2W^uY66;zx +.w}Ə?p'.7?R;<Ȓ)S.Emm- huG:GNu{ L6mA le3{6N8x\.\|4H1$!77ÑGK{Fꔩ8?y획f?u?Atu|>̙&NĐ a %`O @ 4*vnz]@n@I.PO5髷–-Fr?gc*:H|>fJ{~?~{{h = 8hAم(n$ 9xwq!N@ _nUU=1Q盁@} P M~`oh o2P@ExB ;l7xXhhhEQaaԉ)Eס2oߎtFAHn x0X"f0$OqAc YQPXoYǃ@h^W#IY ݸn|m(/+s'ݙ!aIYlYVJQ$bEAii)v؁.Ű;Idz2Akjj*墴4J"e Ii#??Ć |سkwC" 0E%ݫtHiCe ''UUUhjjNwHAD[<!777)ex<ۑdyݺ!7/;  #˲9\:o°3>a"IRrA>6AAAAlJ6k¦e_pMAD WWd~a{  Yi2^fAAD#4M C  "5dCS__V(PC$OOBC 1lPr0$]bGqqq! 2ݻwoWb$A4 !$WO#3DfZ 6 BnA455vcڵ8xԨ~躎#MMMرc;$ImA]$!ѩ}EaaaC! 2B7F/a}~Ü?W$IpL}DFG QXXp׮]ѣ @9.B5mOB~m@U vJQJ3zK(9H tj '"᪪Ç͡=ѡ~h [ڶͨohÏ{{ϪpĈ*UPQPP:@Qk<ܺ"{!AADMUU'@Nhk߾-i/*uߦADupwmUUMӬ° @  Fghkкk+ZA4m7|{Ы#?WAy'+^<*Hz̽w.>s466[~>zV AAdƐsмy6yo#{s׾wnݼr>:p{!aF̙>=ƎO? "0taöhز MyK.>[kYρ{{Hť@!]ȐPg/xx<8`X4 - b-38 gM<|#+W4of<b۶mo{9lذyyyr,QYYg<$9MAA$caTyO5@~q\mO#r6C \(ʗR5Aj҈?qO*-,}7;>=l ,\в_$ӏ?bŦ(\0>nF`Xp!V]kqoDZ K,H "K|߭n7Dž o/rkнy7= GAA뫫3_%/teΝsax71k,px}^^py_Pɓ'rʲ,W^u{7ވ=PTRn>K.1/RĴ}r%]2|  S9TPOox/0Pŭ*FYA+j7@qb?36?[ȑ m6,_Λ={I' ؼy {-[峬}m^z ߸q#`-kjjOAƘcV=AWZ{.oK0ww4Ǻ=X y^/~?T՛G°+x3}ͳC>N:\{-[gn??hۄ|).:5bF#Fv BڑP4bOPT[V%MYF(%;!&81㑿î]|(++g+gɀ7Ē%KPU]w&Nh3c u]>}:zIN›oS Ϟ< ӟnݺaʥSsJKK /SO9&MJP.AD0 ۶5»LJ GG~Ņ9().BT˅(Yp!aFz\.\xE>|8, YO!8q;n?q 'F5VA \3G'_AK\Ņ硴JPYQbvV C  YQ}v.{aZ0奨x4zsuV]7 HAuȲBX5ƍ;^>^_? {z +xXkt/힚'3b"PU5!AFAQ@ 7~C54zѽ; +.6tR蚆(]אz ֊tAAdQǀPv!%ճ'VF%E]] d=AaGUU!7/7b.2KJw|SW{/"T8X PPą!2DY82{Y?چ&MI~qMܓsO9w(6>'$$???eO@+?0uDM"77Dm]B!J¢"233%22v++gS^BkǗ߲8ҿ$_$'7~|rR`$" 1xxk5R'gyopm0ǵ\/76mfŊL4l۶mcƍ$&&Ͱa2d0 GEN:1z(z+]t1KYOKߗYr%))4oނY3gҾC{r֯[#R$,,nwci;>^Ϧ͛ټi0x`j57OUw !7.1/6p.1_!04-І⅞\ Pz{"8=˯f0\-)]MC `/lܹsMvM^X >lq^x?ٳٷo=(6nLd5˜<7y$=/?~GLg>;7tڕݻws-[opBS j|w6' "0. vMх{.y" K7hap?8._l,;~= 6K&*:BAN7pB1yիΝ3I7n-Zۛ?8-[0zxؼyy2go,BTd`3 }nua((3Q8M`Oh}C *BeBWEJIDEE]xo2W>u}w!J6mx'.8#::xu^oL;vK,OcLtINN !eSRRʓBQ:H_ׄB0 :l ^J͛DX7bt:/Wgefr =1}Ĉ,\YYYO?1uT43fԩSnՊ[1=4$IJkRRR_i{׿}|v-yyyYAU;]t1F! ap4s9W"O㪦at!P=>LB}TsuP)))l95U ݾǰ&tMjBCCiѼ9 }1N1bS @ 0Eq1j5;w橧'NȲe0p `ǕV̙; bҤDFDWyA ;vlg֭0}t tBVBRj.Ytiw*|GXh0aADEFXX~T{!*9 _ҞH%T!ҁ|@J_/WC@B?Dv}G9Y3wA:vhI;@{!EѰ}iӦ}`@ձ(WIh!LtT8QQaV+T* a\w&OZÇӹKgi׳-[[ 2!S BA XhA ٠ʠ/*^J][-J$BTt2!!奢mh(g.PTTHHQaDGE M|}}IINFlXH.13KExB!PB 0(;_n-ǐ?8p a(  clQ_yL`(/N'BЖ]lYJExx8iils:v+w*s:~>>R5^C E+*,ױW!DVTXhsnޜsαo7dgeUk!4YfTkYJCQHKLpHp=C!)NGZeNT* ^/ IDAT LJ ^k7v@dd$99\8HPܿZ !p=NKaA!iisRI@@>OPTJ٥< o`gKS|Q( ++ܺΎB7j{ \Y[_?0,`(ɥ9.㋏c(”}W vFJ<.B!*P!B*)h4yBӠÆԓU%jtzZnCqQ99uM-  -^^X}szK󶛓z^O6TU/YVV\{EEakOqq1q&}/9:go9) a'Er]}Rړedgevlhޢ'>BӑAPP9YL]3%ńAXh(*A9KfOYdef4U}ƽTy'UaW>)93+k!99̙DoӸISN'z tz z\DNWz=JA9K&e!!ĽTyTTAt:233 Rj*T/dgӲU4X`h!9Kl9) a'PTuZC^OQyONI*NGQa!ziCVn֮];=ZgWԐꜥzPݜbyH`t '˥\e00AVu:;j'nR&e_S+4  ]H+:],κW/ٻ淮fga U>C>r9f`彣ˢ^U[Q55[O,=a^Qu:]o}Ͻ( K !!g%:֮i^;Jo(U| z:Ti+zS g7V3̜U{7`Z&NHqN壺\Y8[.\`s hj ^+h4ٳJŃ=h2^gl3ѳ'f-]\Uw9oػ7yʇ+T -$yffqqḽZyU}Rr>,C 㩧`<;s&oqњ3zw2a>۶6刚o  k0Mוv{4jƏ?kV駟.FgӦMk ڵ+'LCr*.\8OXXÇ{J ߰}|CAAÆЯ>6mo#==_|Aٱ}1>Cӽ[7{1j5O>&h4c{u#?lgo.+V,'--dǎwf/* C,^D6oތB;w;wlg)aSΟ罅w߳$lJ0gٰ~=]taɒ%U|&K ny.N:U R`{o-EY`*|<,7nJPP0O?L1-۹cxh1cL-[2牍kLPP0Ӧ=7쵲MUY{뜭Uw6mDRRo4IUn{^^.[nWە2wkl\=zWkgazn>JYU?U{nVkh83ϼ7ӿ_?֬W$""kW]mտJeswѳ;ä]m' ܹC>}c*+kyWaq ?# |>&Lo~dof>6[WɘU>0P|eT]Nnn={4y2bc ⱱc矍*dgg͓O>iLz^&NDllAA?d&L <"rIDd$Əg߾o¸o ㉌"2* &L2u bbA?TY^i9  -[<=,V3rrr4>""i')):y={BA9u$ZlnBۛ瞟ŪWz>^瞟Zm~dwfg{ždG5<*WTÄ̌Li.1aiJ1tz8a?--&GtTTbcŒfniMo8nTCII2+K1o( v!S'OŶy7Yt֝MӨϝU˖VMQA!@WL h .řTE d,sVݱUm*Ķڹ@Jj S3Ө]y7-+^~VYNLlLؓGęyNVrebۨ悂HOO#6&d|FF:n>Zk\d׮]d0)$w裏T&kyg{+*BCΞ[c#,#G6K\ߚ792~VB (l\Q+:vdLW_t1Jr[l /`=>W7B*ȈHcBq&_LL64tW<7,*͝CN7R1ssX /˙>}z^wuYQGa<{wŗ^୷2I};u+U{뿥ʢcǎ|Ï Z r3o0bH{&gv/V3ױcG-F2}tmGk~%NF޽{YrI}LMIaڴi3x~=yg{VKΞ9W_}˖-k׮Ė]dk?ֶjjbZC5@ae^\R30>={0zhcZ߾}Yx.^@yc7X 괔~)iwu˖-%%%t3裏qGczpp.^r=!ii!{vfy|EI7uRi`>t(:vӛ71cFӾ}{ƏӨN"|nsN&Nȭj#иqcF QڵIСCޭ;ΘAnx{&1*{N6ٺu+EExbw0G&#mW@t(vl3S[e1j(smFZz% <_w/.Ȭ~ٚV3FŎ;ٶmYdfem6vňQ#LQvdwq͵(F1 }Cyԋ uͷfƳ3?2e͛OĮZf=jz1=5Aa;o( |}|sť1,(J67i˜1cJ z-̝3K\*1Ø6(**dY1bc1\c<>qt:ݻugaCOϮ;+?rXO< ΈaZ,X믿V1_~܈#T*&MbҤI&/u-Xb=0ȘV9s&3g4=ژP(2tCzpZ결U-{SYx7n$<,C/Ӈ F||<'MFR1h 1V?+m}=|,\f쭫KOmE8ϛ5Y~E%h~5 :<|#ϛGxx?d2m?sM7fsYjk׮g94klRu>Zk+D=ٹccF̾}~zNdV^OJvɒ>`@-ͷ̒0lG6[YM EuCW J{" PJ^zjP+|_ ^a~ uG1G=ʩ'Aj4Nurʾ}sNRAǎbg\{ݵrNx3JI&WY, OsV;>Z#Ľj;z::m]vlm\.BȇL-k O %Pb hT)*f+l|&+ހYYxzZ=nNʢnShRh'zL`g`ъjGdyyU}ڦT=F`hPz]|uko9)N5RO܋a).qV&x{{єh:+۳K{8znn.EEE`0@QQ>ޓooQQ1(UEc0j4m7'eQ7ܱ}FꉻP]יs 60,))ATquuvn#妛cB!)B!DrǘƜFnt^Ξ=˯`̝;-X!Yʸz%{X<KMAA ̘u,` ddddRR:@JJJJӄdh⋜>}-ZХKaq__jlB!zJ¦M5m2lPGxv&駧ӧO*xL494>(VdxYw۽=}eه?Qtؑɓ'l{BQ;{E J{" PJ^zjP+|_ ^a~ uG1G=cGܑ#Gj4N} ?'iGmD!T*/Zjg[66jcV?OЮ}[{Cَ-EQ| iP 4ŠQVlqeЗ 'U0?7 B!4!B4lpU*FB!H;piwЀi?0tS:,),,`0=JVV:7#qf޺ΊhhX p66-u 92iP*wSyOΜ>7wִNnY~/_LJ1ةSg=)cOYHP UAx IDAT|B?K=rB|jk T^w~yuW!:*_Ktt40k~JjXYoCd,iuUȰ_P 5tpdz'z֯[Ϯ/ ?sO/PD>$lDZzM7'$1)uq%Zj3દM7M6ٳ''N4^-YRRoٳ'cǎ8ټe iii|W\x+V\;1}4CB,Ӷm[П=zҥKL8V$ 8WYoj{NJ4 K.eT* poA?wpFE>v#lڔ`BBBޣ;{t`ڴVOX7-GP3m9gaO;׬ǯ^ɧ`dfdЪU+MNWWY2FQy9ybq"MNu떭>|,`4Z>^d_ g̟֭7[ҵ,|=y~w-]J\p6׭[ǿcKXΜ9M?|/^_}xp6u눌dU3jH֮NofOx 0)_6{y,~z.^L$x|_263rHmƻ_:+Pc@ǎyw9~8%%m;UMKjc,pd88x o[n妛nf{ EAڝ6XOXp]Bp®]x'%(( &Ï?LˠAPPPSӦkw_&LʁK.~9x ߮r'~q{˧Ȟ26^/tʷ?jxi&x1d̘'??8Z7k12ǫO/CSoNQɡdpsו#>b2 >>>Lƕg|׸1iiL71M6yI>#9}\4gȑ|#zk6t1ؓrii+M[=elٯO>aڵ1ednf.ꇚjyy1 ;wM >os;͚jc9 G*`mvGGn*ʺ ]Hy$r {W UΟ4j믿NLLtKJJYfQH/0]ks2fh^gРAVzkWV}1W_̌M4{hܞ(iM)cjՊW^yʛoEB*.nP@1i$Feھcn*J뭩6mj5EE 333ӡ|[* [v~2*%{!UBןw}ϣh8s,s^mXliiil2u1=Xd /qrK,;zX]^QQ!ʻ ߵBȑ#HHH`ȑ=*̑zh>()'ЭGwFeu<4˖-cΜ93t~GT)T4nܘvTHw$#`e?*v_MJj*ͮjƬY[oݽY< ݘ^GӡhlNVQTr#Z!ȉ{E]g ݳP[hs<=s/ !<B'5eثw/zIc^ hZjonhێ<._J9?7kϡ?~G%L!= 7m۵ЩcjZrYnҥ+D]ں{+PF9h>yGqB|X]@Pff[ney7ɰܸh9V{YYfہ#:*W_{( 8|֭Sȷ1'.Xc V;n2־\йUg\  ; RIDD8#G`Q񉉉c>NSǎ<>]{#3*-?0 <po>Ơ\qc=–[ѝqY}L3_>7&=sm2y$|}}!/_ c{=5ځG~ݧBnӭ<̳ߗݻtOMGr)~YG}}:u 6m!=#qq<1u*lܰK/ӪeKONӦM*mhXj%@yG˂GSx=*AL3{?a8|޵S!*XeZZޠwl@o+Nd9s_|Z֬YMDd+?ؘi3ǎcy\ii_^`) 8ҥKp"7&X܎e_8w2*ٶ9|o̟NJU+jY֘o1|p6ô |2Pjhߡ= -?).)>|0>t:8u0pU3eA_9ysٔ=zK/?1gk$$l[naz7lsXx/왳lHhҥKXx4I'Ge…ڵҮPy4[G;݇޽зo?Fݻ2e1}ɒо=CqoI&KP` Ə7Y;Xh1*ա͞8q"DDD0aٷϡ-kCP` ƍ㧟2T*222"::z%jxn,6i,a!2OSamw۷'Idd$'M}Z}ƶ|ZG?aD""] 9lm[ \[dB]Wfggm,[yp)V\ӧJ;/45r[~ƝwM64Oq1qqY/Ok/{zqL׊K/~z>S4a"]nEvϟ10f ϟg˖-,xMf~ÇrJޝk>a!x}lAp{oBLƕ'WnO^Ub=2y/0a[RZ= g:\Ts[镴`#͟ȑ#y ??ÆӣHLLꫛY\ 3s,Ο?V@pځgg ++ VKjJ V↶7Q(6[0rp3Apd}УG7}!iiiңGwä1oӜɿ+B\=nLTzA!def=_PpɨohۻO+q3c3qӞz>b޼y1Aӕi z¢Bf̜EqQ#Fpf=Ne<>e*-bƍ1x`/&u؁SGѽ{w fwT(J̙CJJ 7o^3K\uUxvF)Dut;0roߧn >tJ8zd}f萡<{N>XF+xsuÇ[va3iҫ?ӝɿ+B\QݟE D* jՠV7z !lvc;_p[Jëh9)űGNm^'99{鍦ܜlV{]ӧ/ʾHhܩ=UN{ڄmlX -[.o)V?õ^ro+zck rdBF>dj!_yZ(("=k@M1hU6t\e;Xs\S۪qR$$8-[曉9_bb" Q*q΁Eo!\^ϞJwBT:z ݐ?M4bb";w|ANNynD&M\ !jR]'Q#syA^?04ÕS_TD DGERXXds??_A|Eصsw!\ہ}BT;T#v?0tsJ?|PP"BQ_H; />04x/`i!<\y מ!(I:lBB`0=Jvv6:7eV}1?;QYV4v@o!?~7 7  #zlwE֬]ѣ(,*yf  6l(h\/wyV233i٢SNYf@76mW{ ]oa„ Tk/=hhxjuzZmVhXb#*hn+/cHOϷqVZŅ  cС}]6?!WiOUU-ퟶU3wTZOqll B[@}r  z{>|nn:7ޠo߾|j%+W " O={Lw,)SشqӦM#>>}Ç+K!ځ 9;.ϗw|T8k5CD\pNh$<1v]/?Ç?ľ}ӷnƨQOK@@#cCtt~:'Xc7~˓GM@@=vv^#G$""pxb$۷(wK ??\)ȑ# s|h4dgGdd$OrمpWMrvL_r*SWT8kFxd/pʜBX`` YYY\vǎx"233!:tF?9!+; GVVffe^2\)Kdddﯿ\Ɋ>#0#Gҩ\0TymEqNty&Mƒ o`0PXXa9GFFn_"::eIIMFHNN&<9̺q|RSR0̝7p\{/N%QRR‰L<~k7ΙKFF&̙;ݻ;vc޼ydffɼ*Ky2iN:bJ]m. 5\o;;*9u*弜MsV-ZnzfRSS9ep8kd&ڹtx|'SkԤDvvr jMqy\l,Ǐgٲe|r%%%4mҘwq[I&ʀٽw\l_l.fH|ӧ7*'Ojj 6q IDAT\^~H|< -k׮?~`͛ϸq܁x*7IOOQF.]Wt;p!gTEy),,tܠU2'̙^PWw&!jFU-lO`GhmՂV :_-z0<}9r͛hV+ :aߋjԊ+Bjj*VMqq1yyO㫯D%&&ƭC!<>Z-;tb4oѼ̻m6 'hժK7ގf.BȱB `*hR 5X5`t9|u+`}V &11kй:].9%3]!2ŤBoЃ+_a$''.DTT 4_R !jB+*sfy}^T*hҤ1.NCRyBKI; ~Q'=k{%zxݫjz=~~~.(*+^-pBxxLz i!\,B! B!D) 崌B!x|`(B!jvoG! oij( }qZZ-o: #J aYV6mFtB8NK!ĕBZ*Zh}um{Fc>ii)N78QI; y*04o1c>6`ϣhYƺ^PE«yS;߇y1r !.KJlHa; |CB;#"N,ZyJ~B#/*nc6) v;nPncSfeҨ jn'OrCS\;;saׯ p5T7ɄV|Cj`~=ƍfu$''d2:fvԘ1pXp1I !~`zHsͬ]\5kScq*]F!j, /য়~BQӯ_?/^²KxrXf<FƎ#//86bN!D#V]AqsC`IlX&MO,?yO!7a9R&0~x/[Jx*OځUWf|i K[oͷrg6nXmB?Vw.8?;T-#F>\w][|}}1аa߷1]ѐC^^{2~r4QQt:GBBB (D=T[?>FXXaaa]FA .@ q|tT|BGdggܰa]Ոݻvӵ[Wvŵ\Cdddi9kՠCJU)S2d/ @aa! 1y+v>EV Bj '-- Zf}峕ѵ[W> FuٴmB\LN%WbwofY>e4ZBTl.||U]pdgg3A@CLE|WhִeӕAq11FMFZAAdgg\pH())5; 2yBCCп?wvL|?i԰?\+v`H|[oYaZ6!.r>K_WٞH54>:@tZBayu7vv9Jh4qVc {E!55b{ޅ\D^^傃Cy7|)s={xB;Ȅ&2w̗_~htL`` QQ5l^R !jR]QQbZ|M<4lhe.ev/x'UV D״ .NB!u{/}[ !D$0"Z^`W2TT0B!CC!BH`(BQ+T^ B! _)B4 !BZ!B!$0B!$0B!B!!B+B!vH`(B! B!D) p!B+B!vx~`(B!xALB! !B@C!BQJC!BH`(B!JI`(B! B!D) B! B!(%B!Dm7!Bo!B!$0B!<>0{ y!B'*Ϗi<>0B!CC!BxC`!B !BZ!B!$0B!0B!CB! !BZ!B!$0B!$0B!*Tu]$0B!B!B! !W:bî(u] Q| 77 B)M-Z|Z*x~`o>}}u]!NL&|||XJ8u_8صsG]A!Z__BCBoDG#aEsUB!\f))!==44 W5nB\\~ j߾ * [Oן#@W[!96˥ELE^pؽ\%˖1vSlܰM!rsAQQQ]GTJ~8(wD9T*zh:v@r:'Om۶U~!W3gh޲fH$0 ⊋9|m۾ggr)BZmMS!D1Zm{(X#a ;o,ZI?x0={@Q֬Y˖[1Lt|xN |GٸqYlX¼t:͚6وf V,_s=4s>Gv:rrri֬)Oyƍri=, ,ǝ?Ѩ߿_5ծBO( 'Ӿc'FFb 755l?OW, Ǵ?C1wdج6/_QfC`IN‹N>l6Ǐen{Kކ?f.BȱB `*hR 5X5`ts$&!B!j\VV&`fSSI`(BZt$͚@#!B!j񄣴=%%%e}&<B!56'xM(шljb{\pW#BE&7Ǚӧ7a*,DQ e | !c4۠FQ6EEE jϳ2O8o$0B!D%//!J5B! P!B !BR !B@C!BQJC!BH`(B!JPQFTtL]E!$:&dԚz"տ\j ?@FzZJ!u-*:`+ ju e`ē_nf-ZuBQǒٺuv&%0H5p^O\If ՟B!J`P ё5l^ 'ZMP` M\EB!D@B^CZF!B!jJBRX5T' kZMB!ޢ~ !BKH`(B! B!D) B! B!D{]]Ɋ( ZZ]om$BT$//ǏOݎJ迊PTTDq͚\UYgu`hZӸIS 8xs z]uB!D|=M7.Ndggխ ϏnjYV/۴h$-52ڴiZ, !NsMiݺ5S.Ƒ#Gk˝ͦӺuZ.gDF#M5hhwRh0c,8_YT~u] ǘJyhx .(wPz}-ssvٌرcw]v͆lps?* ^Ott4;t EC֛ʯ_lܰS,Z?mZӤq2e,υԕק_yu+WĺصkYYҦukۇ۵UYU|EF;>gdfI֬Ÿ֭́ -fH`^}bcc:)o+볻qF3gض;yy&N|(wKW_}M>/;OJJ o&qq|-&}02T}nU7y"#"x7bWD`(*\0xaX~G~iZ-^BPPW^xbHoHNj,*/x^5)bw?NGh6Ws`XXd ?#ݺu㑇F^6ѣGK/sӰar}w}QPXgtU1L~eMdega:Ea͚lٺD71't$''d2:fvԘ19z3=:KbOhղ%wqc[q16o\ngEQ‚ qOh4jWfAzerrul ^{-{[n2gddK/3s1;_\y-ZZm0]vK.yGv:rrri֬)Oyƍ*n-#aFE{<裎}ohbN'Bӑ͛/wEg]-_&o{ Φ;sxcI dٲK\{zbҤXrUsk /yMVVSɓذ~b»쏱Ym,_1&ӧwo̟Ǽys gese"gi^G<۶}O;`;9_zVYv-CN޽*urr>xabgP=ퟭZE߾JPX-3g⯿dz|R:udzg;r,Cyo>r+:.w8{uϯ0j(p.vVTlYl{26mƖۘ6mz3I`Xˁahh(Ƃw0b"Ég䈑mۖڶcg;=?HxaaaWmm㉑OC@@?X#F(o|˨QOM@@>(>\w][|}}1аaWq,Mwjҋ,ZKx2^zE!x=]`Ĉ9;9g8/,CΝ$p`~ӧ|ĕ^ad.C=dѢLehtߏ4WsNxx?8oh!//H=yW-v3˯f֬ټt&xg+mgEu qye4jԈ ?VѴJN%{*V!ffgg{IO  /*7vĵ>)00i/"..###|OO`Scˌ1ǎ%xb8AAi2tw`z+WGH.^OwRQur.>xqKֵ+EdbIJJb L:7|1_hHN+ӻʱt_}WXr5@C#Gc.]Y~T&ύ7l٢xg+mgEuOBE&M.vq|4*)U5  X-[bJFHNN)ɓL];߾xv__GFD&b%oum&O!CxN  yh×Mϕ4ݝ? m+ܹs|M^6;[))?\zh;N/wӍ7| ,Y߇*\QT**F<8;+҅jjjj}y+v>E㠼cǝ*{]o``Op.vVT왧zf6mu7:ubj 9U\\Ǚ7>[lCӺwʼy"3+yѽ{ R+QFՋ9s IDATC˯ٴi9i&j3 w{̝CZj*_P3ιW/f͜IX,Odԩf3zHOg欏,HnN 9qsg=I8z˿}zV8q"i4hЀaƎe…L ;uĜsGaСX)ÆԩS,ZU-@U9UT@ ( ZЪA ~>௅0 Ta~G\;ϝk2.vQ7oF)3^QRSS1XNEE:M/(8?o6^GLLkℸRݻw{7{ o}\7=H== ._$88<&Ṃ^zs^aA7IK;l?~k<]qKښ?f.BȱB `*hR 5X5`tmPVLNI6n 7@tEv;TMKMaT%AEa֭ӵK !< }1/.\3<[nPBGѕ^z |&cGE\zEQ  QQQK#!g^wI y:v,q r.F:pEE&EEn/oӰ߲`+hEt1+PPhڬ9Zۯ>qR%GD +?m3( -WWK`C%7 GvѠmL'[Rr3/1Q1\bg0 J,ֺ.l6 ;;˥wۍ7r4ACq(6h١#6,ytoV@ ]ZLE 4MҩsUQכ:_}M"?.3=~)D0b[uյ{z W߻+g SyzG8'bVs#9xRiҥZ|BQv;fbw\h`UdV̙`NƎV ZEEV_V[y;ttC[ݮ`0U *\L}"Sjͺln+N\ՈKqJcz} btAܰ)OÇt?X]=p W7ddeucSn1S?_8JƋZ^RtO?X4Ν>@m]׶50e+&Ae(v;R\ݦz"9VWй.{pg"גGgTC9tW] \?};4>ŧP>U1;6p'DАZXS;6>DGߴmʹ-(8AZ5OmVxŅ5$'ofW;wr+:ӗPW<N ^à ӥmNK޴:~\Q*`Ώjɓ'={6TTD>|8=nQ5Jz9N(ͺXb-`uG2esc ̾gרm|5U'=;v~_d yJWmGRaSE]᫱a1cE?s\jj^ҫJtqs(6mˌϵ2 u8apnxӺ8}4cǎ^`˷[7vșa w: d X.A]Nh`6AA!l "&5 9(fԶBl 妙=%//}I^}uzӛwͫJNvc^8@[tu|...fʔ)7}˲[Qt -]Ijp"4{ a2ܺ6(1fsg~S'i! 2! > g ?3ӧM/>wK/cLD[0e2gcJ:ҥMժ?ӧ٧+Z̛7߭zP]9Cd'!5NVBIq1B#\cn&9XLF% 9l,7̀nV6lXfM;1xͷ0?k׮aUDDDO~^t)Xp?^Q;vl`ǎرݱUط3OV`Z;wKwvw*?c֣#ڲd&ךâ9FS7sT7@:gtٞw)_]wyɯ{^v |{wM? .j:ZhߠֺwN wiߞmQJ3ְ1[qR{;zT8+/Œ&&O꘾lr8Ȍl姤eێu{ ] 9fZOwddm,<5/?7! ? w=؞~iLrrryIll:Ab2 /_eqcNDx8c7n)7Ͽg}3I~񃛁a>DpZhUv4v*B2-S5Zlf,MwlXشs (̟?_V냿_~_=~-;02I_`'GÎ|L];0.=;%_I=m2;tw9aaa>s/Cs;+=3X On=gjی)CnLcړr<(+;e/su.Lr}HsuVMwwXx) /"(0qҹs2<',2|eʦVݪ#wҵB di`n-n5b3@EddS৶FPl3ol6q&z۷ӦM"#+ aΜ9=hJ +sff:11 bLw7]8w\?RfT^tu kyG>!mB;sMT ٪tmIh~ĥ7gԍ1n] DFz:qqeNppPVZ]wխZl<4l̙K[oeႅ<|ZNݻZ?@EIJjh9O+PKsi8tί "3=ظ>RRRAظrՕ}.{oRC7{Z5iI˒Do[MF` $[\Jgb{k~/j~lђw}/Lb5eYgWǝ9L&#""M3::I&sٴPWGߩAj+ŨmVK*u?G瑓Z)A7Scf1p,Yʭvgu<83?ěov& @AA!X&>GGri7>{>}tgTK߻vG&NLo̺L+5h4RQ44l5 ?ntЁo#/3~7ұC2M6^';;&7ܙ 2g<'/BԽ;ujA| ?h,|S)E&>L/5e"NÎ:cqQ$%%ѴiKqe_ޛSTHXɦ/0kP)B5Nh/.0wObb"VV˽92;̚9̌ 2325swyG/SLdI,%%O8;+7ꩠ. 0PcGQk K ńd$=3)vQݱc M[?͚5sL+2Ւ˔r{~f}Lzz̜5tgxL9{/SM'1$KH;yv1iH%7 %:!>]WS Ɔ Xz YYYdeez6naÆY0N_mfO]&v!֭[kHKKl6_q[ }WO>远9s|f}}> 12nȈo7b]<_m`WΖ5"&5W?;\a>]z41e{ +cءc{F>1F1M~T*zmRRRiب!=Ցp7fSljB+vbmCe5c`St(j#CD3㣏w]s2{\Ə@XXd;S OĨQh4 Ⱦ}ӝ;$>g}} ׿Mjj* 6䑇v{  Mw8 '郏UB~1i{[EЦm>8KQhh('K/be]*qqqnwMU*Og2FFrcG/<y{&(0[U*>]ä&hb-_M2x sR x?"^xEf>c+z]xÙ*D9{&46QGkµU|_ >`0@ "tf_;bnȑ4o}|i5h4wطWާdhQ 30:Ӯnwy۶~[k)Ćb-4FI,;a_^TeC \T`P-e-WbAg AcY3[jfF#{{U{s:wZc* ;}N^o<{{o&|^koo?Ta_I1F??~|R]}~_*%/GHQ$=|p__n\[_W2&~~VxyrXlPF[_ӧz1~כoy ޿{ի k&DW<9cw7x]ɴ!mhGTMxַVK3lCc4Ӫ(ʷ[u=״Zuw @wUkz*mu0MLt6`oz('j<ɲT'/^jH&6:*IӦ*޻z8욭45@mC9nͻ/m}0* t"84IDAT\ V2]4]HW!V *](v>r;; b4j5Xg:iZ {'0`؅~<*<@Ѡa\9g~a\_~_׊oz0Wh,z)!/EF"ɔѝ?/*xzw?>9FL;߸ZQd%ݣƺpsEѻR$=vGO|sHk#l~vwѝ5QEWX$=ywwgMY9xEa/MPUDGOٕzNsOp D` ݾ#JwGAqI߈(RI/'L8Ot2NKI"M4ˤHLʌHB,Q++먪bXtҗ}qt^!2əP)Ya4ID=xKXW4^RjI"HS+f$ 1s! (gYIs9jTRi<^ 'K%k$; #RpNIh/KC0BI_&҉Ng'y̺d. ٪ óAү3K$?pfC{95#IIO)aɻi&MPzH$Y5aΡOBlajXy8:·³c,ݰeRI& Kax<%$%2B(<5 &dyI&6OhlMG mᲹ)S&98Q4)$^HY"zR @P1>f<8Ia5硰8v\åB}^-tP 4F2)KPKÜTR߇ ٪tJ$9P mh#Ԇ64,9 U cx8~xE&Rԗ"{4$$ s {&v!jNm> (d5Njȷޖf*|0Y+YR4^GS(/ J|*^h;YXll÷g%; &RI6 l¡3_l#YXrXOi :I h"$[Ÿ'qOS|OKv s9Fy8@(m(UEwA[ŝPbI Tc/NwAخxscؤ"s]byE(%{| .DW<ߒ ˏQ8|!A0F)HC]gp<|1ni|(,ayU9 Ws`X9fT j!d5 Y|oISZhbKMjj[\w0,WgKc/E|B!"N. lxq,W v[7WJ΃kbqWapmP mH!$Ft8Vs }ߢy fȧE$p:r[t= +QgкI8o{7qB!e{o$JaxYo!@,JVFB,.zBH ],~fcP\Z:3@׭j_P(m>t]' @] &Bײ\r&불7 fת&m*m4C pFaMaMcؤFaacVAr径IENDB`luckybackup-0.5.0/manual/data/OperationProperties_OptionsChanged2.png0000666000175000017500000016552511531735047025405 0ustar luckybluckybPNG  IHDR`&{ zTXtRaw profile type exifxڭi#9ns^Ix^?̬궥ԓ0{_$ZȫG|29~R,Z=Bܾ~nό˷>~HzMع'Wy_/c2k;oIH&^U-d~ۭG#{>cjRR-V}T &Nszw>$_~%obQ>}} (5S:{Ed7*yw-R!lgrxSI;tyWZ䓍Wg垗i)N7[.[dY8QΟgIϾc;qgN,~O?w(?NCE}׃>c)DM77 q^Q4'5pktO "VĚDSMwc#>g)yA改TӲKϽYkT *Ut-TIi*ZTѦ]uSJi8 +VͬYѤ6k6zh[o1tZ3Oef}Ete.[îv}tCv\rKvQK_#QK'P~}Ea%z̈X.GR)#1=K)ՃGew\}qCԶSz"B| wKg+ui*7z6dž;mcnz.mM%7ժձ7XSew@}u@ղmpƠ=Gw4#f%La]iWOf}ځg,9sEHژks{.*c+*%bN>󹅿t#ٗ9[CmK,g^twilD)u9|D<[sK[EXis<9C1e:"\Qy֎Ӧ 38#5x~ٺ|.uzco wnPn ^з[lXhgESWSQӀ;a: 5Zk'(`p"jY&/)-Sz m4S^-Wu(d) itZ VJHEVDd< E/"#6B/GJ˓|GȼU{HKi5HH0*r `OD{!U`*.Z}Zِlp5bpUm3 yH]V.Ng/j" 3 p_ȜL:Z\g%(ygeC֨ Y%NEXdN5ɣFt)5V*-{e݊AGR%=ŵȸEOӫVf}J 'bBjgQDOx~gch94:J}Cp N :kZ7n>)NZjx>mFB5$OKpG0,a2]pnN zȬNHnEl.憊1 ETm?nT9>k.LhEɚTϡyUM# < -ÀG Yn%Aӣa4vl?AqN }h?i{gDnJzP[q+B!t r~N䵳?ՓWTtA]} 0g̤,]r/S/rM}6b+_#idY:{@>{gP|3B0V?_k}t/'wOm#L-c5[=?d0߆[r,9yHSZH^OoL_w';` egBV63tlK/cͩ^;ݏ7وr($;٬SbEz )r*zegGcI%Rji`jZj[h[i;/< ?ˆ#<ʨ>3L32l/Š+ʪFvi]vmpI'ri5ya?{5wJ,_w|h1T /YY/ilhE 2isӎq;wv}3}3;guso][Ŝw5ԢڀÐo`5Mw{/fNvȵoVy̖}ݩ5%^{mck=VV,ļIƝXx'1lt̛crh(gHmg^kGx-b`e*Ȣ ,k/uU@ "'aӜovha= Xo.j;A6 `5~o_6S׌e Hq// WGloނsq7 X`}o5x Z^>ЬcĪJ+6,FVL(f; wj-X&kqgW<,]\U0X3R:jޒ h |,Qޓ%<;X*kq{/^2"Y=u%d$`q,ueٝeluu`ڢCTnX;zK[N%b$dK*%Yޞmdl&23E~ga+*B  ɶ25FbMl|m()DTbѠ^ǐ΁Qc潍gL,*J?7 B1xmV Tv^3؉ޙoEw\(x֖#)eqtb pG䍡JaugrQp:f:+uhg vXK(a9**xAC~В Qm:d L |L kղxط՚]#,y(aBax0GPp|Jid[*Jfy8aB|!mgX] ~4H0fa0؄@^A3@Y1 wV@\ cEu<O2KC<L0Q˅2 el-1Y|w hM54ASІPBf \Iho3la|/33iҰ7d""M;T @=dhHXXUup:Nf,6zweWTq'p,~XE! Kr`M\@𞚀=M3Yo9,gYvAL.SqΜʓk/eN`o-3c呒6_(Ga8wpUKH$lu =Nlцzx]iy3\ӡ +@ ,Υɀ"*N\ ޱV,7,@uldCek:Xч*f:Xvczt'Ag4{$5h%1Tvj-g,Yv'N| %$!}5ƈ:HC1uOهn@*bR AdL 09J2}HDX>\x0'OVgXɀYq`g9?jXJ020X0 JXF_bubR[ ÿtL{kg[LL]AؒpD|PZv,:DPl{5nDb}GVϊCtwrl]l-ف>0ޱz FA Dܡ@!43AJ]X)*,9bO Y$-v9`8 AY!(FbHRD <^4^^g֨Hd>gM@s<'V~C9m; X6Q &,4} ,*aK1`Еu38ZKك3F2M)ap'^Rm2^SXj? y0hk;*>Lrm,rc/Yed%€$,85 G[qy7``H?.^lϒCLnVhHQ I6 <?' ;.0}4xiT bx 7.,7NuʉbH68fA& h@Ħ~jdš%PgI<IChz" GWZ˶.N$Q;>ڔ w PU2kn}NXXN0 ^2C'!ށ xR#uzϸDxIa-SPb !g;|_Ǫℰ r3@ظ#fӍKQ z?ݮA$8H`  'tbFڕ\@c` _nI{0X{] p$k-b/mH׷L=eFeX"Tp?IiOpj(DtnW3HV ZԐq)!rc`lCz,!FԔEEFFrgx*IᰇⴀKWZҁ=(iE'8fʨM{SAw!T2#/=}4cpDrq7U|a:1+Y ~vU2&x6WE%;|yvcx ;+bDC\y)E&K`Mux/јwςr(A:М:Ve/K瓐pRu9`.3v n Wf}2xKCe$$Btmڰs:_m3`a J U,#֦p]Yi bL<vLr @y!GK.EeV UdJLv4 ӇQɫ&Y&a Mߢ&n@ h ;ΚB deȴ g=rvQ*P JDOJa+;:]Ew+HǍb 3<qtX3\BP9gk<yzdq;'9dK&H]C\8BK+\.22pD֢Kȸ |-Y]d#`% ,&a/1H:$A ~>$cQ+S2&z ncYRjtK L jNF1wRw-kDQ%h>!-Tl Jx`h [%ww| F̐9͡U\M-!:5 O=a.5+V.ǁo]lY<{ͦ0S(OT /F|h02+0-=}}*pa拰KAX`|J7 VŤ Wӥc-J>Q)JN 9[=.nbDN,(| ϦH#d$nP$+kP5;Tyd{m/6d(:|=|[ \2Қb u; -bԲ .2c;{%&8d_ >KZU#\'D{.Rr˺`NEKЋ+{Χq9ßA-W׳NX ͺ\;zU+5abV ;0l'V {br-C5h3?A ӹ+ei=02I'Up7 HgDc@~%kv*\ ~c@b젳J+{ vQ7+H&txis ttYV<890@Tv{ e[ت(t1'h׽`Drĭ:nKDGAayˆb==Mq cMm-<q΀TA_uqQP`pת'[,ll0Ѭq)zZC{b so`k%̝* (NE(t M|ٍ?UwTsdɊfzQ7{Xtq"Gbs]ơ/È:mhHÖ*>nD>q`?p1q2%\a¶OvvJh0KP .Y e]Y ZaOtw`D|Wʨ 7t=6(}oh*kU/3q٣&jW)us/it ^hCؐ@*jG|5@XbOu~M(A FWwG|#:ق"a+0PifUbWTϢ)n ޼/ͭ7 DY<JTrW=; Mpt= |\ހ%V4<|a!&:f)Nt{" L^gQ7d:Rҁt% iNgK`d?.Q/Lր:5I`B7-uo.aP(R,64/Z@pMm( dlR\S: dMkyfX?t|6\r'κx:0o-o-o&ǿ#ol 4c_=s2c}Ge5rkă5ZkA;Ճ>37~ (6Ӳ "wNdX)(_4e467_9%slȺ\s*`ݦX`moe#Ww˦]un8 XAc PG777!hb'|=2\]j1ƝFPDRf/ӀEBw[<2fA`Y0$)t)+V*(Ujy[~&Mپz р3u>=TܕvlRVFJ]zoDq.tѬż2оZYVox}Ȳi0I.s;*řD0wgjT4 uLFGX}:I QS=S4ob՗2-(Q"zՖN>l:P<+;w++LBy8onM̐ h->>#&\-bZiW$+/aG˨Gf7}Ҷ{sjuLU^h]ME!SGN's4 0*J3;¤vU|vB)u՞uV`{+Llg}ݬ( Uu) u'{G2MUEaǞ2uW[դo{lMLT*X4͖3U%RxQ?jWp|.S(-EPүS"\rHy W(baAҊ./I˧PTw2f=P9a[b +*WT*b<+GA4ش(]pOx 6!H5v7:vw%_F?B-$KcET*an?ۆ̊2sH8E^b0d/ؤt#*e m&.4+P8D+ !WH9p a >`Q }N%@NchMݐZTJPx"z^cc&ftR,a9Tކ%A% ANnžae\ۨ.u*ESׂc2uU@8Fy(auuB(?:UP*&îV69eM>{31̂{na mVU<,jRkmG&COELD_su*WT E崜TҮ*UhL@Tq5TL*AEh,E"H55h./tHR mY-*, y_Ke _ewO쿘 2SsQ %ذ՚whUmLܥ!CЏ@s_\iMmUHI{o=vs?a㦁r]eAu?kTX-OLsfA[< tռ§ q:zd*^TORqwkm䑋Sl&$P6e߁:k8%Q6_KI/Fʯ<b\B0%@Y|7(QRZO TIcǀEvmZG0_Wf{~}oլ/*]9]? ,}yPѪ0TaO/n{+7`~'yxw%~B`|wVu2g>*|T_|T_˟^@q2 k3g>*|T_ ?Q|-Zjr?6r:U`uksT:TِWeQ-)G+Im N_d%fޭK\vknзTkE2yYVRv%tZP0l9=BO(<-Luu&t|P2i$&(duR0 hϭN:U"%'\wFAU"ҕw2w0CuT هCHAT*wTV]Sd/H}@u;:MPX?c:njIKT:;o6~TtY 7I((`R>02; Y,UJQ1wv&G]W ߽T&:̗>8zJqEE^$ XThvULG"v`I'F9t] g|0T%; Z8DhB=!+r\՘=X,ya5}z|iJT(*ħZ-NUe1şRw)tp_ʙ:Pד̵-<4&BAY-jFeEGD@tcRjj77Yto $ c+zm-JWU|D_埒lblb Gԇz,M]GցAi~!\m$s[ -ND! m;:J^EO wOrUh8>%ɇܟ{:3[-O;a Zkkp hep>E-|u!AJuŸ'3EVu޺hfUn!r:hwhX\c33ܚ^ fjfTзhH0'S|frJJZ6wlbejM9slR+L23Uݑ1N*Ǔdz:0Sİ6芘l /> Qm,j MME/-m&*&N: > W9T ߑAC~ L|:9TIo {6gT'$գAb)}ʭ{X % 8 dTap۱9$@tCV?્6K,$7(;g2:BgÔv)B5䯦Q+ Q(3 ~ixǃsBcֱ' UcV=[Rp) L{elc?^YoFZg31j=|?<μg~x8Ǚ_?KʯgT~819~8qZ_)mqTK?#0V 2S,㡔Ժ'(-NNNt^ \|AKjqdŖv"T]\Sq:h@QCկP@~5-w^.UK%:TuD}[>(|P6JLQ)Ba|8%P{ KD"*`k@oVDV*PxJJN,뾰[i, >V^^dڪg`}| ~gǺ| zHT/SARRM,I PV6P*B]9zgrRtNSTDZ`,W:УF>&w xu9.JjS`k0HFqr+Q%uVj1u UNj,o_mv{?~We8ݪh7NAyHO atRMzH_{?^XQQOGt lh'`M)RQ ( lRCڷ}fAfwe r0ښݕ S_"@|@"w?4(mOfrXIbE]F[UkUQQ,.s11QEF.Ġ!LQ9w۹)j.dK )^Xu bORk1'hx#H6tolQ}l*C 6bFSau =STyNV%,*lwٮ({僊ZVVҌUOjG)E.Qf:8pXdU&|Q4QoVJV8t)Uf 芽 ۦʍ-`LjڪD4Mkq#.q]S7WXkXQ,~ؚFB5K{~J7ޤst<ӡL4 -ݬS+UK~&5e6kkc5[VagetاY9 Aixv2n0wԭ5kg w5C|k[_w?ߊ7>Oa.1|@@ y%۷o>{:#5 LeCjdrU}YPtV%.k9Q(3m#6xjV3>1}y{17ޯ^i~~wW-W-W-WKUy z^i>/A+%y=4||^KJy zh>/AԊӆ^%XΚԶ,~RzHtrժVOW8Zg5_}|fo4gFgͫK_ܘQrHs>FP >B_]W)uV'.RʽrWTZZڮ]SwƠYvpaՖII̩*#ٲ'U_U5CeqLOU=z28BIQM9n'z[:,Fduj.ߎĠФ47jdIAʙwNҪc+`Ϊ[/O{{ y906^v]Mv<薘MsniY+=L3^ jOUrۨd0չJUu-¬{oy8T=)ԒI"(F9!@\ ֹ?U+To"RNCM`SR'T|UYΫAUՒ#NVMZ]Tjo'P.Krl^7̪oU`&Cwu+) $1)b.Dኹa?UKIZq!L7"2ETaht)jYeҍnv1'UGVn4p',r{GT1ē?MW |Vo)L6k\T/5xP&z6ʆ{R;O km4fDlQR3.;c ^RNUCᔊSSV:rm tіeh-u P0xVCE*ˢx$*@R^C ?^osPMX)yk\k>`RKX4%] Si%:XI}k.dPK2Qe8QہKY* 3ʽ$Ҵ{fdabۚY) Kao`FFLZGrE 1I :Y Ɗ6PTsב<,iXjl{ {w" s]ZVCߨs֡}eMr :(V+54YkTaS!t@_uISw}TթY:N]`[ꩆtU:g=Z3sMR;l[#ЦaSOQp- tݪ:aȢe~ ]vW-[Z}}2GLM#b$f[7?K%bѽnvb& 'Bzpk2hTTT9& ( ?qCfdҵaWϠV_țG0Vr5a .Mq>Ls[uS%}f:fPE6[bG"qjeGЯd=8i .@*Fr*rdWU,=yEv`sԫ[*:efrEWc܀yԱU+ޢ:߆i^eT?G+yazߤwEK'ijMTϖe8.U~$"f7?TWe})^tjyj6Ygw׀ c`V]j{5nol 2uӣbX#땗ĢO*UVs;<e3eVXlυSR=*ce+ދK' r9MaAOTo0VQPZUn@IQQ.yPp7.BU3񶣶-L/`234UH*ӭEy,:Bjqצ*k9Qp3TIe|!=;bFSY[TDتc–Jv[]mG%\/ rq<&~|OՕ=&g_sr3nYT9d͊)Saي:0Vӂ{alLgP x";~[~N e:DKj*Ĥc*uzR`qo^ ~s x8z-Q_}Ϋ?/5ױQ^Cq |7~ Okw|e7snݼ֏,y;Uq( j9һ˫4;3Geက\uZ^Jl'(XN vQUnt@j7`3@a7yZFTDQ嘘 8RVT2`CvsG|e# 0=B;*٪=ab|1jhUi%NjRs 9˺'& I& `ߏ}]Wi7wLXxbbe>܊3ǎJ:|FCu~-A$̗nv(ep/JQ{ʺ NoS _BoEw! Kn1݋鬭Z`}!͟lt-~`E`E`E`O:zISTV-"/3[|敥\p{ 4Zyoy/FuXys)~dVX g{t6ngu _ڳNߊ$3u"&:BקwCr]=xWe<^uP|٦h l 4.'lk=lR[㘪J% ,5pĺ'F_)ܷ4;x]4elUx0,cтYSUDN? RU@עpg8|&jJ#W؅E|IDmbw5DK{Z<)=SiMegIC.·Zn @2*޼Ue͛@d Fהq)<1 vO ]9>ZW,;tڭ)ֻ"znJpd~j}jKp.wzU3`Ša(Ũ0C+ixktMv*6@9~Wr]S頛Tec32*D& <R1ag)gA!`5 )Q߀^)d*ܺFze|,qWqcj96 ňp Ph_WC5Bh!u?T)_-놃:MR?6|ZCٹUwDE qUBCme-'F-0tI^)>1@TSaZYdLQ:~j "q}Tf:B,JY jeoZU.e^ ΏK#pA)m* }3t#Ragmc^wTO|c0ZT~ (2&wEdئNU5UO3LDDT(Q@^i ;"l+|}vXE>)la<. 20\rtL$ĬFՌD*au![b+;N18\Z0LuBOVfzBk=@ѓ[5+8: >UtÎVi0pv#{}?FAtU3נ[Su&b` mr!S W eFl:[AU^ l*>=Z3K 77롚n򳋟TlcL1@|Q}U[ӏ"4wzt*ӏ?YQ](6>G *4Go<˼ 2ߖs2?,'e«-̫ۍس̻Bg ؟>BXYׂ2D,; W*ad(+ǓF)tՂ]uQU0\tD?/AgXKUGYO3܎WLJ p 1iPBUZ-QVOu]LEǷ/E~|/+JeoaC ,ji OSWzOw/BMkgE^^啺J᥮׏5?xkWP/zʧb]<_'蹍^#YeՒK]a/U+:3s{$yԯ %s]=G*ه[_O#ok?~W_i~~wcKcKcK||^/KJy z^i>/A%=_2||^WKM_S?`j)WWȁa1SNZU:SME6%:~[%OWT__%xm? wiTXtXML:com.adobe.xmp 1sBIT|dzTXtTitlex I,V((/H-*L-.N.IzTXtSoftwarexKLNU033PPL*KW(K-*S0331QU*KU02Q0204P IDATxwxUW@"RDXP" M * TЏ {{o#’ <7Wٳ3g3s3eUQ.*!B;ZB B!$1B! !BI B!D9$Bq)`@I0ĭ?[YhPT !Bz=* //o% +(( 1!EQT@T'ٺNK(;14 ޼:l lll899hdC*C^^ӳNZ ''D|8JV ssshVH%EEEFIJյw`^6 4\%#?w쓝QbUbh0I㮎(ߣRpppZ-ԟ[feeҨ7H~^D65 *Ov^GU݊^'**Ni71Tb޿J;?iL`4CX1êU89H{I%Vu0%Hs$s"Z]ubji0A2 RXE1L$CkPy5۟wP_dIbx!8j_VQbUb((c( ?36mŋMnyg_?ϗs*t:;6nŋtѯO_~iiixxx~\^lT)K_dYbh4VI{1ԡVHƍStZaÆrr {ߛMVY{ֳ2Cʈ#jM˳d%q߮^^ xhֽvZNII^ônӆ~9s+e |7QC`̌ Fɉ'_>#ȑ|gg,YwkŢ/Xt 4M@ceUCt G|Uy@"- 77 qt쫫QhWWW|FE7žxst}Y}Z\oo4 FZoYr%7 wګtѳGlpףt7k؍FX}ïdXo>llm׷ok"j4;v,Geԩ(\VVO?c߾}DE]Ã.kV*%y@rJ ⑇k_#[n ǢW;ףҾȢВN Z>>q!SRRYr%Ǐ'11'GGwhϳ>kڰu:˿ZG[=ڷk7qvG%;;p}xh4t>M4 ]nzoٲlʦM̦_tw9'Oh0cd8VX5ݽԱ46g̒%K%0(';;_}AeFM5F  cgghِk԰a|4m1'MƆɓ&10W:)aihX` /`ZjI ̙;GfÆ fxWye+L43k,2Yt)QQQ :''Gxc*.Y_~TpXtt4aapwQ\|L>q,z9>,k׬%$)ׯgQ?b߫^UcҤIlۺ1/M۶\/ #3Oέy͛Q{ui`<==ٸi>`k,=[r\>KKWV]Um _ӓN^OLL՘I&Orr .`ر,Xzؽ{7<4[ ..,O/NH?*z?:̊+dˣMVZ͓O>I\\,M\uA1Dxx6l? gȗ_.iHJLb%8;;y%%%1b(lmmxŗƍ7v-$ l3fgaQ;v ɬY8?Riժ ykֲu6ׯ; EV\2P̧2v8xS6ldΝf,ݦj* hF|B7l >>x$-}v1FƆgb„X3|p)̙HˌZVD +{Zwϟ7|ΙC]CE$mڶ_b|d :ŋ9p@e]{323ܹ3o67e.__2^uu@&MsvmzE_PPP/஻:oǎ yq.?_i._ NnӧL;?=j4;%l)&100WUؿ?<ܳr]hܨ1qq\FXU( lۋMQTtѝkri*,9[z\U>Kont*%+w ///ǻ0x0qD<>_6СC9zNNNtXΝ=^UkNo}888о}{4kk:uą+ +,,,9VS;[{jMrڵjeʕ7in*|w<4`^ٹ *TUy(<喿p<*t6n/@ݹiߡ 9{[[[ڵogg){tǎ˭ZneR eU63gbccSR҃.]:sǮ2 7٨z˜V&4iVL:#G2}t|}};?UJ܋>|{{{ZjifccM۶mjnS7;m;9VFDQ}v=T:vr,i~մDݟ}%\>z5CO~۝>uww-?z5CÇ|ou~0f+ٸi=zދ)))kWKd깸+#IU{3;}tof|޽{ckk Yo#joc0v9鱺*2̙$WH@\\ӭ̼S̞o@F oʋJf<#޽Z`ڵW KڵQm۷3`Cs﫻~:~U*-I U*6⏉*U!GDMx{sY:w=zT*5>}ҿpAo=Ezqqq( fHll,.]jܱeSKȤQFb))gLJzzzzTf^U֭J(oYvd}?ѹsWZnexXUt|Ef&bV͍ FŬLHH0+g6Ucq%V%y=7&N̸cy,ZpױteAuCV2,Nl߱+->^znlܴ6m<< Pҵ [@QQ7_iF*z(tU-cGqrro>%mǞ={鴦dђu֍];wc׮ߪ1ڥ+[6ofڵ>aB7m$??ݻ׶m[yd''']Fz?Qי%Wګl< y[;[^{z77W&u==}?PPPoL{wjZ{1~ p%fxo>{}7?< WP % h~On(_߱}'Nd玝?aQΞtg!55֭[طwټV^G}Feܜ\GӦi66%;N_wNc׮]i"-EV-_"h'&$'p]̙3f̬j ._1Mܹf:uV{LٻwY9K(?Y(~hV^mZꈅ8׷D Kob3f#>{?3iԨ`C=r&O?tRfΘA+r}-:Fyچ{p%Μ>S~jZ[p쳴߷iэ|VCU1⫯*W%1)ǏĉrhڵדGDGG}QO>,X3gЩS'ضm;GR>3p<08q[lap%VW Bm_MAA>nl zG}TQf}4{еk2zjP͜ٳÃ_?33y',ں*M*JVVqwsg >p*񯽊5'O0gyT*uA8|0șuf\]κǧgn>1Qquue-mfDZ(23OsN֬YC^NY\r]վS}&bXw߱j*n/M> <3ϧ+WƬZO?5kRXP@-Xdi3e+;Y Wo&nnع۷3 /cC ;[9-ݝs`єלٳHNN&4,%K$(TnĈ$&$ۮ]QѳG2uCUN<qPٳ{7tĸq:}<1!ǎѳGO}oᄑٸi#~DxrKWoѱ~~~fGUEU%碳sXrUɐwڶmǐ!ҤmOXz5];wƀxjS8\<^j6n;ڵ_43/櫯b׮HJJۛ 'ЧoJ62R[o`RSS nڔٳp`Ӥ$ϽQӵk2lĂ Xl?3E6 eURJ>ة;J۪#UˋիWfm|w |}}y6l德K׮\͚j*cwU^|XFC=WȪ+x TwQ۸kc8Jn*Dn]ڭC<*$bJGQbuİ,ACFINNna}QU ;`prssu5ם^GCKzT.{6},K k_VU9Q5w;$)Z>~E%VVVt:zD(V[DaaZmcɳQbU{cXXX`%9jL^;/*Fcv]۷#)) u'''4ybXXX y9dggKĄ&ۤlw,Pg$%Zw%Fqqq!//O%Bqݝ FPVӰACEA!RXE:1B!w6I B!$B!BC!B!B!P!BHb(B!$1B! !BI B!$B!BC!B!B!ίzKWXfEΝ?Wk"B&B!BC!B!a퓓K\l,B!װ KNNܹDHh=^WxbAӡhW͛`*Dž IO@bggAMV,;;+Օ^^酅siceeM (^1//]rih43'sgϑh+++҄B!Վ9LHHSŁI=WWΟ?Oz Ξ={g޽T*Hjj.\@[%yyRB۶mQզ8;ЪU+((,ɓݻ.]`cccϡsr&=-SOqWL޽5//[B!$1ZӦ!ή]υh׮-Z;;{\#??/sEt::~{BEzFh*qvv]vh4kOAvQ?GZlɎ;s&aa4l'''RSSHNI1~y =ڵãx==.sӰ'@TT:w7wrss_j_pp0III;vlmE7Ȗ&BZnՊ.\;{[:vꈳkZh9Ԣ۶m^z&8?08pMOO]!6Ehx N;N_ 77w}Yi˿^  6nkk{[uҥ,_ݻw˞#B܆F#/ooi%%4hWƔI L]^#B iIjJ Yٸuk B!SvVᤥI,[C3##5z4r1'*:Mo͢ 8} *Tmߖ 'аaC~,^d;v,h4˯q_@nNvvvDlɤIcǎ۷oO<-^/Vˢ{~psw'S$2gggBZDQ'))oo:>n0>.LJ ̙̘1~˖s=GFFYO>W_{ƈ# ~+Ǝˎ;x,k޼lܸ:K/q… l2~-?5-[Ƹq8yƎ`ڵ ~{j״vŷѝysϲkNf̜!{BQ ippGR!4g\rss'bcc/6ɬ[?2֭[<<>}Ĥ)Sٳ~~~~8зor_?s-L;;jmy@-3ڙ~WTŏy董q9>tzۋu~GO۳"#QT !_O`P111Rܵ.18;;}Af_=Yksww'#=ºٿj›7ۛ^&MYh;`Ŋ,j9>>|=7o.;BQKt:]%>ϸ%~~~A/(`}^+W^'Bb994m֌#耭]ưW^(¢E̦͌=-ܴem߱? 4Y?#}z6%yyyݻI0mz5t0^`oOϞ==z$I !u@^n!!$'%(J{12d[laҮM[.^5ݴe-b1yxxxG3l wԉ۷9,֯_`tikkWcΝ;ݻ7=zx|fϞͤɓݤ˯Э[7ӄB:@쌣iiԯ@emm͒Kꫯٺe <61^|Enڲ>CfϞMrJ B_TaiӦƮ]cy tڕ^zD~wT*5=zx J~=Ay?Ȟ&B99s!VE]fQQDFv"-- x6V8 [B!jFAsOQk4xw_W !B깒R',B!D ? |rrk}}FZnlB!%2h՚cGuVkBF B!jhwU|OǥKRXPGV\B!54ZDD`|2iiihZ CB! !BI B!5nIBqh4ₓ*?vCa}dB!mEӡh0$''OJjN{x`eu޻{Ckv=B! T*vvaeeMK퍍$B!w EQ((ȧ ZMCOO]\8{4Yn>B!h$+++++› !!_$B!ͲK9s4999!~T*էG%iS&OJXXhP6zpww%u9x#F4{OϞ=gݺu|wx5wK]^=›78;;ӭ=jg)YꮛB!egeα#GppZÚܹ-IINN毿 x]/;诺eS|-.]b̘1?##g^a=>)߮wBB 喽޺\.$eo={hTsb3tP~'S=mV:Tw݄BQ1mQU*2KZ9bM~AAAtԑF籶)FR1̀0 lڸfh4L>zUZ_ﯾ*_dO?.'Nk+/-[[[[ƌ5Ϸ+%33uh^uB!DչKhhG.~e^L =<< ҥKq=\OXX(1c,tEaAٳe52)8}S:v,<]o]X\Rԡ:&B*( /:Tryyy^XX>}:W;} LJ $'&Ulml},04;;ՉdeoI޺TգT7T꬛B!pvvƖ:dՕtQRisj,44>Ĥ$vl]'''_| РA4hG}T..sssps+NT32˔X:uκ !2994m֌#耭]-1 mVEQx GYflٲ.]0t0xwٺu+?<ǎ? T4VVDDDAӦMuDDDtilرW~Lٚ%S꬛B!,CpHII("zm}) ͝W_}3g˸qvnQYpcbxy t],Q:Tg݄BQ=99s!֌7m(ο,|}}(((C*={2"̬, z=EEԫWV-[ڄ<ēRҡQXXZEL<.]|Ihh(-[$//B&" T6,<}ңG,N6mдiSSݝ=zp9^zK&M׽?t.:Ձ mmeEDˈ2NnB!NG |WWr}swB E~O)?͂0ߖ;z=:OFJ$"))kkFbsG%?Z<B;Nl3|"ZTY`0OhX8FN+Ae8::$8ӧNFs?#<fҊ@8B!n3gQ|94j`h4HE`g$%Z'٧ч b- AB[DVE.mTeYHNNnhuZEww.? ͹CZB;E7 (F#Zt:Li>i>i)Uܰ ~`` n"^GahÉhφ -~od4![BGSrRpq}H8s9!cܴr ՏyO4k֌.B?/#F+P\h] ѥj)0hQ0u*Y^˵V'Ν`,B!6H Ruي܂<_'Df_@&MnN>͑#Gh׮!!!!a񿺜ZXSѢS$|Sx}~w.\8O ٣'|גFvȅ HIM3{ ~8xо}{ZR-Kޘ:N/u&1C#9ƥ0XQقVElA ѢX3gN{*hA)k5aMܴyF~'ngΞ%';{{{ڴm[oٳg3{`0pスprr2ųTܵ ___ve;gc^Maa!~wyCO;'jՊo]-;vE_,(6nCjjJ9r |NYz ƍ_61n^|/\#Gy9us?~>BQw2:O(c7p(Ɂq84#ydfVHIg8?6牲ȒW:/`SXXȴ7fZ&O#GyM.^ȣ<‰y7t|rrrXzY<--Wg)#haJZUBiiуvq%>2:uyX:ӦAvv6+V >|z׌0zٳWWW^3;;;v튏ї{ݧMFhh('N_~e9,] TD=oK;wb]RѪu+j׹}V!$11*!*‚Q+4ӜqҸԮv`F]A8W~vڴidffrAbbc8s ~ewu`fmmMΑf U&#;V$&&2zHj5!!!i?rmf NՕf*wY5~-#ظa .dy/i۶mPW^ 4 5%u.(=BԹİt>8xma!xȷ-gOΟ8k3]uǺmE)RPt=8uۇZI&DDDŋMΦaÆl~>~xVİd+c?|B `:5}III޳G:r]_PtK_6ȥ2`x !20N5^1I5jprݵrwefZؚ(.ӧMcEѮ];Rt'-]ДpdffѢEsrrrz7-O;rB>p ar_DD+V_OuuZpr2yy{u<{Z`eRel6pvZFk4|oCk\{y.\@fذa]ڵk=C7n|^ζN""""U0jfwؽ;<󤤤M׿fΚ޽{IHLdЬwwͷ(1Dv92gxxtԣqCf >\ukDDDDȞ&33-SԴiSb'cXgݺ $&&\Zw>r r8ư4֮]<( Tڕ,"""" """"`("""" """"Rr9䧟~﷓w(GaWOիGʕ< ǎ㻭[Zx\rhX>a*sz0x<.uo,  3u뛴DDDNʢAgvr+U+c8t e~]2fHm5DFF{Yx4yyU ׃QI/UP*U*cW9rs<^/ԫN0)rMdDivb. \0~nT/7nɓiۦ ժҸq#±c̈́B=8ۣmZ /Lk 7Y6mʘ1cQ#۶g[[Cww֮[Oʕ/Vv/!CIߝN ,#yd$74o<;v,9?o귘m8ԮdT]#F49?ЦM^8UФI222x)ԪU [`N7xRSYJ*v;)))T*Y{K?z1iL1F́V,p;pܱ328q"O?4.5nLvv6/Ⱦ}s8hu<`T7o͸gewFWשsL0۶a2izLj-=0͛7:,_15jwqZhN{eԣJ^RڵkWZj< _㦛ZӳGjժ n2v@ѽ7n@fV۶neŊW[;t;7 9]t;M۶r+DFlb6 ߉QPx>CN`;v ٌl"0*Uǿ%$,Rdԩן̬ ^S{йsg?j׮Ły'֭+ .$227ر0jhm6 ~^za2dp6_B6sdg2{t ?ڵk^`޼y :%KSXXH׮]10طwoګ`XJ-+;r4 l2ڴmKoxۇիWc6]67&>!YZ]θױ裏:u*'Mz:m:7o0)`xG ^YqTv9q:KUH@ V3?R\׏n|̘1ʫ|NHgܸqLN9s׿oÆӸIn^~%xMO͛ԗ_b 0~j0n9J[^Ql24ikӧөӭ^^^]w݅WF>2݋.ۑ@L=_ʉ'O>mC aէ7u2g%.q/^^?{!XPj&:LH݊)BTJ֛Zn˖-AJ˖%Nm66h{QÆ~L޽{}e~-6(;*3LО-uڕUV~:Zlɞ{<iη|ZVc Ði׾=o5ѷ?/85TW_p8HMM%1Z Bv;v{.Τm6؃,^nv"##xKDD!]C[T('.L`*(ty Y9n 0r-e[s݄1zfT&~Ә-&_Æ gٲeL8xo5~sa?2{K N Xl ,8cٙ<Ի7cGڮ]>3gҼy 'KDD-^MpN{AqEσR%*8}꺋g܌aL<ٯ|ѢE|bG&##>^=1g;ӤIKދ EDD`sk Aj2c ^{5>])K.%22=zЧo_nܒ?}İR^Jޙ&Oa98 x7|gϩ]زyZƧ^^Дۀ23hѢ9999x 0--j'[DD]deeTdr1.{X fPk֒zac}fȈp֭@bbB{駞d?N6͛Q̟?ؼ7؊?wI'DDDD'+[ʫ؝ɢK8|nGЪU+ҥK;w.ӧMUxq\{u 33;v`է{93?ϿF*uWo Xn=„ ɘ1cXd)O<$%wozYo=f ;6ut+̟ o۷sFEDD(vWѣ8~8ޞMll,5jॗ^zuyͷ2t(#F$''s}&L|a3f:SyRR6m `k֬vھl24ikӧөӭw] dddz1=2==o6m.MۓXJ2Xz5/< GF[ÇVyZ.2.fnwI8z>GBB"7\?ax<n:C7k\Zy]|׌ c<+߯/O=4}eϞ= [~G߾}HMmMmч2h@ڶkO?Čov.(( 6BW!vzI߾.OKj6mڔ?߿wקNDxϧNzx^\l)))ğ\\yyU ׃QH/UP*U\fu23vP4tE^Pii$&&T%d4lPBnwCDDXz.HJJ*u u;<9{3 dÆuTUXvijBdD8m 11Aē"+W~B\\wY!"0^B\.a(9.B es+ݻٷo?#""`HT0,&^fwF۵cݾG%**J`(#G>_}==z"""x2,z\rL5'X{/+}v `w "")^¹y҉fd2a69qETeرcTHM.^{pBN'U0ܕz l6c69z(z1 0\/Tҗ1.ߢ`(""`Xno>UFPPqAzlbw:l^~%6~}pyKܹ &_xh׮ngcwF]tN}Y3o5ZP?  OwI95XXXHpp06<@P۷w/;w&!!^vZ8p'|nݺ`B"##Ƞ[QRe~{6}?~ڿ,d},[J*]z}`(""rKld2a9~8}VN@@XłnrJ<1cƐ+N#::xƍGdޙ3~ҋ/RPPӹyst®~(0^:n[zRGPDDDdxɜ}RP$$$NWs"/tjլI;$335 %00 O: :c[l0 RZ,m۶avZiv~  9~x_ EDD\xwAAAXV,Vk.@n7&L&ɉ'駟gv%a?~h_Zbey~iix=pDEEa20L8NV+!!!X,f3[r31!om2=6~%5j0 "##9z4˅kٳ7 rjY? /l߾Պlfq (EX|wx|ɏ?机d"77ϺK2sLrssiڴ)̚5RSS1 >}'`#ٵk#pBc1Nn}v """WB0ٕTtf/jI穋Xm$$$*,\)Qtjeƌk|S.]Jdd$=zO߾bQQQ̝;Ӧx"rh׶]Ry'}0~|駘L&ڵk{CSfn̢E6JKK'119%=mYYY$%%{89\ +l&`횵$&&[y^X,DFnt b1I@@:C*0Ffn,r:PDD0L}vñl 1RL@` ΓNmjUO˩`(""rٰX,8PVuP->A#Ťcbcp8X,CˍD\\&;`Ӧ)&$$8bcbۃʴnC l6HdD8N:E }. """dnf_)@`(""r~.W#"""" """"`("""" """"`(""""gEDD*0x<.uo,K`(""Rn\.qUb;ơC j-(`(""RAx<S^Wa:E !fm߾P+YDDrK\z=x<ubJl\eR """Knn.S*Ȉv$\6+T׋Y0 q㈋;ic\"\nNg! """iHe@>#?;= D `(""Ra"8|aɁ|GN0nuxF EDD̈́1^^8XAffl/$:½uA EDD aWB=bs L`p8-. ipx%-DDD*h0,fj@(`o`:BM?Mitoء=5k&azvat;YY|i&\ߏlde1p?i* гgO|WJ͚Iw1իcf˖-AJ˖%o۶m߾n\ެY3_ kX~E8{Ȥ`(""re‹wB/N(h=?1b.<"l_*vu2[Lu8x((2d>+kժ̛7d.XfNq݄1zszL/Smï,229L1Q0,c^^_8oPbmyDx8vc:y(|YVR;2Y> t-ILHᆪm۶zn/Fg\?(UW]{} }t򉈈ȕ /}fsQJ4cތ/8dSSRRp\,Y䴳,]f77KN<ĉ/>Rt?1 ɓ'/ZŋqH߽Wsm[&ΎϨwM]c("""e h#E!TαÒF4by>}d FMFF11|ɡ{_z" 5bΜwI&~^.Y̙3ͥiӦ3k,HMM=c{n֯_Q֭|`+? }ŗ;q({=\.})\)+9$Єj :tA7J-4/UT᝹0ifϞk7_wڅ-7ڥXV3fkOYt)у>}v.]p1'Nzbuu/&|7/sO8ώСԭ[_+z04ef6@,ZhNNN^*LKK'119%=mYYY$%%{89\ >_'^ Ӄ)863WۨjhNff&[nCo6 u8Xf- X6gXgݺ Ehӊ\Bfz_jsM;./ج W*|"""RAX,f2 ' Iۢ wuYшH`2b턇cpc*sxߵ/@'l=ժi EDD*łeO[1ԭ-;=-;wen"..Ν?ifuBll11AeZHa6 f $2"S"턄`|WHb2ۃZrGFC+_LtQ0CQ0C9#,""Rv3xx`XuC vr#R%us1:H@@ VkF9C 񐟟Oz )RLHHI5km^"""\\CD^ Vbp(*UV0x^rssW/BWn'gxDFDk'0,9XPDD0^B\.aI0,x0e frrp: 1^P0LCbmG.4aq{1aPJf L0_z C t 0 l] b|OoQ0Yr!y])̟]RÆ&+*\*v%*8Ozq9|Gp P'J"""4އөO0a>ϧSf6Kjg6l@{7~6m_OOVVRhذ={d7^uګԬDzz|ǎ^<=i_=j;v^4Æ \;vлwo7nDnv6lX=<^Jt;؉Ajj*y-uҵkW mʶ[?6mwrQuќg\֭+[~c?ɓeΜ~]-|oXnCl:v׏9w睹sۯ/˖-ec(hİ(:T0YFN&Mk;8x :v@BB]RZ56nw3nst|-Z4gT^)S`QQQnݚ v}ΟSV- `̘1ʫӸzϸq8t̙sux)((` /pwj֪ߥin $$o azYf 5bǎ0 V\bM#S'^Zn͗_~C9c2ǒBf~`{^Oѥj\n/iٕŌ^qyQ) 4𕅅:h԰ߴ5j{7bHIIM&wh۶ʺvʡCXn{ds?ٲe aҲ%W׮{LN`۶mg\kL¯K^[`oj5k0 07a'+ ?c?b\U*\.ly /lD(Bqp2 4crz1 g7mllz'ih(Y66:wnlF+NCVZyINNfႅl6ntoMXXG.}111gǏ]ժ_P{۷kСYf UT!99jYn-SZ~F QM*U+Z-TL  EDD.`طE6g3zax-ub2,EqO=;`r-6f~SGpX,dQ),7j%s*ޞEnc̟NBhhoĄ;ڶmKHH./FgHra}ͺb~:֯[GSRZ5kո i׮mm/3Mڕ,""re?iAc-al&Gq<(ަ =OIIrd_d%4߼]pI&N|ڥѷ܌aL<ٯ|ѢE|bG&##>^=1g;ӤIy/K,e̙ҴiSә5k =}O>YGGk.*G…=~m׶-?< àͰZlK\>3.pP'\)w6 =FrXw`:_|~D5bQ*UwhӶ-ggfo6>ԢQ.Z̘1}""""++_}''q~uz (3AFm˄l&`횵$&&;y^X,DFn݆zԵ"""'}M}9wPTT Lˬ@ FUG؍RQN#"""d"88۶fUXbqtmWTv_PDDX,8PVuP->A#Ťcbcp8~\T0LAa2ٹ6mڬNbBBB#6&=LV0 f3aaalDFStS l6{FV0`L&v{6ܮU'{/r&\O0xYxIENDB`luckybackup-0.5.0/manual/data/MainWindowFull.png0000666000175000017500000031170511344502653021206 0ustar luckybluckybPNG  IHDRz{ pHYsMĶZ%tEXtDescriptionWindow Class: luckybackup&tEXtTitleluckyBackupF7y IDATx}w3{ι^U[@}cQLF cDhAЈ&(˅{e~3eW=<3|=dݺuM7T<)OyS򔧦R.];.( a+on=&b>M Lʵ 60[ C)=IA9΅]Tk)2 s Cw)LREEh) DƍۧoAv9nU3F (%L^E F ~NP}XLƊ>{$XMoVSpL$'J5A4f4C>a&z{iªɘqĘ7nε "A1&?e'XR; T'8WJ)LNJR ud ši}AƁ\ Q,ކNejn VJ@Цrxpca6/ ;-q#:2 b5<᧡&OvrxZjj2O&{DxNIY8sH$o_ͪUf݁uq˲!%={:ON;٧H|R u]G/D81#:9AAIH%*S)T%_ĩa t"i9CE4kzZ86s*6)ME<%- 7C4 :Qva.^7좞&Y@n}xÞA ۚ*!u̘VRH mٙ|ld^Dyoa啰&gs5=aJaI o>@Umdnf܉ Xg4=S`8\ݧAC<%5Wj+g>kO$''BZN:wMPXXN)M$;ekj`gm:ј݊tEBxD4ݲzk֬m߮СgvԹMUU]]ݎW\ŗ__3hq={2M3@`ٲKDeggZWV>K.yy2l0(JYMY"hT܉Gh\Sr3co`| ԋMWlBUBR"/_xK崍b/Z +T&ͩ r(o4KP^3AGTFyvo@eA#Q9ln @]nEA.ƀ#f=5 ^oPE b6P vaS/xRT&D%+KAr "Xz2ƉBAw& og2az@g_@4ehr ^Ys&n30,ܕ<ȎW8_B)B<7͸a0 V43W{~ӟ2n۷+*״K׮可ޚ! bݻ_tEŵHx`\S h'~dkV& <[o=#mlHRad*iF"L$aT*z2'id2z2L$a$D2iF"wSdBD"NYI4d' DN?嵻y_H6R? 9%Bڂ- P<4\)gc9kv+A 䍆tt@81 U.DR."98;[[aWmi998|s >FФGPuBKqa*%8_#t^7'RXjq'QX4y;"ffgE:cHaS!srS2i:d4"r;B(p1x9,+x-MA Na~((''@ FHHP /M7;fxbҤ'|b۵kF p3=+6,~vFUUk6(]ƚww9O;w1\+- b.]4\@@]]ݘc%_D>N?K'N<#5jo:zek׮_z<>edBukzBfD?Ĺs?]|kֹsgfGhqgM\FF,ƔL$/OCPwwp ˆ|ςR@-Eш'2iji(f8,qzvStqpXCIU@Sp|P*쵠}"Ȍ3bm A% 6"\6'k;0YCRA]W d: q:Y0+.ұP:`b-B!p+!;U],5Fɀg֭]v<,|p괗ǎ{ 7&ԨSN7x?}Z1c|'|⏷M4(7v']wtA={??]PRbFʕvd;(,,0-x"QRp"0¿ۏW2MoknǏ?#Ȳ^z%7%oӦ 9~x֮}1{//--= X^!(,,픩ƺnVzwydžQ/Lmtqwuw=7o瞻뉓&2g4, >0x*{F=QFA:s!(@pG@)<6I'q+c ;jfxAE1$@Mo!&qQA]c SUR["5=F03jƨ?#D9^dčq^`sv9XmXs-'tswK?%xGYes4HDc<ލJ 0%OY)k'SdVL*PҋrH<۷mxnkzꩧ~z֬Yڵc_~W_}upŕW؏(7WΜ"VRɔ)JJmΣRZRQ)(ٻ}kWwxС(/Ҵk5H$cƌyWZUVZiyΜ98C2xپ}vÆ gu?E^z٤I_;'L3[uJvlΪ9iٵs~ `W/o^u'qFƿ8cYH`^겗18H8Ј-JsSB7 < GGGD l{ )~}=ٛД/L5RwasSwBO?WUUpH x$2^y/h5Nk˯N+0˨Lܼo{7 bd.w\4[oiǎ:蝻֖]|׺uΝ郳M(/t2*@‚{>Y&u]/)) @Sp)oJp 6l뮻0we=3g-O>.Igߔҽ{N~^|ŗ^{Ϙ!>LL2Vߦݻ۬@H`m}2L\z<n&x"n᳛;ߙL& 7{K9I7&Җ,/\4R칙MD0+낭q,Y j4+95P   ̜|b@#6''JnPJR<;ʷ{4f<u;G=FAzNb;g vn)hTᓞ2&E+G"bz;(a8b}\Mf \\ݽfejzmdе$Um RpF?ST =hll`~E"N$\=ˢį\`ႛo.gG x!;oYF[ĉ?m )!3<Ղzy_\ ƟQ Y֪U~ zdV@Ν;[n]RRH$bXM#Mшv쑩THL!#jY۴!"\-/+hNL6N$e0C6mv޽f͚ ~c>S۷g?3f{Gq~{Bڵknxl?:tXqqq<?唓s^T]]}QGPZ]] ["|\+ iNy,hc vs]4ro~r G'`RK ~4t lr5$B<=#& &,GP)|Hg=$9Їl@V9EƷ;Za->v-AMs*SxTQW?C؈p7 {NPǂAOyż!Žj'™d/PA>fȸ%%-}H\b͕T!J3zuuS_~yܸq^v)=~GҾcwym۶,ѣ;mZ-jj~{g{tMYxѨ(J7ʊnݺoشa@?@;wlةCyEyȯwaǎO=q bE{xϞ6m?ǟ8xp$YjՋ/#xկ~~k'ѣ{zUf̘9$d|3;X\\l%{X}|W=6o|~tiXeqcD%<0 a6}D6g;֩D)!BY٬faN"ěe0lu.CPLJ=p ' iʱ L*'|efD) $i01;姧"L&USY~bb|Wz|Qz#Ey[$l[Ϥo26R\ZE0a^,QcN݆` Lr/sNFsMGAj(HP8 6ܸX5j[Lٻm*`dT F֓;_ŝ Zm9a`Ǣض=fԮ4(iwD[nC|gzjYY\X2XhɧұSG=F׿5!_k] 5j~w=c|y˓'O={͛ ۯ1ceQݻw۷m7n'9v5jҥK%#/)_{]tգS&Lhs>(JuT1c;r^C k׭# 2?ҥK/pDg7D2ojOr&d*if"Oč}vIgZ|vӻT%..bQ5skkW(*K#de䌕§d`w zy$(dn JF/뮂eEwPS*` UMm^uI 6rF _m J5%R1 !xgk-S^G)F ')B8^!QJEY$k\Sh]1!{QV('ࢦ,IL֭Pkx!2&o[xoUiU6*i ݴcͧ%/ӁX&Zt|c֭[aAftrϞ=W>az4-LB3m۶ /,_?c:YPsQFaBM`31; QNgBq 0ʝDW;RrȢT,{HjWS4A"QHo,Oهך 疔2,k,2K@vaʕET4%0ML IDAT!qCB"AU[޵rL6*Ԕr#e׫Ϯ3`6}hB~Yj/gS(ԔKe&#BT\]ο/]&2dȏ/ouݻgܹ6mL,H <ȓO>u֩T: B#}C=?6/ - " `@߰%Ry]U臫cFc^\ /f%TK䥃l FLy ]yb{?$QkHa"% =:؃';gCdSQxiGRJ-5lIptђ 8Fzdf)*ѢQ&u P2yd%$f*r8)AمDXۭ ' |z 7*u%g܏JSYv"8U0Kٜ'rx':*멺-^*pwI7xAQ.JXMxgmY$?I ~OӔӢPSsn64LW򔑔yN!P"3XUjg!ͅ.ܜ|@r(-f_Qc0b]qݽ֤T,- osy+zWy&(;sc|VFIUaNd! Srb#؉Jyo 8gP,i(od/tY#,%=P[RZa(/5$~.KQ.!^\azP[8"ym篧#Q-"V;Adp/eWj¬\y#KԊgS"(|e<4 o 0tD  J v((ˎtn^/+7{Oc3"O@%Mu\EmŞҀ1FÇn뺻ل & ϴ"rvYj Lk38}mCXVġ)OyS$G ā6ܕ{jw!u1a J;#~gz$ʞeET#@)hn363)\rg-/ӆS3yVM8o5 k&N,|f[ ͮ X5fĘzDϟ\nxfK{ƄԃEE ܮS`YV1i> &dW*6o"2S-=E}u>ىO.C 30)OyS -ġPd󔺃KJa(EsuRy S!੼̩8˲N.3XKX Sk_YIVFl)'Bt)}se.Amsn/葠V 򆵸%:M(0{+S~g08߼˰e9̢ŸH-08[ɑ5 s-)\9ʧX1ʰ+ ŏ8bsaX.ڐ 7&;Xl"")չ ̾N6r`V @g)<(nA[$Q¤p2WZ& wn33&KoM#%{S5T(BLDBS1ܻs-/F&&=qPjggY|@*VIB8 p'p3S_=#є R2b4͝Ps8ƴe2!%pF>#(@$k8Z)L>h֒z"nV.CJd1e.($?.<;iY(:9[56W;10*k*{B0c"RٿJӄ& " QQlNn[YB~ŠTlށchY6C½W5ABLOG6Q`P8b R[K,xj$95f* ~]NKЏҀE"DgF*r YK@xxTSALܡ8~ѢEƗ\odh \Ux~Gn+(WP5H9SgFa!O?p<)H  X'_~0I<  Rj@/rݛ8 =p %- S}.̼zrgԳ HTLD`x T!,R )reTbk߀T51hTJNh&!Kj܃ |nI<$z] bJ~Žwd9a 7Ppkei|RPUܬ$f"<}_)7QLpv!>~ p'!q'ؽ}Eh!Bkg! 8#͂J(5rF"J!(38'AB=@B k NS!H΁HkلoDK(S(!a%V@V7 y6aU^ԥؙQ;A!" ? 8^ P`4Ȝu3° $g#< f:8q?] Xt٠A`e6p;0#G0Ȝ`ab'~2KSPަ+@ެ2AW`~ƒ'}:EDDڕ!%P dȘ&R/]娲*K)EdUq>6AĚ})ɗ0DcB^NK{Wz#0P~S.^D`/,%SMF~Lf a]%bJ׸,8\KTBԤdUހABR Y<EµjݎDQ"6lV[_@SvFef?յP0nZVSSx|E/zG ;>OF^ˡ9}[}ӧO> T`g7Y|h!w "9i@)Ap-w>@hdi@7gk/!_lhD"nfFTaPdLȲ$)T5-2 l?)9%0t^DY%ÎT10AdRU򫦗ˍ*_xTeʖ2 P[eYC曻w^_`W ^}COKP1`1`UӞSL+'~$P>H`6~LNO9xcp}I@0˂Ee^e;fD]CCC #"e[xsUTũ\1cȓ8ϱօ[@ ƐQ&(bX5%Ĕu}~#`v@]խo4T S[L&<)+AtMnݙ3׭[m6?444,^t])ӻ3}ͷ֬]L:v8|_Weeeͯ@ϟ:u%u]?cN>dQ<4iҜ9svYTTԿQF)O|dn]CCM7=۲SN9nҥ-MؒI 4 > G rЀ0BBA~@eMqZE`TD4Gݡ3sa=ƃPLz(Ue?.q."u/C랬f d*"+ wn=8)TGY`)0QfCyU Ǐ?ft7]h"nuΛ7'lB?~{X֭[^xys?}9Guzҥ_ɓ|ןg//d<o)Nu?OU}۷m{W/Jd„;?#H&=\Jݿkݻw޿o?ӊr]5hٲ R]2~tϚ5)eK?7w/MR^^Ҭ`ߎ~G\7ߪTN0,ׂr?LO܀qoqK)-~BN~0(`=4 "xU<5yLěQ-uC"Dt=6`""c{tMa"`&`W' zr`Y!ir/.$<吴ؿ߃>{]駟Yp Lh񢊊/o[yy Lt2ofu>_hiw߮_34j 1W^Yp> xG|1q>|ES<쳅}э7`? u zƏ|m6sL0CF(-~W6ʜ1;߻wonݦN}yESL]~=E)_pԗ > D :;:`@ П]lQoY3t/y׎;o٧gh@c7LKN}KvzgA90:5ͿvfT=,AD7v-Yb),ApFN Uru2A3wAJІ|F>=PefyA(k@\$ *,k59 ׵,y2 jJy/Cܓ~YJ'zf([P`cYB|T@~阁RX2Kp)h)O%6 4hA 6}t7Ä :餓b};k,p;/;Yko&2y#Μ5[Fc#9i gyvaEEE[lW]uվ}56!0ȟnݺ׿ 7|1yby8myM~e˗DDB Wz-x衇lkb}y`AO ]ie=Z8f TMx*#:h3.gz<j2L-PA(BmQHq8v!8Y A(Osm?Ɔ5-8Œ ly# +‚\JG!?k^+ /:Gk`p͇pRYw?'G\JL*[I`.)뉍oxw:?)Oٓ7`3>}Ǝ#UynSH&ȃN >5ܼ褚;k+, `EЀ_Hþ$xja"I6 cJ?Q ȅKjT|?Nf7עȀ(;(|Am>ԅtz1'TU[ys)O9$nL-]48{QQJ&fe30fF!G#ȔɓRtf8SgϞ= -[l^6qZL&wٝ"gϣz([+n1cΝ; Hӛ7o~7*ool۶{~zϟE"kCHꫮ[o5Ms|ͦ0jԨ^{mƍtZUV~УGw!A**+`…xU&fE} IDATgqw}+W2 cU}!Da)jE2!+lkn;vl7 #Jmܸ7=z oŊi]_|} :qg{?=HiaDK uC<6Jsc'd>NTG@(L }= ,IG`[%P砥϶pSdm~:~摕sTl4_A E浰BHMm|S3v[.l^IϻKBRjQD0ly!v}={|TulXB@ngq; rML#(<ݴ`Q~:wV>xQF5AKF^zڴi;N;9}t7ٷA>>).H=z4C?t&&TyŊ+V5MdȐ!Ξ_:u'"Yј1Κ9+g1i(4Qb*eFA#GZz&/-1,nfz*tCƍUb)wtG1)B)D)>% CM ΔLXLԛ)gb#}N)zfq'p,1\XJ9[H ) !rM#)FŘwǬp^atS>cuBrLP2"BN=3x'Š3g5E`aKP8*kb,譗Xpԁ؞DŽ. '_]`7PCIN8YPPOtMG]PPPXXxt7|O<^ϖ㎧zj۷Fz˦N[??좢G^׿?}g^٪U4ҥ˸nY\}-PJxgTӦ5޽ hܳύAیۇnE˥J̊ڴzN?ґfir<('i|1O?l^=//l2_rO~RQQQ\\|g w=p0.i'brP,@lеZ(b?n\p&3]R!>\@)cer U" xГUǧʜMpNovb6vB5/M*ppo>Y2v] 0Z(wm0$+&'Oy:4O!}U(Ooo1}Mӟ~C=gRv9x8 Qxb;@v0yE)Jx*fA! y 1yMB 4M,p܊Sd1p!IW ba!V~.,BF6Xt;d8/r81pѸ,l d'ku4 0Tėh}2ڢQȅMk;Gy>?7Ko>?:MD,"@{ b)̀;]1hng>S^P)u;]˅zx(`sM܏l!@$ᯱpBJMJ߫²|eI.K ^q"qιz#sfz gVS5ܴw믳~ˤP@ZBZS,_"Juqg׿n\%e4#ѧx~@ ;}0(,dL")K08F?cxaC~ i0^JBȓ֐Zi|q11o]QI9lx#K?2%zqb*."OyQpcG-j-\=8O;ZDCkv !ӹר?Qm c&T\"uF~PIDU2Ifes|?URoދҢpG ?J.@ɠR'vK<!Qed&E|RYg*<@<;*'- ) drpf7? @%;3A eQ1Ri0?dӐBrH :Y 2^j-`JV)!=`_ @̥,- r V/x՚<})7#&2˛K u"^4Xm N|Oa.L%?&n Ld529IH> .FQ Os?=cnA*̑QP~ T9S OyRn)OeT/s,~SNlH(EsF(ÙN N3!a%m,VO@lOxRp20mz,H (# qt(a%x~!K?)w :r3|u=fDY93N,F^A G^xTA*JT"SbhGj*2LG8"GҀr)AjXT)Xc3F=<ɔyS( F~sd9f n6Y3OC>D5CkA 3;E9M\6)SJUOB~ȉ~X3YqeB˶+G#R2nFpoRC=ʾU!'棛yjD1 #'SwfW]?āD\7Ng;A\ [s~ZI+PР!RR*\>P#pdLx+|PeS04-VPPXPFuM HRi],٢adVa–o55iS4MU4=dҏr2QJSf}=M/"b~, p3!S"B 4SJرko> uM˘eν۶H&{:l@Gm;/l+mژmתȋ#(.'E@D{aK穘2F?@V,3kxA%g!%ŋY&oJ9O߾xc: QXBHD fH +]ɹfϻ_{{8X?hXch! e [$6mH$jE"M#4 h%Ģ4};!VZ,壛yjD1M3'8:xPziiihWuO<1}׶'SIAc0jjNZѐl?OPW{ʥ1bʍ0⌦_HC##0rqD1r,4ϚVinްqϊKqC())mllP N̯ &Աi)S_yeG;+ϣmI[RdCݚ~5e[_2nUU+jPٻh1,0M05M4iFb:SӴhvÆV7=rRJii]oNyRA,D<<7Ԣ)>eYiLktbiij/ QMMʹթ,_խ{귧Py6M&k&O.cZS{OvRz5Dןe ꗨD0VH `S bY_H!a}v[N:644Pjizʊ֭[{WvܸFeG2UkIL8CkOk@e}qͦxF_bнO~wj֕ v۶%eMSj4i6mkjMM3ā.]J۴9HU0 #Jk߾UV<$󷮮n]lN(7Ԣb nR,ˎWF$9 0MӔlP];OٯQZ 7$!]J[m<Ƣgig5WUTTD"!7Ԣb9;ninzia}4ݮ=Y2J @4F=I$뾉}F*\ֿM~}[YbeuW,JMô 2DZu04B"FEt1hz$QMAL#ٺ0jQ$R`=wۿ>]QP nvLӆi,X/uX~oHKjKS)ZLrRo[}BN?6Gۻfhw͞]bm?Hhc#DguEX\ڌXV4,ԴؑG\t7ߌlH5̉v~4LSIJiWgF*lSUUѩ0P]]ݾ}@t*L 7xOJL2 C7TJ7nR%oC4;c9%>d6m@R]_/Hxs>7 ȁaW쯭Of*2iE-4M2M)B ! 4͢`)#OӱXAiiIRn(7|D5!l2h5558ZI)5th0-J+++/]vY!סٖCu s|Y0@,jE@ dǯϽ+m;zoJgN~sڎkku>pC@ Tӊ:YgEbs~q`YƍSϋu+?ĪU漹Z=rUU^O?'0ݻeYxpsoFwl!(I)5MS Ob_OLSчL #L CdRi]MPPuҲS/"[Sb1_u5HtGY= jiqMLEEņiNFFFi(H$JĨ4inӦĢU+sFݯdV@]Mi؇ 뤧z.]V/Q(-,B7o>P0 .OzuջEz-Nߵluyc/,ڶsۧkԛ.^CmN|I3 bN=]+=,8@>ZM.]]`__һwRO;"EZQCY׷kβk@0KJ׺uo>M0Rt{9k=a.'bfi& W'OE4 eYEE-{nw">uVac6瓞U͍[ޯUbG]۱i]׹5@7 ]MôL˲LJ)!!F2r hFĬ`fL%\_ɲT*y@Ν;STiqI4S#cMط4@7FL:H9ce<4սSN]xկi8`smKO;G7zvŗ VپhAHGI)=ƶmH$lفX1MsRs˖X߾}5KhQ)m2~X{Fi}щdB ?JUmlܸ"aW0df}CC߾}MatȨWի_OAAILLK^l'#Z~n}ydjG7JMa{X ,aՔDcG AGTWgd"SE5-F"Dzk2.ŖiRJiQIqeyyNȥ5(d"i]wڽ+HjTUi'۷nݳ\Z-(TM9B-7I?`u K~qN`}àbBeqq-C79W}Ţ/O9Cm}I44DZQHn4MZw꘦E5$ƪc~b]ʊ0`C!Ji2Lzӂ[ɤޘHF#ZIQ4VDHbf d2jرio5)O9aanG/" VlFk-hl-FMl;^c t+yqp4>;ݹݷogEweJWĆd= .aX!ɜX")=7jO7oa4z Fxғ}߫2G9d2 ϲ,MVVMكxA1tB$CRQZ6ADz*Tj<3 Sw?}jH#e@T +T8C}.P۾S>mպib1tWn}8FVgؼSХKinDˁ  ~.l-HڑD%!"!G#*%\S^ J+Rԫ0\.'O,k]q!ɤIZvB-߾!PW?^TX4?L-5#ax"Wb_>)_& @qŪՉ{:k +Ȕ@PͷE..{B"&EPeٌիsd/P(q**_J?&xՄW%^ ߌ {'ŔR%*DYHGpp,Vsh85VzYHs ' J___+w[2JI2!&A,KzVecYz!&If8s<ϕZ9qJz43-@`#\@p))ZbԊ'V;8(7΋6"mmm$!B~oEBT"MAWzuVcaO<^&ffɀoں;:D @^.l0yɒ%yyE ZG>uO>~CǎE1379w?J$F "F)QE>^U*%dJȸz>/b!EJd棿î]=zhRjAll^k""ر2_~&OnUDAb cc I Ci8dZX,D7)bYeal72ee5>٪DrlR%fuѨT:dzT'%Q+iƥaR(m L@QGsDZ ͱsl""W\]")OP<+W (m \.sfX`]?d c2d2k Z^aSǯD"Ӗ. j6c^@sb@*!m]>p׼f͚իw8"cG$K#"֬Y3zh3UPeggߵ{aCU#V(<{FO3  a8!RbqåO5"'<`Ri66fSL@$ ['ONznn tblXʷ{bc,/ M!3 s\À:ɑiaF!Y9O|A*]rv" !G$ D"qN,è7o# QzFLZq7@L%!FA 0 ò,yxP#yvQ T]u-#lN7h\ڕŀRT*Q1Qk0xøQFViZ$|,nۺ}>y~_MsxX333'Od,nR+Fj'N$$J/Znu2Q/K*˂Z5OKOH++HZx}<DQO @eSŵjg&_|M֯oXDuڲYY)Q#-Yf5_ׯ_'$&$IJNNKOh:x# RDT*UT*]bÇqq$I!ZMrJ BH,lUU|x{{ŢsUe^לpɬ\- rDMK ute}\a)J]BՉoB(=)vTL$ 2 R^ImRlG/ q=~ r{]R:nݱζ:뤤]h*IMcnj5l76m0mD"AeVAAƻl۾gB l^O3@A$k4<BA$qG)}_RJe HBGj櫨^aǙ?< s G޲eKÇC c2棛ڷoz/ʰ>С̡CE"'O>tagO׮]s;w&L8}挰\ۻCǎǎݱ}Q evܩj۷kWrԔ~Zشg~嗆}oݺ5|НvDv4yD'O{gjaFy%Cׯ]~9˗GE_~ۯndjԩǎ3 sʕ+WWie4hM6Q"ѻ'#Z5kކ0)JD) }BBGxxHT2} io8\)짽ڵs#lD׮~QC(qMJ<44o߾gCyzV>czƍe2ỸKxXɓ'޴ysÀD#G8v֭[*aYV` k׮}ײej֬y'PcN|3oE[v7Cl\ܞ={j֬5a/Yfʔ)kܲe˥KJiڵoT*###׮YCS&|7bN;[tzjuiq֬^={J$5W[.pdff@СC^lRݫRii@\ yd]Ia$gH FЮ\\MbQfl3m_3E) RQjdYVO34Od\]"9mKR[&B.KRggga87t(R,$Yޝ@QT:SZ$I\T*?cB䓮IIL\$ ;ɩsXlϪCaeKRH9գX^ IscN<_[oş-g!!!Nf,TfHթ5ZZLOyw"_xCʎ*Q達S6T*3_EtL MӧOǎvuɭ0 R(K^h%6_'Bʿ4ny~\C?{UTEv +V[_mW:~I94m v-Z]xСý{ǎ7lԨAO֭7OÆ٪77ٳ焆[( Jի/Tz̙ɓq0{Μݺ e4?:pഩSbѲeKMիW_HKImҬiÀ~([[СC׭[hѢ :C_s 2;_\9r" RڀlUXR"H$)r{.OY3c+oRT2v r=ߔ[7{1*hly %4R}&/V|Ű1Gڭw;8psǎKq}{V"QҹK݉x=64[_ CrU*b[1%#I%8kZRKSBsN_/Zhٻv2x2Lӥ$' Nhǒq0̇>10Y?8xui>ט>5jT7|ZWhܤ#GM6oaÆ __< qk{Q~56d ><?y ڶ5#ᅲ6lhٲEn9 [՜sΝ? 8cQfm!Y?aׯu"͘1#! ) dl̓ Do+A$Ɩv̙|;8kn=pYggusF L&ʪYʼnbP^r/O])/GX"FJIE*Yb`&)i s]vV A^ٳhN0nkrz-H:#:tBߑW- W!rH lsʕ[!!u3Ჽ]u.5*:Jӽ-o%{Iu:]B3FpKjt…?˯twwٌ3@:K:vyJ*uyѢ_u:]n=1 Sޱa^aUm80 |Rx%Щf%iR8&^aB111[l2dbܱsðmE7FT"m6>.RN`SlJ^JHE!R  ){bg4$MBoD$O1,Y&ۅ٫7lٲ~:t4 6!zZgƁ!N'e,˲,t&Onݺumصk+Ve]vmθL^8pڵ( ZL&k@t8y;OyԮaoo#$HT8˜[)z)ߺWŌب+W\ h⤉W^yEJer 1) 8yq\,Rf͚9DEG4mw TZa^{G޿m֩S0YwçLq!CC>|ٳgִiQAAN<5fL!!MT|3*wwÆj8hЅ ^of/y~ѢE~I 2gޑ[lηmK/^xѸdKx^*vUq|ٝnݺUڊ`,8WAe6C_uĉ7,S$GyU2%G)8&(읃Nt uUKi^o\o\>voּD"۷o^ %8;\zUC*qY2]\,Vʁ{}c ZlU(IN{"2ȕ;ŒhT˖.}zwm۶ݱc툈$*U ѳ{%n`kkY~en2WJ%ڷFD͝3ŋa IDATM۶ӧMk,t~_-XS4M7olڴivv"޲uˁ<~LQTݺu/DjG O|z ôkYWM6mݶjͽ'30xXV17Uոq憍"h4..5ջw XE"Dbo-wTrO*2dȄ J]Sޛ_ cr;u*@7XbwCVoݶ̙/?GU |E:eV>vZ:e٬Oƿ~]f-oI?z w `6Ce2YMZ,f[haq\ZZׯ_NR#d20c@,d^IeR4*:B E[w?_fvPnyIOO=zz]*<꟭n<<~J*effܼqs6lXɓc^ g6PPKX,_LnJe =-5۷oߖM|Rw3%% x_;ZEBt:w}zƍkODDDĪ+cČ]v+EzQhsr#@jT}h4AA(x0ձ,{׮áHGEĸޞSy̐l$‡Ndd/a.n%F!HC#H5Pжo9KAaj=EvR1ߞ$!P x2nReR}!bLw?*::NGj(${Eԡ+j3fLtK*Uxիuj,mITgff ddd[L( !yL.Zs|;GL gǖryE bbbŠU]G!/soEU_2EQUVZj&Mw~a+mݚ0kƢ{n#GGj;P(:aF6V",x{yNi^={N:uƍBhT*Uٳt҅ M;v,/_ԬY@y,7/eڥ83[K쇇ߢis?qI7l4,ĿբEcǎaaN|ܹsnf(שU}n qFslq: r͍ZhL@I78A[QDыw%Ͼ*Jb2 (EA@FiYjCp-Z(JFӪUK[>y툈qG>>>ߵkoU*ZvyĒD%l/EQS&O曑-̱BMl|MIӦ޹};ٸpy׬Y#**z9dVR%**jڵǍKLL?^?"##O>q3ߎ4pPBϟ^_9 ؖz}ǎG ߎkР>Ao^rG4iҡCV0K/ A"<} '\)|Q[s^{9V$ͨG-7?sĉ%'3XR2 Srz6u=:&zǎf*1! ,1x/&oԨSF!| /1{0a¥W'PizBѷoX/dVo~Kׯ_=g6).!_ 9zχ , ~qnݻGEEؾ}lB5ZHߏ5jʕV!_QW._rnm۴-b ږrnj=fhM!!?2\ ~E1$&N}@`it)[ ֭[CyƳ8stt[ 2sL ._"CZL<%((ID^=W zc{ϞwPٰa@׮݋f R}5jZu%GjoLn޼a8%i@J^ش9gVEK4qpp\'O%i֤Y*U888H7?HЧORW SWLbۯ[v%ׯ_H$mڴ8iR_Ą}4Һir(PA&Mڶm{ ,YԺ:z;v R]]:v0CVt 1g׮][n={/73m۶]8@VS™ D_&f*$<; swͽ )uR٫*сZ-]~}ر,Κ5gϞULiZP<}F"{?L<12B!S懱EoK7:u*̟?SR2($D6d 2SF.~hƔ aUR޽{m- IG! #;02G71e{L逛Z|m)/F^L0n~kLkBGdĔi = StpX-}&`Jnb4@HS~c->)E)y|Ô aЖ>0ɆQe `0+`l `0b佼8F`0 .8`0 )F`0 )F`0 )F }7n{y{6 `0pzꗶnHLÇ* `0ѵ[VcMr9׫WT`0 1tq Ô6b'sM `02˲4M;tGoMOKKHx-HD|Inb0 )pVe&-5ؑ+ժߏgkkKQ`0 S>̬Pa4Mۻ'&7S ʤܻwOV _u888`322HǾfY!Kqvv}`k,!!Qz`3+++&&:&&:44tMnn¦{Λ7xׯ=2{l4qRp5`0;t1|o%K=zdÆ /sg3w.Jׯ[cgL4,YCǎ`@y=)TLz䈞Ng멧4=z?~=/ 9~o~g~[sÇo~ ĉBBBJeTT͛w!*Cy愄DOJͫ^ztt3 ر'M԰aCLd׭֭׼YS08̚Jp_t%&:xӦk6o޼/^ŗ{ڼy i=dPzft׮Yc@_aZٳҺ:| k CU||`>ܹg{%yѣtRRa(HOO?~|͚5j֬ooooB(,_Db CBBp!4`0K.ٲysBqh٪3g\rǏ?{짟fعPyN͛ӸnpNsȐAW t=M3wSi^vu~\fޑD1,[vB5ےlQ'O1c& ~6m p˗/EQ͛5:}k^5I% 򨰚С2 yݻESx-[dee5]@&iӺM_u됐hxØS-\`Iҥkɛ;ѣ޾@iNv8׭]m*+-), X+V[n 7.S*ع)bzj9\ru%j>p… ߴY3a&q.^9&w%$&ZKBh`>0t:HRTŋ9sfoo\j5s((UAO=%(&L8Ȧ~Cϗ.| .Z?nX٣D"yvnd2Yv&Mo1@ߊ0Y~ʕ8o333%K7! &d48 ~ڲeK?ۆ;wj._4rƁM7={6o>AM<9slݲ 4iYbMc\\\vt>{l-V\i_ݵ[7ܥ+F>|8iM"Qg 5qrr2t kذQ`0e?DĥKbqm~~j [ׯ_7nR;wͨor hɒ%-jÇ],SMXrE1IDV}#Ϟ>(v 4Y_߾ot됐N5ooof͚K^qC"nzĉ9O2%88ܽ{7%%(Oϊ]v+&1,]8b̙еK%ܹsΝI1rD^͟'~={yDfP:lۖ=P}; fS޽kay D_|ai;ʁY r\s_sD <Ā% رߎͫGŊK-3_{ƁnU <(ſ~ҥKaÇ ]rgN QFFI..u_ ꛩ"8(xɋN8 @_FyկW>)C泈;gGRjޥ `0 3k*Ϻu. !qMEH$Eq4yr7/MSu峥`0cY- Q˲z*a =-MRL*-eTG?2`0 STjEr\Fff͚5yh4VQ JmLLJQTᄔ!w IJTH30 S(QQ@ff+Z*Za,+W( ' A,oo D"pz `>8HOYVE8I:g'ǏlmB8ˇ0LffT*U(Kj4L[[[X\2.N&)) 5F=94/`0LAt:ap }xˁɲlRRMRL&%&&O+˳Ol_ % 3f,Ilb0 BP"g?h_xGEWVGr,:,VHt''|˛$Yޝtwdh:66v9)~p~`Ŋ`>fJl:77UUl%H}jUV]xYq(%NSRSS9+Dɺ9 k:˿IJ~fm۶R `0VQxAū׮0ȔuwyVK3 9O>]dɋgυZ6_O17ɺٗtyֳOy+.[\.1b$de=w܀}VYΝ.\`eݮmoJ<+c&_vͧjgUgb8i)t(r>vVbCnoםsBoN]*Et}2FM3<߇|?{ޟkm(@촦fb/K ss3ΌNJTUUy-Zhiancc>xl3-AنrLM˕+4k2rg^[ZO?h_>mǴŒ%\n-0wm b"ˇ ܶyjjj.䘚XoڸQyH$ڷ 35`ja/gCƎȡO WUUQP`\.w6V lSQ9V}4EB M| T] E0">uͦ3Cfٻտz5A_OY/*E:(R ywH\'EiK͙ݺc`aL4ikݻwX<}۷&&ޭ;}TPgީӦmڸ$]{FEE=y$6.f)SnܰcoO>w3fvqkxX'.[(~)₍#^aagXWf]]GagϜy[V~ر{iia?3عS}م <9s@(2a½{ϟ<rƍKAprAyyq#&5m~U xrbාƽHf dH#)"1Q D޽{䉓?DvvvK8@qgݻ$iQt9 -Ts@iJvƌgciBcn`)·Nd*OI:ȓԡW٘tشyĉد|u̘n**~,lj`ܾ}[[[{Ϟ/2_G]R)%RiZ ==#z̫k9/RR{zb"rPooo8z4@4D" k`9ynj=n[`^NMMf{ر]&I۷D_??7o&%Ι;.^xÇK;2?e#Gtuuܹs!3A٩gsr_߸yo~{Q)III56Tx0}j)iċ@ j9GrӰ! y]BH ӘԌ7 7îffY3gޮ 9)))إrww7nK~-\>4Z:+}/*,eXI2nI60\[[SQT]IHgHucM(#>0;ޭ[w blls.xvKs׮ӦS(N+ =D"={nر;{EPzsN^_w[YYh%K@MMM ,gnݿ>͛7XJdDīW࠲m7=~GOڵSSH.g͚ۻ / K:|rxΝ~yd2ƍ߾c+׀߆gΜGY,L޽{@QP)ٵ!CP(My9oZJ"!W`CΈLԲѕǬWT Bz5%=?ȿzF?إׯ_s8K.eT.1Cr9o^_8{k}9L&}EAyyҚҴ5 ӾYӵi%)&8n x_IwW^Zu$JյSRfDP6lhnnsǎ];wvjjoxJaڴi mвiḤF9@V'm N#~P lƠ}W(((P)8hƦO-% @ ٢{e/Mzݣϋ*}U*(WUTVR򪪰zζ L14l~K7ouw#)ݻXaZjpS1voƃ2$O{Y;Cwn3Q. $S=Ofno#%x"iYB;liqM Hֻr功/m~:@ic$eR_VqURw5 8ȡoߤLG:u4?,9%6661nxXXnn%17n6]J TWW{Wd2jjq,ոP_jUa,մz% @ Fo - R%Qb1.Bd|!JRayK,{\XP}e*ypehY(}״a3E>~JXN0p(%\ °Nw]Q\XpϬ.a&lP_efo\psrKJrrYYYÇ* T$b_eeUwω`ffQ =.\~a|:ifLNN`"늯Uh޽{zZ%K~Wt>:ZYDlf=AΝ >b4K_N)+?&ڧ/SM6ic iR(/'0 H sE*JhXe%;vر}GZzH<[s>QYj~ݲ YT&i6&P!cZU+c~]%#r{nvHҬeKr@ѨTj˗˖-U.V<\EEH$zьL믛7oJ ,8}hccw9+WP)U+XUVȑqkj1[FFF'LPyDXriC*wz`ů\V|9իmm=MLLBCB""T`aa<ㅆZ+-> fɓ.^+D" O:I1N4cݻ iЋ@ A޻Qq>5熆rG ZZV{]V.y ;Sgtm<u|ݻ=z|0I?elZ̮IAx}T@`L󧎉b*6q]q D!]|viU ZCuZD"]~UGG+WL6;?8g7b/V7Lm2?X|u޼Iݟ>}#쬲MN#^y/@?oT*u<ܺyOGvmWppPnnBQ?uee_ HRZbx2o1𘭜>h lF0YE ,8Ҵs?~Zi&ڧA/@|,L,OBKaX ӓSc%PTJ}UXuHq]vڦmXAZr[Mg\uc7cf6f$*֟V.:26,j@KKpk䕨ᎎX{FMuuu'Mwad򅋗o`ץ Je0 :jS" 6l(׮]wŋnnn~CܧLc0l={%аѮl}}y{/uGDD5`Ӧ:\+z Zm~q{YVVrUcb@ROah4.]\R`PS|[_q3ȈL&hΝ;Ϟ=;zx,M9}|vueيtEB 5|>叇@ $B!r9RC t#x<sڷofoo?qM'e=Mž|OQ;,,;FFwҥ9ZũgL}rX,$H&:ڰ> Rjzd|)vZ@ Q---]]]]]11m;oԴF6:M% PifNw@ 333fFFFtzTKt7@ He(dŭMӚ2ոr\"hAPH$@  `tƉ4̙nb.dj 笩d28D|1LLLP׮##^K$FT,J]Iռ-N4 MDR^^abj*Jyr۷o?`)}([|;zkinbT@ Z_h%wD ͪ*L*r5 KL&ɬo\]:r7so׮WL/f$"<=8)?"-}hmRr˿& D*VTe *5@OOT*mD-*8xH¡Ů;d2و#n߾S??4vPVVNN#Z@ %Ru H,/_ܽkWa~@$ ℄e{]^޵Ϟ]k@+>?~xڴia(u7~|qq1vze*szy-R]-ΣBCCΝH ?o>L勽(|w훡a:::uRݻwLOOjK'9L&ޣJU)L MT5FA^P>۷n={Vyj`c (e-K M7TWUk7fX<`j#_R*D> i*OI:W/СeK;y'Od2c&ɒ*ұuH$/,՚ĩW\{`Qa.댌5$mֽwyr^HaQU4&J.&!'yMLM޽~g }Wa uss"}{\ն-`c3`3qXJ޽Uwvl^^kjjjrW6mڼz*6vEEAW㳥gгgϭ>>SMf5wa샑϶aaIp*us]Yy^0usnۺmРA3p@ 䔔LkkkHNI~Y>}swȯGXnu5j*׷8'p=XE =铧XT(h >[3KiOrkWP@|KH$PԶ];=CC.ۤA]ei*ڔyKb.Z^J.1G34Ē/^|ɤ{̝gkjS-K/y63K݂\WybVCKa6MF)m V1pJz|Æ2x-Z9sӳV=;u>`~*Nsrr@1'm(<Blۺk͛7o޼{nss#uSdf׿7-T@ ^La]u?zSܷlj*8s L8ǺՌGKKӧp=CCñcnܰ{3-->} S ~BQР!';~DN8f|D+B*VWdR_!4ѱJOKeX 3]k5MlFНwRSz/kghx?NBm&1etr@(|}]Aov?NRO.%N^Y@KKfȐ uRzѣ&?jk|z׏SjM~I'ܿ/222//oWt 8ټyKQIC~vrJ.d2]?V(ӨmrJJnnCz*?}׮ڍFHA AuuaRTG;X6'|`mgXVZqT]7sSA.:;va\ av4LUI X ]\;z9Y]|M$iu\7p=~_S 55ʉ^#oꠣeGГhḄzaLZzZ #G:[.** R?W,Ɇ CH~\ݼi|4j^,;Z[kq|KS-h(|@ON65>>qܘ1Pk kX,׬] #~8|TJ)?Xk?pʔ)|2֓>iҌ3`ƌAAAEEED(;{nرjׯ?aCС¹gAkFSQe꧟~Wx</<<|5ӸpV@ Ur@ h%&6oLfz?uL,STSDP| at1$ Kmm+Υh8ɿOJ$Wa…^R ~5k֭[ܹlrXPM||1l{ɑ#ގ|jmm:zsa#gwW]𘍝Q ~<x);9((hpA_tI$YYYqTĉS;dɒٿ__ vvv86mt휖XuW\B39(P2U5c>|0|J 1`!և\rH$9 D-D"KLѲrHX8,!!BJI׮_mD"dff2Jԩ׃|ʰpph"-_!@  u7;M5iKw7l6 S8S=6st {=>QIW@ Dm>LPJy,=8'OnۺڵiإKAiiШO^XecHdܹs coߦh&M\tb@H$:qxdĕ3uƌd2|Ȑ!R4Ν6m(Q(;XgzU8P5fƖnp8D"իºԂcnnfbbd0N abbf~}h/6oLJZ|Miiitt_w8~|5)AAAy䉤$]]p֭ɓs̙8iҕ+W”/ UVn@`2 CO%8@ 82pKtx2"@$IJ@R"&$ĤhIwBTNT["`޽X.v];t?:v7m27y8~J'Yn]qL._|yDxǜ~}=OMر#>ONI٫\U -ݤ4@  <7bLR%L #k)@- -Ȥhi$EEko222`„us)dc*Sx<v^%Mt۹cgxD%K 0ax*~UV&@ zp"Ijm.)`1,:CM#LL_[*eH:2MKQRiObD-ZUMqJdDL.r#"# .U}u7I@`X@  ^ ݑL`6%hL ?jmmacc!sjIȈ5*鱷o%ի<~ƏϠӱ PUMjʠR(@ @m׎iܞggg6ncl26bkH;̟?/44X"DK&O8G_v 6={&@xxą `„ UUt&GRkr ( DBh5`ez|些*Jd l…o M:I6?r׉@ /@ZZ[ @ jLP(s̝;gzIWYiQee%NdܚXr*ZYY ޮ<&L&YD,effnܰaMn S~\t:K~cn:@|1JhƣtwS*VTTtt>N|]B*6ŷUHOޯĜuٳg(UPZZ FjJ ԉ@ ap-MpZ 2bL/_ܽkWa~@$|Ioo]^I(_{{b]<t.F9=66}䎖&\G+_H$GqԤ1c--ڶ1طm V vZSSxgirw^F--'wztvvaSr̕fSvmTaemƎȡO WUUR^UUh۲9s<866[lVzԧY<vm(*,4Sg-P!}GF ﻊտz5A_OY/*E:(R ywH\'EiK͙ݺc`a(4ikݻwX<}۷&&ޭۑ;}TPgީӦmڸ$]{FEE=y$6.ae/  >⸸Ҳ]]N8t2EӧOx<+++* #=R8ƍttt <=n 8fSx{1111c&#YVцWҋ@ _-"1''cj"ִ P䜜l&LMd]7%9 M7TWUk7fX FuMMjs: 'Rkc7Qy32]k덌5:eyk{.ͭ ۭ(t.$3:NۦbDabKǎ֭;B166޹k<|t%عki)Sz̞E"Ξ=7fXb`ΝzP({޹s'S߶m[u!?ǏЭ[Mpp032"իWwppPSP%gΜGY,L޽{@QPVVV4 [`V kO3~y_"DAKKKb^!\GZjzz,VPL%onވ8!|9L&c<[ WҚҴm^tfwbhtX6^ i2zЭSvh|M,"%Hrssl۪U" IC|>εÙ,\@[[K{  K9wky11cbر]v%Kܾu!ɓ'ÇKcӈ^*((P>}00h2հӌ_WD=‹?rtz+i5&˼?NjJBe 'Id0F7`"~fƧkm zYdi/[͎F z"-A$Y,B100PxMNkkkhljM,9twS1JXN޳(!N0^z߆ޙUBxMiuY3leee؇.pGGK sE6++디k׮?AU5>>[׬Y=wǁ'LK|>M\e{}?'&Y} tgggggg/]lr9b-YdAl6…_u= IDAT \:wɓ; D4G, <"u Kݻw ܜ+V۪X,~U`Q*sN\.6ׄNvvo݊022?azl6ܽ{W7?{OtW^I$P})gzԧqp>BH@ 4<&D":P9=k$&`K}i3=Ο:&T)ZD'!a$ ⳳmM:ͷ\H%$ia\2}TT1g7b/RSe2ٟ|2>y&?}lCgggml:t8566Zz[7o޺IѮ{yRy( ӛJNvw,j騷O}'h.4T(*懵cM䘙?J7z%\]ue\mY_ShW+Qݻ=NNDp̼o ={UkK5}|vueʡ[_q3ȈL&hΝ;Ϟ=;zZ6 Qp>fDH@ /}yGYBG+Ȉ=N3:}>ʉb833D"tPkÞ/(Jed2O9pmŽϟ;x…o\u"j$|m 6lXUuH(2*Rx ݘcb||[E$rsk & fUuu^n6ߒ{.$4&m-@ ZPM)bm۵KLgnffbj>zzz~A9n9 ~ѩS+@ DAqV0UdĢ3X,KKKSSS&e}Hٻk A Br\*_/2EN>u7β+WhH$l*ڮ];<`X 㿼K3lƪ9'ƁWH$"a{===VF6wo޼R(*f~|j'k&&`04.,"h]HҚ.]e2?::,ȕD Q퍌R`٬%:nΰ 6nD T*ҥ+_HئM̬L8[)%@'MD. XvKDbP hy[@ ZʤR)_(xd(oU,B{DEyZ"(қ&[ոrq>B!Hh'@ ATOYo8::*U^iϝ;n߾ɓekAp7b1e2sTVV2LWXLLLk ws_FgL"gOp! ]2(,Ө+Ww}G"_-fc\͐@Ѵ̐D")/015I<W}f:`0^[ Jc2AâWB1p&͟7晈fsPh4ϒH$Vlc##,57e}ژڔ˴ǨJ#J\D,Qp\Ld2bτշnd2E"QVVm[5]* ys*+;=zH`l>3;[ pIWںVӡo#Go.֭C߾K&+EGڵk׮]]]bEOݺuի5kr9`:u/PYYUխ[N:7Hݬ[u<67SRiE;]@( ;^E;T ˷<L# ~=N'33s (@ Y>'D%΂cǎ/m)H .[ VXqrHMMͻ;v^3jTWQq Bp̙vJOO B0==mfE"+oܸ󫫫/]?Ԯgjȑ:/]07oY4oԖݔd_$er˗/wU_ lRA|?դnQGO Ng̘aggkee5v;w(_H$G8;XYYMKLL%%ٚ=hbb܏RӚe˗viGAAXKv򷞞666]oߎrp8ʕTVUp8l5hVSSmmm~VeD"A߃NNNVVVVVVNNN~{*`<\ haaakk;y7nԧA͝j|/_͚5v555u\{v=&v?o gǔ{dxСԩS---]\\"##O>xGk;w9cǎMZt4͚5B+r޾uٳMXj呑%XqߩF*y\II vz…n/{- Q|w훡a:::uXdσ23"""ƌ&&&[||꓊_"ŋ+HEEŸ㋋ ϗ-S>aw:W𰰪F< xL&+~ھ}{#" HZ _-V_M-`޼y'rR""#`..?beqL._|yDxǜ7ou@=֯[7gͬζ!C$$DDD7EӧG RӗjM% M7TWUk7fX2a99+q>rrsGqաC{T*'NNO: sx48M }/*,eXUrf+Y.0Ni;q4&CDdRG͓,"ѝ;w""">l՞Bl IKAgd6MPzpr!ϛG"N?>zhbgK=(JϞ=@ vlر#FZ555R^dinXIIIhh(UTTзo޽m۷[%aZ-[ǎd2LOcB/לRmڴOnݎկT#|||[G-Ν?~Ftbtdr7{C~~u5Jex|wӧO ^pa߾Hůdm +6kk=1a 8"9%%_GrJgz郭܈g@ Mʪ\J-W\tٲO x={\@iiiرݻ48矃'ٽƎUF2b|mލn~Cjʸy[77.77uƵB`6:д[2a2ǩߖsYl&݊ښjX,ךPؾ};bŊW$$&:I Rٛ\#qۀ&i2DM۶Zltƍ>|GXb(wv?~SFFƜ9״lX[C{h&(-)qEQQ7&Зn!-UECp"#O$YQQq PػOm@ 1xQBo>}ԭ{[ff,.[-JRiTTԲe!лw/ҥ ,{ ?Ytu͛7/\Xՙjv#4N@:XQ+vo'#|~zh7apbWʽ.Iy7 !lI"vlM- m ͛7'&&eee%%%iFY"dY&N<y\H} mkHz7;w߾:e l۾mǎUI)oS* oJ,ۧ|EBzTTśw_d\NVfy4 4-\xBqAAq]tJ1}ơ@o//sL`"-ZQ\=Zht݌k׮}_Uv~Ie` 9sF"H$SN-Z GűXc2Q#_.H*++/^,ːlFau .|LɢE4#3ƌT*ryZZڡD:INՇ54X}X|ƹbʥb͛7EG&+WܼysY0kǍGDHHȼRiиC޵{Уބ޽5̝&N6g`6ySTqAR|,|ݻw5۵kG9=۟={ZN &S\*? fo[y#Vnݺn 2$>{f̘ADI +,`p O2u۶}1C}d⤉'"322Խϯ{V͆Сc W-կjNa,KT$5Lk+܎߶7l !gtY=h`Q`M!)=iP)U*#4_d+6v} 85`Hǒ:~6Td2kժQk֬ V7lبf߿ſ6r]v{^b$,]q3ydk "mذaСVVGƝnG&MR4rHI>|hx/ Y ,-߯Yȑ#?Cڵl6ǫWg̘ѧϜ.^ lJmۯi&qA]' Lbccs<"ϯ@ 6|XUsðaÇQ~ 4@|0 ?FB7ۻ-TqX_URRz97`@u1s &Ä=5l0xBpڳ^>Μ>U^.z9ɯBWe q<55=C/BEfV\&[q'jH /6 5, ;vY'I6h׮]XXا@  Ϋ!**-WW*rWJ2-=SRm{GotiVnua\kZlB#g'';;/\yb0B0-%B 0M+SSRB!Ôdk<} ~jY:>_.0 c` BEIb[aX֭[/ ~VuN*'?L&bW%%eddŮ66? .]85q#@  $uILKM]O- IDATk!JBBk uة) SE`0LM b`zmKE(3}P3\鈨9o];Ierg'iӧUg(@|` I$X=$<>?>P qdq~4lNye'b1ik I$1S_`09D"5Y D"@@俕fqU.]tSK@ (L mL&R$E7l/%911))V-KKyc MnM0L( 0 M@ `F߆|ߩ1N@T GGڎ|_W$I@4>Gs3qd@  $1 +7 q8l[[TI$W,BaHM@ ]L&>0syɬV!=><Ձ$IR0L<@ I# # D$U$ g9_&cJ$rHD{;/(TW>qR_P%U@ 0 >LG$I~;ӵP*AH$&Mry<///AXϪJ(Ӹ Y`_el۷DuUOYDa$U*j TidR>ODeEJBharKKK+PVfHw'`ݻwtd(( G  0rV};Q&Wx*C"qTjeiammmƱ酲e/`sܙbS3??z쉖3 #0 &L\0V!6 ) RIj˗֮"8.J jq¥'K /6_xկ]EEŴiS==cF4_Plw;qu]Λ6mq\!&&fau==\]~f̗/G&v1cJc+((eGuaaS٩U˖˖.-++^UVV.͛;;p4p )Ѥ0RɬtkB=VVVΞ5۫c-*\Tn߶[.nbWW:}9>ڤ~ )bdd1M>} i,CBɓ&]]||h3fE aэZ. IHC#$M>[`q$͒ SNSRJREi VBY%__S^8Ɗ7nZ abHTTT\\\̵666ZrAbcoC&$<|ұpj Aoݻ7tHM4޽{Po8PXP@ApuHFFM/]u.Z$M6ɓ+ǯ]v5t4~V7Uʈî^u[/(4jVYK^?K=:xC=l,#UQO?M 3R\rlyȲRZKDN(ߝDjXL%*H^7!JEq=Gԏ=t|"Gv>{r^G lܰA7ڶm[ccoY[[o߱#efm۷[YYݼys۶T}\rUO_6Q6mܘAu.|bb Ն uo.}z<īה;vlz}"Us&WcÆ oϟ?Rc!77{YƏG̳= @ hbD?EGq ܼicNvKMvԂWZZg~zbE%>W%c*w?,Q5͛7p8-Z ͹W5BP(05k "<{oipC׮wPiղeKȁ`]l6I&;w3gN\|y-oڴ鞽? haD32ڵ|zv4c4~o} Mo(ʯOKHQߦaCG([ʡc#R|9Ou/F1ءF+@ _Invc-G%ؽmwΞw~5)ðLk4uv}v H*,a-w^)b2ի111ztƾu tK/jR#cԴ ͘Te}DׯoTӼ8|>/]xC6ʻߚԀ^H'+ʀ+(x;<@G TrjtyUX wQhޛ'I۬jbMʊ7iJ-GG<u> ð N[*))(blʦ4X&dY__/\8/JRK~] ׍?o8s@=u 8fϙ}ID"HNDFΝ3Ԡ&r/_Μ fYs̡Y#Ç =zWJ\.OMMݿo_O2$0&&F"TVVRxdomc41] H'+XnL&KOO3{6%9s:T\\P(߿?f(:Ō*Ssf87om0&n"kظaݴay׫z>>(:h8jؠ՚8?{[&*o銋 ۍ8q$އӋl6奤ԯ_߸ȨGv.: P({]mڜ8qRh`=59;;!i' xvV:t8p~3ٳp?0:!@Ϟ=)9FFt4~fwء7+y 8hmzS4Ԁ!uKΝ;̟~90u^g~#b"y#QC\|y-_rk> u#,:?9MO  r< #"5sl:|kkk@]r#"k l4l%jcݺzVVVC ۲G9Oٳ@ 9jԖj㑽qrrb<~cǎ="8yW6,K,v>}PV+WջzӤt1T"Mnckkaay -Il6cK-r:t8p bF)N9۽DÆ_r%XYYTU:SYn&''X,:u*+MYY*Mӏ7 V K!5CMڡC'O@ ht_̗1`0,,,2+ʅ!<#=‚Y5jk"5Q#ݽ+/zB -M&iccP֭[nn..?{,3+ƐĹsŦj4i2zO%@ Z|s3pBP`0rrr^$pmii* kH#۶m}T&\W^3g2@ sM$U*ڟ|rWS9Wk{xfL&{ ˭U\CKKK@YmP@65Gݻu@  oMj37MT**gjWuDKv nRҌ\\\*;bXF0L( >0 M@ RUWTAF"T*y_[&s^YVfI%4l$H  X%0 cٚ@ ƥBWT*R*X_faB `XfB `4ۑĕ%H ٥NyES":~@  `Aחuiz۠$ѡA RT\ƶPS*fCR[@o {ĄHD3\&E@|py|ӑ_" 0N\.Wxa|1*`` @ž W*r9A5P@ g͇;xt7h$L GفU AmF,Rp'·4ϗ4$IRP(gpX,Z@ 7n daE/:qx* %0H%1 i lM,,Lzݯ*B͛7o\M{m7ӧN]vRMM\}{3Du䯬{ݻwvG(.N Ϟ?|_ėBj\g=B䭭{4*’H`5V՛]s76,ܬ*vT+K+\F_jd%4}f&*K,딼Jfggggg'''/e>rĜz~߻w7K걸 Jׯ=jTqqG,+V&j⚃q 7R88f̣8''իWƦ'''_zukZlIF _L-;Z"XlRRd|AdRiܿ˗/׭]E(p\& }U$('K]w!'Zׯ_3fL^^^}y[Rk//A_xQokhΠVXQQ1s,__z 2^$ISB'--M,{{{kYee>>>b855dA\.uQQQ | ٣~P(ߖ[ԇQ}TZYY__Fo޲ 'NӨq]\# ܠg[[YYVӧOnԸ񪕫9KwyTVV.Yޮ]{__aÆ]tɤ޴JpuuUgKTVVΟ?qFnnn4UjZ`(9հmFrS,gf\\\zPg%===r BZ/ $*$XؓxWs#Gtuue|>{'OЛ@|tx3HwPȇynn#H#kIqysss)S϶03SrO*3TAr NTXWIرf<5jSiv:۱oNo]~=((H. 6|ت4m [?~ŋ6UEԩ>sL Î9Ү];8gΜٿiСgu֥_@ f<~իWgΜ r|wVILLLLLzl6}}aij uo+Ů$>$ƍԩ3rH Iri'"i_زu˕O8)3O>R_O?`֬YgΜqqƍ7>֌ԩS]hTN_-mbCD頣 0kՄ~q&Mܿwɓڵ/)-}$=K*++?!IӦ\Kw!-'O9gU4TktSI0 PAH&EdC:֪էO*Mȹnp;ǽBMy ,//UW4huosݻ׷O_ǷmJڽgk,,,Bׄǧ hy3gN>*~6Iޫ0lРAYYo>x 65ydػw_Rܳ{L4m۴4q箝wܶk_ϟ?6YYZ޺uk箝@[˻vZJJ` C3G<*޵kwbbRzzzԹs-[zŦ4˻yFrrOccTΩGʮZ|ERRRZZ3gF̖"!!ѣiiiTI*Ć0t#j&7F?w!q]u8EE˖.__߷uLLΝ;@ jP$6zg ܼicNvKCkYK0 PFzUӫ*Pܼy3۶mkܨ1qrrZzܻz+W6| iѢ]4<[nRfix-u.<_gL))F;vxaoپcG`vVwЁyڤJ'*ŮҵFTڴnq 66Λwnqqj Q~M02e*^Q^fi GĬM )> hUSm!|I 7G{F=ylD!6m@fffU3QѲUgϞ9}UnnzM2v|;w(D夥~ iolyx Q/£fE{-[էn MWZmmeuu 8SN թ&m50 IDAT۵|4R5R%5T6Z5RlՒd>~n:::ӷVZc'L&e+[vhv!@Ъu{v[H%%%G j&LMMa35V|b*6 8'NIIf0˼y[77.77uƵB`6:Ti45a$ !&U3,RRT|*Y\bք۩+VX"!1A*} |Gˠ;w| cHiLBa(ͭ6Fr]w]Ǐ䔑1glɍy01}T M\CkiJm$fgg'$&v ðN:=}իW/t>j/^<~\44#' &a>I I%g2Wɀw `UTV?~,{$IIvc-G%ؽmwΞwP墸LVh //dqgq [f_Xk9MxXl޼911)++K]g]p񂑬B8>iS·.Iϒsw@,W6ջzsMJ pn۾ 0H$* W\ьv%xI4K.gf&f,W>ߣߒ%KiBG"*Qt&ЫajQ6jݶ l۶ o;} :}8M۶V}ڵ\)a*L&Bu6ٳ$Ap9L` , IFD"KKjHPVISj9:<>w@P* m=~`fXp{~V`oYb*O{WL**55u9L\.defΛ7O3A`…ǎ-.)Q(>glإKTg:x ?7ld /+ҢE8ѣ@niVG/"(99999`L׮]ֿs-**v_Bx^/XpD"HN:hB7'Mg̘10fR)}zv3&m,&b)UoE{J(֪PёǫY$P[lFtxnǹ\nL&+e%ʛ| &WYZڱ2#$EP^R|a[N,17ZY,ּy\ttPXQkN~r͛7gΚfܸqA̛?O* 8I|] 봴i*o7 &O---p8b6 ǿ@X 'LO}3Ox{MrW#PR%08g74׳a׮4xjj*/puCsPh)֭ZMͣE6r8 ,k '#2B^ARV LqhV3F!;ztYY˧@ _\?lG^=4n .^e3TVۑ-\j<`0Badkk+ P}ԛ!8\^yEyjJJz ;qi?ߐ5LTO'iZJJKO>C!RL&bW%%eddŮ66F6'DGVBtn@ @  ƫW&XDn...Bjݺuhh@ g`n2 kkk HG"H Ԑ/Oj@  070P(L:ϫ$@ DM9\G!@ >717ITTꃡ%8aIa6\$f2h@ ⫥RTTu\\lll{YR$JRނ0⢢WY,Q@ 5Mլ@J%J5oR)R ]qS.* \Q1],YMl D 5{P(Tt@ ėH͊ JJZqB *pYµ )W:u\2#(IJRPpX,G LIDYYT*xC<>_Yd(,#wp>I{-in $ CbBH$2\8s\)o:ݼ> S 9 %L@ ,fn2  J CJ\.#C6H%)+0 ػ!OZ| *+*UYQA$---5BY+.DA3 P$'',[brJ/(D:.@ _昛$IL5 H@ ֦J*..d2)A/TjeiY\\R(PVDj[n4iqR_̬%K(@ ߊy#f LM8CT*U8I}|rڵٙY$ǥR)I5¥'K /6_xt111Ç R'5*۶uMRo>G;u==6lNsBNJiӦzznjiD~*IYY)==}|7n]}|m* bTVV.͛;;p4p &u**Bذ:wvuRΝ7mڨ kɓ&]]||Яdd1M>} $aaS٩U˖˖.-++3.$Ǐsێj9Iێv&яIIȕgXK3܈wod|9zH7k]O3WVj/1.qvX+//O3D"[X|{?qL:ILjT?% }LF'Ô!_ Jgq`oݔNn2lЩSgݻ7tHM4G vUu[uoY˜ѣF;rԨ!!tD}ұpw'm=s )gRAQyOc}okD Yb!C6nڨw>\y8צMԫ;_zb>*uԹ耀F Tv9r(x _弎>A,vٸa$yydeӧOc0!h/8 V* {(6(zܶmkl-kk;vdxmv++7on۶ոw7~<=rf6lؐAiϟ?׌ppmi9\|u6Ϟ=z4?75R;ؼe!Зӧ#OyeђmM7主Izcb1vL3p=0b*i@ 5DţlYFT1JNnU9ZB$DBIVYt$7oژeeihR'ggfjA+-Գ K?t=JpU˒gzK Oңؽ{74p8ΡkݻwWǎеkGekkpZj}5b_8Iy /4lh1| ^9~KeU#B-ylMjETbsr5RnvOݤ<ɓ&YXX9zUVF]VH˗Ɠ4hАk< /^Xw={6lH+%'5%z RRm@;D"Y(m۶{HLLtfee͓fe!!W^ ]5j.U\4“łʢMvFlRE-d1Xd21 H1ql\n˼y[77.77uƵB`6:ܚƭ!S\q%޵}x\b3y-ѵ5հX,oou [l.]tɒO5aM S͛7F☷_/?zTKݺ=og̘qx];WtD3IyyyII1+ ޼y]nj }I|hTMC6lÉ I"""\(R[@ ǥ榫=(rg 2Rj)20T@q ŋ4ήT: $٩wb9{2Rkѯg}KueZٯcKERay hJjv<=rvؙ_M)bU8o}U21)_|K >>^OG s>^^pEh.x*s0^;X w8ּ7(5/%L2{̒ M1`F7uc$41޽MBF^jvv/޹VYYٷ_?PH9 &l3Na"%s 0a(2Wo8}PVISj9:<>w@P0Coİ N[*))(blʦ4X&dY!JJIIԨr/_Μ$0wΜÇ+f?bo*jI}||`ݺu2,==mzE7wÇqܹsGfT2$0&&F"TVVRۆeOG X>uD"H$'"#Ι5Msf87ocaC=+R)SSS௿$9~<ܹs}}mT#O&_Ϛ5S*>zuW?:;;OFEMq+/k[7JPӱcӧNvT~A /\};6(hf:PPxNֽ[W*ϯGZZaÇ?sǎ)',dŋ e Ιݡ}{[;;Ч3$m)SFD{iϞ=33M,/6ķ~q!Bݪuk@ hRM |Jo%!e `2$i4ؗWQY7~I423`ͭ\_9{T&aka2z>s6K׷&Ⱥu{󭬬e~ylǖ.[֠aC.+:tp@&- !IrѢ]>((hڴ6we#FX[[ ӧwYUq^{ڲX,mOL+bUzQw'._x<^ ]XXկ3gw"h+W+++uUVGݧx;v  dܹEE۴Qv l֬YAAwc1O:&=}LϞ=Qlf05JP#֐Aa&u޶SS>~H$YYY7rRO-%˔R}^̴ԄD{;WWW@`\l0r൫5qONNfX.uhc wqM]?! I@P=Eą{[qjV/Ǣ'C.`ggwʕS-<988"[XtO?=p@Qqq7ިjQ""ƪ(2#}2MZ0mggP(-~CWmցAb \ɫ'bD`B 5rIDDD馈$}wd 5[=.)X:?:Mnn۹:vɬzH;_Zq#|c!kᣇ:os[ At:Jvvvv\IDDԐer?2l bYRRb'KԆRGS} H*~Ĕ]<]UKUryEЕ:;_xf*~5x̸B%"j%jTp\cVTT$n4tese1) 6 N Baaa_`Qq JuAA y8of桫Y *WY!'g_#7w#7nl Fѥw 8 ?:hhCGDD8n Ju%MF#,d/cѣ  *hK4Rv + ծybIKL?-ₜ\ ozڙ -hѥ\.7ʿ}TG-[Y7SNtH#GFI$7aT=!.Q14\ɠ~CBoO^.x.5ib }du˿s$`,6kR鈡5tv,n;NNL.ޞe]I;~D0dᡭ Ǻ8t \ni KDT.ob{q Zm=rb5@"9;;인ewg@+. WCnooqe+Q+=~*=1y!gO?uJл{c6oоm'߀MIBҎ3o:t5>\BCƎm8}.1cŷn;ɥS{Rw9iߖ-/(խO">z?~u4q:Uw$n;w }k}w[P9ywztӱ]sn :~@Twrw'tV:j~̉.~1xvpAdSʥ.oO˖b՟?S֞CJ4/dGIOOέWiN* 48pAC-k M^n-ᡭ}Zo`'N\zKm>1x ^vkCO$$4s 5ob ξ uR\=Up̫1YYGwo=qBy1;<"4rԻ-ܒu;ۗ+qw+k3u;m]wUkׯu 㧆s"&}p1 $ !7o{` Ś\vQ5"#[C(. 쏲]~Aܼy9%(Ku@~aR^)[>`ggֻ{}I@"tf$xjn.N=mېhJ\RLU勆 .pvv1omZlbr\ #ج:ruup\q Ϟ ^y]l^ QLpv0DDMn6ntNWnvS 1awJRⱴ//Svptpn=z?nqTdgku΀R@[Xmޞ7? U~+:tw0>c:t-W_*[h&ND"Uf wߛNJ YZ6-PZZZYf"ج)v]EbBmV:ngga/Q=쑔 4v⏣ @"=-/~qZAj1fVv @nzt j-*}()Q{ʒmy{P?8,zRK*k4V;FV+^2PvvW'+k<~ցƭ뎝H 5Z\&W)UZFU _M19-yyV`qfV6ko{yz<}ܰ+8 ,wӚ6oelEne4pvh=:g7<<__mٸ^R<6z $r?:YCeAQĕ992N.W ;[, _ KJܳ]ܮ^n&TDޯne߮.hJJJ\`|H#x 4`MIsݻs CoGJ2f[-tsgbS3A 5n vV_qO!2ΞlLjަ--*.R)U/RYSut~z` gΝ>h0qWUoK~2!i煋7 :e?icޛn ?~<==7qoh4 bcvvܴ.^|*]+y79j Pky[L]:1[")ϓ$H=~Es]c:vpIܺ}kS /$SٹԼM+[0 Pr¹mzl}͚ԿSZ?(.f=ZnlpAo;v}hDBDDl6 4ݼgvSvuؓRP6ʮW:YRoYdt?ӵV.zv$m.Ἓ.Jev/A\|1e_򿶬 BH`h[wlL-\jQטnmڻyʵ+M'R% b?D&IMtj!T*=qb_} &sok71hЈRq;T{kئ-2ܺ} R Hr+5UYG:nߺtoo?rK3%~':uQed_tH!.N""g7ITtI-#u,y'f·3"_8@?АPɍd'NsJ'fvv|HSkw?Rb] 7G[߁U*?i3/^6f&îOBFo3wN?I;t5/O}^^g BZ~Z;T?+Z7׿%rF.7~^RcQ:HJ(5p|5dO5 44G.}W {(26nX-vrj&~y*k_x 2?Uh馽\h2D @b'Q9 /_)ј?Vn/W;IϷQCWh4ܳ_hfvO:-'FUG!! \.xٽow DDDӖjsr;X߁P]hfl9єܳ5M7$""?:?Mf#|l䃏w DDDDTS>'n 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 5tӭmkwDDDT?UQ ;:2e׿0ħKL}BDDDu꾿3 M}B6ԀMعq~o;""" 1GHP}B6ԀMa_VQQi@k7aIDDDD6tl#FYDDDD(UnnX. """Ft3<,. """Fk7Ȇn 1$""""|fȺ_֯sBDDDDdgZtޟNDDDD5DDDDdCL7Ȇn 1$""""pPA(--h4krT*H 5UN7Zٷo_tQ&dk~W,cRmQQNNNmF:xA*V7H""""_U- *jhU*UV.^pqqVDtջ7=o?+ TzQsӠN*:Ν%~U~,{=#-*V0|%O׮__p޽{srr\\\u:q-Z7'1qk֮,..ޓ(K.=sR/_Ϝ98hdoo/6-~{ }[:lScםb3lᕛ&T3#`'F_zן -n֬gzoP 3}9V(5}]p?p!,"bnt5ez GGJu)ɱ_r% ^Ѩ6orƍ0{}MD7O3l_zuy}v|e]?^_feemܴ)9%y_~զ{Fٹc%9VWN:E,Y|9sj5{S2*@1_9v%%%Hړ,tǎХsB2׵k&MbG=rJS؈m a!!;wjjuRƿn\ֹs爈pj9d"h_n߼iاn:qapOba{…9m-ZkEYpq{~nv%v|6*j%_uq۶*ϛ7O<|Ν?6n0 /[[0չs cǏt)͚5KIM)--5u: ;墭06"j:n wlw uݺycNrXwֽBprrzgܼyLTo͘(ɂgΘ u{}ョݺ)rO>_& :dtBcJ$[~O߿_&Mp5OP21b$KOs޹s'=-%ILL7WJJJZ:5jni4%!驩)AرCK$??ZC&YT(öq22| %~rrr qCR2u'l̞={ҥW\6_|l J#y\ZǝsCB\]+L_Ek06"j:n   ff<@fobT =/(e|­ދ/J.^d(YcNHmۓ-.bl5՚SZZz䉤=ɝt]tMLs1V髲ht:5jn:95kѢEBB3g4E9yo߼vi?o\֪UKޙND5ѭkW~Yf}~JR*^|O>.WA&8qC?ޕp:tntٳw@ Gv֭\~YUOFQ#S;:]Jjʠ!C._P(ZCf7oqFLN!!3jbĉI)GXCĉk}nݺuƌU xŗw (Ԏ:JkVC#vM"]V*vhߡzNxrtl52~PG ڹkG-^V+׮v;Ӊ|||.?lPwwwT>tȐ nGӧM{p0GGG\{Ҕ)^uCHZ-<<$MqEf5l9w{(JBզG|XӱQlDH&O4x`l#7_f(j***j4bZ>yg+IfԩSXXB JՎm2Y5*ODDDD i(۾}9U3g2 B{<8&&Ɛk*YODDDD[MDR9tQ)ڴi#H23χonkGL""""jdnJRgg܍mn\:Q&cwرc^Ε=]LW*>>>;TZ4oTqHDDDDMQn999rw7bJRt"""ʷK$JT*+> ]"0$"""jʪd"DDDDdj?杈2DDDDdCL7Ȇn UVcǎH$ ;;;;{1MWWWG<==Q㐟4-}vVRt\f ( IDATê5[7o:پ];+WaNYT!BUJɏ>'"""jJAe}}ޙNDDDD6tl&M""""!DG"ۍ}: 6N$S삨Q`ITTx_cSuf=kHR-ޫezcITF`Rn|5%U` E}CuQ@P9&Q̤`ٴ />áz\X2D3${@h>crFa܁X`n <lR`0O Xrou9h|8 @ `&\UuZ‹Zrtk?]mdTgS%8/뷯߻8U@aB ÆCd(@ hNU|>d@VZWIg59@s: " Tp4"rl ^ lxXnT!K:`ߏ?|8P+SPkЙ*J PkIjk/TN~;];,pX k/j og{8@^֪)oGvh1&Y}5`Tn>E VI_v@!0WE5_,4t_%7po T5T_eqa@>i{ pl3!*`I#X3`@B6 pK:Z w57 U{+;e o#Dfo \f"Nq!ȁ`dkS3o@& ~|=IU ،j+y Rp}J$אF."TJԗհ 8@gd4ѸkTUW0SJbe߸QyDMM" 1R>FߓQ)_v5\_x G=XIcF=LWlS;rKIU ،ZCX8Y?If0E?2k+bF#. [?K%vU)'j֦坪l11$ Z{:Vo VW@;+̷Uw&Fߨү: vq͚ _B&MIF3g`p䖬r/k&;e# :t, [ {s$eKO*Z_rœPE:cQMTo쭆\qZ Uo$٤š3_hT@0 @Wys7@*C[mMi]AŪiT̿s #"M"K xMѮ>F57F;B@ \*dv $`|~%/쭆,2,3Nj1Tí_@у ,1W h C{|oϚ 8at pa 6 ۚ!2Vbæ`)kJ#p@1кDMM"KV]k 0xH _Y]30 8p$0:'WE˗~Ib/7f* [r (0fa[3Dz)X Đ$ QctȒNFwF+]`# 0 <A`X pe5\E?#MnP| r wCg9C@Ѯ=t DFK/cöf{ lџr7`)3[CUÁhDEGM4i oa0CIFFF```\BD] p.Y[?]6#N-yDXCCB %y(n9sSH:VW8)YO1$&]3-@,h TR=KtaIDt/)HJ;Et_aID:z}`;co;Et""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&M""""!DDDDdCL7Ȇn 1$""""bIDDDD6tl&P-IW0L/U+H:2>U6 &"""+;WЯ!]zT}/׳5k6oNPq ""j}dgm PqԷ~s\ r9<=%K/wT / #:EExmCDD>AW_!, BB0{=-w =:UK ƍxaŪUYYX3>j1.4T0{6""T"(*VXW_7dF˘y0+5͌3կڟXnIVud `λq,ΞʕHME`P]V)NZ0Sbܲg1}:rZYÆa׮Oct>mM+L~[]6/xOy,Oݛ<mgfOg SgI,