contributed installation guide and minor modification to original code