syntax = "proto3"; enum Gender { female = 0; male = 1; }; enum ZodiacSign { aries = 0; taurus = 1; gemini = 2; cancer = 3; leo = 4; virgo = 5; libra = 6; scorpius = 7; sagittarius = 8; capricorn = 9; aquarius = 10; pisces = 11; }; message Person { string uuid = 1; string name = 2; string surname = 3; Gender gender = 4; uint32 birthDate = 5; bytes photo = 6; string phoneNumber = 7; bool isOnline = 8; fixed32 visitTime = 9; uint32 age = 10; ZodiacSign zodiacSign = 11; repeated string songs = 12; repeated uint32 color = 13; string hometown = 14; repeated float location = 15; double pi = 16; double lotteryWin = 17; float someRatio = 18; float temperature = 19; sint64 randomBigNumber = 20; }; enum OnlineStatus { offline = 0; online = 1; }; message AltPerson { enum Gender { male = 0; female = 1; }; repeated int32 location = 101 [packed=false]; float pi = 103; bytes uuid = 300; bool newFieldBool = 299; string name = 2; Gender gender = 102; int32 zodiacSign = 130; int64 birthDate = 150; bytes age = 111; OnlineStatus isOnline = 1; double someRatio = 100; fixed64 visitTime = 15; sfixed64 randomBigNumber = 140; repeated int32 newFieldInt = 104; repeated float color = 14; uint64 lotteryWin = 202; bytes surname = 10; uint64 phoneNumber = 5; sint32 temperature = 41; string newFieldStr = 21; }; message StrPerson { string uuid = 1; string name = 2; string surname = 3; string gender = 4; string birthDate = 5; string phoneNumber = 7; string isOnline = 8; string visitTime = 9; string age = 10; string zodiacSign = 11; repeated string songs = 12; repeated string color = 13; string hometown = 14; repeated string location = 15; string pi = 16; string lotteryWin = 17; string someRatio = 18; string temperature = 19; string randomBigNumber = 20; };