Type: Posts; User: Norm
I'm sure it has been written many times. Did you use a search engine to find a version online?