add todo for protocol