add early stream implementation