Update; added new I/O