while buf: