I could make better :P
On a serious note, you have to really explain the functionality of each statement and every little thing.
And section off the parts of your code and break it down. Don't over complicate things slow and steady wins the race!
Anyway good luck!
-Noof.
Noof was here.