initial commit from Google Code repos by Thanakorn and Uddin