s s .$ .$ .$$ .$$ .$^$ $$$ .$' $. .s$Ss.. .s$Ss.. `$$ .s$Ss.. .$' $$ .$$$żų^ż$$s. .$$$żų^ż$$s. `$. .$$$żų^ż$$s. .$$' $$ $$$ `$$ $$$ `$$ $$ $$$ `$$ .s$$$$$s. ż$. `ż$$s. ż $$$ ż $$. `ż$$s. ż .sS$żų^ųżS$$Ss.ż `$$$ż' $$$. .sS. $$$ `ųżS$Ss. ..ssS$$ż' `ųżS$s. .$$' `$$$ .s$SżS$. $$$. .s. `ųż$s. ż$Sż' $Sss. .$$' .$ $$$. .s$Sż'.$ $$ $$$$. .$$' `$$ $$$$$ $$$ .$$ `$$$ `żż' .$$ `$ $$$$$ $$$ .$$ $$$$ż `$$s. .s$$' `$$s. .s$$' $$$$ż `$$s. .s$$' $$ż `ż$$$Sż' Ms. `ż$$$Sż' $$ż `ż$$$Sż' $' $' C O R P. PPLX 2.OO PCBoard Programming Language eXtractor (C) 1996 Lone Runner ś ś ś-ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ--ś ś ś Main Coding - Lone Runner Parts - The doC ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż READ BEFORE USING ! Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ You may use this program provided that : - You are not part of any federal group (i don't like federal groups) - You are not part of Clark Development Company (nothing personnal...) - You planed to use it at home for personnal purposes only (no money here!) THE AUTHOR MAY NOT BE RESPONSIBLE FOR ANY CHANGE MADE TO ANY PROGRAM BY USING PPLX. Nobody will ever ever enter an action against Borland because they made Turbo Debugger or to V Communication because they made Sourcer. There is no more reason for PPLX author to be responsible for any law violation by using this software. If you don't agree with the above terms or if you are not in accordance with restriction use, you HAVE to delete this software IMMEDIATLY. Further use of this software will be considered as the acceptance of the above terms. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż DESCRIPTION Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ PPLX is a PPE decompiler... working with PPE's up to 3.30 handling functions & procedures, performing heuristic analysis and intelligent postprocessing, allowing you to remove backdoors, customize uncustomizable PPE's, recover a lost source code, or have a look into any PPE you choosed to use... See WHAT'S.NEW for release history. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż INSTALLATION Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Hmm... copy PPLX.EXE to your UTILS\ or WHATEVERITISCALLED\ subdirectory, preferably in your PATH... ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż USING PPLX Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ PPLX FILENAME[.PPE] [/A] [/L] [/U] [/F] /N Disable heuristic analysis /L Don't delete PPU file /U Only create PPU file /F Disable postprocessing (Flat PPLX 1.xx decompilation) ie: PPLX C:\PCB\PPE\*.PPE /A PPLX WEEKTOP.PPE /A /L ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż POSTPROCESSING Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Starting from v2.0, PPLX will now postprocess the created source to remove the nasty PPLC transformations. ž Original source : Integer A For (A=1) To 2 PrintLn "Hello, world." Next ž PPLX without Postprocessing : ~~~~~~~ Integer INTEGER001 INTEGER001 = 1 :LABEL000 If (!(((1 < 0) && (INTEGER001 >= 2)) || ((1 >= 0) && (INTEGER001 <= 2)))) Goto LABEL001 PrintLn "Hello, world." INTEGER001 = INTEGER001 + 1 Goto LABEL000 :LABEL001 ž PPLX with Postprocessing ~~~~ Integer INTEGER001 For INTEGER001 = 1 To 2 PrintLn "Hello, world." Next Nice eh? :) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż PPU FILES Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ A .PPU file is simply a v3.xx .PPE decrypted to the v2.0 flat format. You can run a PPU after renaming it to PPE without any problem provided you use the right version of PCBoard. HINT FOR SYSOPS! Decrypting your PPE's will speed up your system as PCB will not have to decrypt them before running them. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż TROUBLESHOOTING Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ WARNINGS/ERRORS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ "x function(s) were declared but not defined..." "x procedure(s) were declared but not defined..." This means that, in the original source code, a function was coded but not used. When PPLC compile the source, if a function is not used, it doesn't update an important field that holds the function coordinates... In this case, PPLX will not be able to detect the beginning of the function, and, if there are local variables, to declare them. The same problem may appear with procedures. "Unknown statement xxxx, dunno how to handle it... Skipping!" This means that an unknown statement was used, theorically, this cannot happen, but in real life, a corrupted PPE or an anti-decompilation trick can produce this warning. If an unknown statement is found, it is skipped, causing some next statements to be irrationnal... Code may redecompile correctly after some instructions but it is not likely that the code will be recompilable. "Unknown function xxxx!" This is a fatal error, an unknown function cannot be skipped, it is due to the same things (corrupted PPE, anti-decompilation trick) but cannot recover. "FATAL ERROR! ..." Any error message beginning with "FATAL ERROR" means that the PPE cannot be decompiled due to one of the following reasons : NORMAL REASONS - An unknown anto-decompilation trick was used - You did not have enough memory - The PPE was corrupt - You used PPLX on a PPE compiled by a futur and unsupported PPLC (currently, PPLX can handle 1.0 to 3.30 which is the latest so far) SHITTY REASONS THAT SHOULD NOT HAPPEN BUT THEY DO BECAUSE YOU'RE STUPID - You patched PPLX to make him do some misterious things (hmmm... ;)) - You traced PPLX during decompilation and changed a random variable. - You patched you PPE before decompiling it, just for trying to make a brand new anti-decompilation system. (Well... PPE's are encrypted, changing only one byte will fuck up the rest of the PPE unless you can decrypt it, patch it, and recrypt it...) OTHER REASON - I'm a stupid coder and i forget some bug(s). PPE'S RUNNING DIFFERENT AFTER BEEING DECOMPILED & RECOMPILED ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Some PPE's (CSSC for example) compute a self check to see if they were decompiled and recompiled... It is not a big deal because you have the source so you can remove the self-check test. ANTI-DECOMPILATION SYSTEMS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Sometimes, PPLX will report "Anti-decompilation system stripped!". In fact this happen when a suposed anti-decompilation system has been found. Depending on the anti-decompilation trick used, PPLX will remove or modify the line so it can be decompiled. Sometimes you won't even see the anti-decompilation in the resulting PPX file, sometimes you will have something like : INTEGER001 = INTEGER001 - * Just modify this line or remove it so the file can be recompiled. When PPLX remove the line itself, there is always a risk that this line was really used in the code. For example, if a coder put an anti- decompilation trick on a line that assigns a variable, he can always use the result of this assignation elsewhere in the code. Because the line has been stripped, the PPE will not run as before... Well... Get a life ! you have the code ! Don't expect me to do everything for you ! :) PPLC BUGS ÄÄÄÄÄÄÄÄÄ We all know this, PPLC is not bug free... unfortunatly, there are cases where PPLC bugs prevent a source from being decompiled correctly... In most cases, PPLX will detect the bug and place a warning in comments, so you can check easily what's going on... But sometimes PPLX will not detect the bug, simply because PPLC compiled the thing as another statement... In those cases, PPLX will decompile what is coded, and will not be able to guess that PPLC was wrong when compiling it... For example, try to compile : IF (!(A == B) && !(C == D)) THEN... and IF ((A == B) && !!(C == D)) THEN... Those two statements are compiled the axact same way by PPLC although they are not equivalent... However, PPLX will always decompile to the first case, wich is the most common one (who will put two NOT on the same test ?!!!) and, more important, the one that PCB actually execute... ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż WARNINGz / DISCLAIMER Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ž This decompiler should work perfectly on your machine as it is the case on mine. However, some PPE may not decompile, due to some new anti-decompilation tricks that maybe will cause PPLX to crash... It is possible, also, that PPLX crash or fail to decompile a PPE because of a special instruction chain that i didn't manage to handle... In such a case, please mail me an uuencoded version of the PPE... ž Do what you want with this... You may use this program in any way you want, you may destroy it, burn it, eat it, smoke it, inject it, vomit it, kick it, suck it, piss it, shot it, print it with reversed lines, rename it to zip, arj, arc or whatever you want, try then to extract it, to pkzipfix it, you may also perform sort on it, uuencode, crypt it with PGP, play it on your GUS or even your SB, you may even decompile, modify it, you may do WHAT YOU WANT, but NO MEMBER OF AEGiS CoRP MAY BE RESPONSIBLE FOR ANY DAMAGE CAUSED BY THE USE OF THIS PROGRAM OR IT'S MODIFICATIONS... ž I don't ask any money for you to use PPLX, so don't expect support if you experience troubles with this program. If i have time, i will answer each email, but i cannot garantee this nor. Don't think it is because i have a big ego, but i simply don't have much time :) Anyway, be patient, answers may come a lot later than expected, but they may come... ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż FINAL WORDS Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ž All you PPE coders ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Stay tuned these months for PowerPPL v3.0, featuring transparent use of Chicken's AWESOME PPLDebug with your *real* source! ž Clark Development Company ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Why do you bother changing the cryptosystem ? As PCB will always have to decrypt a PPE, you'll never be able to prevent another program from doing the same... Decrypting is SLOW ! PPE v3.30 have to be : - read from disk - decrypted with your stupid v3.30 XOR "a deux balles" - AGAIN decrypted with the v3.00 cryptosystem Repeat this operation ONE variable at a time (!) and then for the code itself... For a PPE worth using, this can take SECONDS on a slow machine ! ž Shareware PPE Coders ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Shareware PPE ? Come on... be serious. ž PCB Sysops ÄÄÄÄÄÄÄÄÄÄ Claiming a PPE is yours by changing a copyright notice will not bring you fame... It will only bring you more & more lameness... ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż CONTACT Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Don't write me for things like : "Please, explain me the PPE format" "Where could i get PPLX source code?" But write me for anything else... lone.runner@nuxes.frmug.fr.net lone.runner@ace.epita.fr Francis Gastellu on : A.C.E +33-1-4588-7548 +33-1-4588-8809 Lone Runner on : THE DEADLINE +33-1-4648-6763 +33-1-4644-5796 UNDERGROUND CAF +33-1-4882-2581 Don't expect a FAAAAAAAST answer... :) If you want to send me a postcard, this will be REALLY appreciated! Of course, if you have too much money, you could send me some or, maybe a CD, or some hardware :) Write for anything to : Francis Gastellu 42 Bd de Stalingrad 94500 Champigny Sur Marne FRANCE If, for any reason, you need it, here's my PGP key. -----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.6 mQCNAi/8EHAAAAEEAKmS4/mymaVeyczvrKdr4sSdj8vKXHWz7SOK5wcI3S/bkIzk cF7b0/V35uP5ItStUxNsU54zRDS9snl3MH4/9wgcpky/GEGVAeuC0suybpBOLiJP JKUkffhk2jlB7qFB8+dQhMjBc1iUST8rDSuID7t7ChqdY2xHihxaVwFGSpdVAAUR tB5sb25lLnJ1bm5lckBudXhlcy5mcm11Zy5mci5uZXS0C0xvbmUgUnVubmVy =sqjP -----END PGP PUBLIC KEY BLOCK----- ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż SOAP Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Do you know SOAP ? No ??!!? Well... SOAP stands for "State Of the Art for PCBoard", it is a fast-growing internationnal network dedicaced to PCBoard. For now, SOAP is distributed in France, Spain, Italy, Denmark, Germany and Switzerland, and many groups has joined (like AEGiS, TNT, ECR and more). The purpose of this net is to create a big meeting place for all sysops that have interests in PCB (PPE Coding, Configuration problems, Interfacing, Ansi/ascii art, etc...) There are also group-restricted confs for PPE group members. An echo file is under develoment and should spread all productions from all groups on SOAP and more... If you want more infos (Conf list, etc...) see the Soap Infopackage included into PPLX archive. See ya in a SOAP Conf ! ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ±±Ż GREETS Ž±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Gandalf/AEGiS - Tibadida! Chicken/Tools4Fools - Thanks for your hint about the WAIT sttmt. Hope to see you in a party next year with more time to speak together than we had at wired... The doC/AEGiS - Jeanneton prend sa faucilleuuu, la rirŠtteu, la rirŠŠŠ-ŠŠ-teuuuu!! :) Number Six/AEGiS - We want Deadreader finished! Jason Bourne/AEGiS - GP ROULAIZE! YEAHH! Ferem/MWB/AEGiS - Don't be upset about chapi-chapo, it was only for once, we won't do it again :) New ID/Massive Posse Kloy / (“RT Qube / Tools4Fools Turbo-D / Triloxy Speed Freak / Triloxy Captain THI Medicus / Keen Like Frogs Locutus / mozICart Parac / mozICart All PPE Groups - Go on, continue to release new products, and feel free to chat with us! Greets also to all my contacts over the PPE scene, all sysops from the boards where i usually log, all people that already or will send me email about PPLX, reporting problems or just telling they use it... :) At least, greets to Marie-Pierre, Florentine, Andrea, Iwona, Charlotte, Camille, Dominique, Alexandra, Line, and all the nice girls who i gorget their names (shame on me), and who will, for sure, never see this file :) _.Lone Runner _ _ _ ___ ___/\ _________/\ /\_____________/\________________ ___ _ _ \/\______________ / _ \/ _________ / ______________________ / __________ / _/ __/ \ ____)___\/ \ \_/ \/\___________ \/_ \ \ \_ \ \_ \__ \_ \_ / / \______\ /____________/________________/_____________/____________/kP ś-------`------'---------------------------------------------------------ś