This version was tested 2014-09-16, hardcoded values are placed at the top of the file