tried to implement the new protocol resolving framework