Bitcoin Forum
January 23, 2019, 10:21:25 AM *
News: Latest Bitcoin Core release: 0.17.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: How to create your unique Bitcoin-Address – step by step  (Read 409 times)
1miau
Full Member
***
Offline Offline

Activity: 235
Merit: 327



View Profile WWW
January 12, 2019, 03:58:51 PM
Last edit: January 13, 2019, 05:09:41 PM by 1miau
Merited by LoyceV (4), OgNasty (2), MaoChao (2), DdmrDdmr (2), Husna QA (2), mikeywith (2), mjglqw (1), khaled0111 (1), Halab (1), o_e_l_e_o (1), iasenko (1), morvillz7z (1), S_Therapist (1)
 #1

Maybe you have seen a Bitcoin address where the first letters are a word, similar like this:

1fudCz15sHGR8L2YQnaG4JVMjMQpaDo37
1BTCTUnYLskK7N9nXb17wf6oVYMYrX5WHG
1DogemNVw8AZnMf3cB4L1wijGnr9DVKzia
1Fomo7V86nWrjdv6JzU7yavtp5hfzZWsZr
1NewbornSeatQVC9vegVHnxVseNAhhxewb(1)


Such addresses are vanity addresses and theoretically, it’s possible to generate every word with a few exceptions, but the number of the selected letters is limited. The reason is because you can use a tool and generate as many addresses as you like until you have found one with the desired combination of letters. The longer your prefix, the less likely a quick hit. Upper case letters are more likely to find than lower case letters. For example, the prefix 1Bitmover would take 2 months for 50% chance. The lower case 1bitmover is 58 times less likely. (2)
A few letters are excluded, because these are generally not part of Bitcoin addresses to avoid possible confuses:

l (letter lower L)
I (letter upper I)
O (letter upper O)
0 (number 0)

as well as all umlauts


There are several ways to generate a unique Bitcoin address. However, I recommend using the official version with vanitygen, uploaded by samr7 on Github. There are other ways offered on websites to create a vanity address, but I don’t recommend creating such an address on a website. If you create your address by a third party (the website), there is a possibility that someone can get access to your private keys. There have been problems in the past where bitcoins were stolen from such vanity addresses created on websites because if someone knows your private key he has a chance to steal your Bitcoins from your wallet.
Therefore, please make sure to use the original version, which can be found on Github and you can run it without internet connection. Every website offering a service to create a vanity addresses without split key is dangerous.




That's how it works:

1. Download vanitygen:

First you have to go to Github and download the original files from samr7, you can follow this link:

https://github.com/samr7/vanitygen/downloads


You can download the latest version:

vanitygen-0.22-win.zip







2. Turn off internet connection while generating your Bitcoin address

It’s also possible to create a vanity address when your internet connection is active, but for security reasons no internet connection is recommended. It would be even safer if you run the program on a computer that was never connected to the internet, but you can decide for yourself which security level is sufficient. It's always recommend to prefer high security standards to avoid any problems resulted by hacks because it's always possible that your device is compromised.
If you want maximal security you can generate your vanity address via split-key.



3. Open the Command Prompt

You can start the Command Prompt by a right-click on the Windows icon in the lower left corner of your screen and select Command Prompt (Administrator) or simply using the key combination Windows + R.



4. Enter paths

This will open the Command Prompt window and start settings for the bitcoin address generation process.

The paths depend on where you have stored your vanitygen files. I have saved these on C:\ in the folder BTC, subfolder vgen. I have to enter the following code to find the vanitygen.exe file:

C:\WINDOWS\system32>cd/
C:\ >cd/BTC/vgen
C:\BTC\vgen>vanitygen.exe

Folder BTC
Subfolder vgen
File name vanitygen.exe

You can try vanitygen.exe or use the file oclvanitygen.exe, it’s up to you which one you prefer. The difference between them is that vanitygen is CPU-based and oclvanitygen GPU-based. For our 4-digit combination, don’t matter if case-sensitive or case-insensitive, vanitygen is sufficient on a normal PC, oclvanitygen tends to be faster, if it works. For the technical background you'll find more information in the original article from 2011: https://bitcointalk.org/index.php?topic=25804.0

Now this should look like this (with the corresponding paths where you have saved your subfolders and files):





When you have entered the file name of the .exe file in the Command Prompt, press Enter.



5. Creation of the address

Now you see a list showing an overview of the available parameters to customize your address:





There are much more comments, if you have time you can try them but for our test a few commands are enough. As an example, I’ll show how to create a Bitcoin address with the first letters "test", everything written in lower case to generate a Bitcoin address that starts with 1test.

There are a few general things to keep in mind: the longer your prefix, the longer the search will take. This is not a problem with 4 digits, but it will take exponentially more time if there are more digits. In particular, if you want exactly the specified upper and lower case (case sensitive), the search takes longer than if upper and lower case would not matter (case insensitive).
If it’s ok for you to have mixed letters, both upper and lower case (TeSt, teST…), you can change it by adding the -i (case insensitive) command.

To create the 1test address, we need the following commands:

-o C:\BTC\vgen\test.txt  (Saving the found private and public keys in a text file)
1test  (your selected prefix)

Your command should look like this now:

C:\BTC\vgen>vanitygen.exe -o C:\BTC\vgen\test.txt 1test





If you are ready and have done the steps above, press Enter.





Now, the tool is searching for a public key with corresponding prefix (rate: 1.17 million keys per second). 50% in 2.4 minutes means your probability is 50% to find a public key with 1test in the next 2.4 minutes. The 5.1% is the probability of having found a hit in the already calculated keys so far.

If there is a hit, it will be shown and the search will be stopped. For the next time you can also add the comment -k, to search for multiple hits until you close vanitygen.
Please also be careful and don't exaggerate it, if your PC or laptop may be overtaxed if the performance is not very high and may damage it. Our example of a 4-digit prefix should not be a problem, but with more digits difficulty will increase exponentially to find an address.





And surprise surprise, after a short time (around 2 minutes) vanitygen was successful and found an address:

1testgTQyiDMvtN67kj1w6R6J9dbo6bwd

and following associated private key:

5K9qCsz17Bd1UxtS7HQWc2rKz6ssNaBHMzK8pJvYiDGVYvUSEWg

The result is also stored as .txt file in our folder BTC:





Of course, I won’t use this 1test address because now everyone knows the private key and could steal Bitcoins from it. Therefore: don’t publish your private key anywhere.



6. Save your generated public and private key

Security is always very important when it comes to Bitcoin. Keep your generated private key very safe, because it’s like the password to your Bitcoins. You can write it down on a sheet of paper, store it in a safe place and save it also on an USB stick that you only use for your private keys.



7. Done!

Now, you have successfully created your own Bitcoin address. If you want to access it (like via Electrum) you can have a look here. Make sure to test your address before you send large sums of Bitcoin to it. There is no way to figure out your private key afterwards if you have made a mistake.

In addition, I have created another vanity address, but I don’t tell you the private key:

1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH

Wink

If you like, you can post your customized vanity address here (but please without private key if you are planning to use it.)


© 1miau
11.01.2019


Additional links:

Security advice from LoyceV
Vanitygen: Vanity bitcoin address generator/miner release 2011 [v0.22]
Rare address hall of fame



(1) generated by LoyceV
(2) on hardware of LoyceV



How to create your own unique Bitcoin address
─  ──  ───  ────  1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH  ────  ───  ──  ─
Deutsch (German) | English
1548238885
Hero Member
*
Offline Offline

Posts: 1548238885

View Profile Personal Message (Offline)

Ignore
1548238885
Reply with quote  #2

1548238885
Report to moderator
1548238885
Hero Member
*
Offline Offline

Posts: 1548238885

View Profile Personal Message (Offline)

Ignore
1548238885
Reply with quote  #2

1548238885
Report to moderator
1548238885
Hero Member
*
Offline Offline

Posts: 1548238885

View Profile Personal Message (Offline)

Ignore
1548238885
Reply with quote  #2

1548238885
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
LoyceV
Legendary
*
Online Online

Activity: 1372
Merit: 2679


Self-made Legendary!


View Profile WWW
January 12, 2019, 05:50:06 PM
Merited by DdmrDdmr (1), 1miau (1)
 #2

Nice guide for beginners! Can I add some comments?

Maybe you have seen a Bitcoin address where the first letters are a word, similar like this:

1bitcoinFhq5qD3dDfHw6Lq4xdm81q15uT
1FUDfm8Fhq5qD3dDfHw6Lq4xdm81q15uT
1satoshi8Fhq5qD3dDfHw6Lq4xdm81q15uT
You probably know it already, but these are not valid Bitcoin addresses. Can you replace them by real examples (you can find some here)?

Quote
2. Turn off internet connection while generating your Bitcoin address

It’s also possible to create a vanity address when your internet connection is active, but for security reasons no internet connection is recommended. It would be even safer if you run the program on a computer that was never connected to the internet, but you can decide for yourself which security level is sufficient.
Unplugging your internet connection is not enough. Be paranoid and assume your PC is compromised with malware that patiently waits until you go online again. Even if it was never connected to the internet before, you shouldn't connect it afterwards either.
One option to work around this would be using a split key approach, in which the key is generated from an offline LIVE Linux system, and never touches your online PC.

Quote
You can write it down on a sheet of paper, store it in a safe place and save it also on an USB stick that you only use for your private keys.
Make sure to TEST IT before funding the address. Don't end up like this case.

Quote
There are other ways offered on websites to create a vanity address, but I don’t recommend creating such an address on a website. If you create your address by a third party (the website), there is a possibility that someone can get access to your private keys.
This warning can be a bit bigger: If someone knows your private key, you don't own it and it will get stolen! Any website that offers you vanity addresses without using split key is a SCAM.

Some links to add:
Vanitygen: Vanity bitcoin address generator/miner [v0.22]
Rare address hall of fame

If you like, you can post your customized vanity address here (but please without private key if you are planning to use it.)
My best one:
1NewbornSeatQVC9vegVHnxVseNAhhxewb

bitmover
Sr. Member
****
Offline Offline

Activity: 364
Merit: 590



View Profile
January 12, 2019, 05:57:39 PM
 #3

That's a very nice guide indeed.

I never made one for me because I am too paranoid with security. I agree with Loycev,  turning off internet is not enough.

But I think I will make one for me 1bitmover .... Or a 3bitmover...

Sadly vanity gen doesn't work with segwit addresses
Nulius made this for generating a segwit vanity address. I never tested:
https://bitcointalk.org/index.php?topic=2934774.0

LoyceV
Legendary
*
Online Online

Activity: 1372
Merit: 2679


Self-made Legendary!


View Profile WWW
January 12, 2019, 06:42:09 PM
 #4

But I think I will make one for me 1bitmover ...
On my hardware, 1Bitmover would take 2 months for 50% chance. The lower case 1bitmover is 58 times less likely.
That may be worth adding to the OP too: some starting characters are more likely than others.

1miau
Full Member
***
Offline Offline

Activity: 235
Merit: 327



View Profile WWW
January 12, 2019, 08:08:11 PM
 #5

Nice guide for beginners! Can I add some comments?
Yes, contributing comments are always welcome!

Maybe you have seen a Bitcoin address where the first letters are a word, similar like this:

1bitcoinFhq5qD3dDfHw6Lq4xdm81q15uT
1FUDfm8Fhq5qD3dDfHw6Lq4xdm81q15uT
1satoshi8Fhq5qD3dDfHw6Lq4xdm81q15uT
You probably know it already, but these are not valid Bitcoin addresses. Can you replace them by real examples (you can find some here)?

You are right, I just typed some random combinations to show what I mean. Tomorrow, I'll replace them and create real vanity addresses where the checksum will match. Prefix 1FUD, 1fomo or similar. I can also add some from the hall of fame or your special ones.

Quote
2. Turn off internet connection while generating your Bitcoin address

It’s also possible to create a vanity address when your internet connection is active, but for security reasons no internet connection is recommended. It would be even safer if you run the program on a computer that was never connected to the internet, but you can decide for yourself which security level is sufficient.
Unplugging your internet connection is not enough. Be paranoid and assume your PC is compromised with malware that patiently waits until you go online again. Even if it was never connected to the internet before, you shouldn't connect it afterwards either.
One option to work around this would be using a split key approach, in which the key is generated from an offline LIVE Linux system, and never touches your online PC.
Thanks, I'll add more text later to my OP and also link your comment here.

Quote
You can write it down on a sheet of paper, store it in a safe place and save it also on an USB stick that you only use for your private keys.
Make sure to TEST IT before funding the address. Don't end up like this case.
Good comment, it's always important to test if before someone plans to send a larger sum to it. I'll also add it to my OP.

Quote
There are other ways offered on websites to create a vanity address, but I don’t recommend creating such an address on a website. If you create your address by a third party (the website), there is a possibility that someone can get access to your private keys.
This warning can be a bit bigger: If someone knows your private key, you don't own it and it will get stolen! Any website that offers you vanity addresses without using split key is a SCAM.
Added

If you like, you can post your customized vanity address here (but please without private key if you are planning to use it.)
My best one:
1NewbornSeatQVC9vegVHnxVseNAhhxewb
Nice one, how long did it take?  Cheesy

But I think I will make one for me 1bitmover ...
On my hardware, 1Bitmover would take 2 months for 50% chance. The lower case 1bitmover is 58 times less likely.
That may be worth adding to the OP too: some starting characters are more likely than others.
Do you know which ones and why? I'll add it also to my OP.


That's a very nice guide indeed.

I never made one for me because I am too paranoid with security. I agree with Loycev,  turning off internet is not enough.

But I think I will make one for me 1bitmover .... Or a 3bitmover...

Sadly vanity gen doesn't work with segwit addresses
Nulius made this for generating a segwit vanity address. I never tested:
https://bitcointalk.org/index.php?topic=2934774.0
I read from LoyceV that he has a list of seldom Bitcoin vanity addresses which he is still searching. Maybe he can include your 1bitmover / 1Bitmover /1BitMover because when he runs it, vanitygen will search all keys anyways.



How to create your own unique Bitcoin address
─  ──  ───  ────  1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH  ────  ───  ──  ─
Deutsch (German) | English
khaled0111
Full Member
***
Offline Offline

Activity: 588
Merit: 231

Take it Easy


View Profile
January 12, 2019, 08:26:17 PM
 #6

@LoyceV
How much time does it take to generate such address:
1HappyTenthBirthdayBitcoinxvYeM9e

LoyceV
Legendary
*
Online Online

Activity: 1372
Merit: 2679


Self-made Legendary!


View Profile WWW
January 12, 2019, 08:48:15 PM
Last edit: January 12, 2019, 09:00:20 PM by LoyceV
 #7

It takes 25,000 years for 50% chance on my hardware, meaning I can never create another one. And that's another tip: I use a long list of prefixes, 15,000+. I have "1Newborn" on my list, the "Seat" was a coincidence.
Using a long list makes is much more likely to find at least one of the rare prefixes.

Quote
Do you know which ones and why? I'll add it also to my OP.
I can't reproduce the details of "why", but you can quite easily test it: just take a prefix and change the first character.
Adding more "ones" (1111111) makes it much harder to find too.

I read from LoyceV that he has a list of seldom Bitcoin vanity addresses which he is still searching. Maybe he can include your 1bitmover / 1Bitmover /1BitMover because when he runs it, vanitygen will search all keys anyways.
Added:
Code:
1Bitmover
1BitMover
1bitmover
1bitMover
Note this:
I don't run it often anymore, but eventually I'll find one. Just to show off of course, as you shouldn't trust anyone else's keys.

@LoyceV
How much time does it take to generate such address:
1HappyTenthBirthdayBitcoinxvYeM9e
This takes about 3 seconds to create a burn address.
1LoseYourLooseCoinsHerexxxy396iE3 for example.

bitmover
Sr. Member
****
Offline Offline

Activity: 364
Merit: 590



View Profile
January 12, 2019, 08:50:05 PM
 #8

@LoyceV
How much time does it take to generate such address:
1HappyTenthBirthdayBitcoinxvYeM9e

Lol that is probably not possible to create. All this processing power should be used to mine. You would spend years with a very powerful software and spend too much energy.

The smaller the faster .

I would like to know more about some characters being easier than others. How does this works Loycev? Can you tell more about it?

khaled0111
Full Member
***
Offline Offline

Activity: 588
Merit: 231

Take it Easy


View Profile
January 12, 2019, 08:58:43 PM
Last edit: January 13, 2019, 10:30:44 AM by khaled0111
 #9

Quote
This takes about 3 seconds Tongue
1LoseYourLooseCoinsHerexxxy396iE3
No seriously, some btc were sent from that address to Satoshi's genesis address on the 10th anniversary.
It is not a burn address.

Thank you @vit05

vit05
Sr. Member
****
Offline Offline

Activity: 532
Merit: 389


Self-made MySelf


View Profile WWW
January 13, 2019, 01:43:33 AM
Last edit: January 13, 2019, 02:03:41 AM by vit05
Merited by khaled0111 (1)
 #10

Quote
This takes about 3 seconds Tongue
1LoseYourLooseCoinsHerexxxy396iE3
No seriously, some btc were sent from that address to Satoshi's genesis address on the 10th anniversary.
It is not a burn address.

He has not sent anything. This address receives some Bitcoins. One address send bitcoins to 1HappyTenthBirthdayBitcoinxvYeM9e and to the genesis 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa on the same day.

Other fun address that has send some tip to the genesis:

1TheTimeso3Jan2o1911111111116yErJ
1JustMakeBitcoinGreatAgain161GVpC
1WeCanDoTheWorLdBetter111115SaNzZ
1miau
Full Member
***
Offline Offline

Activity: 235
Merit: 327



View Profile WWW
January 13, 2019, 05:25:35 PM
 #11

Quote
Do you know which ones and why? I'll add it also to my OP.
I can't reproduce the details of "why", but you can quite easily test it: just take a prefix and change the first character.
Adding more "ones" (1111111) makes it much harder to find too.
Ok, nice to know, also added to my OP. And I've added some real addresses.

I read the OP, and will read it again carefully to comprehensively catch your ideas.
By now, I am curious that whether the approach will create higher secured address than others created in Blockchain.info's BTC wallets or not.
Would you mind clarifying a little  bit more about the most advantages of vanity address, please.

The split-key process and the guide to turn off Internet connection before creating vanity address, spliting keys are valuable one.
Security of your vanity address depends on how you create it. If you create it while your internet connection is active it might be insecure and I don't recommend it. Like LoyceV said, security is very important and it also depends on how much BTC you want to send to it.
If you import it in Electrum, it won't be safer than Electrum anyways...

Creating vanity addresses is normally not the first reason of getting an address, which is much safer than others. It's more a reason that you create an unique address and can use it for example for small payments. However, it's still possible to create very secure addresses with vanitygen but in my opinion the main reason vanity generators were developed for the ability to genereate customized addresses and add a prefix.

How to create your own unique Bitcoin address
─  ──  ───  ────  1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH  ────  ───  ──  ─
Deutsch (German) | English
madnessteat
Member
**
Offline Offline

Activity: 308
Merit: 67

Future of Security Tokens


View Profile
January 13, 2019, 08:21:06 PM
 #12

~snip~

I saw such unique addresses, but did not know how to generate them. Yet I understood, decided to translate your theme to Russian language thread https://bitcointalk.org/index.php?topic=5096861.msg49216753#msg49216753

I'll try to run vanitygen next weekend on my mining rig. I think I'll need to monitor the equipment if you say the generator needs more performance.

Thank you for your efforts.

MaoChao
Legendary
*
Offline Offline

Activity: 911
Merit: 1027



View Profile
January 13, 2019, 08:34:48 PM
 #13

Just for info: vanitygen generate uncompressed public key (65 bytes long, transactions size will be a bit larger).
https://github.com/OmniLayer/omniwallet/wiki/Converting-between-Compressed-and-Uncompressed-Addresses-and-Private-Keys

If you’re reading this, I love you stranger, please enjoy having the best life you can have.
Velkro
Legendary
*
Offline Offline

Activity: 1680
Merit: 1002


<3 Vanity Addresses :)


View Profile
January 14, 2019, 02:51:59 AM
 #14

Maybe you have seen a Bitcoin address where the first letters are a word, similar like this:
1fudCz15sHGR8L2YQnaG4JVMjMQpaDo37
1BTCTUnYLskK7N9nXb17wf6oVYMYrX5WHG
1DogemNVw8AZnMf3cB4L1wijGnr9DVKzia
1Fomo7V86nWrjdv6JzU7yavtp5hfzZWsZr

Good option for beign sure vanity address is secure. It demands a lot of work and some knowledge even going step by step with your guide.
There are always people that are not so technically gifted and they need easy alternatives (there are many).
Its compromise between security and ease of use.

Great job tho, very detailed guide.

mjglqw
Hero Member
*****
Offline Offline

Activity: 826
Merit: 502


https://coinsources.io/bitcoin


View Profile WWW
January 14, 2019, 10:20:16 AM
 #15

Oh look, a guide that's actually good and different, not like the typical "how to earn merit" and "how to make quality post" topic. Way to go OP. +1

LoyceV
Legendary
*
Online Online

Activity: 1372
Merit: 2679


Self-made Legendary!


View Profile WWW
January 14, 2019, 10:44:17 AM
Merited by mjglqw (1), bitmover (1), morvillz7z (1), 1miau (1)
 #16

WARNING
User Velkro is a scammer!
Velkro's post (2 posts above this one) promotes his scamsite in his signature. I think it's a big mistake not to show trust on this board, that's why he loves posting in threads like this one, hoping to steal more Bitcoins from naive users.
Check his red trust for Reference links to at least several Bitcoins worth of theft.


NEVER trust a private key created by someone else!

vagrom
Member
**
Offline Offline

Activity: 378
Merit: 14


View Profile
January 14, 2019, 10:51:03 AM
 #17

Great, this is very useful. I will follow this tutorial to generate my own personalized address.

DarkPayCoin - [100% community governed and built]
[-] Website  [-] ANN Thread  [-] Discord  [-] Twitter  [-] Telegram
\ HIGH ROI, Low supply / - \ A privacy focused MN/PoS coin /
1miau
Full Member
***
Offline Offline

Activity: 235
Merit: 327



View Profile WWW
January 14, 2019, 06:42:28 PM
 #18

WARNING
User Velkro is a scammer!
Velkro's post (2 posts above this one) promotes his scamsite in his signature. I think it's a big mistake not to show trust on this board, that's why he loves posting in threads like this one, hoping to steal more Bitcoins from naive users.
Check his red trust for Reference links to at least several Bitcoins worth of theft.


NEVER trust a private key created by someone else!
Thanks for your warning, I completely agree with you.

Another reason to show trust to people from outside of the forum (not logged in) and when they click on your reference link show them all trust ratings. Therefore, here are the reference links:

https://bitcointalk.org/index.php?topic=1476782.0
https://bitcointalk.org/index.php?topic=552395.0






How to create your own unique Bitcoin address
─  ──  ───  ────  1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH  ────  ───  ──  ─
Deutsch (German) | English
khaled0111
Full Member
***
Offline Offline

Activity: 588
Merit: 231

Take it Easy


View Profile
January 15, 2019, 02:48:30 PM
Last edit: January 19, 2019, 06:28:11 PM by khaled0111
 #19

I would like to translate it and post it on my local board if you don't mind!

Update:
Hey!
Yes, if you want you can translate it  Smiley
But don't forget to add a disclaimer to avoid problems of rule 33
Done: https://bitcointalk.org/index.php?topic=5099219.0
Thank you

1miau
Full Member
***
Offline Offline

Activity: 235
Merit: 327



View Profile WWW
January 16, 2019, 12:14:19 AM
 #20

I would like to translate it and post it on my local board if you don't mind!
Hey!
Yes, if you want you can translate it  Smiley
But don't forget to add a disclaimer to avoid problems of rule 33

How to create your own unique Bitcoin address
─  ──  ───  ────  1miau7e4tFSAGR4TkAJ8n32UMm2yLB9EH  ────  ───  ──  ─
Deutsch (German) | English
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Bitcointalk.org is not available or authorized for sale. Do not believe any fake listings.
Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!