start implementing streaming