added eof?
added null device