added stream method option