<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/app_settings"
    app:startDestination="@id/appSettingsFragment">

    <fragment
        android:id="@+id/appSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.AppSettingsFragment"
        android:label="app_settings_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_appSettingsFragment_to_accountSettingsFragment"
            app:destination="@id/accountSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_deviceActivity"
            app:destination="@id/deviceActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_paymentsActivity"
            app:destination="@id/paymentsActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_appearanceSettingsFragment"
            app:destination="@id/appearanceSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_chatsSettingsFragment"
            app:destination="@id/chatsSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_notificationsSettingsFragment"
            app:destination="@id/notificationsSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_privacySettingsFragment"
            app:destination="@id/privacySettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_dataAndStorageSettingsFragment"
            app:destination="@id/dataAndStorageSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_manageProfileActivity"
            app:destination="@id/manageProfileActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_helpSettingsFragment"
            app:destination="@id/helpSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_inviteActivity"
            app:destination="@id/inviteActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_internalSettingsFragment"
            app:destination="@id/internalSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_manageDonationsFragment"
            app:destination="@id/manageDonationsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_subscribeFragment"
            app:destination="@id/subscribeFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_appSettingsFragment_to_boostsFragment"
            app:destination="@id/boosts"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <activity
        android:id="@+id/manageProfileActivity"
        android:name="org.thoughtcrime.securesms.profiles.manage.ManageProfileActivity"
        android:label="manage_profile_activity" />

    <!-- region Account Settings and subpages -->
    <fragment
        android:id="@+id/accountSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.account.AccountSettingsFragment"
        android:label="account_settings_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_accountSettingsFragment_to_changePhoneNumberFragment"
            app:destination="@id/app_settings_change_number"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_accountSettingsFragment_to_deleteAccountFragment"
            app:destination="@id/deleteAccountFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_accountSettingsFragment_to_advancedPinSettingsActivity"
            app:destination="@id/advancedPinSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_accountSettingsFragment_to_oldDeviceTransferActivity"
            app:destination="@id/oldDeviceTransferActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <include app:graph="@navigation/app_settings_change_number" />

    <include app:graph="@navigation/boosts" />

    <fragment
        android:id="@+id/advancedPinSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedAdvancedPinPreferenceFragment"
        android:label="advanced_pin_settings_fragment" />

    <fragment
        android:id="@+id/deleteAccountFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedDeleteAccountFragment"
        android:label="delete_account_fragment"
        tools:layout="@layout/delete_account_fragment" />

    <activity
        android:id="@+id/oldDeviceTransferActivity"
        android:name="org.thoughtcrime.securesms.devicetransfer.olddevice.OldDeviceTransferActivity"
        android:label="old_device_transfer_Activity"
        tools:layout="@layout/old_device_transfer_activity" />

    <!-- CreateKbsPinActivity -->

    <!-- endregion -->

    <!-- Linked Devices -->
    <activity
        android:id="@+id/deviceActivity"
        android:name="org.thoughtcrime.securesms.DeviceActivity"
        android:label="device_activity" />

    <!-- Payments -->
    <activity
        android:id="@+id/paymentsActivity"
        android:name="org.thoughtcrime.securesms.payments.preferences.PaymentsActivity"
        android:label="payments_activity" />

    <!-- region Appearance settings and Subpages -->
    <fragment
        android:id="@+id/appearanceSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.appearance.AppearanceSettingsFragment"
        android:label="appearance_settings_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_appearanceSettings_to_wallpaperActivity"
            app:destination="@id/wallpaperActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <activity
        android:id="@+id/wallpaperActivity"
        android:name="org.thoughtcrime.securesms.wallpaper.ChatWallpaperActivity"
        android:label="wallpaper_activity" />

    <!-- endregion -->

    <!-- region Chats settings and subpages -->

    <fragment
        android:id="@+id/chatsSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.chats.ChatsSettingsFragment"
        android:label="chats_settings_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_chatsSettingsFragment_to_backupsPreferenceFragment"
            app:destination="@id/backupsPreferenceFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_chatsSettingsFragment_to_smsSettingsFragment"
            app:destination="@id/smsSettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_chatsSettingsFragment_to_editReactionsFragment"
            app:destination="@id/editReactionsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/backupsPreferenceFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedBackupsPreferenceFragment"
        android:label="backups_preference_fragment"
        tools:layout="@layout/fragment_backups" />

    <fragment
        android:id="@+id/smsSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.chats.sms.SmsSettingsFragment"
        android:label="sms_settings_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_smsSettingsFragment_to_mmsPreferencesFragment"
            app:destination="@id/mmsPreferencesFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/mmsPreferencesFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedMmsPreferencesFragment"
        android:label="mms_preferences_fragment" />

    <fragment
        android:id="@+id/editReactionsFragment"
        android:name="org.thoughtcrime.securesms.reactions.edit.EditReactionsFragment"
        android:label="edit_reactions_fragment"
        tools:layout="@layout/edit_reactions_fragment" />

    <!-- endregion -->

    <!-- Notifications -->
    <fragment
        android:id="@+id/notificationsSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.NotificationsSettingsFragment"
        android:label="notifications_settings_fragment">

        <action
            android:id="@+id/action_notificationsSettingsFragment_to_notificationProfilesFragment"
            app:destination="@id/notificationProfilesFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

    </fragment>

    <!-- region Privacy -->
    <fragment
        android:id="@+id/privacySettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.privacy.PrivacySettingsFragment"
        android:label="privacy_settings_fragment">
        <action
            android:id="@+id/action_privacySettingsFragment_to_blockedUsersActivity"
            app:destination="@id/blockedUsersActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_privacySettingsFragment_to_advancedPrivacySettingsFragment"
            app:destination="@id/advancedPrivacySettingsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_privacySettingsFragment_to_disappearingMessagesTimerSelectFragment"
            app:destination="@id/app_settings_expire_timer"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_privacySettings_to_myStorySettings"
            app:destination="@id/my_story_settings"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_privacySettings_to_newPrivateStory"
            app:destination="@id/new_story"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_privacySettings_to_privateStorySettings"
            app:destination="@id/private_story_settings"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit">

            <argument
                android:name="private_story"
                app:argType="org.thoughtcrime.securesms.database.model.DistributionListId"
                app:nullable="false" />

        </action>
    </fragment>

    <activity
        android:id="@+id/blockedUsersActivity"
        android:name="org.thoughtcrime.securesms.blocked.BlockedUsersActivity"
        android:label="blocked_users_activity" />

    <fragment
        android:id="@+id/advancedPrivacySettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.privacy.advanced.AdvancedPrivacySettingsFragment"
        android:label="advanced_privacy_settings_fragment" />

    <include app:graph="@navigation/app_settings_expire_timer" />
    <!-- endregion -->

    <!-- region Data and Storage -->

    <fragment
        android:id="@+id/dataAndStorageSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.data.DataAndStorageSettingsFragment"
        android:label="data_and_storage_settings_fragment">
        <action
            android:id="@+id/action_dataAndStorageSettingsFragment_to_storagePreferenceFragment"
            app:destination="@id/storagePreferenceFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_dataAndStorageSettingsFragment_to_editProxyFragment"
            app:destination="@id/editProxyFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/storagePreferenceFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedStoragePreferenceFragment"
        android:label="storage_preference_fragment" />

    <fragment
        android:id="@+id/editProxyFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedEditProxyFragment"
        android:label="edit_proxy_fragment" />

    <!-- endregion -->

    <!-- region Help -->
    <fragment
        android:id="@+id/helpSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.help.HelpSettingsFragment"
        android:label="help_settings_fragment">
        <action
            android:id="@+id/action_helpSettingsFragment_to_helpFragment"
            app:destination="@id/helpFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_helpSettingsFragment_to_submitDebugLogActivity"
            app:destination="@id/submitDebugLogActivity"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/helpFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.wrapped.WrappedHelpFragment"
        android:label="help_fragment">

        <argument
            android:name="start_category_index"
            android:defaultValue="0"
            app:argType="integer"
            app:nullable="false" />
    </fragment>

    <activity
        android:id="@+id/submitDebugLogActivity"
        android:name="org.thoughtcrime.securesms.logsubmit.SubmitDebugLogActivity"
        android:label="submit_debug_log_activity" />
    <!-- endregion -->

    <activity
        android:id="@+id/inviteActivity"
        android:name="org.thoughtcrime.securesms.InviteActivity"
        android:label="invite_activity"
        tools:layout="@layout/invite_activity" />

    <!-- region Direct-To-Page actions -->


    <action
        android:id="@+id/action_direct_to_backupsPreferenceFragment"
        app:destination="@id/backupsPreferenceFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_helpFragment"
        app:destination="@id/helpFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_editProxyFragment"
        app:destination="@id/editProxyFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_notificationsSettingsFragment"
        app:destination="@id/notificationsSettingsFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_changeNumberFragment"
        app:destination="@id/app_settings_change_number"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_subscriptions"
        app:destination="@id/subscribeFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit"
        app:popUpTo="@id/app_settings"
        app:popUpToInclusive="true" />

    <action
        android:id="@+id/action_direct_to_manageDonations"
        app:destination="@id/manageDonationsFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_notificationProfiles"
        app:destination="@id/notificationProfilesFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit" />

    <action
        android:id="@+id/action_direct_to_createNotificationProfiles"
        app:destination="@id/editNotificationProfileFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit"
        app:popUpTo="@id/app_settings"
        app:popUpToInclusive="true" />

    <action
        android:id="@+id/action_direct_to_notificationProfileDetails"
        app:destination="@id/notificationProfileDetailsFragment"
        app:enterAnim="@anim/fragment_open_enter"
        app:exitAnim="@anim/fragment_open_exit"
        app:popEnterAnim="@anim/fragment_close_enter"
        app:popExitAnim="@anim/fragment_close_exit"
        app:popUpTo="@id/app_settings"
        app:popUpToInclusive="true" />

    <!-- endregion -->

    <!-- Internal Settings -->

    <fragment
        android:id="@+id/internalSettingsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.internal.InternalSettingsFragment"
        android:label="internal_settings_fragment" />

    <!-- endregion -->

    <!-- Subscriptions -->
    <fragment
        android:id="@+id/manageDonationsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.manage.ManageDonationsFragment"
        android:label="manage_donations_fragment"
        tools:layout="@layout/dsl_settings_fragment">

        <action
            android:id="@+id/action_manageDonationsFragment_to_subscribeFragment"
            app:destination="@id/subscribeFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_manageDonationsFragment_to_manage_badges"
            app:destination="@id/manage_badges"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_manageDonationsFragment_to_boosts"
            app:destination="@id/boosts"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
        <action
            android:id="@+id/action_manageDonationsFragment_to_donationReceiptListFragment"
            app:destination="@id/donationReceiptListFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/donationReceiptListFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.receipts.list.DonationReceiptListFragment"
        android:label="donation_receipt_list_fragment"
        tools:layout="@layout/donation_receipt_list_fragment">
        <action
            android:id="@+id/action_donationReceiptListFragment_to_donationReceiptDetailFragment"
            app:destination="@id/donationReceiptDetailFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/donationReceiptDetailFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.receipts.detail.DonationReceiptDetailFragment"
        android:label="donation_receipt_detail_fragment"
        tools:layout="@layout/donation_receipt_detail_fragment">

        <argument
            android:name="id"
            app:argType="long" />
    </fragment>

    <fragment
        android:id="@+id/subscribeFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.subscribe.SubscribeFragment"
        android:label="subscribe_fragment"
        tools:layout="@layout/dsl_settings_fragment">
        <action
            android:id="@+id/action_subscribeFragment_to_setDonationCurrencyFragment"
            app:destination="@id/setDonationCurrencyFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_subscribeFragment_to_subscribeLearnMoreBottomSheetDialog"
            app:destination="@id/subscribeLearnMoreBottomSheetDialog" />

        <action
            android:id="@+id/action_subscribeFragment_to_subscribeThanksForYourSupportBottomSheetDialog"
            app:destination="@id/subscribeThanksForYourSupportBottomSheetDialog" />
    </fragment>

    <dialog
        android:id="@+id/setDonationCurrencyFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.currency.SetCurrencyFragment"
        android:label="set_currency_fragment"
        tools:layout="@layout/dsl_settings_fragment">

        <argument
            android:name="isBoost"
            app:argType="boolean" />

        <argument
            android:name="supportedCurrencyCodes"
            app:argType="string[]" />
    </dialog>

    <dialog
        android:id="@+id/subscribeLearnMoreBottomSheetDialog"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.subscribe.SubscribeLearnMoreBottomSheetDialogFragment"
        android:label="subscribe_learn_more_bottom_sheet_dialog"
        tools:layout="@layout/subscribe_learn_more_bottom_sheet_dialog_fragment" />

    <dialog
        android:id="@+id/subscribeThanksForYourSupportBottomSheetDialog"
        android:name="org.thoughtcrime.securesms.components.settings.app.subscription.thanks.ThanksForYourSupportBottomSheetDialogFragment"
        android:label="subscribe_thanks_for_your_support_bottom_sheet_dialog"
        tools:layout="@layout/thanks_for_your_support_bottom_sheet_dialog_fragment">

        <argument
            android:name="badge"
            app:argType="org.thoughtcrime.securesms.badges.models.Badge"
            app:nullable="false" />

        <argument
            android:name="isBoost"
            android:defaultValue="false"
            app:argType="boolean" />
    </dialog>

    <include app:graph="@navigation/manage_badges" />

    <!-- endregion -->

    <!-- Notification Profiles -->
    <fragment
        android:id="@+id/notificationProfilesFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.NotificationProfilesFragment"
        tools:layout="@layout/notification_profiles_empty">

        <action
            android:id="@+id/action_notificationProfilesFragment_to_editNotificationProfileFragment"
            app:destination="@id/editNotificationProfileFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_notificationProfilesFragment_to_notificationProfileDetailsFragment"
            app:destination="@id/notificationProfileDetailsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />
    </fragment>

    <fragment
        android:id="@+id/editNotificationProfileFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.EditNotificationProfileFragment"
        tools:layout="@layout/fragment_edit_notification_profile">

        <argument
            android:name="profileId"
            android:defaultValue="-1L"
            app:argType="long" />

        <action
            android:id="@+id/action_editNotificationProfileFragment_to_addAllowedMembersFragment"
            app:destination="@id/addAllowedMembersFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit"
            app:popUpTo="@id/editNotificationProfileFragment"
            app:popUpToInclusive="true" />

    </fragment>

    <fragment
        android:id="@+id/addAllowedMembersFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.AddAllowedMembersFragment"
        tools:layout="@layout/fragment_add_allowed_members">

        <argument
            android:name="profileId"
            app:argType="long" />

        <action
            android:id="@+id/action_addAllowedMembersFragment_to_selectRecipientsFragment"
            app:destination="@id/selectRecipientsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_addAllowedMembersFragment_to_editNotificationProfileScheduleFragment"
            app:destination="@id/editNotificationProfileScheduleFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

    </fragment>

    <fragment
        android:id="@+id/selectRecipientsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.SelectRecipientsFragment"
        tools:layout="@layout/fragment_select_recipients_fragment">

        <argument
            android:name="profileId"
            app:argType="long" />

        <argument
            android:name="currentSelection"
            android:defaultValue="@null"
            app:argType="org.thoughtcrime.securesms.recipients.RecipientId[]"
            app:nullable="true" />

    </fragment>

    <fragment
        android:id="@+id/notificationProfileDetailsFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.NotificationProfileDetailsFragment"
        tools:layout="@layout/dsl_settings_fragment">

        <argument
            android:name="profileId"
            app:argType="long" />

        <action
            android:id="@+id/action_notificationProfileDetailsFragment_to_selectRecipientsFragment"
            app:destination="@id/selectRecipientsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_notificationProfileDetailsFragment_to_editNotificationProfileFragment"
            app:destination="@id/editNotificationProfileFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

        <action
            android:id="@+id/action_notificationProfileDetailsFragment_to_editNotificationProfileScheduleFragment"
            app:destination="@id/editNotificationProfileScheduleFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit" />

    </fragment>

    <fragment
        android:id="@+id/editNotificationProfileScheduleFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.EditNotificationProfileScheduleFragment"
        tools:layout="@layout/fragment_edit_notification_profile_schedule">

        <argument
            android:name="profileId"
            app:argType="long" />

        <argument
            android:name="createMode"
            app:argType="boolean" />

        <action
            android:id="@+id/action_editNotificationProfileScheduleFragment_to_notificationProfileCreatedFragment"
            app:destination="@id/notificationProfileCreatedFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit"
            app:popUpTo="@id/addAllowedMembersFragment"
            app:popUpToInclusive="true" />

    </fragment>

    <fragment
        android:id="@+id/notificationProfileCreatedFragment"
        android:name="org.thoughtcrime.securesms.components.settings.app.notifications.profiles.NotificationProfileCreatedFragment"
        tools:layout="@layout/fragment_notification_profile_created">

        <argument
            android:name="profileId"
            app:argType="long" />

        <action
            android:id="@+id/action_notificationProfileCreatedFragment_to_notificationProfileDetailsFragment"
            app:destination="@id/notificationProfileDetailsFragment"
            app:enterAnim="@anim/fragment_open_enter"
            app:exitAnim="@anim/fragment_open_exit"
            app:popEnterAnim="@anim/fragment_close_enter"
            app:popExitAnim="@anim/fragment_close_exit"
            app:popUpTo="@id/notificationProfileCreatedFragment"
            app:popUpToInclusive="true" />

    </fragment>


    <include app:graph="@navigation/my_story_settings" />

    <include app:graph="@navigation/private_story_settings" />

    <include app:graph="@navigation/new_story" />
</navigation>