adds stream factory interface