finished refactoring, char streams starting