public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    input.SkipLastField();
                    break;

                case 10: {
                    Id = input.ReadString();
                    break;
                }

                case 16: {
                    LastModifiedTimestampMs = input.ReadInt64();
                    break;
                }

                case 25: {
                    Latitude = input.ReadDouble();
                    break;
                }

                case 33: {
                    Longitude = input.ReadDouble();
                    break;
                }

                case 40: {
                    ownedByTeam_ = (global::PokemonGoDesktop.API.Proto.TeamColor)input.ReadEnum();
                    break;
                }

                case 48: {
                    guardPokemonId_ = (global::PokemonGoDesktop.API.Proto.PokemonId)input.ReadEnum();
                    break;
                }

                case 56: {
                    GuardPokemonCp = input.ReadInt32();
                    break;
                }

                case 64: {
                    Enabled = input.ReadBool();
                    break;
                }

                case 72: {
                    type_ = (global::PokemonGoDesktop.API.Proto.FortType)input.ReadEnum();
                    break;
                }

                case 80: {
                    GymPoints = input.ReadInt64();
                    break;
                }

                case 88: {
                    IsInBattle = input.ReadBool();
                    break;
                }

                case 98: {
                    ActiveFortModifier = input.ReadBytes();
                    break;
                }

                case 106: {
                    if (lureInfo_ == null)
                    {
                        lureInfo_ = new global::PokemonGoDesktop.API.Proto.FortLureInfo();
                    }
                    input.ReadMessage(lureInfo_);
                    break;
                }

                case 112: {
                    CooldownCompleteTimestampMs = input.ReadInt64();
                    break;
                }

                case 120: {
                    sponsor_ = (global::PokemonGoDesktop.API.Proto.FortSponsor)input.ReadEnum();
                    break;
                }

                case 128: {
                    renderingType_ = (global::PokemonGoDesktop.API.Proto.FortRenderingType)input.ReadEnum();
                    break;
                }
                }
            }
        }
 public void MergeFrom(FortData other)
 {
     if (other == null)
     {
         return;
     }
     if (other.Id.Length != 0)
     {
         Id = other.Id;
     }
     if (other.LastModifiedTimestampMs != 0L)
     {
         LastModifiedTimestampMs = other.LastModifiedTimestampMs;
     }
     if (other.Latitude != 0D)
     {
         Latitude = other.Latitude;
     }
     if (other.Longitude != 0D)
     {
         Longitude = other.Longitude;
     }
     if (other.Enabled != false)
     {
         Enabled = other.Enabled;
     }
     if (other.Type != 0)
     {
         Type = other.Type;
     }
     if (other.OwnedByTeam != 0)
     {
         OwnedByTeam = other.OwnedByTeam;
     }
     if (other.GuardPokemonId != 0)
     {
         GuardPokemonId = other.GuardPokemonId;
     }
     if (other.GuardPokemonCp != 0)
     {
         GuardPokemonCp = other.GuardPokemonCp;
     }
     if (other.GymPoints != 0L)
     {
         GymPoints = other.GymPoints;
     }
     if (other.IsInBattle != false)
     {
         IsInBattle = other.IsInBattle;
     }
     if (other.CooldownCompleteTimestampMs != 0L)
     {
         CooldownCompleteTimestampMs = other.CooldownCompleteTimestampMs;
     }
     if (other.Sponsor != 0)
     {
         Sponsor = other.Sponsor;
     }
     if (other.RenderingType != 0)
     {
         RenderingType = other.RenderingType;
     }
     if (other.ActiveFortModifier.Length != 0)
     {
         ActiveFortModifier = other.ActiveFortModifier;
     }
     if (other.lureInfo_ != null)
     {
         if (lureInfo_ == null)
         {
             lureInfo_ = new global::PokemonGoDesktop.API.Proto.FortLureInfo();
         }
         LureInfo.MergeFrom(other.LureInfo);
     }
 }