// Protocol Buffers - Google's data interchange format
// Copyright 2023 Google LLC.  All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file or at
// https://developers.google.com/open-source/licenses/bsd

syntax = "proto2";

package upb_test;

message TestUtf8Proto2Bytes {
  optional bytes data = 1;
}

message TestUtf8RepeatedProto2Bytes {
  optional bytes data = 1;
}

message TestUtf8Proto2String {
  optional string data = 1;
}

message TestUtf8RepeatedProto2String {
  repeated string data = 1;
}
