make some attributes private & add data capture for streaming