Bitcoin Forum
June 23, 2024, 07:27:09 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 »
921  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 19, 2018, 11:32:33 AM
..

Is your script checking to see if sv is already on the miner before installing? Maybe it is trying to re-install it again at some point and failing, leaving it in corrupted state. If check for existence prior to install maybe it will stop this. I did not read your source - just a quick thought.


Yes, the install function is only called if the error string from the miner trying to call sv on ends with " not found":

https://github.com/psycodad-bct/bitmain-tools/blob/master/scripts/l3plus_autotune.py#L158

On top of that a flag is set, that makes sure that it only tries once to install the binary (most failures installing it exit the script anyway) per script run:

https://github.com/psycodad-bct/bitmain-tools/blob/master/scripts/l3plus_autotune.py#L199
922  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 18, 2018, 02:08:43 PM
this time i got this erroe on miner that i already run script before:

Undefined errors occured fetching voltage settings from miner:
sh: /config/sv: Permission denied

Aborting.

I just saw this very same error on one of my miners a few hours ago, but I couldn't find the cause for this behaviour so far.

I had not much time to dig deeper yet, but what happened here was that /config/sv (the slightly varied binary of jstefanops work we install on first run of the script) was truncated from  the 9788 bytes it should have to something around 1000 bytes and has changed permissions (hence the Permission denied).

The simplest way to resolve this is by removing the /config/sv file on the antminer via ssh and letting the script re-install it again. Though my miner where I saw this had to rebooted afterwards as the PIC version suddenly was 0x00 (probably meaning the PIC MCU didn't reply anymore). After a cold boot things were all fine and dandy again and I successfully run the script on that miner.

Could you check for me two things with the miner where you saw that:

1. Was the miner rebooted recently and/or did you have to reboot it to fully recover from this?
2. Before you remove the (assumedly) truncated /config/sv, can you check what is in there with i.e. 'hexdump -C /config/sv' (this might give us a hint what process is responsible for the corrupt binary)
923  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 17, 2018, 05:38:38 PM
And how do i run script on multiple L3's at the same time ? :>

Simply open another terminal and start it against another miner (or use screen or tmux). Even on an old and outdated PC you should easily be able to tune a dozen or so miners at once.

Just make sure you do not have 2 script instances running against the same miner at the same time (it should not have any desastrous consequences but both scripts will probably fail with an error when they try to read out or set voltage at the same time).
924  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 17, 2018, 02:20:47 PM
I have L3+(Blissz v1.02) is possible to go lower voltage(save more W)? with freq:300-312?

thx

With such low frequency your miners should already be set to minimum voltage/maximum undervolting setting of 0xfe (254). You can't undervolt more than this so no need for tuning.
925  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 17, 2018, 02:18:14 PM
Well that updated version works every time exactly 15mins to the second. Then it suddenly stops.

Thank you very much for the reports.
It actually finishes because it thinks the miner is stable and under the max. errror-rate (which I have currently set to 0.2/min, or 1/5min per chain).
The downvolting kicks in as soon as a chain has 0.0 errors in the 10min avg. and the voltage increase kicks in when a chain has more than 0.2 errors per min in the 5min average.

When I look at your end-results, the script assumes the miner as tuned when it does not make any changes within 10min to voltages as it thinks it has found the sweet spot between no errors and too much errors.

I will revisit that part of the code and see what I can improve there, but from what I see it does actually tune your miner, but I agree it should try harder/longer:


| Start 19:20.46 | 0xa0 | 0x8b | 0xcd | 0xa9 |
| Start 19:20.46 | 59 C | 58 C | 54 C | 53 C |
| End   19:35.46 | 0xa0 | 0x92 | 0xcd | 0xb0 |
| End   19:35.46 | 59 C | 58 C | 54 C | 53 C |

| Start 13:39.55 | 0xa3 | 0x6f | 0xa3 | 0x9c |
| Start 13:39.55 | 60 C | 61 C | 58 C | 56 C |
| End   14:01.55 | 0x9f | 0x7d | 0xb1 | 0xa2 |
| End   14:01.55 | 60 C | 60 C | 57 C | 55 C |

| Start  9:40.40 | 0x87 | 0x67 | 0x87 | 0x87 |
| Start  9:40.40 | 60 C | 59 C | 57 C | 54 C |
| End    9:55.40 | 0x8e | 0x6e | 0x87 | 0x87 |
| End    9:55.40 | 59 C | 59 C | 57 C | 54 C |


I was trying to make sure the script doesn't run forever and stops/exits as soon as it can, but I probably went a bit too far wrt this.

For the moment feel free to run the script multiple times, I even recommend to re-run it everytime ambient temperatures change noteably (>=2°C difference). Simply put, the colder the less voltage needed.
Whenever you change frequency you should re-run the script or manually re-tune them anyways.

If you want to run the script multiple times in a row unattended, use a command like below:
Code:
for i in range {1..3}; do /path/l3plus_autotune.py -i x.x.x.x; sleep 60; done
^This will run it three times in a row, just as a workaround until I come up with a smarter solution on finding the right point in time to declare the miner tuned.

I will post, once I have an update.

926  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 16, 2018, 12:47:40 PM
what kind of results can one expect? we talking 50watt or 5 ?

Sorry found answer in original thread.

I am going to ping phil to give it a whirl since I know he has a few L3+. Sadly all miner are in a hosting facility except for one lonely s9 that is pos and been in warranty 5 times. But the OP thread it was 600w vw 800w so that is a 20% saving.

Just got a pm to read this

I have multiple L3+ with the undervolt tool

using just the jstefanop  tool  on freq 359 hash rate of 470 I do 667 watts with minimum volts on all 4 boards. using a corsair ax1500i titanium

this is a savings of over 100 watts.

So my first question is  can this scrypt use a lower volt setting then  0xfe?
..

Thanks for checking in. No, unfortunately 0xfe equals 254 and ist the highest undervolting you can set.
If you have 4x 0xfe set, there is nothing more you can do to save on energy (except lowering frequency further), this script doesn't help you then as it is about to find the highest undervolting setting where you miners still work reliably.

You could however get possibly more hashes/W if you increase the frequency to the point where you still can run them with 0xfe on all or most blades. And if you are willing to set a frequency where you do not get 0 errors on all chains with 0xfe, my script can help to find the highest possible setting with lowest possible errors.
927  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 16, 2018, 12:30:56 PM
did you check my full version of the json ?

I think so, please check this post:

https://bitcointalk.org/index.php?topic=3835841.msg37448663#msg37448663
928  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 16, 2018, 11:12:56 AM
..

Thanks for testing the script and reporting back.

Never seen that error here. But I see that we're trying to sleep a negative number of seconds because your ssh connection take longer than 15s each, which makes the computer say "No" in a very Little Brittain like manner.
Will work around this and push an update later today and post here when it is fixed.

I guess that's the reason it never finishes and therefor never really does its job of lowering the voltage.
Have you ever seen it finishing with lines like the following or does it always drop out with an error?

Code:
...
= Running since: 8495s, now sleeping for 24.4s =
Finished tuning, miner stable AFAICS


Well, yes it finished once or twice after 40mins or so, but there still was zero HW's and way more to go with undervolting. Most of times tho it stops after one pass - about 10-15mins. I just took very old laptop not used in long time, installed ubuntu and pluged it to local network seemed best idea at the time since i got windows on pc

First, the problem with negative sleep is fixed in the current github version, please update and see if it goes away for you.

Regarding the problem of not getting undervolted enough, could you pm me the contents of one or two report files the tool generates when finished?
I am aware the mechanism for finding the sweet spot voltage-wise is far from perfect yet, but in my tests I always got very accurate results, meaning it improved my manual tuning by a lot.
929  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 16, 2018, 11:06:01 AM
Failed to decode json reply:
Expecting , delimiter: line 1 column 236 (char 235)

{"STATUS":[{"STATUS":"S","When":1526454833,"Code":70,"Msg":"CGMiner stats","Description":"cgminer 4.10.0"}],"STATS":[{"CGMiner":"4.10.0","Miner":"1.0.1.3","CompileTime":"Sun Jan 14 00:00:57 CST 2018","Type":"Antminer L3+ Blissz v1.02"}{"STATS":0,"ID":"L30","Elapsed":79294,"Calls":0,"Wait":0.000000,"Max":0.000000,"Min":99999999.000000,"GHS 5s":"580.898","GHS av":578.18,"miner_count":4,"frequency":"431","frequency1":431,"frequency2":431,"frequency3":456,"frequency4":456,"volt1":"13","volt2":"13","volt3":"13","volt4":"13","watt1":243,"watt2":243,"watt3":256,"watt4":256,"fan_num":2,"fan1":3384,"fan2":3414,"temp_num":4,"temp1":57,"temp2":51,"temp3":53,"temp4":51,"temp2_1":64,"temp2_2":60,"temp2_3":62,"temp2_4":59,"temp31":0,"temp32":0,"temp33":0,"temp34":0,"temp4_1":0,"temp4_2":0,"temp4_3":0,"temp4_4":0,"temp_max":57,"Device Hardware%":-0.0000,"no_matching_work":212,"chain_acn1":72,"chain_acn2":72,"chain_acn3":72,"chain_acn4":72,"chain_acs1":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs2":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs3":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs4":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_hw1":79,"chain_hw2":82,"chain_hw3":13,"chain_hw4":38,"chain_rate1":"147.83","chain_rate2":"144.97","chain_rate3":"142.43","chain_rate4":"145.67"}],"id":1}

Thanks, that's something I can chew on. It lacks a , after Type":"Antminer L3+ Blissz v1.02"}. Funny how all versions of cgminer I dealt with output invalid json, though every version places the problem somewhere else.

I have pushed an attempted fix to github, though it's a bit fly-by-night as I don't have a Blissz fw to test it beforehand.
930  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 16, 2018, 09:59:54 AM
Scrypt starts to work, but it finishes randomly testing - sometimes after 10mins or bit more, even if there is room for undervolt for example with zero HW.
And sometime it does this:

= Running since: 00:10.14, now sleeping for 46.4s =
| 192.168.8.18 [425] |  61  |  60  |  58  |  55  |
+ Current voltages   + 0x80 + 0x60 + 0x80 + 0x80 +
|Errors/min (5min)   | 0.00 | 0.00 | 0.00 | 0.00 | 0 0 0 0 |
|Errors/min (10min)  | 0.00 | 0.00 | 0.00 | 0.00 | 0 0 0 0 |
|Errors/min (15min)  | 0.00 | 0.00 | 0.00 | 0.00 | 0 0 0 0 |
|Errors/min (all)    | 0.00 | 0.00 | 0.00 | 0.00 | 0 0 0 0 |
Chain 1 can be undervolted more (0.00 err/m)
Voltage setting of 0x87 good to test.
Undervolted chain 1 from 0x80 to 0x87
Chain 2 can be undervolted more (0.00 err/m)
Voltage setting of 0x67 good to test.
Undervolted chain 2 from 0x60 to 0x67
Chain 3 can be undervolted more (0.00 err/m)
Voltage setting of 0x87 good to test.
Undervolted chain 3 from 0x80 to 0x87
Chain 4 can be undervolted more (0.00 err/m)
Voltage setting of 0x87 good to test.
Undervolted chain 4 from 0x80 to 0x87
= Running since: 00:12.07, now sleeping for -6.0s =
Traceback (most recent call last):
  File "./l3plus_autotune.py", line 600, in <module>
    time.sleep( REPEAT - (time.time()-now) )
IOError: [Errno 22] Invalid argument


Thanks for testing the script and reporting back.

Never seen that error here. But I see that we're trying to sleep a negative number of seconds because your ssh connection take longer than 15s each, which makes the computer say "No" in a very Little Brittain like manner.
Will work around this and push an update later today and post here when it is fixed.

I guess that's the reason it never finishes and therefor never really does its job of lowering the voltage.
Have you ever seen it finishing with lines like the following or does it always drop out with an error?

Code:
...
= Running since: 8495s, now sleeping for 24.4s =
Finished tuning, miner stable AFAICS

931  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 15, 2018, 08:33:06 PM
...

{"STATUS":[{"STATUS":"S","When":1526413725,"Code":70,"Msg":"CGMiner stats","Description":"cgminer 4.10.0"}],"STATS":[{"CGMiner":"4.10.0","Miner":"1.0.1.3","CompileTime":"Sun Jan 14 00:00:57 CST 2018","Type":"Antminer L3+ Blissz v1.02"}{"STATS":0,"ID":"L30","Elapsed":38187,"Calls":0,"Wait":0.000000,"Max":0.000000,"Min":99999999.000000,"GHS 5s":"579.398","GHS av":577.89,"miner_count":4,"frequency":"431","frequency1":431,"frequency2":431,"frequency3":456,"frequency4":456,"volt1":"13","volt2":"13","volt3":"13","volt4":"13","watt1":243,"watt2":243,"watt3":256,"watt4":256,"fan_num":2,"fan1":3726,"fan2":3780,"temp_num":4,"temp1":60,"temp2":54,"temp3":55,"temp4":53,"temp2_1":67,"temp2_2":62,"temp2_3":64,"temp2_4":61,"temp31":0,"temp32":0,"temp33":0,"temp34":0,"temp4_1":0,"temp4_2":0,"temp4_3":0,"temp4_4":0,"temp_max":60,"Device Hardware%":-0.0000,"no_matching_work":101,"chain_acn1":72,"chain_acn2":72,"chain_acn3":72,"chain_acn4":72,"chain_acs1":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs2":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs3":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_acs4":" oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo oooooooo","chain_hw1":36,"chain_hw2":38,"chain_hw3":8,"chain_hw4":19,"chain_rate1":"143.73","chain_rate2":"143.59","chain_rate3":"14

Are you sure you pasted everything? That json reply is cut in half and is indeed invalid.

I am not sure if my receive buffer is too large with 32k, I have changed that to 1k and pushed the update to github again. Please make also sure you paste the complete output.
932  Alternate cryptocurrencies / Mining (Altcoins) / Re: Bitmain L3+ Voltage Control Tool...Free :) on: May 15, 2018, 07:56:51 PM
I have pushed a quick-baked script for voltage autotuning of L3+ miners to my github (see "scripts" subdirectory):
https://github.com/psycodad-bct/bitmain-tools

The bct thread for it is here:
https://bitcointalk.org/index.php?topic=3835841

Please note that you you need a Linux computer (or possibly MacOS) with python to run this script.
It will not work under windows!

Hope this is useful for some of you.
933  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 15, 2018, 05:33:58 PM
I am a little green in the ASIC world. What kind of tuning would this do. Apply the best bang for your buck voltage  to each of the cards ?  Does it go for higher hash power, etc ?

Sorry for the newb question. 

Basically you set a frequency for your L3+ and then this script tunes the miner to the best voltage settings in terms of optimal error_ratio/power-consumption per board.
934  Alternate cryptocurrencies / Mining (Altcoins) / Re: L3+ voltage tuning script on: May 15, 2018, 05:31:25 PM
Hi !

Tried to use it on one of my miners and got the following log:

/config/sv binary not found on target miner, installing it first:
MD5sum [113ad2c06daac293386e28807ea35671] matches, good.
Binary /config/sv successfully installed.
Traceback (most recent call last):
  File "./l3plus_autotune.py", line 545, in <module>
    current_stats = get_minerstats(miner_ip, port=4028)
  File "./l3plus_autotune.py", line 95, in get_minerstats
    resp = json.loads(json_resp)
  File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.7/json/decoder.py", line 380, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting , delimiter: line 1 column 236 (char 235)


can you help ?
the script is running on a RPI3

Thanks for testing the script.

It seems to fall over while parsing the cgminer json output.
I am a bit at loss, would need to see the raw json output from cgminer.
EDIT:
You could try to add a print statement just before the line it falls over, i.e. before line 95 add
  print json_resp
and post or pm the output.

I have pushed an update to github which should print the json data so we can see whats wrong or where it falls over.
Please update with git pull and post or pm me the output.

Also, are you running the latest Bitmain firmware 1.0.1.3 ?
935  Alternate cryptocurrencies / Mining (Altcoins) / L3+/L3++ voltage tuning script on: May 15, 2018, 04:50:37 PM
Since jstefanop was so kind to release his demo code for voltage setting on the L3+ we could finally undervolt our L3+ and save some of those precious watts.

Though the process of tuning every hash board is time consuming and boring (at least after the third L3+) and I soon wished there was a way to automate this trial and error process similar to what General Tarkin did on the Titans.

So I hotglued some python script that does the whole process automatically and does not require you to install jstefanops binary on every single miner. But you need a Linux (MacOS might work) machine that can reach the miners you want to tune over the network.

Note: Just to be very clear: The script needs to be run from a different computer than your miner!

If you are willing to try this alpha software, head over to github and checkout my bitmain-tools repo:

https://github.com/psycodad-bct/bitmain-tools

Usage in the simplest form is just:
Code:
git clone https://github.com/psycodad-bct/bitmain-tools
cd bitmain-tools/scripts
./l3plus_autotune.py -i <your-miner-ip>

All options are printed if you supply no arguments to the script:
Code:
Usage:
./l3plus_autotune.py -i <ip>|--minerip=<ip> [OPTIONS]

Options:
 -p <adminpass> admin password if not set to 'admin'
 --password=<adminpass>
 -s <chain1[,chain2]> skip one or more chains
 --skip <chain1[,chain2]>

Examples:
Tune miner on 10.10.10.33, use '1234' as admin password and skip tuning chain 2 and 3:
./l3plus_autotune.py --minerip 10.10.10.33 -p 1234 --skip 2,3
Default usage :
./l3plus_autotune.py -i 10.10.10.33

The script may take anywhere from 30min to several hours or can even refuse to complete if your miner is too unstable. If that happens you can try to use the --skip option to skip tuning one or more chains/hashboards and set them to the best possible value manually.

I did this to save time on tuning and re-tuning my L3+ miners and thought I'd share it here.

Disclaimer:
This script has at best pre-alpha-quality (or even less) and comes as-is with no warranties at all. I have tested it heavily and to the best of my knowledge it should do no harm, but it has obviously when playing with voltages the potential to damage your miner and even if not it will probably void your Bitmain warranty.

Use completely at your own risk!

If in doubt, use the source Luke!

936  Bitcoin / Development & Technical Discussion / Re: Daemons monitoring on: May 15, 2018, 01:47:55 PM
To check for coinds being alive it is most of the time sufficient to query rpc with almost any command like getbalance or getinfo.

If on a unix-like system like linux, you can run a cronjob that queries getinfo and if timed out, restarts the daemon i.e.:

Code:
#!/bin/bash

timeout 10 somecoin-cli getinfo
if [[ $? > 0 ]]; then
  echo "somecoind is hanging - restarting somecoind"
  kill -9 $(ps auxww|grep somecoind|grep -v grep|awk '{print $2}')
  sleep 5
  /usr/local/bin/somecoind >/dev/null 2>&1
fi

I am using a way more elaborate script that reads coinds to check from a text file.

HTH
937  Alternate cryptocurrencies / Mining (Altcoins) / Re: Bitmain L3+ Voltage Control Tool...Free :) on: May 10, 2018, 12:01:46 PM
As I am brewing up my own autotuner, I needed stefanops binary to be able to just report voltages without prior setting.
My changes and a slightly improved binary (segfault fixed and a few output improvements) can be found here:

https://github.com/psycodad-bct/bitmain-tools/releases/tag/v1.01

Again thanks for jstefanop for releasing his code. Hope this is useful for some of you.

Usage is the same as the original, except you can omit the voltage or voltage and chain and just get the current settings reported back then:

Code:
root@antMiner:/config# ./sv 2
Reading voltage chain 2:
chain 2: voltage = 0xa4

root@antMiner:/config# ./sv
Reading all voltages
chain 1: voltage = 0xe5
chain 2: voltage = 0xa4
chain 3: voltage = 0xa5
chain 4: voltage = 0xc0

Disclaimer: While I have done everything to avoid problems and tested it extensively I know barely what I am doing here.
So use completely at your own risk!
938  Alternate cryptocurrencies / Service Announcements (Altcoins) / Re: 【BOT】 🌟 C.A.T. Cryptocurrency Automatic Trader 5.2 BETA + BINANCE !!! 🌟 on: May 09, 2018, 03:40:52 PM
Anybody else seeing problems with Cryptopia API?

Do you want us to guess your experience? Should we vote for something? I'm lost with your message.

You got a point, I get timeouts, red API sign and manual tests get me sporadically access denied and timeouts from different network locations to the Cryptopia API.

Tough that isn't that hard to guess in this thread, isn't it? Are you right now having problem with the Cryptopia API or not, as simple as that.
939  Alternate cryptocurrencies / Service Announcements (Altcoins) / Re: 【BOT】 🌟 C.A.T. Cryptocurrency Automatic Trader 5.2 BETA + BINANCE !!! 🌟 on: May 09, 2018, 01:15:34 PM
Anybody else seeing problems with Cryptopia API?
940  Bitcoin / Bitcoin Discussion / Re: Bill Gates Would Love To Short Bitcoin, so Why Doesn’t He? on: May 08, 2018, 01:42:31 PM
LOL at bill gates... the guy is famous for making very foolish statements. Didn't he say the internet would have no commercial use at one point?


Yeah, that's exactly why Microsoft was rushing in 94 to devote their Fax team to developing Internet Explorer for 95plus once it dawned the rocket scientists at Microsoft that the future is surprisingly the internet and not faxing...

For me, Gates can be characterized as somebody who got rich by stealing other peoples ideas and concepts (and software).

Wake me up when somebody I take serious says something interesting...
Pages: « 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!