public static final class CompilationResultAction.Assertion.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder> implements CompilationResultAction.AssertionOrBuilder
Represents an assertion upon a SQL query which is required return zero rows.Protobuf type
google.cloud.dataform.v1alpha2.CompilationResultAction.Assertion| Modifier and Type | Method and Description |
|---|---|
CompilationResultAction.Assertion.Builder |
addAllDependencyTargets(Iterable<? extends Target> values)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
addAllTags(Iterable<String> values)
Arbitrary, user-defined tags on this action.
|
CompilationResultAction.Assertion.Builder |
addDependencyTargets(int index,
Target.Builder builderForValue)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
addDependencyTargets(int index,
Target value)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
addDependencyTargets(Target.Builder builderForValue)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
addDependencyTargets(Target value)
A list of actions that this action depends on.
|
Target.Builder |
addDependencyTargetsBuilder()
A list of actions that this action depends on.
|
Target.Builder |
addDependencyTargetsBuilder(int index)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
CompilationResultAction.Assertion.Builder |
addTags(String value)
Arbitrary, user-defined tags on this action.
|
CompilationResultAction.Assertion.Builder |
addTagsBytes(com.google.protobuf.ByteString value)
Arbitrary, user-defined tags on this action.
|
CompilationResultAction.Assertion |
build() |
CompilationResultAction.Assertion |
buildPartial() |
CompilationResultAction.Assertion.Builder |
clear() |
CompilationResultAction.Assertion.Builder |
clearDependencyTargets()
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
clearDisabled()
Whether this action is disabled (i.e.
|
CompilationResultAction.Assertion.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field) |
CompilationResultAction.Assertion.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) |
CompilationResultAction.Assertion.Builder |
clearParentAction()
The parent action of this assertion.
|
CompilationResultAction.Assertion.Builder |
clearRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its
columns.
|
CompilationResultAction.Assertion.Builder |
clearSelectQuery()
The SELECT query which must return zero rows in order for this assertion
to succeed.
|
CompilationResultAction.Assertion.Builder |
clearTags()
Arbitrary, user-defined tags on this action.
|
CompilationResultAction.Assertion.Builder |
clone() |
CompilationResultAction.Assertion |
getDefaultInstanceForType() |
Target |
getDependencyTargets(int index)
A list of actions that this action depends on.
|
Target.Builder |
getDependencyTargetsBuilder(int index)
A list of actions that this action depends on.
|
List<Target.Builder> |
getDependencyTargetsBuilderList()
A list of actions that this action depends on.
|
int |
getDependencyTargetsCount()
A list of actions that this action depends on.
|
List<Target> |
getDependencyTargetsList()
A list of actions that this action depends on.
|
TargetOrBuilder |
getDependencyTargetsOrBuilder(int index)
A list of actions that this action depends on.
|
List<? extends TargetOrBuilder> |
getDependencyTargetsOrBuilderList()
A list of actions that this action depends on.
|
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
boolean |
getDisabled()
Whether this action is disabled (i.e.
|
Target |
getParentAction()
The parent action of this assertion.
|
Target.Builder |
getParentActionBuilder()
The parent action of this assertion.
|
TargetOrBuilder |
getParentActionOrBuilder()
The parent action of this assertion.
|
RelationDescriptor |
getRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its
columns.
|
RelationDescriptor.Builder |
getRelationDescriptorBuilder()
Descriptor for the assertion's automatically-generated view and its
columns.
|
RelationDescriptorOrBuilder |
getRelationDescriptorOrBuilder()
Descriptor for the assertion's automatically-generated view and its
columns.
|
String |
getSelectQuery()
The SELECT query which must return zero rows in order for this assertion
to succeed.
|
com.google.protobuf.ByteString |
getSelectQueryBytes()
The SELECT query which must return zero rows in order for this assertion
to succeed.
|
String |
getTags(int index)
Arbitrary, user-defined tags on this action.
|
com.google.protobuf.ByteString |
getTagsBytes(int index)
Arbitrary, user-defined tags on this action.
|
int |
getTagsCount()
Arbitrary, user-defined tags on this action.
|
com.google.protobuf.ProtocolStringList |
getTagsList()
Arbitrary, user-defined tags on this action.
|
boolean |
hasParentAction()
The parent action of this assertion.
|
boolean |
hasRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its
columns.
|
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
CompilationResultAction.Assertion.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
CompilationResultAction.Assertion.Builder |
mergeFrom(CompilationResultAction.Assertion other) |
CompilationResultAction.Assertion.Builder |
mergeFrom(com.google.protobuf.Message other) |
CompilationResultAction.Assertion.Builder |
mergeParentAction(Target value)
The parent action of this assertion.
|
CompilationResultAction.Assertion.Builder |
mergeRelationDescriptor(RelationDescriptor value)
Descriptor for the assertion's automatically-generated view and its
columns.
|
CompilationResultAction.Assertion.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
CompilationResultAction.Assertion.Builder |
removeDependencyTargets(int index)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
setDependencyTargets(int index,
Target.Builder builderForValue)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
setDependencyTargets(int index,
Target value)
A list of actions that this action depends on.
|
CompilationResultAction.Assertion.Builder |
setDisabled(boolean value)
Whether this action is disabled (i.e.
|
CompilationResultAction.Assertion.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
CompilationResultAction.Assertion.Builder |
setParentAction(Target.Builder builderForValue)
The parent action of this assertion.
|
CompilationResultAction.Assertion.Builder |
setParentAction(Target value)
The parent action of this assertion.
|
CompilationResultAction.Assertion.Builder |
setRelationDescriptor(RelationDescriptor.Builder builderForValue)
Descriptor for the assertion's automatically-generated view and its
columns.
|
CompilationResultAction.Assertion.Builder |
setRelationDescriptor(RelationDescriptor value)
Descriptor for the assertion's automatically-generated view and its
columns.
|
CompilationResultAction.Assertion.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
int index,
Object value) |
CompilationResultAction.Assertion.Builder |
setSelectQuery(String value)
The SELECT query which must return zero rows in order for this assertion
to succeed.
|
CompilationResultAction.Assertion.Builder |
setSelectQueryBytes(com.google.protobuf.ByteString value)
The SELECT query which must return zero rows in order for this assertion
to succeed.
|
CompilationResultAction.Assertion.Builder |
setTags(int index,
String value)
Arbitrary, user-defined tags on this action.
|
CompilationResultAction.Assertion.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, 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<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.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<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic CompilationResultAction.Assertion build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic CompilationResultAction.Assertion buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic CompilationResultAction.Assertion.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.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<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.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<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.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<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.Builder mergeFrom(CompilationResultAction.Assertion other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>public CompilationResultAction.Assertion.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<CompilationResultAction.Assertion.Builder>IOExceptionpublic List<Target> getDependencyTargetsList()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;getDependencyTargetsList in interface CompilationResultAction.AssertionOrBuilderpublic int getDependencyTargetsCount()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;getDependencyTargetsCount in interface CompilationResultAction.AssertionOrBuilderpublic Target getDependencyTargets(int index)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;getDependencyTargets in interface CompilationResultAction.AssertionOrBuilderpublic CompilationResultAction.Assertion.Builder setDependencyTargets(int index, Target value)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder setDependencyTargets(int index, Target.Builder builderForValue)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder addDependencyTargets(Target value)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder addDependencyTargets(int index, Target value)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder addDependencyTargets(Target.Builder builderForValue)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder addDependencyTargets(int index, Target.Builder builderForValue)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder addAllDependencyTargets(Iterable<? extends Target> values)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder clearDependencyTargets()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public CompilationResultAction.Assertion.Builder removeDependencyTargets(int index)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public Target.Builder getDependencyTargetsBuilder(int index)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public TargetOrBuilder getDependencyTargetsOrBuilder(int index)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;getDependencyTargetsOrBuilder in interface CompilationResultAction.AssertionOrBuilderpublic List<? extends TargetOrBuilder> getDependencyTargetsOrBuilderList()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;getDependencyTargetsOrBuilderList in interface CompilationResultAction.AssertionOrBuilderpublic Target.Builder addDependencyTargetsBuilder()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public Target.Builder addDependencyTargetsBuilder(int index)
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public List<Target.Builder> getDependencyTargetsBuilderList()
A list of actions that this action depends on.
repeated .google.cloud.dataform.v1alpha2.Target dependency_targets = 1;public boolean hasParentAction()
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;hasParentAction in interface CompilationResultAction.AssertionOrBuilderpublic Target getParentAction()
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;getParentAction in interface CompilationResultAction.AssertionOrBuilderpublic CompilationResultAction.Assertion.Builder setParentAction(Target value)
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;public CompilationResultAction.Assertion.Builder setParentAction(Target.Builder builderForValue)
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;public CompilationResultAction.Assertion.Builder mergeParentAction(Target value)
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;public CompilationResultAction.Assertion.Builder clearParentAction()
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;public Target.Builder getParentActionBuilder()
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;public TargetOrBuilder getParentActionOrBuilder()
The parent action of this assertion. Only set if this assertion was automatically generated.
.google.cloud.dataform.v1alpha2.Target parent_action = 5;getParentActionOrBuilder in interface CompilationResultAction.AssertionOrBuilderpublic boolean getDisabled()
Whether this action is disabled (i.e. should not be run).
bool disabled = 2;getDisabled in interface CompilationResultAction.AssertionOrBuilderpublic CompilationResultAction.Assertion.Builder setDisabled(boolean value)
Whether this action is disabled (i.e. should not be run).
bool disabled = 2;value - The disabled to set.public CompilationResultAction.Assertion.Builder clearDisabled()
Whether this action is disabled (i.e. should not be run).
bool disabled = 2;public com.google.protobuf.ProtocolStringList getTagsList()
Arbitrary, user-defined tags on this action.
repeated string tags = 3;getTagsList in interface CompilationResultAction.AssertionOrBuilderpublic int getTagsCount()
Arbitrary, user-defined tags on this action.
repeated string tags = 3;getTagsCount in interface CompilationResultAction.AssertionOrBuilderpublic String getTags(int index)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;getTags in interface CompilationResultAction.AssertionOrBuilderindex - The index of the element to return.public com.google.protobuf.ByteString getTagsBytes(int index)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;getTagsBytes in interface CompilationResultAction.AssertionOrBuilderindex - The index of the value to return.public CompilationResultAction.Assertion.Builder setTags(int index, String value)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;index - The index to set the value at.value - The tags to set.public CompilationResultAction.Assertion.Builder addTags(String value)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;value - The tags to add.public CompilationResultAction.Assertion.Builder addAllTags(Iterable<String> values)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;values - The tags to add.public CompilationResultAction.Assertion.Builder clearTags()
Arbitrary, user-defined tags on this action.
repeated string tags = 3;public CompilationResultAction.Assertion.Builder addTagsBytes(com.google.protobuf.ByteString value)
Arbitrary, user-defined tags on this action.
repeated string tags = 3;value - The bytes of the tags to add.public String getSelectQuery()
The SELECT query which must return zero rows in order for this assertion to succeed.
string select_query = 4;getSelectQuery in interface CompilationResultAction.AssertionOrBuilderpublic com.google.protobuf.ByteString getSelectQueryBytes()
The SELECT query which must return zero rows in order for this assertion to succeed.
string select_query = 4;getSelectQueryBytes in interface CompilationResultAction.AssertionOrBuilderpublic CompilationResultAction.Assertion.Builder setSelectQuery(String value)
The SELECT query which must return zero rows in order for this assertion to succeed.
string select_query = 4;value - The selectQuery to set.public CompilationResultAction.Assertion.Builder clearSelectQuery()
The SELECT query which must return zero rows in order for this assertion to succeed.
string select_query = 4;public CompilationResultAction.Assertion.Builder setSelectQueryBytes(com.google.protobuf.ByteString value)
The SELECT query which must return zero rows in order for this assertion to succeed.
string select_query = 4;value - The bytes for selectQuery to set.public boolean hasRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;hasRelationDescriptor in interface CompilationResultAction.AssertionOrBuilderpublic RelationDescriptor getRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;getRelationDescriptor in interface CompilationResultAction.AssertionOrBuilderpublic CompilationResultAction.Assertion.Builder setRelationDescriptor(RelationDescriptor value)
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;public CompilationResultAction.Assertion.Builder setRelationDescriptor(RelationDescriptor.Builder builderForValue)
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;public CompilationResultAction.Assertion.Builder mergeRelationDescriptor(RelationDescriptor value)
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;public CompilationResultAction.Assertion.Builder clearRelationDescriptor()
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;public RelationDescriptor.Builder getRelationDescriptorBuilder()
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;public RelationDescriptorOrBuilder getRelationDescriptorOrBuilder()
Descriptor for the assertion's automatically-generated view and its columns.
.google.cloud.dataform.v1alpha2.RelationDescriptor relation_descriptor = 6;getRelationDescriptorOrBuilder in interface CompilationResultAction.AssertionOrBuilderpublic final CompilationResultAction.Assertion.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>public final CompilationResultAction.Assertion.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CompilationResultAction.Assertion.Builder>Copyright © 2024 Google LLC. All rights reserved.