almost done with master protocol