support custom streams