external protobuf