using old streams class as a base hrrrrr