
    ZTh8                    J   d Z ddlmZ ddlmZ ddlmZ ddlm	Z
  ej                         ZddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ  ej                         jA                  d      Z! e"       Z# e
jH                  e!e#        e
jJ                  e!de#       ejL                  $sNde#d   _'        de#d   _(        de#d   jR                  d   _'        de#d   jR                  d   _(        de#d   jR                  d   _'        de#d   jR                  d   _(        de#d   jR                  d   _'        de#d   jR                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d    _'        de#d   jT                  d    _(        de#d   jT                  d!   _'        de#d   jT                  d!   _(        de#d   jT                  d"   _'        de#d   jT                  d"   _(        de#d   jT                  d#   _'        de#d   jT                  d#   _(        de#d   jT                  d$   _'        de#d   jT                  d$   _(        de#d   jT                  d%   _'        de#d   jT                  d%   _(        de#d   jT                  d&   _'        de#d   jT                  d&   _(        de#d   jT                  d'   _'        d(e#d   jT                  d'   _(        de#d   jT                  d)   _'        de#d   jT                  d)   _(        de#d   jT                  d*   _'        de#d   jT                  d*   _(        de#d   jT                  d+   _'        d(e#d   jT                  d+   _(        de#d   jT                  d,   _'        de#d   jT                  d,   _(        de#d   jT                  d-   _'        de#d   jT                  d-   _(        de#d.   jT                  d/   _'        de#d.   jT                  d/   _(        de#d.   jT                  d   _'        de#d.   jT                  d   _(        de#d.   jT                  d0   _'        de#d.   jT                  d0   _(        de#d.   jT                  d    _'        de#d.   jT                  d    _(        de#d.   jT                  d!   _'        de#d.   jT                  d!   _(        de#d.   jT                  d"   _'        de#d.   jT                  d"   _(        de#d.   jT                  d#   _'        de#d.   jT                  d#   _(        de#d.   jT                  d1   _'        de#d.   jT                  d1   _(        de#d.   jT                  d2   _'        de#d.   jT                  d2   _(        de#d3   jT                  d4   _'        de#d3   jT                  d4   _(        de#d3   jT                  d/   _'        de#d3   jT                  d/   _(        de#d3   jT                  d5   _'        de#d3   jT                  d5   _(        de#d3   jT                  d6   _'        de#d3   jT                  d6   _(        de#d3   jT                  d    _'        de#d3   jT                  d    _(        de#d3   jT                  d!   _'        de#d3   jT                  d!   _(        de#d3   jT                  d"   _'        de#d3   jT                  d"   _(        de#d3   jT                  d#   _'        de#d3   jT                  d#   _(        de#d3   jT                  d7   _'        de#d3   jT                  d7   _(        de#d8   jT                  d9   _'        de#d8   jT                  d9   _(        de#d:   jT                  d   _'        de#d:   jT                  d   _(        de#d:   jT                  d;   _'        de#d:   jT                  d;   _(        de#d:   jT                  d<   _'        d(e#d:   jT                  d<   _(        de#d:   jT                  d=   _'        d(e#d:   jT                  d=   _(        de#d>   jT                  d?   _'        de#d>   jT                  d?   _(        de#d>   jT                  d@   _'        de#d>   jT                  d@   _(        de#dA   jT                  d   _'        d(e#dA   jT                  d   _(        de#dA   jT                  d'   _'        d(e#dA   jT                  d'   _(        de#dB   jT                  dC   _'        de#dB   jT                  dC   _(        de#dD   jT                  dE   _'        d(e#dD   jT                  dE   _(        de#dD   jT                  dF   _'        d(e#dD   jT                  dF   _(        de#dG   jT                  d@   _'        de#dG   jT                  d@   _(        de#dH   jT                  dI   _'        de#dH   jT                  dI   _(        de#dJ   jT                  d   _'        de#dJ   jT                  d   _(        de#dK   jT                  d   _'        de#dK   jT                  d   _(        de#dK   jT                  d   _'        de#dK   jT                  d   _(        de#dK   jT                  d   _'        dLe#dK   jT                  d   _(        de#dK   jT                  d   _'        dLe#dK   jT                  d   _(        de#dK   jT                  d%   _'        de#dK   jT                  d%   _(        de#dK   jT                  d-   _'        de#dK   jT                  d-   _(        de#dM   jT                  d0   _'        de#dM   jT                  d0   _(        de#dM   jT                  d1   _'        de#dM   jT                  d1   _(        de#dN   jT                  d5   _'        de#dN   jT                  d5   _(        de#dN   jT                  d6   _'        de#dN   jT                  d6   _(        de#dO   jT                  d   _'        de#dO   jT                  d   _(        de#dP   jT                  d   _'        d(e#dP   jT                  d   _(        de#dP   jT                  d'   _'        d(e#dP   jT                  d'   _(        de#dP   jT                  dQ   _'        de#dP   jT                  dQ   _(        de#dP   jT                  d=   _'        d(e#dP   jT                  d=   _(        de#dR   jT                  d@   _'        de#dR   jT                  d@   _(        de#dR   jT                  dS   _'        d(e#dR   jT                  dS   _(        de#dR   jT                  dT   _'        de#dR   jT                  dT   _(        de#dU   jT                  d   _'        de#dU   jT                  d   _(        de#dU   jT                  d   _'        de#dU   jT                  d   _(        de#dU   jT                  d'   _'        d(e#dU   jT                  d'   _(        de#dV   jT                  dW   _'        de#dV   jT                  dW   _(        de#dV   jT                  dX   _'        de#dV   jT                  dX   _(        de#dV   jT                  dY   _'        de#dV   jT                  dY   _(        de#dV   jT                  dS   _'        de#dV   jT                  dS   _(        de#dV   jT                  dZ   _'        de#dV   jT                  dZ   _(        de#dV   jT                  d[   _'        de#dV   jT                  d[   _(        de#d\   jT                  d   _'        d(e#d\   jT                  d   _(        de#d\   jT                  d'   _'        d(e#d\   jT                  d'   _(        de#d]   jT                  dE   _'        d(e#d]   jT                  dE   _(        de#d]   jT                  dF   _'        d(e#d]   jT                  dF   _(        de#d^   jT                  d   _'        d(e#d^   jT                  d   _(        de#d^   jT                  d'   _'        d(e#d^   jT                  d'   _(        de#d_   jT                  dE   _'        d(e#d_   jT                  dE   _(        de#d_   jT                  dF   _'        d(e#d_   jT                  dF   _(        de#d`   jT                  d   _'        de#d`   jT                  d   _(        de#d`   _'        dae#d`   _(        de#db   jT                  dc   _'        de#db   jT                  dc   _(        de#db   _'        dae#db   _(        de#dd   jT                  d   _'        de#dd   jT                  d   _(        de#dd   jT                  dc   _'        de#dd   jT                  dc   _(        de#dd   jT                  d$   _'        de#dd   jT                  d$   _(        de#dd   _'        dae#dd   _(        de#de   jT                  dW   _'        de#de   jT                  dW   _(        de#de   jT                  df   _'        de#de   jT                  df   _(        de#de   jT                  dg   _'        de#de   jT                  dg   _(        de#de   _'        dae#de   _(        de#dh   jT                  d   _'        de#dh   jT                  d   _(        de#di   jT                  dc   _'        de#di   jT                  dc   _(        de#dj   jT                  d   _'        de#dj   jT                  d   _(        de#dj   jT                  dc   _'        de#dj   jT                  dc   _(        de#dj   jT                  d$   _'        de#dj   jT                  d$   _(        de#dk   jT                  dW   _'        de#dk   jT                  dW   _(        de#dk   jT                  dl   _'        de#dk   jT                  dl   _(        de#dk   jT                  dX   _'        de#dk   jT                  dX   _(        de#dk   jT                  dY   _'        de#dk   jT                  dY   _(        de#dk   jT                  dm   _'        de#dk   jT                  dm   _(        de#dn   jT                  do   _'        de#dn   jT                  do   _(        de#dp   jT                  dq   _'        de#dp   jT                  dq   _(        de#dr   jT                  do   _'        de#dr   jT                  do   _(        de#ds   jT                  dq   _'        de#ds   jT                  dq   _(        de#dt   jT                  du   _'        d(e#dt   jT                  du   _(        de#dt   jT                  dv   _'        d(e#dt   jT                  dv   _(        de#dt   jT                  dw   _'        d(e#dt   jT                  dw   _(        de#dt   jT                  dx   _'        d(e#dt   jT                  dx   _(        de#dy   jT                  d@   _'        de#dy   jT                  d@   _(        de#dz   jT                  d   _'        de#dz   jT                  d   _(        de#dz   jT                  du   _'        d(e#dz   jT                  du   _(        de#dz   jT                  dv   _'        d(e#dz   jT                  dv   _(        de#d{   jT                  d   _'        de#d{   jT                  d   _(        de#d{   jT                  d|   _'        de#d{   jT                  d|   _(        de#d{   jT                  d}   _'        de#d{   jT                  d}   _(        de#d{   jT                  d    _'        de#d{   jT                  d    _(        de#d{   jT                  d"   _'        de#d{   jT                  d"   _(        de#d{   jT                  d~   _'        de#d{   jT                  d~   _(        de#d{   jT                  d   _'        de#d{   jT                  d   _(        de#d{   jT                  d+   _'        d(e#d{   jT                  d+   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d|   _'        de#d   jT                  d|   _(        de#d   jT                  dC   _'        de#d   jT                  dC   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d@   _'        de#d   jT                  d@   _(        de#d   jT                  d   _'        dae#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   _'        de#d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d0   _'        de#d   jT                  d0   _(        de#d   jT                  d   _'        d(e#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  dE   _'        de#d   jT                  dE   _(        de#d   _'        dae#d   _(        de#d   _'        dae#d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   jT                  d   _'        de#d   jT                  d   _(        de#d   _'        de#d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   jV                  d   _'        de#d   jV                  d   _(        de#d   _,        de#d   _-        de#d   _,        de#d   _-        de#d   _,        de#d   _-        de#d   _,        de#d   _-        de#d.   _,        de#d.   _-        de#d3   _,        de#d3   _-        de#d   _,        de#d   _-        de#d8   _,        de#d8   _-        de#d:   _,        de#d:   _-        de#d   _,        de#d   _-        de#d>   _,        de#d>   _-        de#dA   _,        de#dA   _-        de#dB   _,        de#dB   _-        de#dD   _,        de#dD   _-        de#dG   _,        de#dG   _-        de#dH   _,        de#dH   _-        de#dJ   _,        de#dJ   _-        de#dK   _,        de#dK   _-        de#dM   _,        de#dM   _-        de#dN   _,        de#dN   _-        de#dO   _,        de#dO   _-        de#dP   _,        de#dP   _-        de#dR   _,        de#dR   _-        de#dV   _,        de#dV   _-        de#dU   _,        de#dU   _-        de#d\   _,        de#d\   _-        de#d   _,        de#d   _-        de#d]   _,        d e#d]   _-        de#d   _,        de#d   _-        de#d^   _,        de#d^   _-        de#d   _,        de#d   _-        d	e#d_   _,        d
e#d_   _-        de#d   _,        de#d   _-        de#d`   _,        de#d`   _-        de#db   _,        de#db   _-        de#dd   _,        de#dd   _-        de#de   _,        de#de   _-        de#dh   _,        de#dh   _-        de#di   _,        de#di   _-        de#dj   _,        de#dj   _-        de#dk   _,        de#dk   _-        de#dn   _,        de#dn   _-        d e#dp   _,        d!e#dp   _-        d"e#dr   _,        d#e#dr   _-        d$e#ds   _,        d%e#ds   _-        d&e#dt   _,        d'e#dt   _-        d(e#dy   _,        d)e#dy   _-        d*e#dz   _,        d+e#dz   _-        d,e#d{   _,        d-e#d{   _-        d.e#d   _,        d/e#d   _-        d0e#d   _,        d1e#d   _-        d2e#d   _,        d3e#d   _-        d4e#d   _,        d5e#d   _-        d6e#d   _,        d7e#d   _-        d8e#d   _,        d9e#d   _-        d:e#d   _,        d;e#d   _-        d<e#d=   _,        d>e#d=   _-        d?e#d   _,        d@e#d   _-        dAe#d   _,        d@e#d   _-        dBe#d   _,        dCe#d   _-        dDe#dE   _,        dFe#dE   _-        dGe#d   _,        dHe#d   _-        dIe#d   _,        dJe#d   _-        dKe#d   _,        dLe#d   _-        dMe#dN   _,        dOe#dN   _-        dPe#dQ   _,        dRe#dQ   _-        dSe#d   _,        dTe#d   _-        dUe#d   _,        dVe#d   _-        dWe#d   _,        dXe#d   _-        yy(Y  zGenerated protocol buffer code.    )
descriptor)descriptor_pool)symbol_database)builder)annotations_pb2)field_behavior_pb2)timestamp_pb2)resource_identifier_pb2)user_defined_functions_pb2)metadata_pb2sA@  
sift/rules/v1/rules.protosift.rules.v1google/api/annotations.protogoogle/api/field_behavior.protogoogle/protobuf/timestamp.proto.protoc-gen-openapiv2/options/annotations.proto%sift/annotations/v1/annotations.proto-sift/common/type/v1/resource_identifier.proto0sift/common/type/v1/user_defined_functions.protosift/metadata/v1/metadata.proto"
Rule
rule_id (	BARruleId 
asset_id (	BARassetId
name (	BARname%
description (	BARdescription"

is_enabled (BAR	isEnabledB
created_date (2.google.protobuf.TimestampBARcreatedDateD
modified_date (2.google.protobuf.TimestampBARmodifiedDate0
created_by_user_id	 (	BARcreatedByUserId2
modified_by_user_id
 (	BARmodifiedByUserId,
organization_id (	BARorganizationIdA

conditions (2.sift.rules.v1.RuleConditionBAR
conditionsB
rule_version (2.sift.rules.v1.RuleVersionBARruleVersion"

client_key (	BAR	clientKey[
asset_configuration (2%.sift.rules.v1.RuleAssetConfigurationBARassetConfigurationW
contextual_channels (2!.sift.rules.v1.ContextualChannelsBARcontextualChannelsB
deleted_date (2.google.protobuf.TimestampBARdeletedDate$
is_external (BAR
isExternal@
metadata (2.sift.metadata.v1.MetadataValueBARmetadataJ"
RuleCondition/
rule_condition_id (	BARruleConditionId
rule_id (	BARruleIdK

expression (2&.sift.rules.v1.RuleConditionExpressionBAR
expressionB
created_date (2.google.protobuf.TimestampBARcreatedDateD
modified_date (2.google.protobuf.TimestampBARmodifiedDate0
created_by_user_id (	BARcreatedByUserId2
modified_by_user_id (	BARmodifiedByUserId8
actions	 (2.sift.rules.v1.RuleActionBARactions>
rule_condition_version_id
 (	BARruleConditionVersionIdJ"

RuleAction)
rule_action_id (	BARruleActionId/
rule_condition_id (	BARruleConditionId?
action_type (2.sift.rules.v1.ActionKindBAR
actionTypeQ
configuration (2&.sift.rules.v1.RuleActionConfigurationBARconfigurationB
created_date (2.google.protobuf.TimestampBARcreatedDateD
modified_date (2.google.protobuf.TimestampBARmodifiedDate0
created_by_user_id (	BARcreatedByUserId2
modified_by_user_id (	BARmodifiedByUserId8
rule_action_version_id	 (	BARruleActionVersionId"N
RuleAssetConfiguration
	asset_ids (	RassetIds
tag_ids (	RtagIds"V
ContextualChannels@
channels (2.sift.rules.v1.ChannelReferenceBARchannels"
AssetExpressionValidationResult
asset_id (	BARassetId"

asset_name (	BAR	assetName%
asset_tag_id (	BAR
assetTagId
error (	BAH RerrorB
_error"
SearchRulesRequest
limit (H Rlimit
offset (Roffset5
order (2.sift.rules.v1.SearchOrderHRorder!
name_matches (	RnameMatches%
case_sensitive (RcaseSensitive
regexp (Rregexp
order_by (	HRorderBy
rule_ids (	RruleIds
	asset_ids	 (	RassetIds'
include_deleted
 (RincludeDeletedB

asset_tags (2#.sift.common.type.v1.NamedResourcesR	assetTagsB
_limitB
_orderB
	_order_by"`
SearchRulesResponse
count (BARcount.
rules (2.sift.rules.v1.RuleBARrules"R
GetRuleRequest
rule_id (	BARruleId"

client_key (	BAR	clientKey"?
GetRuleResponse,
rule (2.sift.rules.v1.RuleBARrule"\
BatchGetRulesRequest
rule_ids (	BARruleIds$
client_keys (	BAR
clientKeys"G
BatchGetRulesResponse.
rules (2.sift.rules.v1.RuleBARrules"R
CreateRuleRequest=
update (2 .sift.rules.v1.UpdateRuleRequestBARupdate"2
CreateRuleResponse
rule_id (	BARruleId"
UpdateRuleRequest
rule_id (	H RruleId
name (	BARname%
description (	BARdescription 
asset_id (	BARassetId$

is_enabled (BAR	isEnabledJ

conditions (2%.sift.rules.v1.UpdateConditionRequestBAR
conditions'
organization_id (	RorganizationId#
version_notes (	RversionNotes"

client_key	 (	HR	clientKeyV
asset_configuration
 (2%.sift.rules.v1.RuleAssetConfigurationRassetConfigurationR
contextual_channels (2!.sift.rules.v1.ContextualChannelsRcontextualChannels
is_external (R
isExternal@
metadata (2.sift.metadata.v1.MetadataValueBARmetadataB

_rule_idB
_client_key"
UpdateConditionRequest/
rule_condition_id (	H RruleConditionIdK

expression (2&.sift.rules.v1.RuleConditionExpressionBAR
expressionA
actions (2".sift.rules.v1.UpdateActionRequestBARactionsB
_rule_condition_idJ"
UpdateActionRequest)
rule_action_id (	H RruleActionId?
action_type (2.sift.rules.v1.ActionKindBAR
actionTypeQ
configuration (2&.sift.rules.v1.RuleActionConfigurationBARconfigurationB
_rule_action_id"2
UpdateRuleResponse
rule_id (	BARruleId"
ValidationResult
rule_id (	BARruleId"

client_key (	BAR	clientKey
#asset_expression_validation_results (2..sift.rules.v1.AssetExpressionValidationResultBAR assetExpressionValidationResults
error (	BAH RerrorB
_error"
BatchUpdateRulesRequest;
rules (2 .sift.rules.v1.UpdateRuleRequestBARrules(
validate_only (BARvalidateOnlyI
override_expression_validation (BARoverrideExpressionValidation"
BatchUpdateRulesResponse
success (BARsuccess3
rules_created_count (BARrulesCreatedCount3
rules_updated_count (BARrulesUpdatedCount(
validate_only (BARvalidateOnlyS
validation_results (2.sift.rules.v1.ValidationResultBARvalidationResultsv
created_rule_identifiers (27.sift.rules.v1.BatchUpdateRulesResponse.RuleIdentifiersBARcreatedRuleIdentifiers
RuleIdentifiers
rule_id (	BARruleId
name (	BARname'

client_key (	BAH R	clientKeyB
_client_key"U
DeleteRuleRequest
rule_id (	BARruleId"

client_key (	BAR	clientKey"
DeleteRuleResponse"_
BatchDeleteRulesRequest
rule_ids (	BARruleIds$
client_keys (	BAR
clientKeys"
BatchDeleteRulesResponse"W
UndeleteRuleRequest
rule_id (	BARruleId"

client_key (	BAR	clientKey"
UndeleteRuleResponse"a
BatchUndeleteRulesRequest
rule_ids (	BARruleIds$
client_keys (	BAR
clientKeys"
BatchUndeleteRulesResponse"C
ViewHumanFriendlyRulesRequest
asset_id (	BARassetId:"H
ViewHumanFriendlyRulesResponse"

rules_json (	BAR	rulesJson:"
UpdateHumanFriendlyRulesRequest
asset_id (	BARassetId"

rules_json (	BAR	rulesJson,
organization_id (	BARorganizationId:"
 UpdateHumanFriendlyRulesResponse
success (BARsuccess$
rules_count (BAR
rulesCount
messages (	BARmessages:"6
ViewJsonRulesRequest
asset_id (	BARassetId";
ViewJsonRulesResponse"

rules_json (	BAR	rulesJson"
JsonRulesRequest
asset_id (	BARassetId"

rules_json (	BAR	rulesJson,
organization_id (	BARorganizationId"
JsonRulesResponse
success (BARsuccess/
total_rules_count (BARtotalRulesCount3
rules_created_count (BARrulesCreatedCount3
rules_updated_count (BARrulesUpdatedCount3
rules_deleted_count (BARrulesDeletedCount*
error_messages (	H RerrorMessagesB
_error_messages"Z
ValidateJsonRulesRequest>
request (2.sift.rules.v1.JsonRulesRequestBARrequest"^
ValidateJsonRulesResponseA
response (2 .sift.rules.v1.JsonRulesResponseBARresponse"X
UpdateJsonRulesRequest>
request (2.sift.rules.v1.JsonRulesRequestBARrequest"\
UpdateJsonRulesResponseA
response (2 .sift.rules.v1.JsonRulesResponseBARresponse"
ListRulesRequest 
	page_size (BARpageSize"

page_token (	BAR	pageToken
filter (	BARfilter
order_by (	BARorderBy"k
ListRulesResponse.
rules (2.sift.rules.v1.RuleBARrules&
next_page_token (	RnextPageToken"
ListRuleVersionsRequest
rule_id (	BARruleId 
	page_size (BARpageSize"

page_token (	BAR	pageToken
filter (	Rfilter"
RuleVersion
rule_id (	BARruleId+
rule_version_id (	BARruleVersionId
version (	BARversionB
created_date (2.google.protobuf.TimestampBARcreatedDate0
created_by_user_id (	BARcreatedByUserId(
version_notes (	BARversionNotes=
generated_change_message (	BARgeneratedChangeMessageB
deleted_date (2.google.protobuf.TimestampBARdeletedDate"
ListRuleVersionsResponseD
rule_versions (2.sift.rules.v1.RuleVersionBARruleVersions&
next_page_token (	RnextPageToken"D
GetRuleVersionRequest+
rule_version_id (	BARruleVersionId"F
GetRuleVersionResponse,
rule (2.sift.rules.v1.RuleBARrule"L
BatchGetRuleVersionsRequest-
rule_version_ids (	BARruleVersionIds"N
BatchGetRuleVersionsResponse.
rules (2.sift.rules.v1.RuleBARrules"
RuleConditionExpressionr
single_channel_comparison (20.sift.rules.v1.SingleChannelComparisonExpressionBH RsingleChannelComparisonW
calculated_channel (2&.sift.rules.v1.CalculatedChannelConfigH RcalculatedChannelB

expression"
!SingleChannelComparisonExpression0
channel_component (	BARchannelComponent&
channel_name (	BARchannelNameG

comparator (2".sift.rules.v1.ConditionComparatorBAR
comparator
double (H Rdouble
string (	H RstringB

last_value (2!.sift.rules.v1.LastValueThresholdH R	lastValueB
	threshold"
LastValueThreshold"
CalculatedChannelConfigq
channel_references (2=.sift.rules.v1.CalculatedChannelConfig.ChannelReferencesEntryBARchannelReferences#

expression (	BAR
expressiona
function_dependencies (2'.sift.common.type.v1.FunctionDependencyBARfunctionDependenciese
ChannelReferencesEntry
key (	Rkey5
value (2.sift.rules.v1.ChannelReferenceRvalue:8"N
ChannelReference
name (	BARname!
	component (	BAR	component"
RuleActionConfigurationT
notification (2..sift.rules.v1.NotificationActionConfigurationH RnotificationN

annotation (2,.sift.rules.v1.AnnotationActionConfigurationH R
annotationB
configuration"T
NotificationActionConfiguration1
recipient_user_ids (	BARrecipientUserIds"
AnnotationActionConfiguration
tag_ids (	BARtagIdsL
annotation_type (2#.sift.annotations.v1.AnnotationTypeRannotationType2
assigned_to_user_id (	H RassignedToUserId;
metadata (2.sift.metadata.v1.MetadataValueRmetadataB
_assigned_to_user_id"
EvaluateRulesRequest
rule_ids (	BARruleIdsX
annotation_options (2).sift.rules.v1.EvaluatedAnnotationOptionsRannotationOptions
run_id (	H RrunId>

time_range (2.sift.rules.v1.TimeRangeQueryH R	timeRange
dry_run (RdryRun:B
time"5
EvaluatedAnnotationOptions
tag_ids (	RtagIds"
TimeRangeQuery9

start_time (2.google.protobuf.TimestampR	startTime5
end_time (2.google.protobuf.TimestampRendTime"
EvaluateRulesResponse8
created_annotation_count (RcreatedAnnotationCountO
dry_run_annotations (2.sift.rules.v1.DryRunAnnotationRdryRunAnnotations
job_id (	H RjobId 
	report_id (	HRreportId:B	
_job_idB

_report_id"
DryRunAnnotation!
condition_id (	RconditionId
name (	Rname>

start_time (2.google.protobuf.TimestampBAR	startTime:
end_time (2.google.protobuf.TimestampBARendTime0
condition_version_id (	RconditionVersionId*\
SearchOrder 
SEARCH_ORDER_UNSPECIFIED 
SEARCH_ORDER_ASC
SEARCH_ORDER_DESC*\

ActionKind
ACTION_KIND_UNSPECIFIED 
NOTIFICATION

ANNOTATION
WEBHOOK*
ConditionComparator(
 CONDITION_COMPARATOR_UNSPECIFIED 
	LESS_THAN
LESS_THAN_OR_EQUAL
GREATER_THAN
GREATER_THAN_OR_EQUAL	
EQUAL
	NOT_EQUAL2 
RuleService
SearchRules!.sift.rules.v1.SearchRulesRequest".sift.rules.v1.SearchRulesResponse"cAASearchRules2Queries rules based on provided search parameters."/api/v1/rules/search:*
GetRule.sift.rules.v1.GetRuleRequest.sift.rules.v1.GetRuleResponse"JA2GetRule'Retrieves the latest version of a rule./api/v1/rules
BatchGetRules#.sift.rules.v1.BatchGetRulesRequest$.sift.rules.v1.BatchGetRulesResponse"NA*BatchGetRulesRetrieves multiple rules."/api/v1/rules:batchGet:*

CreateRule .sift.rules.v1.CreateRuleRequest!.sift.rules.v1.CreateRuleResponse"8A
CreateRuleCreates a rule."/api/v1/rules:*

UpdateRule .sift.rules.v1.UpdateRuleRequest!.sift.rules.v1.UpdateRuleResponse"BA'
UpdateRuleUpdates an existing rule./api/v1/rules:*
BatchUpdateRules&.sift.rules.v1.BatchUpdateRulesRequest'.sift.rules.v1.BatchUpdateRulesResponse"uANBatchUpdateRules:Updates existing rules or creates rules that do not exist./api/v1/rules:batchUpdate:*

DeleteRule .sift.rules.v1.DeleteRuleRequest!.sift.rules.v1.DeleteRuleResponse"?A
DeleteRuleDeletes a rule."/api/v1/rules/delete:*
BatchDeleteRules&.sift.rules.v1.BatchDeleteRulesRequest'.sift.rules.v1.BatchDeleteRulesResponse"RA+BatchDeleteRulesDeletes multiple rules."/api/v1/rules/batchDelete:*
UndeleteRule".sift.rules.v1.UndeleteRuleRequest#.sift.rules.v1.UndeleteRuleResponse"EA!UndeleteRuleUndeletes a rule."/api/v1/rules/undelete:*
BatchUndeleteRules(.sift.rules.v1.BatchUndeleteRulesRequest).sift.rules.v1.BatchUndeleteRulesResponse"XA/BatchUndeleteRulesUndeletes multiple rules. "/api/v1/rules/batchUndelete:*
EvaluateRules#.sift.rules.v1.EvaluateRulesRequest$.sift.rules.v1.EvaluateRulesResponse"A[EvaluateRulesJEvaluates the provided rules and generate annotations based on the result."/api/v1/rules/evaluate:*
ViewHumanFriendlyRules,.sift.rules.v1.ViewHumanFriendlyRulesRequest-.sift.rules.v1.ViewHumanFriendlyRulesResponse"A_ViewHumanFriendlyRulesERetrieve a JSON object containing all of the rules for a given asset.!/api/v1/rules:viewHumanFriendly
ViewJsonRules#.sift.rules.v1.ViewJsonRulesRequest$.sift.rules.v1.ViewJsonRulesResponse"zAVViewJsonRulesERetrieve a JSON object containing all of the rules for a given asset./api/v1/rules:viewJson
UpdateHumanFriendlyRules..sift.rules.v1.UpdateHumanFriendlyRulesRequest/.sift.rules.v1.UpdateHumanFriendlyRulesResponse"AdUpdateHumanFriendlyRulesHBatch update rules given the `rules_json` which is a JSON list of rules.&"!/api/v1/rules:updateHumanFriendly:*
ValidateJsonRules'.sift.rules.v1.ValidateJsonRulesRequest(.sift.rules.v1.ValidateJsonRulesResponse"AlValidateJsonRulesWValidate a batch update for rules given the `rules_json` which is a JSON list of rules."/api/v1/rules:validateJson:*
UpdateJsonRules%.sift.rules.v1.UpdateJsonRulesRequest&.sift.rules.v1.UpdateJsonRulesResponse"A[UpdateJsonRulesHBatch update rules given the `rules_json` which is a JSON list of rules."/api/v1/rules:updateJson:*
	ListRules.sift.rules.v1.ListRulesRequest .sift.rules.v1.ListRulesResponse"DA'	ListRulesRetrieves a list of rules./api/v1/rules:list
ListRuleVersions&.sift.rules.v1.ListRuleVersionsRequest'.sift.rules.v1.ListRuleVersionsResponse"tAIListRuleVersions5Retrieves a list of rule versions for the given rule." /api/v1/rules/{rule_id}/versions
GetRuleVersion$.sift.rules.v1.GetRuleVersionRequest%.sift.rules.v1.GetRuleVersionResponse"YA9GetRuleVersion'Retrieves a specific version of a rule./api/v1/rules:version
BatchGetRuleVersions*.sift.rules.v1.BatchGetRuleVersionsRequest+.sift.rules.v1.BatchGetRuleVersionsResponse"nABBatchGetRuleVersions*Retrieves multiple rules by rule versions.#"/api/v1/rules:batchGetVersions:*A0Service to programmatically interact with rules.y
Read more about what rules are.Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421102B
com.sift.rules.v1B
RulesProtoPSRXSift.Rules.V1Sift\Rules\V1Sift\Rules\V1\GPBMetadataSift::Rules::V1A
Rule Servicebproto3zsift.rules.v1.rules_pb2N
DESCRIPTORs   
com.sift.rules.v1B
RulesProtoPSRXSift.Rules.V1Sift\Rules\V1Sift\Rules\V1\GPBMetadataSift::Rules::V1A
Rule Service_SEARCHORDERSEARCH_ORDER_UNSPECIFIEDs   _ACTIONKINDACTION_KIND_UNSPECIFIED_CONDITIONCOMPARATOR CONDITION_COMPARATOR_UNSPECIFIED_RULErule_ids   Aasset_ids   Anamedescription
is_enabledcreated_datemodified_datecreated_by_user_idmodified_by_user_idorganization_id
conditionsrule_version
client_keys   Aasset_configurationcontextual_channelsdeleted_dateis_externalmetadata_RULECONDITIONrule_condition_id
expressionactionsrule_condition_version_id_RULEACTIONrule_action_idaction_typeconfigurationrule_action_version_id_CONTEXTUALCHANNELSchannels _ASSETEXPRESSIONVALIDATIONRESULT
asset_nameasset_tag_iderror_SEARCHRULESRESPONSEcountrules_GETRULEREQUEST_GETRULERESPONSErule_BATCHGETRULESREQUESTrule_idsclient_keys_BATCHGETRULESRESPONSE_CREATERULEREQUESTupdate_CREATERULERESPONSE_UPDATERULEREQUESTs   A_UPDATECONDITIONREQUEST_UPDATEACTIONREQUEST_UPDATERULERESPONSE_VALIDATIONRESULT#asset_expression_validation_results_BATCHUPDATERULESREQUESTvalidate_onlyoverride_expression_validation)_BATCHUPDATERULESRESPONSE_RULEIDENTIFIERS_BATCHUPDATERULESRESPONSEsuccessrules_created_countrules_updated_countvalidation_resultscreated_rule_identifiers_DELETERULEREQUEST_BATCHDELETERULESREQUEST_UNDELETERULEREQUEST_BATCHUNDELETERULESREQUEST_VIEWHUMANFRIENDLYRULESREQUESTs   _VIEWHUMANFRIENDLYRULESRESPONSE
rules_json _UPDATEHUMANFRIENDLYRULESREQUEST!_UPDATEHUMANFRIENDLYRULESRESPONSErules_countmessages_VIEWJSONRULESREQUEST_VIEWJSONRULESRESPONSE_JSONRULESREQUEST_JSONRULESRESPONSEtotal_rules_countrules_deleted_count_VALIDATEJSONRULESREQUESTrequest_VALIDATEJSONRULESRESPONSEresponse_UPDATEJSONRULESREQUEST_UPDATEJSONRULESRESPONSE_LISTRULESREQUEST	page_size
page_tokenfilterorder_by_LISTRULESRESPONSE_LISTRULEVERSIONSREQUEST_RULEVERSIONrule_version_idversionversion_notesgenerated_change_message_LISTRULEVERSIONSRESPONSErule_versions_GETRULEVERSIONREQUEST_GETRULEVERSIONRESPONSE_BATCHGETRULEVERSIONSREQUESTrule_version_ids_BATCHGETRULEVERSIONSRESPONSE_RULECONDITIONEXPRESSIONsingle_channel_comparison"_SINGLECHANNELCOMPARISONEXPRESSIONchannel_componentchannel_name
comparator/_CALCULATEDCHANNELCONFIG_CHANNELREFERENCESENTRYs   8_CALCULATEDCHANNELCONFIGchannel_referencesfunction_dependencies_CHANNELREFERENCE	component _NOTIFICATIONACTIONCONFIGURATIONrecipient_user_ids_ANNOTATIONACTIONCONFIGURATIONtag_ids_EVALUATERULESREQUEST_EVALUATERULESRESPONSE_DRYRUNANNOTATION
start_timeend_time_RULESERVICEs   A0Service to programmatically interact with rules.y
Read more about what rules are.Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421102SearchRulessc   AASearchRules2Queries rules based on provided search parameters."/api/v1/rules/search:*GetRulesJ   A2GetRule'Retrieves the latest version of a rule./api/v1/rulesBatchGetRulessN   A*BatchGetRulesRetrieves multiple rules."/api/v1/rules:batchGet:*
CreateRules8   A
CreateRuleCreates a rule."/api/v1/rules:*
UpdateRulesB   A'
UpdateRuleUpdates an existing rule./api/v1/rules:*BatchUpdateRulessu   ANBatchUpdateRules:Updates existing rules or creates rules that do not exist./api/v1/rules:batchUpdate:*
DeleteRules?   A
DeleteRuleDeletes a rule."/api/v1/rules/delete:*BatchDeleteRulessR   A+BatchDeleteRulesDeletes multiple rules."/api/v1/rules/batchDelete:*UndeleteRulesE   A!UndeleteRuleUndeletes a rule."/api/v1/rules/undelete:*BatchUndeleteRulessX   A/BatchUndeleteRulesUndeletes multiple rules. "/api/v1/rules/batchUndelete:*EvaluateRuless   A[EvaluateRulesJEvaluates the provided rules and generate annotations based on the result."/api/v1/rules/evaluate:*ViewHumanFriendlyRuless   A_ViewHumanFriendlyRulesERetrieve a JSON object containing all of the rules for a given asset.!/api/v1/rules:viewHumanFriendlyViewJsonRulessz   AVViewJsonRulesERetrieve a JSON object containing all of the rules for a given asset./api/v1/rules:viewJsonUpdateHumanFriendlyRuless   AdUpdateHumanFriendlyRulesHBatch update rules given the `rules_json` which is a JSON list of rules.&"!/api/v1/rules:updateHumanFriendly:*ValidateJsonRuless   AlValidateJsonRulesWValidate a batch update for rules given the `rules_json` which is a JSON list of rules."/api/v1/rules:validateJson:*UpdateJsonRuless   A[UpdateJsonRulesHBatch update rules given the `rules_json` which is a JSON list of rules."/api/v1/rules:updateJson:*	ListRulessD   A'	ListRulesRetrieves a list of rules./api/v1/rules:listListRuleVersionsst   AIListRuleVersions5Retrieves a list of rule versions for the given rule." /api/v1/rules/{rule_id}/versionsGetRuleVersionsY   A9GetRuleVersion'Retrieves a specific version of a rule./api/v1/rules:versionBatchGetRuleVersionssn   ABBatchGetRuleVersions*Retrieves multiple rules by rule versions.#"/api/v1/rules:batchGetVersions:*i-  iM.  iO.  i.  i.  i[/  if  iA  iD  i_  ib  i	  i	  _RULEASSETCONFIGURATIONi	  i	  i0
  i3
  i
  i
  _SEARCHRULESREQUESTi  i  i  i  ih  ij  i  i  i  i	  iP  iR  i  i  i  i  i|  i  it  iw  i^  i`  i  i  i  i  if  ii  i  i  i  i  i  _DELETERULERESPONSEi  i  iT  iV  _BATCHDELETERULESRESPONSEip  ir  i  i  _UNDELETERULERESPONSEi  i  iD  iF  _BATCHUNDELETERULESRESPONSEib  id  i  i  i  i  i  i  i  i  iR  iT  i  i  i  i  iZ  i\  i  i  i  i  ip  ir  i  i  if  ih  i  i  ik   in   i"  i"  i"  i"  i"  i"  i!#  i##  io#  iq#  i#  i#  i$  i$  i&  i&  _LASTVALUETHRESHOLDi&  i&  i'  i3'  i'  i'  i'  _RULEACTIONCONFIGURATIONi(  i(  i)  i)  i(*  i+*  i9+  i;+  _EVALUATEDANNOTATIONOPTIONSip+  is+  _TIMERANGEQUERYi+  i+  i,  i,  i-  i^/  i?  ).__doc__google.protobufr   _descriptorr   _descriptor_poolr   _symbol_databasegoogle.protobuf.internalr   _builderDefault_sym_db
google.apir   #google_dot_api_dot_annotations__pb2r   'google_dot_api_dot_field__behavior__pb2r	   &google_dot_protobuf_dot_timestamp__pb2protoc_gen_openapiv2.options7protoc__gen__openapiv2_dot_options_dot_annotations__pb2sift.annotations.v10sift_dot_annotations_dot_v1_dot_annotations__pb2sift.common.type.v1r
   =sift_dot_common_dot_type_dot_v1_dot_resource__identifier__pb2r   Asift_dot_common_dot_type_dot_v1_dot_user__defined__functions__pb2sift.metadata.v1r   *sift_dot_metadata_dot_v1_dot_metadata__pb2AddSerializedFiler   globals_globalsBuildMessageAndEnumDescriptorsBuildTopDescriptorsAndMessages_USE_C_DESCRIPTORS_loaded_options_serialized_optionsvalues_by_namefields_by_namemethods_by_name_serialized_start_serialized_end     \/home/www/backend.miabetepe.com/venv/lib/python3.12/site-packages/sift/rules/v1/rules_pb2.py<module>r      s)  
 & 5 ? ? 8 #

"
"
$ N T S s c x  W &%%'99  ;AV  BV
9 ' ' '
H = ' ' '
4Mx X%%+/(<( 0A(<,X\(>))*DEU\g(>))*DEYVZ(=(()BCSZe(=(()BCWhl(!"112TUelw(!"112TUi@D(7""9-=DP(7""9-AAE(7"":.>EY(7"":.B=A(7""6*:AM(7""6*>DH(7""=1AHT(7""=1ECG(7""<0@GS(7""<0DEI(7"">2BIU(7"">2FFJ(7""?3CJV(7""?3GKO(7""#78HO[(7""#78LLP(7""#89IP\(7""#89MHL(7""#45ELX(7""#45ICG(7""<0@GS(7""<0DEI(7"">2BIU(7"">2FCG(7""<0@GS(7""<0DLP(7""#89IP\(7""#89MLP(7""#89IP\(7""#89MEI(7"">2BIU(7"">2FDH(7""=1AHT(7""=1EAE(7"":.>EQ(7"":.BSW(++,?@PWc(++,?@TIM(++I6FMY(++I6JLP(++L9IP\(++L9MNR(++N;KR^(++N;OOS(++O<LS_(++O<PTX(++,@AQXd(++,@AUUY(++,ABRYe(++,ABVIM(++I6FMY(++I6J[_(++,GHX_k(++,GH\MQ(=(()9:JQ](=(()9:NPT(=(()<=MT`(=(()<=QJN(=((7GNZ(=((7KLP(=((9IP\(=((9MKO(=((8HO[(=((8LLP(=((9IP\(=((9MQU(=(()=>NUa(=(()=>RRV(=(()>?OVb(=(()>?SUY(=(()ABRYe(=(()ABVOS( !00<LS_( !00<P\`(-.==jIY`l(-.==jI]^b(-.==lK[bn(-.==lK_`d(-.==nM]dp(-.==nMaY](-.==gFV]i(-.==gFZMQ(!"11':JQ](!"11':NMQ(!"11':JQ](!"11':NJN(,,Y7GNZ(,,Y7KMQ(,,\:JQ](,,\:NHL(--f5ELX(--f5IQU("#22:>NUa("#22:>RTX("#22=AQXd("#22=AUOS(#$33G<LS_(#$33G<PLP( //9IP\( //9MNR( !00;KR^( !00;OJN( //7GNZ( //7KQU( //>NUa( //>RNR( //
;KRf( //
;OPT( //=MTh( //=QPT( //=MT`( //=QNR( //
;KR^( //
;OUY($%44\BRYe($%44\BVRV($%44Y?OVb($%44Y?SSW(!"11-@PWc(!"11-@TUY(!"11/BRYe(!"11/BVNR( !00;KR^( !00;OLP(..y9IP\(..y9MOS(..|<LS_(..|<Phl(../TUelx(../TUiJN(..w7GNZ(..w7KQU(%&55g>NUa(%&55g>RY](%&55oFV]i(%&55oFZjn(%&556VWgnz(%&556VWkdh(67FFyQaht(67FFyQeae(67FFvN^eq(67FFvNbgk(67FF|Tdkw(67FF|ThTX(&'66yAQXd(&'66yAU`d(&'667LM]dp(&'667LMa`d(&'667LM]dp(&'667LMaZ^(&'66GW^j(&'66G[_c(&'667KL\co(&'667KL`ei(&'667QRbiu(&'667QRfMQ( //	:JQ]( //	:NPT( //=MT`( //=QTX(%&55jAQXd(%&55jAUW[(%&55mDT[g(%&55mDXOS(!"11)<LS_(!"11)<PRV(!"11,?OVb(!"11,?SVZ('(77
CSZf('(77
CWY]('(77FV]i('(77FZZ^(+,;;JGW^j(+,;;JG[?C(+,<CN(+,@]a(,-<<\JZam(,-<<\J^@D(,-=DO(,-A\`(-.==jIY`l(-.==jI]^b(-.==lK[bn(-.==lK_cg(-.==>OP`gs(-.==>OPdAE(-.>EP(-.B\`(./>>yIY`l(./>>yI]`d(./>>}M]dp(./>>}Ma]a(./>>zJZam(./>>zJ^BF(./?FQ(./CQU("#22:>NUa("#22:>RTX(#$33LAQXd(#$33LAUMQ(..z:JQ](..z:NOS(..|<LS_(..|<PTX(../@AQXd(../@AUMQ( //	:JQ]( //	:NW[( //0CDT[g( //0CDXY]( //0EFV]i( //0EFZY]( //0EFV]i( //0EFZY]( //0EFV]i( //0EFZTX(&'66yAQXd(&'66yAUVZ('(77
CSZf('(77
CWRV($%44Y?OVb($%44Y?STX(%&55jAQXd(%&55jAUNR(..{;KR^(..{;OOS(..|<LS_(..|<PKO(..x8HO[(..x8LMQ(..z:JQ](..z:NKO( //8HO[( //8LSW(%&55i@PWc(%&55i@TUY(%&55kBRYe(%&55kBVVZ(%&55lCSZf(%&55lCWGK(>)))4DKW(>)))4HOS(>))*;<LS_(>))*;<PGK(>)))4DKW(>)))4HLP(>)).9IP\(>)).9MRV(>))*>?OVb(>))*>?SMQ(>))/:JQ](>))/:NX\(>))*DEU\h(>))*DEYLP(>)).9IP\(>)).9MZ^(&'66GW^j(&'66G[Y](#$334EFV]i(#$334EFZOS($%44V<LS_($%44V<P`d()*99:LM]dp()*99:LMaVZ(*+::7CSZf(*+::7CWei(%&556QRbit(%&556QRfgk(/0??@STdkw(/0??@SThbf(/0??O_fr(/0??Oc`d(/0??M]dp(/0??MaPT(<=MT\(<=Q^b(%&556JK[bn(%&556JK_VZ(%&55lCSZf(%&55lCWae(%&556MN^eq(%&556MNbIM(..v6FMY(..v6JNR(..{;KR^(..{;Ofj(-.==>RScjv(-.==>RSgY](+,;;IFV]i(+,;;IFZQU("#22:>NUa("#22:>R6:("#3:E("#77;(#$4;F(#$8OS(..|<LS_(..|<PMQ(..z:JQ](..z:N-1(>* 2|(>.LP(>**=9I Q\(>**=9MHL(>**95E M}(>**95INR(>**?;K SJ(>**?;OKO(>**<8H Pr(>**<8LKO(>**<8H P|(>**<8LQU(>**+=>N Vu(>**+=>RKO(>**<8H P{(>**<8LQU(>**+=>N VS(>**+=>RMQ(>**>:J RB(>**>:NSW(>**+?@P XX(>**+?@TNR(>**?;K SD(>**?;OW[(>**+CDT \U(>**+CDXNR(>**?;K S{(>**?;OY](>**+EFV ^_(>**+EFZRV(>**+>?O W_(>**+>?SPT(>**+<=M UJ(>**+<=QJN(>**;7G O|(>**;7KQU(>**+=>N Vl(>**+=>ROS(>**+;<L TU(>**+;<PUY(>**+ABR Zm(>**+ABV-2(>,+0(>*,1(=+*/(=)5:(!"438(!"2&)(7%$((7#/3(.-1(,,0(=+*.(=)8<($%76:($%548( !326( !1AE(-.@?C(-.>48( !326( !159(!"437(!"204(/.2(-15(0/3(.6:("#548("#37;(#$659(#$437( 215( 048( !326( !137( 215( 08<($%76:($%559(!"437(!"248( !326( !126(104(/9=(%&87;(%&6:>(&'98<(&'7JN(67IHL(67G37( 215( 048( !326( !19=(%&87;(%&6:>(&'98<(&'759(!"437(!"26:("#548("#3;?('(:9=('(8<@(();:>(()9?C(+,>=A(+,<@D(,-?>B(,-=AE(-.@?C(-.>BF(./A@D(./?6:("#548("#37;(#$659(#$426(104(/37( 215( 0:>(&'98<(&'7;?('(:9=('(88<($%76:($%59=(%&87;(%&626(104(/37( 215( 09=(%&87;(%&6-1(>,+/(>*:>(&'98<(&'77;(#$659(#$48<($%76:($%5=A()*<;?()*:>B(*+=<@(*+;9=(%&87;(%&6CG(/0BAE(/0@48( !326( !19=(%&87<(%&6PU(<=ONS(<=M27(105(/9>(%&87<(%&6AF(-.@?D(-.>?D(+,>=B(+,<6;("#549("#3<A(();:?(()905(/.3(-7<(#$65:(#$427(105(/-2(>,+0(>*Q &r   