mirror of https://github.com/milvus-io/milvus.git
Support Role-Based Access Control II (#18528)
Signed-off-by: SimFG <bang.fu@zilliz.com>pull/18562/head
parent
b427450593
commit
c267ad612d
|
@ -308,6 +308,7 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_common_2eproto::offsets[] PROT
|
|||
PROTOBUF_FIELD_OFFSET(::milvus::proto::common::PrivilegeExt, object_type_),
|
||||
PROTOBUF_FIELD_OFFSET(::milvus::proto::common::PrivilegeExt, object_privilege_),
|
||||
PROTOBUF_FIELD_OFFSET(::milvus::proto::common::PrivilegeExt, object_name_index_),
|
||||
PROTOBUF_FIELD_OFFSET(::milvus::proto::common::PrivilegeExt, object_name_indexs_),
|
||||
};
|
||||
static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
|
||||
{ 0, -1, sizeof(::milvus::proto::common::Status)},
|
||||
|
@ -356,107 +357,118 @@ const char descriptor_table_protodef_common_2eproto[] PROTOBUF_SECTION_VARIABLE(
|
|||
"*\n\004base\030\001 \001(\0132\034.milvus.proto.common.MsgB"
|
||||
"ase\"M\n\014DMLMsgHeader\022*\n\004base\030\001 \001(\0132\034.milv"
|
||||
"us.proto.common.MsgBase\022\021\n\tshardName\030\002 \001"
|
||||
"(\t\"\237\001\n\014PrivilegeExt\0224\n\013object_type\030\001 \001(\016"
|
||||
"(\t\"\273\001\n\014PrivilegeExt\0224\n\013object_type\030\001 \001(\016"
|
||||
"2\037.milvus.proto.common.ObjectType\022>\n\020obj"
|
||||
"ect_privilege\030\002 \001(\0162$.milvus.proto.commo"
|
||||
"n.ObjectPrivilege\022\031\n\021object_name_index\030\003"
|
||||
" \001(\005*\323\010\n\tErrorCode\022\013\n\007Success\020\000\022\023\n\017Unexp"
|
||||
"ectedError\020\001\022\021\n\rConnectFailed\020\002\022\024\n\020Permi"
|
||||
"ssionDenied\020\003\022\027\n\023CollectionNotExists\020\004\022\023"
|
||||
"\n\017IllegalArgument\020\005\022\024\n\020IllegalDimension\020"
|
||||
"\007\022\024\n\020IllegalIndexType\020\010\022\031\n\025IllegalCollec"
|
||||
"tionName\020\t\022\017\n\013IllegalTOPK\020\n\022\024\n\020IllegalRo"
|
||||
"wRecord\020\013\022\023\n\017IllegalVectorID\020\014\022\027\n\023Illega"
|
||||
"lSearchResult\020\r\022\020\n\014FileNotFound\020\016\022\016\n\nMet"
|
||||
"aFailed\020\017\022\017\n\013CacheFailed\020\020\022\026\n\022CannotCrea"
|
||||
"teFolder\020\021\022\024\n\020CannotCreateFile\020\022\022\026\n\022Cann"
|
||||
"otDeleteFolder\020\023\022\024\n\020CannotDeleteFile\020\024\022\023"
|
||||
"\n\017BuildIndexError\020\025\022\020\n\014IllegalNLIST\020\026\022\025\n"
|
||||
"\021IllegalMetricType\020\027\022\017\n\013OutOfMemory\020\030\022\021\n"
|
||||
"\rIndexNotExist\020\031\022\023\n\017EmptyCollection\020\032\022\033\n"
|
||||
"\027UpdateImportTaskFailure\020\033\022\032\n\026Collection"
|
||||
"NameNotFound\020\034\022\033\n\027CreateCredentialFailur"
|
||||
"e\020\035\022\033\n\027UpdateCredentialFailure\020\036\022\033\n\027Dele"
|
||||
"teCredentialFailure\020\037\022\030\n\024GetCredentialFa"
|
||||
"ilure\020 \022\030\n\024ListCredUsersFailure\020!\022\022\n\016Get"
|
||||
"UserFailure\020\"\022\025\n\021CreateRoleFailure\020#\022\023\n\017"
|
||||
"DropRoleFailure\020$\022\032\n\026OperateUserRoleFail"
|
||||
"ure\020%\022\025\n\021SelectRoleFailure\020&\022\025\n\021SelectUs"
|
||||
"erFailure\020\'\022\031\n\025SelectResourceFailure\020(\022\033"
|
||||
"\n\027OperatePrivilegeFailure\020)\022\026\n\022SelectGra"
|
||||
"ntFailure\020*\022!\n\035RefreshPolicyInfoCacheFai"
|
||||
"lure\020+\022\025\n\021ListPolicyFailure\020,\022\022\n\016NotShar"
|
||||
"dLeader\020-\022\026\n\022NoReplicaAvailable\020.\022\023\n\017Seg"
|
||||
"mentNotFound\020/\022\022\n\rDDRequestRace\020\350\007*X\n\nIn"
|
||||
"dexState\022\022\n\016IndexStateNone\020\000\022\014\n\010Unissued"
|
||||
"\020\001\022\016\n\nInProgress\020\002\022\014\n\010Finished\020\003\022\n\n\006Fail"
|
||||
"ed\020\004*\202\001\n\014SegmentState\022\024\n\020SegmentStateNon"
|
||||
"e\020\000\022\014\n\010NotExist\020\001\022\013\n\007Growing\020\002\022\n\n\006Sealed"
|
||||
"\020\003\022\013\n\007Flushed\020\004\022\014\n\010Flushing\020\005\022\013\n\007Dropped"
|
||||
"\020\006\022\r\n\tImporting\020\007*>\n\017PlaceholderType\022\010\n\004"
|
||||
"None\020\000\022\020\n\014BinaryVector\020d\022\017\n\013FloatVector\020"
|
||||
"e*\266\014\n\007MsgType\022\r\n\tUndefined\020\000\022\024\n\020CreateCo"
|
||||
"llection\020d\022\022\n\016DropCollection\020e\022\021\n\rHasCol"
|
||||
"lection\020f\022\026\n\022DescribeCollection\020g\022\023\n\017Sho"
|
||||
"wCollections\020h\022\024\n\020GetSystemConfigs\020i\022\022\n\016"
|
||||
"LoadCollection\020j\022\025\n\021ReleaseCollection\020k\022"
|
||||
"\017\n\013CreateAlias\020l\022\r\n\tDropAlias\020m\022\016\n\nAlter"
|
||||
"Alias\020n\022\024\n\017CreatePartition\020\310\001\022\022\n\rDropPar"
|
||||
"tition\020\311\001\022\021\n\014HasPartition\020\312\001\022\026\n\021Describe"
|
||||
"Partition\020\313\001\022\023\n\016ShowPartitions\020\314\001\022\023\n\016Loa"
|
||||
"dPartitions\020\315\001\022\026\n\021ReleasePartitions\020\316\001\022\021"
|
||||
"\n\014ShowSegments\020\372\001\022\024\n\017DescribeSegment\020\373\001\022"
|
||||
"\021\n\014LoadSegments\020\374\001\022\024\n\017ReleaseSegments\020\375\001"
|
||||
"\022\024\n\017HandoffSegments\020\376\001\022\030\n\023LoadBalanceSeg"
|
||||
"ments\020\377\001\022\025\n\020DescribeSegments\020\200\002\022\020\n\013Creat"
|
||||
"eIndex\020\254\002\022\022\n\rDescribeIndex\020\255\002\022\016\n\tDropInd"
|
||||
"ex\020\256\002\022\013\n\006Insert\020\220\003\022\013\n\006Delete\020\221\003\022\n\n\005Flush"
|
||||
"\020\222\003\022\027\n\022ResendSegmentStats\020\223\003\022\013\n\006Search\020\364"
|
||||
"\003\022\021\n\014SearchResult\020\365\003\022\022\n\rGetIndexState\020\366\003"
|
||||
"\022\032\n\025GetIndexBuildProgress\020\367\003\022\034\n\027GetColle"
|
||||
"ctionStatistics\020\370\003\022\033\n\026GetPartitionStatis"
|
||||
"tics\020\371\003\022\r\n\010Retrieve\020\372\003\022\023\n\016RetrieveResult"
|
||||
"\020\373\003\022\024\n\017WatchDmChannels\020\374\003\022\025\n\020RemoveDmCha"
|
||||
"nnels\020\375\003\022\027\n\022WatchQueryChannels\020\376\003\022\030\n\023Rem"
|
||||
"oveQueryChannels\020\377\003\022\035\n\030SealedSegmentsCha"
|
||||
"ngeInfo\020\200\004\022\027\n\022WatchDeltaChannels\020\201\004\022\024\n\017G"
|
||||
"etShardLeaders\020\202\004\022\020\n\013GetReplicas\020\203\004\022\020\n\013S"
|
||||
"egmentInfo\020\330\004\022\017\n\nSystemInfo\020\331\004\022\024\n\017GetRec"
|
||||
"overyInfo\020\332\004\022\024\n\017GetSegmentState\020\333\004\022\r\n\010Ti"
|
||||
"meTick\020\260\t\022\023\n\016QueryNodeStats\020\261\t\022\016\n\tLoadIn"
|
||||
"dex\020\262\t\022\016\n\tRequestID\020\263\t\022\017\n\nRequestTSO\020\264\t\022"
|
||||
"\024\n\017AllocateSegment\020\265\t\022\026\n\021SegmentStatisti"
|
||||
"cs\020\266\t\022\025\n\020SegmentFlushDone\020\267\t\022\017\n\nDataNode"
|
||||
"Tt\020\270\t\022\025\n\020CreateCredential\020\334\013\022\022\n\rGetCrede"
|
||||
"ntial\020\335\013\022\025\n\020DeleteCredential\020\336\013\022\025\n\020Updat"
|
||||
"eCredential\020\337\013\022\026\n\021ListCredUsernames\020\340\013\022\017"
|
||||
"\n\nCreateRole\020\300\014\022\r\n\010DropRole\020\301\014\022\024\n\017Operat"
|
||||
"eUserRole\020\302\014\022\017\n\nSelectRole\020\303\014\022\017\n\nSelectU"
|
||||
"ser\020\304\014\022\023\n\016SelectResource\020\305\014\022\025\n\020OperatePr"
|
||||
"ivilege\020\306\014\022\020\n\013SelectGrant\020\307\014\022\033\n\026RefreshP"
|
||||
"olicyInfoCache\020\310\014\022\017\n\nListPolicy\020\311\014*\"\n\007Ds"
|
||||
"lType\022\007\n\003Dsl\020\000\022\016\n\nBoolExprV1\020\001*B\n\017Compac"
|
||||
"tionState\022\021\n\rUndefiedState\020\000\022\r\n\tExecutin"
|
||||
"g\020\001\022\r\n\tCompleted\020\002*X\n\020ConsistencyLevel\022\n"
|
||||
"\n\006Strong\020\000\022\013\n\007Session\020\001\022\013\n\007Bounded\020\002\022\016\n\n"
|
||||
"Eventually\020\003\022\016\n\nCustomized\020\004*\257\001\n\013ImportS"
|
||||
"tate\022\021\n\rImportPending\020\000\022\020\n\014ImportFailed\020"
|
||||
"\001\022\021\n\rImportStarted\020\002\022\024\n\020ImportDownloaded"
|
||||
"\020\003\022\020\n\014ImportParsed\020\004\022\023\n\017ImportPersisted\020"
|
||||
"\005\022\023\n\017ImportCompleted\020\006\022\026\n\022ImportAllocSeg"
|
||||
"ment\020\n*(\n\nObjectType\022\016\n\nCollection\020\000\022\n\n\006"
|
||||
"Global\020\001*\212\002\n\017ObjectPrivilege\022\020\n\014Privileg"
|
||||
"eAll\020\000\022\035\n\031PrivilegeCreateCollection\020\001\022\033\n"
|
||||
"\027PrivilegeDropCollection\020\002\022\037\n\033PrivilegeD"
|
||||
"escribeCollection\020\003\022\034\n\030PrivilegeShowColl"
|
||||
"ections\020\004\022\021\n\rPrivilegeLoad\020\005\022\024\n\020Privileg"
|
||||
"eRelease\020\006\022\027\n\023PrivilegeCompaction\020\007\022\023\n\017P"
|
||||
"rivilegeInsert\020\010\022\023\n\017PrivilegeDelete\020\t:^\n"
|
||||
"\021privilege_ext_obj\022\037.google.protobuf.Mes"
|
||||
"sageOptions\030\351\007 \001(\0132!.milvus.proto.common"
|
||||
".PrivilegeExtBW\n\016io.milvus.grpcB\013CommonP"
|
||||
"rotoP\001Z3github.com/milvus-io/milvus/inte"
|
||||
"rnal/proto/commonpb\240\001\001b\006proto3"
|
||||
" \001(\005\022\032\n\022object_name_indexs\030\004 \001(\005*\323\010\n\tErr"
|
||||
"orCode\022\013\n\007Success\020\000\022\023\n\017UnexpectedError\020\001"
|
||||
"\022\021\n\rConnectFailed\020\002\022\024\n\020PermissionDenied\020"
|
||||
"\003\022\027\n\023CollectionNotExists\020\004\022\023\n\017IllegalArg"
|
||||
"ument\020\005\022\024\n\020IllegalDimension\020\007\022\024\n\020Illegal"
|
||||
"IndexType\020\010\022\031\n\025IllegalCollectionName\020\t\022\017"
|
||||
"\n\013IllegalTOPK\020\n\022\024\n\020IllegalRowRecord\020\013\022\023\n"
|
||||
"\017IllegalVectorID\020\014\022\027\n\023IllegalSearchResul"
|
||||
"t\020\r\022\020\n\014FileNotFound\020\016\022\016\n\nMetaFailed\020\017\022\017\n"
|
||||
"\013CacheFailed\020\020\022\026\n\022CannotCreateFolder\020\021\022\024"
|
||||
"\n\020CannotCreateFile\020\022\022\026\n\022CannotDeleteFold"
|
||||
"er\020\023\022\024\n\020CannotDeleteFile\020\024\022\023\n\017BuildIndex"
|
||||
"Error\020\025\022\020\n\014IllegalNLIST\020\026\022\025\n\021IllegalMetr"
|
||||
"icType\020\027\022\017\n\013OutOfMemory\020\030\022\021\n\rIndexNotExi"
|
||||
"st\020\031\022\023\n\017EmptyCollection\020\032\022\033\n\027UpdateImpor"
|
||||
"tTaskFailure\020\033\022\032\n\026CollectionNameNotFound"
|
||||
"\020\034\022\033\n\027CreateCredentialFailure\020\035\022\033\n\027Updat"
|
||||
"eCredentialFailure\020\036\022\033\n\027DeleteCredential"
|
||||
"Failure\020\037\022\030\n\024GetCredentialFailure\020 \022\030\n\024L"
|
||||
"istCredUsersFailure\020!\022\022\n\016GetUserFailure\020"
|
||||
"\"\022\025\n\021CreateRoleFailure\020#\022\023\n\017DropRoleFail"
|
||||
"ure\020$\022\032\n\026OperateUserRoleFailure\020%\022\025\n\021Sel"
|
||||
"ectRoleFailure\020&\022\025\n\021SelectUserFailure\020\'\022"
|
||||
"\031\n\025SelectResourceFailure\020(\022\033\n\027OperatePri"
|
||||
"vilegeFailure\020)\022\026\n\022SelectGrantFailure\020*\022"
|
||||
"!\n\035RefreshPolicyInfoCacheFailure\020+\022\025\n\021Li"
|
||||
"stPolicyFailure\020,\022\022\n\016NotShardLeader\020-\022\026\n"
|
||||
"\022NoReplicaAvailable\020.\022\023\n\017SegmentNotFound"
|
||||
"\020/\022\022\n\rDDRequestRace\020\350\007*X\n\nIndexState\022\022\n\016"
|
||||
"IndexStateNone\020\000\022\014\n\010Unissued\020\001\022\016\n\nInProg"
|
||||
"ress\020\002\022\014\n\010Finished\020\003\022\n\n\006Failed\020\004*\202\001\n\014Seg"
|
||||
"mentState\022\024\n\020SegmentStateNone\020\000\022\014\n\010NotEx"
|
||||
"ist\020\001\022\013\n\007Growing\020\002\022\n\n\006Sealed\020\003\022\013\n\007Flushe"
|
||||
"d\020\004\022\014\n\010Flushing\020\005\022\013\n\007Dropped\020\006\022\r\n\tImport"
|
||||
"ing\020\007*>\n\017PlaceholderType\022\010\n\004None\020\000\022\020\n\014Bi"
|
||||
"naryVector\020d\022\017\n\013FloatVector\020e*\266\014\n\007MsgTyp"
|
||||
"e\022\r\n\tUndefined\020\000\022\024\n\020CreateCollection\020d\022\022"
|
||||
"\n\016DropCollection\020e\022\021\n\rHasCollection\020f\022\026\n"
|
||||
"\022DescribeCollection\020g\022\023\n\017ShowCollections"
|
||||
"\020h\022\024\n\020GetSystemConfigs\020i\022\022\n\016LoadCollecti"
|
||||
"on\020j\022\025\n\021ReleaseCollection\020k\022\017\n\013CreateAli"
|
||||
"as\020l\022\r\n\tDropAlias\020m\022\016\n\nAlterAlias\020n\022\024\n\017C"
|
||||
"reatePartition\020\310\001\022\022\n\rDropPartition\020\311\001\022\021\n"
|
||||
"\014HasPartition\020\312\001\022\026\n\021DescribePartition\020\313\001"
|
||||
"\022\023\n\016ShowPartitions\020\314\001\022\023\n\016LoadPartitions\020"
|
||||
"\315\001\022\026\n\021ReleasePartitions\020\316\001\022\021\n\014ShowSegmen"
|
||||
"ts\020\372\001\022\024\n\017DescribeSegment\020\373\001\022\021\n\014LoadSegme"
|
||||
"nts\020\374\001\022\024\n\017ReleaseSegments\020\375\001\022\024\n\017HandoffS"
|
||||
"egments\020\376\001\022\030\n\023LoadBalanceSegments\020\377\001\022\025\n\020"
|
||||
"DescribeSegments\020\200\002\022\020\n\013CreateIndex\020\254\002\022\022\n"
|
||||
"\rDescribeIndex\020\255\002\022\016\n\tDropIndex\020\256\002\022\013\n\006Ins"
|
||||
"ert\020\220\003\022\013\n\006Delete\020\221\003\022\n\n\005Flush\020\222\003\022\027\n\022Resen"
|
||||
"dSegmentStats\020\223\003\022\013\n\006Search\020\364\003\022\021\n\014SearchR"
|
||||
"esult\020\365\003\022\022\n\rGetIndexState\020\366\003\022\032\n\025GetIndex"
|
||||
"BuildProgress\020\367\003\022\034\n\027GetCollectionStatist"
|
||||
"ics\020\370\003\022\033\n\026GetPartitionStatistics\020\371\003\022\r\n\010R"
|
||||
"etrieve\020\372\003\022\023\n\016RetrieveResult\020\373\003\022\024\n\017Watch"
|
||||
"DmChannels\020\374\003\022\025\n\020RemoveDmChannels\020\375\003\022\027\n\022"
|
||||
"WatchQueryChannels\020\376\003\022\030\n\023RemoveQueryChan"
|
||||
"nels\020\377\003\022\035\n\030SealedSegmentsChangeInfo\020\200\004\022\027"
|
||||
"\n\022WatchDeltaChannels\020\201\004\022\024\n\017GetShardLeade"
|
||||
"rs\020\202\004\022\020\n\013GetReplicas\020\203\004\022\020\n\013SegmentInfo\020\330"
|
||||
"\004\022\017\n\nSystemInfo\020\331\004\022\024\n\017GetRecoveryInfo\020\332\004"
|
||||
"\022\024\n\017GetSegmentState\020\333\004\022\r\n\010TimeTick\020\260\t\022\023\n"
|
||||
"\016QueryNodeStats\020\261\t\022\016\n\tLoadIndex\020\262\t\022\016\n\tRe"
|
||||
"questID\020\263\t\022\017\n\nRequestTSO\020\264\t\022\024\n\017AllocateS"
|
||||
"egment\020\265\t\022\026\n\021SegmentStatistics\020\266\t\022\025\n\020Seg"
|
||||
"mentFlushDone\020\267\t\022\017\n\nDataNodeTt\020\270\t\022\025\n\020Cre"
|
||||
"ateCredential\020\334\013\022\022\n\rGetCredential\020\335\013\022\025\n\020"
|
||||
"DeleteCredential\020\336\013\022\025\n\020UpdateCredential\020"
|
||||
"\337\013\022\026\n\021ListCredUsernames\020\340\013\022\017\n\nCreateRole"
|
||||
"\020\300\014\022\r\n\010DropRole\020\301\014\022\024\n\017OperateUserRole\020\302\014"
|
||||
"\022\017\n\nSelectRole\020\303\014\022\017\n\nSelectUser\020\304\014\022\023\n\016Se"
|
||||
"lectResource\020\305\014\022\025\n\020OperatePrivilege\020\306\014\022\020"
|
||||
"\n\013SelectGrant\020\307\014\022\033\n\026RefreshPolicyInfoCac"
|
||||
"he\020\310\014\022\017\n\nListPolicy\020\311\014*\"\n\007DslType\022\007\n\003Dsl"
|
||||
"\020\000\022\016\n\nBoolExprV1\020\001*B\n\017CompactionState\022\021\n"
|
||||
"\rUndefiedState\020\000\022\r\n\tExecuting\020\001\022\r\n\tCompl"
|
||||
"eted\020\002*X\n\020ConsistencyLevel\022\n\n\006Strong\020\000\022\013"
|
||||
"\n\007Session\020\001\022\013\n\007Bounded\020\002\022\016\n\nEventually\020\003"
|
||||
"\022\016\n\nCustomized\020\004*\257\001\n\013ImportState\022\021\n\rImpo"
|
||||
"rtPending\020\000\022\020\n\014ImportFailed\020\001\022\021\n\rImportS"
|
||||
"tarted\020\002\022\024\n\020ImportDownloaded\020\003\022\020\n\014Import"
|
||||
"Parsed\020\004\022\023\n\017ImportPersisted\020\005\022\023\n\017ImportC"
|
||||
"ompleted\020\006\022\026\n\022ImportAllocSegment\020\n*2\n\nOb"
|
||||
"jectType\022\016\n\nCollection\020\000\022\n\n\006Global\020\001\022\010\n\004"
|
||||
"User\020\002*\206\005\n\017ObjectPrivilege\022\020\n\014PrivilegeA"
|
||||
"ll\020\000\022\035\n\031PrivilegeCreateCollection\020\001\022\033\n\027P"
|
||||
"rivilegeDropCollection\020\002\022\037\n\033PrivilegeDes"
|
||||
"cribeCollection\020\003\022\034\n\030PrivilegeShowCollec"
|
||||
"tions\020\004\022\021\n\rPrivilegeLoad\020\005\022\024\n\020PrivilegeR"
|
||||
"elease\020\006\022\027\n\023PrivilegeCompaction\020\007\022\023\n\017Pri"
|
||||
"vilegeInsert\020\010\022\023\n\017PrivilegeDelete\020\t\022\032\n\026P"
|
||||
"rivilegeGetStatistics\020\n\022\030\n\024PrivilegeCrea"
|
||||
"teIndex\020\013\022\030\n\024PrivilegeIndexDetail\020\014\022\026\n\022P"
|
||||
"rivilegeDropIndex\020\r\022\023\n\017PrivilegeSearch\020\016"
|
||||
"\022\022\n\016PrivilegeFlush\020\017\022\022\n\016PrivilegeQuery\020\020"
|
||||
"\022\030\n\024PrivilegeLoadBalance\020\021\022\023\n\017PrivilegeI"
|
||||
"mport\020\022\022\034\n\030PrivilegeCreateOwnership\020\023\022\027\n"
|
||||
"\023PrivilegeUpdateUser\020\024\022\032\n\026PrivilegeDropO"
|
||||
"wnership\020\025\022\034\n\030PrivilegeSelectOwnership\020\026"
|
||||
"\022\034\n\030PrivilegeManageOwnership\020\027\022\027\n\023Privil"
|
||||
"egeSelectUser\020\030:^\n\021privilege_ext_obj\022\037.g"
|
||||
"oogle.protobuf.MessageOptions\030\351\007 \001(\0132!.m"
|
||||
"ilvus.proto.common.PrivilegeExtBW\n\016io.mi"
|
||||
"lvus.grpcB\013CommonProtoP\001Z3github.com/mil"
|
||||
"vus-io/milvus/internal/proto/commonpb\240\001\001"
|
||||
"b\006proto3"
|
||||
;
|
||||
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_common_2eproto_deps[1] = {
|
||||
&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto,
|
||||
|
@ -477,7 +489,7 @@ static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_com
|
|||
static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_common_2eproto_once;
|
||||
static bool descriptor_table_common_2eproto_initialized = false;
|
||||
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_common_2eproto = {
|
||||
&descriptor_table_common_2eproto_initialized, descriptor_table_protodef_common_2eproto, "common.proto", 4750,
|
||||
&descriptor_table_common_2eproto_initialized, descriptor_table_protodef_common_2eproto, "common.proto", 5168,
|
||||
&descriptor_table_common_2eproto_once, descriptor_table_common_2eproto_sccs, descriptor_table_common_2eproto_deps, 11, 1,
|
||||
schemas, file_default_instances, TableStruct_common_2eproto::offsets,
|
||||
file_level_metadata_common_2eproto, 11, file_level_enum_descriptors_common_2eproto, file_level_service_descriptors_common_2eproto,
|
||||
|
@ -763,6 +775,7 @@ bool ObjectType_IsValid(int value) {
|
|||
switch (value) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
@ -785,6 +798,21 @@ bool ObjectPrivilege_IsValid(int value) {
|
|||
case 7:
|
||||
case 8:
|
||||
case 9:
|
||||
case 10:
|
||||
case 11:
|
||||
case 12:
|
||||
case 13:
|
||||
case 14:
|
||||
case 15:
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
case 19:
|
||||
case 20:
|
||||
case 21:
|
||||
case 22:
|
||||
case 23:
|
||||
case 24:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
@ -3948,15 +3976,15 @@ PrivilegeExt::PrivilegeExt(const PrivilegeExt& from)
|
|||
_internal_metadata_(nullptr) {
|
||||
_internal_metadata_.MergeFrom(from._internal_metadata_);
|
||||
::memcpy(&object_type_, &from.object_type_,
|
||||
static_cast<size_t>(reinterpret_cast<char*>(&object_name_index_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_index_));
|
||||
static_cast<size_t>(reinterpret_cast<char*>(&object_name_indexs_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_indexs_));
|
||||
// @@protoc_insertion_point(copy_constructor:milvus.proto.common.PrivilegeExt)
|
||||
}
|
||||
|
||||
void PrivilegeExt::SharedCtor() {
|
||||
::memset(&object_type_, 0, static_cast<size_t>(
|
||||
reinterpret_cast<char*>(&object_name_index_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_index_));
|
||||
reinterpret_cast<char*>(&object_name_indexs_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_indexs_));
|
||||
}
|
||||
|
||||
PrivilegeExt::~PrivilegeExt() {
|
||||
|
@ -3983,8 +4011,8 @@ void PrivilegeExt::Clear() {
|
|||
(void) cached_has_bits;
|
||||
|
||||
::memset(&object_type_, 0, static_cast<size_t>(
|
||||
reinterpret_cast<char*>(&object_name_index_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_index_));
|
||||
reinterpret_cast<char*>(&object_name_indexs_) -
|
||||
reinterpret_cast<char*>(&object_type_)) + sizeof(object_name_indexs_));
|
||||
_internal_metadata_.Clear();
|
||||
}
|
||||
|
||||
|
@ -4019,6 +4047,13 @@ const char* PrivilegeExt::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_I
|
|||
CHK_(ptr);
|
||||
} else goto handle_unusual;
|
||||
continue;
|
||||
// int32 object_name_indexs = 4;
|
||||
case 4:
|
||||
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
|
||||
object_name_indexs_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
|
||||
CHK_(ptr);
|
||||
} else goto handle_unusual;
|
||||
continue;
|
||||
default: {
|
||||
handle_unusual:
|
||||
if ((tag & 7) == 4 || tag == 0) {
|
||||
|
@ -4090,6 +4125,19 @@ bool PrivilegeExt::MergePartialFromCodedStream(
|
|||
break;
|
||||
}
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
case 4: {
|
||||
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (32 & 0xFF)) {
|
||||
|
||||
DO_((::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadPrimitive<
|
||||
::PROTOBUF_NAMESPACE_ID::int32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32>(
|
||||
input, &object_name_indexs_)));
|
||||
} else {
|
||||
goto handle_unusual;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
handle_unusual:
|
||||
if (tag == 0) {
|
||||
|
@ -4134,6 +4182,11 @@ void PrivilegeExt::SerializeWithCachedSizes(
|
|||
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32(3, this->object_name_index(), output);
|
||||
}
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
if (this->object_name_indexs() != 0) {
|
||||
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32(4, this->object_name_indexs(), output);
|
||||
}
|
||||
|
||||
if (_internal_metadata_.have_unknown_fields()) {
|
||||
::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields(
|
||||
_internal_metadata_.unknown_fields(), output);
|
||||
|
@ -4164,6 +4217,11 @@ void PrivilegeExt::SerializeWithCachedSizes(
|
|||
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->object_name_index(), target);
|
||||
}
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
if (this->object_name_indexs() != 0) {
|
||||
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->object_name_indexs(), target);
|
||||
}
|
||||
|
||||
if (_internal_metadata_.have_unknown_fields()) {
|
||||
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray(
|
||||
_internal_metadata_.unknown_fields(), target);
|
||||
|
@ -4204,6 +4262,13 @@ size_t PrivilegeExt::ByteSizeLong() const {
|
|||
this->object_name_index());
|
||||
}
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
if (this->object_name_indexs() != 0) {
|
||||
total_size += 1 +
|
||||
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
|
||||
this->object_name_indexs());
|
||||
}
|
||||
|
||||
int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
|
||||
SetCachedSize(cached_size);
|
||||
return total_size;
|
||||
|
@ -4240,6 +4305,9 @@ void PrivilegeExt::MergeFrom(const PrivilegeExt& from) {
|
|||
if (from.object_name_index() != 0) {
|
||||
set_object_name_index(from.object_name_index());
|
||||
}
|
||||
if (from.object_name_indexs() != 0) {
|
||||
set_object_name_indexs(from.object_name_indexs());
|
||||
}
|
||||
}
|
||||
|
||||
void PrivilegeExt::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
|
||||
|
@ -4266,6 +4334,7 @@ void PrivilegeExt::InternalSwap(PrivilegeExt* other) {
|
|||
swap(object_type_, other->object_type_);
|
||||
swap(object_privilege_, other->object_privilege_);
|
||||
swap(object_name_index_, other->object_name_index_);
|
||||
swap(object_name_indexs_, other->object_name_indexs_);
|
||||
}
|
||||
|
||||
::PROTOBUF_NAMESPACE_ID::Metadata PrivilegeExt::GetMetadata() const {
|
||||
|
|
|
@ -481,12 +481,13 @@ inline bool ImportState_Parse(
|
|||
enum ObjectType : int {
|
||||
Collection = 0,
|
||||
Global = 1,
|
||||
User = 2,
|
||||
ObjectType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
|
||||
ObjectType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
|
||||
};
|
||||
bool ObjectType_IsValid(int value);
|
||||
constexpr ObjectType ObjectType_MIN = Collection;
|
||||
constexpr ObjectType ObjectType_MAX = Global;
|
||||
constexpr ObjectType ObjectType_MAX = User;
|
||||
constexpr int ObjectType_ARRAYSIZE = ObjectType_MAX + 1;
|
||||
|
||||
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ObjectType_descriptor();
|
||||
|
@ -514,12 +515,27 @@ enum ObjectPrivilege : int {
|
|||
PrivilegeCompaction = 7,
|
||||
PrivilegeInsert = 8,
|
||||
PrivilegeDelete = 9,
|
||||
PrivilegeGetStatistics = 10,
|
||||
PrivilegeCreateIndex = 11,
|
||||
PrivilegeIndexDetail = 12,
|
||||
PrivilegeDropIndex = 13,
|
||||
PrivilegeSearch = 14,
|
||||
PrivilegeFlush = 15,
|
||||
PrivilegeQuery = 16,
|
||||
PrivilegeLoadBalance = 17,
|
||||
PrivilegeImport = 18,
|
||||
PrivilegeCreateOwnership = 19,
|
||||
PrivilegeUpdateUser = 20,
|
||||
PrivilegeDropOwnership = 21,
|
||||
PrivilegeSelectOwnership = 22,
|
||||
PrivilegeManageOwnership = 23,
|
||||
PrivilegeSelectUser = 24,
|
||||
ObjectPrivilege_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
|
||||
ObjectPrivilege_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
|
||||
};
|
||||
bool ObjectPrivilege_IsValid(int value);
|
||||
constexpr ObjectPrivilege ObjectPrivilege_MIN = PrivilegeAll;
|
||||
constexpr ObjectPrivilege ObjectPrivilege_MAX = PrivilegeDelete;
|
||||
constexpr ObjectPrivilege ObjectPrivilege_MAX = PrivilegeSelectUser;
|
||||
constexpr int ObjectPrivilege_ARRAYSIZE = ObjectPrivilege_MAX + 1;
|
||||
|
||||
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ObjectPrivilege_descriptor();
|
||||
|
@ -2112,6 +2128,7 @@ class PrivilegeExt :
|
|||
kObjectTypeFieldNumber = 1,
|
||||
kObjectPrivilegeFieldNumber = 2,
|
||||
kObjectNameIndexFieldNumber = 3,
|
||||
kObjectNameIndexsFieldNumber = 4,
|
||||
};
|
||||
// .milvus.proto.common.ObjectType object_type = 1;
|
||||
void clear_object_type();
|
||||
|
@ -2128,6 +2145,11 @@ class PrivilegeExt :
|
|||
::PROTOBUF_NAMESPACE_ID::int32 object_name_index() const;
|
||||
void set_object_name_index(::PROTOBUF_NAMESPACE_ID::int32 value);
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
void clear_object_name_indexs();
|
||||
::PROTOBUF_NAMESPACE_ID::int32 object_name_indexs() const;
|
||||
void set_object_name_indexs(::PROTOBUF_NAMESPACE_ID::int32 value);
|
||||
|
||||
// @@protoc_insertion_point(class_scope:milvus.proto.common.PrivilegeExt)
|
||||
private:
|
||||
class _Internal;
|
||||
|
@ -2136,6 +2158,7 @@ class PrivilegeExt :
|
|||
int object_type_;
|
||||
int object_privilege_;
|
||||
::PROTOBUF_NAMESPACE_ID::int32 object_name_index_;
|
||||
::PROTOBUF_NAMESPACE_ID::int32 object_name_indexs_;
|
||||
mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
|
||||
friend struct ::TableStruct_common_2eproto;
|
||||
};
|
||||
|
@ -2990,6 +3013,20 @@ inline void PrivilegeExt::set_object_name_index(::PROTOBUF_NAMESPACE_ID::int32 v
|
|||
// @@protoc_insertion_point(field_set:milvus.proto.common.PrivilegeExt.object_name_index)
|
||||
}
|
||||
|
||||
// int32 object_name_indexs = 4;
|
||||
inline void PrivilegeExt::clear_object_name_indexs() {
|
||||
object_name_indexs_ = 0;
|
||||
}
|
||||
inline ::PROTOBUF_NAMESPACE_ID::int32 PrivilegeExt::object_name_indexs() const {
|
||||
// @@protoc_insertion_point(field_get:milvus.proto.common.PrivilegeExt.object_name_indexs)
|
||||
return object_name_indexs_;
|
||||
}
|
||||
inline void PrivilegeExt::set_object_name_indexs(::PROTOBUF_NAMESPACE_ID::int32 value) {
|
||||
|
||||
object_name_indexs_ = value;
|
||||
// @@protoc_insertion_point(field_set:milvus.proto.common.PrivilegeExt.object_name_indexs)
|
||||
}
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#endif // __GNUC__
|
||||
|
|
|
@ -276,6 +276,7 @@ enum ImportState {
|
|||
enum ObjectType {
|
||||
Collection = 0;
|
||||
Global = 1;
|
||||
User = 2;
|
||||
}
|
||||
|
||||
enum ObjectPrivilege {
|
||||
|
@ -289,12 +290,29 @@ enum ObjectPrivilege {
|
|||
PrivilegeCompaction = 7;
|
||||
PrivilegeInsert = 8;
|
||||
PrivilegeDelete = 9;
|
||||
|
||||
PrivilegeGetStatistics = 10;
|
||||
PrivilegeCreateIndex = 11;
|
||||
PrivilegeIndexDetail = 12;
|
||||
PrivilegeDropIndex = 13;
|
||||
PrivilegeSearch = 14;
|
||||
PrivilegeFlush = 15;
|
||||
PrivilegeQuery = 16;
|
||||
PrivilegeLoadBalance = 17;
|
||||
PrivilegeImport = 18;
|
||||
PrivilegeCreateOwnership = 19;
|
||||
PrivilegeUpdateUser = 20;
|
||||
PrivilegeDropOwnership = 21;
|
||||
PrivilegeSelectOwnership = 22;
|
||||
PrivilegeManageOwnership = 23;
|
||||
PrivilegeSelectUser = 24;
|
||||
}
|
||||
|
||||
message PrivilegeExt {
|
||||
ObjectType object_type = 1;
|
||||
ObjectPrivilege object_privilege = 2;
|
||||
int32 object_name_index = 3;
|
||||
int32 object_name_indexs = 4;
|
||||
}
|
||||
|
||||
extend google.protobuf.MessageOptions {
|
||||
|
|
|
@ -685,16 +685,19 @@ type ObjectType int32
|
|||
const (
|
||||
ObjectType_Collection ObjectType = 0
|
||||
ObjectType_Global ObjectType = 1
|
||||
ObjectType_User ObjectType = 2
|
||||
)
|
||||
|
||||
var ObjectType_name = map[int32]string{
|
||||
0: "Collection",
|
||||
1: "Global",
|
||||
2: "User",
|
||||
}
|
||||
|
||||
var ObjectType_value = map[string]int32{
|
||||
"Collection": 0,
|
||||
"Global": 1,
|
||||
"User": 2,
|
||||
}
|
||||
|
||||
func (x ObjectType) String() string {
|
||||
|
@ -718,19 +721,49 @@ const (
|
|||
ObjectPrivilege_PrivilegeCompaction ObjectPrivilege = 7
|
||||
ObjectPrivilege_PrivilegeInsert ObjectPrivilege = 8
|
||||
ObjectPrivilege_PrivilegeDelete ObjectPrivilege = 9
|
||||
ObjectPrivilege_PrivilegeGetStatistics ObjectPrivilege = 10
|
||||
ObjectPrivilege_PrivilegeCreateIndex ObjectPrivilege = 11
|
||||
ObjectPrivilege_PrivilegeIndexDetail ObjectPrivilege = 12
|
||||
ObjectPrivilege_PrivilegeDropIndex ObjectPrivilege = 13
|
||||
ObjectPrivilege_PrivilegeSearch ObjectPrivilege = 14
|
||||
ObjectPrivilege_PrivilegeFlush ObjectPrivilege = 15
|
||||
ObjectPrivilege_PrivilegeQuery ObjectPrivilege = 16
|
||||
ObjectPrivilege_PrivilegeLoadBalance ObjectPrivilege = 17
|
||||
ObjectPrivilege_PrivilegeImport ObjectPrivilege = 18
|
||||
ObjectPrivilege_PrivilegeCreateOwnership ObjectPrivilege = 19
|
||||
ObjectPrivilege_PrivilegeUpdateUser ObjectPrivilege = 20
|
||||
ObjectPrivilege_PrivilegeDropOwnership ObjectPrivilege = 21
|
||||
ObjectPrivilege_PrivilegeSelectOwnership ObjectPrivilege = 22
|
||||
ObjectPrivilege_PrivilegeManageOwnership ObjectPrivilege = 23
|
||||
ObjectPrivilege_PrivilegeSelectUser ObjectPrivilege = 24
|
||||
)
|
||||
|
||||
var ObjectPrivilege_name = map[int32]string{
|
||||
0: "PrivilegeAll",
|
||||
1: "PrivilegeCreateCollection",
|
||||
2: "PrivilegeDropCollection",
|
||||
3: "PrivilegeDescribeCollection",
|
||||
4: "PrivilegeShowCollections",
|
||||
5: "PrivilegeLoad",
|
||||
6: "PrivilegeRelease",
|
||||
7: "PrivilegeCompaction",
|
||||
8: "PrivilegeInsert",
|
||||
9: "PrivilegeDelete",
|
||||
0: "PrivilegeAll",
|
||||
1: "PrivilegeCreateCollection",
|
||||
2: "PrivilegeDropCollection",
|
||||
3: "PrivilegeDescribeCollection",
|
||||
4: "PrivilegeShowCollections",
|
||||
5: "PrivilegeLoad",
|
||||
6: "PrivilegeRelease",
|
||||
7: "PrivilegeCompaction",
|
||||
8: "PrivilegeInsert",
|
||||
9: "PrivilegeDelete",
|
||||
10: "PrivilegeGetStatistics",
|
||||
11: "PrivilegeCreateIndex",
|
||||
12: "PrivilegeIndexDetail",
|
||||
13: "PrivilegeDropIndex",
|
||||
14: "PrivilegeSearch",
|
||||
15: "PrivilegeFlush",
|
||||
16: "PrivilegeQuery",
|
||||
17: "PrivilegeLoadBalance",
|
||||
18: "PrivilegeImport",
|
||||
19: "PrivilegeCreateOwnership",
|
||||
20: "PrivilegeUpdateUser",
|
||||
21: "PrivilegeDropOwnership",
|
||||
22: "PrivilegeSelectOwnership",
|
||||
23: "PrivilegeManageOwnership",
|
||||
24: "PrivilegeSelectUser",
|
||||
}
|
||||
|
||||
var ObjectPrivilege_value = map[string]int32{
|
||||
|
@ -744,6 +777,21 @@ var ObjectPrivilege_value = map[string]int32{
|
|||
"PrivilegeCompaction": 7,
|
||||
"PrivilegeInsert": 8,
|
||||
"PrivilegeDelete": 9,
|
||||
"PrivilegeGetStatistics": 10,
|
||||
"PrivilegeCreateIndex": 11,
|
||||
"PrivilegeIndexDetail": 12,
|
||||
"PrivilegeDropIndex": 13,
|
||||
"PrivilegeSearch": 14,
|
||||
"PrivilegeFlush": 15,
|
||||
"PrivilegeQuery": 16,
|
||||
"PrivilegeLoadBalance": 17,
|
||||
"PrivilegeImport": 18,
|
||||
"PrivilegeCreateOwnership": 19,
|
||||
"PrivilegeUpdateUser": 20,
|
||||
"PrivilegeDropOwnership": 21,
|
||||
"PrivilegeSelectOwnership": 22,
|
||||
"PrivilegeManageOwnership": 23,
|
||||
"PrivilegeSelectUser": 24,
|
||||
}
|
||||
|
||||
func (x ObjectPrivilege) String() string {
|
||||
|
@ -1231,6 +1279,7 @@ type PrivilegeExt struct {
|
|||
ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=milvus.proto.common.ObjectType" json:"object_type,omitempty"`
|
||||
ObjectPrivilege ObjectPrivilege `protobuf:"varint,2,opt,name=object_privilege,json=objectPrivilege,proto3,enum=milvus.proto.common.ObjectPrivilege" json:"object_privilege,omitempty"`
|
||||
ObjectNameIndex int32 `protobuf:"varint,3,opt,name=object_name_index,json=objectNameIndex,proto3" json:"object_name_index,omitempty"`
|
||||
ObjectNameIndexs int32 `protobuf:"varint,4,opt,name=object_name_indexs,json=objectNameIndexs,proto3" json:"object_name_indexs,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
|
@ -1282,6 +1331,13 @@ func (m *PrivilegeExt) GetObjectNameIndex() int32 {
|
|||
return 0
|
||||
}
|
||||
|
||||
func (m *PrivilegeExt) GetObjectNameIndexs() int32 {
|
||||
if m != nil {
|
||||
return m.ObjectNameIndexs
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
var E_PrivilegeExtObj = &proto.ExtensionDesc{
|
||||
ExtendedType: (*descriptor.MessageOptions)(nil),
|
||||
ExtensionType: (*PrivilegeExt)(nil),
|
||||
|
@ -1320,152 +1376,160 @@ func init() {
|
|||
func init() { proto.RegisterFile("common.proto", fileDescriptor_555bd8c177793206) }
|
||||
|
||||
var fileDescriptor_555bd8c177793206 = []byte{
|
||||
// 2342 bytes of a gzipped FileDescriptorProto
|
||||
// 2473 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0x49, 0x73, 0x24, 0x47,
|
||||
0xf5, 0x57, 0x75, 0xf7, 0xa8, 0xd5, 0xd9, 0x2d, 0x29, 0x95, 0xd2, 0x68, 0xda, 0xb3, 0x78, 0xe4,
|
||||
0xfe, 0xdb, 0x7f, 0x44, 0x83, 0x25, 0xb0, 0x23, 0x80, 0x20, 0xc2, 0x04, 0x52, 0xb7, 0xa4, 0xe9,
|
||||
0xb0, 0x96, 0xa6, 0xa4, 0x19, 0x3b, 0x88, 0x00, 0x45, 0x76, 0xd5, 0x53, 0xab, 0x66, 0xaa, 0x2a,
|
||||
0x8b, 0xca, 0x6c, 0x8d, 0x9a, 0x93, 0x31, 0x37, 0x4e, 0x60, 0xbe, 0x00, 0x1f, 0x80, 0x7d, 0x31,
|
||||
0x1c, 0xd9, 0xb1, 0x01, 0x73, 0xe1, 0xc2, 0x0e, 0x47, 0xb8, 0xb3, 0x7a, 0x25, 0x5e, 0x66, 0x6d,
|
||||
0xd2, 0xc8, 0x70, 0xe0, 0x56, 0xf9, 0x7b, 0x2f, 0xdf, 0x96, 0x6f, 0xc9, 0x2c, 0xd2, 0x70, 0x44,
|
||||
0x10, 0x88, 0x70, 0x25, 0x8a, 0x85, 0x12, 0x6c, 0x3e, 0xf0, 0xfc, 0x93, 0x91, 0x34, 0xab, 0x15,
|
||||
0x43, 0xba, 0xba, 0x34, 0x14, 0x62, 0xe8, 0xc3, 0xaa, 0x06, 0x07, 0xa3, 0xa3, 0x55, 0x17, 0xa4,
|
||||
0x13, 0x7b, 0x91, 0x12, 0xb1, 0x61, 0x6c, 0x1d, 0x92, 0xc9, 0x7d, 0xc5, 0xd5, 0x48, 0xb2, 0xa7,
|
||||
0x08, 0x81, 0x38, 0x16, 0xf1, 0xa1, 0x23, 0x5c, 0x68, 0x5a, 0x4b, 0xd6, 0xf2, 0xcc, 0x13, 0x0f,
|
||||
0xaf, 0x5c, 0x20, 0x75, 0x65, 0x03, 0xd9, 0x3a, 0xc2, 0x05, 0xbb, 0x06, 0xe9, 0x27, 0x5b, 0x24,
|
||||
0x93, 0x31, 0x70, 0x29, 0xc2, 0x66, 0x69, 0xc9, 0x5a, 0xae, 0xd9, 0xc9, 0xaa, 0xf5, 0x3e, 0xd2,
|
||||
0x78, 0x1a, 0xc6, 0x77, 0xb8, 0x3f, 0x82, 0x3e, 0xf7, 0x62, 0x46, 0x49, 0xf9, 0x1e, 0x8c, 0xb5,
|
||||
0xfc, 0x9a, 0x8d, 0x9f, 0x6c, 0x81, 0x5c, 0x3a, 0x41, 0x72, 0xb2, 0xd1, 0x2c, 0x5a, 0x4f, 0x92,
|
||||
0xfa, 0xd3, 0x30, 0xee, 0x72, 0xc5, 0xdf, 0x66, 0x1b, 0x23, 0x15, 0x97, 0x2b, 0xae, 0x77, 0x35,
|
||||
0x6c, 0xfd, 0xdd, 0xba, 0x4e, 0x2a, 0xeb, 0xbe, 0x18, 0xe4, 0x22, 0x2d, 0x4d, 0x4c, 0x44, 0x9e,
|
||||
0x10, 0xda, 0xf7, 0xb9, 0x03, 0xc7, 0xc2, 0x77, 0x21, 0xd6, 0x26, 0xa1, 0x5c, 0xc5, 0x87, 0xa9,
|
||||
0x5c, 0xc5, 0x87, 0xec, 0x03, 0xa4, 0xa2, 0xc6, 0x91, 0xb1, 0x66, 0xe6, 0x89, 0x47, 0x2f, 0x8c,
|
||||
0x40, 0x41, 0xcc, 0xc1, 0x38, 0x02, 0x5b, 0xef, 0xc0, 0x10, 0x68, 0x45, 0xb2, 0x59, 0x5e, 0x2a,
|
||||
0x2f, 0x37, 0xec, 0x64, 0xd5, 0xfa, 0xd8, 0x19, 0xbd, 0x5b, 0xb1, 0x18, 0x45, 0xac, 0x47, 0x1a,
|
||||
0x51, 0x8e, 0xc9, 0xa6, 0xb5, 0x54, 0x5e, 0xae, 0x3f, 0xf1, 0xd8, 0x7f, 0xd3, 0xa6, 0x8d, 0xb6,
|
||||
0xcf, 0x6c, 0x6d, 0x3d, 0x4e, 0xaa, 0x6b, 0xae, 0x1b, 0x83, 0x94, 0x6c, 0x86, 0x94, 0xbc, 0x28,
|
||||
0x71, 0xa6, 0xe4, 0x45, 0x18, 0xa3, 0x48, 0xc4, 0x4a, 0xfb, 0x52, 0xb6, 0xf5, 0x77, 0xeb, 0x05,
|
||||
0x8b, 0x54, 0x77, 0xe4, 0x70, 0x9d, 0x4b, 0x60, 0xef, 0x27, 0x53, 0x81, 0x1c, 0x1e, 0x6a, 0x7f,
|
||||
0xcd, 0x89, 0x5f, 0xbf, 0xd0, 0x82, 0x1d, 0x39, 0xd4, 0x7e, 0x56, 0x03, 0xf3, 0x81, 0x01, 0x0e,
|
||||
0xe4, 0xb0, 0xd7, 0x4d, 0x24, 0x9b, 0x05, 0xbb, 0x4e, 0x6a, 0xca, 0x0b, 0x40, 0x2a, 0x1e, 0x44,
|
||||
0xcd, 0xf2, 0x92, 0xb5, 0x5c, 0xb1, 0x73, 0x80, 0x5d, 0x25, 0x53, 0x52, 0x8c, 0x62, 0x07, 0x7a,
|
||||
0xdd, 0x66, 0x45, 0x6f, 0xcb, 0xd6, 0xad, 0xa7, 0x48, 0x6d, 0x47, 0x0e, 0x6f, 0x01, 0x77, 0x21,
|
||||
0x66, 0xef, 0x21, 0x95, 0x01, 0x97, 0xc6, 0xa2, 0xfa, 0xdb, 0x5b, 0x84, 0x1e, 0xd8, 0x9a, 0xb3,
|
||||
0xf5, 0x71, 0xd2, 0xe8, 0xee, 0x6c, 0xff, 0x0f, 0x12, 0xd0, 0x74, 0x79, 0xcc, 0x63, 0x77, 0x97,
|
||||
0x07, 0x69, 0x22, 0xe6, 0x40, 0xeb, 0x15, 0x8b, 0x34, 0xfa, 0xb1, 0x77, 0xe2, 0xf9, 0x30, 0x84,
|
||||
0x8d, 0x53, 0xc5, 0x3e, 0x4c, 0xea, 0x62, 0x70, 0x17, 0x1c, 0x55, 0x8c, 0xdd, 0xcd, 0x0b, 0xf5,
|
||||
0xec, 0x69, 0x3e, 0x1d, 0x3e, 0x22, 0xb2, 0x6f, 0xb6, 0x47, 0x68, 0x22, 0x21, 0x4a, 0x05, 0xff,
|
||||
0xc7, 0x94, 0x33, 0x62, 0x32, 0x23, 0xec, 0x59, 0x71, 0x16, 0x60, 0x6d, 0x32, 0x97, 0x08, 0x0c,
|
||||
0x79, 0x00, 0x87, 0x5e, 0xe8, 0xc2, 0xa9, 0x3e, 0x84, 0x4b, 0x29, 0x2f, 0xba, 0xd2, 0x43, 0xb8,
|
||||
0xfd, 0xcb, 0x29, 0x52, 0xcb, 0xaa, 0x98, 0xd5, 0x49, 0x75, 0x7f, 0xe4, 0x38, 0x20, 0x25, 0x9d,
|
||||
0x60, 0xf3, 0x64, 0xf6, 0x76, 0x08, 0xa7, 0x11, 0x38, 0x0a, 0x5c, 0xcd, 0x43, 0x2d, 0x36, 0x47,
|
||||
0xa6, 0x3b, 0x22, 0x0c, 0xc1, 0x51, 0x9b, 0xdc, 0xf3, 0xc1, 0xa5, 0x25, 0xb6, 0x40, 0x68, 0x1f,
|
||||
0xe2, 0xc0, 0x93, 0xd2, 0x13, 0x61, 0x17, 0x42, 0x0f, 0x5c, 0x5a, 0x66, 0x57, 0xc8, 0x7c, 0x47,
|
||||
0xf8, 0x3e, 0x38, 0xca, 0x13, 0xe1, 0xae, 0x50, 0x1b, 0xa7, 0x9e, 0x54, 0x92, 0x56, 0x50, 0x6c,
|
||||
0xcf, 0xf7, 0x61, 0xc8, 0xfd, 0xb5, 0x78, 0x38, 0x0a, 0x20, 0x54, 0xf4, 0x12, 0xca, 0x48, 0xc0,
|
||||
0xae, 0x17, 0x40, 0x88, 0x92, 0x68, 0xb5, 0x80, 0x6a, 0x63, 0x31, 0x5a, 0x74, 0x8a, 0x3d, 0x44,
|
||||
0x2e, 0x27, 0x68, 0x41, 0x01, 0x0f, 0x80, 0xd6, 0xd8, 0x2c, 0xa9, 0x27, 0xa4, 0x83, 0xbd, 0xfe,
|
||||
0xd3, 0x94, 0x14, 0x24, 0xd8, 0xe2, 0xbe, 0x0d, 0x8e, 0x88, 0x5d, 0x5a, 0x2f, 0x98, 0x70, 0x07,
|
||||
0x1c, 0x25, 0xe2, 0x5e, 0x97, 0x36, 0xd0, 0xe0, 0x04, 0xdc, 0x07, 0x1e, 0x3b, 0xc7, 0x36, 0xc8,
|
||||
0x91, 0xaf, 0xe8, 0x34, 0xa3, 0xa4, 0xb1, 0xe9, 0xf9, 0xb0, 0x2b, 0xd4, 0xa6, 0x18, 0x85, 0x2e,
|
||||
0x9d, 0x61, 0x33, 0x84, 0xec, 0x80, 0xe2, 0x49, 0x04, 0x66, 0x51, 0x6d, 0x87, 0x3b, 0xc7, 0x90,
|
||||
0x00, 0x94, 0x2d, 0x12, 0xd6, 0xe1, 0x61, 0x28, 0x54, 0x27, 0x06, 0xae, 0x60, 0x53, 0xd7, 0x27,
|
||||
0x9d, 0x43, 0x73, 0xce, 0xe0, 0x9e, 0x0f, 0x94, 0xe5, 0xdc, 0x5d, 0xf0, 0x21, 0xe3, 0x9e, 0xcf,
|
||||
0xb9, 0x13, 0x1c, 0xb9, 0x17, 0xd0, 0xf8, 0xf5, 0x91, 0xe7, 0xbb, 0x3a, 0x24, 0xe6, 0x58, 0x2e,
|
||||
0xa3, 0x8d, 0x89, 0xf1, 0xbb, 0xdb, 0xbd, 0xfd, 0x03, 0xba, 0xc8, 0x2e, 0x93, 0xb9, 0x04, 0xd9,
|
||||
0x01, 0x15, 0x7b, 0x8e, 0x0e, 0xde, 0x15, 0x34, 0x75, 0x6f, 0xa4, 0xf6, 0x8e, 0x76, 0x20, 0x10,
|
||||
0xf1, 0x98, 0x36, 0xf1, 0x40, 0xb5, 0xa4, 0xf4, 0x88, 0xe8, 0x43, 0xa8, 0x61, 0x23, 0x88, 0xd4,
|
||||
0x38, 0x0f, 0x2f, 0xbd, 0xca, 0xae, 0x91, 0x2b, 0xb7, 0x23, 0x97, 0x2b, 0xe8, 0x05, 0xd8, 0x3c,
|
||||
0x0e, 0xb8, 0xbc, 0x87, 0xee, 0x8e, 0x62, 0xa0, 0xd7, 0xd8, 0x55, 0xb2, 0x78, 0xf6, 0x2c, 0xb2,
|
||||
0x60, 0x5d, 0xc7, 0x8d, 0xc6, 0xdb, 0x4e, 0x0c, 0x2e, 0x84, 0xca, 0xe3, 0x7e, 0xba, 0xf1, 0x46,
|
||||
0x2e, 0xf5, 0x41, 0xe2, 0xc3, 0x48, 0x34, 0x9e, 0x3f, 0x48, 0xbc, 0xc9, 0x9a, 0x64, 0x61, 0x0b,
|
||||
0xd4, 0x83, 0x94, 0x25, 0xa4, 0x6c, 0x7b, 0x52, 0x93, 0x6e, 0x4b, 0x88, 0x65, 0x4a, 0x79, 0x84,
|
||||
0x31, 0x32, 0xb3, 0x05, 0x0a, 0xc1, 0x14, 0x6b, 0x61, 0x9c, 0x8c, 0x79, 0xb6, 0xf0, 0x21, 0x85,
|
||||
0xff, 0x0f, 0x63, 0xd0, 0x8d, 0x45, 0x54, 0x04, 0x1f, 0x45, 0x37, 0xf7, 0x22, 0x88, 0xb9, 0x02,
|
||||
0x94, 0x51, 0xa4, 0x3d, 0x86, 0x72, 0xf6, 0x01, 0x23, 0x50, 0x84, 0xff, 0x3f, 0x87, 0x8b, 0x5a,
|
||||
0xdf, 0x81, 0x39, 0x9c, 0x70, 0x83, 0xe9, 0x7c, 0x29, 0x69, 0x19, 0xbd, 0x4e, 0x94, 0x64, 0x15,
|
||||
0x9d, 0x12, 0xdf, 0x89, 0xa9, 0x62, 0xf6, 0x6d, 0xc5, 0x3c, 0x54, 0x29, 0xde, 0x66, 0x8f, 0x90,
|
||||
0x1b, 0x36, 0x1c, 0xc5, 0x20, 0x8f, 0xfb, 0xc2, 0xf7, 0x9c, 0x71, 0x2f, 0x3c, 0x12, 0x59, 0x4a,
|
||||
0x22, 0xcb, 0xbb, 0xd0, 0x12, 0x0c, 0x8b, 0xa1, 0xa7, 0xf0, 0xbb, 0x31, 0x26, 0xbb, 0x42, 0xed,
|
||||
0x63, 0x83, 0xdb, 0xd6, 0x2d, 0x93, 0x3e, 0x8e, 0x5a, 0x76, 0x85, 0x0d, 0x91, 0xef, 0x39, 0x7c,
|
||||
0xed, 0x84, 0x7b, 0x3e, 0x1f, 0xf8, 0x40, 0x57, 0x30, 0x28, 0xfb, 0x30, 0xc4, 0x92, 0xcd, 0xce,
|
||||
0x77, 0x95, 0x31, 0x32, 0xdd, 0xed, 0xda, 0xf0, 0x89, 0x11, 0x48, 0x65, 0x73, 0x07, 0xe8, 0x9f,
|
||||
0xab, 0xed, 0x67, 0x09, 0xd1, 0x49, 0x85, 0x17, 0x0a, 0x40, 0x15, 0xf9, 0x6a, 0x57, 0x84, 0x40,
|
||||
0x27, 0x58, 0x83, 0x4c, 0xdd, 0x0e, 0x3d, 0x29, 0x47, 0xe0, 0x52, 0x0b, 0x0b, 0xaa, 0x17, 0xf6,
|
||||
0x63, 0x31, 0xc4, 0xd9, 0x45, 0x4b, 0x48, 0xdd, 0xf4, 0x42, 0x4f, 0x1e, 0xeb, 0x56, 0x42, 0xc8,
|
||||
0x64, 0x52, 0x59, 0x95, 0xf6, 0xf3, 0x16, 0x69, 0x24, 0x36, 0x18, 0xe1, 0x0b, 0x84, 0x16, 0xd7,
|
||||
0xb9, 0xf8, 0x2c, 0xa1, 0x2d, 0x6c, 0x6b, 0x5b, 0xb1, 0xb8, 0xef, 0x85, 0x43, 0x5a, 0x42, 0x69,
|
||||
0xfb, 0xc0, 0x7d, 0x2d, 0xb9, 0x4e, 0xaa, 0x9b, 0xfe, 0x48, 0xab, 0xa9, 0x68, 0xa5, 0xb8, 0x40,
|
||||
0xb6, 0x4b, 0x48, 0xc2, 0x04, 0x88, 0xc0, 0xa5, 0x93, 0x6c, 0x9a, 0xd4, 0x4c, 0xda, 0x23, 0xad,
|
||||
0xda, 0xfe, 0x10, 0x99, 0x3d, 0x37, 0xf7, 0xd9, 0x14, 0xa9, 0x24, 0xaa, 0x29, 0x69, 0xac, 0x7b,
|
||||
0x21, 0x8f, 0xc7, 0xa6, 0xb7, 0x50, 0x17, 0x6b, 0x6e, 0xd3, 0x17, 0x5c, 0x25, 0x00, 0xb4, 0x5f,
|
||||
0x6c, 0xe8, 0xc1, 0xab, 0x37, 0x4e, 0x93, 0xda, 0xed, 0xd0, 0x85, 0x23, 0x2f, 0x04, 0x97, 0x4e,
|
||||
0xe8, 0x9a, 0x37, 0xd5, 0x92, 0x17, 0x9f, 0x8b, 0x11, 0x44, 0x63, 0x0a, 0x18, 0x60, 0xe1, 0xde,
|
||||
0xe2, 0xb2, 0x00, 0x1d, 0xe1, 0xb9, 0x75, 0xf5, 0xb5, 0x6e, 0x50, 0xdc, 0x3e, 0xd4, 0xe7, 0x76,
|
||||
0x2c, 0xee, 0xe7, 0x98, 0xa4, 0xc7, 0xa8, 0x69, 0x0b, 0xd4, 0xfe, 0x58, 0x2a, 0x08, 0x3a, 0x22,
|
||||
0x3c, 0xf2, 0x86, 0x92, 0x7a, 0xa8, 0x69, 0x5b, 0x70, 0xb7, 0xb0, 0xfd, 0x2e, 0x66, 0x8e, 0x0d,
|
||||
0x3e, 0x70, 0x59, 0x94, 0x7a, 0x4f, 0x77, 0x3d, 0x6d, 0xea, 0x9a, 0xef, 0x71, 0x49, 0x7d, 0x74,
|
||||
0x05, 0xad, 0x34, 0xcb, 0x00, 0x0f, 0x75, 0xcd, 0x57, 0x10, 0x9b, 0x75, 0xc8, 0x16, 0xc8, 0xac,
|
||||
0xe1, 0xef, 0xf3, 0x58, 0x79, 0x5a, 0xc8, 0x4b, 0x96, 0x4e, 0x9f, 0x58, 0x44, 0x39, 0xf6, 0x32,
|
||||
0x0e, 0x99, 0xc6, 0x2d, 0x2e, 0x73, 0xe8, 0xa7, 0x16, 0x5b, 0x24, 0x73, 0xa9, 0x6b, 0x39, 0xfe,
|
||||
0x33, 0x8b, 0xcd, 0x93, 0x19, 0x74, 0x2d, 0xc3, 0x24, 0xfd, 0xb9, 0x06, 0xd1, 0x89, 0x02, 0xf8,
|
||||
0x8a, 0x96, 0x90, 0x78, 0x51, 0xc0, 0x7f, 0xa1, 0x95, 0xa1, 0x84, 0x24, 0x89, 0x24, 0x7d, 0xd5,
|
||||
0x42, 0x4b, 0x53, 0x65, 0x09, 0x4c, 0x5f, 0xd3, 0x8c, 0x28, 0x35, 0x63, 0x7c, 0x5d, 0x33, 0x26,
|
||||
0x32, 0x33, 0xf4, 0x0d, 0x8d, 0xde, 0xe2, 0xa1, 0x2b, 0x8e, 0x8e, 0x32, 0xf4, 0x4d, 0x8b, 0x35,
|
||||
0xc9, 0x3c, 0x6e, 0x5f, 0xe7, 0x3e, 0x0f, 0x9d, 0x9c, 0xff, 0x2d, 0x8b, 0x5d, 0x26, 0xf4, 0x9c,
|
||||
0x3a, 0x49, 0x9f, 0x2b, 0x31, 0x9a, 0xc6, 0x57, 0x17, 0x0f, 0xfd, 0x62, 0x49, 0xc7, 0x2a, 0x61,
|
||||
0x34, 0xd8, 0x97, 0x4a, 0x6c, 0xc6, 0x04, 0xdd, 0xac, 0xbf, 0x5c, 0x62, 0x75, 0x32, 0xd9, 0x0b,
|
||||
0x25, 0xc4, 0x8a, 0x7e, 0x16, 0xf3, 0x7b, 0xd2, 0x74, 0x50, 0xfa, 0x39, 0x2c, 0xa3, 0x4b, 0x3a,
|
||||
0xbf, 0xe9, 0x0b, 0x38, 0x9d, 0x99, 0x0d, 0x12, 0x42, 0xb7, 0x50, 0x3b, 0x92, 0x7e, 0x5e, 0xef,
|
||||
0x30, 0xe3, 0x8f, 0xfe, 0xb5, 0xac, 0x43, 0x53, 0x9c, 0x85, 0x7f, 0x2b, 0xa3, 0x09, 0x5b, 0xa0,
|
||||
0xf2, 0x72, 0xa6, 0x7f, 0x2f, 0xb3, 0xab, 0xe4, 0x72, 0x8a, 0xe9, 0xc9, 0x94, 0x15, 0xf2, 0x3f,
|
||||
0xca, 0xec, 0x3a, 0xb9, 0x82, 0x6d, 0x3a, 0xcb, 0x1b, 0xdc, 0xe4, 0x49, 0xe5, 0x39, 0x92, 0xfe,
|
||||
0xb3, 0xcc, 0xae, 0x91, 0xc5, 0x2d, 0x50, 0xd9, 0x79, 0x14, 0x88, 0xff, 0x2a, 0xb3, 0x69, 0x32,
|
||||
0x65, 0xe3, 0xe8, 0x82, 0x13, 0xa0, 0xaf, 0x96, 0xf1, 0x50, 0xd3, 0x65, 0x62, 0xce, 0x6b, 0x65,
|
||||
0x0c, 0xf5, 0x33, 0x5c, 0x39, 0xc7, 0xdd, 0xa0, 0x73, 0xcc, 0xc3, 0x10, 0x7c, 0x49, 0x5f, 0x2f,
|
||||
0x63, 0x40, 0x6d, 0x08, 0xc4, 0x09, 0x14, 0xe0, 0x37, 0xb4, 0xd3, 0x9a, 0xf9, 0x23, 0x23, 0x88,
|
||||
0xc7, 0x19, 0xe1, 0xcd, 0x32, 0x1e, 0x8d, 0xe1, 0x3f, 0x4b, 0x79, 0xab, 0xcc, 0x6e, 0x90, 0xa6,
|
||||
0x69, 0x16, 0xe9, 0xc1, 0x20, 0x71, 0x08, 0xd8, 0x5e, 0xe9, 0x73, 0x95, 0x4c, 0x62, 0x17, 0x7c,
|
||||
0xc5, 0xb3, 0x7d, 0x9f, 0xaa, 0xa0, 0x5d, 0x58, 0x5c, 0x79, 0x57, 0x95, 0xf4, 0xf9, 0x0a, 0x9e,
|
||||
0xe8, 0x16, 0xa8, 0xa4, 0xb1, 0x4a, 0xfa, 0x69, 0x8d, 0x24, 0x92, 0xb5, 0xc8, 0x5f, 0x55, 0xd8,
|
||||
0x2c, 0x21, 0xa6, 0x26, 0x35, 0xf0, 0xeb, 0x54, 0x14, 0xde, 0x5d, 0x4e, 0x20, 0xd6, 0x8d, 0x9d,
|
||||
0xfe, 0x26, 0x53, 0x50, 0xe8, 0x7c, 0xf4, 0xb7, 0x15, 0x0c, 0xd9, 0x81, 0x17, 0xc0, 0x81, 0xe7,
|
||||
0xdc, 0xa3, 0x5f, 0xad, 0x61, 0xc8, 0xb4, 0x47, 0xbb, 0xc2, 0x05, 0x73, 0xc2, 0x5f, 0xab, 0x61,
|
||||
0xc2, 0x60, 0x1e, 0x9a, 0x84, 0xf9, 0xba, 0x5e, 0x27, 0xdd, 0xbb, 0xd7, 0xa5, 0xdf, 0xc0, 0x3b,
|
||||
0x14, 0x49, 0xd6, 0x07, 0xfb, 0x7b, 0xf4, 0x9b, 0x35, 0x54, 0xb5, 0xe6, 0xfb, 0xc2, 0xe1, 0x2a,
|
||||
0xab, 0x86, 0x6f, 0xd5, 0xb0, 0x9c, 0x0a, 0xda, 0x93, 0x53, 0x7b, 0xb1, 0x86, 0xb1, 0x4f, 0x70,
|
||||
0x9d, 0x6c, 0x5d, 0x6c, 0x8a, 0xdf, 0xd6, 0x52, 0xf1, 0x05, 0x87, 0x96, 0x1c, 0x28, 0xfa, 0x1d,
|
||||
0xcd, 0x77, 0xfe, 0x5a, 0x40, 0x7f, 0x57, 0x4f, 0xf2, 0xab, 0x80, 0xfd, 0xbe, 0x6e, 0xea, 0xe3,
|
||||
0xec, 0x3d, 0x80, 0xfe, 0x41, 0xc3, 0xe7, 0xef, 0x0e, 0xf4, 0x8f, 0x75, 0x34, 0xac, 0x38, 0xfe,
|
||||
0xf1, 0x0a, 0x2c, 0xe9, 0x9f, 0xea, 0x68, 0x41, 0x3e, 0xe8, 0xe9, 0x77, 0x1b, 0x18, 0xac, 0x74,
|
||||
0xc4, 0xd3, 0xef, 0x35, 0xd0, 0xcd, 0x73, 0xc3, 0x9d, 0x7e, 0xbf, 0xa1, 0x8f, 0x23, 0x1b, 0xeb,
|
||||
0xf4, 0x07, 0x05, 0x00, 0xb9, 0xe8, 0x0f, 0x1b, 0xba, 0x03, 0x9d, 0x19, 0xe5, 0xf4, 0x47, 0x0d,
|
||||
0xb4, 0xed, 0xfc, 0x10, 0xa7, 0x3f, 0x6e, 0x98, 0xe3, 0xce, 0xc6, 0x37, 0xfd, 0x49, 0x03, 0x2b,
|
||||
0xe0, 0xe2, 0xc1, 0x4d, 0x5f, 0xd2, 0xba, 0xf2, 0x91, 0x4d, 0x5f, 0x6e, 0xb4, 0x5b, 0xa4, 0xda,
|
||||
0x95, 0xbe, 0x9e, 0x1b, 0x55, 0x52, 0xee, 0x4a, 0x9f, 0x4e, 0x60, 0x9b, 0x5d, 0x17, 0xc2, 0xdf,
|
||||
0x38, 0x8d, 0xe2, 0x3b, 0xef, 0xa5, 0x56, 0x7b, 0x9d, 0xcc, 0x76, 0x44, 0x10, 0xf1, 0xac, 0xdc,
|
||||
0xf4, 0xa8, 0x30, 0x33, 0x06, 0x5c, 0x93, 0x2a, 0x13, 0xd8, 0xab, 0x37, 0x4e, 0xc1, 0x19, 0xe9,
|
||||
0x89, 0x66, 0xe1, 0x12, 0x37, 0x61, 0x90, 0x5d, 0x5a, 0x6a, 0x3f, 0x4b, 0x68, 0x47, 0x84, 0xd2,
|
||||
0x93, 0x0a, 0x42, 0x67, 0xbc, 0x0d, 0x27, 0xe0, 0xeb, 0xb9, 0xa9, 0x62, 0x11, 0x0e, 0xe9, 0x84,
|
||||
0x7e, 0x27, 0x80, 0xbe, 0xef, 0x9b, 0xe9, 0xba, 0x8e, 0x77, 0x01, 0xfd, 0x18, 0x98, 0x21, 0x64,
|
||||
0xe3, 0x04, 0x42, 0x35, 0xe2, 0xbe, 0x3f, 0xa6, 0x65, 0x5c, 0x77, 0x46, 0x52, 0x89, 0xc0, 0xfb,
|
||||
0xa4, 0x9e, 0xdf, 0x5f, 0xb1, 0x48, 0xdd, 0x8c, 0xd2, 0xcc, 0x34, 0xb3, 0xec, 0x43, 0xe8, 0x7a,
|
||||
0x5a, 0x38, 0xde, 0x65, 0x35, 0x94, 0x0c, 0x7d, 0x2b, 0x67, 0xda, 0x57, 0x3c, 0x56, 0xe9, 0xa3,
|
||||
0xc3, 0x40, 0x5d, 0x71, 0x3f, 0xf4, 0x05, 0x77, 0xf5, 0x3c, 0xcf, 0xb6, 0xf6, 0x79, 0x2c, 0xf5,
|
||||
0x50, 0xc7, 0xab, 0x7e, 0x22, 0x3f, 0xd6, 0xfe, 0xb8, 0xf4, 0x52, 0x0e, 0xe6, 0x3e, 0x4f, 0xe2,
|
||||
0xf0, 0x34, 0xa0, 0x4e, 0xf6, 0x34, 0xd3, 0x49, 0x7b, 0x99, 0x90, 0xfc, 0xe1, 0xa6, 0xfd, 0xc9,
|
||||
0x87, 0xe0, 0x04, 0x46, 0x65, 0xcb, 0x17, 0x03, 0xee, 0x53, 0xab, 0xfd, 0x99, 0x12, 0x99, 0x3d,
|
||||
0xf7, 0x38, 0x43, 0x8b, 0xb2, 0xc5, 0x9a, 0x8f, 0xe7, 0x75, 0x83, 0x3c, 0x94, 0x21, 0x0f, 0x8c,
|
||||
0x7a, 0x0b, 0xaf, 0x7f, 0x19, 0xf9, 0xdc, 0xcc, 0x2f, 0xb1, 0x9b, 0xe4, 0x5a, 0x4e, 0x7c, 0x70,
|
||||
0xd2, 0x63, 0xbb, 0x6d, 0x66, 0x0c, 0xe7, 0x47, 0x7e, 0x05, 0xe3, 0x98, 0x51, 0xb1, 0x07, 0x98,
|
||||
0x87, 0x57, 0xfe, 0x92, 0x34, 0xa3, 0x8c, 0x4e, 0xe2, 0x5b, 0x28, 0xb7, 0x31, 0x4b, 0x26, 0x5a,
|
||||
0xc5, 0xc8, 0x65, 0x84, 0x64, 0xcc, 0x4c, 0x9d, 0x01, 0x93, 0x71, 0x53, 0xfb, 0xa0, 0x20, 0x73,
|
||||
0xd9, 0x73, 0xf6, 0x10, 0x4e, 0xd5, 0xa1, 0x18, 0xdc, 0x65, 0x37, 0x57, 0xcc, 0x6f, 0xa8, 0x95,
|
||||
0xf4, 0x37, 0xd4, 0xca, 0x0e, 0x48, 0xc9, 0x87, 0xb0, 0x17, 0x69, 0x1b, 0x9b, 0x7f, 0xa9, 0xea,
|
||||
0x77, 0xfa, 0x23, 0x17, 0xff, 0xfd, 0x28, 0xbc, 0xbb, 0xed, 0xd9, 0xa8, 0xb0, 0xda, 0x1b, 0xdc,
|
||||
0x5d, 0x7f, 0x86, 0xcc, 0x78, 0x22, 0xdd, 0x37, 0x8c, 0x23, 0x67, 0xbd, 0xde, 0xd1, 0xfb, 0xfa,
|
||||
0x28, 0xa3, 0x6f, 0x7d, 0xf4, 0xc9, 0xa1, 0xa7, 0x8e, 0x47, 0x03, 0x94, 0xb6, 0x6a, 0xd8, 0x1e,
|
||||
0xf7, 0x44, 0xf2, 0xb5, 0xea, 0x85, 0x0a, 0x7b, 0x85, 0x6f, 0x7e, 0x90, 0xad, 0x1a, 0x8d, 0xd1,
|
||||
0xe0, 0x0b, 0x96, 0x35, 0x98, 0xd4, 0xd0, 0x93, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0xcb, 0x59,
|
||||
0x0b, 0xcb, 0x66, 0x13, 0x00, 0x00,
|
||||
0xf5, 0x57, 0x75, 0xb7, 0x96, 0xce, 0x6e, 0x49, 0x4f, 0x29, 0x8d, 0xa6, 0x3d, 0x8b, 0x47, 0xd6,
|
||||
0xdf, 0xfe, 0x33, 0x08, 0x5b, 0x03, 0xe3, 0x08, 0x20, 0x88, 0x30, 0x81, 0xd4, 0x2d, 0x69, 0x14,
|
||||
0x1e, 0x2d, 0x94, 0x34, 0xb6, 0x83, 0x08, 0x98, 0x48, 0x55, 0x3d, 0x75, 0xd7, 0x4c, 0x75, 0x65,
|
||||
0x51, 0x99, 0xad, 0x51, 0x73, 0x32, 0x26, 0x82, 0x33, 0x98, 0x2f, 0xc0, 0x07, 0x60, 0x5f, 0x0c,
|
||||
0x47, 0x76, 0x6c, 0xb6, 0x0b, 0x17, 0x76, 0x38, 0xc2, 0x9d, 0xd5, 0x2b, 0xf1, 0x32, 0x6b, 0x6b,
|
||||
0xcd, 0x18, 0x0e, 0xdc, 0x3a, 0x7f, 0xef, 0xe5, 0xdb, 0x97, 0xac, 0x66, 0x4d, 0x4f, 0xf6, 0xfb,
|
||||
0x32, 0x5a, 0x8d, 0x13, 0xa9, 0x25, 0x9f, 0xef, 0x07, 0xe1, 0xc9, 0x40, 0xd9, 0xd3, 0xaa, 0x25,
|
||||
0x5d, 0x58, 0xea, 0x4a, 0xd9, 0x0d, 0xf1, 0x9a, 0x01, 0x8f, 0x06, 0xc7, 0xd7, 0x7c, 0x54, 0x5e,
|
||||
0x12, 0xc4, 0x5a, 0x26, 0x96, 0x71, 0xf9, 0x36, 0x9b, 0x38, 0xd0, 0x42, 0x0f, 0x14, 0x7f, 0x8a,
|
||||
0x31, 0x4c, 0x12, 0x99, 0xdc, 0xf6, 0xa4, 0x8f, 0x2d, 0x67, 0xc9, 0xb9, 0x3a, 0x73, 0xfd, 0xe1,
|
||||
0xd5, 0x07, 0x48, 0x5d, 0xdd, 0x20, 0xb6, 0xb6, 0xf4, 0xd1, 0xad, 0x63, 0xf6, 0x93, 0x2f, 0xb2,
|
||||
0x89, 0x04, 0x85, 0x92, 0x51, 0xab, 0xb2, 0xe4, 0x5c, 0xad, 0xbb, 0xe9, 0x69, 0xf9, 0xbd, 0xac,
|
||||
0xf9, 0x34, 0x0e, 0x9f, 0x11, 0xe1, 0x00, 0xf7, 0x45, 0x90, 0x70, 0x60, 0xd5, 0xbb, 0x38, 0x34,
|
||||
0xf2, 0xeb, 0x2e, 0xfd, 0xe4, 0x0b, 0x6c, 0xfc, 0x84, 0xc8, 0xe9, 0x45, 0x7b, 0x58, 0x7e, 0x92,
|
||||
0x35, 0x9e, 0xc6, 0x61, 0x47, 0x68, 0xf1, 0x36, 0xd7, 0x38, 0xab, 0xf9, 0x42, 0x0b, 0x73, 0xab,
|
||||
0xe9, 0x9a, 0xdf, 0xcb, 0x97, 0x58, 0x6d, 0x3d, 0x94, 0x47, 0x85, 0x48, 0xc7, 0x10, 0x53, 0x91,
|
||||
0x27, 0x0c, 0xf6, 0x43, 0xe1, 0x61, 0x4f, 0x86, 0x3e, 0x26, 0xc6, 0x24, 0x92, 0xab, 0x45, 0x37,
|
||||
0x93, 0xab, 0x45, 0x97, 0xbf, 0x9f, 0xd5, 0xf4, 0x30, 0xb6, 0xd6, 0xcc, 0x5c, 0x7f, 0xf4, 0x81,
|
||||
0x11, 0x28, 0x89, 0x39, 0x1c, 0xc6, 0xe8, 0x9a, 0x1b, 0x14, 0x02, 0xa3, 0x48, 0xb5, 0xaa, 0x4b,
|
||||
0xd5, 0xab, 0x4d, 0x37, 0x3d, 0x2d, 0x7f, 0x74, 0x44, 0xef, 0x56, 0x22, 0x07, 0x31, 0xdf, 0x66,
|
||||
0xcd, 0xb8, 0xc0, 0x54, 0xcb, 0x59, 0xaa, 0x5e, 0x6d, 0x5c, 0x7f, 0xec, 0xbf, 0x69, 0x33, 0x46,
|
||||
0xbb, 0x23, 0x57, 0x97, 0x9f, 0x60, 0x93, 0x6b, 0xbe, 0x9f, 0xa0, 0x52, 0x7c, 0x86, 0x55, 0x82,
|
||||
0x38, 0x75, 0xa6, 0x12, 0xc4, 0x14, 0xa3, 0x58, 0x26, 0xda, 0xf8, 0x52, 0x75, 0xcd, 0xef, 0xe5,
|
||||
0x17, 0x1d, 0x36, 0xb9, 0xa3, 0xba, 0xeb, 0x42, 0x21, 0x7f, 0x1f, 0x9b, 0xea, 0xab, 0xee, 0x6d,
|
||||
0xe3, 0xaf, 0xcd, 0xf8, 0xa5, 0x07, 0x5a, 0xb0, 0xa3, 0xba, 0xc6, 0xcf, 0xc9, 0xbe, 0xfd, 0x41,
|
||||
0x01, 0xee, 0xab, 0xee, 0x76, 0x27, 0x95, 0x6c, 0x0f, 0xfc, 0x12, 0xab, 0xeb, 0xa0, 0x8f, 0x4a,
|
||||
0x8b, 0x7e, 0xdc, 0xaa, 0x2e, 0x39, 0x57, 0x6b, 0x6e, 0x01, 0xf0, 0x0b, 0x6c, 0x4a, 0xc9, 0x41,
|
||||
0xe2, 0xe1, 0x76, 0xa7, 0x55, 0x33, 0xd7, 0xf2, 0xf3, 0xf2, 0x53, 0xac, 0xbe, 0xa3, 0xba, 0x37,
|
||||
0x50, 0xf8, 0x98, 0xf0, 0x77, 0xb3, 0xda, 0x91, 0x50, 0xd6, 0xa2, 0xc6, 0xdb, 0x5b, 0x44, 0x1e,
|
||||
0xb8, 0x86, 0x73, 0xf9, 0x63, 0xac, 0xd9, 0xd9, 0xb9, 0xf9, 0x3f, 0x48, 0x20, 0xd3, 0x55, 0x4f,
|
||||
0x24, 0xfe, 0xae, 0xe8, 0x67, 0x85, 0x58, 0x00, 0xcb, 0xaf, 0x39, 0xac, 0xb9, 0x9f, 0x04, 0x27,
|
||||
0x41, 0x88, 0x5d, 0xdc, 0x38, 0xd5, 0xfc, 0x43, 0xac, 0x21, 0x8f, 0xee, 0xa0, 0xa7, 0xcb, 0xb1,
|
||||
0xbb, 0xf2, 0x40, 0x3d, 0x7b, 0x86, 0xcf, 0x84, 0x8f, 0xc9, 0xfc, 0x37, 0xdf, 0x63, 0x90, 0x4a,
|
||||
0x88, 0x33, 0xc1, 0xff, 0xb1, 0xe4, 0xac, 0x98, 0xdc, 0x08, 0x77, 0x56, 0x8e, 0x02, 0x7c, 0x85,
|
||||
0xcd, 0xa5, 0x02, 0x23, 0xd1, 0xc7, 0xdb, 0x41, 0xe4, 0xe3, 0xa9, 0x49, 0xc2, 0x78, 0xc6, 0x4b,
|
||||
0xae, 0x6c, 0x13, 0xcc, 0x1f, 0x67, 0xfc, 0x3e, 0x5e, 0x65, 0x92, 0x32, 0xee, 0xc2, 0x19, 0x66,
|
||||
0xb5, 0xf2, 0xcb, 0x29, 0x56, 0xcf, 0x7b, 0x9e, 0x37, 0xd8, 0xe4, 0xc1, 0xc0, 0xf3, 0x50, 0x29,
|
||||
0x18, 0xe3, 0xf3, 0x6c, 0xf6, 0x56, 0x84, 0xa7, 0x31, 0x7a, 0x1a, 0x7d, 0xc3, 0x03, 0x0e, 0x9f,
|
||||
0x63, 0xd3, 0x6d, 0x19, 0x45, 0xe8, 0xe9, 0x4d, 0x11, 0x84, 0xe8, 0x43, 0x85, 0x2f, 0x30, 0xd8,
|
||||
0xc7, 0xa4, 0x1f, 0x28, 0x15, 0xc8, 0xa8, 0x83, 0x51, 0x80, 0x3e, 0x54, 0xf9, 0x79, 0x36, 0xdf,
|
||||
0x96, 0x61, 0x88, 0x9e, 0x0e, 0x64, 0xb4, 0x2b, 0xf5, 0xc6, 0x69, 0xa0, 0xb4, 0x82, 0x1a, 0x89,
|
||||
0xdd, 0x0e, 0x43, 0xec, 0x8a, 0x70, 0x2d, 0xe9, 0x0e, 0xfa, 0x18, 0x69, 0x18, 0x27, 0x19, 0x29,
|
||||
0xd8, 0x09, 0xfa, 0x18, 0x91, 0x24, 0x98, 0x2c, 0xa1, 0xc6, 0x5a, 0x8a, 0x2d, 0x4c, 0xf1, 0x87,
|
||||
0xd8, 0xb9, 0x14, 0x2d, 0x29, 0x10, 0x7d, 0x84, 0x3a, 0x9f, 0x65, 0x8d, 0x94, 0x74, 0xb8, 0xb7,
|
||||
0xff, 0x34, 0xb0, 0x92, 0x04, 0x57, 0xde, 0x73, 0xd1, 0x93, 0x89, 0x0f, 0x8d, 0x92, 0x09, 0xcf,
|
||||
0xa0, 0xa7, 0x65, 0xb2, 0xdd, 0x81, 0x26, 0x19, 0x9c, 0x82, 0x07, 0x28, 0x12, 0xaf, 0xe7, 0xa2,
|
||||
0x1a, 0x84, 0x1a, 0xa6, 0x39, 0xb0, 0xe6, 0x66, 0x10, 0xe2, 0xae, 0xd4, 0x9b, 0x72, 0x10, 0xf9,
|
||||
0x30, 0xc3, 0x67, 0x18, 0xdb, 0x41, 0x2d, 0xd2, 0x08, 0xcc, 0x92, 0xda, 0xb6, 0xf0, 0x7a, 0x98,
|
||||
0x02, 0xc0, 0x17, 0x19, 0x6f, 0x8b, 0x28, 0x92, 0xba, 0x9d, 0xa0, 0xd0, 0xb8, 0x69, 0xba, 0x19,
|
||||
0xe6, 0xc8, 0x9c, 0x11, 0x3c, 0x08, 0x11, 0x78, 0xc1, 0xdd, 0xc1, 0x10, 0x73, 0xee, 0xf9, 0x82,
|
||||
0x3b, 0xc5, 0x89, 0x7b, 0x81, 0x8c, 0x5f, 0x1f, 0x04, 0xa1, 0x6f, 0x42, 0x62, 0xd3, 0x72, 0x8e,
|
||||
0x6c, 0x4c, 0x8d, 0xdf, 0xbd, 0xb9, 0x7d, 0x70, 0x08, 0x8b, 0xfc, 0x1c, 0x9b, 0x4b, 0x91, 0x1d,
|
||||
0xd4, 0x49, 0xe0, 0x99, 0xe0, 0x9d, 0x27, 0x53, 0xf7, 0x06, 0x7a, 0xef, 0x78, 0x07, 0xfb, 0x32,
|
||||
0x19, 0x42, 0x8b, 0x12, 0x6a, 0x24, 0x65, 0x29, 0x82, 0x87, 0x48, 0xc3, 0x46, 0x3f, 0xd6, 0xc3,
|
||||
0x22, 0xbc, 0x70, 0x81, 0x5f, 0x64, 0xe7, 0x6f, 0xc5, 0xbe, 0xd0, 0xb8, 0xdd, 0xa7, 0x51, 0x73,
|
||||
0x28, 0xd4, 0x5d, 0x72, 0x77, 0x90, 0x20, 0x5c, 0xe4, 0x17, 0xd8, 0xe2, 0x68, 0x2e, 0xf2, 0x60,
|
||||
0x5d, 0xa2, 0x8b, 0xd6, 0xdb, 0x76, 0x82, 0x3e, 0x46, 0x3a, 0x10, 0x61, 0x76, 0xf1, 0x72, 0x21,
|
||||
0xf5, 0x7e, 0xe2, 0xc3, 0x44, 0xb4, 0x9e, 0xdf, 0x4f, 0xbc, 0xc2, 0x5b, 0x6c, 0x61, 0x0b, 0xf5,
|
||||
0xfd, 0x94, 0x25, 0xa2, 0xdc, 0x0c, 0x94, 0x21, 0xdd, 0x52, 0x98, 0xa8, 0x8c, 0xf2, 0x08, 0xe7,
|
||||
0x6c, 0x66, 0x0b, 0x35, 0x81, 0x19, 0xb6, 0x4c, 0x71, 0xb2, 0xe6, 0xb9, 0x32, 0xc4, 0x0c, 0xfe,
|
||||
0x3f, 0x8a, 0x41, 0x27, 0x91, 0x71, 0x19, 0x7c, 0x94, 0xdc, 0xdc, 0x8b, 0x31, 0x11, 0x1a, 0x49,
|
||||
0x46, 0x99, 0xf6, 0x18, 0xc9, 0x39, 0x40, 0x8a, 0x40, 0x19, 0xfe, 0xff, 0x02, 0x2e, 0x6b, 0x7d,
|
||||
0x07, 0xd5, 0x70, 0xca, 0x8d, 0x76, 0x4e, 0x66, 0xa4, 0xab, 0xe4, 0x75, 0xaa, 0x24, 0xef, 0xff,
|
||||
0x8c, 0xf8, 0x4e, 0x2a, 0x15, 0x7b, 0x6f, 0x2b, 0x11, 0x91, 0xce, 0xf0, 0x15, 0xfe, 0x08, 0xbb,
|
||||
0xec, 0xe2, 0x71, 0x82, 0xaa, 0xb7, 0x2f, 0xc3, 0xc0, 0x1b, 0x6e, 0x47, 0xc7, 0x32, 0x2f, 0x49,
|
||||
0x62, 0x79, 0x17, 0x59, 0x42, 0x61, 0xb1, 0xf4, 0x0c, 0x7e, 0x9c, 0x62, 0xb2, 0x2b, 0xf5, 0x01,
|
||||
0x8d, 0xc3, 0x9b, 0x66, 0xc0, 0xc2, 0x13, 0xa4, 0x65, 0x57, 0xba, 0x18, 0x87, 0x81, 0x27, 0xd6,
|
||||
0x4e, 0x44, 0x10, 0x8a, 0xa3, 0x10, 0x61, 0x95, 0x82, 0x72, 0x80, 0x5d, 0x6a, 0xd9, 0x3c, 0xbf,
|
||||
0xd7, 0x38, 0x67, 0xd3, 0x9d, 0x8e, 0x8b, 0x1f, 0x1f, 0xa0, 0xd2, 0xae, 0xf0, 0x10, 0xfe, 0x3c,
|
||||
0xb9, 0xf2, 0x1c, 0x63, 0xa6, 0xa8, 0xe8, 0xf9, 0x81, 0xa4, 0xa2, 0x38, 0xed, 0xca, 0x08, 0x61,
|
||||
0x8c, 0x37, 0xd9, 0xd4, 0xad, 0x28, 0x50, 0x6a, 0x80, 0x3e, 0x38, 0xd4, 0x50, 0xdb, 0xd1, 0x7e,
|
||||
0x22, 0xbb, 0xb4, 0xe9, 0xa0, 0x42, 0xd4, 0xcd, 0x20, 0x0a, 0x54, 0xcf, 0x8c, 0x12, 0xc6, 0x26,
|
||||
0xd2, 0xce, 0xaa, 0xad, 0xbc, 0xe0, 0xb0, 0x66, 0x6a, 0x83, 0x15, 0xbe, 0xc0, 0xa0, 0x7c, 0x2e,
|
||||
0xc4, 0xe7, 0x05, 0xed, 0xd0, 0x58, 0xdb, 0x4a, 0xe4, 0xbd, 0x20, 0xea, 0x42, 0x85, 0xa4, 0x1d,
|
||||
0xa0, 0x08, 0x8d, 0xe4, 0x06, 0x9b, 0xdc, 0x0c, 0x07, 0x46, 0x4d, 0xcd, 0x28, 0xa5, 0x03, 0xb1,
|
||||
0x8d, 0x13, 0x89, 0x0a, 0x20, 0x46, 0x1f, 0x26, 0xf8, 0x34, 0xab, 0xdb, 0xb2, 0x27, 0xda, 0xe4,
|
||||
0xca, 0x07, 0xd9, 0xec, 0x99, 0x57, 0x02, 0x9f, 0x62, 0xb5, 0x54, 0x35, 0xb0, 0xe6, 0x7a, 0x10,
|
||||
0x89, 0x64, 0x68, 0x67, 0x0b, 0xf8, 0xd4, 0x73, 0x9b, 0xa1, 0x14, 0x3a, 0x05, 0x70, 0xe5, 0xa5,
|
||||
0xa6, 0x59, 0xd3, 0xe6, 0xe2, 0x34, 0xab, 0xdf, 0x8a, 0x7c, 0x3c, 0x0e, 0x22, 0xf4, 0x61, 0xcc,
|
||||
0xf4, 0xbc, 0xed, 0x96, 0xa2, 0xf9, 0x7c, 0x8a, 0x20, 0x19, 0x53, 0xc2, 0x90, 0x1a, 0xf7, 0x86,
|
||||
0x50, 0x25, 0xe8, 0x98, 0xf2, 0xd6, 0x31, 0x8f, 0xc0, 0xa3, 0xf2, 0xf5, 0xae, 0xc9, 0x5b, 0x4f,
|
||||
0xde, 0x2b, 0x30, 0x05, 0x3d, 0xd2, 0xb4, 0x85, 0xfa, 0x60, 0xa8, 0x34, 0xf6, 0xdb, 0x32, 0x3a,
|
||||
0x0e, 0xba, 0x0a, 0x02, 0xd2, 0x74, 0x53, 0x0a, 0xbf, 0x74, 0xfd, 0x0e, 0x55, 0x8e, 0x8b, 0x21,
|
||||
0x0a, 0x55, 0x96, 0x7a, 0xd7, 0x4c, 0x3d, 0x63, 0xea, 0x5a, 0x18, 0x08, 0x05, 0x21, 0xb9, 0x42,
|
||||
0x56, 0xda, 0x63, 0x9f, 0x92, 0xba, 0x16, 0x6a, 0x4c, 0xec, 0x39, 0xe2, 0x0b, 0x6c, 0xd6, 0xf2,
|
||||
0xef, 0x8b, 0x44, 0x07, 0x46, 0xc8, 0xcb, 0x8e, 0x29, 0x9f, 0x44, 0xc6, 0x05, 0xf6, 0x0a, 0x2d,
|
||||
0x99, 0xe6, 0x0d, 0xa1, 0x0a, 0xe8, 0x27, 0x0e, 0x5f, 0x64, 0x73, 0x99, 0x6b, 0x05, 0xfe, 0x53,
|
||||
0x87, 0xcf, 0xb3, 0x19, 0x72, 0x2d, 0xc7, 0x14, 0xfc, 0xcc, 0x80, 0xe4, 0x44, 0x09, 0xfc, 0xb9,
|
||||
0x91, 0x90, 0x7a, 0x51, 0xc2, 0x7f, 0x61, 0x94, 0x91, 0x84, 0xb4, 0x88, 0x14, 0xbc, 0xea, 0x90,
|
||||
0xa5, 0x99, 0xb2, 0x14, 0x86, 0xd7, 0x0c, 0x23, 0x49, 0xcd, 0x19, 0x5f, 0x37, 0x8c, 0xa9, 0xcc,
|
||||
0x1c, 0x7d, 0xc3, 0xa0, 0x37, 0x44, 0xe4, 0xcb, 0xe3, 0xe3, 0x1c, 0x7d, 0xd3, 0xe1, 0x2d, 0x36,
|
||||
0x4f, 0xd7, 0xd7, 0x45, 0x28, 0x22, 0xaf, 0xe0, 0x7f, 0xcb, 0xe1, 0xe7, 0x18, 0x9c, 0x51, 0xa7,
|
||||
0xe0, 0xf9, 0x0a, 0x87, 0x2c, 0xbe, 0xa6, 0x79, 0xe0, 0x0b, 0x15, 0x13, 0xab, 0x94, 0xd1, 0x62,
|
||||
0x5f, 0xac, 0xf0, 0x19, 0x1b, 0x74, 0x7b, 0xfe, 0x52, 0x85, 0x37, 0xd8, 0xc4, 0x76, 0xa4, 0x30,
|
||||
0xd1, 0xf0, 0x19, 0xaa, 0xef, 0x09, 0x3b, 0x41, 0xe1, 0xb3, 0xd4, 0x46, 0xe3, 0xa6, 0xbe, 0xe1,
|
||||
0x45, 0xda, 0xce, 0xdc, 0x45, 0x85, 0x91, 0x5f, 0xea, 0x1d, 0x05, 0x9f, 0x33, 0x37, 0xec, 0xfa,
|
||||
0x83, 0xbf, 0x56, 0x4d, 0x68, 0xca, 0xbb, 0xf0, 0x6f, 0x55, 0x32, 0x61, 0x0b, 0x75, 0xd1, 0xce,
|
||||
0xf0, 0xf7, 0x2a, 0xbf, 0xc0, 0xce, 0x65, 0x98, 0xd9, 0x4c, 0x79, 0x23, 0xff, 0xa3, 0xca, 0x2f,
|
||||
0xb1, 0xf3, 0x34, 0xa6, 0xf3, 0xba, 0xa1, 0x4b, 0x81, 0xd2, 0x81, 0xa7, 0xe0, 0x9f, 0x55, 0x7e,
|
||||
0x91, 0x2d, 0x6e, 0xa1, 0xce, 0xf3, 0x51, 0x22, 0xfe, 0xab, 0xca, 0xa7, 0xd9, 0x94, 0x4b, 0xab,
|
||||
0x0b, 0x4f, 0x10, 0x5e, 0xad, 0x52, 0x52, 0xb3, 0x63, 0x6a, 0xce, 0x6b, 0x55, 0x0a, 0xf5, 0xb3,
|
||||
0x42, 0x7b, 0xbd, 0x4e, 0xbf, 0xdd, 0x13, 0x51, 0x84, 0xa1, 0x82, 0xd7, 0xab, 0x14, 0x50, 0x17,
|
||||
0xfb, 0xf2, 0x04, 0x4b, 0xf0, 0x1b, 0xc6, 0x69, 0xc3, 0xfc, 0xe1, 0x01, 0x26, 0xc3, 0x9c, 0xf0,
|
||||
0x66, 0x95, 0x52, 0x63, 0xf9, 0x47, 0x29, 0x6f, 0x55, 0xf9, 0x65, 0xd6, 0xb2, 0xc3, 0x22, 0x4b,
|
||||
0x0c, 0x11, 0xbb, 0x48, 0xe3, 0x15, 0x9e, 0xaf, 0xe5, 0x12, 0x3b, 0x18, 0x6a, 0x91, 0xdf, 0xfb,
|
||||
0x64, 0x8d, 0xec, 0xa2, 0xe6, 0x2a, 0xa6, 0xaa, 0x82, 0x17, 0x6a, 0x94, 0xd1, 0x2d, 0xd4, 0xe9,
|
||||
0x60, 0x55, 0xf0, 0x29, 0x83, 0xa4, 0x92, 0x8d, 0xc8, 0x5f, 0xd5, 0xf8, 0x2c, 0x63, 0xb6, 0x27,
|
||||
0x0d, 0xf0, 0xeb, 0x4c, 0x14, 0xbd, 0x5d, 0x4e, 0x30, 0x31, 0x83, 0x1d, 0x7e, 0x93, 0x2b, 0x28,
|
||||
0x4d, 0x3e, 0xf8, 0x6d, 0x8d, 0x42, 0x76, 0x18, 0xf4, 0xf1, 0x30, 0xf0, 0xee, 0xc2, 0x57, 0xea,
|
||||
0x14, 0x32, 0xe3, 0xd1, 0xae, 0xf4, 0xd1, 0x66, 0xf8, 0xab, 0x75, 0x2a, 0x18, 0xaa, 0x43, 0x5b,
|
||||
0x30, 0x5f, 0x33, 0xe7, 0x74, 0x7a, 0x6f, 0x77, 0xe0, 0xeb, 0xf4, 0x86, 0x62, 0xe9, 0xf9, 0xf0,
|
||||
0x60, 0x0f, 0xbe, 0x51, 0x27, 0x55, 0x6b, 0x61, 0x28, 0x3d, 0xa1, 0xf3, 0x6e, 0xf8, 0x66, 0x9d,
|
||||
0xda, 0xa9, 0xa4, 0x3d, 0xcd, 0xda, 0x4b, 0x75, 0x8a, 0x7d, 0x8a, 0x9b, 0x62, 0xeb, 0xd0, 0x50,
|
||||
0xfc, 0x96, 0x91, 0x4a, 0xdf, 0x7b, 0x64, 0xc9, 0xa1, 0x86, 0x6f, 0x1b, 0xbe, 0xb3, 0xcf, 0x02,
|
||||
0xf8, 0x5d, 0x23, 0xad, 0xaf, 0x12, 0xf6, 0xfb, 0x86, 0xed, 0x8f, 0xd1, 0x77, 0x00, 0xfc, 0xc1,
|
||||
0xc0, 0x67, 0xdf, 0x0e, 0xf0, 0xc7, 0x06, 0x19, 0x56, 0x5e, 0xff, 0xf4, 0x08, 0x56, 0xf0, 0xa7,
|
||||
0x06, 0x59, 0x50, 0x2c, 0x7a, 0xf8, 0x4e, 0x93, 0x82, 0x95, 0xad, 0x78, 0xf8, 0x6e, 0x93, 0xdc,
|
||||
0x3c, 0xb3, 0xdc, 0xe1, 0x7b, 0x4d, 0x93, 0x8e, 0x7c, 0xad, 0xc3, 0xf7, 0x4b, 0x00, 0x71, 0xc1,
|
||||
0x0f, 0x9a, 0x66, 0x02, 0x8d, 0xac, 0x72, 0xf8, 0x61, 0x93, 0x6c, 0x3b, 0xbb, 0xc4, 0xe1, 0x47,
|
||||
0x4d, 0x9b, 0xee, 0x7c, 0x7d, 0xc3, 0x8f, 0x9b, 0xd4, 0x01, 0x0f, 0x5e, 0xdc, 0xf0, 0xb2, 0xd1,
|
||||
0x55, 0xac, 0x6c, 0x78, 0xa5, 0xb9, 0xb2, 0xcc, 0x26, 0x3b, 0x2a, 0x34, 0x7b, 0x63, 0x92, 0x55,
|
||||
0x3b, 0x2a, 0x84, 0x31, 0x1a, 0xb3, 0xeb, 0x52, 0x86, 0x1b, 0xa7, 0x71, 0xf2, 0xcc, 0x7b, 0xc0,
|
||||
0x59, 0x59, 0x67, 0xb3, 0x6d, 0xd9, 0x8f, 0x45, 0xde, 0x6e, 0x66, 0x55, 0xd8, 0x1d, 0x83, 0xbe,
|
||||
0x2d, 0x95, 0x31, 0x9a, 0xd5, 0x1b, 0xa7, 0xe8, 0x0d, 0xcc, 0x46, 0x73, 0xe8, 0x48, 0x97, 0x28,
|
||||
0xc8, 0x3e, 0x54, 0x56, 0x9e, 0x63, 0xd0, 0x96, 0x91, 0x0a, 0x94, 0xc6, 0xc8, 0x1b, 0xde, 0xc4,
|
||||
0x13, 0x0c, 0xcd, 0xde, 0xd4, 0x89, 0x8c, 0xba, 0x30, 0x66, 0xbe, 0x13, 0xd0, 0xbc, 0xf7, 0xed,
|
||||
0x76, 0x5d, 0xa7, 0xb7, 0x80, 0xf9, 0x18, 0x98, 0x61, 0x6c, 0xe3, 0x04, 0x23, 0x3d, 0x10, 0x61,
|
||||
0x38, 0x84, 0x2a, 0x9d, 0xdb, 0x03, 0xa5, 0x65, 0x3f, 0xf8, 0x84, 0xd9, 0xdf, 0x5f, 0x76, 0x58,
|
||||
0xc3, 0xae, 0xd2, 0xdc, 0x34, 0x7b, 0xdc, 0xc7, 0xc8, 0x0f, 0x8c, 0x70, 0x7a, 0xcb, 0x1a, 0x28,
|
||||
0x5d, 0xfa, 0x4e, 0xc1, 0x74, 0xa0, 0x45, 0xa2, 0xb3, 0x8f, 0x0e, 0x0b, 0x75, 0xe4, 0xbd, 0x28,
|
||||
0x94, 0xc2, 0x37, 0xfb, 0x3c, 0xbf, 0xba, 0x2f, 0x12, 0x65, 0x96, 0x3a, 0x3d, 0xf5, 0x53, 0xf9,
|
||||
0x89, 0xf1, 0xc7, 0x87, 0xf1, 0x02, 0x2c, 0x7c, 0x9e, 0xa0, 0xe5, 0x69, 0x41, 0x53, 0xec, 0x59,
|
||||
0xa5, 0xb3, 0x95, 0xeb, 0x8c, 0x15, 0x9f, 0x79, 0xc6, 0x9f, 0x62, 0x09, 0x8e, 0x51, 0x54, 0xb6,
|
||||
0x42, 0x79, 0x24, 0x42, 0x70, 0xe8, 0x0d, 0x60, 0x8a, 0xa2, 0xb2, 0xf2, 0xe9, 0x71, 0x36, 0x7b,
|
||||
0xe6, 0xa3, 0x8e, 0x6c, 0xcb, 0x0f, 0x6b, 0x21, 0x65, 0xee, 0x32, 0x7b, 0x28, 0x47, 0xee, 0x5b,
|
||||
0xfa, 0x0e, 0x3d, 0x04, 0x73, 0xf2, 0x99, 0xed, 0x5f, 0xe1, 0x57, 0xd8, 0xc5, 0x82, 0x78, 0xff,
|
||||
0xce, 0xa7, 0xc1, 0xdb, 0xca, 0x19, 0xce, 0x2e, 0xff, 0x1a, 0x45, 0x34, 0xa7, 0xd2, 0x34, 0xb0,
|
||||
0x9f, 0x60, 0xc5, 0x17, 0xa8, 0x5d, 0x6a, 0x30, 0x41, 0x5f, 0x45, 0x85, 0x8d, 0x79, 0x59, 0xc1,
|
||||
0x24, 0xc5, 0x30, 0x27, 0xa4, 0x0b, 0x67, 0x6a, 0x04, 0x4c, 0x17, 0x4f, 0x9d, 0x5e, 0xcd, 0x39,
|
||||
0x48, 0x33, 0xab, 0x18, 0x17, 0x8c, 0xde, 0xea, 0x67, 0x42, 0x60, 0xe7, 0x52, 0x63, 0x84, 0x62,
|
||||
0xb0, 0x0e, 0x6a, 0x11, 0x84, 0xd0, 0xa4, 0x44, 0x8d, 0xc4, 0xc5, 0xde, 0x98, 0x1e, 0x51, 0x9e,
|
||||
0xee, 0xb0, 0x19, 0x7a, 0xcf, 0x14, 0xcf, 0x68, 0xb3, 0xfd, 0x66, 0x47, 0x30, 0x33, 0x1f, 0x01,
|
||||
0x46, 0xd4, 0x95, 0xd6, 0x34, 0xcc, 0x8d, 0x3a, 0x6a, 0x0a, 0x04, 0xf8, 0x48, 0x74, 0xad, 0xdd,
|
||||
0x7b, 0xf7, 0x22, 0x4c, 0x54, 0x2f, 0x88, 0x61, 0x7e, 0x24, 0x68, 0x76, 0x44, 0x99, 0xba, 0x58,
|
||||
0x18, 0x09, 0x05, 0x99, 0x5e, 0x5c, 0x3a, 0x37, 0x9a, 0x30, 0x33, 0x24, 0x0a, 0xea, 0xe2, 0x08,
|
||||
0x75, 0x47, 0x44, 0xa2, 0x5b, 0x52, 0x78, 0x7e, 0x44, 0x61, 0x69, 0x3a, 0xb5, 0x3e, 0x20, 0xd9,
|
||||
0x5c, 0xfe, 0x17, 0xc4, 0x6d, 0x3c, 0xd5, 0xb7, 0xe5, 0xd1, 0x1d, 0x7e, 0x65, 0xd5, 0xfe, 0x75,
|
||||
0xb8, 0x9a, 0xfd, 0x75, 0xb8, 0xba, 0x83, 0x4a, 0x91, 0xc8, 0xd8, 0xd4, 0x47, 0xeb, 0x2f, 0x93,
|
||||
0xe6, 0xbf, 0x95, 0x47, 0x1e, 0xfc, 0x8f, 0x55, 0xe9, 0xbf, 0x12, 0x77, 0x36, 0x2e, 0x9d, 0xf6,
|
||||
0x8e, 0xee, 0xac, 0x3f, 0xcb, 0x66, 0x02, 0x99, 0xdd, 0xeb, 0x26, 0xb1, 0xb7, 0xde, 0x68, 0x9b,
|
||||
0x7b, 0xfb, 0x24, 0x63, 0xdf, 0xf9, 0xc8, 0x93, 0xdd, 0x40, 0xf7, 0x06, 0x47, 0x24, 0xed, 0x9a,
|
||||
0x65, 0x7b, 0x22, 0x90, 0xe9, 0xaf, 0x6b, 0x41, 0xa4, 0x69, 0x62, 0x87, 0xf6, 0x4f, 0xcd, 0x6b,
|
||||
0x56, 0x63, 0x7c, 0xf4, 0x79, 0xc7, 0x39, 0x9a, 0x30, 0xd0, 0x93, 0xff, 0x0e, 0x00, 0x00, 0xff,
|
||||
0xff, 0xa4, 0x96, 0x88, 0xfc, 0x1a, 0x15, 0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -263,6 +263,11 @@ message ReleaseCollectionRequest {
|
|||
* WARNING: This API is experimental and not useful for now.
|
||||
*/
|
||||
message GetStatisticsRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeGetStatistics
|
||||
object_name_index: 3
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -290,6 +295,11 @@ message GetStatisticsResponse {
|
|||
* Get collection statistics like row_count.
|
||||
*/
|
||||
message GetCollectionStatisticsRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeGetStatistics
|
||||
object_name_index: 3
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -518,6 +528,11 @@ message ShowSegmentsResponse {
|
|||
* Create index for vector datas
|
||||
*/
|
||||
message CreateIndexRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeCreateIndex
|
||||
object_name_index: 3
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -537,6 +552,11 @@ message CreateIndexRequest {
|
|||
* Current release of Milvus only supports showing latest built index.
|
||||
*/
|
||||
message DescribeIndexRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeIndexDetail
|
||||
object_name_index: 3
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -577,6 +597,11 @@ message DescribeIndexResponse {
|
|||
* Get index building progress
|
||||
*/
|
||||
message GetIndexBuildProgressRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeIndexDetail
|
||||
object_name_index: 3
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -596,6 +621,11 @@ message GetIndexBuildProgressResponse {
|
|||
}
|
||||
|
||||
message GetIndexStateRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeIndexDetail
|
||||
object_name_index: 3
|
||||
};
|
||||
common.MsgBase base = 1; // must
|
||||
string db_name = 2 ;
|
||||
string collection_name = 3; // must
|
||||
|
@ -610,6 +640,11 @@ message GetIndexStateResponse {
|
|||
}
|
||||
|
||||
message DropIndexRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeDropIndex
|
||||
object_name_index: 3
|
||||
};
|
||||
common.MsgBase base = 1; // must
|
||||
string db_name = 2;
|
||||
string collection_name = 3; // must
|
||||
|
@ -660,6 +695,11 @@ message DeleteRequest {
|
|||
|
||||
|
||||
message SearchRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeSearch
|
||||
object_name_index: 3
|
||||
};
|
||||
common.MsgBase base = 1; // must
|
||||
string db_name = 2;
|
||||
string collection_name = 3; // must
|
||||
|
@ -688,6 +728,11 @@ message SearchResults {
|
|||
}
|
||||
|
||||
message FlushRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeFlush
|
||||
object_name_indexs: 3
|
||||
};
|
||||
common.MsgBase base = 1;
|
||||
string db_name = 2;
|
||||
repeated string collection_names = 3;
|
||||
|
@ -700,6 +745,11 @@ message FlushResponse{
|
|||
}
|
||||
|
||||
message QueryRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeQuery
|
||||
object_name_index: 3
|
||||
};
|
||||
common.MsgBase base = 1;
|
||||
string db_name = 2;
|
||||
string collection_name = 3;
|
||||
|
@ -821,6 +871,11 @@ message GetMetricsResponse {
|
|||
* Do load balancing operation from src_nodeID to dst_nodeID.
|
||||
*/
|
||||
message LoadBalanceRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeLoadBalance
|
||||
object_name_index: 5
|
||||
};
|
||||
common.MsgBase base = 1;
|
||||
int64 src_nodeID = 2;
|
||||
repeated int64 dst_nodeIDs = 3;
|
||||
|
@ -880,6 +935,11 @@ message GetFlushStateResponse {
|
|||
}
|
||||
|
||||
message ImportRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Collection
|
||||
object_privilege: PrivilegeImport
|
||||
object_name_index: 1
|
||||
};
|
||||
string collection_name = 1; // target collection
|
||||
string partition_name = 2; // target partition
|
||||
repeated string channel_names = 3; // channel names for the collection
|
||||
|
@ -951,6 +1011,11 @@ service ProxyService {
|
|||
// https://wiki.lfaidata.foundation/display/MIL/MEP+27+--+Support+Basic+Authentication
|
||||
|
||||
message CreateCredentialRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeCreateOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// username
|
||||
|
@ -964,6 +1029,11 @@ message CreateCredentialRequest {
|
|||
}
|
||||
|
||||
message UpdateCredentialRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: User
|
||||
object_privilege: PrivilegeUpdateUser
|
||||
object_name_index: 2
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// username
|
||||
|
@ -979,6 +1049,11 @@ message UpdateCredentialRequest {
|
|||
}
|
||||
|
||||
message DeleteCredentialRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeDropOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// Not useful for now
|
||||
|
@ -993,6 +1068,11 @@ message ListCredUsersResponse {
|
|||
}
|
||||
|
||||
message ListCredUsersRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeSelectOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
}
|
||||
|
@ -1007,6 +1087,11 @@ message UserEntity {
|
|||
}
|
||||
|
||||
message CreateRoleRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeCreateOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// role
|
||||
|
@ -1014,6 +1099,11 @@ message CreateRoleRequest {
|
|||
}
|
||||
|
||||
message DropRoleRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeDropOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// role name
|
||||
|
@ -1026,6 +1116,11 @@ enum OperateUserRoleType {
|
|||
}
|
||||
|
||||
message OperateUserRoleRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeManageOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// username
|
||||
|
@ -1037,6 +1132,11 @@ message OperateUserRoleRequest {
|
|||
}
|
||||
|
||||
message SelectRoleRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeSelectOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// role
|
||||
|
@ -1058,6 +1158,11 @@ message SelectRoleResponse {
|
|||
}
|
||||
|
||||
message SelectUserRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: User
|
||||
object_privilege: PrivilegeSelectUser
|
||||
object_name_index: 2
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// user
|
||||
|
@ -1107,6 +1212,11 @@ message GrantEntity {
|
|||
}
|
||||
|
||||
message SelectGrantRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeSelectOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// grant
|
||||
|
@ -1126,6 +1236,11 @@ enum OperatePrivilegeType {
|
|||
}
|
||||
|
||||
message OperatePrivilegeRequest {
|
||||
option (common.privilege_ext_obj) = {
|
||||
object_type: Global
|
||||
object_privilege: PrivilegeManageOwnership
|
||||
object_name_index: -1
|
||||
};
|
||||
// Not useful for now
|
||||
common.MsgBase base = 1;
|
||||
// grant
|
||||
|
|
|
@ -7049,326 +7049,332 @@ func init() {
|
|||
func init() { proto.RegisterFile("milvus.proto", fileDescriptor_02345ba45cc0e303) }
|
||||
|
||||
var fileDescriptor_02345ba45cc0e303 = []byte{
|
||||
// 5101 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x3d, 0x5b, 0x6c, 0x1c, 0x47,
|
||||
0x72, 0x9c, 0x5d, 0xee, 0xab, 0xf6, 0xc1, 0x65, 0xf3, 0xb5, 0x5e, 0x49, 0x16, 0x35, 0xb6, 0xce,
|
||||
0xb4, 0x74, 0xa2, 0x2c, 0xca, 0x96, 0xcf, 0xb2, 0xcf, 0xb6, 0x24, 0x5a, 0x12, 0x61, 0x3d, 0xe8,
|
||||
0xa1, 0xec, 0xe0, 0x62, 0x18, 0x93, 0xe1, 0x4e, 0x73, 0x39, 0xd6, 0xec, 0xcc, 0x6a, 0x66, 0x96,
|
||||
0x14, 0xfd, 0x11, 0x18, 0xb8, 0x4b, 0x72, 0x41, 0x9c, 0x3b, 0x1c, 0x72, 0xc8, 0xe1, 0x3e, 0xf2,
|
||||
0x40, 0x90, 0x04, 0x08, 0x70, 0x09, 0x72, 0x49, 0x80, 0x00, 0xc9, 0x47, 0x12, 0xe0, 0x3e, 0x02,
|
||||
0x23, 0x48, 0x2e, 0x5f, 0x41, 0x90, 0x7c, 0x1e, 0x02, 0xe4, 0x2f, 0x01, 0xee, 0x33, 0x41, 0x82,
|
||||
0x7e, 0xcc, 0x6c, 0xcf, 0x6c, 0xcf, 0x72, 0xc9, 0x3d, 0x99, 0x14, 0xbf, 0xb6, 0xab, 0xab, 0xbb,
|
||||
0xab, 0xab, 0xab, 0xab, 0xaa, 0xbb, 0xaa, 0x87, 0x50, 0xe9, 0x58, 0xf6, 0x4e, 0xcf, 0x5f, 0xee,
|
||||
0x7a, 0x6e, 0xe0, 0xa2, 0x19, 0xb1, 0xb4, 0xcc, 0x0a, 0xcd, 0x4a, 0xcb, 0xed, 0x74, 0x5c, 0x87,
|
||||
0x01, 0x9b, 0x15, 0xbf, 0xb5, 0x8d, 0x3b, 0x06, 0x2f, 0x2d, 0xb6, 0x5d, 0xb7, 0x6d, 0xe3, 0x8b,
|
||||
0xb4, 0xb4, 0xd9, 0xdb, 0xba, 0x68, 0x62, 0xbf, 0xe5, 0x59, 0xdd, 0xc0, 0xf5, 0x18, 0x86, 0xfa,
|
||||
0xdb, 0x0a, 0xa0, 0x1b, 0x1e, 0x36, 0x02, 0x7c, 0xcd, 0xb6, 0x0c, 0x5f, 0xc3, 0x8f, 0x7a, 0xd8,
|
||||
0x0f, 0xd0, 0x4b, 0x30, 0xb9, 0x69, 0xf8, 0xb8, 0xa1, 0x2c, 0x2a, 0x4b, 0xe5, 0x95, 0x93, 0xcb,
|
||||
0xb1, 0x81, 0xf9, 0x80, 0x77, 0xfd, 0xf6, 0x75, 0xc3, 0xc7, 0x1a, 0xc5, 0x44, 0x0b, 0x50, 0x30,
|
||||
0x37, 0x75, 0xc7, 0xe8, 0xe0, 0x46, 0x66, 0x51, 0x59, 0x2a, 0x69, 0x79, 0x73, 0xf3, 0x9e, 0xd1,
|
||||
0xc1, 0xe8, 0x05, 0x98, 0x6a, 0xb9, 0xb6, 0x8d, 0x5b, 0x81, 0xe5, 0x3a, 0x0c, 0x21, 0x4b, 0x11,
|
||||
0x6a, 0x7d, 0x30, 0x45, 0x9c, 0x85, 0x9c, 0x41, 0x68, 0x68, 0x4c, 0xd2, 0x6a, 0x56, 0x50, 0x7d,
|
||||
0xa8, 0xaf, 0x7a, 0x6e, 0xf7, 0x49, 0x51, 0x17, 0x0d, 0x9a, 0x15, 0x07, 0xfd, 0x2d, 0x05, 0xa6,
|
||||
0xaf, 0xd9, 0x01, 0xf6, 0x8e, 0x29, 0x53, 0x7e, 0x90, 0x81, 0x05, 0xb6, 0x6a, 0x37, 0x22, 0xf4,
|
||||
0xa3, 0xa4, 0x72, 0x1e, 0xf2, 0x4c, 0xee, 0x28, 0x99, 0x15, 0x8d, 0x97, 0xd0, 0x29, 0x00, 0x7f,
|
||||
0xdb, 0xf0, 0x4c, 0x5f, 0x77, 0x7a, 0x9d, 0x46, 0x6e, 0x51, 0x59, 0xca, 0x69, 0x25, 0x06, 0xb9,
|
||||
0xd7, 0xeb, 0x20, 0x0d, 0xa6, 0x5b, 0xae, 0xe3, 0x5b, 0x7e, 0x80, 0x9d, 0xd6, 0x9e, 0x6e, 0xe3,
|
||||
0x1d, 0x6c, 0x37, 0xf2, 0x8b, 0xca, 0x52, 0x6d, 0xe5, 0xac, 0x94, 0xee, 0x1b, 0x7d, 0xec, 0x3b,
|
||||
0x04, 0x59, 0xab, 0xb7, 0x12, 0x90, 0xab, 0xe8, 0xf3, 0x37, 0xa7, 0x8a, 0x4a, 0x5d, 0x69, 0xfc,
|
||||
0x5f, 0xf8, 0xa7, 0xa8, 0xbf, 0xa3, 0xc0, 0x1c, 0x11, 0xa2, 0x63, 0xc1, 0xac, 0x90, 0xc2, 0x8c,
|
||||
0x48, 0xe1, 0x1f, 0x29, 0x30, 0x7b, 0xdb, 0xf0, 0x8f, 0xc7, 0x6a, 0x9e, 0x02, 0x08, 0xac, 0x0e,
|
||||
0xd6, 0xfd, 0xc0, 0xe8, 0x74, 0xe9, 0x8a, 0x4e, 0x6a, 0x25, 0x02, 0xd9, 0x20, 0x00, 0xf5, 0x6b,
|
||||
0x50, 0xb9, 0xee, 0xba, 0xb6, 0x86, 0xfd, 0xae, 0xeb, 0xf8, 0x18, 0x5d, 0x86, 0xbc, 0x1f, 0x18,
|
||||
0x41, 0xcf, 0xe7, 0x44, 0x9e, 0x90, 0x12, 0xb9, 0x41, 0x51, 0x34, 0x8e, 0x4a, 0xe4, 0x7a, 0xc7,
|
||||
0xb0, 0x7b, 0x8c, 0xc6, 0xa2, 0xc6, 0x0a, 0xea, 0x87, 0x50, 0xdb, 0x08, 0x3c, 0xcb, 0x69, 0xff,
|
||||
0x0c, 0x3b, 0x2f, 0x85, 0x9d, 0xff, 0x87, 0x02, 0xcf, 0xac, 0x52, 0xfd, 0xb7, 0x79, 0x4c, 0xb6,
|
||||
0x8d, 0x0a, 0x95, 0x3e, 0x64, 0x6d, 0x95, 0xb2, 0x3a, 0xab, 0xc5, 0x60, 0x89, 0xc5, 0xc8, 0x25,
|
||||
0x16, 0x23, 0x14, 0xa6, 0xac, 0x28, 0x4c, 0x9f, 0xe6, 0xa0, 0x29, 0x9b, 0xe8, 0x38, 0x2c, 0xfd,
|
||||
0x6a, 0xb4, 0xc3, 0x33, 0xb4, 0x51, 0x62, 0x7f, 0x72, 0xab, 0xd3, 0x1f, 0x6d, 0x83, 0x02, 0x22,
|
||||
0x45, 0x90, 0x9c, 0x69, 0x56, 0x32, 0xd3, 0x15, 0x98, 0xdb, 0xb1, 0xbc, 0xa0, 0x67, 0xd8, 0x7a,
|
||||
0x6b, 0xdb, 0x70, 0x1c, 0x6c, 0x53, 0xde, 0x11, 0xd5, 0x97, 0x5d, 0x2a, 0x69, 0x33, 0xbc, 0xf2,
|
||||
0x06, 0xab, 0x23, 0x0c, 0xf4, 0xd1, 0xcb, 0x30, 0xdf, 0xdd, 0xde, 0xf3, 0xad, 0xd6, 0x40, 0xa3,
|
||||
0x1c, 0x6d, 0x34, 0x1b, 0xd6, 0xc6, 0x5a, 0x9d, 0x87, 0xe9, 0x16, 0xd5, 0x9e, 0xa6, 0x4e, 0x38,
|
||||
0xc9, 0x58, 0x9b, 0xa7, 0xac, 0xad, 0xf3, 0x8a, 0x07, 0x21, 0x9c, 0x90, 0x15, 0x22, 0xf7, 0x82,
|
||||
0x96, 0xd0, 0xa0, 0x40, 0x1b, 0xcc, 0xf0, 0xca, 0xf7, 0x83, 0x56, 0xbf, 0x4d, 0x5c, 0xef, 0x15,
|
||||
0x93, 0x7a, 0xaf, 0x01, 0x05, 0xaa, 0xc7, 0xb1, 0xdf, 0x28, 0x51, 0x32, 0xc3, 0x22, 0x5a, 0x83,
|
||||
0x29, 0x3f, 0x30, 0xbc, 0x40, 0xef, 0xba, 0xbe, 0x45, 0xf8, 0xe2, 0x37, 0x60, 0x31, 0xbb, 0x54,
|
||||
0x5e, 0x59, 0x94, 0x2e, 0xd2, 0xbb, 0x78, 0x6f, 0xd5, 0x08, 0x8c, 0x75, 0xc3, 0xf2, 0xb4, 0x1a,
|
||||
0x6d, 0xb8, 0x1e, 0xb6, 0x93, 0x2b, 0xd7, 0xf2, 0x58, 0xca, 0x55, 0x26, 0xd9, 0x15, 0x99, 0x64,
|
||||
0xab, 0x7f, 0xad, 0xc0, 0xdc, 0x1d, 0xd7, 0x30, 0x8f, 0xc7, 0x3e, 0x3b, 0x0b, 0x35, 0x0f, 0x77,
|
||||
0x6d, 0xab, 0x65, 0x90, 0xf5, 0xd8, 0xc4, 0x1e, 0xdd, 0x69, 0x39, 0xad, 0xca, 0xa1, 0xf7, 0x28,
|
||||
0xf0, 0x6a, 0xe1, 0xf3, 0x37, 0x27, 0xeb, 0xb9, 0x46, 0x56, 0xfd, 0x9e, 0x02, 0x0d, 0x0d, 0xdb,
|
||||
0xd8, 0xf0, 0x8f, 0x87, 0xa2, 0x60, 0x94, 0xe5, 0x1b, 0x59, 0xf5, 0x27, 0x0a, 0xcc, 0xde, 0xc2,
|
||||
0x01, 0xd9, 0x9c, 0x96, 0x1f, 0x58, 0xad, 0x23, 0xf5, 0x4d, 0x5e, 0x80, 0xa9, 0xae, 0xe1, 0x05,
|
||||
0x56, 0x84, 0x17, 0x6e, 0xd5, 0x5a, 0x04, 0x66, 0xfb, 0xed, 0x22, 0xcc, 0xb4, 0x7b, 0x86, 0x67,
|
||||
0x38, 0x01, 0xc6, 0xc2, 0x06, 0x62, 0xca, 0x0c, 0x45, 0x55, 0xd1, 0xfe, 0x51, 0x7f, 0x49, 0x81,
|
||||
0xb9, 0xc4, 0x34, 0xc7, 0x51, 0x5e, 0xaf, 0x42, 0x8e, 0xfc, 0xf2, 0x1b, 0x19, 0xba, 0x97, 0xce,
|
||||
0xa4, 0xed, 0xa5, 0x0f, 0x88, 0x9d, 0xa0, 0x9b, 0x89, 0xe1, 0xab, 0xdf, 0x55, 0xe0, 0xd9, 0x5b,
|
||||
0x38, 0x10, 0xd4, 0xda, 0x71, 0x60, 0xbc, 0xfa, 0x6d, 0x05, 0x4e, 0xa7, 0x92, 0x75, 0x24, 0x8c,
|
||||
0xfa, 0xa9, 0x02, 0xf3, 0x1b, 0xdb, 0xee, 0x6e, 0x9f, 0xa4, 0x27, 0xc1, 0xa0, 0xb8, 0x2d, 0xcc,
|
||||
0x26, 0x6c, 0x21, 0xba, 0x04, 0x93, 0xc1, 0x5e, 0x17, 0xd3, 0xcd, 0x5d, 0x5b, 0x39, 0xb5, 0x2c,
|
||||
0x39, 0x2d, 0x2d, 0x13, 0x22, 0x1f, 0xec, 0x75, 0xb1, 0x46, 0x51, 0xd1, 0x8b, 0x50, 0x4f, 0xb0,
|
||||
0x3c, 0xb4, 0x1c, 0x53, 0x71, 0x9e, 0xfb, 0xa1, 0xa5, 0x9d, 0x14, 0x2d, 0xed, 0x7f, 0x65, 0x60,
|
||||
0x61, 0x60, 0xda, 0xe3, 0x2c, 0x80, 0x8c, 0x9e, 0x8c, 0x94, 0x1e, 0xa2, 0xd4, 0x04, 0x54, 0xcb,
|
||||
0x24, 0x47, 0x98, 0xec, 0x52, 0x56, 0xab, 0x0a, 0x46, 0xd5, 0xf4, 0xd1, 0x05, 0x40, 0x03, 0xb6,
|
||||
0x8e, 0xed, 0xd3, 0x49, 0x6d, 0x3a, 0x69, 0xec, 0xa8, 0x41, 0x95, 0x5a, 0x3b, 0xc6, 0x96, 0x49,
|
||||
0x6d, 0x56, 0x62, 0xee, 0x7c, 0x74, 0x09, 0x66, 0x2d, 0xe7, 0x2e, 0xee, 0xb8, 0xde, 0x9e, 0xde,
|
||||
0xc5, 0x5e, 0x0b, 0x3b, 0x81, 0xd1, 0xc6, 0x7e, 0x23, 0x4f, 0x29, 0x9a, 0x09, 0xeb, 0xd6, 0xfb,
|
||||
0x55, 0xe8, 0x0a, 0x2c, 0x3c, 0xea, 0x61, 0x6f, 0x4f, 0xf7, 0xb1, 0xb7, 0x63, 0xb5, 0xb0, 0x6e,
|
||||
0xec, 0x18, 0x96, 0x6d, 0x6c, 0xda, 0xb8, 0x51, 0x58, 0xcc, 0x2e, 0x15, 0xb5, 0x39, 0x5a, 0xbd,
|
||||
0xc1, 0x6a, 0xaf, 0x85, 0x95, 0xea, 0x9f, 0x2b, 0x30, 0xcf, 0x8e, 0x3e, 0xeb, 0xa1, 0x92, 0x39,
|
||||
0x62, 0xd3, 0x12, 0xd7, 0x81, 0xfc, 0xa0, 0x56, 0x8d, 0xa9, 0x40, 0xf5, 0x87, 0x0a, 0xcc, 0x92,
|
||||
0x13, 0xc8, 0xd3, 0x44, 0xf3, 0x9f, 0x2a, 0x30, 0x73, 0xdb, 0xf0, 0x9f, 0x26, 0x92, 0xff, 0x8d,
|
||||
0xbb, 0x1d, 0x11, 0xcd, 0x4f, 0x87, 0x7d, 0x1c, 0xf4, 0x4f, 0x72, 0x12, 0xff, 0x44, 0xfd, 0xcb,
|
||||
0xbe, 0x5b, 0xf2, 0x74, 0x4d, 0x50, 0xfd, 0x2b, 0x05, 0x4e, 0xdd, 0xc2, 0x41, 0x44, 0xf5, 0xf1,
|
||||
0xf0, 0x5f, 0x46, 0x14, 0xaa, 0x6f, 0x31, 0x27, 0x40, 0x4a, 0xfc, 0x91, 0x18, 0xdb, 0x5f, 0xcb,
|
||||
0xc0, 0x1c, 0xb1, 0x3a, 0xc7, 0x43, 0x08, 0x46, 0x39, 0xc4, 0x4a, 0x04, 0x25, 0x27, 0xdd, 0x09,
|
||||
0xa1, 0x09, 0xcf, 0x8f, 0x6c, 0xc2, 0xd5, 0x3f, 0xcb, 0x30, 0xd7, 0x43, 0xe4, 0xc6, 0x38, 0xcb,
|
||||
0x22, 0xa1, 0x35, 0x23, 0xa5, 0x55, 0x85, 0x4a, 0x04, 0x59, 0x5b, 0x0d, 0xcd, 0x6f, 0x0c, 0x76,
|
||||
0x5c, 0xad, 0xaf, 0xfa, 0x99, 0x02, 0xf3, 0xe1, 0x15, 0xc1, 0x06, 0x6e, 0x77, 0xb0, 0x13, 0x1c,
|
||||
0x5e, 0x86, 0x92, 0x12, 0x90, 0x91, 0x48, 0xc0, 0x49, 0x28, 0xf9, 0x6c, 0x9c, 0xe8, 0xf4, 0xdf,
|
||||
0x07, 0xa8, 0x7f, 0xa3, 0xc0, 0xc2, 0x00, 0x39, 0xe3, 0x2c, 0x62, 0x03, 0x0a, 0x96, 0x63, 0xe2,
|
||||
0xc7, 0x11, 0x35, 0x61, 0x91, 0xd4, 0x6c, 0xf6, 0x2c, 0xdb, 0x8c, 0xc8, 0x08, 0x8b, 0xe8, 0x0c,
|
||||
0x54, 0xb0, 0x43, 0x7c, 0x0c, 0x9d, 0xe2, 0x52, 0x41, 0x2e, 0x6a, 0x65, 0x06, 0x5b, 0x23, 0x20,
|
||||
0xd2, 0x78, 0xcb, 0xc2, 0xb4, 0x71, 0x8e, 0x35, 0xe6, 0x45, 0xf5, 0xd7, 0x15, 0x98, 0x21, 0x52,
|
||||
0xc8, 0xa9, 0xf7, 0x9f, 0x2c, 0x37, 0x17, 0xa1, 0x2c, 0x88, 0x19, 0x9f, 0x88, 0x08, 0x52, 0x1f,
|
||||
0xc2, 0x6c, 0x9c, 0x9c, 0x71, 0xb8, 0xf9, 0x2c, 0x40, 0xb4, 0x56, 0x6c, 0x37, 0x64, 0x35, 0x01,
|
||||
0xa2, 0x7e, 0x96, 0x09, 0x83, 0x08, 0x94, 0x4d, 0x47, 0x7c, 0x77, 0x49, 0x97, 0x44, 0xd4, 0xe7,
|
||||
0x25, 0x0a, 0xa1, 0xd5, 0xab, 0x50, 0xc1, 0x8f, 0x03, 0xcf, 0xd0, 0xbb, 0x86, 0x67, 0x74, 0xd8,
|
||||
0xb6, 0x1a, 0x49, 0xf5, 0x96, 0x69, 0xb3, 0x75, 0xda, 0x8a, 0x0c, 0x42, 0x45, 0x84, 0x0d, 0x92,
|
||||
0x67, 0x83, 0x50, 0x08, 0x35, 0x18, 0x7f, 0x4f, 0x9c, 0x3d, 0x2e, 0xcd, 0xc7, 0x9d, 0x21, 0xf1,
|
||||
0xa9, 0xe4, 0x92, 0x53, 0xf9, 0x03, 0x05, 0xea, 0x74, 0x0a, 0xab, 0x3c, 0x70, 0x64, 0xb9, 0x4e,
|
||||
0xa2, 0x8d, 0x92, 0x68, 0x33, 0x64, 0xef, 0xbd, 0x06, 0x79, 0xce, 0xf7, 0xec, 0xa8, 0x7c, 0xe7,
|
||||
0x0d, 0xf6, 0x99, 0x86, 0xfa, 0x7b, 0x0a, 0xcc, 0x25, 0x58, 0x3e, 0x8e, 0xc0, 0x3f, 0x00, 0xc4,
|
||||
0x66, 0x68, 0xf6, 0xa7, 0x1d, 0xda, 0xe9, 0xb3, 0x52, 0xa3, 0x94, 0x64, 0x92, 0x36, 0x6d, 0x25,
|
||||
0x20, 0xbe, 0xfa, 0x63, 0x05, 0x4e, 0xde, 0xc2, 0x01, 0x45, 0xbd, 0x4e, 0x94, 0xce, 0xba, 0xe7,
|
||||
0xb6, 0x3d, 0xec, 0xfb, 0x4f, 0xaf, 0x7c, 0xfc, 0x26, 0x73, 0xec, 0x64, 0x53, 0x1a, 0x87, 0xff,
|
||||
0x67, 0xa0, 0x42, 0xc7, 0xc0, 0xa6, 0xee, 0xb9, 0xbb, 0x3e, 0x97, 0xa3, 0x32, 0x87, 0x69, 0xee,
|
||||
0x2e, 0x15, 0x88, 0xc0, 0x0d, 0x0c, 0x9b, 0x21, 0x70, 0x8b, 0x42, 0x21, 0xa4, 0x9a, 0xee, 0xc1,
|
||||
0x90, 0x30, 0xd2, 0x39, 0x7e, 0x7a, 0x79, 0xfc, 0xfb, 0xec, 0x32, 0x4c, 0x9c, 0xca, 0x38, 0xbc,
|
||||
0x7d, 0x85, 0xb9, 0x9d, 0x6c, 0x32, 0xb5, 0x95, 0xd3, 0xd2, 0x36, 0xc2, 0x60, 0x0c, 0x1b, 0x9d,
|
||||
0x86, 0xf2, 0x96, 0x61, 0xd9, 0xba, 0x87, 0x0d, 0xdf, 0x75, 0xf8, 0x44, 0x81, 0x80, 0x34, 0x0a,
|
||||
0x51, 0x7f, 0xa4, 0xb0, 0x48, 0xed, 0x53, 0xae, 0xf1, 0x7e, 0x90, 0x81, 0xea, 0x9a, 0xe3, 0x63,
|
||||
0x2f, 0x38, 0xfe, 0x47, 0x13, 0xf4, 0x16, 0x94, 0xe9, 0xc4, 0x7c, 0xdd, 0x34, 0x02, 0x83, 0x5b,
|
||||
0xb3, 0x67, 0xa5, 0xa1, 0x99, 0x9b, 0x04, 0x6f, 0xd5, 0x08, 0x0c, 0x8d, 0x71, 0xc7, 0x27, 0xbf,
|
||||
0xd1, 0x09, 0x28, 0x6d, 0x1b, 0xfe, 0xb6, 0xfe, 0x10, 0xef, 0x31, 0x7f, 0xb1, 0xaa, 0x15, 0x09,
|
||||
0xe0, 0x5d, 0xbc, 0xe7, 0xa3, 0x67, 0xa0, 0xe8, 0xf4, 0x3a, 0x6c, 0x83, 0x15, 0x16, 0x95, 0xa5,
|
||||
0xaa, 0x56, 0x70, 0x7a, 0x1d, 0xb2, 0xbd, 0xd8, 0x85, 0x74, 0xb1, 0x91, 0x55, 0xff, 0x21, 0x03,
|
||||
0xb5, 0xbb, 0x3d, 0x72, 0x22, 0xa2, 0x11, 0xa6, 0x9e, 0x1d, 0x1c, 0x4e, 0x2a, 0xcf, 0x41, 0x96,
|
||||
0xf9, 0x16, 0xa4, 0x45, 0x43, 0x3a, 0x83, 0xb5, 0x55, 0x5f, 0x23, 0x48, 0x34, 0xba, 0xd2, 0x6b,
|
||||
0xb5, 0xb8, 0x9b, 0x96, 0xa5, 0x54, 0x97, 0x08, 0x84, 0x39, 0x69, 0x27, 0xa0, 0x84, 0x3d, 0x2f,
|
||||
0x72, 0xe2, 0xe8, 0x9c, 0xb0, 0xe7, 0xb1, 0x4a, 0x15, 0x2a, 0x46, 0xeb, 0xa1, 0xe3, 0xee, 0xda,
|
||||
0xd8, 0x6c, 0x63, 0x93, 0xae, 0x7f, 0x51, 0x8b, 0xc1, 0x98, 0x84, 0x10, 0x09, 0xd0, 0x5b, 0x4e,
|
||||
0x40, 0xcd, 0x7b, 0x96, 0x48, 0x08, 0x81, 0xdc, 0x70, 0x02, 0x52, 0x6d, 0x62, 0x1b, 0x07, 0x98,
|
||||
0x56, 0x17, 0x58, 0x35, 0x83, 0xf0, 0xea, 0x5e, 0x37, 0x6a, 0x5d, 0x64, 0xd5, 0x0c, 0x42, 0xaa,
|
||||
0x4f, 0x42, 0xa9, 0x7f, 0x03, 0x5e, 0xea, 0x5f, 0x61, 0xb2, 0x8b, 0xef, 0x9f, 0x28, 0x50, 0x5d,
|
||||
0xa5, 0x5d, 0x3d, 0x05, 0xd2, 0x87, 0x60, 0x12, 0x3f, 0xee, 0x7a, 0x7c, 0x0f, 0xd1, 0xdf, 0x43,
|
||||
0x05, 0x8a, 0x49, 0x4d, 0xa9, 0x91, 0x55, 0xff, 0x37, 0x0b, 0xd5, 0x0d, 0x6c, 0x78, 0xad, 0xed,
|
||||
0xa7, 0xe2, 0x7e, 0xa6, 0x0e, 0x59, 0xd3, 0xb7, 0xf9, 0x3c, 0xc9, 0x4f, 0x74, 0x1e, 0xa6, 0xbb,
|
||||
0xb6, 0xd1, 0xc2, 0xdb, 0xae, 0x6d, 0x62, 0x4f, 0x6f, 0x7b, 0x6e, 0x8f, 0x45, 0x10, 0x2b, 0x5a,
|
||||
0x5d, 0xa8, 0xb8, 0x45, 0xe0, 0xe8, 0x55, 0x28, 0x9a, 0xbe, 0xad, 0xd3, 0x83, 0x6d, 0x81, 0x2a,
|
||||
0x5d, 0xf9, 0xfc, 0x56, 0x7d, 0x9b, 0x9e, 0x6b, 0x0b, 0x26, 0xfb, 0x81, 0x9e, 0x83, 0xaa, 0xdb,
|
||||
0x0b, 0xba, 0xbd, 0x40, 0x67, 0x5b, 0xb6, 0x51, 0xa4, 0xe4, 0x55, 0x18, 0x90, 0xee, 0x68, 0x1f,
|
||||
0xdd, 0x84, 0xaa, 0x4f, 0x59, 0x19, 0xfa, 0xb4, 0xa5, 0x51, 0x7d, 0xab, 0x0a, 0x6b, 0xc7, 0x9d,
|
||||
0xda, 0x17, 0xa1, 0x1e, 0x78, 0xc6, 0x0e, 0xb6, 0x85, 0x08, 0x0d, 0x50, 0xf9, 0x9c, 0x62, 0xf0,
|
||||
0x7e, 0x78, 0x33, 0x25, 0x9e, 0x53, 0x4e, 0x8b, 0xe7, 0xa0, 0x1a, 0x64, 0x9c, 0x47, 0x34, 0x54,
|
||||
0x98, 0xd5, 0x32, 0xce, 0x23, 0xf5, 0x5d, 0x98, 0xbc, 0x6d, 0x05, 0x94, 0xb1, 0x64, 0xd7, 0x2b,
|
||||
0xf4, 0x44, 0x41, 0xf7, 0xf6, 0x33, 0x50, 0xf4, 0xdc, 0x5d, 0xa6, 0xce, 0x88, 0xbf, 0x55, 0xd1,
|
||||
0x0a, 0x9e, 0xbb, 0x4b, 0x75, 0x15, 0x4d, 0x32, 0x71, 0x3d, 0xcc, 0xbc, 0xc7, 0x8c, 0xc6, 0x4b,
|
||||
0xea, 0x9f, 0x28, 0x7d, 0x61, 0x22, 0x0a, 0xc8, 0x3f, 0x9c, 0x06, 0x7a, 0x0b, 0x0a, 0x1e, 0x6b,
|
||||
0x3f, 0x34, 0xc4, 0x2d, 0x8e, 0x44, 0xd5, 0x69, 0xd8, 0x6a, 0xf4, 0xf0, 0xcd, 0x37, 0x14, 0xa8,
|
||||
0xdc, 0xb4, 0x7b, 0xfe, 0x93, 0x10, 0x7e, 0x59, 0x00, 0x21, 0x2b, 0x0d, 0x20, 0xa8, 0xdf, 0xc9,
|
||||
0x40, 0x95, 0x93, 0x31, 0x8e, 0x3f, 0x91, 0x4a, 0xca, 0x06, 0x94, 0xc9, 0x90, 0xba, 0x8f, 0xdb,
|
||||
0xe1, 0xf5, 0x48, 0x79, 0x65, 0x45, 0xea, 0x3d, 0xc7, 0xc8, 0xa0, 0x59, 0x04, 0x1b, 0xb4, 0xd1,
|
||||
0x3b, 0x4e, 0xe0, 0xed, 0x69, 0xd0, 0x8a, 0x00, 0xcd, 0x8f, 0x60, 0x2a, 0x51, 0x4d, 0x84, 0xe8,
|
||||
0x21, 0xde, 0xe3, 0xe7, 0x10, 0xf2, 0x13, 0xbd, 0x2c, 0xe6, 0x7f, 0xa4, 0x19, 0xc4, 0x3b, 0xae,
|
||||
0xd3, 0xbe, 0xe6, 0x79, 0xc6, 0x1e, 0xcf, 0x0f, 0xb9, 0x9a, 0xf9, 0x8a, 0xa2, 0xfe, 0x6d, 0x06,
|
||||
0x2a, 0xef, 0xf5, 0xb0, 0xb7, 0x77, 0x94, 0x7a, 0x29, 0xd4, 0xab, 0x93, 0x82, 0x5e, 0x1d, 0x50,
|
||||
0x05, 0x39, 0x89, 0x2a, 0x90, 0x28, 0xb4, 0xbc, 0x54, 0xa1, 0xc9, 0xf6, 0x7a, 0xe1, 0x40, 0x7b,
|
||||
0xbd, 0x98, 0x1a, 0xbb, 0xfd, 0x63, 0x25, 0x62, 0xe1, 0x58, 0xbb, 0x31, 0xe6, 0xd9, 0x64, 0x0e,
|
||||
0xec, 0xd9, 0x8c, 0xbc, 0x1b, 0x7f, 0xa8, 0x40, 0xe9, 0x03, 0xdc, 0x0a, 0x5c, 0x8f, 0xe8, 0x1f,
|
||||
0x49, 0x33, 0x65, 0x04, 0x2f, 0x33, 0x93, 0xf4, 0x32, 0x2f, 0x43, 0xd1, 0x32, 0x75, 0x83, 0xc8,
|
||||
0x17, 0x1d, 0x77, 0x98, 0x53, 0x53, 0xb0, 0x4c, 0x2a, 0x88, 0xa3, 0xdf, 0xa7, 0x7f, 0x4f, 0x81,
|
||||
0x0a, 0xa3, 0xd9, 0x67, 0x2d, 0x5f, 0x17, 0x86, 0x53, 0x64, 0x42, 0xcf, 0x0b, 0xd1, 0x44, 0x6f,
|
||||
0x4f, 0xf4, 0x87, 0xbd, 0x06, 0x40, 0x98, 0xcc, 0x9b, 0xb3, 0x3d, 0xb3, 0x28, 0xa5, 0x96, 0x35,
|
||||
0xa7, 0x0c, 0xbf, 0x3d, 0xa1, 0x95, 0x48, 0x2b, 0xda, 0xc5, 0xf5, 0x02, 0xe4, 0x68, 0x6b, 0xf5,
|
||||
0x7f, 0x14, 0x98, 0xb9, 0x61, 0xd8, 0xad, 0x55, 0xcb, 0x0f, 0x0c, 0xa7, 0x35, 0x86, 0x1b, 0x73,
|
||||
0x15, 0x0a, 0x6e, 0x57, 0xb7, 0xf1, 0x56, 0xc0, 0x49, 0x3a, 0x33, 0x64, 0x46, 0x8c, 0x0d, 0x5a,
|
||||
0xde, 0xed, 0xde, 0xc1, 0x5b, 0x01, 0x7a, 0x03, 0x8a, 0x6e, 0x57, 0xf7, 0xac, 0xf6, 0x76, 0xc0,
|
||||
0xb9, 0x3f, 0x42, 0xe3, 0x82, 0xdb, 0xd5, 0x48, 0x0b, 0xe1, 0x9a, 0x62, 0xf2, 0x80, 0xd7, 0x14,
|
||||
0xea, 0x3f, 0x0f, 0x4c, 0x7f, 0x8c, 0x3d, 0x70, 0x15, 0x8a, 0x96, 0x13, 0xe8, 0xa6, 0xe5, 0x87,
|
||||
0x2c, 0x38, 0x25, 0x97, 0x21, 0x27, 0xa0, 0x33, 0xa0, 0x6b, 0xea, 0x04, 0x64, 0x6c, 0xf4, 0x36,
|
||||
0xc0, 0x96, 0xed, 0x1a, 0xbc, 0x35, 0xe3, 0xc1, 0x69, 0xf9, 0xf6, 0x21, 0x68, 0x61, 0xfb, 0x12,
|
||||
0x6d, 0x44, 0x7a, 0xe8, 0x2f, 0xe9, 0x3f, 0x29, 0x30, 0xb7, 0x8e, 0x3d, 0x96, 0x09, 0x14, 0xf0,
|
||||
0x1b, 0xc5, 0x35, 0x67, 0xcb, 0x8d, 0x5f, 0xea, 0x2a, 0x89, 0x4b, 0xdd, 0x9f, 0xcd, 0x45, 0x66,
|
||||
0xec, 0x10, 0xc2, 0x42, 0x0b, 0xe1, 0x21, 0x24, 0x0c, 0xa0, 0xb0, 0x43, 0x5c, 0x2d, 0x65, 0x99,
|
||||
0x38, 0xbd, 0xe2, 0x59, 0x56, 0xfd, 0x0d, 0x96, 0x3f, 0x21, 0x9d, 0xd4, 0xe1, 0x05, 0x76, 0x1e,
|
||||
0xb8, 0xa6, 0x4f, 0xe8, 0xfd, 0x2f, 0x41, 0x42, 0x77, 0xa4, 0x28, 0xa2, 0xef, 0x2b, 0xb0, 0x98,
|
||||
0x4e, 0xd5, 0x38, 0x26, 0xfa, 0x6d, 0xc8, 0x59, 0xce, 0x96, 0x1b, 0xde, 0x60, 0x9d, 0x93, 0xee,
|
||||
0x05, 0xf9, 0xb8, 0xac, 0xa1, 0xfa, 0xe3, 0x0c, 0xd4, 0xdf, 0x63, 0xf1, 0xf8, 0x2f, 0x7c, 0xf9,
|
||||
0x3b, 0xb8, 0xa3, 0xfb, 0xd6, 0x27, 0x38, 0x5c, 0xfe, 0x0e, 0xee, 0x6c, 0x58, 0x9f, 0xe0, 0x98,
|
||||
0x64, 0xe4, 0xe2, 0x92, 0x31, 0xfc, 0x82, 0x56, 0xbc, 0xa1, 0x2c, 0xc4, 0x6f, 0x28, 0xe7, 0x21,
|
||||
0xef, 0xb8, 0x26, 0x5e, 0x5b, 0xe5, 0x07, 0x37, 0x5e, 0xea, 0x8b, 0x5a, 0xe9, 0x60, 0xa2, 0x46,
|
||||
0x86, 0xa2, 0x5d, 0x98, 0x2c, 0x91, 0x8f, 0xd0, 0xc8, 0x8a, 0xea, 0xb7, 0x14, 0x68, 0xde, 0xc2,
|
||||
0x41, 0x92, 0xab, 0x47, 0x27, 0x7f, 0xdf, 0x56, 0xe0, 0x84, 0x94, 0xa0, 0x71, 0x44, 0xef, 0xf5,
|
||||
0xb8, 0xe8, 0xc9, 0x2f, 0x4f, 0x07, 0x86, 0xe4, 0x52, 0x77, 0x09, 0x2a, 0xab, 0xbd, 0x4e, 0x27,
|
||||
0x72, 0xc6, 0xce, 0x40, 0xc5, 0x63, 0x3f, 0xd9, 0x61, 0x8a, 0x59, 0xe6, 0x32, 0x87, 0x91, 0x23,
|
||||
0x93, 0x7a, 0x1e, 0xaa, 0xbc, 0x09, 0xa7, 0xba, 0x09, 0x45, 0x8f, 0xff, 0xe6, 0xf8, 0x51, 0x59,
|
||||
0x9d, 0x83, 0x19, 0x0d, 0xb7, 0x89, 0xd0, 0x7b, 0x77, 0x2c, 0xe7, 0x21, 0x1f, 0x46, 0xfd, 0xba,
|
||||
0x02, 0xb3, 0x71, 0x38, 0xef, 0xeb, 0x0a, 0x14, 0x0c, 0xd3, 0xf4, 0xb0, 0xef, 0x0f, 0x5d, 0x96,
|
||||
0x6b, 0x0c, 0x47, 0x0b, 0x91, 0x05, 0xce, 0x65, 0x46, 0xe6, 0x9c, 0xaa, 0xc3, 0xf4, 0x2d, 0x1c,
|
||||
0xdc, 0xc5, 0x81, 0x37, 0x56, 0x98, 0xbc, 0x41, 0x8e, 0x35, 0xb4, 0x31, 0x17, 0x8b, 0xb0, 0xa8,
|
||||
0x7e, 0xa6, 0x00, 0x12, 0x47, 0x18, 0x67, 0x99, 0x45, 0x2e, 0x67, 0xe2, 0x5c, 0x66, 0x89, 0x4a,
|
||||
0x9d, 0xae, 0xeb, 0x60, 0x27, 0x10, 0x1d, 0xb1, 0x6a, 0x04, 0x0d, 0x73, 0x37, 0xd0, 0x1d, 0xd7,
|
||||
0x30, 0xaf, 0x1b, 0xf6, 0x78, 0x8e, 0xc3, 0x29, 0x00, 0xdf, 0x6b, 0xe9, 0x7c, 0x1f, 0x67, 0xb8,
|
||||
0x5e, 0xf2, 0x5a, 0xf7, 0xd8, 0x56, 0x3e, 0x0d, 0x65, 0xd3, 0x0f, 0x78, 0x75, 0x18, 0xb5, 0x05,
|
||||
0xd3, 0x0f, 0x58, 0x3d, 0xcd, 0x0e, 0xf6, 0xb1, 0x61, 0x63, 0x53, 0x17, 0x82, 0x5e, 0x93, 0x14,
|
||||
0xad, 0xce, 0x2a, 0x36, 0x22, 0xb8, 0x64, 0x73, 0xe5, 0xa4, 0x9b, 0x6b, 0x0b, 0x16, 0xee, 0x1a,
|
||||
0x4e, 0xcf, 0xb0, 0x6f, 0xb8, 0x9d, 0xae, 0x11, 0x4b, 0x28, 0x4d, 0x2a, 0x4a, 0x45, 0xa2, 0x28,
|
||||
0x9f, 0x65, 0x99, 0x6f, 0xcc, 0x39, 0xa7, 0x73, 0x9a, 0xd4, 0x04, 0x08, 0xbb, 0x59, 0x29, 0x34,
|
||||
0x14, 0xd5, 0x87, 0xc6, 0xe0, 0x38, 0xe3, 0xac, 0x2c, 0xa5, 0x2e, 0xec, 0x4a, 0x54, 0xe3, 0x7d,
|
||||
0x98, 0xfa, 0x16, 0x3c, 0x43, 0xd3, 0x11, 0x43, 0x50, 0xec, 0xc2, 0x3d, 0xd9, 0x81, 0x22, 0xe9,
|
||||
0xe0, 0x57, 0x32, 0x54, 0x17, 0x0e, 0xf4, 0x30, 0x0e, 0xe1, 0x57, 0xe3, 0xf7, 0xdc, 0xcf, 0xa7,
|
||||
0xe4, 0x3c, 0xc7, 0x47, 0xe4, 0x5a, 0x7b, 0x09, 0xa6, 0xf0, 0x63, 0xdc, 0xea, 0x05, 0x96, 0xd3,
|
||||
0x5e, 0xb7, 0x0d, 0xe7, 0x9e, 0xcb, 0x6d, 0x53, 0x12, 0x8c, 0x9e, 0x87, 0x2a, 0x59, 0x06, 0xb7,
|
||||
0x17, 0x70, 0x3c, 0x66, 0xa4, 0xe2, 0x40, 0xd2, 0x1f, 0x99, 0xaf, 0x8d, 0x03, 0x6c, 0x72, 0x3c,
|
||||
0x66, 0xb1, 0x92, 0xe0, 0x01, 0x56, 0x12, 0xb0, 0x7f, 0x10, 0x56, 0xfe, 0x8b, 0x92, 0x60, 0x25,
|
||||
0xef, 0xe1, 0xa8, 0x58, 0x79, 0x1b, 0xa0, 0x83, 0xbd, 0x36, 0x5e, 0xa3, 0x56, 0x80, 0x5d, 0x02,
|
||||
0x2c, 0x49, 0xad, 0x40, 0xbf, 0x83, 0xbb, 0x61, 0x03, 0x4d, 0x68, 0xab, 0xde, 0x82, 0x19, 0x09,
|
||||
0x0a, 0x51, 0x70, 0xbe, 0xdb, 0xf3, 0x5a, 0x38, 0xbc, 0x47, 0x0a, 0x8b, 0xc4, 0x20, 0x06, 0x86,
|
||||
0xd7, 0xc6, 0x01, 0x17, 0x5a, 0x5e, 0x52, 0xaf, 0xd0, 0xd0, 0x10, 0xbd, 0x73, 0x88, 0x49, 0x6a,
|
||||
0x3c, 0xcc, 0xad, 0x0c, 0x84, 0xb9, 0xb7, 0x68, 0x1c, 0x46, 0x6c, 0x37, 0x66, 0x8a, 0xc2, 0x16,
|
||||
0xe9, 0x0a, 0x9b, 0xfc, 0x0d, 0x4c, 0x58, 0x54, 0x7f, 0xaa, 0x40, 0x75, 0xad, 0xd3, 0x75, 0xfb,
|
||||
0x21, 0x88, 0x91, 0x4f, 0xa5, 0x83, 0x37, 0xb7, 0x19, 0xd9, 0xcd, 0xed, 0x73, 0x50, 0x8d, 0xbf,
|
||||
0x96, 0x60, 0x57, 0x44, 0x95, 0x96, 0xf8, 0x4a, 0xe2, 0x04, 0x94, 0x3c, 0x77, 0x57, 0x27, 0x3a,
|
||||
0xd5, 0xe4, 0xc9, 0x10, 0x45, 0xcf, 0xdd, 0x25, 0x9a, 0xd6, 0x44, 0xb3, 0x90, 0xdb, 0xb2, 0xec,
|
||||
0x28, 0x8f, 0x87, 0x15, 0xd0, 0xeb, 0xe4, 0xcc, 0xc6, 0x82, 0xa5, 0xf9, 0x51, 0x8f, 0x4e, 0x61,
|
||||
0x0b, 0xf5, 0x43, 0xa8, 0x85, 0xb3, 0x1e, 0xf3, 0xf1, 0x4f, 0x60, 0xf8, 0x0f, 0xc3, 0x3c, 0x05,
|
||||
0x56, 0x50, 0xcf, 0xb3, 0x18, 0x1a, 0xed, 0x3f, 0xb6, 0xe8, 0x08, 0x26, 0x09, 0x06, 0xdf, 0x4b,
|
||||
0xf4, 0xb7, 0xfa, 0x8f, 0x19, 0x98, 0x4f, 0x62, 0x8f, 0x43, 0xd2, 0x95, 0xf8, 0xfe, 0x91, 0xbf,
|
||||
0xe5, 0x10, 0x47, 0xe3, 0x7b, 0x87, 0xaf, 0x40, 0xcb, 0xed, 0x39, 0x01, 0x57, 0x40, 0x64, 0x05,
|
||||
0x6e, 0x90, 0x32, 0x5a, 0x80, 0x82, 0x65, 0xea, 0x36, 0x39, 0xde, 0x31, 0xe3, 0x94, 0xb7, 0xcc,
|
||||
0x3b, 0xe4, 0xe8, 0xf7, 0x6a, 0xe8, 0x72, 0x8d, 0x9c, 0xdc, 0xc0, 0xf0, 0x51, 0x0d, 0x32, 0x96,
|
||||
0xc9, 0xe3, 0x1d, 0x19, 0xcb, 0x24, 0xc2, 0x44, 0xef, 0x05, 0x68, 0x22, 0x2e, 0xcf, 0xcc, 0x25,
|
||||
0x52, 0x50, 0x25, 0xd0, 0xf7, 0x42, 0x20, 0xf1, 0xca, 0x28, 0x1a, 0x8f, 0xce, 0x52, 0xcf, 0xb9,
|
||||
0xa8, 0x95, 0x09, 0x6c, 0x8d, 0x81, 0xd4, 0x06, 0xcc, 0x13, 0xd2, 0xd8, 0x14, 0x1f, 0x90, 0x05,
|
||||
0x09, 0x7d, 0xad, 0xef, 0x28, 0xb0, 0x30, 0x50, 0x35, 0x0e, 0xaf, 0xaf, 0x89, 0xcb, 0x5f, 0x5e,
|
||||
0x39, 0x2f, 0x55, 0x35, 0xf2, 0xc5, 0x0d, 0x65, 0xe5, 0xbb, 0xcc, 0x31, 0xd2, 0x58, 0xf2, 0xe5,
|
||||
0x13, 0x4e, 0xe5, 0x59, 0x82, 0xfa, 0xae, 0x15, 0x6c, 0xeb, 0xf4, 0x75, 0x10, 0xf5, 0x4a, 0x58,
|
||||
0x34, 0xbb, 0xa8, 0xd5, 0x08, 0x7c, 0x83, 0x80, 0x89, 0x67, 0xe2, 0xab, 0xdf, 0x54, 0x60, 0x26,
|
||||
0x46, 0xd6, 0x38, 0x6c, 0x7a, 0x83, 0x38, 0x6c, 0xac, 0x23, 0xce, 0xa9, 0x45, 0x29, 0xa7, 0xf8,
|
||||
0x68, 0x54, 0x19, 0x47, 0x2d, 0xd4, 0x7f, 0x55, 0xa0, 0x2c, 0xd4, 0x90, 0x93, 0x20, 0xaf, 0xeb,
|
||||
0x9f, 0x04, 0x23, 0xc0, 0x48, 0x6c, 0x78, 0x0e, 0xfa, 0x2a, 0x4a, 0x48, 0x66, 0x17, 0xb2, 0xe9,
|
||||
0x4c, 0x1f, 0xdd, 0x86, 0x1a, 0x63, 0x53, 0x44, 0xba, 0xf4, 0x82, 0x26, 0xca, 0x13, 0x34, 0x3c,
|
||||
0x93, 0x53, 0xa9, 0x55, 0x7d, 0xa1, 0xc4, 0x42, 0x9b, 0xae, 0x89, 0xe9, 0x48, 0xb9, 0x81, 0x73,
|
||||
0x59, 0x45, 0x6c, 0x4a, 0x7c, 0x5b, 0x1b, 0x1b, 0x26, 0xf6, 0xa2, 0xb9, 0x45, 0x65, 0xe2, 0x4c,
|
||||
0xb2, 0xdf, 0x3a, 0xf1, 0xf5, 0xb9, 0xb2, 0x05, 0x06, 0x22, 0xc7, 0x00, 0xf4, 0x25, 0x98, 0x32,
|
||||
0x3b, 0xb1, 0xa7, 0x69, 0xa1, 0xf7, 0x6b, 0x76, 0x84, 0x37, 0x69, 0x31, 0x82, 0x26, 0xe3, 0x04,
|
||||
0xfd, 0xb7, 0x12, 0x3d, 0xf6, 0xf5, 0xb0, 0x89, 0x9d, 0xc0, 0x32, 0xec, 0xc3, 0xcb, 0x64, 0x13,
|
||||
0x8a, 0x3d, 0x1f, 0x7b, 0x82, 0x6d, 0x88, 0xca, 0xa4, 0xae, 0x6b, 0xf8, 0xfe, 0xae, 0xeb, 0x99,
|
||||
0x9c, 0xca, 0xa8, 0x3c, 0x24, 0x35, 0x91, 0x3d, 0x10, 0x95, 0xa7, 0x26, 0x5e, 0x81, 0x85, 0x8e,
|
||||
0x6b, 0x5a, 0x5b, 0x96, 0x2c, 0xa3, 0x91, 0x34, 0x9b, 0x0b, 0xab, 0x63, 0xed, 0xd4, 0xef, 0x67,
|
||||
0x60, 0xe1, 0xfd, 0xae, 0xf9, 0x05, 0xcc, 0x79, 0x11, 0xca, 0xae, 0x6d, 0xae, 0xc7, 0xa7, 0x2d,
|
||||
0x82, 0x08, 0x86, 0x83, 0x77, 0x23, 0x0c, 0x76, 0x2b, 0x2f, 0x82, 0x86, 0xa6, 0x6d, 0x1e, 0x8a,
|
||||
0x37, 0xf9, 0x61, 0xbc, 0x69, 0xc3, 0x02, 0x0b, 0x11, 0x3f, 0x61, 0xd6, 0xa8, 0x1f, 0xc3, 0x1c,
|
||||
0x51, 0xcd, 0x64, 0x98, 0xf7, 0x7d, 0xec, 0x8d, 0xa9, 0x71, 0x4e, 0x42, 0x29, 0xec, 0x39, 0xcc,
|
||||
0xa8, 0xed, 0x03, 0xd4, 0xdb, 0x30, 0x9b, 0x18, 0xeb, 0x90, 0x33, 0x52, 0x17, 0x01, 0x34, 0xd7,
|
||||
0xc6, 0xef, 0x38, 0x81, 0x15, 0xec, 0x11, 0xf3, 0x2e, 0xb8, 0x4b, 0xf4, 0x37, 0xc1, 0x20, 0x63,
|
||||
0x0c, 0xc1, 0xf8, 0x45, 0x98, 0x66, 0x3b, 0x8e, 0xf4, 0x74, 0x78, 0xe6, 0xbe, 0x0a, 0x79, 0x4c,
|
||||
0x07, 0xe1, 0xe7, 0xfe, 0xd3, 0x72, 0x15, 0x1b, 0x51, 0xab, 0x71, 0x74, 0xf5, 0x17, 0x60, 0x6a,
|
||||
0xd5, 0x73, 0xbb, 0xe3, 0x8d, 0x4e, 0xbd, 0x07, 0x1b, 0x8b, 0x6e, 0x60, 0x91, 0x00, 0xe8, 0x79,
|
||||
0xf4, 0xef, 0x14, 0x98, 0xbf, 0xdf, 0xc5, 0x9e, 0x11, 0x60, 0xc2, 0x8b, 0xf1, 0x46, 0x1a, 0xb6,
|
||||
0xbf, 0x62, 0x54, 0x64, 0xe3, 0x54, 0xa0, 0x37, 0x62, 0x2f, 0xb6, 0xe4, 0xc7, 0x82, 0x04, 0x95,
|
||||
0x42, 0xe6, 0xf7, 0x1f, 0x2a, 0x30, 0xbd, 0x81, 0x89, 0x0d, 0x19, 0x8f, 0xfc, 0xcb, 0x30, 0x49,
|
||||
0x28, 0x1a, 0x75, 0x91, 0x28, 0x32, 0x3a, 0x07, 0xd3, 0x96, 0xd3, 0xb2, 0x7b, 0x26, 0xd6, 0xc9,
|
||||
0x5c, 0x75, 0xe2, 0x42, 0x71, 0xc3, 0x3d, 0xc5, 0x2b, 0x08, 0xc9, 0xc4, 0x3c, 0xaa, 0x8f, 0x99,
|
||||
0x48, 0x46, 0xf9, 0x31, 0x6c, 0x38, 0xe5, 0x20, 0xc3, 0xbd, 0x02, 0x39, 0x32, 0x4c, 0x68, 0xac,
|
||||
0xe5, 0xad, 0xfa, 0x52, 0xad, 0x31, 0x6c, 0xf5, 0x1b, 0x0a, 0x20, 0x91, 0x45, 0xe3, 0x6c, 0xe0,
|
||||
0xd7, 0xc4, 0x00, 0x79, 0x76, 0x28, 0xe9, 0x6c, 0xa6, 0x51, 0x68, 0x5c, 0x58, 0x29, 0xba, 0x8c,
|
||||
0xe3, 0xac, 0x14, 0x99, 0xd7, 0xd0, 0x95, 0x12, 0x98, 0x40, 0x91, 0xc5, 0x95, 0xa2, 0x92, 0x28,
|
||||
0x59, 0x29, 0x42, 0x73, 0xb8, 0x52, 0x8c, 0xc2, 0x70, 0xa5, 0xe8, 0x70, 0xca, 0x41, 0x86, 0x7b,
|
||||
0x05, 0x72, 0x64, 0x98, 0xfd, 0x99, 0x14, 0xae, 0x14, 0xc5, 0x16, 0x56, 0x8a, 0x13, 0xf0, 0xe4,
|
||||
0x57, 0xaa, 0x3f, 0xd3, 0xfe, 0x4a, 0xa9, 0x50, 0xb9, 0xbf, 0xf9, 0x31, 0x6e, 0x05, 0x43, 0xb4,
|
||||
0xe3, 0x59, 0x98, 0x5a, 0xf7, 0xac, 0x1d, 0xcb, 0xc6, 0xed, 0x61, 0x6a, 0xf6, 0x9b, 0x0a, 0x54,
|
||||
0x6f, 0x79, 0x86, 0x13, 0xb8, 0xa1, 0xaa, 0x3d, 0x14, 0x3f, 0xaf, 0x43, 0xa9, 0x1b, 0x8e, 0xc6,
|
||||
0x17, 0xfe, 0x79, 0x79, 0x00, 0x23, 0x4e, 0x93, 0xd6, 0x6f, 0xa6, 0x7e, 0x00, 0xb3, 0x94, 0x92,
|
||||
0x24, 0xd9, 0x6f, 0x42, 0x91, 0x6a, 0x5c, 0x8b, 0x5f, 0x1e, 0x94, 0x57, 0x54, 0xf9, 0x79, 0x41,
|
||||
0x9c, 0x86, 0x16, 0xb5, 0x51, 0xff, 0x5d, 0x81, 0x32, 0xad, 0xeb, 0x4f, 0xf0, 0xe0, 0x5b, 0xfb,
|
||||
0x35, 0xc8, 0xbb, 0x94, 0xe5, 0x43, 0xe3, 0x9c, 0xe2, 0xaa, 0x68, 0xbc, 0x01, 0x71, 0x3f, 0xd9,
|
||||
0x2f, 0x51, 0xbd, 0x02, 0x03, 0x71, 0x05, 0x5b, 0x68, 0x33, 0xda, 0xa9, 0x8e, 0x1d, 0x6d, 0x7e,
|
||||
0x61, 0x13, 0xf5, 0xd3, 0x48, 0x26, 0x29, 0xc2, 0xe1, 0xf7, 0xed, 0x57, 0x12, 0x86, 0x70, 0x31,
|
||||
0x9d, 0x8a, 0x84, 0x25, 0x24, 0x87, 0x9e, 0x18, 0x09, 0x63, 0x1e, 0x7a, 0xa2, 0xe5, 0x1e, 0x76,
|
||||
0xe8, 0x11, 0x09, 0xe9, 0x2f, 0xf6, 0x8f, 0x14, 0x58, 0xe0, 0xc6, 0x28, 0x92, 0xa3, 0x23, 0x60,
|
||||
0x09, 0xfa, 0x2a, 0x37, 0x9a, 0x59, 0x6a, 0x34, 0x5f, 0x1c, 0x66, 0x34, 0x23, 0x3a, 0x05, 0xab,
|
||||
0x79, 0x16, 0x4a, 0x77, 0x29, 0xd2, 0x3b, 0x8f, 0x03, 0xd4, 0x80, 0xc2, 0x0e, 0xf6, 0x7c, 0xcb,
|
||||
0x75, 0xf8, 0xd6, 0x0d, 0x8b, 0xe7, 0xce, 0x40, 0x31, 0x7c, 0x68, 0x85, 0x0a, 0x90, 0xbd, 0x66,
|
||||
0xdb, 0xf5, 0x09, 0x54, 0x81, 0xe2, 0x1a, 0x7f, 0x4d, 0x54, 0x57, 0xce, 0xbd, 0x0d, 0x33, 0x12,
|
||||
0xe3, 0x8c, 0xa6, 0xa1, 0x7a, 0xcd, 0xa4, 0x5e, 0xdc, 0x03, 0x97, 0x00, 0xeb, 0x13, 0x68, 0x1e,
|
||||
0x90, 0x86, 0x3b, 0xee, 0x0e, 0x45, 0xbc, 0xe9, 0xb9, 0x1d, 0x0a, 0x57, 0xce, 0x5d, 0x80, 0x59,
|
||||
0x19, 0xa5, 0xa8, 0x04, 0x39, 0x3a, 0xf3, 0xfa, 0x04, 0x02, 0xc8, 0x6b, 0x78, 0xc7, 0x7d, 0x88,
|
||||
0xeb, 0xca, 0xca, 0x5f, 0x9c, 0x83, 0x2a, 0xa3, 0x9d, 0x3f, 0x0b, 0x46, 0x3a, 0xd4, 0x93, 0xdf,
|
||||
0x41, 0x42, 0x5f, 0x96, 0xdf, 0x2e, 0xca, 0x3f, 0x97, 0xd4, 0x1c, 0x26, 0x38, 0xea, 0x04, 0xfa,
|
||||
0x10, 0x6a, 0xf1, 0x2f, 0x07, 0x21, 0x79, 0xf4, 0x54, 0xfa, 0x79, 0xa1, 0xfd, 0x3a, 0xd7, 0xa1,
|
||||
0x1a, 0xfb, 0xe8, 0x0f, 0x92, 0x2f, 0xa6, 0xec, 0xc3, 0x40, 0x4d, 0xb9, 0x96, 0x10, 0x3f, 0xcc,
|
||||
0xc3, 0xa8, 0x8f, 0x7f, 0x85, 0x23, 0x85, 0x7a, 0xe9, 0xa7, 0x3a, 0xf6, 0xa3, 0xde, 0x80, 0xe9,
|
||||
0x81, 0x8f, 0x64, 0xa0, 0x0b, 0x29, 0xb7, 0x08, 0xf2, 0x8f, 0x69, 0xec, 0x37, 0xc4, 0x2e, 0xa0,
|
||||
0xc1, 0x0f, 0xd9, 0xa0, 0x65, 0xf9, 0x0a, 0xa4, 0x7d, 0xda, 0xa7, 0x79, 0x71, 0x64, 0xfc, 0x88,
|
||||
0x71, 0xbf, 0xac, 0xc0, 0x42, 0xca, 0x17, 0x16, 0xd0, 0xe5, 0xb4, 0x2b, 0xa5, 0x21, 0x9f, 0x89,
|
||||
0x68, 0xbe, 0x7c, 0xb0, 0x46, 0x11, 0x21, 0x0e, 0x4c, 0x25, 0x3e, 0x30, 0x80, 0xce, 0xa7, 0xbe,
|
||||
0x8a, 0x1c, 0xfc, 0xfa, 0x42, 0xf3, 0xcb, 0xa3, 0x21, 0x47, 0xe3, 0x7d, 0x04, 0x53, 0x89, 0xd7,
|
||||
0xf5, 0x29, 0xe3, 0xc9, 0xdf, 0xe0, 0xef, 0xb7, 0xa0, 0x5f, 0x83, 0x6a, 0xec, 0x19, 0x7c, 0x8a,
|
||||
0xc4, 0xcb, 0x9e, 0xca, 0xef, 0xd7, 0xf5, 0x47, 0x50, 0x11, 0x5f, 0xab, 0xa3, 0xa5, 0xb4, 0xbd,
|
||||
0x34, 0xd0, 0xf1, 0x41, 0xb6, 0x52, 0xff, 0x95, 0xe9, 0x90, 0xad, 0x34, 0xf0, 0x30, 0x77, 0xf4,
|
||||
0xad, 0x24, 0xf4, 0x3f, 0x74, 0x2b, 0x1d, 0x78, 0x88, 0xaf, 0x2b, 0xf4, 0x4e, 0x5b, 0xf2, 0x8a,
|
||||
0x19, 0xad, 0xa4, 0xc9, 0x66, 0xfa, 0x7b, 0xed, 0xe6, 0xe5, 0x03, 0xb5, 0x89, 0xb8, 0xf8, 0x10,
|
||||
0x6a, 0xf1, 0xb7, 0xba, 0x29, 0x5c, 0x94, 0x3e, 0x6f, 0x6e, 0x9e, 0x1f, 0x09, 0x37, 0x1a, 0xec,
|
||||
0x7d, 0x28, 0x0b, 0x9f, 0x36, 0x44, 0x2f, 0x0c, 0x91, 0x63, 0xf1, 0x3b, 0x7f, 0xfb, 0x71, 0xf2,
|
||||
0x3d, 0x28, 0x45, 0x5f, 0x24, 0x44, 0x67, 0x53, 0xe5, 0xf7, 0x20, 0x5d, 0x6e, 0x00, 0xf4, 0x3f,
|
||||
0x37, 0x88, 0xbe, 0x24, 0xed, 0x73, 0xe0, 0x7b, 0x84, 0xfb, 0x75, 0x1a, 0x4d, 0x9f, 0xbd, 0x7c,
|
||||
0x18, 0x36, 0x7d, 0xf1, 0xcd, 0xce, 0x7e, 0xdd, 0x6e, 0x43, 0x35, 0xf6, 0xd2, 0x2e, 0x6d, 0x0b,
|
||||
0x4b, 0x1e, 0x40, 0x36, 0xcf, 0x8d, 0x82, 0x1a, 0xad, 0xdf, 0x36, 0x54, 0x63, 0xef, 0x9e, 0x52,
|
||||
0x46, 0x92, 0x3d, 0xf3, 0x4a, 0x19, 0x49, 0xfa, 0x8c, 0x4a, 0x9d, 0x40, 0x9f, 0x0a, 0x4f, 0xac,
|
||||
0x62, 0xcf, 0xd8, 0xd0, 0xa5, 0xa1, 0xfd, 0xc8, 0x5e, 0xf1, 0x35, 0x57, 0x0e, 0xd2, 0x24, 0x22,
|
||||
0x81, 0x4b, 0x15, 0x63, 0x69, 0xba, 0x54, 0x1d, 0x64, 0xa5, 0x36, 0x20, 0xcf, 0x5e, 0x32, 0x21,
|
||||
0x35, 0xe5, 0xcd, 0xa2, 0xf0, 0xcc, 0xa9, 0xf9, 0x9c, 0x14, 0x27, 0xfe, 0xb6, 0x87, 0x75, 0xca,
|
||||
0x6e, 0x1f, 0x53, 0x3a, 0x8d, 0xbd, 0x5e, 0x19, 0xb5, 0x53, 0x0d, 0xf2, 0x2c, 0xaf, 0x3e, 0xa5,
|
||||
0xd3, 0xd8, 0x5b, 0x91, 0xe6, 0x70, 0x1c, 0x76, 0x8e, 0x9d, 0x40, 0xeb, 0x90, 0xa3, 0xa1, 0x5a,
|
||||
0x74, 0x66, 0x58, 0xca, 0xf9, 0xb0, 0x1e, 0x63, 0x59, 0xe9, 0xea, 0x04, 0xba, 0x0f, 0x39, 0x1a,
|
||||
0xf5, 0x4a, 0xe9, 0x51, 0xcc, 0x1b, 0x6f, 0x0e, 0x45, 0x09, 0x49, 0x34, 0xa1, 0x22, 0x26, 0x8b,
|
||||
0xa6, 0x98, 0x2c, 0x49, 0x3a, 0x6d, 0x73, 0x14, 0xcc, 0x70, 0x14, 0xb6, 0x8d, 0xfa, 0x61, 0xeb,
|
||||
0xf4, 0x6d, 0x34, 0x10, 0x12, 0x4f, 0xdf, 0x46, 0x83, 0x51, 0x70, 0x75, 0x02, 0xfd, 0xaa, 0x02,
|
||||
0x8d, 0xb4, 0x0c, 0x46, 0x94, 0xea, 0x01, 0x0d, 0x4b, 0xc3, 0x6c, 0xbe, 0x72, 0xc0, 0x56, 0x11,
|
||||
0x2d, 0x9f, 0xd0, 0x60, 0xd9, 0x40, 0xce, 0xe2, 0xc5, 0xb4, 0xfe, 0x52, 0xf2, 0xf0, 0x9a, 0x2f,
|
||||
0x8d, 0xde, 0x20, 0x1a, 0x7b, 0x13, 0xca, 0x42, 0xa0, 0x2e, 0x45, 0xf3, 0x0e, 0x46, 0x18, 0x53,
|
||||
0x56, 0x55, 0x12, 0xf3, 0x63, 0xe2, 0x4d, 0x13, 0xdd, 0x52, 0x84, 0x51, 0xcc, 0x9b, 0x4b, 0x11,
|
||||
0xef, 0x58, 0x9e, 0x9c, 0x3a, 0x81, 0x30, 0x54, 0xc4, 0xac, 0xb7, 0x14, 0x69, 0x94, 0x24, 0xcc,
|
||||
0x35, 0x5f, 0x1c, 0x01, 0x33, 0x1a, 0x46, 0x07, 0xe8, 0x67, 0x9d, 0xa5, 0xd8, 0xba, 0x81, 0xc4,
|
||||
0xb7, 0xe6, 0x0b, 0xfb, 0xe2, 0x89, 0x66, 0x5f, 0xc8, 0x23, 0x4b, 0xe1, 0xfe, 0x60, 0xa6, 0xd9,
|
||||
0x08, 0x67, 0x91, 0xc1, 0x14, 0xa5, 0x94, 0xb3, 0x48, 0x6a, 0x36, 0x54, 0xf3, 0xe2, 0xc8, 0xf8,
|
||||
0xd1, 0x7c, 0x1e, 0x41, 0x3d, 0x99, 0xd2, 0x95, 0x72, 0xc6, 0x4d, 0xc9, 0x30, 0x6b, 0x5e, 0x18,
|
||||
0x11, 0x5b, 0xb4, 0x87, 0x27, 0x06, 0x69, 0xfa, 0x39, 0x2b, 0xd8, 0xa6, 0xd9, 0x44, 0xa3, 0xcc,
|
||||
0x5a, 0x4c, 0x5c, 0x1a, 0x65, 0xd6, 0xb1, 0x34, 0x25, 0x6e, 0xbc, 0x68, 0x88, 0x3e, 0xcd, 0x78,
|
||||
0x89, 0x09, 0x32, 0x29, 0x76, 0x26, 0x9e, 0x4e, 0xc2, 0xdc, 0xcf, 0x78, 0xe8, 0x1f, 0x9d, 0x1b,
|
||||
0x29, 0x3f, 0x60, 0x98, 0xfb, 0x29, 0xcf, 0x25, 0x60, 0x47, 0xb7, 0x44, 0x66, 0x43, 0xca, 0x51,
|
||||
0x4a, 0x9e, 0x1a, 0x91, 0x72, 0x74, 0x4b, 0x49, 0x96, 0xa0, 0x1b, 0xab, 0x9e, 0x0c, 0x13, 0x0f,
|
||||
0xbf, 0x0b, 0x49, 0x86, 0x0f, 0xf7, 0xbf, 0xae, 0xa8, 0x27, 0x63, 0xb2, 0x29, 0x03, 0xa4, 0x84,
|
||||
0x6e, 0x47, 0x18, 0x20, 0x19, 0xd9, 0x4c, 0x19, 0x20, 0x25, 0x00, 0x3a, 0x82, 0xef, 0x1a, 0x8b,
|
||||
0x32, 0xa6, 0x98, 0x42, 0x59, 0x24, 0x32, 0xc5, 0x14, 0x4a, 0x03, 0xa4, 0xcc, 0xa3, 0xef, 0x47,
|
||||
0x10, 0x53, 0xb4, 0xdc, 0x40, 0x88, 0x71, 0x3f, 0xf2, 0xef, 0x43, 0x31, 0x0c, 0x0b, 0xa2, 0xe7,
|
||||
0x53, 0x5d, 0xc4, 0x03, 0x74, 0xf8, 0x11, 0x4c, 0x25, 0x6e, 0xf0, 0x52, 0x44, 0x54, 0x1e, 0x2a,
|
||||
0xdc, 0x7f, 0x3d, 0xa1, 0x1f, 0x7c, 0x4a, 0x61, 0xc2, 0x40, 0x00, 0x2f, 0x45, 0xd5, 0x0f, 0x46,
|
||||
0xb1, 0xc4, 0x01, 0x08, 0x61, 0x43, 0x07, 0x10, 0xe2, 0x4e, 0x43, 0x07, 0x10, 0x83, 0x2f, 0x4c,
|
||||
0x22, 0x93, 0x17, 0x94, 0x29, 0x12, 0x99, 0x72, 0x33, 0xbc, 0x1f, 0x8b, 0x36, 0xa1, 0x2c, 0x5c,
|
||||
0x6f, 0xa3, 0x61, 0xa4, 0x89, 0x77, 0xf0, 0x29, 0xae, 0x82, 0xe4, 0xa6, 0x5c, 0x9d, 0x58, 0xe9,
|
||||
0x41, 0x65, 0xdd, 0x73, 0x1f, 0x87, 0xdf, 0x52, 0xfc, 0x82, 0x0c, 0xfd, 0xd5, 0x16, 0xd4, 0x18,
|
||||
0x82, 0x8e, 0x1f, 0x07, 0xba, 0xbb, 0xf9, 0x31, 0x3a, 0xb9, 0xcc, 0xfe, 0x1f, 0xc1, 0x72, 0xf8,
|
||||
0xff, 0x08, 0x96, 0x6f, 0x5a, 0x36, 0xbe, 0xcf, 0x33, 0x06, 0xff, 0xb3, 0x30, 0xe4, 0xe1, 0x5a,
|
||||
0x74, 0x65, 0xad, 0xf1, 0x7f, 0x89, 0xf0, 0xce, 0xe3, 0xe0, 0xfe, 0xe6, 0xc7, 0xd7, 0x8d, 0xcf,
|
||||
0xdf, 0x2c, 0x40, 0x6e, 0x65, 0xf9, 0xd2, 0xf2, 0x4b, 0x50, 0xb3, 0x22, 0xf4, 0xb6, 0xd7, 0x6d,
|
||||
0x5d, 0x2f, 0xb3, 0x46, 0xeb, 0xa4, 0x9f, 0x75, 0xe5, 0xe7, 0x2f, 0xb7, 0xad, 0x60, 0xbb, 0xb7,
|
||||
0x49, 0x96, 0xe0, 0x22, 0x43, 0xbb, 0x60, 0xb9, 0xfc, 0xd7, 0x45, 0xcb, 0x09, 0xb0, 0xe7, 0x18,
|
||||
0x36, 0xfb, 0x57, 0x09, 0x1c, 0xda, 0xdd, 0xfc, 0x5d, 0x45, 0xd9, 0xcc, 0x53, 0xd0, 0xe5, 0xff,
|
||||
0x0f, 0x00, 0x00, 0xff, 0xff, 0xbe, 0xa2, 0xfe, 0xb7, 0x8c, 0x61, 0x00, 0x00,
|
||||
// 5188 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x3d, 0x4b, 0x6c, 0x1c, 0x47,
|
||||
0x76, 0xec, 0x19, 0xce, 0xef, 0xcd, 0x87, 0xc3, 0xe2, 0x6f, 0x3c, 0x92, 0x2c, 0xaa, 0x6d, 0xd9,
|
||||
0xb4, 0xb4, 0xa6, 0x6c, 0xca, 0x96, 0xd7, 0xb2, 0x57, 0xb6, 0x24, 0x5a, 0x12, 0x61, 0x7d, 0xe8,
|
||||
0xa6, 0xec, 0x60, 0xe3, 0x18, 0x8d, 0xe6, 0x74, 0x71, 0xd8, 0x56, 0x4f, 0xf7, 0xa8, 0xbb, 0x87,
|
||||
0x14, 0x9d, 0xcb, 0x02, 0x9b, 0xdd, 0x6c, 0x90, 0xcd, 0x2e, 0x36, 0xbf, 0x45, 0x0e, 0xf9, 0x20,
|
||||
0xd8, 0x1c, 0x02, 0x6c, 0x82, 0x38, 0x09, 0x10, 0x60, 0x73, 0xc8, 0x39, 0x46, 0xbe, 0x87, 0x20,
|
||||
0x59, 0x24, 0xc7, 0x45, 0x80, 0x1c, 0x02, 0xe4, 0x90, 0x63, 0x82, 0x04, 0xf5, 0xe9, 0x9e, 0xea,
|
||||
0x9e, 0xea, 0xe1, 0x90, 0xb3, 0x32, 0x29, 0xf3, 0x34, 0xf5, 0xea, 0x55, 0xd5, 0xab, 0x57, 0xef,
|
||||
0xbd, 0x7a, 0x55, 0xef, 0x55, 0x13, 0x2a, 0x1d, 0xcb, 0xde, 0xe9, 0xf9, 0xcb, 0x5d, 0xcf, 0x0d,
|
||||
0x5c, 0x34, 0x23, 0x96, 0x96, 0x59, 0xa1, 0x59, 0x69, 0xb9, 0x9d, 0x8e, 0xeb, 0x30, 0x60, 0xb3,
|
||||
0xe2, 0xb7, 0xb6, 0x71, 0xc7, 0xe0, 0xa5, 0xc5, 0xb6, 0xeb, 0xb6, 0x6d, 0x7c, 0x81, 0x96, 0x36,
|
||||
0x7b, 0x5b, 0x17, 0x4c, 0xec, 0xb7, 0x3c, 0xab, 0x1b, 0xb8, 0x1e, 0xc3, 0x50, 0x7f, 0x47, 0x01,
|
||||
0x74, 0xdd, 0xc3, 0x46, 0x80, 0xaf, 0xda, 0x96, 0xe1, 0x6b, 0xf8, 0x61, 0x0f, 0xfb, 0x01, 0x7a,
|
||||
0x09, 0x26, 0x37, 0x0d, 0x1f, 0x37, 0x94, 0x45, 0x65, 0xa9, 0xbc, 0x72, 0x72, 0x39, 0x36, 0x30,
|
||||
0x1f, 0xf0, 0x8e, 0xdf, 0xbe, 0x66, 0xf8, 0x58, 0xa3, 0x98, 0x68, 0x01, 0x0a, 0xe6, 0xa6, 0xee,
|
||||
0x18, 0x1d, 0xdc, 0xc8, 0x2c, 0x2a, 0x4b, 0x25, 0x2d, 0x6f, 0x6e, 0xde, 0x35, 0x3a, 0x18, 0x3d,
|
||||
0x0f, 0x53, 0x2d, 0xd7, 0xb6, 0x71, 0x2b, 0xb0, 0x5c, 0x87, 0x21, 0x64, 0x29, 0x42, 0xad, 0x0f,
|
||||
0xa6, 0x88, 0xb3, 0x90, 0x33, 0x08, 0x0d, 0x8d, 0x49, 0x5a, 0xcd, 0x0a, 0xaa, 0x0f, 0xf5, 0x55,
|
||||
0xcf, 0xed, 0x3e, 0x2e, 0xea, 0xa2, 0x41, 0xb3, 0xe2, 0xa0, 0xbf, 0xad, 0xc0, 0xf4, 0x55, 0x3b,
|
||||
0xc0, 0xde, 0x31, 0x65, 0xca, 0x0f, 0x33, 0xb0, 0xc0, 0x56, 0xed, 0x7a, 0x84, 0x7e, 0x94, 0x54,
|
||||
0xce, 0x43, 0x9e, 0xc9, 0x1d, 0x25, 0xb3, 0xa2, 0xf1, 0x12, 0x3a, 0x05, 0xe0, 0x6f, 0x1b, 0x9e,
|
||||
0xe9, 0xeb, 0x4e, 0xaf, 0xd3, 0xc8, 0x2d, 0x2a, 0x4b, 0x39, 0xad, 0xc4, 0x20, 0x77, 0x7b, 0x1d,
|
||||
0xa4, 0xc1, 0x74, 0xcb, 0x75, 0x7c, 0xcb, 0x0f, 0xb0, 0xd3, 0xda, 0xd3, 0x6d, 0xbc, 0x83, 0xed,
|
||||
0x46, 0x7e, 0x51, 0x59, 0xaa, 0xad, 0x9c, 0x95, 0xd2, 0x7d, 0xbd, 0x8f, 0x7d, 0x9b, 0x20, 0x6b,
|
||||
0xf5, 0x56, 0x02, 0x72, 0x19, 0x7d, 0x76, 0x65, 0xaa, 0xa8, 0xd4, 0x95, 0xc6, 0xff, 0x85, 0x7f,
|
||||
0x8a, 0xfa, 0xbb, 0x0a, 0xcc, 0x11, 0x21, 0x3a, 0x16, 0xcc, 0x0a, 0x29, 0xcc, 0x88, 0x14, 0xfe,
|
||||
0xa1, 0x02, 0xb3, 0xb7, 0x0c, 0xff, 0x78, 0xac, 0xe6, 0x29, 0x80, 0xc0, 0xea, 0x60, 0xdd, 0x0f,
|
||||
0x8c, 0x4e, 0x97, 0xae, 0xe8, 0xa4, 0x56, 0x22, 0x90, 0x0d, 0x02, 0x50, 0xbf, 0x0a, 0x95, 0x6b,
|
||||
0xae, 0x6b, 0x6b, 0xd8, 0xef, 0xba, 0x8e, 0x8f, 0xd1, 0x45, 0xc8, 0xfb, 0x81, 0x11, 0xf4, 0x7c,
|
||||
0x4e, 0xe4, 0x09, 0x29, 0x91, 0x1b, 0x14, 0x45, 0xe3, 0xa8, 0x44, 0xae, 0x77, 0x0c, 0xbb, 0xc7,
|
||||
0x68, 0x2c, 0x6a, 0xac, 0xa0, 0x7e, 0x08, 0xb5, 0x8d, 0xc0, 0xb3, 0x9c, 0xf6, 0x4f, 0xb1, 0xf3,
|
||||
0x52, 0xd8, 0xf9, 0xbf, 0x2b, 0xf0, 0xd4, 0x2a, 0xb5, 0x7f, 0x9b, 0xc7, 0x44, 0x6d, 0x54, 0xa8,
|
||||
0xf4, 0x21, 0x6b, 0xab, 0x94, 0xd5, 0x59, 0x2d, 0x06, 0x4b, 0x2c, 0x46, 0x2e, 0xb1, 0x18, 0xa1,
|
||||
0x30, 0x65, 0x45, 0x61, 0xfa, 0x5a, 0x0e, 0x9a, 0xb2, 0x89, 0x8e, 0xc3, 0xd2, 0xaf, 0x44, 0x1a,
|
||||
0x9e, 0xa1, 0x8d, 0x12, 0xfa, 0xc9, 0x77, 0x9d, 0xfe, 0x68, 0x1b, 0x14, 0x10, 0x19, 0x82, 0xe4,
|
||||
0x4c, 0xb3, 0x92, 0x99, 0xae, 0xc0, 0xdc, 0x8e, 0xe5, 0x05, 0x3d, 0xc3, 0xd6, 0x5b, 0xdb, 0x86,
|
||||
0xe3, 0x60, 0x9b, 0xf2, 0x8e, 0x98, 0xbe, 0xec, 0x52, 0x49, 0x9b, 0xe1, 0x95, 0xd7, 0x59, 0x1d,
|
||||
0x61, 0xa0, 0x8f, 0x5e, 0x81, 0xf9, 0xee, 0xf6, 0x9e, 0x6f, 0xb5, 0x06, 0x1a, 0xe5, 0x68, 0xa3,
|
||||
0xd9, 0xb0, 0x36, 0xd6, 0xea, 0x3c, 0x4c, 0xb7, 0xa8, 0xf5, 0x34, 0x75, 0xc2, 0x49, 0xc6, 0xda,
|
||||
0x3c, 0x65, 0x6d, 0x9d, 0x57, 0xdc, 0x0f, 0xe1, 0x84, 0xac, 0x10, 0xb9, 0x17, 0xb4, 0x84, 0x06,
|
||||
0x05, 0xda, 0x60, 0x86, 0x57, 0xbe, 0x1f, 0xb4, 0xfa, 0x6d, 0xe2, 0x76, 0xaf, 0x98, 0xb4, 0x7b,
|
||||
0x0d, 0x28, 0x50, 0x3b, 0x8e, 0xfd, 0x46, 0x89, 0x92, 0x19, 0x16, 0xd1, 0x1a, 0x4c, 0xf9, 0x81,
|
||||
0xe1, 0x05, 0x7a, 0xd7, 0xf5, 0x2d, 0xc2, 0x17, 0xbf, 0x01, 0x8b, 0xd9, 0xa5, 0xf2, 0xca, 0xa2,
|
||||
0x74, 0x91, 0xde, 0xc5, 0x7b, 0xab, 0x46, 0x60, 0xac, 0x1b, 0x96, 0xa7, 0xd5, 0x68, 0xc3, 0xf5,
|
||||
0xb0, 0x9d, 0xdc, 0xb8, 0x96, 0xc7, 0x32, 0xae, 0x32, 0xc9, 0xae, 0xc8, 0x24, 0x5b, 0xfd, 0x4b,
|
||||
0x05, 0xe6, 0x6e, 0xbb, 0x86, 0x79, 0x3c, 0xf4, 0xec, 0x2c, 0xd4, 0x3c, 0xdc, 0xb5, 0xad, 0x96,
|
||||
0x41, 0xd6, 0x63, 0x13, 0x7b, 0x54, 0xd3, 0x72, 0x5a, 0x95, 0x43, 0xef, 0x52, 0xe0, 0xe5, 0xc2,
|
||||
0x67, 0x57, 0x26, 0xeb, 0xb9, 0x46, 0x56, 0xfd, 0xbe, 0x02, 0x0d, 0x0d, 0xdb, 0xd8, 0xf0, 0x8f,
|
||||
0x87, 0xa1, 0x60, 0x94, 0xe5, 0x1b, 0x59, 0xf5, 0x3f, 0x15, 0x98, 0xbd, 0x89, 0x03, 0xa2, 0x9c,
|
||||
0x96, 0x1f, 0x58, 0xad, 0x23, 0xf5, 0x4d, 0x9e, 0x87, 0xa9, 0xae, 0xe1, 0x05, 0x56, 0x84, 0x17,
|
||||
0xaa, 0x6a, 0x2d, 0x02, 0x33, 0x7d, 0xbb, 0x00, 0x33, 0xed, 0x9e, 0xe1, 0x19, 0x4e, 0x80, 0xb1,
|
||||
0xa0, 0x40, 0xcc, 0x98, 0xa1, 0xa8, 0x2a, 0xd2, 0x1f, 0x36, 0x5f, 0x68, 0x64, 0xd5, 0x6f, 0x28,
|
||||
0x30, 0x97, 0x98, 0xef, 0x38, 0x56, 0xec, 0x35, 0xc8, 0x91, 0x5f, 0x7e, 0x23, 0x43, 0x95, 0xea,
|
||||
0x4c, 0x9a, 0x52, 0x7d, 0x40, 0x36, 0x0c, 0xaa, 0x55, 0x0c, 0x9f, 0x38, 0x84, 0x4f, 0xdf, 0xc4,
|
||||
0x81, 0x60, 0xdf, 0x8e, 0xc3, 0x0a, 0xf4, 0xf9, 0xf4, 0x5d, 0x05, 0x4e, 0xa7, 0xd2, 0x77, 0x24,
|
||||
0x1c, 0xfb, 0x6f, 0x05, 0xe6, 0x37, 0xb6, 0xdd, 0xdd, 0x3e, 0x49, 0x8f, 0x83, 0x53, 0xf1, 0xdd,
|
||||
0x31, 0x9b, 0xd8, 0x1d, 0xd1, 0xcb, 0x30, 0x19, 0xec, 0x75, 0x31, 0x55, 0xf7, 0xda, 0xca, 0xa9,
|
||||
0x65, 0xc9, 0xf9, 0x69, 0x99, 0x10, 0x79, 0x7f, 0xaf, 0x8b, 0x35, 0x8a, 0x8a, 0x5e, 0x80, 0x7a,
|
||||
0x82, 0xf7, 0xe1, 0x5e, 0x32, 0x15, 0x67, 0xbe, 0x1f, 0xee, 0xbd, 0x93, 0xe2, 0xde, 0xfb, 0x5f,
|
||||
0x19, 0x58, 0x18, 0x98, 0xf6, 0x38, 0x0b, 0x20, 0xa3, 0x27, 0x23, 0xa5, 0x87, 0x98, 0x39, 0x01,
|
||||
0xd5, 0x32, 0xc9, 0xa1, 0x26, 0xbb, 0x94, 0xd5, 0xaa, 0xc2, 0x36, 0x6b, 0xfa, 0xe8, 0x45, 0x40,
|
||||
0x03, 0xbb, 0x1f, 0xd3, 0xdc, 0x49, 0x6d, 0x3a, 0xb9, 0xfd, 0xd1, 0x2d, 0x56, 0xba, 0xff, 0x31,
|
||||
0xb6, 0x4c, 0x6a, 0xb3, 0x92, 0x0d, 0xd0, 0x47, 0x2f, 0xc3, 0xac, 0xe5, 0xdc, 0xc1, 0x1d, 0xd7,
|
||||
0xdb, 0xd3, 0xbb, 0xd8, 0x6b, 0x61, 0x27, 0x30, 0xda, 0xd8, 0x6f, 0xe4, 0x29, 0x45, 0x33, 0x61,
|
||||
0xdd, 0x7a, 0xbf, 0x0a, 0x5d, 0x82, 0x85, 0x87, 0x3d, 0xec, 0xed, 0xe9, 0x3e, 0xf6, 0x76, 0xac,
|
||||
0x16, 0xd6, 0x8d, 0x1d, 0xc3, 0xb2, 0x8d, 0x4d, 0x1b, 0x37, 0x0a, 0x8b, 0xd9, 0xa5, 0xa2, 0x36,
|
||||
0x47, 0xab, 0x37, 0x58, 0xed, 0xd5, 0xb0, 0x52, 0xfd, 0x33, 0x05, 0xe6, 0xd9, 0x61, 0x68, 0x3d,
|
||||
0x34, 0x3b, 0x47, 0xbc, 0xd9, 0xc4, 0xad, 0x22, 0x3f, 0xba, 0x55, 0x63, 0x46, 0x51, 0xfd, 0x54,
|
||||
0x81, 0x59, 0x72, 0x26, 0x79, 0x92, 0x68, 0xfe, 0x13, 0x05, 0x66, 0x6e, 0x19, 0xfe, 0x93, 0x44,
|
||||
0xf2, 0xbf, 0x72, 0x47, 0x24, 0xa2, 0xf9, 0xc9, 0xd8, 0x31, 0x07, 0x3d, 0x96, 0x9c, 0xc4, 0x63,
|
||||
0x51, 0xff, 0xa2, 0xef, 0xa8, 0x3c, 0x59, 0x13, 0x54, 0x7f, 0xa4, 0xc0, 0xa9, 0x9b, 0x38, 0x88,
|
||||
0xa8, 0x3e, 0x1e, 0x1e, 0xcd, 0x88, 0x42, 0xf5, 0x1d, 0xe6, 0x0d, 0x48, 0x89, 0x3f, 0x92, 0xcd,
|
||||
0xf6, 0x97, 0x33, 0x30, 0x47, 0x76, 0x9d, 0xe3, 0x21, 0x04, 0xa3, 0x1c, 0x6b, 0x25, 0x82, 0x92,
|
||||
0x93, 0x6a, 0x42, 0xb8, 0x85, 0xe7, 0x47, 0xde, 0xc2, 0xd5, 0x3f, 0xcd, 0x30, 0xd7, 0x43, 0xe4,
|
||||
0xc6, 0x38, 0xcb, 0x22, 0xa1, 0x35, 0x23, 0xa5, 0x55, 0x85, 0x4a, 0x04, 0x59, 0x5b, 0x0d, 0xb7,
|
||||
0xdf, 0x18, 0xec, 0xb8, 0xee, 0xbe, 0xea, 0xb7, 0x15, 0x98, 0x0f, 0x2f, 0x0d, 0x36, 0x70, 0xbb,
|
||||
0x83, 0x9d, 0xe0, 0xf0, 0x32, 0x94, 0x94, 0x80, 0x8c, 0x44, 0x02, 0x4e, 0x42, 0xc9, 0x67, 0xe3,
|
||||
0x44, 0xf7, 0x01, 0x7d, 0x80, 0xfa, 0x57, 0x0a, 0x2c, 0x0c, 0x90, 0x33, 0xce, 0x22, 0x36, 0xa0,
|
||||
0x60, 0x39, 0x26, 0x7e, 0x14, 0x51, 0x13, 0x16, 0x49, 0xcd, 0x66, 0xcf, 0xb2, 0xcd, 0x88, 0x8c,
|
||||
0xb0, 0x88, 0xce, 0x40, 0x05, 0x3b, 0xc4, 0xc7, 0xd0, 0x29, 0x2e, 0x15, 0xe4, 0xa2, 0x56, 0x66,
|
||||
0xb0, 0x35, 0x02, 0x22, 0x8d, 0xb7, 0x2c, 0x4c, 0x1b, 0xe7, 0x58, 0x63, 0x5e, 0x54, 0x7f, 0x45,
|
||||
0x81, 0x19, 0x22, 0x85, 0x9c, 0x7a, 0xff, 0xf1, 0x72, 0x73, 0x11, 0xca, 0x82, 0x98, 0xf1, 0x89,
|
||||
0x88, 0x20, 0xf5, 0x01, 0xcc, 0xc6, 0xc9, 0x19, 0x87, 0x9b, 0x4f, 0x03, 0x44, 0x6b, 0xc5, 0xb4,
|
||||
0x21, 0xab, 0x09, 0x10, 0xf5, 0x37, 0x32, 0x61, 0x58, 0x81, 0xb2, 0xe9, 0x88, 0x6f, 0x33, 0xe9,
|
||||
0x92, 0x88, 0xf6, 0xbc, 0x44, 0x21, 0xb4, 0x7a, 0x15, 0x2a, 0xf8, 0x51, 0xe0, 0x19, 0x7a, 0xd7,
|
||||
0xf0, 0x8c, 0x0e, 0x53, 0xab, 0x91, 0x4c, 0x6f, 0x99, 0x36, 0x5b, 0xa7, 0xad, 0xc8, 0x20, 0x54,
|
||||
0x44, 0xd8, 0x20, 0x79, 0x36, 0x08, 0x85, 0xf4, 0xcf, 0x69, 0xe5, 0x46, 0x56, 0xfd, 0x47, 0xe2,
|
||||
0xf5, 0x71, 0xb1, 0x3e, 0xee, 0x9c, 0x89, 0xcf, 0x29, 0x27, 0x9d, 0x53, 0xa5, 0x91, 0x55, 0xff,
|
||||
0x40, 0x81, 0x3a, 0x9d, 0xcb, 0x2a, 0x0f, 0x2e, 0x59, 0xae, 0x93, 0x68, 0xac, 0x24, 0x1a, 0x0f,
|
||||
0xd1, 0xc6, 0xd7, 0x21, 0xcf, 0x57, 0x22, 0x3b, 0xea, 0x4a, 0xf0, 0x06, 0xfb, 0xcc, 0x47, 0xfd,
|
||||
0x7d, 0x05, 0xe6, 0x12, 0xbc, 0x1f, 0x47, 0x05, 0xee, 0x03, 0x62, 0x33, 0x34, 0xfb, 0xd3, 0x0e,
|
||||
0x77, 0xee, 0xb3, 0xd2, 0x6d, 0x2a, 0xc9, 0x24, 0x6d, 0xda, 0x4a, 0x40, 0x7c, 0xf5, 0xc7, 0x0a,
|
||||
0x9c, 0xbc, 0x89, 0x03, 0x8a, 0x7a, 0x8d, 0x98, 0xa1, 0x75, 0xcf, 0x6d, 0x7b, 0xd8, 0xf7, 0xbf,
|
||||
0x00, 0x82, 0xf2, 0x9b, 0xcc, 0xe7, 0x93, 0xcd, 0x6d, 0x9c, 0x85, 0x38, 0x03, 0x15, 0x3a, 0x18,
|
||||
0x36, 0x75, 0xcf, 0xdd, 0xf5, 0xb9, 0x40, 0x95, 0x39, 0x4c, 0x73, 0x77, 0xa9, 0x64, 0x04, 0x6e,
|
||||
0x60, 0xd8, 0x0c, 0x81, 0x6f, 0x36, 0x14, 0x42, 0xaa, 0xa9, 0x56, 0x86, 0x84, 0x91, 0xce, 0xf1,
|
||||
0x17, 0x80, 0xd9, 0x3f, 0x60, 0x37, 0x67, 0xe2, 0x9c, 0xc6, 0x61, 0xf2, 0xab, 0xcc, 0x35, 0x65,
|
||||
0xb3, 0xaa, 0xad, 0x9c, 0x96, 0xb6, 0x11, 0x06, 0x63, 0xd8, 0xe8, 0x34, 0x94, 0xb7, 0x0c, 0xcb,
|
||||
0xd6, 0x3d, 0x6c, 0xf8, 0xae, 0xc3, 0x67, 0x0c, 0x04, 0xa4, 0x51, 0x88, 0xfa, 0xb7, 0x0a, 0x8b,
|
||||
0xef, 0x7e, 0x11, 0x8c, 0x61, 0xb5, 0x91, 0x55, 0x7f, 0x98, 0x81, 0xea, 0x9a, 0xe3, 0x63, 0x2f,
|
||||
0x38, 0xfe, 0xe7, 0x18, 0xf4, 0x16, 0x94, 0xe9, 0x0c, 0x7d, 0xdd, 0x34, 0x02, 0x83, 0x6f, 0x7d,
|
||||
0x4f, 0x4b, 0x23, 0x3b, 0x37, 0x08, 0xde, 0xaa, 0x11, 0x18, 0x1a, 0x63, 0x93, 0x4f, 0x7e, 0xa3,
|
||||
0x13, 0x50, 0xda, 0x36, 0xfc, 0x6d, 0xfd, 0x01, 0xde, 0x63, 0xce, 0x65, 0x55, 0x2b, 0x12, 0xc0,
|
||||
0xbb, 0x78, 0xcf, 0x47, 0x4f, 0x41, 0xd1, 0xe9, 0x75, 0x98, 0xca, 0x15, 0x16, 0x95, 0xa5, 0xaa,
|
||||
0x56, 0x70, 0x7a, 0x1d, 0xa2, 0x70, 0x8c, 0x5d, 0xc5, 0x46, 0x56, 0xfd, 0x9b, 0x0c, 0xd4, 0xee,
|
||||
0xf4, 0xc8, 0xf1, 0x89, 0x06, 0xa8, 0x7a, 0x76, 0x70, 0x38, 0xf1, 0x3c, 0x07, 0x59, 0xe6, 0x88,
|
||||
0x90, 0x16, 0x0d, 0xe9, 0x0c, 0xd6, 0x56, 0x7d, 0x8d, 0x20, 0xd1, 0xe0, 0x4c, 0xaf, 0xd5, 0xe2,
|
||||
0x3e, 0x5d, 0x96, 0x52, 0x5d, 0x22, 0x10, 0xe6, 0xd1, 0x9d, 0x80, 0x12, 0xf6, 0xbc, 0xc8, 0xe3,
|
||||
0xa3, 0x73, 0xc2, 0x9e, 0xc7, 0x2a, 0x55, 0xa8, 0x18, 0xad, 0x07, 0x8e, 0xbb, 0x6b, 0x63, 0xb3,
|
||||
0x8d, 0x4d, 0x2a, 0x08, 0x45, 0x2d, 0x06, 0x63, 0xa2, 0x42, 0x24, 0x40, 0x6f, 0x39, 0x01, 0xf5,
|
||||
0x05, 0xb2, 0x44, 0x54, 0x08, 0xe4, 0xba, 0x13, 0x90, 0x6a, 0x13, 0xdb, 0x38, 0xc0, 0xb4, 0xba,
|
||||
0xc0, 0xaa, 0x19, 0x84, 0x57, 0xf7, 0xba, 0x51, 0xeb, 0x22, 0xab, 0x66, 0x10, 0x52, 0x7d, 0x12,
|
||||
0x4a, 0xfd, 0x0b, 0xf4, 0x52, 0xff, 0xbe, 0x93, 0x02, 0xd4, 0x9f, 0x28, 0x50, 0x5d, 0xa5, 0x5d,
|
||||
0x3d, 0x01, 0xd2, 0x87, 0x60, 0x12, 0x3f, 0xea, 0x7a, 0x5c, 0x99, 0xe8, 0xef, 0xa1, 0x02, 0xc5,
|
||||
0xa4, 0xa6, 0xd4, 0xc8, 0xaa, 0xdf, 0x9c, 0x84, 0xea, 0x06, 0x36, 0xbc, 0xd6, 0xf6, 0x13, 0x71,
|
||||
0x99, 0x53, 0x87, 0xac, 0xe9, 0xdb, 0x7c, 0x9e, 0xe4, 0x27, 0x3a, 0x0f, 0xd3, 0x5d, 0xdb, 0x68,
|
||||
0xe1, 0x6d, 0xd7, 0x36, 0xb1, 0xa7, 0xb7, 0x3d, 0xb7, 0xc7, 0x02, 0x90, 0x15, 0xad, 0x2e, 0x54,
|
||||
0xdc, 0x24, 0x70, 0xf4, 0x1a, 0x14, 0x4d, 0xdf, 0xd6, 0xe9, 0x29, 0xb8, 0x40, 0xad, 0xaf, 0x7c,
|
||||
0x7e, 0xab, 0xbe, 0x4d, 0x0f, 0xc1, 0x05, 0x93, 0xfd, 0x40, 0xcf, 0x40, 0xd5, 0xed, 0x05, 0xdd,
|
||||
0x5e, 0xa0, 0x33, 0x95, 0x6d, 0x14, 0x29, 0x79, 0x15, 0x06, 0xa4, 0x1a, 0xed, 0xa3, 0x1b, 0x50,
|
||||
0xf5, 0x29, 0x2b, 0x43, 0x07, 0xb8, 0x34, 0xaa, 0xdb, 0x55, 0x61, 0xed, 0xb8, 0x07, 0xfc, 0x02,
|
||||
0xd4, 0x03, 0xcf, 0xd8, 0xc1, 0xb6, 0x10, 0xe0, 0x01, 0x2a, 0x9f, 0x53, 0x0c, 0xde, 0x8f, 0x8e,
|
||||
0xa6, 0x84, 0x83, 0xca, 0x69, 0xe1, 0x20, 0x54, 0x83, 0x8c, 0xf3, 0x90, 0x46, 0x1a, 0xb3, 0x5a,
|
||||
0xc6, 0x79, 0xc8, 0x04, 0xa1, 0xd6, 0xc8, 0xaa, 0xef, 0xc2, 0xe4, 0x2d, 0x2b, 0xa0, 0x1c, 0x26,
|
||||
0xea, 0xaf, 0xd0, 0x73, 0x08, 0x55, 0xf2, 0xa7, 0xa0, 0xe8, 0xb9, 0xbb, 0xcc, 0xae, 0x11, 0x9f,
|
||||
0xac, 0xa2, 0x15, 0x3c, 0x77, 0x97, 0x1a, 0x2d, 0x9a, 0xac, 0xe2, 0x7a, 0x98, 0x79, 0x98, 0x19,
|
||||
0x8d, 0x97, 0xd4, 0x3f, 0x56, 0xfa, 0x52, 0x45, 0x2c, 0x91, 0x7f, 0x38, 0x53, 0xf4, 0x16, 0x14,
|
||||
0x3c, 0xd6, 0x7e, 0x68, 0xa8, 0x5c, 0x1c, 0x89, 0xda, 0xd5, 0xb0, 0xd5, 0xc8, 0x02, 0x48, 0x4e,
|
||||
0x98, 0x95, 0x1b, 0x76, 0xcf, 0x7f, 0x1c, 0x5a, 0x20, 0x0b, 0x3b, 0x64, 0xe5, 0x61, 0x10, 0xba,
|
||||
0x1a, 0x53, 0x8b, 0x59, 0xf5, 0x7b, 0x19, 0xa8, 0x72, 0x7a, 0xc6, 0x71, 0x35, 0x52, 0x69, 0xda,
|
||||
0x80, 0x32, 0x19, 0x5b, 0xf7, 0x71, 0x3b, 0xbc, 0x5d, 0x29, 0xaf, 0xac, 0x48, 0x5d, 0xed, 0x18,
|
||||
0x19, 0x34, 0x2d, 0x61, 0x83, 0x36, 0x7a, 0xc7, 0x09, 0xbc, 0x3d, 0x0d, 0x5a, 0x11, 0xa0, 0xf9,
|
||||
0x11, 0x4c, 0x25, 0xaa, 0x89, 0x34, 0x3d, 0xc0, 0x7b, 0xfc, 0xd0, 0x42, 0x7e, 0xa2, 0x57, 0xc4,
|
||||
0x84, 0x92, 0xb4, 0x2d, 0xf2, 0xb6, 0xeb, 0xb4, 0xaf, 0x7a, 0x9e, 0xb1, 0xc7, 0x13, 0x4e, 0x2e,
|
||||
0x67, 0xbe, 0xac, 0xa8, 0x7f, 0x9d, 0x81, 0xca, 0x7b, 0x3d, 0xec, 0xed, 0x1d, 0xa5, 0xa5, 0x0a,
|
||||
0x2d, 0xed, 0xa4, 0x60, 0x69, 0x07, 0x8c, 0x43, 0x4e, 0x62, 0x1c, 0x24, 0x26, 0x2e, 0x2f, 0x35,
|
||||
0x71, 0x32, 0xed, 0x2f, 0x1c, 0x48, 0xfb, 0x8b, 0xc3, 0x83, 0xc1, 0xf5, 0x46, 0x56, 0xfd, 0x23,
|
||||
0x25, 0xe2, 0xe5, 0x58, 0xfa, 0x19, 0x73, 0x7a, 0x32, 0x07, 0x76, 0x7a, 0x46, 0xd6, 0xcf, 0x4f,
|
||||
0x15, 0x28, 0x7d, 0x80, 0x5b, 0x81, 0xeb, 0x11, 0x8b, 0x24, 0x69, 0xa6, 0x8c, 0xe0, 0x89, 0x66,
|
||||
0x92, 0x9e, 0xe8, 0x45, 0x28, 0x5a, 0xa6, 0x6e, 0x10, 0x41, 0xa3, 0xe3, 0x0e, 0xf3, 0x77, 0x0a,
|
||||
0x96, 0x49, 0x25, 0x72, 0xf4, 0x7b, 0xf9, 0xef, 0x2b, 0x50, 0x61, 0x34, 0xfb, 0xac, 0xe5, 0x1b,
|
||||
0xc2, 0x70, 0x8a, 0x4c, 0xfa, 0x79, 0x21, 0x9a, 0xe8, 0xad, 0x89, 0xfe, 0xb0, 0x57, 0x01, 0x08,
|
||||
0x93, 0x79, 0x73, 0xa6, 0x3c, 0x8b, 0x52, 0x6a, 0x59, 0x73, 0xca, 0xf0, 0x5b, 0x13, 0x5a, 0x89,
|
||||
0xb4, 0xa2, 0x5d, 0x5c, 0x2b, 0x40, 0x8e, 0xb6, 0x56, 0xff, 0x47, 0x81, 0x99, 0xeb, 0x86, 0xdd,
|
||||
0x5a, 0xb5, 0xfc, 0xc0, 0x70, 0x5a, 0x63, 0x78, 0x38, 0x97, 0xa1, 0xe0, 0x76, 0x75, 0x1b, 0x6f,
|
||||
0x05, 0x9c, 0xa4, 0x33, 0x43, 0x66, 0xc4, 0xd8, 0xa0, 0xe5, 0xdd, 0xee, 0x6d, 0xbc, 0x15, 0xa0,
|
||||
0x37, 0xa1, 0xe8, 0x76, 0x75, 0xcf, 0x6a, 0x6f, 0x07, 0x9c, 0xfb, 0x23, 0x34, 0x2e, 0xb8, 0x5d,
|
||||
0x8d, 0xb4, 0x10, 0x2e, 0x37, 0x26, 0x0f, 0x78, 0xb9, 0x41, 0xce, 0xa8, 0x89, 0xe9, 0x8f, 0xa1,
|
||||
0x03, 0x97, 0xa1, 0x68, 0x39, 0x81, 0x6e, 0x5a, 0x7e, 0xc8, 0x82, 0x53, 0x72, 0x19, 0x72, 0x02,
|
||||
0x3a, 0x03, 0xba, 0xa6, 0x4e, 0x40, 0xc6, 0x46, 0x6f, 0x03, 0x6c, 0xd9, 0xae, 0xc1, 0x5b, 0x33,
|
||||
0x1e, 0x9c, 0x96, 0xab, 0x0f, 0x41, 0x0b, 0xdb, 0x97, 0x68, 0x23, 0xd2, 0x43, 0x7f, 0x49, 0xff,
|
||||
0x5e, 0x81, 0xb9, 0x75, 0xec, 0xb1, 0x1c, 0xa3, 0x80, 0xdf, 0x4c, 0xae, 0x39, 0x5b, 0x6e, 0xfc,
|
||||
0x72, 0x58, 0x49, 0x5c, 0x0e, 0xff, 0x74, 0x2e, 0x44, 0x63, 0xe7, 0x13, 0x16, 0xa2, 0x08, 0xcf,
|
||||
0x27, 0x61, 0x20, 0x86, 0x1d, 0xf4, 0x6a, 0x29, 0xcb, 0xc4, 0xe9, 0x15, 0xcf, 0xbb, 0xea, 0xaf,
|
||||
0xb1, 0x3c, 0x0c, 0xe9, 0xa4, 0x0e, 0x2f, 0xb0, 0xf3, 0xc0, 0x4d, 0x7e, 0x62, 0x03, 0x78, 0x0e,
|
||||
0x12, 0xb6, 0x23, 0xc5, 0x10, 0xfd, 0x96, 0x02, 0x8b, 0xe9, 0x54, 0x8d, 0xb3, 0x57, 0xbf, 0x0d,
|
||||
0x39, 0xcb, 0xd9, 0x72, 0xc3, 0x7b, 0xaf, 0x73, 0x52, 0x5d, 0x90, 0x8f, 0xcb, 0x1a, 0xaa, 0xff,
|
||||
0x90, 0x81, 0xfa, 0x7b, 0x2c, 0xae, 0xff, 0xb9, 0x2f, 0x7f, 0x07, 0x77, 0x74, 0xdf, 0xfa, 0x04,
|
||||
0x87, 0xcb, 0xdf, 0xc1, 0x9d, 0x0d, 0xeb, 0x13, 0x1c, 0x93, 0x8c, 0x5c, 0x5c, 0x32, 0x86, 0x5f,
|
||||
0xf4, 0x8a, 0xf7, 0x9a, 0x85, 0xf8, 0xbd, 0xe6, 0x3c, 0xe4, 0x1d, 0xd7, 0xc4, 0x6b, 0xab, 0xfc,
|
||||
0x4c, 0xc7, 0x4b, 0x7d, 0x51, 0x2b, 0x1d, 0x4c, 0xd4, 0xc8, 0x50, 0xb4, 0x0b, 0x93, 0xa5, 0x08,
|
||||
0x12, 0x1a, 0x59, 0x51, 0xfd, 0x8e, 0x02, 0xcd, 0x9b, 0x38, 0x48, 0x72, 0xf5, 0xe8, 0xe4, 0xef,
|
||||
0xbb, 0x0a, 0x9c, 0x90, 0x12, 0x34, 0x8e, 0xe8, 0xbd, 0x11, 0x17, 0x3d, 0xf9, 0x95, 0xeb, 0xc0,
|
||||
0x90, 0x5c, 0xea, 0x5e, 0x86, 0xca, 0x6a, 0xaf, 0xd3, 0x89, 0xbc, 0xb2, 0x33, 0x50, 0xf1, 0xd8,
|
||||
0x4f, 0x76, 0xce, 0x62, 0x3b, 0x73, 0x99, 0xc3, 0xc8, 0x69, 0x4a, 0x3d, 0x0f, 0x55, 0xde, 0x84,
|
||||
0x53, 0xdd, 0x84, 0xa2, 0xc7, 0x7f, 0x73, 0xfc, 0xa8, 0xac, 0xce, 0xc1, 0x8c, 0x86, 0xdb, 0x44,
|
||||
0xe8, 0xbd, 0xdb, 0x96, 0xf3, 0x80, 0x0f, 0xa3, 0x7e, 0x5d, 0x81, 0xd9, 0x38, 0x9c, 0xf7, 0x75,
|
||||
0x09, 0x0a, 0x86, 0x69, 0x7a, 0xd8, 0xf7, 0x87, 0x2e, 0xcb, 0x55, 0x86, 0xa3, 0x85, 0xc8, 0x02,
|
||||
0xe7, 0x32, 0x23, 0x73, 0x4e, 0xd5, 0x61, 0xfa, 0x26, 0x0e, 0xee, 0xe0, 0xc0, 0x1b, 0x2b, 0xdc,
|
||||
0xde, 0x20, 0x07, 0x1d, 0xda, 0x98, 0x8b, 0x45, 0x58, 0x54, 0xbf, 0xad, 0x00, 0x12, 0x47, 0x18,
|
||||
0x67, 0x99, 0x45, 0x2e, 0x67, 0xe2, 0x5c, 0x66, 0x09, 0x4f, 0x9d, 0xae, 0xeb, 0x60, 0x27, 0x10,
|
||||
0x1d, 0xb1, 0x6a, 0x04, 0xa5, 0xe2, 0xf7, 0x13, 0x05, 0xd0, 0x6d, 0xd7, 0x30, 0xaf, 0x19, 0xf6,
|
||||
0x78, 0x8e, 0xc3, 0x29, 0x00, 0xdf, 0x6b, 0xe9, 0x5c, 0x8f, 0x33, 0xdc, 0x2e, 0x79, 0xad, 0xbb,
|
||||
0x4c, 0x95, 0x4f, 0x43, 0xd9, 0xf4, 0x03, 0x5e, 0x1d, 0x46, 0x7f, 0xc1, 0xf4, 0x03, 0x56, 0x4f,
|
||||
0xf3, 0x8e, 0x7d, 0x6c, 0xd8, 0xd8, 0xd4, 0x85, 0xe0, 0xd9, 0x24, 0x45, 0xab, 0xb3, 0x8a, 0x8d,
|
||||
0x08, 0x2e, 0x51, 0xae, 0x5c, 0x7a, 0x0e, 0xe0, 0x74, 0x23, 0xa7, 0x6e, 0xc1, 0xc2, 0x1d, 0xc3,
|
||||
0xe9, 0x19, 0xf6, 0x75, 0xb7, 0xd3, 0x35, 0x62, 0x39, 0xab, 0x49, 0x8b, 0xa9, 0x48, 0x2c, 0xe6,
|
||||
0xd3, 0x2c, 0x95, 0x8e, 0xb9, 0xeb, 0x74, 0x72, 0x93, 0x9a, 0x00, 0x61, 0xe3, 0x14, 0x1a, 0x8a,
|
||||
0xea, 0x43, 0x63, 0x70, 0x9c, 0x71, 0x96, 0x98, 0x52, 0x17, 0x76, 0x25, 0xda, 0xf3, 0x3e, 0x4c,
|
||||
0x7d, 0x0b, 0x9e, 0xa2, 0xf9, 0x8d, 0x21, 0x28, 0x76, 0x4d, 0x9f, 0xec, 0x40, 0x91, 0x74, 0xf0,
|
||||
0x8b, 0x19, 0x6a, 0x14, 0x07, 0x7a, 0x18, 0x87, 0xf0, 0xcb, 0xf1, 0x4b, 0xf1, 0x67, 0x53, 0xd2,
|
||||
0xaa, 0xe3, 0x23, 0x72, 0xf3, 0xbd, 0x04, 0x53, 0xf8, 0x11, 0x6e, 0xf5, 0x02, 0xcb, 0x69, 0xaf,
|
||||
0xdb, 0x86, 0x73, 0xd7, 0xe5, 0x9b, 0x54, 0x12, 0x8c, 0x9e, 0x85, 0x2a, 0x59, 0x06, 0xb7, 0x17,
|
||||
0x70, 0x3c, 0xb6, 0x5b, 0xc5, 0x81, 0xa4, 0x3f, 0x32, 0x5f, 0x1b, 0x07, 0xd8, 0xe4, 0x78, 0x6c,
|
||||
0xeb, 0x4a, 0x82, 0x07, 0x58, 0x49, 0xc0, 0xfe, 0x41, 0x58, 0xf9, 0xcf, 0x4a, 0x82, 0x95, 0xbc,
|
||||
0x87, 0xa3, 0x62, 0xe5, 0x2d, 0x80, 0x0e, 0xf6, 0xda, 0x78, 0x8d, 0x6e, 0x07, 0xec, 0x5a, 0x60,
|
||||
0x49, 0xba, 0x1d, 0xf4, 0x3b, 0xb8, 0x13, 0x36, 0xd0, 0x84, 0xb6, 0xea, 0x4d, 0x98, 0x91, 0xa0,
|
||||
0x10, 0x4b, 0xe7, 0xbb, 0x3d, 0xaf, 0x85, 0xc3, 0x2b, 0xa6, 0xb0, 0x48, 0x76, 0xc6, 0xc0, 0xf0,
|
||||
0xda, 0x38, 0xe0, 0x42, 0xcb, 0x4b, 0xea, 0x25, 0x1a, 0x50, 0xa2, 0xb7, 0x10, 0x31, 0x49, 0x8d,
|
||||
0xc7, 0xcd, 0x95, 0x81, 0xb8, 0xf9, 0x16, 0x0d, 0xda, 0x88, 0xed, 0xc6, 0xcc, 0x79, 0xd8, 0x22,
|
||||
0x5d, 0x61, 0x93, 0x3f, 0xb3, 0x09, 0x8b, 0xea, 0xff, 0x2a, 0x50, 0x5d, 0xeb, 0x74, 0xdd, 0x7e,
|
||||
0x98, 0x62, 0xe4, 0xe3, 0xe9, 0xe0, 0xed, 0x6e, 0x46, 0x76, 0xbb, 0xfb, 0x0c, 0x54, 0xe3, 0x0f,
|
||||
0x32, 0xd8, 0xed, 0x51, 0xa5, 0x25, 0x3e, 0xc4, 0x38, 0x01, 0x25, 0xcf, 0xdd, 0xd5, 0x89, 0x71,
|
||||
0x35, 0x79, 0x76, 0x45, 0xd1, 0x73, 0x77, 0x89, 0xc9, 0x35, 0xd1, 0x2c, 0xe4, 0xb6, 0x2c, 0x3b,
|
||||
0x4a, 0x0c, 0x62, 0x05, 0xf4, 0x06, 0x39, 0xbc, 0xb1, 0x58, 0x6b, 0x7e, 0xd4, 0x33, 0x54, 0xd8,
|
||||
0x82, 0xd9, 0x30, 0xd4, 0x50, 0xd4, 0x0f, 0xa1, 0x16, 0x4e, 0x7f, 0xcc, 0x87, 0x46, 0x81, 0xe1,
|
||||
0x3f, 0x08, 0x33, 0x20, 0x58, 0x41, 0x3d, 0xcf, 0x22, 0x6f, 0xb4, 0xff, 0xd8, 0xea, 0x23, 0x98,
|
||||
0x24, 0x18, 0x5c, 0xa9, 0xe8, 0x6f, 0xf5, 0xef, 0x32, 0x30, 0x9f, 0xc4, 0x1e, 0x87, 0xa4, 0x4b,
|
||||
0x71, 0x45, 0x92, 0xbf, 0x1b, 0x11, 0x47, 0xe3, 0x4a, 0xc4, 0x97, 0xa2, 0xe5, 0xf6, 0x9c, 0x80,
|
||||
0x5b, 0x22, 0xb2, 0x14, 0xd7, 0x49, 0x19, 0x2d, 0x40, 0xc1, 0x32, 0x75, 0x9b, 0x1c, 0xf8, 0xd8,
|
||||
0x76, 0x95, 0xb7, 0xcc, 0xdb, 0xe4, 0x30, 0xf8, 0x5a, 0xe8, 0x84, 0x8d, 0x9c, 0x36, 0xc1, 0xf0,
|
||||
0x51, 0x0d, 0x32, 0x96, 0xc9, 0x83, 0x23, 0x19, 0xcb, 0x24, 0x52, 0x45, 0x6f, 0x0a, 0x68, 0x8a,
|
||||
0x2f, 0xcf, 0xf9, 0x25, 0xe2, 0x50, 0x25, 0xd0, 0xf7, 0x42, 0x20, 0xf1, 0xd3, 0x28, 0x1a, 0x0f,
|
||||
0xee, 0x52, 0x5f, 0xba, 0xa8, 0x95, 0x09, 0x6c, 0x8d, 0x81, 0xd4, 0x06, 0xcc, 0x13, 0xd2, 0xd8,
|
||||
0x14, 0xef, 0x93, 0x05, 0x09, 0xbd, 0xaf, 0xef, 0x29, 0xb0, 0x30, 0x50, 0x35, 0x0e, 0xaf, 0xaf,
|
||||
0x8a, 0xcb, 0x5f, 0x5e, 0x39, 0x2f, 0xb5, 0x39, 0xf2, 0xc5, 0x0d, 0x65, 0xe5, 0xd7, 0x99, 0xab,
|
||||
0xa4, 0xb1, 0xb4, 0xce, 0xc7, 0x9c, 0x24, 0xb4, 0x04, 0xf5, 0x5d, 0x2b, 0xd8, 0xd6, 0xe9, 0x4b,
|
||||
0x24, 0xea, 0xa7, 0xb0, 0x60, 0x78, 0x51, 0xab, 0x11, 0xf8, 0x06, 0x01, 0x13, 0x5f, 0xc5, 0x57,
|
||||
0xbf, 0xa5, 0xc0, 0x4c, 0x8c, 0xac, 0x71, 0xd8, 0xf4, 0x26, 0x71, 0xe1, 0x58, 0x47, 0x9c, 0x53,
|
||||
0x8b, 0x52, 0x4e, 0xf1, 0xd1, 0xa8, 0x55, 0x8e, 0x5a, 0xa8, 0x3f, 0x56, 0xa0, 0x2c, 0xd4, 0x90,
|
||||
0xb3, 0x21, 0xaf, 0xeb, 0x9f, 0x0d, 0x23, 0xc0, 0x48, 0x6c, 0x78, 0x06, 0xfa, 0xb6, 0x4a, 0x48,
|
||||
0x93, 0x17, 0xf2, 0xf4, 0x4c, 0x1f, 0xdd, 0x82, 0x1a, 0x63, 0x53, 0x44, 0xba, 0xf4, 0xca, 0x26,
|
||||
0xca, 0x40, 0x34, 0x3c, 0x93, 0x53, 0xa9, 0x55, 0x7d, 0xa1, 0xc4, 0xe2, 0xa0, 0xae, 0x89, 0xe9,
|
||||
0x48, 0xb9, 0x81, 0x93, 0x5a, 0x45, 0x6c, 0x4a, 0xbc, 0x5d, 0x1b, 0x1b, 0x26, 0xf6, 0xa2, 0xb9,
|
||||
0x45, 0x65, 0xe2, 0x5e, 0xb2, 0xdf, 0x3a, 0xf1, 0xfe, 0xb9, 0xd5, 0x05, 0x06, 0x22, 0x07, 0x03,
|
||||
0xf4, 0x1c, 0x4c, 0x99, 0x9d, 0xd8, 0x33, 0xb8, 0xd0, 0x1f, 0x36, 0x3b, 0xc2, 0xfb, 0xb7, 0x18,
|
||||
0x41, 0x93, 0x71, 0x82, 0xbe, 0xd1, 0x7f, 0x58, 0xec, 0x61, 0x13, 0x3b, 0x81, 0x65, 0xd8, 0x87,
|
||||
0x97, 0xc9, 0x26, 0x14, 0x7b, 0x3e, 0xf6, 0x84, 0x4d, 0x22, 0x2a, 0x93, 0xba, 0xae, 0xe1, 0xfb,
|
||||
0xbb, 0xae, 0x67, 0x72, 0x2a, 0xa3, 0xf2, 0x90, 0xa4, 0x47, 0xf6, 0x18, 0x55, 0x9e, 0xf4, 0x78,
|
||||
0x09, 0x16, 0x3a, 0xae, 0x69, 0x6d, 0x59, 0xb2, 0x5c, 0x49, 0xd2, 0x6c, 0x2e, 0xac, 0x8e, 0xb5,
|
||||
0x0b, 0x9f, 0x71, 0xcc, 0x88, 0xcf, 0x38, 0x7e, 0x90, 0x81, 0x85, 0xf7, 0xbb, 0xe6, 0xe7, 0xc0,
|
||||
0x87, 0x45, 0x28, 0xbb, 0xb6, 0xb9, 0x1e, 0x67, 0x85, 0x08, 0x22, 0x18, 0x0e, 0xde, 0x8d, 0x30,
|
||||
0xd8, 0x25, 0xbe, 0x08, 0x1a, 0x9a, 0x24, 0x7a, 0x28, 0x7e, 0xe5, 0x87, 0xf1, 0xab, 0xf4, 0xd9,
|
||||
0x95, 0x7c, 0x31, 0x53, 0x9f, 0x6d, 0x64, 0xd4, 0x9f, 0x87, 0x05, 0x16, 0x6e, 0x7e, 0xcc, 0x5c,
|
||||
0x0a, 0xd7, 0x68, 0x4e, 0x5c, 0xa3, 0x8f, 0x61, 0x8e, 0x58, 0x73, 0x32, 0xf4, 0xfb, 0x3e, 0xf6,
|
||||
0xc6, 0x34, 0x52, 0x27, 0xa1, 0x14, 0x8e, 0x16, 0xa6, 0xf7, 0xf6, 0x01, 0xea, 0xcf, 0xc1, 0x6c,
|
||||
0x62, 0xac, 0x43, 0xce, 0x32, 0x9c, 0xc9, 0xbc, 0x38, 0x93, 0x45, 0x00, 0xcd, 0xb5, 0xf1, 0x3b,
|
||||
0x4e, 0x60, 0x05, 0x7b, 0xc4, 0x4b, 0x10, 0xdc, 0x2f, 0xfa, 0x9b, 0x60, 0x90, 0x71, 0x87, 0x60,
|
||||
0xfc, 0xaa, 0x02, 0xd3, 0x4c, 0x73, 0x49, 0x57, 0x87, 0x5f, 0x85, 0xd7, 0x20, 0x8f, 0xe9, 0x28,
|
||||
0xfc, 0x46, 0xe1, 0xb4, 0xdc, 0x54, 0x47, 0xe4, 0x6a, 0x1c, 0x5d, 0xaa, 0x46, 0x01, 0x4c, 0xad,
|
||||
0x7a, 0x6e, 0x77, 0x3c, 0x8a, 0xa8, 0x67, 0x62, 0x63, 0xd1, 0xd7, 0x2c, 0x12, 0xc0, 0xdd, 0x34,
|
||||
0xc1, 0xf8, 0x27, 0x05, 0xe6, 0xef, 0x75, 0xb1, 0x67, 0x04, 0x98, 0x30, 0x6d, 0xbc, 0xd1, 0x87,
|
||||
0xe9, 0x6e, 0x8c, 0xb2, 0x6c, 0x9c, 0x32, 0xf4, 0x66, 0xec, 0xed, 0x99, 0xfc, 0x3c, 0x92, 0xa0,
|
||||
0xb2, 0x9f, 0xc3, 0x1e, 0xce, 0x6b, 0x41, 0x9c, 0xd7, 0x8f, 0x14, 0x98, 0xde, 0xc0, 0x64, 0x1f,
|
||||
0x1b, 0x6f, 0x4a, 0x17, 0x61, 0x92, 0x50, 0x39, 0xea, 0x02, 0x53, 0x64, 0x74, 0x0e, 0xa6, 0x2d,
|
||||
0xa7, 0x65, 0xf7, 0x4c, 0xac, 0x93, 0xf9, 0xeb, 0xc4, 0x8d, 0xe3, 0xce, 0xc3, 0x14, 0xaf, 0x20,
|
||||
0xd3, 0x20, 0x5b, 0xb4, 0x54, 0xc6, 0x1f, 0x31, 0x19, 0x8f, 0x92, 0x7c, 0x18, 0x09, 0xca, 0x41,
|
||||
0x48, 0x78, 0x15, 0x72, 0x64, 0xe8, 0xd0, 0x89, 0x90, 0xb7, 0xea, 0xab, 0x89, 0xc6, 0xb0, 0xd5,
|
||||
0x5f, 0x50, 0x00, 0x89, 0x6c, 0x1b, 0xc7, 0x4a, 0xbc, 0x2e, 0x06, 0xf7, 0xb3, 0x43, 0x49, 0x67,
|
||||
0x33, 0x8d, 0xc2, 0xfa, 0xea, 0xa7, 0xd1, 0xea, 0xd1, 0xe5, 0x1e, 0x67, 0xf5, 0xc8, 0xbc, 0x86,
|
||||
0xae, 0x9e, 0xc0, 0x04, 0x8a, 0x2c, 0xae, 0x1e, 0x95, 0x58, 0xc9, 0xea, 0x11, 0x9a, 0xe9, 0xea,
|
||||
0x71, 0xfb, 0xde, 0x68, 0x64, 0xc8, 0xa2, 0x31, 0x62, 0xc3, 0x45, 0xa3, 0x23, 0x2b, 0x07, 0x19,
|
||||
0xf9, 0x55, 0xc8, 0x91, 0x11, 0xf7, 0xe7, 0x57, 0xb8, 0x68, 0x14, 0x5b, 0x58, 0x34, 0x4e, 0xc0,
|
||||
0xe3, 0x5f, 0xb4, 0xfe, 0x4c, 0xfb, 0x8b, 0xa6, 0x42, 0xe5, 0xde, 0xe6, 0xc7, 0xb8, 0x15, 0x0c,
|
||||
0xb1, 0xbc, 0x67, 0x61, 0x6a, 0xdd, 0xb3, 0x76, 0x2c, 0x1b, 0xb7, 0x87, 0x99, 0xf0, 0x6f, 0x29,
|
||||
0x50, 0xbd, 0xe9, 0x19, 0x4e, 0xe0, 0x86, 0x66, 0xfc, 0x50, 0xfc, 0xbc, 0x06, 0xa5, 0x6e, 0x38,
|
||||
0x1a, 0x97, 0x81, 0x67, 0xe5, 0x51, 0x97, 0x38, 0x4d, 0x5a, 0xbf, 0x99, 0xfa, 0x01, 0xcc, 0x52,
|
||||
0x4a, 0x92, 0x64, 0x5f, 0x81, 0x22, 0x35, 0xe6, 0x16, 0xbf, 0xe8, 0x28, 0xaf, 0xa8, 0xf2, 0x23,
|
||||
0x8d, 0x38, 0x0d, 0x2d, 0x6a, 0xa3, 0xfe, 0x9b, 0x02, 0x65, 0x5a, 0xd7, 0x9f, 0xe0, 0xc1, 0xb5,
|
||||
0xfc, 0x75, 0xc8, 0xbb, 0x94, 0xe5, 0x43, 0x83, 0xb3, 0xe2, 0xaa, 0x68, 0xbc, 0x01, 0xf1, 0x90,
|
||||
0xd9, 0x2f, 0xd1, 0x22, 0x03, 0x03, 0x71, 0x9b, 0x5c, 0x68, 0x33, 0xda, 0xa9, 0x59, 0x1e, 0x6d,
|
||||
0x7e, 0x61, 0x13, 0x7a, 0x56, 0x63, 0x32, 0x49, 0x11, 0x0e, 0xaf, 0xc2, 0x5f, 0x4e, 0xec, 0xb1,
|
||||
0x8b, 0xe9, 0x54, 0xc8, 0x37, 0xd9, 0x98, 0x65, 0x25, 0x67, 0xb5, 0x18, 0x59, 0x63, 0x9e, 0xd5,
|
||||
0x22, 0x11, 0x18, 0x76, 0x56, 0x13, 0x89, 0xeb, 0x0b, 0xc0, 0xbf, 0x28, 0xb0, 0xc0, 0xf7, 0xb4,
|
||||
0x48, 0xb6, 0x8e, 0x80, 0x4d, 0xe8, 0x2b, 0x7c, 0xef, 0xcd, 0xd2, 0xbd, 0xf7, 0x85, 0x61, 0x7b,
|
||||
0x6f, 0x44, 0xe7, 0x3e, 0x9b, 0xef, 0x59, 0x28, 0xdd, 0xa1, 0x0d, 0xdf, 0x79, 0x14, 0xa0, 0x06,
|
||||
0x14, 0x76, 0xb0, 0xe7, 0x5b, 0xae, 0xc3, 0x55, 0x3c, 0x2c, 0x9e, 0x3b, 0x03, 0xc5, 0xf0, 0x35,
|
||||
0x1a, 0x2a, 0x40, 0xf6, 0xaa, 0x6d, 0xd7, 0x27, 0x50, 0x05, 0x8a, 0x6b, 0xfc, 0xc9, 0x55, 0x5d,
|
||||
0x39, 0xf7, 0x36, 0xcc, 0x48, 0xf6, 0x7d, 0x34, 0x0d, 0xd5, 0xab, 0x26, 0xf5, 0x2e, 0xef, 0xbb,
|
||||
0x04, 0x58, 0x9f, 0x40, 0xf3, 0x80, 0x34, 0xdc, 0x71, 0x77, 0x28, 0xe2, 0x0d, 0xcf, 0xed, 0x50,
|
||||
0xb8, 0x72, 0xee, 0x45, 0x98, 0x95, 0x51, 0x8f, 0x4a, 0x90, 0xa3, 0xdc, 0xa8, 0x4f, 0x20, 0x80,
|
||||
0xbc, 0x86, 0x77, 0xdc, 0x07, 0xb8, 0xae, 0xac, 0xfc, 0xf9, 0x39, 0xa8, 0x32, 0xda, 0xf9, 0xdb,
|
||||
0x69, 0xa4, 0x43, 0x3d, 0xf9, 0xf9, 0x28, 0xf4, 0x25, 0xf9, 0x8d, 0xa9, 0xfc, 0x2b, 0x53, 0xcd,
|
||||
0x61, 0xc2, 0xa4, 0x4e, 0xa0, 0x0f, 0xa1, 0x16, 0xff, 0xe0, 0x12, 0x92, 0x87, 0x86, 0xa5, 0x5f,
|
||||
0x65, 0xda, 0xaf, 0x73, 0x1d, 0xaa, 0xb1, 0x6f, 0x25, 0x21, 0xf9, 0x02, 0xcb, 0xbe, 0xa7, 0xd4,
|
||||
0x94, 0x5b, 0x13, 0xf1, 0x7b, 0x46, 0x8c, 0xfa, 0xf8, 0xc7, 0x4b, 0x52, 0xa8, 0x97, 0x7e, 0xe1,
|
||||
0x64, 0x3f, 0xea, 0x0d, 0x98, 0x1e, 0xf8, 0xb6, 0x08, 0x7a, 0x31, 0xe5, 0x42, 0x44, 0xfe, 0x0d,
|
||||
0x92, 0xfd, 0x86, 0xd8, 0x05, 0x34, 0xf8, 0xfd, 0x1f, 0xb4, 0x2c, 0x5f, 0x81, 0xb4, 0x2f, 0x22,
|
||||
0x35, 0x2f, 0x8c, 0x8c, 0x1f, 0x31, 0xee, 0x9b, 0x0a, 0x2c, 0xa4, 0x7c, 0x86, 0x02, 0x5d, 0x4c,
|
||||
0xbb, 0x1d, 0x1b, 0xf2, 0x51, 0x8d, 0xe6, 0x2b, 0x07, 0x6b, 0x14, 0x11, 0xe2, 0xc0, 0x54, 0xe2,
|
||||
0x2b, 0x0c, 0xe8, 0x7c, 0xea, 0xd3, 0xd1, 0xc1, 0x4f, 0x54, 0x34, 0xbf, 0x34, 0x1a, 0x72, 0x34,
|
||||
0xde, 0x47, 0x30, 0x95, 0xf8, 0x04, 0x41, 0xca, 0x78, 0xf2, 0x0f, 0x15, 0xec, 0xb7, 0xa0, 0x5f,
|
||||
0x85, 0x6a, 0xec, 0x5b, 0x01, 0x29, 0x12, 0x2f, 0xfb, 0x9e, 0xc0, 0x7e, 0x5d, 0x7f, 0x04, 0x15,
|
||||
0xf1, 0x49, 0x3f, 0x5a, 0x4a, 0xd3, 0xa5, 0x81, 0x8e, 0x0f, 0xa2, 0x4a, 0xfd, 0xa7, 0xb8, 0x43,
|
||||
0x54, 0x69, 0xe0, 0xf5, 0xf2, 0xe8, 0xaa, 0x24, 0xf4, 0x3f, 0x54, 0x95, 0x0e, 0x3c, 0xc4, 0xd7,
|
||||
0x15, 0x7a, 0x3d, 0x2f, 0x79, 0xea, 0x8d, 0x56, 0xd2, 0x64, 0x33, 0xfd, 0x51, 0x7b, 0xf3, 0xe2,
|
||||
0x81, 0xda, 0x44, 0x5c, 0x7c, 0x00, 0xb5, 0xf8, 0x83, 0xe6, 0x14, 0x2e, 0x4a, 0xdf, 0x80, 0x37,
|
||||
0xcf, 0x8f, 0x84, 0x1b, 0x0d, 0xf6, 0x3e, 0x94, 0x85, 0x2f, 0x42, 0xa2, 0xe7, 0x87, 0xc8, 0xb1,
|
||||
0xf8, 0x79, 0xc4, 0xfd, 0x38, 0xf9, 0x1e, 0x94, 0xa2, 0x0f, 0x39, 0xa2, 0xb3, 0xa9, 0xf2, 0x7b,
|
||||
0x90, 0x2e, 0x37, 0x00, 0xfa, 0x5f, 0x69, 0x44, 0xcf, 0x49, 0xfb, 0x1c, 0xf8, 0x8c, 0xe3, 0x7e,
|
||||
0x9d, 0x46, 0xd3, 0x67, 0x2f, 0x3e, 0x86, 0x4d, 0x5f, 0x7c, 0xb4, 0xb4, 0x5f, 0xb7, 0xdb, 0x50,
|
||||
0x8d, 0x3d, 0x3e, 0x4c, 0x53, 0x61, 0xc9, 0xe3, 0xd0, 0xe6, 0xb9, 0x51, 0x50, 0xa3, 0xf5, 0xdb,
|
||||
0x86, 0x6a, 0xec, 0xe1, 0x57, 0xca, 0x48, 0xb2, 0x07, 0x6f, 0x29, 0x23, 0x49, 0xdf, 0x91, 0xa9,
|
||||
0x13, 0xe8, 0x6b, 0xc2, 0x1b, 0xb3, 0xd8, 0x83, 0x3e, 0xf4, 0xf2, 0xd0, 0x7e, 0x64, 0x0f, 0x1b,
|
||||
0x9b, 0x2b, 0x07, 0x69, 0x12, 0x91, 0xc0, 0xa5, 0x8a, 0xb1, 0x34, 0x5d, 0xaa, 0x0e, 0xb2, 0x52,
|
||||
0x1b, 0x90, 0x67, 0x2f, 0xb8, 0x90, 0x9a, 0xf2, 0x8c, 0x53, 0x78, 0xde, 0xd5, 0x7c, 0x46, 0x8a,
|
||||
0x13, 0x7f, 0xd3, 0xc4, 0x3a, 0x65, 0x37, 0xa5, 0x29, 0x9d, 0xc6, 0x5e, 0xed, 0x8c, 0xda, 0xa9,
|
||||
0x06, 0x79, 0xf6, 0x8c, 0x20, 0xa5, 0xd3, 0xd8, 0x1b, 0x99, 0xe6, 0x70, 0x1c, 0x76, 0xde, 0x9d,
|
||||
0x40, 0xeb, 0x90, 0xa3, 0xe1, 0x67, 0x74, 0x66, 0x58, 0x62, 0xfd, 0xb0, 0x1e, 0x63, 0xb9, 0xf7,
|
||||
0xea, 0x04, 0xba, 0x07, 0x39, 0x1a, 0xc0, 0x4b, 0xe9, 0x51, 0xcc, 0x8e, 0x6f, 0x0e, 0x45, 0x09,
|
||||
0x49, 0x34, 0xa1, 0x22, 0x66, 0xc2, 0xa6, 0x6c, 0x59, 0x92, 0x5c, 0xe1, 0xe6, 0x28, 0x98, 0xe1,
|
||||
0x28, 0x4c, 0x8d, 0xfa, 0xa1, 0xf8, 0x74, 0x35, 0x1a, 0x08, 0xf3, 0xa7, 0xab, 0xd1, 0x60, 0x64,
|
||||
0x5f, 0x9d, 0x40, 0xbf, 0xa4, 0x40, 0x23, 0x2d, 0x3d, 0x13, 0xa5, 0x7a, 0x40, 0xc3, 0x72, 0x4c,
|
||||
0x9b, 0xaf, 0x1e, 0xb0, 0x55, 0x44, 0xcb, 0x27, 0x34, 0xee, 0x37, 0x90, 0x90, 0x79, 0x21, 0xad,
|
||||
0xbf, 0x94, 0x24, 0xc3, 0xe6, 0x4b, 0xa3, 0x37, 0x88, 0xc6, 0xde, 0x84, 0xb2, 0x10, 0x73, 0x4c,
|
||||
0xb1, 0xbc, 0x83, 0xc1, 0xd2, 0x94, 0x55, 0x95, 0x84, 0x2f, 0x99, 0x78, 0xd3, 0x2c, 0xbe, 0x14,
|
||||
0x61, 0x14, 0x93, 0x02, 0x53, 0xc4, 0x3b, 0x96, 0x04, 0xa8, 0x4e, 0x20, 0x0c, 0x15, 0x31, 0xa5,
|
||||
0x2f, 0x45, 0x1a, 0x25, 0xd9, 0x80, 0xcd, 0x17, 0x46, 0xc0, 0x8c, 0x86, 0xd1, 0x01, 0xfa, 0x29,
|
||||
0x75, 0x29, 0x7b, 0xdd, 0x40, 0x56, 0x5f, 0xf3, 0xf9, 0x7d, 0xf1, 0xc4, 0x6d, 0x5f, 0x48, 0x92,
|
||||
0x4b, 0xe1, 0xfe, 0x60, 0x1a, 0xdd, 0x08, 0x67, 0x91, 0xc1, 0xb4, 0xab, 0x94, 0xb3, 0x48, 0x6a,
|
||||
0x86, 0x57, 0xf3, 0xc2, 0xc8, 0xf8, 0xd1, 0x7c, 0x1e, 0x42, 0x3d, 0x99, 0xa6, 0x96, 0x72, 0xc6,
|
||||
0x4d, 0xc9, 0x9a, 0x6b, 0xbe, 0x38, 0x22, 0xb6, 0xb8, 0x1f, 0x9e, 0x18, 0xa4, 0xe9, 0x67, 0xac,
|
||||
0x60, 0x9b, 0x66, 0x48, 0x8d, 0x32, 0x6b, 0x31, 0x19, 0x6b, 0x94, 0x59, 0xc7, 0x52, 0xaf, 0xf8,
|
||||
0xe6, 0x45, 0xb3, 0x0d, 0xd2, 0x36, 0x2f, 0x31, 0xe9, 0x27, 0x65, 0x9f, 0x89, 0x67, 0xc6, 0x30,
|
||||
0xf7, 0x33, 0x9e, 0xc5, 0x80, 0xce, 0x8d, 0x94, 0xea, 0x30, 0xcc, 0xfd, 0x94, 0xa7, 0x45, 0xb0,
|
||||
0xa3, 0x5b, 0x22, 0x49, 0x23, 0xe5, 0x28, 0x25, 0xcf, 0xf2, 0x48, 0x39, 0xba, 0xa5, 0xe4, 0x7d,
|
||||
0x50, 0xc5, 0xaa, 0x27, 0x23, 0xde, 0xc3, 0xef, 0x42, 0x92, 0xa1, 0xce, 0xfd, 0xaf, 0x2b, 0xea,
|
||||
0xc9, 0x50, 0x72, 0xca, 0x00, 0x29, 0x11, 0xe7, 0x11, 0x06, 0x48, 0x46, 0x61, 0x53, 0x06, 0x48,
|
||||
0x09, 0xd6, 0x8e, 0xe0, 0xbb, 0xc6, 0xa2, 0x9f, 0x29, 0x5b, 0xa1, 0x2c, 0x42, 0x9a, 0xb2, 0x15,
|
||||
0x4a, 0x03, 0xb7, 0xcc, 0xa3, 0xef, 0x07, 0x31, 0x53, 0xac, 0xdc, 0x40, 0x94, 0x73, 0x3f, 0xf2,
|
||||
0xef, 0x41, 0x31, 0x8c, 0x42, 0xa2, 0x67, 0x53, 0x5d, 0xc4, 0x03, 0x74, 0xf8, 0x11, 0x4c, 0x25,
|
||||
0x6e, 0xf0, 0x52, 0x44, 0x54, 0x1e, 0x85, 0xdc, 0x7f, 0x3d, 0xa1, 0x1f, 0xaf, 0x4a, 0x61, 0xc2,
|
||||
0x40, 0x1c, 0x30, 0xc5, 0xd4, 0x0f, 0x06, 0xbe, 0xc4, 0x01, 0x08, 0x61, 0x43, 0x07, 0x10, 0x42,
|
||||
0x55, 0x43, 0x07, 0x10, 0x83, 0x34, 0x4c, 0x22, 0x93, 0x17, 0x94, 0x29, 0x12, 0x99, 0x72, 0x5b,
|
||||
0xbc, 0x1f, 0x8b, 0x36, 0xa1, 0x2c, 0x5c, 0x79, 0xa3, 0x61, 0xa4, 0x89, 0x77, 0xf5, 0x29, 0xae,
|
||||
0x82, 0xe4, 0xf6, 0x5c, 0x9d, 0x58, 0xe9, 0x41, 0x65, 0xdd, 0x73, 0x1f, 0x85, 0x1f, 0x9c, 0xfc,
|
||||
0x9c, 0x36, 0xfa, 0xcb, 0x2d, 0xa8, 0x31, 0x04, 0x1d, 0x3f, 0x0a, 0x74, 0x77, 0xf3, 0x63, 0x74,
|
||||
0x72, 0x99, 0xfd, 0x1b, 0x87, 0xe5, 0xf0, 0xdf, 0x38, 0x2c, 0xdf, 0xb0, 0x6c, 0x7c, 0x8f, 0x67,
|
||||
0x41, 0xfe, 0x47, 0x61, 0xc8, 0xab, 0xbc, 0xe8, 0xca, 0x5a, 0xe3, 0xff, 0x49, 0xe2, 0x9d, 0x47,
|
||||
0xc1, 0xbd, 0xcd, 0x8f, 0xaf, 0x19, 0x9f, 0x5d, 0x29, 0x40, 0x6e, 0x65, 0xf9, 0xe5, 0xe5, 0x97,
|
||||
0xa0, 0x66, 0x45, 0xe8, 0x6d, 0xaf, 0xdb, 0xba, 0x56, 0x66, 0x8d, 0xd6, 0x49, 0x3f, 0xeb, 0xca,
|
||||
0xcf, 0x5e, 0x6c, 0x5b, 0xc1, 0x76, 0x6f, 0x93, 0x2c, 0xc1, 0x05, 0x86, 0xf6, 0xa2, 0xe5, 0xf2,
|
||||
0x5f, 0x17, 0x2c, 0x27, 0xc0, 0x9e, 0x63, 0xd8, 0xec, 0x3f, 0x4c, 0x70, 0x68, 0x77, 0xf3, 0xf7,
|
||||
0x14, 0x65, 0x33, 0x4f, 0x41, 0x17, 0xff, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xff, 0xb6, 0x47, 0x70,
|
||||
0xc3, 0x62, 0x00, 0x00,
|
||||
}
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
|
|
|
@ -3873,10 +3873,6 @@ func (node *Proxy) CreateCredential(ctx context.Context, req *milvuspb.CreateCre
|
|||
if !node.checkHealthy() {
|
||||
return unhealthyStatus(), errorutil.UnhealthyError()
|
||||
}
|
||||
// validate root permission
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
// validate params
|
||||
username := req.Username
|
||||
if err := ValidateUsername(username); err != nil {
|
||||
|
@ -3999,10 +3995,6 @@ func (node *Proxy) DeleteCredential(ctx context.Context, req *milvuspb.DeleteCre
|
|||
if !node.checkHealthy() {
|
||||
return unhealthyStatus(), errorutil.UnhealthyError()
|
||||
}
|
||||
// validate root permission
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
if req.Username == util.UserRoot {
|
||||
return &commonpb.Status{
|
||||
|
@ -4064,18 +4056,6 @@ func (node *Proxy) SendRetrieveResult(ctx context.Context, req *internalpb.Retri
|
|||
}, nil
|
||||
}
|
||||
|
||||
func (node *Proxy) validateAdminPermission(ctx context.Context) (bool, *commonpb.Status) {
|
||||
err := ValidateAdminPermission(ctx)
|
||||
if err != nil {
|
||||
logger.Error("fail to validate admin permission", zap.Error(err))
|
||||
return false, &commonpb.Status{
|
||||
ErrorCode: commonpb.ErrorCode_PermissionDenied,
|
||||
Reason: err.Error(),
|
||||
}
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
func (node *Proxy) CreateRole(ctx context.Context, req *milvuspb.CreateRoleRequest) (*commonpb.Status, error) {
|
||||
logger.Debug("CreateRole", zap.Any("req", req))
|
||||
if code, ok := node.checkHealthyAndReturnCode(); !ok {
|
||||
|
@ -4093,10 +4073,6 @@ func (node *Proxy) CreateRole(ctx context.Context, req *milvuspb.CreateRoleReque
|
|||
}, err
|
||||
}
|
||||
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
result, err := node.rootCoord.CreateRole(ctx, req)
|
||||
if err != nil {
|
||||
logger.Error("fail to create role", zap.Error(err))
|
||||
|
@ -4119,9 +4095,6 @@ func (node *Proxy) DropRole(ctx context.Context, req *milvuspb.DropRoleRequest)
|
|||
Reason: err.Error(),
|
||||
}, err
|
||||
}
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
result, err := node.rootCoord.DropRole(ctx, req)
|
||||
if err != nil {
|
||||
logger.Error("fail to drop role", zap.String("role_name", req.RoleName), zap.Error(err))
|
||||
|
@ -4150,9 +4123,6 @@ func (node *Proxy) OperateUserRole(ctx context.Context, req *milvuspb.OperateUse
|
|||
Reason: err.Error(),
|
||||
}, err
|
||||
}
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
result, err := node.rootCoord.OperateUserRole(ctx, req)
|
||||
if err != nil {
|
||||
|
@ -4181,11 +4151,6 @@ func (node *Proxy) SelectRole(ctx context.Context, req *milvuspb.SelectRoleReque
|
|||
}, err
|
||||
}
|
||||
}
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return &milvuspb.SelectRoleResponse{
|
||||
Status: status,
|
||||
}, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
result, err := node.rootCoord.SelectRole(ctx, req)
|
||||
if err != nil {
|
||||
|
@ -4216,21 +4181,6 @@ func (node *Proxy) SelectUser(ctx context.Context, req *milvuspb.SelectUserReque
|
|||
}, err
|
||||
}
|
||||
}
|
||||
curUser, err := GetCurUserFromContext(ctx)
|
||||
if err != nil {
|
||||
return &milvuspb.SelectUserResponse{
|
||||
Status: &commonpb.Status{
|
||||
ErrorCode: commonpb.ErrorCode_UnexpectedError,
|
||||
Reason: err.Error(),
|
||||
},
|
||||
}, err
|
||||
}
|
||||
isSelf := req.User != nil && req.User.Name == curUser
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid && !isSelf {
|
||||
return &milvuspb.SelectUserResponse{
|
||||
Status: status,
|
||||
}, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
result, err := node.rootCoord.SelectUser(ctx, req)
|
||||
if err != nil {
|
||||
|
@ -4282,9 +4232,6 @@ func (node *Proxy) OperatePrivilege(ctx context.Context, req *milvuspb.OperatePr
|
|||
if code, ok := node.checkHealthyAndReturnCode(); !ok {
|
||||
return errorutil.UnhealthyStatus(code), errorutil.UnhealthyError()
|
||||
}
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return status, errorutil.PermissionDenyError()
|
||||
}
|
||||
if err := node.validPrivilegeParams(req); err != nil {
|
||||
return &commonpb.Status{
|
||||
ErrorCode: commonpb.ErrorCode_IllegalArgument,
|
||||
|
@ -4342,12 +4289,6 @@ func (node *Proxy) SelectGrant(ctx context.Context, req *milvuspb.SelectGrantReq
|
|||
return &milvuspb.SelectGrantResponse{Status: errorutil.UnhealthyStatus(code)}, errorutil.UnhealthyError()
|
||||
}
|
||||
|
||||
if isValid, status := node.validateAdminPermission(ctx); !isValid {
|
||||
return &milvuspb.SelectGrantResponse{
|
||||
Status: status,
|
||||
}, errorutil.PermissionDenyError()
|
||||
}
|
||||
|
||||
if err := node.validGrantParams(req); err != nil {
|
||||
return &milvuspb.SelectGrantResponse{
|
||||
Status: &commonpb.Status{
|
||||
|
|
|
@ -670,7 +670,11 @@ func (m *MetaCache) InitPolicyInfo(info []string, userRoles []string) {
|
|||
|
||||
m.privilegeInfos = util.StringSet(info)
|
||||
for _, userRole := range userRoles {
|
||||
user, role := funcutil.DecodeUserRoleCache(userRole)
|
||||
user, role, err := funcutil.DecodeUserRoleCache(userRole)
|
||||
if err != nil {
|
||||
log.Warn("invalid user-role key", zap.String("user-role", userRole), zap.Error(err))
|
||||
continue
|
||||
}
|
||||
if m.userToRoles[user] == nil {
|
||||
m.userToRoles[user] = make(map[string]struct{})
|
||||
}
|
||||
|
@ -705,13 +709,19 @@ func (m *MetaCache) RefreshPolicyInfo(op typeutil.CacheOp) error {
|
|||
case typeutil.CacheRevokePrivilege:
|
||||
delete(m.privilegeInfos, op.OpKey)
|
||||
case typeutil.CacheAddUserToRole:
|
||||
user, role := funcutil.DecodeUserRoleCache(op.OpKey)
|
||||
user, role, err := funcutil.DecodeUserRoleCache(op.OpKey)
|
||||
if err != nil {
|
||||
return fmt.Errorf("invalid opKey, fail to decode, op_type: %d, op_key: %s", int(op.OpType), op.OpKey)
|
||||
}
|
||||
if m.userToRoles[user] == nil {
|
||||
m.userToRoles[user] = make(map[string]struct{})
|
||||
}
|
||||
m.userToRoles[user][role] = struct{}{}
|
||||
case typeutil.CacheRemoveUserFromRole:
|
||||
user, role := funcutil.DecodeUserRoleCache(op.OpKey)
|
||||
user, role, err := funcutil.DecodeUserRoleCache(op.OpKey)
|
||||
if err != nil {
|
||||
return fmt.Errorf("invalid opKey, fail to decode, op_type: %d, op_key: %s", int(op.OpType), op.OpKey)
|
||||
}
|
||||
if m.userToRoles[user] != nil {
|
||||
delete(m.userToRoles[user], role)
|
||||
}
|
||||
|
|
|
@ -6,6 +6,8 @@ import (
|
|||
"reflect"
|
||||
"strings"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/proto/commonpb"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util"
|
||||
|
||||
"github.com/casbin/casbin/v2"
|
||||
|
@ -87,17 +89,24 @@ func PrivilegeInterceptor(ctx context.Context, req interface{}) (context.Context
|
|||
return ctx, err
|
||||
}
|
||||
roleNames = append(roleNames, util.RolePublic)
|
||||
resourceType := privilegeExt.ObjectType.String()
|
||||
resourceNameIndex := privilegeExt.ObjectNameIndex
|
||||
resourceName := funcutil.GetResourceName(req, privilegeExt.ObjectNameIndex)
|
||||
resourcePrivilege := privilegeExt.ObjectPrivilege.String()
|
||||
objectType := privilegeExt.ObjectType.String()
|
||||
objectNameIndex := privilegeExt.ObjectNameIndex
|
||||
objectName := funcutil.GetObjectName(req, objectNameIndex)
|
||||
if isCurUserObject(objectType, username, objectName) {
|
||||
return ctx, nil
|
||||
}
|
||||
objectNameIndexs := privilegeExt.ObjectNameIndexs
|
||||
objectNames := funcutil.GetObjectNames(req, objectNameIndexs)
|
||||
objectPrivilege := privilegeExt.ObjectPrivilege.String()
|
||||
policyInfo := strings.Join(globalMetaCache.GetPrivilegeInfo(ctx), ",")
|
||||
|
||||
log.Debug("current request info", zap.String("username", username), zap.Strings("role_names", roleNames),
|
||||
zap.String("resource_type", resourceType), zap.String("resource_privilege", resourcePrivilege), zap.Int32("resource_index", resourceNameIndex), zap.String("resource_name", resourceName),
|
||||
zap.String("object_type", objectType), zap.String("object_privilege", objectPrivilege),
|
||||
zap.Int32("object_index", objectNameIndex), zap.String("object_name", objectName),
|
||||
zap.Strings("object_names", objectNames),
|
||||
zap.String("policy_info", policyInfo))
|
||||
|
||||
policy := fmt.Sprintf("[%s]", strings.Join(globalMetaCache.GetPrivilegeInfo(ctx), ","))
|
||||
policy := fmt.Sprintf("[%s]", policyInfo)
|
||||
b := []byte(policy)
|
||||
a := jsonadapter.NewAdapter(&b)
|
||||
policyModel, err := initPolicyModel()
|
||||
|
@ -112,12 +121,38 @@ func PrivilegeInterceptor(ctx context.Context, req interface{}) (context.Context
|
|||
return ctx, err
|
||||
}
|
||||
for _, roleName := range roleNames {
|
||||
isPermit, err := e.Enforce(roleName, funcutil.PolicyForResource(resourceType, resourceName), privilegeExt.ObjectPrivilege.String())
|
||||
permitFunc := func(resName string) (bool, error) {
|
||||
object := funcutil.PolicyForResource(objectType, objectName)
|
||||
isPermit, err := e.Enforce(roleName, object, objectPrivilege)
|
||||
if err != nil {
|
||||
log.Error("Enforce fail", zap.String("role", roleName), zap.String("object", object), zap.String("privilege", objectPrivilege), zap.Error(err))
|
||||
return false, err
|
||||
}
|
||||
return isPermit, nil
|
||||
}
|
||||
|
||||
// handle the api which refers one resource
|
||||
permitObject, err := permitFunc(objectName)
|
||||
if err != nil {
|
||||
log.Error("Enforce fail", zap.String("policy", policy), zap.String("role", roleName), zap.Error(err))
|
||||
return ctx, err
|
||||
}
|
||||
if isPermit {
|
||||
if permitObject {
|
||||
return ctx, nil
|
||||
}
|
||||
|
||||
// handle the api which refers many resources
|
||||
permitObjects := true
|
||||
for _, name := range objectNames {
|
||||
p, err := permitFunc(name)
|
||||
if err != nil {
|
||||
return ctx, err
|
||||
}
|
||||
if !p {
|
||||
permitObjects = false
|
||||
break
|
||||
}
|
||||
}
|
||||
if permitObjects && len(objectNames) != 0 {
|
||||
return ctx, nil
|
||||
}
|
||||
}
|
||||
|
@ -128,6 +163,16 @@ func PrivilegeInterceptor(ctx context.Context, req interface{}) (context.Context
|
|||
|
||||
type ErrPermissionDenied struct{}
|
||||
|
||||
func (e ErrPermissionDenied) Error() string {
|
||||
func (e *ErrPermissionDenied) Error() string {
|
||||
return "permission deny"
|
||||
}
|
||||
|
||||
// isCurUserObject Determine whether it is an Object of type User that operates on its own user information,
|
||||
// like updating password or viewing your own role information.
|
||||
// make users operate their own user information when the related privileges are not granted.
|
||||
func isCurUserObject(objectType string, curUser string, object string) bool {
|
||||
if objectType != commonpb.ObjectType_User.String() {
|
||||
return false
|
||||
}
|
||||
return curUser == object
|
||||
}
|
||||
|
|
|
@ -2169,10 +2169,6 @@ func TestProxy(t *testing.T) {
|
|||
}
|
||||
}
|
||||
createCredentialReq := constructCreateCredentialRequest()
|
||||
// permission deny
|
||||
invalidCtx := GetContext(context.Background(), "foo:12345")
|
||||
_, err := proxy.CreateCredential(invalidCtx, createCredentialReq)
|
||||
assert.Error(t, err)
|
||||
// success
|
||||
resp, err := proxy.CreateCredential(ctx, createCredentialReq)
|
||||
assert.NoError(t, err)
|
||||
|
@ -2311,10 +2307,6 @@ func TestProxy(t *testing.T) {
|
|||
}
|
||||
}
|
||||
delCredReq := constructDelCredRequest()
|
||||
// permission deny
|
||||
invalidCtx := GetContext(context.Background(), "foo:12345")
|
||||
_, err := proxy.DeleteCredential(invalidCtx, delCredReq)
|
||||
assert.Error(t, err)
|
||||
|
||||
deleteResp, err := proxy.DeleteCredential(ctx, delCredReq)
|
||||
assert.NoError(t, err)
|
||||
|
@ -3177,10 +3169,6 @@ func TestProxy(t *testing.T) {
|
|||
cancel()
|
||||
}
|
||||
|
||||
func getNotRootCtx() context.Context {
|
||||
return GetContext(context.Background(), "foo:12345")
|
||||
}
|
||||
|
||||
func testProxyRole(ctx context.Context, t *testing.T, proxy *Proxy) {
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
|
@ -3192,9 +3180,6 @@ func testProxyRole(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
||||
entity.Name = "unit_test"
|
||||
_, err := proxy.CreateRole(getNotRootCtx(), &milvuspb.CreateRoleRequest{Entity: entity})
|
||||
assert.Error(t, err)
|
||||
|
||||
resp, _ = proxy.CreateRole(ctx, &milvuspb.CreateRoleRequest{Entity: entity})
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
||||
|
@ -3225,28 +3210,16 @@ func testProxyRole(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
ObjectName: "col1",
|
||||
Object: &milvuspb.ObjectEntity{Name: commonpb.ObjectType_Collection.String()},
|
||||
Role: &milvuspb.RoleEntity{Name: roleName},
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.Load.String()}},
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.MetaStore2API(commonpb.ObjectPrivilege_PrivilegeLoad.String())}},
|
||||
},
|
||||
}
|
||||
privilegeResp, _ := proxy.OperatePrivilege(ctx, privilegeRequest)
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, privilegeResp.ErrorCode)
|
||||
|
||||
_, err := proxy.SelectUser(context.Background(), &milvuspb.SelectUserRequest{User: &milvuspb.UserEntity{Name: username}, IncludeRoleInfo: true})
|
||||
assert.Error(t, err)
|
||||
|
||||
_, err = proxy.SelectUser(getNotRootCtx(), &milvuspb.SelectUserRequest{User: &milvuspb.UserEntity{Name: username}, IncludeRoleInfo: true})
|
||||
assert.Error(t, err)
|
||||
|
||||
userResp, _ := proxy.SelectUser(ctx, &milvuspb.SelectUserRequest{User: &milvuspb.UserEntity{Name: username}, IncludeRoleInfo: true})
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, userResp.Status.ErrorCode)
|
||||
roleNumOfUser := len(userResp.Results[0].Roles)
|
||||
|
||||
_, err = proxy.OperateUserRole(getNotRootCtx(), &milvuspb.OperateUserRoleRequest{
|
||||
Username: username,
|
||||
RoleName: roleName,
|
||||
Type: milvuspb.OperateUserRoleType_AddUserToRole,
|
||||
})
|
||||
assert.Error(t, err)
|
||||
roleResp, _ = proxy.OperateUserRole(ctx, &milvuspb.OperateUserRoleRequest{
|
||||
Username: username,
|
||||
RoleName: roleName,
|
||||
|
@ -3261,9 +3234,6 @@ func testProxyRole(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
privilegeResp, _ = proxy.OperatePrivilege(ctx, privilegeRequest)
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, privilegeResp.ErrorCode)
|
||||
|
||||
_, err = proxy.DropRole(getNotRootCtx(), &milvuspb.DropRoleRequest{RoleName: roleName})
|
||||
assert.Error(t, err)
|
||||
|
||||
roleResp, _ = proxy.DropRole(ctx, &milvuspb.DropRoleRequest{RoleName: roleName})
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, roleResp.ErrorCode)
|
||||
|
||||
|
@ -3305,9 +3275,6 @@ func testProxyRole(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
_, err := proxy.SelectRole(ctx, &milvuspb.SelectRoleRequest{Role: &milvuspb.RoleEntity{Name: " "}})
|
||||
assert.Error(t, err)
|
||||
|
||||
_, err = proxy.SelectRole(getNotRootCtx(), &milvuspb.SelectRoleRequest{Role: &milvuspb.RoleEntity{Name: " "}})
|
||||
assert.Error(t, err)
|
||||
|
||||
resp, _ := proxy.SelectRole(ctx, &milvuspb.SelectRoleRequest{})
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, resp.Status.ErrorCode)
|
||||
roleNum := len(resp.Results)
|
||||
|
@ -3428,7 +3395,8 @@ func testProxyPrivilege(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
resp, _ = proxy.OperatePrivilege(ctx, req)
|
||||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
||||
req.Entity.Grantor.Privilege.Name = util.All.String()
|
||||
req.Entity.Grantor.Privilege.Name = util.MetaStore2API(commonpb.ObjectPrivilege_PrivilegeAll.String())
|
||||
|
||||
resp, _ = proxy.OperatePrivilege(ctx, req)
|
||||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
||||
|
@ -3449,9 +3417,7 @@ func testProxyPrivilege(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
||||
req.Entity.Role = &milvuspb.RoleEntity{Name: "admin"}
|
||||
_, err := proxy.OperatePrivilege(getNotRootCtx(), req)
|
||||
assert.Error(t, err)
|
||||
_, err = proxy.OperatePrivilege(context.Background(), req)
|
||||
_, err := proxy.OperatePrivilege(context.Background(), req)
|
||||
assert.Error(t, err)
|
||||
|
||||
resp, _ = proxy.OperatePrivilege(ctx, req)
|
||||
|
@ -3460,8 +3426,7 @@ func testProxyPrivilege(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
req.Entity.Grantor.Privilege.Name = "not existed"
|
||||
resp, _ = proxy.OperatePrivilege(ctx, req)
|
||||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
req.Entity.Grantor.Privilege.Name = util.All.String()
|
||||
|
||||
req.Entity.Grantor.Privilege.Name = util.MetaStore2API(commonpb.ObjectPrivilege_PrivilegeAll.String())
|
||||
req.Entity.Object.Name = "not existed"
|
||||
resp, _ = proxy.OperatePrivilege(ctx, req)
|
||||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
@ -3477,7 +3442,7 @@ func testProxyPrivilege(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
Role: &milvuspb.RoleEntity{Name: "public"},
|
||||
Object: &milvuspb.ObjectEntity{Name: commonpb.ObjectType_Collection.String()},
|
||||
ObjectName: "col1",
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.Load.String()}},
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.MetaStore2API(commonpb.ObjectPrivilege_PrivilegeLoad.String())}},
|
||||
},
|
||||
Type: milvuspb.OperatePrivilegeType_Grant,
|
||||
}
|
||||
|
@ -3510,8 +3475,6 @@ func testProxyPrivilege(ctx context.Context, t *testing.T, proxy *Proxy) {
|
|||
assert.NotEqual(t, commonpb.ErrorCode_Success, results.Status.ErrorCode)
|
||||
|
||||
selectReq.Entity.Role = &milvuspb.RoleEntity{Name: "public"}
|
||||
_, err = proxy.SelectGrant(getNotRootCtx(), selectReq)
|
||||
assert.Error(t, err)
|
||||
|
||||
results, _ = proxy.SelectGrant(ctx, selectReq)
|
||||
assert.Equal(t, commonpb.ErrorCode_Success, results.Status.ErrorCode)
|
||||
|
@ -3564,7 +3527,7 @@ func testProxyPrivilegeFail(ctx context.Context, t *testing.T, proxy *Proxy, rea
|
|||
Role: &milvuspb.RoleEntity{Name: "admin"},
|
||||
ObjectName: "col1",
|
||||
Object: &milvuspb.ObjectEntity{Name: commonpb.ObjectType_Collection.String()},
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.All.String()}},
|
||||
Grantor: &milvuspb.GrantorEntity{Privilege: &milvuspb.PrivilegeEntity{Name: util.MetaStore2API(commonpb.ObjectPrivilege_PrivilegeAll.String())}},
|
||||
},
|
||||
})
|
||||
assert.NotEqual(t, commonpb.ErrorCode_Success, resp.ErrorCode)
|
||||
|
|
|
@ -696,21 +696,3 @@ func GetRole(username string) ([]string, error) {
|
|||
}
|
||||
return globalMetaCache.GetUserRole(username), nil
|
||||
}
|
||||
|
||||
func ValidateAdminPermission(ctx context.Context) error {
|
||||
curUser, err := GetCurUserFromContext(ctx)
|
||||
if err != nil {
|
||||
return fmt.Errorf("fail to get current user info from the context, err: %w", err)
|
||||
}
|
||||
roles, err := GetRole(curUser)
|
||||
if err != nil {
|
||||
return fmt.Errorf("fail to get role for the current user info, currtent user:%s, err: %w", curUser, err)
|
||||
}
|
||||
for _, role := range roles {
|
||||
if role == util.RoleAdmin {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
return fmt.Errorf("the current user doesn't have privileges of the admin role, can't execute this api")
|
||||
}
|
||||
|
|
|
@ -714,29 +714,3 @@ func TestGetRole(t *testing.T) {
|
|||
assert.Nil(t, err)
|
||||
assert.Equal(t, 1, len(roles))
|
||||
}
|
||||
|
||||
func TestValidateAdminPermission(t *testing.T) {
|
||||
root := "root"
|
||||
password := "123456"
|
||||
|
||||
err := ValidateAdminPermission(context.Background())
|
||||
assert.NotNil(t, err)
|
||||
|
||||
globalMetaCache = nil
|
||||
err = ValidateAdminPermission(GetContext(context.Background(), fmt.Sprintf("%s%s%s", root, util.CredentialSeperator, password)))
|
||||
assert.NotNil(t, err)
|
||||
|
||||
globalMetaCache = &mockCache{
|
||||
getUserRoleFunc: func(username string) []string {
|
||||
if username == "root" {
|
||||
return []string{"role1", "admin", "role2"}
|
||||
}
|
||||
return []string{"role1"}
|
||||
},
|
||||
}
|
||||
err = ValidateAdminPermission(GetContext(context.Background(), fmt.Sprintf("%s%s%s", root, util.CredentialSeperator, password)))
|
||||
assert.Nil(t, err)
|
||||
|
||||
err = ValidateAdminPermission(GetContext(context.Background(), fmt.Sprintf("%s%s%s", "test", util.CredentialSeperator, password)))
|
||||
assert.NotNil(t, err)
|
||||
}
|
||||
|
|
|
@ -1294,12 +1294,15 @@ func (c *Core) initRbac() (initError error) {
|
|||
commonpb.ObjectPrivilege_PrivilegeDescribeCollection.String(),
|
||||
commonpb.ObjectPrivilege_PrivilegeShowCollections.String(),
|
||||
}
|
||||
collectionPrivileges := []string{
|
||||
commonpb.ObjectPrivilege_PrivilegeIndexDetail.String(),
|
||||
}
|
||||
|
||||
for _, globalPrivilege := range globalPrivileges {
|
||||
if initError = c.MetaTable.OperatePrivilege(util.DefaultTenant, &milvuspb.GrantEntity{
|
||||
Role: &milvuspb.RoleEntity{Name: util.RolePublic},
|
||||
Object: &milvuspb.ObjectEntity{Name: commonpb.ObjectType_Global.String()},
|
||||
ObjectName: funcutil.GlobalResourceName,
|
||||
ObjectName: funcutil.AnyObjectName,
|
||||
Grantor: &milvuspb.GrantorEntity{
|
||||
User: &milvuspb.UserEntity{Name: util.RoleAdmin},
|
||||
Privilege: &milvuspb.PrivilegeEntity{Name: globalPrivilege},
|
||||
|
@ -1308,6 +1311,19 @@ func (c *Core) initRbac() (initError error) {
|
|||
return
|
||||
}
|
||||
}
|
||||
for _, collectionPrivilege := range collectionPrivileges {
|
||||
if initError = c.MetaTable.OperatePrivilege(util.DefaultTenant, &milvuspb.GrantEntity{
|
||||
Role: &milvuspb.RoleEntity{Name: util.RolePublic},
|
||||
Object: &milvuspb.ObjectEntity{Name: commonpb.ObjectType_Collection.String()},
|
||||
ObjectName: funcutil.AnyObjectName,
|
||||
Grantor: &milvuspb.GrantorEntity{
|
||||
User: &milvuspb.UserEntity{Name: util.RoleAdmin},
|
||||
Privilege: &milvuspb.PrivilegeEntity{Name: collectionPrivilege},
|
||||
},
|
||||
}, milvuspb.OperatePrivilegeType_Grant); initError != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -3328,7 +3344,7 @@ func (c *Core) isValidGrantor(entity *milvuspb.GrantorEntity, object string) err
|
|||
if entity.Privilege == nil {
|
||||
return fmt.Errorf("the privilege entity in the grantor entity is nil")
|
||||
}
|
||||
if privilegeName := util.PrivilegeNameForDb(entity.Privilege.Name); privilegeName == "" {
|
||||
if privilegeName := util.PrivilegeNameForMetastore(entity.Privilege.Name); privilegeName == "" {
|
||||
return fmt.Errorf("the privilege name in the privilege entity is invalid, current value: %s", entity.Privilege.Name)
|
||||
}
|
||||
privileges, ok := util.GetObjectPrivileges()[object]
|
||||
|
@ -3377,11 +3393,11 @@ func (c *Core) OperatePrivilege(ctx context.Context, in *milvuspb.OperatePrivile
|
|||
return failStatus(commonpb.ErrorCode_OperatePrivilegeFailure, err.Error()), err
|
||||
}
|
||||
|
||||
logger.Debug("before PrivilegeNameForDb", zap.String("privilege", in.Entity.Grantor.Privilege.Name))
|
||||
in.Entity.Grantor.Privilege.Name = util.PrivilegeNameForDb(in.Entity.Grantor.Privilege.Name)
|
||||
logger.Debug("after PrivilegeNameForDb", zap.String("privilege", in.Entity.Grantor.Privilege.Name))
|
||||
logger.Debug("before PrivilegeNameForMetastore", zap.String("privilege", in.Entity.Grantor.Privilege.Name))
|
||||
in.Entity.Grantor.Privilege.Name = util.PrivilegeNameForMetastore(in.Entity.Grantor.Privilege.Name)
|
||||
logger.Debug("after PrivilegeNameForMetastore", zap.String("privilege", in.Entity.Grantor.Privilege.Name))
|
||||
if in.Entity.Object.Name == commonpb.ObjectType_Global.String() {
|
||||
in.Entity.ObjectName = funcutil.GlobalResourceName
|
||||
in.Entity.ObjectName = funcutil.AnyObjectName
|
||||
}
|
||||
if err := c.MetaTable.OperatePrivilege(util.DefaultTenant, in.Entity, in.Type); err != nil {
|
||||
errMsg := "fail to operate the privilege"
|
||||
|
|
|
@ -16,7 +16,11 @@
|
|||
|
||||
package util
|
||||
|
||||
import "github.com/milvus-io/milvus/internal/proto/commonpb"
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/proto/commonpb"
|
||||
)
|
||||
|
||||
// Meta Prefix consts
|
||||
const (
|
||||
|
@ -34,80 +38,10 @@ const (
|
|||
DefaultTenant = ""
|
||||
RoleAdmin = "admin"
|
||||
RolePublic = "public"
|
||||
|
||||
PrivilegeWord = "Privilege"
|
||||
)
|
||||
|
||||
// ObjectPrivilegeAPI privilege name for using api
|
||||
type ObjectPrivilegeAPI int32
|
||||
|
||||
func (o ObjectPrivilegeAPI) String() string {
|
||||
switch o {
|
||||
case All:
|
||||
return "All"
|
||||
case CreateCollection:
|
||||
return "CreateCollection"
|
||||
case DropCollection:
|
||||
return "DropCollection"
|
||||
case DescribeCollection:
|
||||
return "DescribeCollection"
|
||||
case ShowCollections:
|
||||
return "ShowCollections"
|
||||
case Load:
|
||||
return "Load"
|
||||
case Release:
|
||||
return "Release"
|
||||
case Compact:
|
||||
return "Compact"
|
||||
case Insert:
|
||||
return "Insert"
|
||||
case Delete:
|
||||
return "Delete"
|
||||
default:
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
const (
|
||||
All ObjectPrivilegeAPI = iota
|
||||
CreateCollection
|
||||
DropCollection
|
||||
DescribeCollection
|
||||
ShowCollections
|
||||
Load
|
||||
Release
|
||||
Compact
|
||||
Insert
|
||||
Delete
|
||||
|
||||
None = 999
|
||||
)
|
||||
|
||||
func GetObjectPrivilegeFromName(name string) ObjectPrivilegeAPI {
|
||||
switch name {
|
||||
case All.String():
|
||||
return All
|
||||
case CreateCollection.String():
|
||||
return CreateCollection
|
||||
case DropCollection.String():
|
||||
return DropCollection
|
||||
case DescribeCollection.String():
|
||||
return DescribeCollection
|
||||
case ShowCollections.String():
|
||||
return ShowCollections
|
||||
case Load.String():
|
||||
return Load
|
||||
case Release.String():
|
||||
return Release
|
||||
case Compact.String():
|
||||
return Compact
|
||||
case Insert.String():
|
||||
return Insert
|
||||
case Delete.String():
|
||||
return Delete
|
||||
default:
|
||||
return None
|
||||
}
|
||||
}
|
||||
|
||||
// StringSet convert array to map for conveniently check if the array contains an element
|
||||
func StringSet(strings []string) map[string]struct{} {
|
||||
stringsMap := make(map[string]struct{})
|
||||
|
@ -129,34 +63,60 @@ func StringList(stringMap map[string]struct{}) []string {
|
|||
func GetObjectPrivileges() map[string][]string {
|
||||
return map[string][]string{
|
||||
commonpb.ObjectType_Collection.String(): {
|
||||
Load.String(),
|
||||
Release.String(),
|
||||
Compact.String(),
|
||||
Insert.String(),
|
||||
Delete.String(),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeLoad.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeRelease.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeCompaction.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeInsert.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeDelete.String()),
|
||||
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeGetStatistics.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeCreateIndex.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeIndexDetail.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeDropIndex.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeSearch.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeFlush.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeQuery.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeLoadBalance.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeImport.String()),
|
||||
},
|
||||
commonpb.ObjectType_Global.String(): {
|
||||
All.String(),
|
||||
CreateCollection.String(),
|
||||
DropCollection.String(),
|
||||
DescribeCollection.String(),
|
||||
ShowCollections.String(),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeAll.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeCreateCollection.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeDropCollection.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeDescribeCollection.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeShowCollections.String()),
|
||||
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeCreateOwnership.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeDropOwnership.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeSelectOwnership.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeManageOwnership.String()),
|
||||
},
|
||||
commonpb.ObjectType_User.String(): {
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeUpdateUser.String()),
|
||||
MetaStore2API(commonpb.ObjectPrivilege_PrivilegeSelectUser.String()),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// MetaStore2API convert meta-store's privilege name to api's
|
||||
// example: PrivilegeAll -> All
|
||||
func MetaStore2API(name string) string {
|
||||
return name[strings.Index(name, PrivilegeWord)+len(PrivilegeWord):]
|
||||
}
|
||||
|
||||
func PrivilegeNameForAPI(name string) string {
|
||||
index, ok := commonpb.ObjectPrivilege_value[name]
|
||||
_, ok := commonpb.ObjectPrivilege_value[name]
|
||||
if !ok {
|
||||
return ""
|
||||
}
|
||||
return ObjectPrivilegeAPI(index).String()
|
||||
return MetaStore2API(name)
|
||||
}
|
||||
|
||||
func PrivilegeNameForDb(name string) string {
|
||||
o := GetObjectPrivilegeFromName(name)
|
||||
if o == None {
|
||||
func PrivilegeNameForMetastore(name string) string {
|
||||
dbPrivilege := PrivilegeWord + name
|
||||
_, ok := commonpb.ObjectPrivilege_value[dbPrivilege]
|
||||
if !ok {
|
||||
return ""
|
||||
}
|
||||
return commonpb.ObjectPrivilege_name[int32(o)]
|
||||
return dbPrivilege
|
||||
}
|
||||
|
|
|
@ -394,9 +394,12 @@ func EncodeUserRoleCache(user string, role string) string {
|
|||
return fmt.Sprintf("%s/%s", user, role)
|
||||
}
|
||||
|
||||
func DecodeUserRoleCache(cache string) (string, string) {
|
||||
func DecodeUserRoleCache(cache string) (string, string, error) {
|
||||
index := strings.LastIndex(cache, "/")
|
||||
if index == -1 {
|
||||
return "", "", fmt.Errorf("invalid param, cache: [%s]", cache)
|
||||
}
|
||||
user := cache[:index]
|
||||
role := cache[index+1:]
|
||||
return user, role
|
||||
return user, role, nil
|
||||
}
|
||||
|
|
|
@ -539,7 +539,11 @@ func TestUserRoleCache(t *testing.T) {
|
|||
user, role := "foo", "root"
|
||||
cache := EncodeUserRoleCache(user, role)
|
||||
assert.Equal(t, fmt.Sprintf("%s/%s", user, role), cache)
|
||||
u, r := DecodeUserRoleCache(cache)
|
||||
u, r, err := DecodeUserRoleCache(cache)
|
||||
assert.Equal(t, user, u)
|
||||
assert.Equal(t, role, r)
|
||||
assert.NoError(t, err)
|
||||
|
||||
_, _, err = DecodeUserRoleCache("foo")
|
||||
assert.Error(t, err)
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ import (
|
|||
)
|
||||
|
||||
const (
|
||||
GlobalResourceName = "*"
|
||||
AnyObjectName = "*"
|
||||
)
|
||||
|
||||
func GetVersion(m proto.GeneratedMessage) (string, error) {
|
||||
|
@ -53,13 +53,42 @@ func GetPrivilegeExtObj(m proto.GeneratedMessage) (commonpb.PrivilegeExt, error)
|
|||
}, nil
|
||||
}
|
||||
|
||||
func GetResourceName(m proto.GeneratedMessage, index int32) string {
|
||||
// GetObjectName get object name from the grpc message according to the filed index. The filed is a string.
|
||||
func GetObjectName(m proto.GeneratedMessage, index int32) string {
|
||||
if index <= 0 {
|
||||
return GlobalResourceName
|
||||
return AnyObjectName
|
||||
}
|
||||
msg := proto.MessageReflect(proto.MessageV1(m))
|
||||
msgDesc := msg.Descriptor()
|
||||
return msg.Get(msgDesc.Fields().ByNumber(protoreflect.FieldNumber(index))).String()
|
||||
value := msg.Get(msgDesc.Fields().ByNumber(protoreflect.FieldNumber(index)))
|
||||
user, ok := value.Interface().(protoreflect.Message)
|
||||
if ok {
|
||||
userDesc := user.Descriptor()
|
||||
value = user.Get(userDesc.Fields().ByNumber(protoreflect.FieldNumber(1)))
|
||||
if value.String() == "" {
|
||||
return AnyObjectName
|
||||
}
|
||||
}
|
||||
return value.String()
|
||||
}
|
||||
|
||||
// GetObjectNames get object names from the grpc message according to the filed index. The filed is an array.
|
||||
func GetObjectNames(m proto.GeneratedMessage, index int32) []string {
|
||||
if index <= 0 {
|
||||
return []string{}
|
||||
}
|
||||
msg := proto.MessageReflect(proto.MessageV1(m))
|
||||
msgDesc := msg.Descriptor()
|
||||
value := msg.Get(msgDesc.Fields().ByNumber(protoreflect.FieldNumber(index)))
|
||||
names, ok := value.Interface().(protoreflect.List)
|
||||
if !ok {
|
||||
return []string{}
|
||||
}
|
||||
res := make([]string, names.Len())
|
||||
for i := 0; i < names.Len(); i++ {
|
||||
res[i] = names.Get(i).String()
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
func PolicyForPrivilege(roleName string, objectType string, objectName string, privilege string) string {
|
||||
|
|
|
@ -44,12 +44,36 @@ func Test_GetPrivilegeExtObj(t *testing.T) {
|
|||
}
|
||||
|
||||
func Test_GetResourceName(t *testing.T) {
|
||||
request := &milvuspb.HasCollectionRequest{
|
||||
DbName: "test",
|
||||
CollectionName: "col1",
|
||||
{
|
||||
request := &milvuspb.HasCollectionRequest{
|
||||
DbName: "test",
|
||||
CollectionName: "col1",
|
||||
}
|
||||
assert.Equal(t, "*", GetObjectName(request, 0))
|
||||
assert.Equal(t, "col1", GetObjectName(request, 3))
|
||||
}
|
||||
assert.Equal(t, "*", GetResourceName(request, 0))
|
||||
assert.Equal(t, "col1", GetResourceName(request, 3))
|
||||
|
||||
{
|
||||
request := &milvuspb.SelectUserRequest{
|
||||
User: &milvuspb.UserEntity{Name: "test"},
|
||||
}
|
||||
assert.Equal(t, "test", GetObjectName(request, 2))
|
||||
|
||||
request = &milvuspb.SelectUserRequest{}
|
||||
assert.Equal(t, "*", GetObjectName(request, 2))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func Test_GetResourceNames(t *testing.T) {
|
||||
request := &milvuspb.FlushRequest{
|
||||
DbName: "test",
|
||||
CollectionNames: []string{"col1", "col2"},
|
||||
}
|
||||
assert.Equal(t, 0, len(GetObjectNames(request, 0)))
|
||||
assert.Equal(t, 0, len(GetObjectNames(request, 2)))
|
||||
names := GetObjectNames(request, 3)
|
||||
assert.Equal(t, 2, len(names))
|
||||
}
|
||||
|
||||
func Test_PolicyForPrivilege(t *testing.T) {
|
||||
|
|
Loading…
Reference in New Issue