public static final class VodAllPlayInfoModel.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder> implements VodAllPlayInfoModelOrBuilder
Volcengine.Vod.Models.Business.VodAllPlayInfoModelgetAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType in interface com.google.protobuf.Message.BuildergetDescriptorForType in interface com.google.protobuf.MessageOrBuildergetDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic VodAllPlayInfoModel build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic VodAllPlayInfoModel buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic VodAllPlayInfoModel.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
setField in interface com.google.protobuf.Message.BuildersetField in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
setRepeatedField in interface com.google.protobuf.Message.BuildersetRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
addRepeatedField in interface com.google.protobuf.Message.BuilderaddRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder mergeFrom(VodAllPlayInfoModel other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public VodAllPlayInfoModel.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in interface com.google.protobuf.MessageLite.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<VodAllPlayInfoModel.Builder>IOExceptionpublic String getVid()
唯一ID
string Vid = 1;getVid in interface VodAllPlayInfoModelOrBuilderpublic com.google.protobuf.ByteString getVidBytes()
唯一ID
string Vid = 1;getVidBytes in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setVid(String value)
唯一ID
string Vid = 1;value - The vid to set.public VodAllPlayInfoModel.Builder clearVid()
唯一ID
string Vid = 1;public VodAllPlayInfoModel.Builder setVidBytes(com.google.protobuf.ByteString value)
唯一ID
string Vid = 1;value - The bytes for vid to set.public int getStatus()
状态
int32 Status = 2;getStatus in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setStatus(int value)
状态
int32 Status = 2;value - The status to set.public VodAllPlayInfoModel.Builder clearStatus()
状态
int32 Status = 2;public String getPosterUrl()
封面地址
string PosterUrl = 3;getPosterUrl in interface VodAllPlayInfoModelOrBuilderpublic com.google.protobuf.ByteString getPosterUrlBytes()
封面地址
string PosterUrl = 3;getPosterUrlBytes in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setPosterUrl(String value)
封面地址
string PosterUrl = 3;value - The posterUrl to set.public VodAllPlayInfoModel.Builder clearPosterUrl()
封面地址
string PosterUrl = 3;public VodAllPlayInfoModel.Builder setPosterUrlBytes(com.google.protobuf.ByteString value)
封面地址
string PosterUrl = 3;value - The bytes for posterUrl to set.public int getTotalCount()
播放列表数量
int32 TotalCount = 4;getTotalCount in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setTotalCount(int value)
播放列表数量
int32 TotalCount = 4;value - The totalCount to set.public VodAllPlayInfoModel.Builder clearTotalCount()
播放列表数量
int32 TotalCount = 4;public boolean getEnableAdaptive()
是否关键针对齐
bool EnableAdaptive = 5;getEnableAdaptive in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setEnableAdaptive(boolean value)
是否关键针对齐
bool EnableAdaptive = 5;value - The enableAdaptive to set.public VodAllPlayInfoModel.Builder clearEnableAdaptive()
是否关键针对齐
bool EnableAdaptive = 5;public List<VodPlayInfo> getVodTranscodePlayInfoList()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;getVodTranscodePlayInfoList in interface VodAllPlayInfoModelOrBuilderpublic int getVodTranscodePlayInfoCount()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;getVodTranscodePlayInfoCount in interface VodAllPlayInfoModelOrBuilderpublic VodPlayInfo getVodTranscodePlayInfo(int index)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;getVodTranscodePlayInfo in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setVodTranscodePlayInfo(int index, VodPlayInfo value)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder setVodTranscodePlayInfo(int index, VodPlayInfo.Builder builderForValue)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder addVodTranscodePlayInfo(VodPlayInfo value)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder addVodTranscodePlayInfo(int index, VodPlayInfo value)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder addVodTranscodePlayInfo(VodPlayInfo.Builder builderForValue)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder addVodTranscodePlayInfo(int index, VodPlayInfo.Builder builderForValue)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder addAllVodTranscodePlayInfo(Iterable<? extends VodPlayInfo> values)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder clearVodTranscodePlayInfo()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodAllPlayInfoModel.Builder removeVodTranscodePlayInfo(int index)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodPlayInfo.Builder getVodTranscodePlayInfoBuilder(int index)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodPlayInfoOrBuilder getVodTranscodePlayInfoOrBuilder(int index)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;getVodTranscodePlayInfoOrBuilder in interface VodAllPlayInfoModelOrBuilderpublic List<? extends VodPlayInfoOrBuilder> getVodTranscodePlayInfoOrBuilderList()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;getVodTranscodePlayInfoOrBuilderList in interface VodAllPlayInfoModelOrBuilderpublic VodPlayInfo.Builder addVodTranscodePlayInfoBuilder()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public VodPlayInfo.Builder addVodTranscodePlayInfoBuilder(int index)
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public List<VodPlayInfo.Builder> getVodTranscodePlayInfoBuilderList()
转码流
repeated .Volcengine.Vod.Models.Business.VodPlayInfo VodTranscodePlayInfo = 6;public boolean hasVodSourcePlayInfo()
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;hasVodSourcePlayInfo in interface VodAllPlayInfoModelOrBuilderpublic VodPlayInfo getVodSourcePlayInfo()
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;getVodSourcePlayInfo in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setVodSourcePlayInfo(VodPlayInfo value)
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;public VodAllPlayInfoModel.Builder setVodSourcePlayInfo(VodPlayInfo.Builder builderForValue)
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;public VodAllPlayInfoModel.Builder mergeVodSourcePlayInfo(VodPlayInfo value)
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;public VodAllPlayInfoModel.Builder clearVodSourcePlayInfo()
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;public VodPlayInfo.Builder getVodSourcePlayInfoBuilder()
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;public VodPlayInfoOrBuilder getVodSourcePlayInfoOrBuilder()
原片流
.Volcengine.Vod.Models.Business.VodPlayInfo VodSourcePlayInfo = 7;getVodSourcePlayInfoOrBuilder in interface VodAllPlayInfoModelOrBuilderpublic int getVersionValue()
数据版本
.Volcengine.Vod.Models.Business.VodPlayInfoModelVersion Version = 8;getVersionValue in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setVersionValue(int value)
数据版本
.Volcengine.Vod.Models.Business.VodPlayInfoModelVersion Version = 8;value - The enum numeric value on the wire for version to set.public VodPlayInfoModelVersion getVersion()
数据版本
.Volcengine.Vod.Models.Business.VodPlayInfoModelVersion Version = 8;getVersion in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setVersion(VodPlayInfoModelVersion value)
数据版本
.Volcengine.Vod.Models.Business.VodPlayInfoModelVersion Version = 8;value - The version to set.public VodAllPlayInfoModel.Builder clearVersion()
数据版本
.Volcengine.Vod.Models.Business.VodPlayInfoModelVersion Version = 8;public List<VodThumbInfo> getThumbInfoListList()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;getThumbInfoListList in interface VodAllPlayInfoModelOrBuilderpublic int getThumbInfoListCount()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;getThumbInfoListCount in interface VodAllPlayInfoModelOrBuilderpublic VodThumbInfo getThumbInfoList(int index)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;getThumbInfoList in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setThumbInfoList(int index, VodThumbInfo value)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder setThumbInfoList(int index, VodThumbInfo.Builder builderForValue)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder addThumbInfoList(VodThumbInfo value)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder addThumbInfoList(int index, VodThumbInfo value)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder addThumbInfoList(VodThumbInfo.Builder builderForValue)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder addThumbInfoList(int index, VodThumbInfo.Builder builderForValue)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder addAllThumbInfoList(Iterable<? extends VodThumbInfo> values)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder clearThumbInfoList()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodAllPlayInfoModel.Builder removeThumbInfoList(int index)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodThumbInfo.Builder getThumbInfoListBuilder(int index)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodThumbInfoOrBuilder getThumbInfoListOrBuilder(int index)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;getThumbInfoListOrBuilder in interface VodAllPlayInfoModelOrBuilderpublic List<? extends VodThumbInfoOrBuilder> getThumbInfoListOrBuilderList()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;getThumbInfoListOrBuilderList in interface VodAllPlayInfoModelOrBuilderpublic VodThumbInfo.Builder addThumbInfoListBuilder()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public VodThumbInfo.Builder addThumbInfoListBuilder(int index)
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public List<VodThumbInfo.Builder> getThumbInfoListBuilderList()
雪碧图列表
repeated .Volcengine.Vod.Models.Business.VodThumbInfo ThumbInfoList = 9;public String getBarrageMaskUrl()
弹幕蒙版url
string BarrageMaskUrl = 10;getBarrageMaskUrl in interface VodAllPlayInfoModelOrBuilderpublic com.google.protobuf.ByteString getBarrageMaskUrlBytes()
弹幕蒙版url
string BarrageMaskUrl = 10;getBarrageMaskUrlBytes in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setBarrageMaskUrl(String value)
弹幕蒙版url
string BarrageMaskUrl = 10;value - The barrageMaskUrl to set.public VodAllPlayInfoModel.Builder clearBarrageMaskUrl()
弹幕蒙版url
string BarrageMaskUrl = 10;public VodAllPlayInfoModel.Builder setBarrageMaskUrlBytes(com.google.protobuf.ByteString value)
弹幕蒙版url
string BarrageMaskUrl = 10;value - The bytes for barrageMaskUrl to set.public List<VodSubtitleInfo> getSubtitleInfoListList()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;getSubtitleInfoListList in interface VodAllPlayInfoModelOrBuilderpublic int getSubtitleInfoListCount()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;getSubtitleInfoListCount in interface VodAllPlayInfoModelOrBuilderpublic VodSubtitleInfo getSubtitleInfoList(int index)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;getSubtitleInfoList in interface VodAllPlayInfoModelOrBuilderpublic VodAllPlayInfoModel.Builder setSubtitleInfoList(int index, VodSubtitleInfo value)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder setSubtitleInfoList(int index, VodSubtitleInfo.Builder builderForValue)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder addSubtitleInfoList(VodSubtitleInfo value)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder addSubtitleInfoList(int index, VodSubtitleInfo value)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder addSubtitleInfoList(VodSubtitleInfo.Builder builderForValue)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder addSubtitleInfoList(int index, VodSubtitleInfo.Builder builderForValue)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder addAllSubtitleInfoList(Iterable<? extends VodSubtitleInfo> values)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder clearSubtitleInfoList()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodAllPlayInfoModel.Builder removeSubtitleInfoList(int index)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodSubtitleInfo.Builder getSubtitleInfoListBuilder(int index)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodSubtitleInfoOrBuilder getSubtitleInfoListOrBuilder(int index)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;getSubtitleInfoListOrBuilder in interface VodAllPlayInfoModelOrBuilderpublic List<? extends VodSubtitleInfoOrBuilder> getSubtitleInfoListOrBuilderList()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;getSubtitleInfoListOrBuilderList in interface VodAllPlayInfoModelOrBuilderpublic VodSubtitleInfo.Builder addSubtitleInfoListBuilder()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public VodSubtitleInfo.Builder addSubtitleInfoListBuilder(int index)
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public List<VodSubtitleInfo.Builder> getSubtitleInfoListBuilderList()
字幕信息列表
repeated .Volcengine.Vod.Models.Business.VodSubtitleInfo SubtitleInfoList = 11;public final VodAllPlayInfoModel.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>public final VodAllPlayInfoModel.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<VodAllPlayInfoModel.Builder>Copyright © 2023. All rights reserved.