# 1.1.0 common and profile FlatBuffers > Version: 1.1.0. Release requirements; implementation and delivery are recorded below. > [Verification status](/Riff/1-1-0/status). Wire owner: [format registry](/Riff/1-1-0/formats). Nullable IDs require semantic validation; zero is valid. Only MediaKey is a two-word identity. All other identifiers are XXH3-64. A NULL QueueRef ID selects the dynamic slot; absent QueueRef means no selection. ## state_common.fbs ```fbs namespace link.roadio.riff.state.fbs; struct MediaKey { hi:long; lo:long; lo_present:bool; } struct WriteReceipt { writer_id:ulong; sequence:ulong; } struct FileHeader { generation:ulong; receipt:WriteReceipt; format_version:uint; profile_slot:ubyte; } enum ContentKind:ubyte { MUSIC, BOOK } enum Theme:ubyte { SYSTEM, DAY, NIGHT } enum Preference:ubyte { NEUTRAL, LIKED, DISLIKED } enum ObjectKind:ubyte { TRACK, ALBUM, ARTIST, GENRE, FOLDER } table ObjectKey { kind:ObjectKind; object_id:ulong = null; media_id:MediaKey; } table QueueRef { id:ulong = null; } ``` ## profile_state.fbs ```fbs include "state_common.fbs"; namespace link.roadio.riff.state.fbs; table ProfileSettings { theme:Theme = SYSTEM; long_press_starts_playback:bool; auto_search:bool = true; ignore_leading_articles:bool = true; content_mode:ContentKind = MUSIC; audiobook_speed_tenths:ubyte = 10; ai_queue_size:ubyte = 20; ai_pte_bands:ubyte; ai_arousal:double; ai_valence:double; } table Reaction { target:ObjectKey (required); preference:Preference; banned:bool; } table ClassificationOverride { target:ObjectKey (required); kind:ContentKind; } table QueueItem { occurrence_id:ulong = null; media_id:MediaKey (required); label:string (required); known_duration_us:long = -1; } table QueueRevision { id:ulong = null; items:[QueueItem] (required); } table Checkpoint { revision_id:ulong = null; occurrence_id:ulong = null; position_us:long; play_requested:bool; repeat_enabled:bool; shuffle_enabled:bool; shuffle_order:[ulong] (required); preferred_binding_key:ulong = null; completed:bool; attempt_id:ulong = null; history_recorded:bool; } table Bookmark { id:ulong = null; occurrence_id:ulong = null; position_us:long; label:string (required); } table QueueState { id:ulong = null; creation_id:ulong = null; kind:ContentKind; name:string; title_id:ulong = null; definition:QueueRevision (required); execution:QueueRevision (required); checkpoint:Checkpoint (required); bookmarks:[Bookmark] (required); } table ProfileState { header:FileHeader (required); settings:ProfileSettings (required); reactions:[Reaction] (required); classifications:[ClassificationOverride] (required); dynamic_queue:QueueState (required); saved_queues:[QueueState] (required); last_queue:QueueRef; } root_type ProfileState; file_identifier "PFST"; file_extension "fb"; ```