mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Msieve

Reply
 
Thread Tools
Old 2016-01-15, 15:48   #1
loopdemack
 
Jan 2016

68 Posts
Default I'm trying to speedup AES MSIEVE factoring using CUDA build but...

I'm trying to speedup AES MSIEVE factoring using CUDA build but I dont see any success its same speed like with non cuda version.
How to force using Cuda Nvidia GPU?

Hello Dr Gladman could you tell me is there special command that I can know that your compiled cuda version of msieve is using cuda at all?
Like to show me that GPU is used, and that library is used, I don't see that anything is used.
I'm watching GPU utilization and its 0% and I see that my cpu is 4x25% which means I'm using my CPU.
I installed Cuda toolkit and I don't have microsoft visual studio (toolkit installation complained about visual studio not present) I dont know do I need to install Visual Studio in order to use msieve cuda?

Where did I make mistake for not utilizing my Nvidia GPU?

I'm on windows 7 sp1 64bit
Here is the paste of the actual msieve:

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C:\Msieve>msieve -v -e 0x2210FEE51674DC85D6B7CA8CE373518BAE3A6B7A21C70C976B8C26CBF8CF84CB8525B982142C2E5885FD967459E9041E82BB210D562C0FE3B4C035256A871DEF


Msieve v. 1.52 (SVN unknown)
Thu Jan 14 22:26:43 2016
random seeds: a36c8158 e6eec901
factoring 1784201585035392943382886765412274918625109709538884734462486341468956
46678669551048971047831265739010761443728254596771467332559243468940097505174638
5391 (154 digits)
searching for 15-digit factors
searching for 20-digit factors
searching for 25-digit factors
200 of 214 curves
completed 214 ECM curves
searching for 30-digit factors
425 of 430 curves
completed 430 ECM curves
searching for 35-digit factors
P+1 stage 1 factor found
commencing quadratic sieve (108-digit input)
using multiplier of 3
using VC8 32kb sieve core
sieve interval: 47 blocks of size 32768
processing polynomials in batches of 5
using a sieve bound of 5375099 (186667 primes)
using large prime bound of 806264850 (29 bits)
using double large prime bound of 10756225367263650 (45-54 bits)
using trial factoring cutoff of 54 bits
polynomial 'A' values have 14 factors

sieving in progress (press Ctrl-C to pause)
3444 relations (3243 full + 201 combined from 196287 partial), need 186763
---------------------------------------------------------------------------------------------------------------


Its painfully slow I was hoping to boost speed with the Cuda.






Here are Aes and Bitcoin keys

C:\Tesla>teslacrack.py
Cannot decrypt ./file.pdf.vvv, unknown key
Software has encountered the following unknown AES keys, please crack them first using msieve:
2210FEE51674DC85D6B7CA8CE373518BAE3A6B7A21C70C976B8C26CBF8CF84CB8525B982142C2E5885FD967459E9041E82BB210D562C0FE3B4C035256A871DEF
found in ./file.pdf.vvv
Alternatively, you can crack the following Bitcoin key(s) using msieve, and use them with TeslaDecoder:
C30C9B81114913F821F91E037718880767020A0748250D38FFEB49C47C9E8334448E59797A95DFFE4702AA5ABB0068BDAD8C7D070B6B441B09A5AC0297C81CC8
found in ./file.pdf.vvv

-----------------------------------

I attached the teslacrypt pdf file this should be RSA 4096 key
personal identification ID: 794AA2F9BB5C19D2



With the tempo of factoring with msieve it should take 18-30 days to crack the number.
Maybe I'm doing something wrong.

Thanks in advance
Attached Files
File Type: 7z file.pdf.vvv.7z (437.1 KB, 143 views)
loopdemack is offline   Reply With Quote
Old 2016-01-15, 16:00   #2
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23×223 Posts
Default

You should use YAFU. Follow the steps here: http://www.mersenneforum.org/showthread.php?t=20779
wombatman is offline   Reply With Quote
Old 2016-01-15, 16:43   #3
loopdemack
 
Jan 2016

2·3 Posts
Default

Quote:
C:\yafu>yafu-x64.exe "factor(0x2210FEE51674DC85D6B7CA8CE373518BAE3A6B7A21C70C976B8C26CBF8CF84CB8525B982142C2E5885FD967459E9041E82BB210D562C0FE3B4C035256A871DEF)" -v -threads 4


01/15/16 17:40:56 v1.34.5 @ LOOP-PC, System/Build Info:
Using GMP-ECM 6.3, Powered by GMP 5.1.1
detected Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz
detected L1 = 32768 bytes, L2 = 8388608 bytes, CL = 64 bytes
measured cpu frequency ~= 2644.648650
using 20 random witnesses for Rabin-Miller PRP checks

===============================================================
======= Welcome to YAFU (Yet Another Factoring Utility) =======
======= bbuhrow@gmail.com =======
======= Type help at any time, or quit to quit =======
===============================================================
cached 78498 primes. pmax = 999983


>> fac: factoring 1784201585035392943382886765412274918625109709538884734462486341468956466786695510489710478312657390107614437282545967714673325592434689400975051746385391
fac: using pretesting plan: normal
fac: no tune info: using qs/gnfs crossover of 95 digits
fac: found nfs job file, resuming nfs
nfs: checking for job file - job file found, testing for matching input
nfs: number in job file matches input
nfs: checking for data file
nfs: no data file found
nfs: commencing nfs on c108: 314573908204972170772685162835613740501161465222989282532110802340617739158508803543279344012292489789672743
nfs: parsed lpbr = 26, lpba = 26
nfs: continuing with sieving - could not determine last special q; using default startq
nfs: commencing algebraic side lattice sieving over range: 1484000 - 1492000
nfs: commencing algebraic side lattice sieving over range: 1476000 - 1484000
nfs: commencing algebraic side lattice sieving over range: 1460000 - 1468000
nfs: commencing algebraic side lattice sieving over range: 1468000 - 1476000
'..' is not recognized as an internal or external command,
operable program or batch file.
'..' is not recognized as an internal or external command,
operable program or batch file.
'..' is not recognized as an internal or external command,
operable program or batch file.
'..' is not recognized as an internal or external command,
operable program or batch file.
nfs: could not open output file, possibly bad path to siever
nfs: could not open output file, possibly bad path to siever
nfs: could not open output file, possibly bad path to siever
nfs: could not open output file, possibly bad path to siever
fopen error: No such file or directory
could not open rels0.dat for reading

Where is the problem beside missing rels0.dat, should I create empty rels0.dat, what about other errors?

Last fiddled with by loopdemack on 2016-01-15 at 16:45
loopdemack is offline   Reply With Quote
Old 2016-01-15, 17:05   #4
rob147147
 
Apr 2013
Durham, UK

6410 Posts
Default

I've factored it for you anyway - it took less than 3 minutes of ECM using 2 threads
http://factordb.com/index.php?id=1100000000814812720
rob147147 is offline   Reply With Quote
Old 2016-01-15, 17:12   #5
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2·1,789 Posts
Default

Quote:
Originally Posted by loopdemack View Post
Where is the problem beside missing rels0.dat, should I create empty rels0.dat, what about other errors?
For reference, what you need to do is make yafu aware of the location of the gnfs sievers, which you should have downloaded from the post wombatman referenced.

You can do that by putting a line in yafu.ini something like this:
ggnfs_dir=C:\location\of\your\sievers
bsquared is offline   Reply With Quote
Old 2016-01-16, 07:44   #6
loopdemack
 
Jan 2016

2×3 Posts
Default

Ok I did edit yafu.ini to something like
Quote:
B1pm1=100000
B1pp1=20000
B1ecm=11000
rhomax=1000
threads=4
pretest_ratio=0.25
%ggnfs_dir=C:\ggnfs64\
ggnfs_dir=C:\ggnfs64\
%ecm_path=C:\Ecm\ecm.exe
%ecm_path=C:\Ecm\
In C:\ggnfs64\ I extracted ggnfs-svn413-win64-core2.zip
in C:\Ecm, I extracted ecm644_win64_i7.zip
I dont know why the first ecm path has to have ecm.exe and second ecm path doesn't have ecm.exe.

I started yafu now and its seems to work painful slow *(0.00966 sec/rel)) but its work now.

I think its extremely slow and I'm doing something wrong again, like wrong ecm or ggnfs version or something is wrong with the settings.
Also could yafu work with GPU.

Here is the yafu output for now

Quote:
C:\yafu>yafu-x64.exe "factor(0x2210FEE51674DC85D6B7CA8CE373518BAE3A6B7A21C70C976B8C26CBF8CF84CB8525B982142C2E5885FD967459E9041E82BB210D562C0FE3B4C035256A871DEF)" -v -threads 4


01/16/16 07:50:24 v1.34.5 @ LOOP-PC, System/Build Info:
Using GMP-ECM 6.3, Powered by GMP 5.1.1
detected Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz
detected L1 = 32768 bytes, L2 = 8388608 bytes, CL = 64 bytes
measured cpu frequency ~= 2642.963510
using 20 random witnesses for Rabin-Miller PRP checks

===============================================================
======= Welcome to YAFU (Yet Another Factoring Utility) =======
======= bbuhrow@gmail.com =======
======= Type help at any time, or quit to quit =======
===============================================================
cached 78498 primes. pmax = 999983


>> fac: factoring 1784201585035392943382886765412274918625109709538884734462486341468956466786695510489710478312657390107614437282545967714673325592434689400975051746385391
fac: using pretesting plan: normal
fac: no tune info: using qs/gnfs crossover of 95 digits
fac: found nfs job file, resuming nfs
nfs: checking for job file - job file found, testing for matching input
nfs: number in job file matches input
nfs: checking for data file
nfs: no data file found
nfs: commencing nfs on c108: 314573908204972170772685162835613740501161465222989282532110802340617739158508803543279344012292489789672743
nfs: parsed lpbr = 26, lpba = 26
nfs: continuing with sieving - could not determine last special q; using default startq
nfs: commencing algebraic side lattice sieving over range: 1484000 - 1492000
nfs: commencing algebraic side lattice sieving over range: 1468000 - 1476000
nfs: commencing algebraic side lattice sieving over range: 1476000 - 1484000
nfs: commencing algebraic side lattice sieving over range: 1460000 - 1468000
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
Warning: lowering FB_bound to 1467999.
Warning: lowering FB_bound to 1475999.
Warning: lowering FB_bound to 1483999.
Warning: lowering FB_bound to 1459999.
FBsize 111588+0 (deg 4), 211452+0 (deg 1)
FBsize 112197+0 (deg 4), 211452+0 (deg 1)
FBsize 113270+0 (deg 4), 211452+0 (deg 1)
FBsize 112696+0 (deg 4), 211452+0 (deg 1)
total yield: 71857, q=1476001 (0.00926 sec/rel)
499 Special q, 752 reduction iterations
reports: 353730072->28419970->25466267->6745808->6716570->5781810
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 71857
2702/2656 mpqs failures, 53114/39301 vain mpqs
milliseconds total: Sieve 203340 Sched 0 medsched 60034
TD 306618 (Init 4015, MPQS 217460) Sieve-Change 77438
TD side 0: init/small/medium/large/search: 1233 15035 2894 4194 18285
sieve: init/small/medium/large/search: 3832 32917 6183 47004 16765
TD side 1: init/small/medium/large/search: 732 15108 2951 4529 237627
sieve: init/small/medium/large/search: 1938 23560 6170 53024 11947
total yield: 76589, q=1492009 (0.00926 sec/rel)
536 Special q, 820 reduction iterations
reports: 386322571->31068819->27854033->7320570->7283732->6266688
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 76589
2896/2960 mpqs failures, 58338/42879 vain mpqs
milliseconds total: Sieve 216462 Sched 0 medsched 63868
TD 325538 (Init 4094, MPQS 230046) Sieve-Change 83601
TD side 0: init/small/medium/large/search: 1283 16043 2941 4454 20161
sieve: init/small/medium/large/search: 4202 35078 6590 50104 17576
TD side 1: init/small/medium/large/search: 897 16101 2985 4905 251656
sieve: init/small/medium/large/search: 2067 25269 6673 56336 12567
total yield: 82576, q=1484009 (0.00918 sec/rel)
574 Special q, 874 reduction iterations
reports: 411361574->33089584->29659429->7805992->7768918->6685317
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 82576
3072/3020 mpqs failures, 61528/45554 vain mpqs
milliseconds total: Sieve 231451 Sched 0 medsched 68153
TD 348328 (Init 4483, MPQS 246467) Sieve-Change 89533
TD side 0: init/small/medium/large/search: 1379 17021 3248 4741 21200
sieve: init/small/medium/large/search: 4241 37865 7172 53546 18978
TD side 1: init/small/medium/large/search: 908 16998 3208 5168 269956
sieve: init/small/medium/large/search: 2241 26803 6976 60212 13417
total yield: 86658, q=1468079 (0.00916 sec/rel)
609 Special q, 891 reduction iterations
reports: 430597881->34623469->31022842->8193687->8160511->7024102
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 86658
3146/3184 mpqs failures, 64371/47697 vain mpqs
milliseconds total: Sieve 246819 Sched 0 medsched 71370
TD 363791 (Init 4653, MPQS 257183) Sieve-Change 90245
TD side 0: init/small/medium/large/search: 1354 17553 3513 5060 22187
sieve: init/small/medium/large/search: 4522 40010 7413 56094 23718
TD side 1: init/small/medium/large/search: 916 17956 3471 5536 281586
sieve: init/small/medium/large/search: 2364 28234 7337 63199 13928
nfs: found 317680 relations, need at least 4468504 (filtering ETA: 2h 54m), continuing with sieving ...
nfs: commencing algebraic side lattice sieving over range: 1516000 - 1524000
nfs: commencing algebraic side lattice sieving over range: 1492000 - 1500000
nfs: commencing algebraic side lattice sieving over range: 1500000 - 1508000
nfs: commencing algebraic side lattice sieving over range: 1508000 - 1516000
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
Warning: lowering FB_bound to 1491999.
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
Warning: lowering FB_bound to 1515999.
Warning: lowering FB_bound to 1499999.
Warning: lowering FB_bound to 1507999.
FBsize 113806+0 (deg 4), 211452+0 (deg 1)
FBsize 115533+0 (deg 4), 211452+0 (deg 1)
FBsize 114379+0 (deg 4), 211452+0 (deg 1)
FBsize 115006+0 (deg 4), 211452+0 (deg 1)
total yield: 76120, q=1516007 (0.00906 sec/rel)
527 Special q, 795 reduction iterations
reports: 378772433->30397773->27256269->7319984->7274196->6259958
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 76120
2986/2939 mpqs failures, 57876/42659 vain mpqs
milliseconds total: Sieve 208338 Sched 0 medsched 61625
TD 318000 (Init 4075, MPQS 225827) Sieve-Change 82534
TD side 0: init/small/medium/large/search: 1150 15384 2977 4162 19388
sieve: init/small/medium/large/search: 3968 33852 6276 48516 16948
TD side 1: init/small/medium/large/search: 788 15347 2893 4753 247063
sieve: init/small/medium/large/search: 2008 24023 6328 54299 12120
total yield: 80548, q=1524007 (0.00918 sec/rel)
555 Special q, 841 reduction iterations
reports: 398507921->31986268->28678483->7743533->7691279->6618297
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 80548
3164/3080 mpqs failures, 61803/45401 vain mpqs
milliseconds total: Sieve 222997 Sched 0 medsched 66084
TD 341584 (Init 4494, MPQS 242360) Sieve-Change 88524
TD side 0: init/small/medium/large/search: 1302 16223 3221 4648 20725
sieve: init/small/medium/large/search: 4233 35934 6707 52160 18223
TD side 1: init/small/medium/large/search: 871 16675 3076 5107 265232
sieve: init/small/medium/large/search: 2091 25890 6836 57783 13140
total yield: 82486, q=1500007 (0.00906 sec/rel)
573 Special q, 856 reduction iterations
reports: 411328645->33080786->29656709->7871470->7828938->6736536
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 82486
3164/3178 mpqs failures, 61978/45898 vain mpqs
milliseconds total: Sieve 227825 Sched 0 medsched 67613
TD 347307 (Init 4624, MPQS 246230) Sieve-Change 83999
TD side 0: init/small/medium/large/search: 1340 16811 3165 4562 21140
sieve: init/small/medium/large/search: 4258 36621 6902 53072 18409
TD side 1: init/small/medium/large/search: 905 16846 3162 5185 269549
sieve: init/small/medium/large/search: 2238 26514 6902 59641 13268
total yield: 90249, q=1508033 (0.00917 sec/rel)
627 Special q, 953 reduction iterations
reports: 450631811->36190599->32446239->8659343->8609189->7408911
Number of relations with k rational and l algebraic primes for (k,l)=:

Total yield: 90249
3552/3292 mpqs failures, 69039/50510 vain mpqs
milliseconds total: Sieve 254079 Sched 0 medsched 73124
TD 378841 (Init 4887, MPQS 267877) Sieve-Change 99125
TD side 0: init/small/medium/large/search: 1456 18388 3565 5185 23208
sieve: init/small/medium/large/search: 4753 40146 7557 58107 24865
TD side 1: init/small/medium/large/search: 972 18667 3354 5814 293335
sieve: init/small/medium/large/search: 2453 28741 7584 65123 14750
nfs: found 647083 relations, need at least 4468504 (filtering ETA: 2h 41m), continuing with sieving ...
nfs: commencing algebraic side lattice sieving over range: 1548000 - 1556000
nfs: commencing algebraic side lattice sieving over range: 1532000 - 1540000
nfs: commencing algebraic side lattice sieving over range: 1540000 - 1548000
nfs: commencing algebraic side lattice sieving over range: 1524000 - 1532000
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
Warning: lowering FB_bound to 1547999.
Warning: lowering FB_bound to 1531999.
Warning: lowering FB_bound to 1539999.
gnfs-lasieve4I13e: L1_BITS=15, SVN $Revision: 406 $
Warning: lowering FB_bound to 1523999.
FBsize 116637+0 (deg 4), 211452+0 (deg 1)
FBsize 117182+0 (deg 4), 211452+0 (deg 1)
FBsize 116088+0 (deg 4), 211452+0 (deg 1)
FBsize 117753+0 (deg 4), 211452+0 (deg 1)
total yield: 40205, q=1551853 (0.00968 sec/rel)

This is after 45 minutes its still working, I dont know how long it will work.
I just want to know what I'm doing and am I doing it right.
And when it finish should I expect the same numbers like factordb gave:
http://factordb.com/index.php?id=1100000000814812720

Now the second question regarding factordb because I see that rob147147 used number
Quote:
1784201585035392943382886765412274918625109709538884734462486341468956466786695510489710478312657390107614437282545967714673325592434689400975051746385391
Which means that I don't need to wait msieve to finish I just need to see the factoring line which is shown in few seconds and use it in facordb which is also lightning fast because yafu or msieve when I start factoring is painfully slow.

Now to return to factordb.com above number is:
Quote:
67 107 1031 765953 10887137 92021258347069458373991903 439353422321288635964378942226547 715992848178912796133932488667760309859728657842078534991619930743921203069
I'm i right or I need to use just a part of the number, because in tutorials those numbers are not so big.

I just want to understand everything because I want to make detailed tutorial, because there is non.
loopdemack is offline   Reply With Quote
Old 2016-01-16, 11:48   #7
loopdemack
 
Jan 2016

2·3 Posts
Default

Ok Yafu finished after 4 hours and some minutes but if I convert seconds i got 4 hours and 25 minutes, anyway eta calculation is dead wrong for almost double first eta was (filtering ETA: 2h 54m)


NFS elapsed time = 15318.3770 seconds.
pretesting / nfs ratio was 0.00
Total factoring time = 15318.3820 seconds


***factors found***

P75 = 715992848178912796133932488667760309859728657842078534991619930743921203069
P33 = 439353422321288635964378942226547

ans = 1



Ok as I thought yafu shown only two numbers.
loopdemack is offline   Reply With Quote
Old 2016-01-16, 14:55   #8
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23·223 Posts
Default

Just as a heads-up, 0.009 sec/rel is quite fast--invert it and see that you're getting ~111 relations per second. Also, 4 or so hours isn't bad for a C108 number.

The Filtering ETA is an estimated time based on an assumed number of relations needed (here, about 4.5 million). If the assumed number is low, the actual time to finish can be longer. Note as well that the filtering ETA is ONLY for the relation-gathering step. You still have to build the matrix and carry out some linear algebra, which increases your total time.

Glad you got everything working.
wombatman is offline   Reply With Quote
Old 2016-01-17, 02:49   #9
loopdemack
 
Jan 2016

2×3 Posts
Default

Quote:
C:\Tesla>python unfactor.py file.pdf.vvv 67 107 1031 765953 10887137 92021258347069458373991903 439353422321288635964378942226547 715992848178912796133932488667760309859728657842078534991619930743921203069
After 22 hours unfactor.py is still working I don't know is it blocked is it working and how long will it take?
How can I know is it working ok?
loopdemack is offline   Reply With Quote
Old 2016-01-17, 03:23   #10
loopdemack
 
Jan 2016

616 Posts
Default

One more thing yafu did factorized the numbers but it gave just two factors I've searched in the output and there are just those two factors?
Quote:
***factors found***

P75 = 715992848178912796133932488667760309859728657842078534991619930743921203069
P33 = 439353422321288635964378942226547

ans = 1
Why it skipped all smaller factors in the output like
Quote:
67 107 1031 765953 10887137 92021258347069458373991903
loopdemack is offline   Reply With Quote
Old 2016-01-17, 16:07   #11
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23·223 Posts
Default

You fed it a 108 digit number:

Code:
C:\yafu>yafu-x64.exe "factor(0x2210FEE51674DC85D6B7CA8CE373518BAE3A6B7A21C70C976B8C26CBF8CF84CB8525B982142C2E5885FD967459E9041E82BB210D562C0FE3B4C035256A871DEF)" -v -threads 4

nfs: commencing nfs on c108: 314573908204972170772685162835613740501161465222989282532110802340617739158508803543279344012292489789672743
wombatman is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Speedup of trial factoring with prime95/mprime Anonuser Information & Answers 13 2014-09-09 01:43
32-bit CUDA build? f1pokerspeed Msieve 2 2013-12-30 01:14
Windows x64 CUDA Build Brian Gladman Msieve 12 2013-08-30 12:40
Windows build for GPU CUDA code Brian Gladman GMP-ECM 13 2013-05-13 15:00
Mp factoring speedup question. Fusion_power Math 11 2004-06-03 08:25

All times are UTC. The time now is 04:15.


Fri Oct 22 04:15:16 UTC 2021 up 90 days, 22:44, 1 user, load averages: 3.77, 2.36, 1.82

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.