| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 | 
							- syntax = "proto2";
 
- import "playlist4meta.proto";
 
- import "playlist4content.proto";
 
- message Add {
 
-     optional int32 fromIndex = 0x1;
 
-     repeated Item items = 0x2;
 
-     optional ListChecksum list_checksum = 0x3;
 
-     optional bool addLast = 0x4;
 
-     optional bool addFirst = 0x5;
 
- }
 
- message Rem {
 
-     optional int32 fromIndex = 0x1;
 
-     optional int32 length = 0x2;
 
-     repeated Item items = 0x3;
 
-     optional ListChecksum list_checksum = 0x4;
 
-     optional ListChecksum items_checksum = 0x5;
 
-     optional ListChecksum uris_checksum = 0x6;
 
-     optional bool itemsAsKey = 0x7;
 
- }
 
- message Mov {
 
-     optional int32 fromIndex = 0x1;
 
-     optional int32 length = 0x2;
 
-     optional int32 toIndex = 0x3;
 
-     optional ListChecksum list_checksum = 0x4;
 
-     optional ListChecksum items_checksum = 0x5;
 
-     optional ListChecksum uris_checksum = 0x6;
 
- }
 
- message ItemAttributesPartialState {
 
-     optional ItemAttributes values = 0x1;
 
-     repeated ItemAttributeKind no_value = 0x2;
 
-     enum ItemAttributeKind {
 
-         ITEM_UNKNOWN = 0x0;
 
-         ITEM_ADDED_BY = 0x1;
 
-         ITEM_TIMESTAMP = 0x2;
 
-         ITEM_MESSAGE = 0x3;
 
-         ITEM_SEEN = 0x4;
 
-         ITEM_DOWNLOAD_COUNT = 0x5;
 
-         ITEM_DOWNLOAD_FORMAT = 0x6;
 
-         ITEM_SEVENDIGITAL_ID = 0x7;
 
-         ITEM_SEVENDIGITAL_LEFT = 0x8;
 
-         ITEM_SEEN_AT = 0x9;
 
-         ITEM_PUBLIC = 0xa;
 
-     }
 
- }
 
- message ListAttributesPartialState {
 
-     optional ListAttributes values = 0x1;
 
-     repeated ListAttributeKind no_value = 0x2;
 
-     enum ListAttributeKind {
 
-         LIST_UNKNOWN = 0x0;
 
-         LIST_NAME = 0x1;
 
-         LIST_DESCRIPTION = 0x2;
 
-         LIST_PICTURE = 0x3;
 
-         LIST_COLLABORATIVE = 0x4;
 
-         LIST_PL3_VERSION = 0x5;
 
-         LIST_DELETED_BY_OWNER = 0x6;
 
-         LIST_RESTRICTED_COLLABORATIVE = 0x7;
 
-     }
 
- }
 
- message UpdateItemAttributes {
 
-     optional int32 index = 0x1;
 
-     optional ItemAttributesPartialState new_attributes = 0x2;
 
-     optional ItemAttributesPartialState old_attributes = 0x3;
 
-     optional ListChecksum list_checksum = 0x4;
 
-     optional ListChecksum old_attributes_checksum = 0x5;
 
- }
 
- message UpdateListAttributes {
 
-     optional ListAttributesPartialState new_attributes = 0x1;
 
-     optional ListAttributesPartialState old_attributes = 0x2;
 
-     optional ListChecksum list_checksum = 0x3;
 
-     optional ListChecksum old_attributes_checksum = 0x4;
 
- }
 
- message Op {
 
-     optional Kind kind = 0x1;
 
-     enum Kind {
 
-         KIND_UNKNOWN = 0x0;
 
-         ADD = 0x2;
 
-         REM = 0x3;
 
-         MOV = 0x4;
 
-         UPDATE_ITEM_ATTRIBUTES = 0x5;
 
-         UPDATE_LIST_ATTRIBUTES = 0x6;
 
-     }
 
-     optional Add add = 0x2;
 
-     optional Rem rem = 0x3;
 
-     optional Mov mov = 0x4;
 
-     optional UpdateItemAttributes update_item_attributes = 0x5;
 
-     optional UpdateListAttributes update_list_attributes = 0x6;
 
- }
 
- message OpList {
 
-     repeated Op ops = 0x1;
 
- }
 
 
  |