Text this: Short-term stream flow forecasting and downstream gap infilling using machine learning techniques