StreamRecord refactor
StreamRecord refactor2