stream reader must return nil on eof
delay dispatch function binding resolution; remove the duplicate value binidng