test class/protocal