add function eof, deprecate EOF