// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: steammessages_publishedfile.steamworkssdk.proto

#include "steammessages_publishedfile.steamworkssdk.pb.h"

#include <algorithm>

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/extension_set.h>
#include <google/protobuf/wire_format_lite.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>

PROTOBUF_PRAGMA_INIT_SEG

namespace _pb = ::PROTOBUF_NAMESPACE_ID;
namespace _pbi = _pb::internal;

PROTOBUF_CONSTEXPR CPublishedFile_Subscribe_Request::CPublishedFile_Subscribe_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}
  , /*decltype(_impl_.list_type_)*/0u
  , /*decltype(_impl_.appid_)*/0
  , /*decltype(_impl_.notify_client_)*/false} {}
struct CPublishedFile_Subscribe_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Subscribe_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Subscribe_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_Subscribe_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Subscribe_RequestDefaultTypeInternal _CPublishedFile_Subscribe_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Subscribe_Response::CPublishedFile_Subscribe_Response(
    ::_pbi::ConstantInitialized) {}
struct CPublishedFile_Subscribe_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Subscribe_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Subscribe_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_Subscribe_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Subscribe_ResponseDefaultTypeInternal _CPublishedFile_Subscribe_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Unsubscribe_Request::CPublishedFile_Unsubscribe_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}
  , /*decltype(_impl_.list_type_)*/0u
  , /*decltype(_impl_.appid_)*/0
  , /*decltype(_impl_.notify_client_)*/false} {}
struct CPublishedFile_Unsubscribe_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Unsubscribe_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Unsubscribe_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_Unsubscribe_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Unsubscribe_RequestDefaultTypeInternal _CPublishedFile_Unsubscribe_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Unsubscribe_Response::CPublishedFile_Unsubscribe_Response(
    ::_pbi::ConstantInitialized) {}
struct CPublishedFile_Unsubscribe_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Unsubscribe_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Unsubscribe_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_Unsubscribe_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Unsubscribe_ResponseDefaultTypeInternal _CPublishedFile_Unsubscribe_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Publish_Request::CPublishedFile_Publish_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.tags_)*/{}
  , /*decltype(_impl_.cloudfilename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.preview_cloudfilename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.title_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.file_description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.consumer_shortcut_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.youtube_username_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.youtube_videoid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.redirect_uri_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.collection_type_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.game_type_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.consumer_appid_)*/0u
  , /*decltype(_impl_.file_type_)*/0u
  , /*decltype(_impl_.visibility_)*/0u} {}
struct CPublishedFile_Publish_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Publish_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Publish_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_Publish_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Publish_RequestDefaultTypeInternal _CPublishedFile_Publish_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Publish_Response::CPublishedFile_Publish_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.redirect_uri_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}} {}
struct CPublishedFile_Publish_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Publish_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Publish_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_Publish_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Publish_ResponseDefaultTypeInternal _CPublishedFile_Publish_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_GetDetails_Request::CPublishedFile_GetDetails_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.publishedfileids_)*/{}
  , /*decltype(_impl_.includetags_)*/false
  , /*decltype(_impl_.includeadditionalpreviews_)*/false
  , /*decltype(_impl_.includechildren_)*/false
  , /*decltype(_impl_.includekvtags_)*/false
  , /*decltype(_impl_.includevotes_)*/false
  , /*decltype(_impl_.short_description_)*/false} {}
struct CPublishedFile_GetDetails_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_GetDetails_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_GetDetails_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_GetDetails_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_GetDetails_RequestDefaultTypeInternal _CPublishedFile_GetDetails_Request_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails_Tag::PublishedFileDetails_Tag(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.tag_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.adminonly_)*/false} {}
struct PublishedFileDetails_TagDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetails_TagDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetails_TagDefaultTypeInternal() {}
  union {
    PublishedFileDetails_Tag _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetails_TagDefaultTypeInternal _PublishedFileDetails_Tag_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails_Preview::PublishedFileDetails_Preview(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.filename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.youtubevideoid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.previewid_)*/uint64_t{0u}
  , /*decltype(_impl_.sortorder_)*/0u
  , /*decltype(_impl_.size_)*/0u} {}
struct PublishedFileDetails_PreviewDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetails_PreviewDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetails_PreviewDefaultTypeInternal() {}
  union {
    PublishedFileDetails_Preview _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetails_PreviewDefaultTypeInternal _PublishedFileDetails_Preview_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails_Child::PublishedFileDetails_Child(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}
  , /*decltype(_impl_.sortorder_)*/0u
  , /*decltype(_impl_.file_type_)*/0u} {}
struct PublishedFileDetails_ChildDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetails_ChildDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetails_ChildDefaultTypeInternal() {}
  union {
    PublishedFileDetails_Child _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetails_ChildDefaultTypeInternal _PublishedFileDetails_Child_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails_KVTag::PublishedFileDetails_KVTag(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.key_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct PublishedFileDetails_KVTagDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetails_KVTagDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetails_KVTagDefaultTypeInternal() {}
  union {
    PublishedFileDetails_KVTag _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetails_KVTagDefaultTypeInternal _PublishedFileDetails_KVTag_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails_VoteData::PublishedFileDetails_VoteData(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.score_)*/0
  , /*decltype(_impl_.votes_up_)*/0u
  , /*decltype(_impl_.votes_down_)*/0u} {}
struct PublishedFileDetails_VoteDataDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetails_VoteDataDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetails_VoteDataDefaultTypeInternal() {}
  union {
    PublishedFileDetails_VoteData _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetails_VoteDataDefaultTypeInternal _PublishedFileDetails_VoteData_default_instance_;
PROTOBUF_CONSTEXPR PublishedFileDetails::PublishedFileDetails(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.previews_)*/{}
  , /*decltype(_impl_.tags_)*/{}
  , /*decltype(_impl_.children_)*/{}
  , /*decltype(_impl_.kvtags_)*/{}
  , /*decltype(_impl_.filename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.file_url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.preview_url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.youtubevideoid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.title_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.file_description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.short_description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.ban_reason_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.app_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.image_url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.shortcutname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.vote_data_)*/nullptr
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}
  , /*decltype(_impl_.result_)*/0u
  , /*decltype(_impl_.creator_appid_)*/0u
  , /*decltype(_impl_.creator_)*/uint64_t{0u}
  , /*decltype(_impl_.consumer_appid_)*/0u
  , /*decltype(_impl_.consumer_shortcutid_)*/0u
  , /*decltype(_impl_.file_size_)*/uint64_t{0u}
  , /*decltype(_impl_.preview_file_size_)*/uint64_t{0u}
  , /*decltype(_impl_.hcontent_file_)*/uint64_t{0u}
  , /*decltype(_impl_.hcontent_preview_)*/uint64_t{0u}
  , /*decltype(_impl_.time_created_)*/0u
  , /*decltype(_impl_.time_updated_)*/0u
  , /*decltype(_impl_.visibility_)*/0u
  , /*decltype(_impl_.flags_)*/0u
  , /*decltype(_impl_.workshop_file_)*/false
  , /*decltype(_impl_.workshop_accepted_)*/false
  , /*decltype(_impl_.show_subscribe_all_)*/false
  , /*decltype(_impl_.banned_)*/false
  , /*decltype(_impl_.num_comments_developer_)*/0
  , /*decltype(_impl_.banner_)*/uint64_t{0u}
  , /*decltype(_impl_.num_comments_public_)*/0
  , /*decltype(_impl_.file_type_)*/0u
  , /*decltype(_impl_.subscriptions_)*/0u
  , /*decltype(_impl_.can_be_deleted_)*/false
  , /*decltype(_impl_.incompatible_)*/false
  , /*decltype(_impl_.can_subscribe_)*/false
  , /*decltype(_impl_.spoiler_tag_)*/false
  , /*decltype(_impl_.favorited_)*/0u
  , /*decltype(_impl_.followers_)*/0u
  , /*decltype(_impl_.lifetime_subscriptions_)*/0u
  , /*decltype(_impl_.lifetime_favorited_)*/0u
  , /*decltype(_impl_.lifetime_followers_)*/0u
  , /*decltype(_impl_.views_)*/0u
  , /*decltype(_impl_.image_width_)*/0u
  , /*decltype(_impl_.image_height_)*/0u
  , /*decltype(_impl_.shortcutid_)*/0u
  , /*decltype(_impl_.num_children_)*/0u
  , /*decltype(_impl_.num_reports_)*/0u
  , /*decltype(_impl_.time_subscribed_)*/0u} {}
struct PublishedFileDetailsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PublishedFileDetailsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PublishedFileDetailsDefaultTypeInternal() {}
  union {
    PublishedFileDetails _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PublishedFileDetailsDefaultTypeInternal _PublishedFileDetails_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_GetDetails_Response::CPublishedFile_GetDetails_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.publishedfiledetails_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CPublishedFile_GetDetails_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_GetDetails_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_GetDetails_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_GetDetails_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_GetDetails_ResponseDefaultTypeInternal _CPublishedFile_GetDetails_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_Request::CPublishedFile_GetUserFiles_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.requiredtags_)*/{}
  , /*decltype(_impl_.excludedtags_)*/{}
  , /*decltype(_impl_.sortmethod_)*/{nullptr, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.totalonly_)*/false
  , /*decltype(_impl_.ids_only_)*/false
  , /*decltype(_impl_.privacy_)*/0u
  , /*decltype(_impl_.page_)*/1u
  , /*decltype(_impl_.numperpage_)*/1u} {}
struct CPublishedFile_GetUserFiles_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_GetUserFiles_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_GetUserFiles_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_GetUserFiles_RequestDefaultTypeInternal _CPublishedFile_GetUserFiles_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_Response_App::CPublishedFile_GetUserFiles_Response_App(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.shortcutid_)*/0u
  , /*decltype(_impl_.private__)*/false} {}
struct CPublishedFile_GetUserFiles_Response_AppDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_Response_AppDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_GetUserFiles_Response_AppDefaultTypeInternal() {}
  union {
    CPublishedFile_GetUserFiles_Response_App _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_GetUserFiles_Response_AppDefaultTypeInternal _CPublishedFile_GetUserFiles_Response_App_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_Response::CPublishedFile_GetUserFiles_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.publishedfiledetails_)*/{}
  , /*decltype(_impl_.apps_)*/{}
  , /*decltype(_impl_.total_)*/0u
  , /*decltype(_impl_.startindex_)*/0u} {}
struct CPublishedFile_GetUserFiles_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_GetUserFiles_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_GetUserFiles_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_GetUserFiles_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_GetUserFiles_ResponseDefaultTypeInternal _CPublishedFile_GetUserFiles_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Update_Request::CPublishedFile_Update_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.tags_)*/{}
  , /*decltype(_impl_.title_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.file_description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.filename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.preview_filename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.publishedfileid_)*/uint64_t{0u}
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.visibility_)*/0u} {}
struct CPublishedFile_Update_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Update_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Update_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_Update_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Update_RequestDefaultTypeInternal _CPublishedFile_Update_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_Update_Response::CPublishedFile_Update_Response(
    ::_pbi::ConstantInitialized) {}
struct CPublishedFile_Update_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_Update_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_Update_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_Update_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_Update_ResponseDefaultTypeInternal _CPublishedFile_Update_Response_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_RefreshVotingQueue_Request::CPublishedFile_RefreshVotingQueue_Request(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.tags_)*/{}
  , /*decltype(_impl_.excluded_tags_)*/{}
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.matching_file_type_)*/0u
  , /*decltype(_impl_.desired_queue_size_)*/0u
  , /*decltype(_impl_.match_all_tags_)*/true} {}
struct CPublishedFile_RefreshVotingQueue_RequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_RefreshVotingQueue_RequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_RefreshVotingQueue_RequestDefaultTypeInternal() {}
  union {
    CPublishedFile_RefreshVotingQueue_Request _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_RefreshVotingQueue_RequestDefaultTypeInternal _CPublishedFile_RefreshVotingQueue_Request_default_instance_;
PROTOBUF_CONSTEXPR CPublishedFile_RefreshVotingQueue_Response::CPublishedFile_RefreshVotingQueue_Response(
    ::_pbi::ConstantInitialized) {}
struct CPublishedFile_RefreshVotingQueue_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CPublishedFile_RefreshVotingQueue_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CPublishedFile_RefreshVotingQueue_ResponseDefaultTypeInternal() {}
  union {
    CPublishedFile_RefreshVotingQueue_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CPublishedFile_RefreshVotingQueue_ResponseDefaultTypeInternal _CPublishedFile_RefreshVotingQueue_Response_default_instance_;
static ::_pb::Metadata file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[21];
static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_steammessages_5fpublishedfile_2esteamworkssdk_2eproto = nullptr;
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_steammessages_5fpublishedfile_2esteamworkssdk_2eproto = nullptr;

const uint32_t TableStruct_steammessages_5fpublishedfile_2esteamworkssdk_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _impl_.list_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Request, _impl_.notify_client_),
  0,
  1,
  2,
  3,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Subscribe_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _impl_.list_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Request, _impl_.notify_client_),
  0,
  1,
  2,
  3,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Unsubscribe_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.consumer_appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.cloudfilename_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.preview_cloudfilename_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.title_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.file_description_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.file_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.consumer_shortcut_name_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.youtube_username_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.youtube_videoid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.visibility_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.redirect_uri_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.tags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.collection_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.game_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Request, _impl_.url_),
  11,
  12,
  0,
  1,
  2,
  3,
  13,
  4,
  5,
  6,
  14,
  7,
  ~0u,
  8,
  9,
  10,
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Response, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Response, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Publish_Response, _impl_.redirect_uri_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.publishedfileids_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.includetags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.includeadditionalpreviews_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.includechildren_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.includekvtags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.includevotes_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Request, _impl_.short_description_),
  ~0u,
  0,
  1,
  2,
  3,
  4,
  5,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Tag, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Tag, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Tag, _impl_.tag_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Tag, _impl_.adminonly_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.previewid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.sortorder_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.url_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.size_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.filename_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Preview, _impl_.youtubevideoid_),
  3,
  4,
  0,
  5,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Child, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Child, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Child, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Child, _impl_.sortorder_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_Child, _impl_.file_type_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_KVTag, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_KVTag, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_KVTag, _impl_.key_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_KVTag, _impl_.value_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_VoteData, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_VoteData, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_VoteData, _impl_.score_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_VoteData, _impl_.votes_up_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails_VoteData, _impl_.votes_down_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.result_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.creator_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.creator_appid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.consumer_appid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.consumer_shortcutid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.filename_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.file_size_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.preview_file_size_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.file_url_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.preview_url_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.youtubevideoid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.url_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.hcontent_file_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.hcontent_preview_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.title_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.file_description_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.short_description_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.time_created_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.time_updated_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.visibility_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.flags_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.workshop_file_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.workshop_accepted_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.show_subscribe_all_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.num_comments_developer_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.num_comments_public_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.banned_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.ban_reason_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.banner_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.can_be_deleted_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.incompatible_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.app_name_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.file_type_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.can_subscribe_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.subscriptions_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.favorited_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.followers_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.lifetime_subscriptions_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.lifetime_favorited_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.lifetime_followers_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.views_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.image_width_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.image_height_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.image_url_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.spoiler_tag_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.shortcutid_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.shortcutname_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.num_children_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.num_reports_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.previews_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.tags_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.children_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.kvtags_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.vote_data_),
  PROTOBUF_FIELD_OFFSET(::PublishedFileDetails, _impl_.time_subscribed_),
  14,
  13,
  16,
  15,
  17,
  18,
  0,
  19,
  20,
  1,
  2,
  3,
  4,
  21,
  22,
  5,
  6,
  7,
  23,
  24,
  25,
  26,
  27,
  28,
  29,
  31,
  33,
  30,
  8,
  32,
  36,
  37,
  9,
  34,
  38,
  35,
  40,
  41,
  42,
  43,
  44,
  45,
  46,
  47,
  10,
  39,
  48,
  11,
  49,
  50,
  ~0u,
  ~0u,
  ~0u,
  ~0u,
  12,
  51,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetDetails_Response, _impl_.publishedfiledetails_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.page_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.numperpage_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.sortmethod_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.totalonly_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.privacy_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.ids_only_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.requiredtags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Request, _impl_.excludedtags_),
  1,
  5,
  6,
  0,
  2,
  4,
  3,
  ~0u,
  ~0u,
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _impl_.shortcutid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response_App, _impl_.private__),
  1,
  0,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _impl_.total_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _impl_.startindex_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _impl_.publishedfiledetails_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_GetUserFiles_Response, _impl_.apps_),
  0,
  1,
  ~0u,
  ~0u,
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.publishedfileid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.title_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.file_description_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.visibility_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.tags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.filename_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Request, _impl_.preview_filename_),
  5,
  4,
  0,
  1,
  6,
  ~0u,
  2,
  3,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_Update_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.matching_file_type_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.tags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.match_all_tags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.excluded_tags_),
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Request, _impl_.desired_queue_size_),
  0,
  1,
  ~0u,
  3,
  ~0u,
  2,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CPublishedFile_RefreshVotingQueue_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, 10, -1, sizeof(::CPublishedFile_Subscribe_Request)},
  { 14, -1, -1, sizeof(::CPublishedFile_Subscribe_Response)},
  { 20, 30, -1, sizeof(::CPublishedFile_Unsubscribe_Request)},
  { 34, -1, -1, sizeof(::CPublishedFile_Unsubscribe_Response)},
  { 40, 62, -1, sizeof(::CPublishedFile_Publish_Request)},
  { 78, 86, -1, sizeof(::CPublishedFile_Publish_Response)},
  { 88, 101, -1, sizeof(::CPublishedFile_GetDetails_Request)},
  { 108, 116, -1, sizeof(::PublishedFileDetails_Tag)},
  { 118, 130, -1, sizeof(::PublishedFileDetails_Preview)},
  { 136, 145, -1, sizeof(::PublishedFileDetails_Child)},
  { 148, 156, -1, sizeof(::PublishedFileDetails_KVTag)},
  { 158, 167, -1, sizeof(::PublishedFileDetails_VoteData)},
  { 170, 232, -1, sizeof(::PublishedFileDetails)},
  { 288, -1, -1, sizeof(::CPublishedFile_GetDetails_Response)},
  { 295, 310, -1, sizeof(::CPublishedFile_GetUserFiles_Request)},
  { 319, 329, -1, sizeof(::CPublishedFile_GetUserFiles_Response_App)},
  { 333, 343, -1, sizeof(::CPublishedFile_GetUserFiles_Response)},
  { 347, 361, -1, sizeof(::CPublishedFile_Update_Request)},
  { 369, -1, -1, sizeof(::CPublishedFile_Update_Response)},
  { 375, 387, -1, sizeof(::CPublishedFile_RefreshVotingQueue_Request)},
  { 393, -1, -1, sizeof(::CPublishedFile_RefreshVotingQueue_Response)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::_CPublishedFile_Subscribe_Request_default_instance_._instance,
  &::_CPublishedFile_Subscribe_Response_default_instance_._instance,
  &::_CPublishedFile_Unsubscribe_Request_default_instance_._instance,
  &::_CPublishedFile_Unsubscribe_Response_default_instance_._instance,
  &::_CPublishedFile_Publish_Request_default_instance_._instance,
  &::_CPublishedFile_Publish_Response_default_instance_._instance,
  &::_CPublishedFile_GetDetails_Request_default_instance_._instance,
  &::_PublishedFileDetails_Tag_default_instance_._instance,
  &::_PublishedFileDetails_Preview_default_instance_._instance,
  &::_PublishedFileDetails_Child_default_instance_._instance,
  &::_PublishedFileDetails_KVTag_default_instance_._instance,
  &::_PublishedFileDetails_VoteData_default_instance_._instance,
  &::_PublishedFileDetails_default_instance_._instance,
  &::_CPublishedFile_GetDetails_Response_default_instance_._instance,
  &::_CPublishedFile_GetUserFiles_Request_default_instance_._instance,
  &::_CPublishedFile_GetUserFiles_Response_App_default_instance_._instance,
  &::_CPublishedFile_GetUserFiles_Response_default_instance_._instance,
  &::_CPublishedFile_Update_Request_default_instance_._instance,
  &::_CPublishedFile_Update_Response_default_instance_._instance,
  &::_CPublishedFile_RefreshVotingQueue_Request_default_instance_._instance,
  &::_CPublishedFile_RefreshVotingQueue_Response_default_instance_._instance,
};

const char descriptor_table_protodef_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n/steammessages_publishedfile.steamworks"
  "sdk.proto\032.steammessages_unified_base.st"
  "eamworkssdk.proto\"t\n CPublishedFile_Subs"
  "cribe_Request\022\027\n\017publishedfileid\030\001 \001(\004\022\021"
  "\n\tlist_type\030\002 \001(\r\022\r\n\005appid\030\003 \001(\005\022\025\n\rnoti"
  "fy_client\030\004 \001(\010\"#\n!CPublishedFile_Subscr"
  "ibe_Response\"v\n\"CPublishedFile_Unsubscri"
  "be_Request\022\027\n\017publishedfileid\030\001 \001(\004\022\021\n\tl"
  "ist_type\030\002 \001(\r\022\r\n\005appid\030\003 \001(\005\022\025\n\rnotify_"
  "client\030\004 \001(\010\"%\n#CPublishedFile_Unsubscri"
  "be_Response\"\314\n\n\036CPublishedFile_Publish_R"
  "equest\022<\n\005appid\030\001 \001(\rB-\202\265\030)App Id this f"
  "ile is being published FROM.\022C\n\016consumer"
  "_appid\030\002 \001(\rB+\202\265\030\'App Id this file is be"
  "ing published TO.\022K\n\rcloudfilename\030\003 \001(\t"
  "B4\202\265\0300Name of the file to publish in the"
  " user\'s cloud.\022[\n\025preview_cloudfilename\030"
  "\004 \001(\tB<\202\265\0308Name of the file to use as th"
  "e published file\'s preview.\0225\n\005title\030\005 \001"
  "(\tB&\202\265\030\"Text title for the published fil"
  "e.\022F\n\020file_description\030\006 \001(\tB,\202\265\030(Text d"
  "escription for the published file.\022L\n\tfi"
  "le_type\030\007 \001(\rB9\202\265\0305(EWorkshopFileType) T"
  "ype of Workshop file to publish.\022I\n\026cons"
  "umer_shortcut_name\030\010 \001(\tB)\202\265\030%Shortcut n"
  "ame for the published file.\022I\n\020youtube_u"
  "sername\030\t \001(\tB/\202\265\030+(Optional) User\'s You"
  "Tube account username.\022\\\n\017youtube_videoi"
  "d\030\n \001(\tBC\202\265\030\?(Optional) Video Id of a Yo"
  "uTube video for this published file.\022\201\001\n"
  "\nvisibility\030\013 \001(\rBm\202\265\030i(ERemoteStoragePu"
  "blishedFileVisibility) Visibility of the"
  " published file (private, friends, publi"
  "c, etc.)\022k\n\014redirect_uri\030\014 \001(\tBU\202\265\030Q(Opt"
  "ional) If supplied, the resulting publis"
  "hed file\'s Id is appended to the URI.\022D\n"
  "\004tags\030\r \003(\tB6\202\265\0302Array of text tags to a"
  "pply to the published file.\022Y\n\017collectio"
  "n_type\030\016 \001(\tB@\202\265\030<(Optional) Type of col"
  "lection the published file represents.\022M"
  "\n\tgame_type\030\017 \001(\tB:\202\265\0306(Optional) Type o"
  "f game the published file represents.\022[\n"
  "\003url\030\020 \001(\tBN\202\265\030J(Optional) If this repre"
  "sents a game, this is the URL to that ga"
  "me\'s page.\"P\n\037CPublishedFile_Publish_Res"
  "ponse\022\027\n\017publishedfileid\030\001 \001(\004\022\024\n\014redire"
  "ct_uri\030\002 \001(\t\"\204\005\n!CPublishedFile_GetDetai"
  "ls_Request\022P\n\020publishedfileids\030\001 \003(\006B6\202\265"
  "\0302Set of published file Ids to retrieve "
  "details for.\022Q\n\013includetags\030\002 \001(\010B<\202\265\0308I"
  "f true, return tag information in the re"
  "turned details.\022c\n\031includeadditionalprev"
  "iews\030\003 \001(\010B@\202\265\030<If true, return preview "
  "information in the returned details.\022N\n\017"
  "includechildren\030\004 \001(\010B5\202\265\0301If true, retu"
  "rn children in the returned details.\022R\n\r"
  "includekvtags\030\005 \001(\010B;\202\265\0307If true, return"
  " key value tags in the returned details."
  "\022L\n\014includevotes\030\006 \001(\010B6\202\265\0302If true, ret"
  "urn vote data in the returned details.\022c"
  "\n\021short_description\030\010 \001(\010BH\202\265\030DIf true, "
  "return a short description instead of th"
  "e full description.\"\211\016\n\024PublishedFileDet"
  "ails\022\016\n\006result\030\001 \001(\r\022\027\n\017publishedfileid\030"
  "\002 \001(\004\022\017\n\007creator\030\003 \001(\006\022\025\n\rcreator_appid\030"
  "\004 \001(\r\022\026\n\016consumer_appid\030\005 \001(\r\022\033\n\023consume"
  "r_shortcutid\030\006 \001(\r\022\020\n\010filename\030\007 \001(\t\022\021\n\t"
  "file_size\030\010 \001(\004\022\031\n\021preview_file_size\030\t \001"
  "(\004\022\020\n\010file_url\030\n \001(\t\022\023\n\013preview_url\030\013 \001("
  "\t\022\026\n\016youtubevideoid\030\014 \001(\t\022\013\n\003url\030\r \001(\t\022\025"
  "\n\rhcontent_file\030\016 \001(\006\022\030\n\020hcontent_previe"
  "w\030\017 \001(\006\022\r\n\005title\030\020 \001(\t\022\030\n\020file_descripti"
  "on\030\021 \001(\t\022\031\n\021short_description\030\022 \001(\t\022\024\n\014t"
  "ime_created\030\023 \001(\r\022\024\n\014time_updated\030\024 \001(\r\022"
  "\022\n\nvisibility\030\025 \001(\r\022\r\n\005flags\030\026 \001(\r\022\025\n\rwo"
  "rkshop_file\030\027 \001(\010\022\031\n\021workshop_accepted\030\030"
  " \001(\010\022\032\n\022show_subscribe_all\030\031 \001(\010\022\036\n\026num_"
  "comments_developer\030\032 \001(\005\022\033\n\023num_comments"
  "_public\030\033 \001(\005\022\016\n\006banned\030\034 \001(\010\022\022\n\nban_rea"
  "son\030\035 \001(\t\022\016\n\006banner\030\036 \001(\006\022\026\n\016can_be_dele"
  "ted\030\037 \001(\010\022\024\n\014incompatible\030  \001(\010\022\020\n\010app_n"
  "ame\030! \001(\t\022\021\n\tfile_type\030\" \001(\r\022\025\n\rcan_subs"
  "cribe\030# \001(\010\022\025\n\rsubscriptions\030$ \001(\r\022\021\n\tfa"
  "vorited\030% \001(\r\022\021\n\tfollowers\030& \001(\r\022\036\n\026life"
  "time_subscriptions\030\' \001(\r\022\032\n\022lifetime_fav"
  "orited\030( \001(\r\022\032\n\022lifetime_followers\030) \001(\r"
  "\022\r\n\005views\030* \001(\r\022\023\n\013image_width\030+ \001(\r\022\024\n\014"
  "image_height\030, \001(\r\022\021\n\timage_url\030- \001(\t\022\023\n"
  "\013spoiler_tag\030. \001(\010\022\022\n\nshortcutid\030/ \001(\r\022\024"
  "\n\014shortcutname\0300 \001(\t\022\024\n\014num_children\0301 \001"
  "(\r\022\023\n\013num_reports\0302 \001(\r\022/\n\010previews\0303 \003("
  "\0132\035.PublishedFileDetails.Preview\022\'\n\004tags"
  "\0304 \003(\0132\031.PublishedFileDetails.Tag\022-\n\010chi"
  "ldren\0305 \003(\0132\033.PublishedFileDetails.Child"
  "\022+\n\006kvtags\0306 \003(\0132\033.PublishedFileDetails."
  "KVTag\0221\n\tvote_data\0307 \001(\0132\036.PublishedFile"
  "Details.VoteData\022r\n\017time_subscribed\0308 \001("
  "\rBY\202\265\030UOnly valid in PublishedFile.GetUs"
  "erFiles and not normal PublishedFile.Get"
  "Detail calls\032%\n\003Tag\022\013\n\003tag\030\001 \001(\t\022\021\n\tadmi"
  "nonly\030\002 \001(\010\032t\n\007Preview\022\021\n\tpreviewid\030\001 \001("
  "\004\022\021\n\tsortorder\030\002 \001(\r\022\013\n\003url\030\003 \001(\t\022\014\n\004siz"
  "e\030\004 \001(\r\022\020\n\010filename\030\005 \001(\t\022\026\n\016youtubevide"
  "oid\030\006 \001(\t\032F\n\005Child\022\027\n\017publishedfileid\030\001 "
  "\001(\004\022\021\n\tsortorder\030\002 \001(\r\022\021\n\tfile_type\030\003 \001("
  "\r\032#\n\005KVTag\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\032\?"
  "\n\010VoteData\022\r\n\005score\030\001 \001(\002\022\020\n\010votes_up\030\002 "
  "\001(\r\022\022\n\nvotes_down\030\003 \001(\r\"Y\n\"CPublishedFil"
  "e_GetDetails_Response\0223\n\024publishedfilede"
  "tails\030\001 \003(\0132\025.PublishedFileDetails\"\273\006\n#C"
  "PublishedFile_GetUserFiles_Request\022;\n\005ap"
  "pid\030\001 \001(\rB,\202\265\030(App Id to retrieve publis"
  "hed files from.\022:\n\004page\030\003 \001(\r:\0011B)\202\265\030%(O"
  "ptional) Starting page for results.\022P\n\nn"
  "umperpage\030\004 \001(\r:\0011B9\202\265\0305(Optional) The n"
  "umber of results, per page to return.\022Y\n"
  "\nsortmethod\030\006 \001(\t:\013lastupdatedB8\202\265\0304(Opt"
  "ional) Sorting method to use on returned"
  " values.\022i\n\ttotalonly\030\007 \001(\010BV\202\265\030R(Option"
  "al) If true, only return the total numbe"
  "r of files that satisfy this query.\022;\n\007p"
  "rivacy\030\t \001(\rB*\202\265\030&(optional) Filter by p"
  "rivacy settings.\022n\n\010ids_only\030\n \001(\010B\\\202\265\030X"
  "(Optional) If true, only return the publ"
  "ished file ids of files that satisfy thi"
  "s query.\022h\n\014requiredtags\030\013 \003(\tBR\202\265\030N(Opt"
  "ional) Tags that must be present on a pu"
  "blished file to satisfy the query.\022l\n\014ex"
  "cludedtags\030\014 \003(\tBV\202\265\030R(Optional) Tags th"
  "at must NOT be present on a published fi"
  "le to satisfy the query.\"\200\002\n$CPublishedF"
  "ile_GetUserFiles_Response\022\r\n\005total\030\001 \001(\r"
  "\022\022\n\nstartindex\030\002 \001(\r\0223\n\024publishedfiledet"
  "ails\030\003 \003(\0132\025.PublishedFileDetails\0227\n\004app"
  "s\030\004 \003(\0132).CPublishedFile_GetUserFiles_Re"
  "sponse.App\032G\n\003App\022\r\n\005appid\030\001 \001(\r\022\014\n\004name"
  "\030\002 \001(\t\022\022\n\nshortcutid\030\003 \001(\r\022\017\n\007private\030\004 "
  "\001(\010\"\317\004\n\035CPublishedFile_Update_Request\0229\n"
  "\005appid\030\001 \001(\rB*\202\265\030&App Id this published "
  "file belongs to.\022L\n\017publishedfileid\030\002 \001("
  "\006B3\202\265\030/Published file id of the file we\'"
  "d like update.\022:\n\005title\030\003 \001(\tB+\202\265\030\'(Opti"
  "onal) Title of the published file.\022K\n\020fi"
  "le_description\030\004 \001(\tB1\202\265\030-(Optional) Des"
  "cription of the published file.\022D\n\nvisib"
  "ility\030\005 \001(\rB0\202\265\030,(Optional) Visibility o"
  "f the published file.\022@\n\004tags\030\006 \003(\tB2\202\265\030"
  ".(Optional) Set of tags for the publishe"
  "d file.\022A\n\010filename\030\007 \001(\tB/\202\265\030+(Optional"
  ") Filename for the published file.\022Q\n\020pr"
  "eview_filename\030\010 \001(\tB7\202\265\0303(Optional) Pre"
  "view filename for the published file.\" \n"
  "\036CPublishedFile_Update_Response\"\273\004\n)CPub"
  "lishedFile_RefreshVotingQueue_Request\022\r\n"
  "\005appid\030\001 \001(\r\022B\n\022matching_file_type\030\002 \001(\r"
  "B&\202\265\030\"EPublishedFileInfoMatchingFileType"
  "\022l\n\004tags\030\003 \003(\tB^\202\265\030ZInclude files that h"
  "ave all the tags or any of the tags if m"
  "atch_all_tags is set to false.\022\225\001\n\016match"
  "_all_tags\030\004 \001(\010:\004trueBw\202\265\030sIf true, then"
  " files must have all the tags specified."
  "  If false, then must have at least one "
  "of the tags specified.\022I\n\rexcluded_tags\030"
  "\005 \003(\tB2\202\265\030.Exclude any files that have a"
  "ny of these tags.\022j\n\022desired_queue_size\030"
  "\006 \001(\rBN\202\265\030JDesired number of items in th"
  "e voting queue.  May be clamped by the s"
  "erver\",\n*CPublishedFile_RefreshVotingQue"
  "ue_Response2\203\010\n\rPublishedFile\022\201\001\n\tSubscr"
  "ibe\022!.CPublishedFile_Subscribe_Request\032\""
  ".CPublishedFile_Subscribe_Response\"-\202\265\030)"
  "Subscribes the user to the published fil"
  "e\022\213\001\n\013Unsubscribe\022#.CPublishedFile_Unsub"
  "scribe_Request\032$.CPublishedFile_Unsubscr"
  "ibe_Response\"1\202\265\030-Unsubscribes the user "
  "from the published file\022\200\001\n\007Publish\022\037.CP"
  "ublishedFile_Publish_Request\032 .CPublishe"
  "dFile_Publish_Response\"2\202\265\030.Publishes a "
  "clouded user file to the Workshop.\022\220\001\n\nG"
  "etDetails\022\".CPublishedFile_GetDetails_Re"
  "quest\032#.CPublishedFile_GetDetails_Respon"
  "se\"9\202\265\0305Retrieves information about a se"
  "t of published files.\022\205\001\n\014GetUserFiles\022$"
  ".CPublishedFile_GetUserFiles_Request\032%.C"
  "PublishedFile_GetUserFiles_Response\"(\202\265\030"
  "$Retrieves files published by a user.\022z\n"
  "\006Update\022\036.CPublishedFile_Update_Request\032"
  "\037.CPublishedFile_Update_Response\"/\202\265\030+Up"
  "dates information about a published file"
  ".\022\230\001\n\022RefreshVotingQueue\022*.CPublishedFil"
  "e_RefreshVotingQueue_Request\032+.CPublishe"
  "dFile_RefreshVotingQueue_Response\")\202\265\030%R"
  "efresh the voting queue for the user\032+\202\265"
  "\030\'A service to access published file dat"
  "a"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_deps[1] = {
  &::descriptor_table_steammessages_5funified_5fbase_2esteamworkssdk_2eproto,
};
static ::_pbi::once_flag descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto = {
    false, false, 7761, descriptor_table_protodef_steammessages_5fpublishedfile_2esteamworkssdk_2eproto,
    "steammessages_publishedfile.steamworkssdk.proto",
    &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once, descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_deps, 1, 21,
    schemas, file_default_instances, TableStruct_steammessages_5fpublishedfile_2esteamworkssdk_2eproto::offsets,
    file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto, file_level_enum_descriptors_steammessages_5fpublishedfile_2esteamworkssdk_2eproto,
    file_level_service_descriptors_steammessages_5fpublishedfile_2esteamworkssdk_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter() {
  return &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_steammessages_5fpublishedfile_2esteamworkssdk_2eproto(&descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto);

// ===================================================================

class CPublishedFile_Subscribe_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_Subscribe_Request>()._impl_._has_bits_);
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_list_type(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_notify_client(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CPublishedFile_Subscribe_Request::CPublishedFile_Subscribe_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Subscribe_Request)
}
CPublishedFile_Subscribe_Request::CPublishedFile_Subscribe_Request(const CPublishedFile_Subscribe_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_Subscribe_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){}
    , decltype(_impl_.list_type_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.notify_client_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.publishedfileid_, &from._impl_.publishedfileid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.notify_client_) -
    reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.notify_client_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Subscribe_Request)
}

inline void CPublishedFile_Subscribe_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
    , decltype(_impl_.list_type_){0u}
    , decltype(_impl_.appid_){0}
    , decltype(_impl_.notify_client_){false}
  };
}

CPublishedFile_Subscribe_Request::~CPublishedFile_Subscribe_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_Subscribe_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_Subscribe_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CPublishedFile_Subscribe_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_Subscribe_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_Subscribe_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    ::memset(&_impl_.publishedfileid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.notify_client_) -
        reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.notify_client_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_Subscribe_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint64 publishedfileid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_publishedfileid(&has_bits);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 list_type = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_list_type(&has_bits);
          _impl_.list_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 appid = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool notify_client = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_notify_client(&has_bits);
          _impl_.notify_client_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_Subscribe_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_Subscribe_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 publishedfileid = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_publishedfileid(), target);
  }

  // optional uint32 list_type = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_list_type(), target);
  }

  // optional int32 appid = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_appid(), target);
  }

  // optional bool notify_client = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_notify_client(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_Subscribe_Request)
  return target;
}

size_t CPublishedFile_Subscribe_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_Subscribe_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    // optional uint64 publishedfileid = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_publishedfileid());
    }

    // optional uint32 list_type = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_list_type());
    }

    // optional int32 appid = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_appid());
    }

    // optional bool notify_client = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Subscribe_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_Subscribe_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Subscribe_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_Subscribe_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_Subscribe_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_Subscribe_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_Subscribe_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.list_type_ = from._impl_.list_type_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.notify_client_ = from._impl_.notify_client_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_Subscribe_Request::CopyFrom(const CPublishedFile_Subscribe_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_Subscribe_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_Subscribe_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_Subscribe_Request::InternalSwap(CPublishedFile_Subscribe_Request* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_Subscribe_Request, _impl_.notify_client_)
      + sizeof(CPublishedFile_Subscribe_Request::_impl_.notify_client_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_Subscribe_Request, _impl_.publishedfileid_)>(
          reinterpret_cast<char*>(&_impl_.publishedfileid_),
          reinterpret_cast<char*>(&other->_impl_.publishedfileid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Subscribe_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[0]);
}

// ===================================================================

class CPublishedFile_Subscribe_Response::_Internal {
 public:
};

CPublishedFile_Subscribe_Response::CPublishedFile_Subscribe_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Subscribe_Response)
}
CPublishedFile_Subscribe_Response::CPublishedFile_Subscribe_Response(const CPublishedFile_Subscribe_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CPublishedFile_Subscribe_Response* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Subscribe_Response)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Subscribe_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Subscribe_Response::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Subscribe_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[1]);
}

// ===================================================================

class CPublishedFile_Unsubscribe_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_Unsubscribe_Request>()._impl_._has_bits_);
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_list_type(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_notify_client(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CPublishedFile_Unsubscribe_Request::CPublishedFile_Unsubscribe_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Unsubscribe_Request)
}
CPublishedFile_Unsubscribe_Request::CPublishedFile_Unsubscribe_Request(const CPublishedFile_Unsubscribe_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_Unsubscribe_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){}
    , decltype(_impl_.list_type_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.notify_client_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.publishedfileid_, &from._impl_.publishedfileid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.notify_client_) -
    reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.notify_client_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Unsubscribe_Request)
}

inline void CPublishedFile_Unsubscribe_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
    , decltype(_impl_.list_type_){0u}
    , decltype(_impl_.appid_){0}
    , decltype(_impl_.notify_client_){false}
  };
}

CPublishedFile_Unsubscribe_Request::~CPublishedFile_Unsubscribe_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_Unsubscribe_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_Unsubscribe_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CPublishedFile_Unsubscribe_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_Unsubscribe_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_Unsubscribe_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    ::memset(&_impl_.publishedfileid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.notify_client_) -
        reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.notify_client_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_Unsubscribe_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint64 publishedfileid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_publishedfileid(&has_bits);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 list_type = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_list_type(&has_bits);
          _impl_.list_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 appid = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool notify_client = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_notify_client(&has_bits);
          _impl_.notify_client_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_Unsubscribe_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_Unsubscribe_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 publishedfileid = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_publishedfileid(), target);
  }

  // optional uint32 list_type = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_list_type(), target);
  }

  // optional int32 appid = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_appid(), target);
  }

  // optional bool notify_client = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_notify_client(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_Unsubscribe_Request)
  return target;
}

size_t CPublishedFile_Unsubscribe_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_Unsubscribe_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    // optional uint64 publishedfileid = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_publishedfileid());
    }

    // optional uint32 list_type = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_list_type());
    }

    // optional int32 appid = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_appid());
    }

    // optional bool notify_client = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Unsubscribe_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_Unsubscribe_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Unsubscribe_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_Unsubscribe_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_Unsubscribe_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_Unsubscribe_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_Unsubscribe_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.list_type_ = from._impl_.list_type_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.notify_client_ = from._impl_.notify_client_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_Unsubscribe_Request::CopyFrom(const CPublishedFile_Unsubscribe_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_Unsubscribe_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_Unsubscribe_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_Unsubscribe_Request::InternalSwap(CPublishedFile_Unsubscribe_Request* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_Unsubscribe_Request, _impl_.notify_client_)
      + sizeof(CPublishedFile_Unsubscribe_Request::_impl_.notify_client_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_Unsubscribe_Request, _impl_.publishedfileid_)>(
          reinterpret_cast<char*>(&_impl_.publishedfileid_),
          reinterpret_cast<char*>(&other->_impl_.publishedfileid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Unsubscribe_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[2]);
}

// ===================================================================

class CPublishedFile_Unsubscribe_Response::_Internal {
 public:
};

CPublishedFile_Unsubscribe_Response::CPublishedFile_Unsubscribe_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Unsubscribe_Response)
}
CPublishedFile_Unsubscribe_Response::CPublishedFile_Unsubscribe_Response(const CPublishedFile_Unsubscribe_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CPublishedFile_Unsubscribe_Response* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Unsubscribe_Response)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Unsubscribe_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Unsubscribe_Response::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Unsubscribe_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[3]);
}

// ===================================================================

class CPublishedFile_Publish_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_Publish_Request>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static void set_has_consumer_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_cloudfilename(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_preview_cloudfilename(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_title(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_file_description(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_file_type(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static void set_has_consumer_shortcut_name(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_youtube_username(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_youtube_videoid(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_visibility(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_redirect_uri(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_collection_type(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_game_type(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_url(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
};

CPublishedFile_Publish_Request::CPublishedFile_Publish_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Publish_Request)
}
CPublishedFile_Publish_Request::CPublishedFile_Publish_Request(const CPublishedFile_Publish_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_Publish_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){from._impl_.tags_}
    , decltype(_impl_.cloudfilename_){}
    , decltype(_impl_.preview_cloudfilename_){}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.consumer_shortcut_name_){}
    , decltype(_impl_.youtube_username_){}
    , decltype(_impl_.youtube_videoid_){}
    , decltype(_impl_.redirect_uri_){}
    , decltype(_impl_.collection_type_){}
    , decltype(_impl_.game_type_){}
    , decltype(_impl_.url_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.consumer_appid_){}
    , decltype(_impl_.file_type_){}
    , decltype(_impl_.visibility_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.cloudfilename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.cloudfilename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_cloudfilename()) {
    _this->_impl_.cloudfilename_.Set(from._internal_cloudfilename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.preview_cloudfilename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_cloudfilename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_preview_cloudfilename()) {
    _this->_impl_.preview_cloudfilename_.Set(from._internal_preview_cloudfilename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_title()) {
    _this->_impl_.title_.Set(from._internal_title(), 
      _this->GetArenaForAllocation());
  }
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_file_description()) {
    _this->_impl_.file_description_.Set(from._internal_file_description(), 
      _this->GetArenaForAllocation());
  }
  _impl_.consumer_shortcut_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.consumer_shortcut_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_consumer_shortcut_name()) {
    _this->_impl_.consumer_shortcut_name_.Set(from._internal_consumer_shortcut_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.youtube_username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtube_username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_youtube_username()) {
    _this->_impl_.youtube_username_.Set(from._internal_youtube_username(), 
      _this->GetArenaForAllocation());
  }
  _impl_.youtube_videoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtube_videoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_youtube_videoid()) {
    _this->_impl_.youtube_videoid_.Set(from._internal_youtube_videoid(), 
      _this->GetArenaForAllocation());
  }
  _impl_.redirect_uri_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.redirect_uri_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_redirect_uri()) {
    _this->_impl_.redirect_uri_.Set(from._internal_redirect_uri(), 
      _this->GetArenaForAllocation());
  }
  _impl_.collection_type_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.collection_type_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_collection_type()) {
    _this->_impl_.collection_type_.Set(from._internal_collection_type(), 
      _this->GetArenaForAllocation());
  }
  _impl_.game_type_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.game_type_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_game_type()) {
    _this->_impl_.game_type_.Set(from._internal_game_type(), 
      _this->GetArenaForAllocation());
  }
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_url()) {
    _this->_impl_.url_.Set(from._internal_url(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.visibility_) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.visibility_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Publish_Request)
}

inline void CPublishedFile_Publish_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){arena}
    , decltype(_impl_.cloudfilename_){}
    , decltype(_impl_.preview_cloudfilename_){}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.consumer_shortcut_name_){}
    , decltype(_impl_.youtube_username_){}
    , decltype(_impl_.youtube_videoid_){}
    , decltype(_impl_.redirect_uri_){}
    , decltype(_impl_.collection_type_){}
    , decltype(_impl_.game_type_){}
    , decltype(_impl_.url_){}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.consumer_appid_){0u}
    , decltype(_impl_.file_type_){0u}
    , decltype(_impl_.visibility_){0u}
  };
  _impl_.cloudfilename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.cloudfilename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.preview_cloudfilename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_cloudfilename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.consumer_shortcut_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.consumer_shortcut_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.youtube_username_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtube_username_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.youtube_videoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtube_videoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.redirect_uri_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.redirect_uri_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.collection_type_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.collection_type_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.game_type_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.game_type_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CPublishedFile_Publish_Request::~CPublishedFile_Publish_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_Publish_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_Publish_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.tags_.~RepeatedPtrField();
  _impl_.cloudfilename_.Destroy();
  _impl_.preview_cloudfilename_.Destroy();
  _impl_.title_.Destroy();
  _impl_.file_description_.Destroy();
  _impl_.consumer_shortcut_name_.Destroy();
  _impl_.youtube_username_.Destroy();
  _impl_.youtube_videoid_.Destroy();
  _impl_.redirect_uri_.Destroy();
  _impl_.collection_type_.Destroy();
  _impl_.game_type_.Destroy();
  _impl_.url_.Destroy();
}

void CPublishedFile_Publish_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_Publish_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_Publish_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.tags_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.cloudfilename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.preview_cloudfilename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.title_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.file_description_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000010u) {
      _impl_.consumer_shortcut_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000020u) {
      _impl_.youtube_username_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000040u) {
      _impl_.youtube_videoid_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000080u) {
      _impl_.redirect_uri_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00000700u) {
    if (cached_has_bits & 0x00000100u) {
      _impl_.collection_type_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000200u) {
      _impl_.game_type_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000400u) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00007800u) {
    ::memset(&_impl_.appid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.visibility_) -
        reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.visibility_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_Publish_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1 [(.description) = "App Id this file is being published FROM."];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 consumer_appid = 2 [(.description) = "App Id this file is being published TO."];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_consumer_appid(&has_bits);
          _impl_.consumer_appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string cloudfilename = 3 [(.description) = "Name of the file to publish in the user\'s cloud."];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_cloudfilename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.cloudfilename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string preview_cloudfilename = 4 [(.description) = "Name of the file to use as the published file\'s preview."];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_preview_cloudfilename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.preview_cloudfilename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string title = 5 [(.description) = "Text title for the published file."];
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_title();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.title");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string file_description = 6 [(.description) = "Text description for the published file."];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_file_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.file_description");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 file_type = 7 [(.description) = "(EWorkshopFileType) Type of Workshop file to publish."];
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_file_type(&has_bits);
          _impl_.file_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string consumer_shortcut_name = 8 [(.description) = "Shortcut name for the published file."];
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          auto str = _internal_mutable_consumer_shortcut_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.consumer_shortcut_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string youtube_username = 9 [(.description) = "(Optional) User\'s YouTube account username."];
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          auto str = _internal_mutable_youtube_username();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.youtube_username");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string youtube_videoid = 10 [(.description) = "(Optional) Video Id of a YouTube video for this published file."];
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          auto str = _internal_mutable_youtube_videoid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.youtube_videoid");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 visibility = 11 [(.description) = "(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)"];
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_visibility(&has_bits);
          _impl_.visibility_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string redirect_uri = 12 [(.description) = "(Optional) If supplied, the resulting published file\'s Id is appended to the URI."];
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          auto str = _internal_mutable_redirect_uri();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.redirect_uri");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // repeated string tags = 13 [(.description) = "Array of text tags to apply to the published file."];
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_tags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.tags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<106>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional string collection_type = 14 [(.description) = "(Optional) Type of collection the published file represents."];
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 114)) {
          auto str = _internal_mutable_collection_type();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.collection_type");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string game_type = 15 [(.description) = "(Optional) Type of game the published file represents."];
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 122)) {
          auto str = _internal_mutable_game_type();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.game_type");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string url = 16 [(.description) = "(Optional) If this represents a game, this is the URL to that game\'s page."];
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          auto str = _internal_mutable_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Request.url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_Publish_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_Publish_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 appid = 1 [(.description) = "App Id this file is being published FROM."];
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_appid(), target);
  }

  // optional uint32 consumer_appid = 2 [(.description) = "App Id this file is being published TO."];
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_consumer_appid(), target);
  }

  // optional string cloudfilename = 3 [(.description) = "Name of the file to publish in the user\'s cloud."];
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_cloudfilename().data(), static_cast<int>(this->_internal_cloudfilename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.cloudfilename");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_cloudfilename(), target);
  }

  // optional string preview_cloudfilename = 4 [(.description) = "Name of the file to use as the published file\'s preview."];
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_preview_cloudfilename().data(), static_cast<int>(this->_internal_preview_cloudfilename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.preview_cloudfilename");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_preview_cloudfilename(), target);
  }

  // optional string title = 5 [(.description) = "Text title for the published file."];
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_title().data(), static_cast<int>(this->_internal_title().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.title");
    target = stream->WriteStringMaybeAliased(
        5, this->_internal_title(), target);
  }

  // optional string file_description = 6 [(.description) = "Text description for the published file."];
  if (cached_has_bits & 0x00000008u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_file_description().data(), static_cast<int>(this->_internal_file_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.file_description");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_file_description(), target);
  }

  // optional uint32 file_type = 7 [(.description) = "(EWorkshopFileType) Type of Workshop file to publish."];
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_file_type(), target);
  }

  // optional string consumer_shortcut_name = 8 [(.description) = "Shortcut name for the published file."];
  if (cached_has_bits & 0x00000010u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_consumer_shortcut_name().data(), static_cast<int>(this->_internal_consumer_shortcut_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.consumer_shortcut_name");
    target = stream->WriteStringMaybeAliased(
        8, this->_internal_consumer_shortcut_name(), target);
  }

  // optional string youtube_username = 9 [(.description) = "(Optional) User\'s YouTube account username."];
  if (cached_has_bits & 0x00000020u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_youtube_username().data(), static_cast<int>(this->_internal_youtube_username().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.youtube_username");
    target = stream->WriteStringMaybeAliased(
        9, this->_internal_youtube_username(), target);
  }

  // optional string youtube_videoid = 10 [(.description) = "(Optional) Video Id of a YouTube video for this published file."];
  if (cached_has_bits & 0x00000040u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_youtube_videoid().data(), static_cast<int>(this->_internal_youtube_videoid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.youtube_videoid");
    target = stream->WriteStringMaybeAliased(
        10, this->_internal_youtube_videoid(), target);
  }

  // optional uint32 visibility = 11 [(.description) = "(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)"];
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(11, this->_internal_visibility(), target);
  }

  // optional string redirect_uri = 12 [(.description) = "(Optional) If supplied, the resulting published file\'s Id is appended to the URI."];
  if (cached_has_bits & 0x00000080u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_redirect_uri().data(), static_cast<int>(this->_internal_redirect_uri().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.redirect_uri");
    target = stream->WriteStringMaybeAliased(
        12, this->_internal_redirect_uri(), target);
  }

  // repeated string tags = 13 [(.description) = "Array of text tags to apply to the published file."];
  for (int i = 0, n = this->_internal_tags_size(); i < n; i++) {
    const auto& s = this->_internal_tags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.tags");
    target = stream->WriteString(13, s, target);
  }

  // optional string collection_type = 14 [(.description) = "(Optional) Type of collection the published file represents."];
  if (cached_has_bits & 0x00000100u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_collection_type().data(), static_cast<int>(this->_internal_collection_type().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.collection_type");
    target = stream->WriteStringMaybeAliased(
        14, this->_internal_collection_type(), target);
  }

  // optional string game_type = 15 [(.description) = "(Optional) Type of game the published file represents."];
  if (cached_has_bits & 0x00000200u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_game_type().data(), static_cast<int>(this->_internal_game_type().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.game_type");
    target = stream->WriteStringMaybeAliased(
        15, this->_internal_game_type(), target);
  }

  // optional string url = 16 [(.description) = "(Optional) If this represents a game, this is the URL to that game\'s page."];
  if (cached_has_bits & 0x00000400u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_url().data(), static_cast<int>(this->_internal_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Request.url");
    target = stream->WriteStringMaybeAliased(
        16, this->_internal_url(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_Publish_Request)
  return target;
}

size_t CPublishedFile_Publish_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_Publish_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string tags = 13 [(.description) = "Array of text tags to apply to the published file."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.tags_.size());
  for (int i = 0, n = _impl_.tags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.tags_.Get(i));
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional string cloudfilename = 3 [(.description) = "Name of the file to publish in the user\'s cloud."];
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_cloudfilename());
    }

    // optional string preview_cloudfilename = 4 [(.description) = "Name of the file to use as the published file\'s preview."];
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_preview_cloudfilename());
    }

    // optional string title = 5 [(.description) = "Text title for the published file."];
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_title());
    }

    // optional string file_description = 6 [(.description) = "Text description for the published file."];
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_file_description());
    }

    // optional string consumer_shortcut_name = 8 [(.description) = "Shortcut name for the published file."];
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_consumer_shortcut_name());
    }

    // optional string youtube_username = 9 [(.description) = "(Optional) User\'s YouTube account username."];
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_youtube_username());
    }

    // optional string youtube_videoid = 10 [(.description) = "(Optional) Video Id of a YouTube video for this published file."];
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_youtube_videoid());
    }

    // optional string redirect_uri = 12 [(.description) = "(Optional) If supplied, the resulting published file\'s Id is appended to the URI."];
    if (cached_has_bits & 0x00000080u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_redirect_uri());
    }

  }
  if (cached_has_bits & 0x00007f00u) {
    // optional string collection_type = 14 [(.description) = "(Optional) Type of collection the published file represents."];
    if (cached_has_bits & 0x00000100u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_collection_type());
    }

    // optional string game_type = 15 [(.description) = "(Optional) Type of game the published file represents."];
    if (cached_has_bits & 0x00000200u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_game_type());
    }

    // optional string url = 16 [(.description) = "(Optional) If this represents a game, this is the URL to that game\'s page."];
    if (cached_has_bits & 0x00000400u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_url());
    }

    // optional uint32 appid = 1 [(.description) = "App Id this file is being published FROM."];
    if (cached_has_bits & 0x00000800u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional uint32 consumer_appid = 2 [(.description) = "App Id this file is being published TO."];
    if (cached_has_bits & 0x00001000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_consumer_appid());
    }

    // optional uint32 file_type = 7 [(.description) = "(EWorkshopFileType) Type of Workshop file to publish."];
    if (cached_has_bits & 0x00002000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_file_type());
    }

    // optional uint32 visibility = 11 [(.description) = "(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)"];
    if (cached_has_bits & 0x00004000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_visibility());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Publish_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_Publish_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Publish_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_Publish_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_Publish_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_Publish_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_Publish_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.tags_.MergeFrom(from._impl_.tags_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_cloudfilename(from._internal_cloudfilename());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_preview_cloudfilename(from._internal_preview_cloudfilename());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_title(from._internal_title());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_file_description(from._internal_file_description());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_set_consumer_shortcut_name(from._internal_consumer_shortcut_name());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_set_youtube_username(from._internal_youtube_username());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_set_youtube_videoid(from._internal_youtube_videoid());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_internal_set_redirect_uri(from._internal_redirect_uri());
    }
  }
  if (cached_has_bits & 0x00007f00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_internal_set_collection_type(from._internal_collection_type());
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_internal_set_game_type(from._internal_game_type());
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_internal_set_url(from._internal_url());
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.consumer_appid_ = from._impl_.consumer_appid_;
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.file_type_ = from._impl_.file_type_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.visibility_ = from._impl_.visibility_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_Publish_Request::CopyFrom(const CPublishedFile_Publish_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_Publish_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_Publish_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_Publish_Request::InternalSwap(CPublishedFile_Publish_Request* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.tags_.InternalSwap(&other->_impl_.tags_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.cloudfilename_, lhs_arena,
      &other->_impl_.cloudfilename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.preview_cloudfilename_, lhs_arena,
      &other->_impl_.preview_cloudfilename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.title_, lhs_arena,
      &other->_impl_.title_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.file_description_, lhs_arena,
      &other->_impl_.file_description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.consumer_shortcut_name_, lhs_arena,
      &other->_impl_.consumer_shortcut_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.youtube_username_, lhs_arena,
      &other->_impl_.youtube_username_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.youtube_videoid_, lhs_arena,
      &other->_impl_.youtube_videoid_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.redirect_uri_, lhs_arena,
      &other->_impl_.redirect_uri_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.collection_type_, lhs_arena,
      &other->_impl_.collection_type_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.game_type_, lhs_arena,
      &other->_impl_.game_type_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.url_, lhs_arena,
      &other->_impl_.url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_Publish_Request, _impl_.visibility_)
      + sizeof(CPublishedFile_Publish_Request::_impl_.visibility_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_Publish_Request, _impl_.appid_)>(
          reinterpret_cast<char*>(&_impl_.appid_),
          reinterpret_cast<char*>(&other->_impl_.appid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Publish_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[4]);
}

// ===================================================================

class CPublishedFile_Publish_Response::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_Publish_Response>()._impl_._has_bits_);
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_redirect_uri(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CPublishedFile_Publish_Response::CPublishedFile_Publish_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Publish_Response)
}
CPublishedFile_Publish_Response::CPublishedFile_Publish_Response(const CPublishedFile_Publish_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_Publish_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.redirect_uri_){}
    , decltype(_impl_.publishedfileid_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.redirect_uri_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.redirect_uri_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_redirect_uri()) {
    _this->_impl_.redirect_uri_.Set(from._internal_redirect_uri(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Publish_Response)
}

inline void CPublishedFile_Publish_Response::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.redirect_uri_){}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
  };
  _impl_.redirect_uri_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.redirect_uri_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CPublishedFile_Publish_Response::~CPublishedFile_Publish_Response() {
  // @@protoc_insertion_point(destructor:CPublishedFile_Publish_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_Publish_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.redirect_uri_.Destroy();
}

void CPublishedFile_Publish_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_Publish_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_Publish_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    _impl_.redirect_uri_.ClearNonDefaultToEmpty();
  }
  _impl_.publishedfileid_ = uint64_t{0u};
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_Publish_Response::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint64 publishedfileid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_publishedfileid(&has_bits);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string redirect_uri = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_redirect_uri();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Publish_Response.redirect_uri");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_Publish_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_Publish_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 publishedfileid = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_publishedfileid(), target);
  }

  // optional string redirect_uri = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_redirect_uri().data(), static_cast<int>(this->_internal_redirect_uri().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Publish_Response.redirect_uri");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_redirect_uri(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_Publish_Response)
  return target;
}

size_t CPublishedFile_Publish_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_Publish_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    // optional string redirect_uri = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_redirect_uri());
    }

    // optional uint64 publishedfileid = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_publishedfileid());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Publish_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_Publish_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Publish_Response::GetClassData() const { return &_class_data_; }


void CPublishedFile_Publish_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_Publish_Response*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_Publish_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_Publish_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_redirect_uri(from._internal_redirect_uri());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_Publish_Response::CopyFrom(const CPublishedFile_Publish_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_Publish_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_Publish_Response::IsInitialized() const {
  return true;
}

void CPublishedFile_Publish_Response::InternalSwap(CPublishedFile_Publish_Response* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.redirect_uri_, lhs_arena,
      &other->_impl_.redirect_uri_, rhs_arena
  );
  swap(_impl_.publishedfileid_, other->_impl_.publishedfileid_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Publish_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[5]);
}

// ===================================================================

class CPublishedFile_GetDetails_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_GetDetails_Request>()._impl_._has_bits_);
  static void set_has_includetags(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_includeadditionalpreviews(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_includechildren(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_includekvtags(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_includevotes(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_short_description(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
};

CPublishedFile_GetDetails_Request::CPublishedFile_GetDetails_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_GetDetails_Request)
}
CPublishedFile_GetDetails_Request::CPublishedFile_GetDetails_Request(const CPublishedFile_GetDetails_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_GetDetails_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileids_){from._impl_.publishedfileids_}
    , decltype(_impl_.includetags_){}
    , decltype(_impl_.includeadditionalpreviews_){}
    , decltype(_impl_.includechildren_){}
    , decltype(_impl_.includekvtags_){}
    , decltype(_impl_.includevotes_){}
    , decltype(_impl_.short_description_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.includetags_, &from._impl_.includetags_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.short_description_) -
    reinterpret_cast<char*>(&_impl_.includetags_)) + sizeof(_impl_.short_description_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_GetDetails_Request)
}

inline void CPublishedFile_GetDetails_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileids_){arena}
    , decltype(_impl_.includetags_){false}
    , decltype(_impl_.includeadditionalpreviews_){false}
    , decltype(_impl_.includechildren_){false}
    , decltype(_impl_.includekvtags_){false}
    , decltype(_impl_.includevotes_){false}
    , decltype(_impl_.short_description_){false}
  };
}

CPublishedFile_GetDetails_Request::~CPublishedFile_GetDetails_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_GetDetails_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_GetDetails_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.publishedfileids_.~RepeatedField();
}

void CPublishedFile_GetDetails_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_GetDetails_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_GetDetails_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.publishedfileids_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    ::memset(&_impl_.includetags_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.short_description_) -
        reinterpret_cast<char*>(&_impl_.includetags_)) + sizeof(_impl_.short_description_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_GetDetails_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated fixed64 publishedfileids = 1 [(.description) = "Set of published file Ids to retrieve details for."];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 9)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_publishedfileids(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr));
            ptr += sizeof(uint64_t);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<9>(ptr));
        } else if (static_cast<uint8_t>(tag) == 10) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFixed64Parser(_internal_mutable_publishedfileids(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool includetags = 2 [(.description) = "If true, return tag information in the returned details."];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_includetags(&has_bits);
          _impl_.includetags_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool includeadditionalpreviews = 3 [(.description) = "If true, return preview information in the returned details."];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_includeadditionalpreviews(&has_bits);
          _impl_.includeadditionalpreviews_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool includechildren = 4 [(.description) = "If true, return children in the returned details."];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_includechildren(&has_bits);
          _impl_.includechildren_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool includekvtags = 5 [(.description) = "If true, return key value tags in the returned details."];
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_includekvtags(&has_bits);
          _impl_.includekvtags_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool includevotes = 6 [(.description) = "If true, return vote data in the returned details."];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_includevotes(&has_bits);
          _impl_.includevotes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool short_description = 8 [(.description) = "If true, return a short description instead of the full description."];
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_short_description(&has_bits);
          _impl_.short_description_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_GetDetails_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_GetDetails_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated fixed64 publishedfileids = 1 [(.description) = "Set of published file Ids to retrieve details for."];
  for (int i = 0, n = this->_internal_publishedfileids_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(1, this->_internal_publishedfileids(i), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool includetags = 2 [(.description) = "If true, return tag information in the returned details."];
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_includetags(), target);
  }

  // optional bool includeadditionalpreviews = 3 [(.description) = "If true, return preview information in the returned details."];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_includeadditionalpreviews(), target);
  }

  // optional bool includechildren = 4 [(.description) = "If true, return children in the returned details."];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_includechildren(), target);
  }

  // optional bool includekvtags = 5 [(.description) = "If true, return key value tags in the returned details."];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_includekvtags(), target);
  }

  // optional bool includevotes = 6 [(.description) = "If true, return vote data in the returned details."];
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_includevotes(), target);
  }

  // optional bool short_description = 8 [(.description) = "If true, return a short description instead of the full description."];
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(8, this->_internal_short_description(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_GetDetails_Request)
  return target;
}

size_t CPublishedFile_GetDetails_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_GetDetails_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated fixed64 publishedfileids = 1 [(.description) = "Set of published file Ids to retrieve details for."];
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_publishedfileids_size());
    size_t data_size = 8UL * count;
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_publishedfileids_size());
    total_size += data_size;
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    // optional bool includetags = 2 [(.description) = "If true, return tag information in the returned details."];
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 1;
    }

    // optional bool includeadditionalpreviews = 3 [(.description) = "If true, return preview information in the returned details."];
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

    // optional bool includechildren = 4 [(.description) = "If true, return children in the returned details."];
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional bool includekvtags = 5 [(.description) = "If true, return key value tags in the returned details."];
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

    // optional bool includevotes = 6 [(.description) = "If true, return vote data in the returned details."];
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 1;
    }

    // optional bool short_description = 8 [(.description) = "If true, return a short description instead of the full description."];
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_GetDetails_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_GetDetails_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_GetDetails_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_GetDetails_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_GetDetails_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_GetDetails_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_GetDetails_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.publishedfileids_.MergeFrom(from._impl_.publishedfileids_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.includetags_ = from._impl_.includetags_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.includeadditionalpreviews_ = from._impl_.includeadditionalpreviews_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.includechildren_ = from._impl_.includechildren_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.includekvtags_ = from._impl_.includekvtags_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.includevotes_ = from._impl_.includevotes_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.short_description_ = from._impl_.short_description_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_GetDetails_Request::CopyFrom(const CPublishedFile_GetDetails_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_GetDetails_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_GetDetails_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_GetDetails_Request::InternalSwap(CPublishedFile_GetDetails_Request* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.publishedfileids_.InternalSwap(&other->_impl_.publishedfileids_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_GetDetails_Request, _impl_.short_description_)
      + sizeof(CPublishedFile_GetDetails_Request::_impl_.short_description_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_GetDetails_Request, _impl_.includetags_)>(
          reinterpret_cast<char*>(&_impl_.includetags_),
          reinterpret_cast<char*>(&other->_impl_.includetags_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_GetDetails_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[6]);
}

// ===================================================================

class PublishedFileDetails_Tag::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails_Tag>()._impl_._has_bits_);
  static void set_has_tag(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_adminonly(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

PublishedFileDetails_Tag::PublishedFileDetails_Tag(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails.Tag)
}
PublishedFileDetails_Tag::PublishedFileDetails_Tag(const PublishedFileDetails_Tag& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails_Tag* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tag_){}
    , decltype(_impl_.adminonly_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.tag_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.tag_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_tag()) {
    _this->_impl_.tag_.Set(from._internal_tag(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.adminonly_ = from._impl_.adminonly_;
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails.Tag)
}

inline void PublishedFileDetails_Tag::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tag_){}
    , decltype(_impl_.adminonly_){false}
  };
  _impl_.tag_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.tag_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

PublishedFileDetails_Tag::~PublishedFileDetails_Tag() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails.Tag)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails_Tag::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.tag_.Destroy();
}

void PublishedFileDetails_Tag::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails_Tag::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails.Tag)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    _impl_.tag_.ClearNonDefaultToEmpty();
  }
  _impl_.adminonly_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails_Tag::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional string tag = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_tag();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.Tag.tag");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool adminonly = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_adminonly(&has_bits);
          _impl_.adminonly_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails_Tag::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails.Tag)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string tag = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_tag().data(), static_cast<int>(this->_internal_tag().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.Tag.tag");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_tag(), target);
  }

  // optional bool adminonly = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_adminonly(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails.Tag)
  return target;
}

size_t PublishedFileDetails_Tag::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails.Tag)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    // optional string tag = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_tag());
    }

    // optional bool adminonly = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails_Tag::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails_Tag::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails_Tag::GetClassData() const { return &_class_data_; }


void PublishedFileDetails_Tag::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails_Tag*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails_Tag&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails.Tag)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_tag(from._internal_tag());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.adminonly_ = from._impl_.adminonly_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails_Tag::CopyFrom(const PublishedFileDetails_Tag& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails.Tag)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails_Tag::IsInitialized() const {
  return true;
}

void PublishedFileDetails_Tag::InternalSwap(PublishedFileDetails_Tag* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.tag_, lhs_arena,
      &other->_impl_.tag_, rhs_arena
  );
  swap(_impl_.adminonly_, other->_impl_.adminonly_);
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails_Tag::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[7]);
}

// ===================================================================

class PublishedFileDetails_Preview::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails_Preview>()._impl_._has_bits_);
  static void set_has_previewid(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_sortorder(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_url(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_size(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_filename(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_youtubevideoid(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

PublishedFileDetails_Preview::PublishedFileDetails_Preview(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails.Preview)
}
PublishedFileDetails_Preview::PublishedFileDetails_Preview(const PublishedFileDetails_Preview& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails_Preview* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.url_){}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.youtubevideoid_){}
    , decltype(_impl_.previewid_){}
    , decltype(_impl_.sortorder_){}
    , decltype(_impl_.size_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_url()) {
    _this->_impl_.url_.Set(from._internal_url(), 
      _this->GetArenaForAllocation());
  }
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_filename()) {
    _this->_impl_.filename_.Set(from._internal_filename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.youtubevideoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtubevideoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_youtubevideoid()) {
    _this->_impl_.youtubevideoid_.Set(from._internal_youtubevideoid(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.previewid_, &from._impl_.previewid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.size_) -
    reinterpret_cast<char*>(&_impl_.previewid_)) + sizeof(_impl_.size_));
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails.Preview)
}

inline void PublishedFileDetails_Preview::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.url_){}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.youtubevideoid_){}
    , decltype(_impl_.previewid_){uint64_t{0u}}
    , decltype(_impl_.sortorder_){0u}
    , decltype(_impl_.size_){0u}
  };
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.youtubevideoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtubevideoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

PublishedFileDetails_Preview::~PublishedFileDetails_Preview() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails.Preview)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails_Preview::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.url_.Destroy();
  _impl_.filename_.Destroy();
  _impl_.youtubevideoid_.Destroy();
}

void PublishedFileDetails_Preview::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails_Preview::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails.Preview)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.filename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.youtubevideoid_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00000038u) {
    ::memset(&_impl_.previewid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.size_) -
        reinterpret_cast<char*>(&_impl_.previewid_)) + sizeof(_impl_.size_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails_Preview::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint64 previewid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_previewid(&has_bits);
          _impl_.previewid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 sortorder = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_sortorder(&has_bits);
          _impl_.sortorder_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string url = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.Preview.url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 size = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_size(&has_bits);
          _impl_.size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string filename = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_filename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.Preview.filename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string youtubevideoid = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_youtubevideoid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.Preview.youtubevideoid");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails_Preview::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails.Preview)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 previewid = 1;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_previewid(), target);
  }

  // optional uint32 sortorder = 2;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_sortorder(), target);
  }

  // optional string url = 3;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_url().data(), static_cast<int>(this->_internal_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.Preview.url");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_url(), target);
  }

  // optional uint32 size = 4;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_size(), target);
  }

  // optional string filename = 5;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_filename().data(), static_cast<int>(this->_internal_filename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.Preview.filename");
    target = stream->WriteStringMaybeAliased(
        5, this->_internal_filename(), target);
  }

  // optional string youtubevideoid = 6;
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_youtubevideoid().data(), static_cast<int>(this->_internal_youtubevideoid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.Preview.youtubevideoid");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_youtubevideoid(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails.Preview)
  return target;
}

size_t PublishedFileDetails_Preview::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails.Preview)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    // optional string url = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_url());
    }

    // optional string filename = 5;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_filename());
    }

    // optional string youtubevideoid = 6;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_youtubevideoid());
    }

    // optional uint64 previewid = 1;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_previewid());
    }

    // optional uint32 sortorder = 2;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_sortorder());
    }

    // optional uint32 size = 4;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_size());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails_Preview::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails_Preview::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails_Preview::GetClassData() const { return &_class_data_; }


void PublishedFileDetails_Preview::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails_Preview*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails_Preview&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails.Preview)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_url(from._internal_url());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_filename(from._internal_filename());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_youtubevideoid(from._internal_youtubevideoid());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.previewid_ = from._impl_.previewid_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.sortorder_ = from._impl_.sortorder_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.size_ = from._impl_.size_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails_Preview::CopyFrom(const PublishedFileDetails_Preview& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails.Preview)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails_Preview::IsInitialized() const {
  return true;
}

void PublishedFileDetails_Preview::InternalSwap(PublishedFileDetails_Preview* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.url_, lhs_arena,
      &other->_impl_.url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.filename_, lhs_arena,
      &other->_impl_.filename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.youtubevideoid_, lhs_arena,
      &other->_impl_.youtubevideoid_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(PublishedFileDetails_Preview, _impl_.size_)
      + sizeof(PublishedFileDetails_Preview::_impl_.size_)
      - PROTOBUF_FIELD_OFFSET(PublishedFileDetails_Preview, _impl_.previewid_)>(
          reinterpret_cast<char*>(&_impl_.previewid_),
          reinterpret_cast<char*>(&other->_impl_.previewid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails_Preview::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[8]);
}

// ===================================================================

class PublishedFileDetails_Child::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails_Child>()._impl_._has_bits_);
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_sortorder(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_file_type(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

PublishedFileDetails_Child::PublishedFileDetails_Child(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails.Child)
}
PublishedFileDetails_Child::PublishedFileDetails_Child(const PublishedFileDetails_Child& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails_Child* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){}
    , decltype(_impl_.sortorder_){}
    , decltype(_impl_.file_type_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.publishedfileid_, &from._impl_.publishedfileid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.file_type_) -
    reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.file_type_));
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails.Child)
}

inline void PublishedFileDetails_Child::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
    , decltype(_impl_.sortorder_){0u}
    , decltype(_impl_.file_type_){0u}
  };
}

PublishedFileDetails_Child::~PublishedFileDetails_Child() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails.Child)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails_Child::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void PublishedFileDetails_Child::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails_Child::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails.Child)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    ::memset(&_impl_.publishedfileid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.file_type_) -
        reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.file_type_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails_Child::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint64 publishedfileid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_publishedfileid(&has_bits);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 sortorder = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_sortorder(&has_bits);
          _impl_.sortorder_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 file_type = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_file_type(&has_bits);
          _impl_.file_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails_Child::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails.Child)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 publishedfileid = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_publishedfileid(), target);
  }

  // optional uint32 sortorder = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_sortorder(), target);
  }

  // optional uint32 file_type = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_file_type(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails.Child)
  return target;
}

size_t PublishedFileDetails_Child::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails.Child)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    // optional uint64 publishedfileid = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_publishedfileid());
    }

    // optional uint32 sortorder = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_sortorder());
    }

    // optional uint32 file_type = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_file_type());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails_Child::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails_Child::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails_Child::GetClassData() const { return &_class_data_; }


void PublishedFileDetails_Child::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails_Child*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails_Child&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails.Child)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.sortorder_ = from._impl_.sortorder_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.file_type_ = from._impl_.file_type_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails_Child::CopyFrom(const PublishedFileDetails_Child& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails.Child)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails_Child::IsInitialized() const {
  return true;
}

void PublishedFileDetails_Child::InternalSwap(PublishedFileDetails_Child* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(PublishedFileDetails_Child, _impl_.file_type_)
      + sizeof(PublishedFileDetails_Child::_impl_.file_type_)
      - PROTOBUF_FIELD_OFFSET(PublishedFileDetails_Child, _impl_.publishedfileid_)>(
          reinterpret_cast<char*>(&_impl_.publishedfileid_),
          reinterpret_cast<char*>(&other->_impl_.publishedfileid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails_Child::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[9]);
}

// ===================================================================

class PublishedFileDetails_KVTag::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails_KVTag>()._impl_._has_bits_);
  static void set_has_key(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_value(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

PublishedFileDetails_KVTag::PublishedFileDetails_KVTag(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails.KVTag)
}
PublishedFileDetails_KVTag::PublishedFileDetails_KVTag(const PublishedFileDetails_KVTag& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails_KVTag* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.key_){}
    , decltype(_impl_.value_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_key()) {
    _this->_impl_.key_.Set(from._internal_key(), 
      _this->GetArenaForAllocation());
  }
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_value()) {
    _this->_impl_.value_.Set(from._internal_value(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails.KVTag)
}

inline void PublishedFileDetails_KVTag::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.key_){}
    , decltype(_impl_.value_){}
  };
  _impl_.key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

PublishedFileDetails_KVTag::~PublishedFileDetails_KVTag() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails.KVTag)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails_KVTag::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.key_.Destroy();
  _impl_.value_.Destroy();
}

void PublishedFileDetails_KVTag::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails_KVTag::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails.KVTag)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.key_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.value_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails_KVTag::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional string key = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_key();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.KVTag.key");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.KVTag.value");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails_KVTag::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails.KVTag)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string key = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_key().data(), static_cast<int>(this->_internal_key().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.KVTag.key");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_key(), target);
  }

  // optional string value = 2;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_value().data(), static_cast<int>(this->_internal_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.KVTag.value");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_value(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails.KVTag)
  return target;
}

size_t PublishedFileDetails_KVTag::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails.KVTag)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    // optional string key = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_key());
    }

    // optional string value = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_value());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails_KVTag::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails_KVTag::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails_KVTag::GetClassData() const { return &_class_data_; }


void PublishedFileDetails_KVTag::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails_KVTag*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails_KVTag&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails.KVTag)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_key(from._internal_key());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_value(from._internal_value());
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails_KVTag::CopyFrom(const PublishedFileDetails_KVTag& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails.KVTag)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails_KVTag::IsInitialized() const {
  return true;
}

void PublishedFileDetails_KVTag::InternalSwap(PublishedFileDetails_KVTag* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.key_, lhs_arena,
      &other->_impl_.key_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.value_, lhs_arena,
      &other->_impl_.value_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails_KVTag::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[10]);
}

// ===================================================================

class PublishedFileDetails_VoteData::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails_VoteData>()._impl_._has_bits_);
  static void set_has_score(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_votes_up(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_votes_down(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

PublishedFileDetails_VoteData::PublishedFileDetails_VoteData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails.VoteData)
}
PublishedFileDetails_VoteData::PublishedFileDetails_VoteData(const PublishedFileDetails_VoteData& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails_VoteData* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.score_){}
    , decltype(_impl_.votes_up_){}
    , decltype(_impl_.votes_down_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.score_, &from._impl_.score_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.votes_down_) -
    reinterpret_cast<char*>(&_impl_.score_)) + sizeof(_impl_.votes_down_));
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails.VoteData)
}

inline void PublishedFileDetails_VoteData::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.score_){0}
    , decltype(_impl_.votes_up_){0u}
    , decltype(_impl_.votes_down_){0u}
  };
}

PublishedFileDetails_VoteData::~PublishedFileDetails_VoteData() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails.VoteData)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails_VoteData::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void PublishedFileDetails_VoteData::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails_VoteData::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails.VoteData)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    ::memset(&_impl_.score_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.votes_down_) -
        reinterpret_cast<char*>(&_impl_.score_)) + sizeof(_impl_.votes_down_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails_VoteData::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional float score = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_score(&has_bits);
          _impl_.score_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 votes_up = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_votes_up(&has_bits);
          _impl_.votes_up_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 votes_down = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_votes_down(&has_bits);
          _impl_.votes_down_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails_VoteData::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails.VoteData)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float score = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_score(), target);
  }

  // optional uint32 votes_up = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_votes_up(), target);
  }

  // optional uint32 votes_down = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_votes_down(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails.VoteData)
  return target;
}

size_t PublishedFileDetails_VoteData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails.VoteData)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    // optional float score = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional uint32 votes_up = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_votes_up());
    }

    // optional uint32 votes_down = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_votes_down());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails_VoteData::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails_VoteData::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails_VoteData::GetClassData() const { return &_class_data_; }


void PublishedFileDetails_VoteData::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails_VoteData*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails_VoteData&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails.VoteData)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.score_ = from._impl_.score_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.votes_up_ = from._impl_.votes_up_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.votes_down_ = from._impl_.votes_down_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails_VoteData::CopyFrom(const PublishedFileDetails_VoteData& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails.VoteData)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails_VoteData::IsInitialized() const {
  return true;
}

void PublishedFileDetails_VoteData::InternalSwap(PublishedFileDetails_VoteData* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(PublishedFileDetails_VoteData, _impl_.votes_down_)
      + sizeof(PublishedFileDetails_VoteData::_impl_.votes_down_)
      - PROTOBUF_FIELD_OFFSET(PublishedFileDetails_VoteData, _impl_.score_)>(
          reinterpret_cast<char*>(&_impl_.score_),
          reinterpret_cast<char*>(&other->_impl_.score_));
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails_VoteData::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[11]);
}

// ===================================================================

class PublishedFileDetails::_Internal {
 public:
  using HasBits = decltype(std::declval<PublishedFileDetails>()._impl_._has_bits_);
  static void set_has_result(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static void set_has_creator(HasBits* has_bits) {
    (*has_bits)[0] |= 65536u;
  }
  static void set_has_creator_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 32768u;
  }
  static void set_has_consumer_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 131072u;
  }
  static void set_has_consumer_shortcutid(HasBits* has_bits) {
    (*has_bits)[0] |= 262144u;
  }
  static void set_has_filename(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_file_size(HasBits* has_bits) {
    (*has_bits)[0] |= 524288u;
  }
  static void set_has_preview_file_size(HasBits* has_bits) {
    (*has_bits)[0] |= 1048576u;
  }
  static void set_has_file_url(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_preview_url(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_youtubevideoid(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_url(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_hcontent_file(HasBits* has_bits) {
    (*has_bits)[0] |= 2097152u;
  }
  static void set_has_hcontent_preview(HasBits* has_bits) {
    (*has_bits)[0] |= 4194304u;
  }
  static void set_has_title(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_file_description(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_short_description(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_time_created(HasBits* has_bits) {
    (*has_bits)[0] |= 8388608u;
  }
  static void set_has_time_updated(HasBits* has_bits) {
    (*has_bits)[0] |= 16777216u;
  }
  static void set_has_visibility(HasBits* has_bits) {
    (*has_bits)[0] |= 33554432u;
  }
  static void set_has_flags(HasBits* has_bits) {
    (*has_bits)[0] |= 67108864u;
  }
  static void set_has_workshop_file(HasBits* has_bits) {
    (*has_bits)[0] |= 134217728u;
  }
  static void set_has_workshop_accepted(HasBits* has_bits) {
    (*has_bits)[0] |= 268435456u;
  }
  static void set_has_show_subscribe_all(HasBits* has_bits) {
    (*has_bits)[0] |= 536870912u;
  }
  static void set_has_num_comments_developer(HasBits* has_bits) {
    (*has_bits)[0] |= 2147483648u;
  }
  static void set_has_num_comments_public(HasBits* has_bits) {
    (*has_bits)[1] |= 2u;
  }
  static void set_has_banned(HasBits* has_bits) {
    (*has_bits)[0] |= 1073741824u;
  }
  static void set_has_ban_reason(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_banner(HasBits* has_bits) {
    (*has_bits)[1] |= 1u;
  }
  static void set_has_can_be_deleted(HasBits* has_bits) {
    (*has_bits)[1] |= 16u;
  }
  static void set_has_incompatible(HasBits* has_bits) {
    (*has_bits)[1] |= 32u;
  }
  static void set_has_app_name(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_file_type(HasBits* has_bits) {
    (*has_bits)[1] |= 4u;
  }
  static void set_has_can_subscribe(HasBits* has_bits) {
    (*has_bits)[1] |= 64u;
  }
  static void set_has_subscriptions(HasBits* has_bits) {
    (*has_bits)[1] |= 8u;
  }
  static void set_has_favorited(HasBits* has_bits) {
    (*has_bits)[1] |= 256u;
  }
  static void set_has_followers(HasBits* has_bits) {
    (*has_bits)[1] |= 512u;
  }
  static void set_has_lifetime_subscriptions(HasBits* has_bits) {
    (*has_bits)[1] |= 1024u;
  }
  static void set_has_lifetime_favorited(HasBits* has_bits) {
    (*has_bits)[1] |= 2048u;
  }
  static void set_has_lifetime_followers(HasBits* has_bits) {
    (*has_bits)[1] |= 4096u;
  }
  static void set_has_views(HasBits* has_bits) {
    (*has_bits)[1] |= 8192u;
  }
  static void set_has_image_width(HasBits* has_bits) {
    (*has_bits)[1] |= 16384u;
  }
  static void set_has_image_height(HasBits* has_bits) {
    (*has_bits)[1] |= 32768u;
  }
  static void set_has_image_url(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_spoiler_tag(HasBits* has_bits) {
    (*has_bits)[1] |= 128u;
  }
  static void set_has_shortcutid(HasBits* has_bits) {
    (*has_bits)[1] |= 65536u;
  }
  static void set_has_shortcutname(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static void set_has_num_children(HasBits* has_bits) {
    (*has_bits)[1] |= 131072u;
  }
  static void set_has_num_reports(HasBits* has_bits) {
    (*has_bits)[1] |= 262144u;
  }
  static const ::PublishedFileDetails_VoteData& vote_data(const PublishedFileDetails* msg);
  static void set_has_vote_data(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_time_subscribed(HasBits* has_bits) {
    (*has_bits)[1] |= 524288u;
  }
};

const ::PublishedFileDetails_VoteData&
PublishedFileDetails::_Internal::vote_data(const PublishedFileDetails* msg) {
  return *msg->_impl_.vote_data_;
}
PublishedFileDetails::PublishedFileDetails(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:PublishedFileDetails)
}
PublishedFileDetails::PublishedFileDetails(const PublishedFileDetails& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PublishedFileDetails* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.previews_){from._impl_.previews_}
    , decltype(_impl_.tags_){from._impl_.tags_}
    , decltype(_impl_.children_){from._impl_.children_}
    , decltype(_impl_.kvtags_){from._impl_.kvtags_}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.file_url_){}
    , decltype(_impl_.preview_url_){}
    , decltype(_impl_.youtubevideoid_){}
    , decltype(_impl_.url_){}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.short_description_){}
    , decltype(_impl_.ban_reason_){}
    , decltype(_impl_.app_name_){}
    , decltype(_impl_.image_url_){}
    , decltype(_impl_.shortcutname_){}
    , decltype(_impl_.vote_data_){nullptr}
    , decltype(_impl_.publishedfileid_){}
    , decltype(_impl_.result_){}
    , decltype(_impl_.creator_appid_){}
    , decltype(_impl_.creator_){}
    , decltype(_impl_.consumer_appid_){}
    , decltype(_impl_.consumer_shortcutid_){}
    , decltype(_impl_.file_size_){}
    , decltype(_impl_.preview_file_size_){}
    , decltype(_impl_.hcontent_file_){}
    , decltype(_impl_.hcontent_preview_){}
    , decltype(_impl_.time_created_){}
    , decltype(_impl_.time_updated_){}
    , decltype(_impl_.visibility_){}
    , decltype(_impl_.flags_){}
    , decltype(_impl_.workshop_file_){}
    , decltype(_impl_.workshop_accepted_){}
    , decltype(_impl_.show_subscribe_all_){}
    , decltype(_impl_.banned_){}
    , decltype(_impl_.num_comments_developer_){}
    , decltype(_impl_.banner_){}
    , decltype(_impl_.num_comments_public_){}
    , decltype(_impl_.file_type_){}
    , decltype(_impl_.subscriptions_){}
    , decltype(_impl_.can_be_deleted_){}
    , decltype(_impl_.incompatible_){}
    , decltype(_impl_.can_subscribe_){}
    , decltype(_impl_.spoiler_tag_){}
    , decltype(_impl_.favorited_){}
    , decltype(_impl_.followers_){}
    , decltype(_impl_.lifetime_subscriptions_){}
    , decltype(_impl_.lifetime_favorited_){}
    , decltype(_impl_.lifetime_followers_){}
    , decltype(_impl_.views_){}
    , decltype(_impl_.image_width_){}
    , decltype(_impl_.image_height_){}
    , decltype(_impl_.shortcutid_){}
    , decltype(_impl_.num_children_){}
    , decltype(_impl_.num_reports_){}
    , decltype(_impl_.time_subscribed_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_filename()) {
    _this->_impl_.filename_.Set(from._internal_filename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.file_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_file_url()) {
    _this->_impl_.file_url_.Set(from._internal_file_url(), 
      _this->GetArenaForAllocation());
  }
  _impl_.preview_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_preview_url()) {
    _this->_impl_.preview_url_.Set(from._internal_preview_url(), 
      _this->GetArenaForAllocation());
  }
  _impl_.youtubevideoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtubevideoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_youtubevideoid()) {
    _this->_impl_.youtubevideoid_.Set(from._internal_youtubevideoid(), 
      _this->GetArenaForAllocation());
  }
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_url()) {
    _this->_impl_.url_.Set(from._internal_url(), 
      _this->GetArenaForAllocation());
  }
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_title()) {
    _this->_impl_.title_.Set(from._internal_title(), 
      _this->GetArenaForAllocation());
  }
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_file_description()) {
    _this->_impl_.file_description_.Set(from._internal_file_description(), 
      _this->GetArenaForAllocation());
  }
  _impl_.short_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.short_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_short_description()) {
    _this->_impl_.short_description_.Set(from._internal_short_description(), 
      _this->GetArenaForAllocation());
  }
  _impl_.ban_reason_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.ban_reason_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_ban_reason()) {
    _this->_impl_.ban_reason_.Set(from._internal_ban_reason(), 
      _this->GetArenaForAllocation());
  }
  _impl_.app_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.app_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_app_name()) {
    _this->_impl_.app_name_.Set(from._internal_app_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.image_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.image_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_image_url()) {
    _this->_impl_.image_url_.Set(from._internal_image_url(), 
      _this->GetArenaForAllocation());
  }
  _impl_.shortcutname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.shortcutname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_shortcutname()) {
    _this->_impl_.shortcutname_.Set(from._internal_shortcutname(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_vote_data()) {
    _this->_impl_.vote_data_ = new ::PublishedFileDetails_VoteData(*from._impl_.vote_data_);
  }
  ::memcpy(&_impl_.publishedfileid_, &from._impl_.publishedfileid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.time_subscribed_) -
    reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.time_subscribed_));
  // @@protoc_insertion_point(copy_constructor:PublishedFileDetails)
}

inline void PublishedFileDetails::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.previews_){arena}
    , decltype(_impl_.tags_){arena}
    , decltype(_impl_.children_){arena}
    , decltype(_impl_.kvtags_){arena}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.file_url_){}
    , decltype(_impl_.preview_url_){}
    , decltype(_impl_.youtubevideoid_){}
    , decltype(_impl_.url_){}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.short_description_){}
    , decltype(_impl_.ban_reason_){}
    , decltype(_impl_.app_name_){}
    , decltype(_impl_.image_url_){}
    , decltype(_impl_.shortcutname_){}
    , decltype(_impl_.vote_data_){nullptr}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
    , decltype(_impl_.result_){0u}
    , decltype(_impl_.creator_appid_){0u}
    , decltype(_impl_.creator_){uint64_t{0u}}
    , decltype(_impl_.consumer_appid_){0u}
    , decltype(_impl_.consumer_shortcutid_){0u}
    , decltype(_impl_.file_size_){uint64_t{0u}}
    , decltype(_impl_.preview_file_size_){uint64_t{0u}}
    , decltype(_impl_.hcontent_file_){uint64_t{0u}}
    , decltype(_impl_.hcontent_preview_){uint64_t{0u}}
    , decltype(_impl_.time_created_){0u}
    , decltype(_impl_.time_updated_){0u}
    , decltype(_impl_.visibility_){0u}
    , decltype(_impl_.flags_){0u}
    , decltype(_impl_.workshop_file_){false}
    , decltype(_impl_.workshop_accepted_){false}
    , decltype(_impl_.show_subscribe_all_){false}
    , decltype(_impl_.banned_){false}
    , decltype(_impl_.num_comments_developer_){0}
    , decltype(_impl_.banner_){uint64_t{0u}}
    , decltype(_impl_.num_comments_public_){0}
    , decltype(_impl_.file_type_){0u}
    , decltype(_impl_.subscriptions_){0u}
    , decltype(_impl_.can_be_deleted_){false}
    , decltype(_impl_.incompatible_){false}
    , decltype(_impl_.can_subscribe_){false}
    , decltype(_impl_.spoiler_tag_){false}
    , decltype(_impl_.favorited_){0u}
    , decltype(_impl_.followers_){0u}
    , decltype(_impl_.lifetime_subscriptions_){0u}
    , decltype(_impl_.lifetime_favorited_){0u}
    , decltype(_impl_.lifetime_followers_){0u}
    , decltype(_impl_.views_){0u}
    , decltype(_impl_.image_width_){0u}
    , decltype(_impl_.image_height_){0u}
    , decltype(_impl_.shortcutid_){0u}
    , decltype(_impl_.num_children_){0u}
    , decltype(_impl_.num_reports_){0u}
    , decltype(_impl_.time_subscribed_){0u}
  };
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.file_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.preview_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.youtubevideoid_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.youtubevideoid_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.short_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.short_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.ban_reason_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.ban_reason_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.app_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.app_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.image_url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.image_url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.shortcutname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.shortcutname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

PublishedFileDetails::~PublishedFileDetails() {
  // @@protoc_insertion_point(destructor:PublishedFileDetails)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void PublishedFileDetails::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.previews_.~RepeatedPtrField();
  _impl_.tags_.~RepeatedPtrField();
  _impl_.children_.~RepeatedPtrField();
  _impl_.kvtags_.~RepeatedPtrField();
  _impl_.filename_.Destroy();
  _impl_.file_url_.Destroy();
  _impl_.preview_url_.Destroy();
  _impl_.youtubevideoid_.Destroy();
  _impl_.url_.Destroy();
  _impl_.title_.Destroy();
  _impl_.file_description_.Destroy();
  _impl_.short_description_.Destroy();
  _impl_.ban_reason_.Destroy();
  _impl_.app_name_.Destroy();
  _impl_.image_url_.Destroy();
  _impl_.shortcutname_.Destroy();
  if (this != internal_default_instance()) delete _impl_.vote_data_;
}

void PublishedFileDetails::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void PublishedFileDetails::Clear() {
// @@protoc_insertion_point(message_clear_start:PublishedFileDetails)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.previews_.Clear();
  _impl_.tags_.Clear();
  _impl_.children_.Clear();
  _impl_.kvtags_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.filename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.file_url_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.preview_url_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.youtubevideoid_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000010u) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000020u) {
      _impl_.title_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000040u) {
      _impl_.file_description_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000080u) {
      _impl_.short_description_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00001f00u) {
    if (cached_has_bits & 0x00000100u) {
      _impl_.ban_reason_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000200u) {
      _impl_.app_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000400u) {
      _impl_.image_url_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000800u) {
      _impl_.shortcutname_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00001000u) {
      GOOGLE_DCHECK(_impl_.vote_data_ != nullptr);
      _impl_.vote_data_->Clear();
    }
  }
  if (cached_has_bits & 0x0000e000u) {
    ::memset(&_impl_.publishedfileid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.creator_appid_) -
        reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.creator_appid_));
  }
  if (cached_has_bits & 0x00ff0000u) {
    ::memset(&_impl_.creator_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.time_created_) -
        reinterpret_cast<char*>(&_impl_.creator_)) + sizeof(_impl_.time_created_));
  }
  if (cached_has_bits & 0xff000000u) {
    ::memset(&_impl_.time_updated_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.num_comments_developer_) -
        reinterpret_cast<char*>(&_impl_.time_updated_)) + sizeof(_impl_.num_comments_developer_));
  }
  cached_has_bits = _impl_._has_bits_[1];
  if (cached_has_bits & 0x000000ffu) {
    ::memset(&_impl_.banner_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.spoiler_tag_) -
        reinterpret_cast<char*>(&_impl_.banner_)) + sizeof(_impl_.spoiler_tag_));
  }
  if (cached_has_bits & 0x0000ff00u) {
    ::memset(&_impl_.favorited_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.image_height_) -
        reinterpret_cast<char*>(&_impl_.favorited_)) + sizeof(_impl_.image_height_));
  }
  if (cached_has_bits & 0x000f0000u) {
    ::memset(&_impl_.shortcutid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.time_subscribed_) -
        reinterpret_cast<char*>(&_impl_.shortcutid_)) + sizeof(_impl_.time_subscribed_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* PublishedFileDetails::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 result = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_result(&_impl_._has_bits_);
          _impl_.result_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 publishedfileid = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_publishedfileid(&_impl_._has_bits_);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed64 creator = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 25)) {
          _Internal::set_has_creator(&_impl_._has_bits_);
          _impl_.creator_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 creator_appid = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_creator_appid(&_impl_._has_bits_);
          _impl_.creator_appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 consumer_appid = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_consumer_appid(&_impl_._has_bits_);
          _impl_.consumer_appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 consumer_shortcutid = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_consumer_shortcutid(&_impl_._has_bits_);
          _impl_.consumer_shortcutid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string filename = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          auto str = _internal_mutable_filename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.filename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint64 file_size = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_file_size(&_impl_._has_bits_);
          _impl_.file_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 preview_file_size = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_preview_file_size(&_impl_._has_bits_);
          _impl_.preview_file_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string file_url = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          auto str = _internal_mutable_file_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.file_url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string preview_url = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          auto str = _internal_mutable_preview_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.preview_url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string youtubevideoid = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          auto str = _internal_mutable_youtubevideoid();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.youtubevideoid");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string url = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          auto str = _internal_mutable_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional fixed64 hcontent_file = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 113)) {
          _Internal::set_has_hcontent_file(&_impl_._has_bits_);
          _impl_.hcontent_file_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional fixed64 hcontent_preview = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 121)) {
          _Internal::set_has_hcontent_preview(&_impl_._has_bits_);
          _impl_.hcontent_preview_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional string title = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          auto str = _internal_mutable_title();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.title");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string file_description = 17;
      case 17:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 138)) {
          auto str = _internal_mutable_file_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.file_description");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string short_description = 18;
      case 18:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 146)) {
          auto str = _internal_mutable_short_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.short_description");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 time_created = 19;
      case 19:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 152)) {
          _Internal::set_has_time_created(&_impl_._has_bits_);
          _impl_.time_created_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 time_updated = 20;
      case 20:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 160)) {
          _Internal::set_has_time_updated(&_impl_._has_bits_);
          _impl_.time_updated_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 visibility = 21;
      case 21:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 168)) {
          _Internal::set_has_visibility(&_impl_._has_bits_);
          _impl_.visibility_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 flags = 22;
      case 22:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 176)) {
          _Internal::set_has_flags(&_impl_._has_bits_);
          _impl_.flags_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool workshop_file = 23;
      case 23:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 184)) {
          _Internal::set_has_workshop_file(&_impl_._has_bits_);
          _impl_.workshop_file_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool workshop_accepted = 24;
      case 24:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 192)) {
          _Internal::set_has_workshop_accepted(&_impl_._has_bits_);
          _impl_.workshop_accepted_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool show_subscribe_all = 25;
      case 25:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 200)) {
          _Internal::set_has_show_subscribe_all(&_impl_._has_bits_);
          _impl_.show_subscribe_all_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 num_comments_developer = 26;
      case 26:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 208)) {
          _Internal::set_has_num_comments_developer(&_impl_._has_bits_);
          _impl_.num_comments_developer_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 num_comments_public = 27;
      case 27:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 216)) {
          _Internal::set_has_num_comments_public(&_impl_._has_bits_);
          _impl_.num_comments_public_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool banned = 28;
      case 28:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 224)) {
          _Internal::set_has_banned(&_impl_._has_bits_);
          _impl_.banned_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string ban_reason = 29;
      case 29:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 234)) {
          auto str = _internal_mutable_ban_reason();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.ban_reason");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional fixed64 banner = 30;
      case 30:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 241)) {
          _Internal::set_has_banner(&_impl_._has_bits_);
          _impl_.banner_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional bool can_be_deleted = 31;
      case 31:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 248)) {
          _Internal::set_has_can_be_deleted(&_impl_._has_bits_);
          _impl_.can_be_deleted_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool incompatible = 32;
      case 32:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 0)) {
          _Internal::set_has_incompatible(&_impl_._has_bits_);
          _impl_.incompatible_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string app_name = 33;
      case 33:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_app_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.app_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 file_type = 34;
      case 34:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_file_type(&_impl_._has_bits_);
          _impl_.file_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool can_subscribe = 35;
      case 35:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_can_subscribe(&_impl_._has_bits_);
          _impl_.can_subscribe_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 subscriptions = 36;
      case 36:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_subscriptions(&_impl_._has_bits_);
          _impl_.subscriptions_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 favorited = 37;
      case 37:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_favorited(&_impl_._has_bits_);
          _impl_.favorited_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 followers = 38;
      case 38:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_followers(&_impl_._has_bits_);
          _impl_.followers_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 lifetime_subscriptions = 39;
      case 39:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_lifetime_subscriptions(&_impl_._has_bits_);
          _impl_.lifetime_subscriptions_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 lifetime_favorited = 40;
      case 40:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_lifetime_favorited(&_impl_._has_bits_);
          _impl_.lifetime_favorited_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 lifetime_followers = 41;
      case 41:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_lifetime_followers(&_impl_._has_bits_);
          _impl_.lifetime_followers_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 views = 42;
      case 42:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_views(&_impl_._has_bits_);
          _impl_.views_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 image_width = 43;
      case 43:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_image_width(&_impl_._has_bits_);
          _impl_.image_width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 image_height = 44;
      case 44:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) {
          _Internal::set_has_image_height(&_impl_._has_bits_);
          _impl_.image_height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string image_url = 45;
      case 45:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          auto str = _internal_mutable_image_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.image_url");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool spoiler_tag = 46;
      case 46:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 112)) {
          _Internal::set_has_spoiler_tag(&_impl_._has_bits_);
          _impl_.spoiler_tag_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 shortcutid = 47;
      case 47:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 120)) {
          _Internal::set_has_shortcutid(&_impl_._has_bits_);
          _impl_.shortcutid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string shortcutname = 48;
      case 48:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          auto str = _internal_mutable_shortcutname();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "PublishedFileDetails.shortcutname");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 num_children = 49;
      case 49:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 136)) {
          _Internal::set_has_num_children(&_impl_._has_bits_);
          _impl_.num_children_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 num_reports = 50;
      case 50:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 144)) {
          _Internal::set_has_num_reports(&_impl_._has_bits_);
          _impl_.num_reports_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .PublishedFileDetails.Preview previews = 51;
      case 51:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 154)) {
          ptr -= 2;
          do {
            ptr += 2;
            ptr = ctx->ParseMessage(_internal_add_previews(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<410>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .PublishedFileDetails.Tag tags = 52;
      case 52:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 162)) {
          ptr -= 2;
          do {
            ptr += 2;
            ptr = ctx->ParseMessage(_internal_add_tags(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<418>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .PublishedFileDetails.Child children = 53;
      case 53:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 170)) {
          ptr -= 2;
          do {
            ptr += 2;
            ptr = ctx->ParseMessage(_internal_add_children(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<426>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .PublishedFileDetails.KVTag kvtags = 54;
      case 54:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 178)) {
          ptr -= 2;
          do {
            ptr += 2;
            ptr = ctx->ParseMessage(_internal_add_kvtags(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<434>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional .PublishedFileDetails.VoteData vote_data = 55;
      case 55:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 186)) {
          ptr = ctx->ParseMessage(_internal_mutable_vote_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 time_subscribed = 56 [(.description) = "Only valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls"];
      case 56:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 192)) {
          _Internal::set_has_time_subscribed(&_impl_._has_bits_);
          _impl_.time_subscribed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* PublishedFileDetails::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:PublishedFileDetails)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 result = 1;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_result(), target);
  }

  // optional uint64 publishedfileid = 2;
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(2, this->_internal_publishedfileid(), target);
  }

  // optional fixed64 creator = 3;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(3, this->_internal_creator(), target);
  }

  // optional uint32 creator_appid = 4;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_creator_appid(), target);
  }

  // optional uint32 consumer_appid = 5;
  if (cached_has_bits & 0x00020000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_consumer_appid(), target);
  }

  // optional uint32 consumer_shortcutid = 6;
  if (cached_has_bits & 0x00040000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_consumer_shortcutid(), target);
  }

  // optional string filename = 7;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_filename().data(), static_cast<int>(this->_internal_filename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.filename");
    target = stream->WriteStringMaybeAliased(
        7, this->_internal_filename(), target);
  }

  // optional uint64 file_size = 8;
  if (cached_has_bits & 0x00080000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(8, this->_internal_file_size(), target);
  }

  // optional uint64 preview_file_size = 9;
  if (cached_has_bits & 0x00100000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(9, this->_internal_preview_file_size(), target);
  }

  // optional string file_url = 10;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_file_url().data(), static_cast<int>(this->_internal_file_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.file_url");
    target = stream->WriteStringMaybeAliased(
        10, this->_internal_file_url(), target);
  }

  // optional string preview_url = 11;
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_preview_url().data(), static_cast<int>(this->_internal_preview_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.preview_url");
    target = stream->WriteStringMaybeAliased(
        11, this->_internal_preview_url(), target);
  }

  // optional string youtubevideoid = 12;
  if (cached_has_bits & 0x00000008u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_youtubevideoid().data(), static_cast<int>(this->_internal_youtubevideoid().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.youtubevideoid");
    target = stream->WriteStringMaybeAliased(
        12, this->_internal_youtubevideoid(), target);
  }

  // optional string url = 13;
  if (cached_has_bits & 0x00000010u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_url().data(), static_cast<int>(this->_internal_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.url");
    target = stream->WriteStringMaybeAliased(
        13, this->_internal_url(), target);
  }

  // optional fixed64 hcontent_file = 14;
  if (cached_has_bits & 0x00200000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(14, this->_internal_hcontent_file(), target);
  }

  // optional fixed64 hcontent_preview = 15;
  if (cached_has_bits & 0x00400000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(15, this->_internal_hcontent_preview(), target);
  }

  // optional string title = 16;
  if (cached_has_bits & 0x00000020u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_title().data(), static_cast<int>(this->_internal_title().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.title");
    target = stream->WriteStringMaybeAliased(
        16, this->_internal_title(), target);
  }

  // optional string file_description = 17;
  if (cached_has_bits & 0x00000040u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_file_description().data(), static_cast<int>(this->_internal_file_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.file_description");
    target = stream->WriteStringMaybeAliased(
        17, this->_internal_file_description(), target);
  }

  // optional string short_description = 18;
  if (cached_has_bits & 0x00000080u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_short_description().data(), static_cast<int>(this->_internal_short_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.short_description");
    target = stream->WriteStringMaybeAliased(
        18, this->_internal_short_description(), target);
  }

  // optional uint32 time_created = 19;
  if (cached_has_bits & 0x00800000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(19, this->_internal_time_created(), target);
  }

  // optional uint32 time_updated = 20;
  if (cached_has_bits & 0x01000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(20, this->_internal_time_updated(), target);
  }

  // optional uint32 visibility = 21;
  if (cached_has_bits & 0x02000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(21, this->_internal_visibility(), target);
  }

  // optional uint32 flags = 22;
  if (cached_has_bits & 0x04000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(22, this->_internal_flags(), target);
  }

  // optional bool workshop_file = 23;
  if (cached_has_bits & 0x08000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(23, this->_internal_workshop_file(), target);
  }

  // optional bool workshop_accepted = 24;
  if (cached_has_bits & 0x10000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(24, this->_internal_workshop_accepted(), target);
  }

  // optional bool show_subscribe_all = 25;
  if (cached_has_bits & 0x20000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(25, this->_internal_show_subscribe_all(), target);
  }

  // optional int32 num_comments_developer = 26;
  if (cached_has_bits & 0x80000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(26, this->_internal_num_comments_developer(), target);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional int32 num_comments_public = 27;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(27, this->_internal_num_comments_public(), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool banned = 28;
  if (cached_has_bits & 0x40000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(28, this->_internal_banned(), target);
  }

  // optional string ban_reason = 29;
  if (cached_has_bits & 0x00000100u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_ban_reason().data(), static_cast<int>(this->_internal_ban_reason().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.ban_reason");
    target = stream->WriteStringMaybeAliased(
        29, this->_internal_ban_reason(), target);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional fixed64 banner = 30;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(30, this->_internal_banner(), target);
  }

  // optional bool can_be_deleted = 31;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(31, this->_internal_can_be_deleted(), target);
  }

  // optional bool incompatible = 32;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(32, this->_internal_incompatible(), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional string app_name = 33;
  if (cached_has_bits & 0x00000200u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_app_name().data(), static_cast<int>(this->_internal_app_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.app_name");
    target = stream->WriteStringMaybeAliased(
        33, this->_internal_app_name(), target);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional uint32 file_type = 34;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(34, this->_internal_file_type(), target);
  }

  // optional bool can_subscribe = 35;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(35, this->_internal_can_subscribe(), target);
  }

  // optional uint32 subscriptions = 36;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(36, this->_internal_subscriptions(), target);
  }

  // optional uint32 favorited = 37;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(37, this->_internal_favorited(), target);
  }

  // optional uint32 followers = 38;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(38, this->_internal_followers(), target);
  }

  // optional uint32 lifetime_subscriptions = 39;
  if (cached_has_bits & 0x00000400u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(39, this->_internal_lifetime_subscriptions(), target);
  }

  // optional uint32 lifetime_favorited = 40;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(40, this->_internal_lifetime_favorited(), target);
  }

  // optional uint32 lifetime_followers = 41;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(41, this->_internal_lifetime_followers(), target);
  }

  // optional uint32 views = 42;
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(42, this->_internal_views(), target);
  }

  // optional uint32 image_width = 43;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(43, this->_internal_image_width(), target);
  }

  // optional uint32 image_height = 44;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(44, this->_internal_image_height(), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional string image_url = 45;
  if (cached_has_bits & 0x00000400u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_image_url().data(), static_cast<int>(this->_internal_image_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.image_url");
    target = stream->WriteStringMaybeAliased(
        45, this->_internal_image_url(), target);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional bool spoiler_tag = 46;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(46, this->_internal_spoiler_tag(), target);
  }

  // optional uint32 shortcutid = 47;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(47, this->_internal_shortcutid(), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional string shortcutname = 48;
  if (cached_has_bits & 0x00000800u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_shortcutname().data(), static_cast<int>(this->_internal_shortcutname().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "PublishedFileDetails.shortcutname");
    target = stream->WriteStringMaybeAliased(
        48, this->_internal_shortcutname(), target);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional uint32 num_children = 49;
  if (cached_has_bits & 0x00020000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(49, this->_internal_num_children(), target);
  }

  // optional uint32 num_reports = 50;
  if (cached_has_bits & 0x00040000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(50, this->_internal_num_reports(), target);
  }

  // repeated .PublishedFileDetails.Preview previews = 51;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_previews_size()); i < n; i++) {
    const auto& repfield = this->_internal_previews(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(51, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .PublishedFileDetails.Tag tags = 52;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_tags_size()); i < n; i++) {
    const auto& repfield = this->_internal_tags(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(52, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .PublishedFileDetails.Child children = 53;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_children_size()); i < n; i++) {
    const auto& repfield = this->_internal_children(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(53, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .PublishedFileDetails.KVTag kvtags = 54;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_kvtags_size()); i < n; i++) {
    const auto& repfield = this->_internal_kvtags(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(54, repfield, repfield.GetCachedSize(), target, stream);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional .PublishedFileDetails.VoteData vote_data = 55;
  if (cached_has_bits & 0x00001000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(55, _Internal::vote_data(this),
        _Internal::vote_data(this).GetCachedSize(), target, stream);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional uint32 time_subscribed = 56 [(.description) = "Only valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls"];
  if (cached_has_bits & 0x00080000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(56, this->_internal_time_subscribed(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:PublishedFileDetails)
  return target;
}

size_t PublishedFileDetails::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:PublishedFileDetails)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .PublishedFileDetails.Preview previews = 51;
  total_size += 2UL * this->_internal_previews_size();
  for (const auto& msg : this->_impl_.previews_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .PublishedFileDetails.Tag tags = 52;
  total_size += 2UL * this->_internal_tags_size();
  for (const auto& msg : this->_impl_.tags_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .PublishedFileDetails.Child children = 53;
  total_size += 2UL * this->_internal_children_size();
  for (const auto& msg : this->_impl_.children_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .PublishedFileDetails.KVTag kvtags = 54;
  total_size += 2UL * this->_internal_kvtags_size();
  for (const auto& msg : this->_impl_.kvtags_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional string filename = 7;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_filename());
    }

    // optional string file_url = 10;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_file_url());
    }

    // optional string preview_url = 11;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_preview_url());
    }

    // optional string youtubevideoid = 12;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_youtubevideoid());
    }

    // optional string url = 13;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_url());
    }

    // optional string title = 16;
    if (cached_has_bits & 0x00000020u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_title());
    }

    // optional string file_description = 17;
    if (cached_has_bits & 0x00000040u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_file_description());
    }

    // optional string short_description = 18;
    if (cached_has_bits & 0x00000080u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_short_description());
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional string ban_reason = 29;
    if (cached_has_bits & 0x00000100u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_ban_reason());
    }

    // optional string app_name = 33;
    if (cached_has_bits & 0x00000200u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_app_name());
    }

    // optional string image_url = 45;
    if (cached_has_bits & 0x00000400u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_image_url());
    }

    // optional string shortcutname = 48;
    if (cached_has_bits & 0x00000800u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_shortcutname());
    }

    // optional .PublishedFileDetails.VoteData vote_data = 55;
    if (cached_has_bits & 0x00001000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.vote_data_);
    }

    // optional uint64 publishedfileid = 2;
    if (cached_has_bits & 0x00002000u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_publishedfileid());
    }

    // optional uint32 result = 1;
    if (cached_has_bits & 0x00004000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_result());
    }

    // optional uint32 creator_appid = 4;
    if (cached_has_bits & 0x00008000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_creator_appid());
    }

  }
  if (cached_has_bits & 0x00ff0000u) {
    // optional fixed64 creator = 3;
    if (cached_has_bits & 0x00010000u) {
      total_size += 1 + 8;
    }

    // optional uint32 consumer_appid = 5;
    if (cached_has_bits & 0x00020000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_consumer_appid());
    }

    // optional uint32 consumer_shortcutid = 6;
    if (cached_has_bits & 0x00040000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_consumer_shortcutid());
    }

    // optional uint64 file_size = 8;
    if (cached_has_bits & 0x00080000u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_file_size());
    }

    // optional uint64 preview_file_size = 9;
    if (cached_has_bits & 0x00100000u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_preview_file_size());
    }

    // optional fixed64 hcontent_file = 14;
    if (cached_has_bits & 0x00200000u) {
      total_size += 1 + 8;
    }

    // optional fixed64 hcontent_preview = 15;
    if (cached_has_bits & 0x00400000u) {
      total_size += 1 + 8;
    }

    // optional uint32 time_created = 19;
    if (cached_has_bits & 0x00800000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_time_created());
    }

  }
  if (cached_has_bits & 0xff000000u) {
    // optional uint32 time_updated = 20;
    if (cached_has_bits & 0x01000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_time_updated());
    }

    // optional uint32 visibility = 21;
    if (cached_has_bits & 0x02000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_visibility());
    }

    // optional uint32 flags = 22;
    if (cached_has_bits & 0x04000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_flags());
    }

    // optional bool workshop_file = 23;
    if (cached_has_bits & 0x08000000u) {
      total_size += 2 + 1;
    }

    // optional bool workshop_accepted = 24;
    if (cached_has_bits & 0x10000000u) {
      total_size += 2 + 1;
    }

    // optional bool show_subscribe_all = 25;
    if (cached_has_bits & 0x20000000u) {
      total_size += 2 + 1;
    }

    // optional bool banned = 28;
    if (cached_has_bits & 0x40000000u) {
      total_size += 2 + 1;
    }

    // optional int32 num_comments_developer = 26;
    if (cached_has_bits & 0x80000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::Int32Size(
          this->_internal_num_comments_developer());
    }

  }
  cached_has_bits = _impl_._has_bits_[1];
  if (cached_has_bits & 0x000000ffu) {
    // optional fixed64 banner = 30;
    if (cached_has_bits & 0x00000001u) {
      total_size += 2 + 8;
    }

    // optional int32 num_comments_public = 27;
    if (cached_has_bits & 0x00000002u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::Int32Size(
          this->_internal_num_comments_public());
    }

    // optional uint32 file_type = 34;
    if (cached_has_bits & 0x00000004u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_file_type());
    }

    // optional uint32 subscriptions = 36;
    if (cached_has_bits & 0x00000008u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_subscriptions());
    }

    // optional bool can_be_deleted = 31;
    if (cached_has_bits & 0x00000010u) {
      total_size += 2 + 1;
    }

    // optional bool incompatible = 32;
    if (cached_has_bits & 0x00000020u) {
      total_size += 2 + 1;
    }

    // optional bool can_subscribe = 35;
    if (cached_has_bits & 0x00000040u) {
      total_size += 2 + 1;
    }

    // optional bool spoiler_tag = 46;
    if (cached_has_bits & 0x00000080u) {
      total_size += 2 + 1;
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional uint32 favorited = 37;
    if (cached_has_bits & 0x00000100u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_favorited());
    }

    // optional uint32 followers = 38;
    if (cached_has_bits & 0x00000200u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_followers());
    }

    // optional uint32 lifetime_subscriptions = 39;
    if (cached_has_bits & 0x00000400u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_lifetime_subscriptions());
    }

    // optional uint32 lifetime_favorited = 40;
    if (cached_has_bits & 0x00000800u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_lifetime_favorited());
    }

    // optional uint32 lifetime_followers = 41;
    if (cached_has_bits & 0x00001000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_lifetime_followers());
    }

    // optional uint32 views = 42;
    if (cached_has_bits & 0x00002000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_views());
    }

    // optional uint32 image_width = 43;
    if (cached_has_bits & 0x00004000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_image_width());
    }

    // optional uint32 image_height = 44;
    if (cached_has_bits & 0x00008000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_image_height());
    }

  }
  if (cached_has_bits & 0x000f0000u) {
    // optional uint32 shortcutid = 47;
    if (cached_has_bits & 0x00010000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_shortcutid());
    }

    // optional uint32 num_children = 49;
    if (cached_has_bits & 0x00020000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_num_children());
    }

    // optional uint32 num_reports = 50;
    if (cached_has_bits & 0x00040000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_num_reports());
    }

    // optional uint32 time_subscribed = 56 [(.description) = "Only valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls"];
    if (cached_has_bits & 0x00080000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_time_subscribed());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PublishedFileDetails::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    PublishedFileDetails::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PublishedFileDetails::GetClassData() const { return &_class_data_; }


void PublishedFileDetails::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<PublishedFileDetails*>(&to_msg);
  auto& from = static_cast<const PublishedFileDetails&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:PublishedFileDetails)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.previews_.MergeFrom(from._impl_.previews_);
  _this->_impl_.tags_.MergeFrom(from._impl_.tags_);
  _this->_impl_.children_.MergeFrom(from._impl_.children_);
  _this->_impl_.kvtags_.MergeFrom(from._impl_.kvtags_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_filename(from._internal_filename());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_file_url(from._internal_file_url());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_preview_url(from._internal_preview_url());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_youtubevideoid(from._internal_youtubevideoid());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_set_url(from._internal_url());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_set_title(from._internal_title());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_set_file_description(from._internal_file_description());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_internal_set_short_description(from._internal_short_description());
    }
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_internal_set_ban_reason(from._internal_ban_reason());
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_internal_set_app_name(from._internal_app_name());
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_internal_set_image_url(from._internal_image_url());
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_internal_set_shortcutname(from._internal_shortcutname());
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_internal_mutable_vote_data()->::PublishedFileDetails_VoteData::MergeFrom(
          from._internal_vote_data());
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.result_ = from._impl_.result_;
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_impl_.creator_appid_ = from._impl_.creator_appid_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00ff0000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_impl_.creator_ = from._impl_.creator_;
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_impl_.consumer_appid_ = from._impl_.consumer_appid_;
    }
    if (cached_has_bits & 0x00040000u) {
      _this->_impl_.consumer_shortcutid_ = from._impl_.consumer_shortcutid_;
    }
    if (cached_has_bits & 0x00080000u) {
      _this->_impl_.file_size_ = from._impl_.file_size_;
    }
    if (cached_has_bits & 0x00100000u) {
      _this->_impl_.preview_file_size_ = from._impl_.preview_file_size_;
    }
    if (cached_has_bits & 0x00200000u) {
      _this->_impl_.hcontent_file_ = from._impl_.hcontent_file_;
    }
    if (cached_has_bits & 0x00400000u) {
      _this->_impl_.hcontent_preview_ = from._impl_.hcontent_preview_;
    }
    if (cached_has_bits & 0x00800000u) {
      _this->_impl_.time_created_ = from._impl_.time_created_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0xff000000u) {
    if (cached_has_bits & 0x01000000u) {
      _this->_impl_.time_updated_ = from._impl_.time_updated_;
    }
    if (cached_has_bits & 0x02000000u) {
      _this->_impl_.visibility_ = from._impl_.visibility_;
    }
    if (cached_has_bits & 0x04000000u) {
      _this->_impl_.flags_ = from._impl_.flags_;
    }
    if (cached_has_bits & 0x08000000u) {
      _this->_impl_.workshop_file_ = from._impl_.workshop_file_;
    }
    if (cached_has_bits & 0x10000000u) {
      _this->_impl_.workshop_accepted_ = from._impl_.workshop_accepted_;
    }
    if (cached_has_bits & 0x20000000u) {
      _this->_impl_.show_subscribe_all_ = from._impl_.show_subscribe_all_;
    }
    if (cached_has_bits & 0x40000000u) {
      _this->_impl_.banned_ = from._impl_.banned_;
    }
    if (cached_has_bits & 0x80000000u) {
      _this->_impl_.num_comments_developer_ = from._impl_.num_comments_developer_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  cached_has_bits = from._impl_._has_bits_[1];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.banner_ = from._impl_.banner_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.num_comments_public_ = from._impl_.num_comments_public_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.file_type_ = from._impl_.file_type_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.subscriptions_ = from._impl_.subscriptions_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.can_be_deleted_ = from._impl_.can_be_deleted_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.incompatible_ = from._impl_.incompatible_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.can_subscribe_ = from._impl_.can_subscribe_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.spoiler_tag_ = from._impl_.spoiler_tag_;
    }
    _this->_impl_._has_bits_[1] |= cached_has_bits;
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.favorited_ = from._impl_.favorited_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.followers_ = from._impl_.followers_;
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_impl_.lifetime_subscriptions_ = from._impl_.lifetime_subscriptions_;
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.lifetime_favorited_ = from._impl_.lifetime_favorited_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.lifetime_followers_ = from._impl_.lifetime_followers_;
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.views_ = from._impl_.views_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.image_width_ = from._impl_.image_width_;
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_impl_.image_height_ = from._impl_.image_height_;
    }
    _this->_impl_._has_bits_[1] |= cached_has_bits;
  }
  if (cached_has_bits & 0x000f0000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_impl_.shortcutid_ = from._impl_.shortcutid_;
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_impl_.num_children_ = from._impl_.num_children_;
    }
    if (cached_has_bits & 0x00040000u) {
      _this->_impl_.num_reports_ = from._impl_.num_reports_;
    }
    if (cached_has_bits & 0x00080000u) {
      _this->_impl_.time_subscribed_ = from._impl_.time_subscribed_;
    }
    _this->_impl_._has_bits_[1] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void PublishedFileDetails::CopyFrom(const PublishedFileDetails& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:PublishedFileDetails)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool PublishedFileDetails::IsInitialized() const {
  return true;
}

void PublishedFileDetails::InternalSwap(PublishedFileDetails* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_._has_bits_[1], other->_impl_._has_bits_[1]);
  _impl_.previews_.InternalSwap(&other->_impl_.previews_);
  _impl_.tags_.InternalSwap(&other->_impl_.tags_);
  _impl_.children_.InternalSwap(&other->_impl_.children_);
  _impl_.kvtags_.InternalSwap(&other->_impl_.kvtags_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.filename_, lhs_arena,
      &other->_impl_.filename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.file_url_, lhs_arena,
      &other->_impl_.file_url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.preview_url_, lhs_arena,
      &other->_impl_.preview_url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.youtubevideoid_, lhs_arena,
      &other->_impl_.youtubevideoid_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.url_, lhs_arena,
      &other->_impl_.url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.title_, lhs_arena,
      &other->_impl_.title_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.file_description_, lhs_arena,
      &other->_impl_.file_description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.short_description_, lhs_arena,
      &other->_impl_.short_description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.ban_reason_, lhs_arena,
      &other->_impl_.ban_reason_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.app_name_, lhs_arena,
      &other->_impl_.app_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.image_url_, lhs_arena,
      &other->_impl_.image_url_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.shortcutname_, lhs_arena,
      &other->_impl_.shortcutname_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(PublishedFileDetails, _impl_.time_subscribed_)
      + sizeof(PublishedFileDetails::_impl_.time_subscribed_)
      - PROTOBUF_FIELD_OFFSET(PublishedFileDetails, _impl_.vote_data_)>(
          reinterpret_cast<char*>(&_impl_.vote_data_),
          reinterpret_cast<char*>(&other->_impl_.vote_data_));
}

::PROTOBUF_NAMESPACE_ID::Metadata PublishedFileDetails::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[12]);
}

// ===================================================================

class CPublishedFile_GetDetails_Response::_Internal {
 public:
};

CPublishedFile_GetDetails_Response::CPublishedFile_GetDetails_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_GetDetails_Response)
}
CPublishedFile_GetDetails_Response::CPublishedFile_GetDetails_Response(const CPublishedFile_GetDetails_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_GetDetails_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.publishedfiledetails_){from._impl_.publishedfiledetails_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_GetDetails_Response)
}

inline void CPublishedFile_GetDetails_Response::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.publishedfiledetails_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

CPublishedFile_GetDetails_Response::~CPublishedFile_GetDetails_Response() {
  // @@protoc_insertion_point(destructor:CPublishedFile_GetDetails_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_GetDetails_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.publishedfiledetails_.~RepeatedPtrField();
}

void CPublishedFile_GetDetails_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_GetDetails_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_GetDetails_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.publishedfiledetails_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_GetDetails_Response::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated .PublishedFileDetails publishedfiledetails = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_publishedfiledetails(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_GetDetails_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_GetDetails_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .PublishedFileDetails publishedfiledetails = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_publishedfiledetails_size()); i < n; i++) {
    const auto& repfield = this->_internal_publishedfiledetails(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_GetDetails_Response)
  return target;
}

size_t CPublishedFile_GetDetails_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_GetDetails_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .PublishedFileDetails publishedfiledetails = 1;
  total_size += 1UL * this->_internal_publishedfiledetails_size();
  for (const auto& msg : this->_impl_.publishedfiledetails_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_GetDetails_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_GetDetails_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_GetDetails_Response::GetClassData() const { return &_class_data_; }


void CPublishedFile_GetDetails_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_GetDetails_Response*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_GetDetails_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_GetDetails_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.publishedfiledetails_.MergeFrom(from._impl_.publishedfiledetails_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_GetDetails_Response::CopyFrom(const CPublishedFile_GetDetails_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_GetDetails_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_GetDetails_Response::IsInitialized() const {
  return true;
}

void CPublishedFile_GetDetails_Response::InternalSwap(CPublishedFile_GetDetails_Response* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.publishedfiledetails_.InternalSwap(&other->_impl_.publishedfiledetails_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_GetDetails_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[13]);
}

// ===================================================================

class CPublishedFile_GetUserFiles_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_GetUserFiles_Request>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_page(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_numperpage(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_sortmethod(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_totalonly(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_privacy(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_ids_only(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

const ::PROTOBUF_NAMESPACE_ID::internal::LazyString CPublishedFile_GetUserFiles_Request::Impl_::_i_give_permission_to_break_this_code_default_sortmethod_{{{"lastupdated", 11}}, {nullptr}};
CPublishedFile_GetUserFiles_Request::CPublishedFile_GetUserFiles_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_GetUserFiles_Request)
}
CPublishedFile_GetUserFiles_Request::CPublishedFile_GetUserFiles_Request(const CPublishedFile_GetUserFiles_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_GetUserFiles_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.requiredtags_){from._impl_.requiredtags_}
    , decltype(_impl_.excludedtags_){from._impl_.excludedtags_}
    , decltype(_impl_.sortmethod_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.totalonly_){}
    , decltype(_impl_.ids_only_){}
    , decltype(_impl_.privacy_){}
    , decltype(_impl_.page_){}
    , decltype(_impl_.numperpage_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.sortmethod_.InitDefault();
  if (from._internal_has_sortmethod()) {
    _this->_impl_.sortmethod_.Set(from._internal_sortmethod(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.numperpage_) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.numperpage_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_GetUserFiles_Request)
}

inline void CPublishedFile_GetUserFiles_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.requiredtags_){arena}
    , decltype(_impl_.excludedtags_){arena}
    , decltype(_impl_.sortmethod_){}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.totalonly_){false}
    , decltype(_impl_.ids_only_){false}
    , decltype(_impl_.privacy_){0u}
    , decltype(_impl_.page_){1u}
    , decltype(_impl_.numperpage_){1u}
  };
  _impl_.sortmethod_.InitDefault();
}

CPublishedFile_GetUserFiles_Request::~CPublishedFile_GetUserFiles_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_GetUserFiles_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_GetUserFiles_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.requiredtags_.~RepeatedPtrField();
  _impl_.excludedtags_.~RepeatedPtrField();
  _impl_.sortmethod_.Destroy();
}

void CPublishedFile_GetUserFiles_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_GetUserFiles_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_GetUserFiles_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.requiredtags_.Clear();
  _impl_.excludedtags_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    _impl_.sortmethod_.ClearToDefault(::CPublishedFile_GetUserFiles_Request::Impl_::_i_give_permission_to_break_this_code_default_sortmethod_, GetArenaForAllocation());
     }
  if (cached_has_bits & 0x0000007eu) {
    ::memset(&_impl_.appid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.privacy_) -
        reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.privacy_));
    _impl_.page_ = 1u;
    _impl_.numperpage_ = 1u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_GetUserFiles_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1 [(.description) = "App Id to retrieve published files from."];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 page = 3 [default = 1, (.description) = "(Optional) Starting page for results."];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_page(&has_bits);
          _impl_.page_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 numperpage = 4 [default = 1, (.description) = "(Optional) The number of results, per page to return."];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_numperpage(&has_bits);
          _impl_.numperpage_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string sortmethod = 6 [default = "lastupdated", (.description) = "(Optional) Sorting method to use on returned values."];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_sortmethod();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_GetUserFiles_Request.sortmethod");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool totalonly = 7 [(.description) = "(Optional) If true, only return the total number of files that satisfy this query."];
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_totalonly(&has_bits);
          _impl_.totalonly_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 privacy = 9 [(.description) = "(optional) Filter by privacy settings."];
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_privacy(&has_bits);
          _impl_.privacy_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool ids_only = 10 [(.description) = "(Optional) If true, only return the published file ids of files that satisfy this query."];
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_ids_only(&has_bits);
          _impl_.ids_only_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated string requiredtags = 11 [(.description) = "(Optional) Tags that must be present on a published file to satisfy the query."];
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_requiredtags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_GetUserFiles_Request.requiredtags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated string excludedtags = 12 [(.description) = "(Optional) Tags that must NOT be present on a published file to satisfy the query."];
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_excludedtags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_GetUserFiles_Request.excludedtags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<98>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_GetUserFiles_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_GetUserFiles_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 appid = 1 [(.description) = "App Id to retrieve published files from."];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_appid(), target);
  }

  // optional uint32 page = 3 [default = 1, (.description) = "(Optional) Starting page for results."];
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_page(), target);
  }

  // optional uint32 numperpage = 4 [default = 1, (.description) = "(Optional) The number of results, per page to return."];
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_numperpage(), target);
  }

  // optional string sortmethod = 6 [default = "lastupdated", (.description) = "(Optional) Sorting method to use on returned values."];
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_sortmethod().data(), static_cast<int>(this->_internal_sortmethod().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_GetUserFiles_Request.sortmethod");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_sortmethod(), target);
  }

  // optional bool totalonly = 7 [(.description) = "(Optional) If true, only return the total number of files that satisfy this query."];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(7, this->_internal_totalonly(), target);
  }

  // optional uint32 privacy = 9 [(.description) = "(optional) Filter by privacy settings."];
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(9, this->_internal_privacy(), target);
  }

  // optional bool ids_only = 10 [(.description) = "(Optional) If true, only return the published file ids of files that satisfy this query."];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(10, this->_internal_ids_only(), target);
  }

  // repeated string requiredtags = 11 [(.description) = "(Optional) Tags that must be present on a published file to satisfy the query."];
  for (int i = 0, n = this->_internal_requiredtags_size(); i < n; i++) {
    const auto& s = this->_internal_requiredtags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_GetUserFiles_Request.requiredtags");
    target = stream->WriteString(11, s, target);
  }

  // repeated string excludedtags = 12 [(.description) = "(Optional) Tags that must NOT be present on a published file to satisfy the query."];
  for (int i = 0, n = this->_internal_excludedtags_size(); i < n; i++) {
    const auto& s = this->_internal_excludedtags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_GetUserFiles_Request.excludedtags");
    target = stream->WriteString(12, s, target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_GetUserFiles_Request)
  return target;
}

size_t CPublishedFile_GetUserFiles_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_GetUserFiles_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string requiredtags = 11 [(.description) = "(Optional) Tags that must be present on a published file to satisfy the query."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.requiredtags_.size());
  for (int i = 0, n = _impl_.requiredtags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.requiredtags_.Get(i));
  }

  // repeated string excludedtags = 12 [(.description) = "(Optional) Tags that must NOT be present on a published file to satisfy the query."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.excludedtags_.size());
  for (int i = 0, n = _impl_.excludedtags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.excludedtags_.Get(i));
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    // optional string sortmethod = 6 [default = "lastupdated", (.description) = "(Optional) Sorting method to use on returned values."];
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_sortmethod());
    }

    // optional uint32 appid = 1 [(.description) = "App Id to retrieve published files from."];
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional bool totalonly = 7 [(.description) = "(Optional) If true, only return the total number of files that satisfy this query."];
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional bool ids_only = 10 [(.description) = "(Optional) If true, only return the published file ids of files that satisfy this query."];
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

    // optional uint32 privacy = 9 [(.description) = "(optional) Filter by privacy settings."];
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_privacy());
    }

    // optional uint32 page = 3 [default = 1, (.description) = "(Optional) Starting page for results."];
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_page());
    }

    // optional uint32 numperpage = 4 [default = 1, (.description) = "(Optional) The number of results, per page to return."];
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_numperpage());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_GetUserFiles_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_GetUserFiles_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_GetUserFiles_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_GetUserFiles_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_GetUserFiles_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_GetUserFiles_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_GetUserFiles_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.requiredtags_.MergeFrom(from._impl_.requiredtags_);
  _this->_impl_.excludedtags_.MergeFrom(from._impl_.excludedtags_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_sortmethod(from._internal_sortmethod());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.totalonly_ = from._impl_.totalonly_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ids_only_ = from._impl_.ids_only_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.privacy_ = from._impl_.privacy_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.page_ = from._impl_.page_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.numperpage_ = from._impl_.numperpage_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_GetUserFiles_Request::CopyFrom(const CPublishedFile_GetUserFiles_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_GetUserFiles_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_GetUserFiles_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_GetUserFiles_Request::InternalSwap(CPublishedFile_GetUserFiles_Request* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.requiredtags_.InternalSwap(&other->_impl_.requiredtags_);
  _impl_.excludedtags_.InternalSwap(&other->_impl_.excludedtags_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.sortmethod_, lhs_arena,
      &other->_impl_.sortmethod_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Request, _impl_.privacy_)
      + sizeof(CPublishedFile_GetUserFiles_Request::_impl_.privacy_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Request, _impl_.appid_)>(
          reinterpret_cast<char*>(&_impl_.appid_),
          reinterpret_cast<char*>(&other->_impl_.appid_));
  swap(_impl_.page_, other->_impl_.page_);
  swap(_impl_.numperpage_, other->_impl_.numperpage_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_GetUserFiles_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[14]);
}

// ===================================================================

class CPublishedFile_GetUserFiles_Response_App::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_GetUserFiles_Response_App>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_shortcutid(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_private_(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CPublishedFile_GetUserFiles_Response_App::CPublishedFile_GetUserFiles_Response_App(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_GetUserFiles_Response.App)
}
CPublishedFile_GetUserFiles_Response_App::CPublishedFile_GetUserFiles_Response_App(const CPublishedFile_GetUserFiles_Response_App& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_GetUserFiles_Response_App* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.shortcutid_){}
    , decltype(_impl_.private__){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.private__) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.private__));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_GetUserFiles_Response.App)
}

inline void CPublishedFile_GetUserFiles_Response_App::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.shortcutid_){0u}
    , decltype(_impl_.private__){false}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CPublishedFile_GetUserFiles_Response_App::~CPublishedFile_GetUserFiles_Response_App() {
  // @@protoc_insertion_point(destructor:CPublishedFile_GetUserFiles_Response.App)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_GetUserFiles_Response_App::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
}

void CPublishedFile_GetUserFiles_Response_App::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_GetUserFiles_Response_App::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_GetUserFiles_Response.App)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    _impl_.name_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.appid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.private__) -
        reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.private__));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_GetUserFiles_Response_App::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_GetUserFiles_Response.App.name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 shortcutid = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_shortcutid(&has_bits);
          _impl_.shortcutid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool private = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_private_(&has_bits);
          _impl_.private__ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_GetUserFiles_Response_App::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_GetUserFiles_Response.App)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 appid = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_appid(), target);
  }

  // optional string name = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_GetUserFiles_Response.App.name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_name(), target);
  }

  // optional uint32 shortcutid = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_shortcutid(), target);
  }

  // optional bool private = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_private_(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_GetUserFiles_Response.App)
  return target;
}

size_t CPublishedFile_GetUserFiles_Response_App::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_GetUserFiles_Response.App)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    // optional string name = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional uint32 appid = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional uint32 shortcutid = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_shortcutid());
    }

    // optional bool private = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_GetUserFiles_Response_App::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_GetUserFiles_Response_App::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_GetUserFiles_Response_App::GetClassData() const { return &_class_data_; }


void CPublishedFile_GetUserFiles_Response_App::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_GetUserFiles_Response_App*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_GetUserFiles_Response_App&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_GetUserFiles_Response.App)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.shortcutid_ = from._impl_.shortcutid_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.private__ = from._impl_.private__;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_GetUserFiles_Response_App::CopyFrom(const CPublishedFile_GetUserFiles_Response_App& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_GetUserFiles_Response.App)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_GetUserFiles_Response_App::IsInitialized() const {
  return true;
}

void CPublishedFile_GetUserFiles_Response_App::InternalSwap(CPublishedFile_GetUserFiles_Response_App* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Response_App, _impl_.private__)
      + sizeof(CPublishedFile_GetUserFiles_Response_App::_impl_.private__)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Response_App, _impl_.appid_)>(
          reinterpret_cast<char*>(&_impl_.appid_),
          reinterpret_cast<char*>(&other->_impl_.appid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_GetUserFiles_Response_App::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[15]);
}

// ===================================================================

class CPublishedFile_GetUserFiles_Response::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_GetUserFiles_Response>()._impl_._has_bits_);
  static void set_has_total(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_startindex(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

CPublishedFile_GetUserFiles_Response::CPublishedFile_GetUserFiles_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_GetUserFiles_Response)
}
CPublishedFile_GetUserFiles_Response::CPublishedFile_GetUserFiles_Response(const CPublishedFile_GetUserFiles_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_GetUserFiles_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfiledetails_){from._impl_.publishedfiledetails_}
    , decltype(_impl_.apps_){from._impl_.apps_}
    , decltype(_impl_.total_){}
    , decltype(_impl_.startindex_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.total_, &from._impl_.total_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.startindex_) -
    reinterpret_cast<char*>(&_impl_.total_)) + sizeof(_impl_.startindex_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_GetUserFiles_Response)
}

inline void CPublishedFile_GetUserFiles_Response::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.publishedfiledetails_){arena}
    , decltype(_impl_.apps_){arena}
    , decltype(_impl_.total_){0u}
    , decltype(_impl_.startindex_){0u}
  };
}

CPublishedFile_GetUserFiles_Response::~CPublishedFile_GetUserFiles_Response() {
  // @@protoc_insertion_point(destructor:CPublishedFile_GetUserFiles_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_GetUserFiles_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.publishedfiledetails_.~RepeatedPtrField();
  _impl_.apps_.~RepeatedPtrField();
}

void CPublishedFile_GetUserFiles_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_GetUserFiles_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_GetUserFiles_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.publishedfiledetails_.Clear();
  _impl_.apps_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    ::memset(&_impl_.total_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.startindex_) -
        reinterpret_cast<char*>(&_impl_.total_)) + sizeof(_impl_.startindex_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_GetUserFiles_Response::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 total = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_total(&has_bits);
          _impl_.total_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 startindex = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_startindex(&has_bits);
          _impl_.startindex_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .PublishedFileDetails publishedfiledetails = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_publishedfiledetails(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CPublishedFile_GetUserFiles_Response.App apps = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_apps(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_GetUserFiles_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_GetUserFiles_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 total = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_total(), target);
  }

  // optional uint32 startindex = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_startindex(), target);
  }

  // repeated .PublishedFileDetails publishedfiledetails = 3;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_publishedfiledetails_size()); i < n; i++) {
    const auto& repfield = this->_internal_publishedfiledetails(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CPublishedFile_GetUserFiles_Response.App apps = 4;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_apps_size()); i < n; i++) {
    const auto& repfield = this->_internal_apps(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_GetUserFiles_Response)
  return target;
}

size_t CPublishedFile_GetUserFiles_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_GetUserFiles_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .PublishedFileDetails publishedfiledetails = 3;
  total_size += 1UL * this->_internal_publishedfiledetails_size();
  for (const auto& msg : this->_impl_.publishedfiledetails_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CPublishedFile_GetUserFiles_Response.App apps = 4;
  total_size += 1UL * this->_internal_apps_size();
  for (const auto& msg : this->_impl_.apps_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    // optional uint32 total = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_total());
    }

    // optional uint32 startindex = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_startindex());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_GetUserFiles_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_GetUserFiles_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_GetUserFiles_Response::GetClassData() const { return &_class_data_; }


void CPublishedFile_GetUserFiles_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_GetUserFiles_Response*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_GetUserFiles_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_GetUserFiles_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.publishedfiledetails_.MergeFrom(from._impl_.publishedfiledetails_);
  _this->_impl_.apps_.MergeFrom(from._impl_.apps_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.total_ = from._impl_.total_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.startindex_ = from._impl_.startindex_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_GetUserFiles_Response::CopyFrom(const CPublishedFile_GetUserFiles_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_GetUserFiles_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_GetUserFiles_Response::IsInitialized() const {
  return true;
}

void CPublishedFile_GetUserFiles_Response::InternalSwap(CPublishedFile_GetUserFiles_Response* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.publishedfiledetails_.InternalSwap(&other->_impl_.publishedfiledetails_);
  _impl_.apps_.InternalSwap(&other->_impl_.apps_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Response, _impl_.startindex_)
      + sizeof(CPublishedFile_GetUserFiles_Response::_impl_.startindex_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_GetUserFiles_Response, _impl_.total_)>(
          reinterpret_cast<char*>(&_impl_.total_),
          reinterpret_cast<char*>(&other->_impl_.total_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_GetUserFiles_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[16]);
}

// ===================================================================

class CPublishedFile_Update_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_Update_Request>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_publishedfileid(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_title(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_file_description(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_visibility(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_filename(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_preview_filename(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CPublishedFile_Update_Request::CPublishedFile_Update_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Update_Request)
}
CPublishedFile_Update_Request::CPublishedFile_Update_Request(const CPublishedFile_Update_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_Update_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){from._impl_.tags_}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.preview_filename_){}
    , decltype(_impl_.publishedfileid_){}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.visibility_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_title()) {
    _this->_impl_.title_.Set(from._internal_title(), 
      _this->GetArenaForAllocation());
  }
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_file_description()) {
    _this->_impl_.file_description_.Set(from._internal_file_description(), 
      _this->GetArenaForAllocation());
  }
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_filename()) {
    _this->_impl_.filename_.Set(from._internal_filename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.preview_filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_preview_filename()) {
    _this->_impl_.preview_filename_.Set(from._internal_preview_filename(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.publishedfileid_, &from._impl_.publishedfileid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.visibility_) -
    reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.visibility_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Update_Request)
}

inline void CPublishedFile_Update_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){arena}
    , decltype(_impl_.title_){}
    , decltype(_impl_.file_description_){}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.preview_filename_){}
    , decltype(_impl_.publishedfileid_){uint64_t{0u}}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.visibility_){0u}
  };
  _impl_.title_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.title_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.file_description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.preview_filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.preview_filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CPublishedFile_Update_Request::~CPublishedFile_Update_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_Update_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_Update_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.tags_.~RepeatedPtrField();
  _impl_.title_.Destroy();
  _impl_.file_description_.Destroy();
  _impl_.filename_.Destroy();
  _impl_.preview_filename_.Destroy();
}

void CPublishedFile_Update_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_Update_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_Update_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.tags_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.title_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.file_description_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.filename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.preview_filename_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00000070u) {
    ::memset(&_impl_.publishedfileid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.visibility_) -
        reinterpret_cast<char*>(&_impl_.publishedfileid_)) + sizeof(_impl_.visibility_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_Update_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1 [(.description) = "App Id this published file belongs to."];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed64 publishedfileid = 2 [(.description) = "Published file id of the file we\'d like update."];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 17)) {
          _Internal::set_has_publishedfileid(&has_bits);
          _impl_.publishedfileid_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional string title = 3 [(.description) = "(Optional) Title of the published file."];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_title();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Update_Request.title");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string file_description = 4 [(.description) = "(Optional) Description of the published file."];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_file_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Update_Request.file_description");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 visibility = 5 [(.description) = "(Optional) Visibility of the published file."];
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_visibility(&has_bits);
          _impl_.visibility_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated string tags = 6 [(.description) = "(Optional) Set of tags for the published file."];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_tags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_Update_Request.tags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional string filename = 7 [(.description) = "(Optional) Filename for the published file."];
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          auto str = _internal_mutable_filename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Update_Request.filename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string preview_filename = 8 [(.description) = "(Optional) Preview filename for the published file."];
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          auto str = _internal_mutable_preview_filename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CPublishedFile_Update_Request.preview_filename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_Update_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_Update_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 appid = 1 [(.description) = "App Id this published file belongs to."];
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_appid(), target);
  }

  // optional fixed64 publishedfileid = 2 [(.description) = "Published file id of the file we\'d like update."];
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(2, this->_internal_publishedfileid(), target);
  }

  // optional string title = 3 [(.description) = "(Optional) Title of the published file."];
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_title().data(), static_cast<int>(this->_internal_title().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Update_Request.title");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_title(), target);
  }

  // optional string file_description = 4 [(.description) = "(Optional) Description of the published file."];
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_file_description().data(), static_cast<int>(this->_internal_file_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Update_Request.file_description");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_file_description(), target);
  }

  // optional uint32 visibility = 5 [(.description) = "(Optional) Visibility of the published file."];
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_visibility(), target);
  }

  // repeated string tags = 6 [(.description) = "(Optional) Set of tags for the published file."];
  for (int i = 0, n = this->_internal_tags_size(); i < n; i++) {
    const auto& s = this->_internal_tags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Update_Request.tags");
    target = stream->WriteString(6, s, target);
  }

  // optional string filename = 7 [(.description) = "(Optional) Filename for the published file."];
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_filename().data(), static_cast<int>(this->_internal_filename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Update_Request.filename");
    target = stream->WriteStringMaybeAliased(
        7, this->_internal_filename(), target);
  }

  // optional string preview_filename = 8 [(.description) = "(Optional) Preview filename for the published file."];
  if (cached_has_bits & 0x00000008u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_preview_filename().data(), static_cast<int>(this->_internal_preview_filename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_Update_Request.preview_filename");
    target = stream->WriteStringMaybeAliased(
        8, this->_internal_preview_filename(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_Update_Request)
  return target;
}

size_t CPublishedFile_Update_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_Update_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string tags = 6 [(.description) = "(Optional) Set of tags for the published file."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.tags_.size());
  for (int i = 0, n = _impl_.tags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.tags_.Get(i));
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    // optional string title = 3 [(.description) = "(Optional) Title of the published file."];
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_title());
    }

    // optional string file_description = 4 [(.description) = "(Optional) Description of the published file."];
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_file_description());
    }

    // optional string filename = 7 [(.description) = "(Optional) Filename for the published file."];
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_filename());
    }

    // optional string preview_filename = 8 [(.description) = "(Optional) Preview filename for the published file."];
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_preview_filename());
    }

    // optional fixed64 publishedfileid = 2 [(.description) = "Published file id of the file we\'d like update."];
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 8;
    }

    // optional uint32 appid = 1 [(.description) = "App Id this published file belongs to."];
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional uint32 visibility = 5 [(.description) = "(Optional) Visibility of the published file."];
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_visibility());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Update_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_Update_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Update_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_Update_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_Update_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_Update_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_Update_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.tags_.MergeFrom(from._impl_.tags_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_title(from._internal_title());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_file_description(from._internal_file_description());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_filename(from._internal_filename());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_preview_filename(from._internal_preview_filename());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.publishedfileid_ = from._impl_.publishedfileid_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.visibility_ = from._impl_.visibility_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_Update_Request::CopyFrom(const CPublishedFile_Update_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_Update_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_Update_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_Update_Request::InternalSwap(CPublishedFile_Update_Request* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.tags_.InternalSwap(&other->_impl_.tags_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.title_, lhs_arena,
      &other->_impl_.title_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.file_description_, lhs_arena,
      &other->_impl_.file_description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.filename_, lhs_arena,
      &other->_impl_.filename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.preview_filename_, lhs_arena,
      &other->_impl_.preview_filename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_Update_Request, _impl_.visibility_)
      + sizeof(CPublishedFile_Update_Request::_impl_.visibility_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_Update_Request, _impl_.publishedfileid_)>(
          reinterpret_cast<char*>(&_impl_.publishedfileid_),
          reinterpret_cast<char*>(&other->_impl_.publishedfileid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Update_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[17]);
}

// ===================================================================

class CPublishedFile_Update_Response::_Internal {
 public:
};

CPublishedFile_Update_Response::CPublishedFile_Update_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_Update_Response)
}
CPublishedFile_Update_Response::CPublishedFile_Update_Response(const CPublishedFile_Update_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CPublishedFile_Update_Response* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_Update_Response)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_Update_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_Update_Response::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_Update_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[18]);
}

// ===================================================================

class CPublishedFile_RefreshVotingQueue_Request::_Internal {
 public:
  using HasBits = decltype(std::declval<CPublishedFile_RefreshVotingQueue_Request>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_matching_file_type(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_match_all_tags(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_desired_queue_size(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

CPublishedFile_RefreshVotingQueue_Request::CPublishedFile_RefreshVotingQueue_Request(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_RefreshVotingQueue_Request)
}
CPublishedFile_RefreshVotingQueue_Request::CPublishedFile_RefreshVotingQueue_Request(const CPublishedFile_RefreshVotingQueue_Request& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CPublishedFile_RefreshVotingQueue_Request* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){from._impl_.tags_}
    , decltype(_impl_.excluded_tags_){from._impl_.excluded_tags_}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.matching_file_type_){}
    , decltype(_impl_.desired_queue_size_){}
    , decltype(_impl_.match_all_tags_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.match_all_tags_) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.match_all_tags_));
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_RefreshVotingQueue_Request)
}

inline void CPublishedFile_RefreshVotingQueue_Request::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tags_){arena}
    , decltype(_impl_.excluded_tags_){arena}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.matching_file_type_){0u}
    , decltype(_impl_.desired_queue_size_){0u}
    , decltype(_impl_.match_all_tags_){true}
  };
}

CPublishedFile_RefreshVotingQueue_Request::~CPublishedFile_RefreshVotingQueue_Request() {
  // @@protoc_insertion_point(destructor:CPublishedFile_RefreshVotingQueue_Request)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CPublishedFile_RefreshVotingQueue_Request::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.tags_.~RepeatedPtrField();
  _impl_.excluded_tags_.~RepeatedPtrField();
}

void CPublishedFile_RefreshVotingQueue_Request::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CPublishedFile_RefreshVotingQueue_Request::Clear() {
// @@protoc_insertion_point(message_clear_start:CPublishedFile_RefreshVotingQueue_Request)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.tags_.Clear();
  _impl_.excluded_tags_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    ::memset(&_impl_.appid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.desired_queue_size_) -
        reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.desired_queue_size_));
    _impl_.match_all_tags_ = true;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CPublishedFile_RefreshVotingQueue_Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 matching_file_type = 2 [(.description) = "EPublishedFileInfoMatchingFileType"];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_matching_file_type(&has_bits);
          _impl_.matching_file_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated string tags = 3 [(.description) = "Include files that have all the tags or any of the tags if match_all_tags is set to false."];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_tags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_RefreshVotingQueue_Request.tags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional bool match_all_tags = 4 [default = true, (.description) = "If true, then files must have all the tags specified.  If false, then must have at least one of the tags specified."];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_match_all_tags(&has_bits);
          _impl_.match_all_tags_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated string excluded_tags = 5 [(.description) = "Exclude any files that have any of these tags."];
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_excluded_tags();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CPublishedFile_RefreshVotingQueue_Request.excluded_tags");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional uint32 desired_queue_size = 6 [(.description) = "Desired number of items in the voting queue.  May be clamped by the server"];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_desired_queue_size(&has_bits);
          _impl_.desired_queue_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CPublishedFile_RefreshVotingQueue_Request::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CPublishedFile_RefreshVotingQueue_Request)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 appid = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_appid(), target);
  }

  // optional uint32 matching_file_type = 2 [(.description) = "EPublishedFileInfoMatchingFileType"];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_matching_file_type(), target);
  }

  // repeated string tags = 3 [(.description) = "Include files that have all the tags or any of the tags if match_all_tags is set to false."];
  for (int i = 0, n = this->_internal_tags_size(); i < n; i++) {
    const auto& s = this->_internal_tags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_RefreshVotingQueue_Request.tags");
    target = stream->WriteString(3, s, target);
  }

  // optional bool match_all_tags = 4 [default = true, (.description) = "If true, then files must have all the tags specified.  If false, then must have at least one of the tags specified."];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_match_all_tags(), target);
  }

  // repeated string excluded_tags = 5 [(.description) = "Exclude any files that have any of these tags."];
  for (int i = 0, n = this->_internal_excluded_tags_size(); i < n; i++) {
    const auto& s = this->_internal_excluded_tags(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CPublishedFile_RefreshVotingQueue_Request.excluded_tags");
    target = stream->WriteString(5, s, target);
  }

  // optional uint32 desired_queue_size = 6 [(.description) = "Desired number of items in the voting queue.  May be clamped by the server"];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_desired_queue_size(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CPublishedFile_RefreshVotingQueue_Request)
  return target;
}

size_t CPublishedFile_RefreshVotingQueue_Request::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CPublishedFile_RefreshVotingQueue_Request)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string tags = 3 [(.description) = "Include files that have all the tags or any of the tags if match_all_tags is set to false."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.tags_.size());
  for (int i = 0, n = _impl_.tags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.tags_.Get(i));
  }

  // repeated string excluded_tags = 5 [(.description) = "Exclude any files that have any of these tags."];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.excluded_tags_.size());
  for (int i = 0, n = _impl_.excluded_tags_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.excluded_tags_.Get(i));
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    // optional uint32 appid = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional uint32 matching_file_type = 2 [(.description) = "EPublishedFileInfoMatchingFileType"];
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_matching_file_type());
    }

    // optional uint32 desired_queue_size = 6 [(.description) = "Desired number of items in the voting queue.  May be clamped by the server"];
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_desired_queue_size());
    }

    // optional bool match_all_tags = 4 [default = true, (.description) = "If true, then files must have all the tags specified.  If false, then must have at least one of the tags specified."];
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_RefreshVotingQueue_Request::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CPublishedFile_RefreshVotingQueue_Request::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_RefreshVotingQueue_Request::GetClassData() const { return &_class_data_; }


void CPublishedFile_RefreshVotingQueue_Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CPublishedFile_RefreshVotingQueue_Request*>(&to_msg);
  auto& from = static_cast<const CPublishedFile_RefreshVotingQueue_Request&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CPublishedFile_RefreshVotingQueue_Request)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.tags_.MergeFrom(from._impl_.tags_);
  _this->_impl_.excluded_tags_.MergeFrom(from._impl_.excluded_tags_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.matching_file_type_ = from._impl_.matching_file_type_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.desired_queue_size_ = from._impl_.desired_queue_size_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.match_all_tags_ = from._impl_.match_all_tags_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CPublishedFile_RefreshVotingQueue_Request::CopyFrom(const CPublishedFile_RefreshVotingQueue_Request& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CPublishedFile_RefreshVotingQueue_Request)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CPublishedFile_RefreshVotingQueue_Request::IsInitialized() const {
  return true;
}

void CPublishedFile_RefreshVotingQueue_Request::InternalSwap(CPublishedFile_RefreshVotingQueue_Request* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.tags_.InternalSwap(&other->_impl_.tags_);
  _impl_.excluded_tags_.InternalSwap(&other->_impl_.excluded_tags_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CPublishedFile_RefreshVotingQueue_Request, _impl_.desired_queue_size_)
      + sizeof(CPublishedFile_RefreshVotingQueue_Request::_impl_.desired_queue_size_)
      - PROTOBUF_FIELD_OFFSET(CPublishedFile_RefreshVotingQueue_Request, _impl_.appid_)>(
          reinterpret_cast<char*>(&_impl_.appid_),
          reinterpret_cast<char*>(&other->_impl_.appid_));
  swap(_impl_.match_all_tags_, other->_impl_.match_all_tags_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_RefreshVotingQueue_Request::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[19]);
}

// ===================================================================

class CPublishedFile_RefreshVotingQueue_Response::_Internal {
 public:
};

CPublishedFile_RefreshVotingQueue_Response::CPublishedFile_RefreshVotingQueue_Response(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CPublishedFile_RefreshVotingQueue_Response)
}
CPublishedFile_RefreshVotingQueue_Response::CPublishedFile_RefreshVotingQueue_Response(const CPublishedFile_RefreshVotingQueue_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CPublishedFile_RefreshVotingQueue_Response* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CPublishedFile_RefreshVotingQueue_Response)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CPublishedFile_RefreshVotingQueue_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CPublishedFile_RefreshVotingQueue_Response::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CPublishedFile_RefreshVotingQueue_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_getter, &descriptor_table_steammessages_5fpublishedfile_2esteamworkssdk_2eproto_once,
      file_level_metadata_steammessages_5fpublishedfile_2esteamworkssdk_2eproto[20]);
}

// @@protoc_insertion_point(namespace_scope)
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::CPublishedFile_Subscribe_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_Subscribe_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Subscribe_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Subscribe_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_Subscribe_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Subscribe_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Unsubscribe_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_Unsubscribe_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Unsubscribe_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Unsubscribe_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_Unsubscribe_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Unsubscribe_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Publish_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_Publish_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Publish_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Publish_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_Publish_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Publish_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_GetDetails_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_GetDetails_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_GetDetails_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails_Tag*
Arena::CreateMaybeMessage< ::PublishedFileDetails_Tag >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails_Tag >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails_Preview*
Arena::CreateMaybeMessage< ::PublishedFileDetails_Preview >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails_Preview >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails_Child*
Arena::CreateMaybeMessage< ::PublishedFileDetails_Child >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails_Child >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails_KVTag*
Arena::CreateMaybeMessage< ::PublishedFileDetails_KVTag >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails_KVTag >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails_VoteData*
Arena::CreateMaybeMessage< ::PublishedFileDetails_VoteData >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails_VoteData >(arena);
}
template<> PROTOBUF_NOINLINE ::PublishedFileDetails*
Arena::CreateMaybeMessage< ::PublishedFileDetails >(Arena* arena) {
  return Arena::CreateMessageInternal< ::PublishedFileDetails >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_GetDetails_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_GetDetails_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_GetDetails_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_GetUserFiles_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_GetUserFiles_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_GetUserFiles_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_GetUserFiles_Response_App*
Arena::CreateMaybeMessage< ::CPublishedFile_GetUserFiles_Response_App >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_GetUserFiles_Response_App >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_GetUserFiles_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_GetUserFiles_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_GetUserFiles_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Update_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_Update_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Update_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_Update_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_Update_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_Update_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_RefreshVotingQueue_Request*
Arena::CreateMaybeMessage< ::CPublishedFile_RefreshVotingQueue_Request >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_RefreshVotingQueue_Request >(arena);
}
template<> PROTOBUF_NOINLINE ::CPublishedFile_RefreshVotingQueue_Response*
Arena::CreateMaybeMessage< ::CPublishedFile_RefreshVotingQueue_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CPublishedFile_RefreshVotingQueue_Response >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
