Bitcoin Forum
November 01, 2024, 08:57:50 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 [185] 186 187 188 189 190 191 »
  Print  
Author Topic: Vanitygen: Vanity bitcoin address generator/miner [v0.22]  (Read 1153505 times)
student4ever
Newbie
*
Offline Offline

Activity: 12
Merit: 0


View Profile
May 28, 2020, 09:31:59 PM
 #3681




I think getting something working with an FPGA would be the likely next step.

Do you think that an FPGA would apply for this task?
NotATether
Legendary
*
Offline Offline

Activity: 1778
Merit: 7354


Top Crypto Casino


View Profile WWW
May 29, 2020, 09:41:32 AM
 #3682

I think getting something working with an FPGA would be the likely next step.

Do you think that an FPGA would apply for this task?

Someone would need to code a implementation of this https://github.com/samr7/vanitygen/blob/master/calc_addrs.cl in Verilog. I don't know much about FPGAs but they must also choose the right pins to assign to. I like the idea though, since there should be a way to program the EC multiplications and adds for it.

███████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████

███████████████████████
.
BC.GAME
▄▄▀▀▀▀▀▀▀▄▄
▄▀▀░▄██▀░▀██▄░▀▀▄
▄▀░▐▀▄░▀░░▀░░▀░▄▀▌░▀▄
▄▀▄█▐░▀▄▀▀▀▀▀▄▀░▌█▄▀▄
▄▀░▀░░█░▄███████▄░█░░▀░▀▄
█░█░▀░█████████████░▀░█░█
█░██░▀█▀▀█▄▄█▀▀█▀░██░█
█░█▀██░█▀▀██▀▀█░██▀█░█
▀▄▀██░░░▀▀▄▌▐▄▀▀░░░██▀▄▀
▀▄▀██░░▄░▀▄█▄▀░▄░░██▀▄▀
▀▄░▀█░▄▄▄░▀░▄▄▄░█▀░▄▀
▀▄▄▀▀███▄███▀▀▄▄▀
██████▄▄▄▄▄▄▄██████
.
..CASINO....SPORTS....RACING..


▄▄████▄▄
▄███▀▀███▄
██████████
▀███▄░▄██▀
▄▄████▄▄░▀█▀▄██▀▄▄████▄▄
▄███▀▀▀████▄▄██▀▄███▀▀███▄
███████▄▄▀▀████▄▄▀▀███████
▀███▄▄███▀░░░▀▀████▄▄▄███▀
▀▀████▀▀████████▀▀████▀▀
bitcoinwhoswho
Newbie
*
Offline Offline

Activity: 31
Merit: 0


View Profile WWW
June 11, 2020, 04:36:50 AM
 #3683

with an average setup how long would you expect it to take before finding a vanity address like 1ELonMUSK14JSGNYAcPJNqubuFByZPyjcj? Or 1SPacex1daUkw7L6ux8Cfw7jASexb9umL?
tyz
Legendary
*
Offline Offline

Activity: 3360
Merit: 1533



View Profile
June 11, 2020, 10:22:38 AM
 #3684

with an average setup how long would you expect it to take before finding a vanity address like 1ELonMUSK14JSGNYAcPJNqubuFByZPyjcj? Or 1SPacex1daUkw7L6ux8Cfw7jASexb9umL?

I would be interested in that, too. Is there a calculator with which you can roughly determine how much time you need with a certain setup for a certain number of characters? I did a address generation for four characters today, which took me around 25 minutes. For a generation of six characters, I unfortunately had to quit the generation after around 4 hours.
nc50lc
Legendary
*
Offline Offline

Activity: 2590
Merit: 6310


Self-proclaimed Genius


View Profile
June 11, 2020, 10:37:47 AM
Merited by tyz (1)
 #3685

Here: https://en.bitcoin.it/wiki/Vanitygen#Using_a_vanity_address_generator_to_try_to_attack_addresses
The table is based from 1Mkeys/s. Just adjust the 'average time' based on your "average set-up"

Based from that, it's 1year for 1ELonMUSK & 3hours for 1SPacex if Vanitygen is running at 1Mkeys/s.
Take note that there's luck involved in that, you can get your address within the first few minutes if you're extremely lucky as long as the difficulty isn't too high.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
xhomerx10
Legendary
*
Offline Offline

Activity: 4018
Merit: 8821



View Profile
June 11, 2020, 12:50:31 PM
 #3686

with an average setup how long would you expect it to take before finding a vanity address like 1ELonMUSK14JSGNYAcPJNqubuFByZPyjcj? Or 1SPacex1daUkw7L6ux8Cfw7jASexb9umL?

I would be interested in that, too. Is there a calculator with which you can roughly determine how much time you need with a certain setup for a certain number of characters? I did a address generation for four characters today, which took me around 25 minutes. For a generation of six characters, I unfortunately had to quit the generation after around 4 hours.

 There is a faster prefix search program called VanitySearch (developed by Jean_Luc)
Using a GTX970 GeForce GPU, the search rate went from ~40 Mkeys/s with Vanitygen to ~240 Mkeys/s by switching to VanitySearch.   I was thinking about buying a second video card to increase my search capability when I stumbled on Jean_Luc's program.  The program itself gave me a nearly 6X increase in speed where another $400+ GPU would have only doubled the speed.  The energy savings are also amazing as I no longer need to leave the computer running for days to find the desired prefix.


nc50lc
Legendary
*
Offline Offline

Activity: 2590
Merit: 6310


Self-proclaimed Genius


View Profile
June 12, 2020, 02:35:25 AM
 #3687

In August of 2018 I created 2 vanity wallets.  In March 2019 they were hacked and my 1.2BTC was stolen.  Don't trust vanity wallets.  I used bitcoin vanity Gen. -snip-
That's the problem, you've used the scam website bitcoinvanitygen, there are a lot of scam accusations againt that website and the user who's promoting (or creator of) it.
Vanity addresses are considered secured as long as there's nothing malicious in the code or your private key isn't compromised.

Link to the trust rating of the user who's promoting that site in his signature: Trust Summary: Velkro

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
student4ever
Newbie
*
Offline Offline

Activity: 12
Merit: 0


View Profile
June 23, 2020, 12:03:33 AM
 #3688

I have a problem:

ocl vanitygen runs at a speed of 4000 Mk/s on my rig and today he printed out some thing like this - numbers are for example:

index found: 553
CPU hash: 123456789
GPU hash: 123456789

Delta found: 1234567 Delta started again: 123456

I have 2 identical hashes, but he did not sow the PrivK.
How can I get to the adress and privK with this information?
I also have the prefix of the adress, since it shows me the index number of my prefix search file.

GoVanza
Newbie
*
Offline Offline

Activity: 149
Merit: 0


View Profile
July 20, 2020, 08:39:45 AM
 #3689

I have a my own generator (for Linux) that produces private key + address but not in base58 format.

I have another program in Python too that produces private key + address, I should search it. I don't remember performance, but surely much more than 1500keys/s. Are you interested?

This smells like jhdscript will soon open a new topic: 'Please Help! My Bitcoins have been stolen.'
My answer might be: 'Sorry for your loss'

Thanks for the trust.   Cheesy

Anyway my program generates only "consecutive" keys. You provide:

1) the private key to start from
2) how many keys you want to compute

and it generates the corresponding addresses (hash of public keys, not base58 encoded). This is the output if you start from key = 1:

Code:
0+0000000000000000000000000000000000000000000000000000000000000001   751e76e8199196d454941c45d1b3a323f1433bd6
1+0000000000000000000000000000000000000000000000000000000000000001   06afd46bcdfd22ef94ac122aa11f241244a37ecc
2+0000000000000000000000000000000000000000000000000000000000000001   7dd65592d0ab2fe0d0257d571abf032cd9db93dc
3+0000000000000000000000000000000000000000000000000000000000000001   c42e7ef92fdb603af844d064faad95db9bcdfd3d
4+0000000000000000000000000000000000000000000000000000000000000001   4747e8746cddb33b0f7f95a90f89f89fb387cbb6
5+0000000000000000000000000000000000000000000000000000000000000001   7fda9cf020c16cacf529c87d8de89bfc70b8c9cb
6+0000000000000000000000000000000000000000000000000000000000000001   5dedfbf9ea599dd4e3ca6a80b333c472fd0b3f69
7+0000000000000000000000000000000000000000000000000000000000000001   9652d86bedf43ad264362e6e6eba6eb764508127
8+0000000000000000000000000000000000000000000000000000000000000001   b46abf4d9e1746e33bcc39cea3de876c29c4adf3
9+0000000000000000000000000000000000000000000000000000000000000001   185140bb54704a9e735016faa7a8dbee4449bddc
a+0000000000000000000000000000000000000000000000000000000000000001   362995a6e6922a04e0b832a80bc56c33709a42d2
b+0000000000000000000000000000000000000000000000000000000000000001   dd100be7d9aea5721158ebde6d6a1fd8fff93bb1
c+0000000000000000000000000000000000000000000000000000000000000001   57526b1a1534d4bde788253281649fc2e91dc70b
d+0000000000000000000000000000000000000000000000000000000000000001   726d44b7af8228257c030bafe764d3c5839d5c02
e+0000000000000000000000000000000000000000000000000000000000000001   9fc5dbe5efdce10374a4dd4053c93af540211718
f+0000000000000000000000000000000000000000000000000000000000000001   60aa32549d990a09863b8fd4ce611ebd70bb310b
10+0000000000000000000000000000000000000000000000000000000000000001   4f99bbf75707e44bc2afa65337dece914e817aac


It is only up to the user to choose which keys to generate, not up to the program.

Besides I don't think that jhdscript needs to store a so huge amount of addresses to send some bitcoin there. Maybe it is only a statistical project.


@jhdscript

I made 2 tests (writing speed, Xeon CPU E3-1505 3 GHz + SSD, Ubuntu Mate 17.04)

1) supervanitygen:  about 220K keys / minute (8 threads,  that confirms that vanitygen-like program are not suited to your case)

2) my own generator: 75M keys / minute (-> 6,5GB file / minute) per 1 core. I got about 175 Mkeys / minute with 4 cores.

Unfortunately if I try to compile it for Windows the results I get are not correct anymore.  When I will have more time I will give it a look. For now I can't help you  (unless you decide to use Linux).
Honestly I can't figure out why you need to fill an hard disk so fast. It takes about 20 hours to fill 4TB.

Hello! Could you share your program for me? For me, such a speed of geniation is like flying to the moon! I want to try this miracle program! I would be very grateful to you! Thank you very much!!!  Shocked
GoVanza
Newbie
*
Offline Offline

Activity: 149
Merit: 0


View Profile
July 24, 2020, 12:53:29 PM
 #3690

arulbero Could you share your program Huh 2) my own generator: 75M keys / minute (-> 6,5GB file / minute) per 1 core. I got about 175 Mkeys / minute with 4 cores.
ViqRa
Jr. Member
*
Offline Offline

Activity: 52
Merit: 36


View Profile
August 10, 2020, 12:36:58 AM
 #3691

Vanitygen is giving me a wrong private key for my IXC address. Is there a way to fix that without editing the source code?

Thanks in advance.
ViqRa
Jr. Member
*
Offline Offline

Activity: 52
Merit: 36


View Profile
August 10, 2020, 04:12:04 PM
 #3692

Vanitygen is giving me a wrong private key for my IXC address. Is there a way to fix that without editing the source code?

Thanks in advance.

I just take a peek at IXC announcment thread and looks like the developer merely change the prefix from 1 to x.

Assuming my speculation is correct, it might be because vanitygen uses private key format (WIF with prefix 5) which indicate usage of uncompressed public key while most wallet would create compressed public key by default.
Thanks for answering.

The issue I see is that it gives me a wrong prefix for the private keys (i.e M, N and L) when it should be a 5 or K, L as you say. I believe the length is wrong also, 50 characters, when they should be either 51 or 52.
nc50lc
Legendary
*
Offline Offline

Activity: 2590
Merit: 6310


Self-proclaimed Genius


View Profile
August 11, 2020, 02:34:09 AM
 #3693

Vanitygen is giving me a wrong private key for my IXC address. Is there a way to fix that without editing the source code?
AFAIK, you should be able to use the result of vanitygen to IXC,
if '1' isn't useable, you should convert the address manually by 'BASE58 decode' the address then change the network bytes and checksum.
The private key should be the same as Bitcoin WIF prv key (uncompressed) based from an IXC paper wallet generator (link).

The issue I see is that it gives me a wrong prefix for the private keys (i.e M, N and L) when it should be a 5 or K, L as you say. I believe the length is wrong also, 50 characters, when they should be either 51 or 52.
Everything you said here aren't what vanitygen would produce. Vanitygen's result WIF prvkey for mainnet will always start with '5' consisting of 51-characters.
Are you sure that you're using the right binary (from OP) or commands?

Are you using this to bruteforce a private key? Bec. it's not recommended for that.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
ViqRa
Jr. Member
*
Offline Offline

Activity: 52
Merit: 36


View Profile
August 11, 2020, 03:28:50 PM
 #3694

Vanitygen is giving me a wrong private key for my IXC address. Is there a way to fix that without editing the source code?
AFAIK, you should be able to use the result of vanitygen to IXC,
if '1' isn't useable, you should convert the address manually by 'BASE58 decode' the address then change the network bytes and checksum.
The private key should be the same as Bitcoin WIF prv key (uncompressed) based from an IXC paper wallet generator (link).

The issue I see is that it gives me a wrong prefix for the private keys (i.e M, N and L) when it should be a 5 or K, L as you say. I believe the length is wrong also, 50 characters, when they should be either 51 or 52.
Everything you said here aren't what vanitygen would produce. Vanitygen's result WIF prvkey for mainnet will always start with '5' consisting of 51-characters.
Are you sure that you're using the right binary (from OP) or commands?

Are you using this to bruteforce a private key? Bec. it's not recommended for that.
Well, that is what vanitygen is producing for IXC, other coins seem fine. Yes, I am using the right binary from the OP. No, I am not using it to bruteforce a private key.

This is the command I'm running: ./vanitygen -X 138 xabcd
nc50lc
Legendary
*
Offline Offline

Activity: 2590
Merit: 6310


Self-proclaimed Genius


View Profile
August 12, 2020, 05:02:03 AM
Merited by ABCbits (2)
 #3695

This is the command I'm running: ./vanitygen -X 138 xabcd
Okay, seems like there's something wrong with Vanitygen when it comes with Altcoins, but there's a workaround to that.

You can convert the result invalid WIF private key into the correct format by base58-decoding it into HEX, remove the checksum and network bytes,
and you got the private key.
Then covert that into WIF by doing vice-versa but this time, use "0x80" instead of '0x0A' in front.

This page automates all of that, displays an example and the steps: https://gobittest.appspot.com/PrivateKey,
Just paste the N, M or L WIF prvkey to the first text box, hit "send", and the result will be displayed under "Private key to wallet import format" at step #7.
But it's not available offline, if you want a secure method, find a script or something.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
ViqRa
Jr. Member
*
Offline Offline

Activity: 52
Merit: 36


View Profile
August 13, 2020, 03:04:40 PM
 #3696

This is the command I'm running: ./vanitygen -X 138 xabcd
Okay, seems like there's something wrong with Vanitygen when it comes with Altcoins, but there's a workaround to that.

You can convert the result invalid WIF private key into the correct format by base58-decoding it into HEX, remove the checksum and network bytes,
and you got the private key.
Then covert that into WIF by doing vice-versa but this time, use "0x80" instead of '0x0A' in front.

This page automates all of that, displays an example and the steps: https://gobittest.appspot.com/PrivateKey,
Just paste the N, M or L WIF prvkey to the first text box, hit "send", and the result will be displayed under "Private key to wallet import format" at step #7.
But it's not available offline, if you want a secure method, find a script or something.

Thanks! I will try that.
alevlaslo
Hero Member
*****
Offline Offline

Activity: 1988
Merit: 593


View Profile
October 15, 2020, 02:49:16 PM
 #3697

1CounterpartyXXXXXXXXXXXXXXXUWLpVr

this address has more than 2000 bitcoins, it was created using this program? How long did the process take? If you can create such an address, can you use the full address to calculate the private key?  Roll Eyes

Sale the first NFT of the first foto
nullius
Copper Member
Hero Member
*****
Offline Offline

Activity: 630
Merit: 2614


If you don’t do PGP, you don’t do crypto!


View Profile WWW
October 15, 2020, 03:43:08 PM
Merited by xandry (2), BlackHatCoiner (1)
 #3698

1CounterpartyXXXXXXXXXXXXXXXUWLpVr

this address has more than 2000 bitcoins, it was created using this program? How long did the process take? If you can create such an address, can you use the full address to calculate the private key?  Roll Eyes

That is a burn address like 1BitcoinEaterAddressDontSendf59kuE, or 1111111111111111111114oLvT2 (all-zero Hash160).  It is constructed in such a way as to make it obvious that nobody has the private key.  Funds sent to such addresses are irretrievably lost.

Here is a valid Segwit burn address, with all-zero Hash160:  bc1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9e75rsFunds sent to this address are irretrievably lost.

The 1CounterpartyXXXXXXXXXXXXXXXUWLpVr address was created specifically for Counterparty’s proof-of-burn protocol.

The supply of XCP was created in a process called ‘proof-of-burn’ that lasted from January 2nd to February 3rd 2014 (5000 Bitcoin blocks). During this period, anyone was able to exchange bitcoins for XCP automatically on a protocol level under the following conditions:

  • Users sent their BTC to a verifiably unspendable Bitcoin address with no known private key. (1CounterpartyXXXXXXXXXXXXXXXUWLpVr)
  • Each BTC was automatically exchanged for a number of XCP between 1000 and 1500, with more being rewarded the earlier the burn took place.

Stupid, in my opinion.  Nobody can ever spend that money.  It permanently spams the UTXO set for people who actually use Bitcoin.  But—well, now you know the purpose of that address.

No, Vanitygen cannot crack its private key.  You are welcome to try, with that or any other address.  Have fun. :-)

HTH.

BlackHatCoiner
Legendary
*
Offline Offline

Activity: 1694
Merit: 8318


Bitcoin is a royal fork


View Profile WWW
October 15, 2020, 04:07:02 PM
 #3699

@alevlaslo, generally when you see coins on addresses that look like this: 1xxxxxxxxxxxxxxxxxxxxxxxxxy1kmdGr, they are gone forever. If we ever find a way to get the private key for that address (if there is any), we will face much more worse problems than those you can imagine.

Stupid, in my opinion.  Nobody can ever spend that money.
Let the stupid ones burn their bitcoins. They make them more valuable without knowing it.  Wink

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
xhomerx10
Legendary
*
Offline Offline

Activity: 4018
Merit: 8821



View Profile
October 15, 2020, 04:16:08 PM
 #3700

1CounterpartyXXXXXXXXXXXXXXXUWLpVr

this address has more than 2000 bitcoins, it was created using this program? How long did the process take? If you can create such an address, can you use the full address to calculate the private key?  Roll Eyes

 1a1ev1as1oyouareveryfunnyxy4cGdVr  <---That address is a valid Bitcoin address but nobody has the private key.

 I'm sure you already know this and you just need another cup of coffee to help refresh your memory:



edit: found my post on burner address creation - https://bitcointalk.org/index.php?topic=90982.msg46771759#msg46771759
Pages: « 1 ... 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 [185] 186 187 188 189 190 191 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!