added stream generator