Added ability to read from file