This was adapted from source at: http://benfold.com/sse/