local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local v1 = require(l_script_FirstAncestor_0.Parent.React);
local _ = require(l_script_FirstAncestor_0.Common.Types);
local v3 = require(l_script_FirstAncestor_0.Hooks.useAbuseReportingDesignTokens);
local v4 = UDim2.new(1, 0, 1, 0);
return function(v5)
    local l_ReportHeader_0 = v3().ReportHeader;
    return v1.createElement("Frame", {
        Size = l_ReportHeader_0.size or v4,
        BackgroundTransparency = 1,
        LayoutOrder = v5.layoutOrder
    }, {
        Layout = v1.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        UIPadding = if not l_ReportHeader_0.verticalPadding then nil else v1.createElement("UIPadding", {
            PaddingTop = UDim.new(0, l_ReportHeader_0.verticalPadding),
            PaddingBottom = UDim.new(0, l_ReportHeader_0.verticalPadding)
        }),
        Title = v1.createElement("TextLabel", {
            AutomaticSize = Enum.AutomaticSize.XY,
            BackgroundTransparency = 1,
            Text = v5.title,
            Font = l_ReportHeader_0.titleFontStyle and l_ReportHeader_0.titleFontStyle.Font,
            TextColor3 = l_ReportHeader_0.titleTextColor and l_ReportHeader_0.titleTextColor.Color3,
            TextSize = l_ReportHeader_0.titleFontStyle and l_ReportHeader_0.titleFontStyle.FontSize,
            LineHeight = l_ReportHeader_0.titleFontStyle and l_ReportHeader_0.titleFontStyle.LineHeight,
            LayoutOrder = 1
        }),
        Subtitle = if not v5.subtitle then nil else v1.createElement("TextLabel", {
            AutomaticSize = Enum.AutomaticSize.XY,
            BackgroundTransparency = 1,
            Text = v5.subtitle,
            Font = l_ReportHeader_0.subtitleFontStyle and l_ReportHeader_0.subtitleFontStyle.Font,
            TextColor3 = l_ReportHeader_0.subtitleTextColor and l_ReportHeader_0.subtitleTextColor.Color3,
            TextSize = l_ReportHeader_0.subtitleFontStyle and l_ReportHeader_0.subtitleFontStyle.FontSize,
            LineHeight = l_ReportHeader_0.subtitleFontStyle and l_ReportHeader_0.subtitleFontStyle.LineHeight,
            LayoutOrder = 2
        }),
        Decoration = if not v5.hasDivider then nil else v1.createElement("Frame", {
            Size = UDim2.new(1, 0, 0, l_ReportHeader_0.dividerVerticalPadding or 36),
            BackgroundTransparency = 1,
            LayoutOrder = 3
        }, {
            Divider = v1.createElement("Frame", {
                Size = UDim2.new(1, 0, 0, l_ReportHeader_0.dividerHeight or 2),
                AnchorPoint = Vector2.new(0.5, 0.5),
                Position = UDim2.fromScale(0.5, 0.5),
                BackgroundColor3 = l_ReportHeader_0.dividerColor and l_ReportHeader_0.dividerColor.Color3,
                BackgroundTransparency = not not l_ReportHeader_0.dividerColor and l_ReportHeader_0.dividerColor.Transparency or 0.8
            })
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.UIBlox);
local l_useNavigator_0 = require(l_Parent_0.ServerUI).Hooks.useNavigator;
local v5 = require(l_script_FirstAncestor_0.Hooks.useAbuseReportingDesignTokens);
local l_useLocalization_0 = require(l_Parent_0.Localization).Hooks.useLocalization;
local _ = require(script.Parent.Parent.Common.Types);
local v8 = require(script.Parent.ReportStep);
local l_ScrollingListTable_0 = v3.App.Table.ScrollingListTable;
local l_CellTailDescription_0 = v3.App.Table.CellTailDescription;
local l_CellHeadDetail_0 = v3.App.Table.CellHeadDetail;
local l_Cell_0 = v3.App.Table.Cell;
local v13 = UDim2.new(1, 0, 0, 64);
return function(v14)
    local l_ReportListSelection_0 = v5().ReportListSelection;
    local v16 = {};
    local l_params_0 = v14.params;
    local v18 = l_useNavigator_0();
    if l_params_0.listItems then
        for v19, v20 in l_params_0.listItems, nil, nil do
            v16[v19] = v2.createElement(l_Cell_0, {
                size = l_ReportListSelection_0.listEntrySize or v13,
                head = v2.createElement(l_CellHeadDetail_0, {
                    labelText = v20.humanReadableText
                }),
                tail = v2.createElement(l_CellTailDescription_0, {
                    text = "",
                    showArrow = true
                }),
                background = v2.createElement("Frame", {
                    BackgroundTransparency = 1,
                    Size = UDim2.fromScale(1, 1)
                }),
                onActivated = function()
                    v14.onItemSelected(v14, v20);
                    if not v20.nextPage or not v20.nextPage.componentRefs then
                        if not v20.nextList then
                            if not (not l_params_0.nextPage or not l_params_0.nextPage.componentRefs) then
                                v18.push(l_params_0.nextPage.componentRefs);
                            end;
                            return ;
                        else
                            v18.pushParams(v20.nextList);
                            return ;
                        end;
                    else
                        v18.push(v20.nextPage.componentRefs);
                        return ;
                    end;
                end
            });
        end;
    end;
    local v21 = l_useLocalization_0({
        cancelText = "Feature.Chat.Action.Cancel",
        skipText = "Feature.VerificationUpsell.Action.GenericSkip"
    });
    local v22 = {
        {
            text = v21.cancelText,
            onActivated = function()
                v14.onCancel(v14);
            end
        }
    };
    if l_params_0.skippable then
        table.insert(v22, {
            text = v21.skipText,
            onActivated = function()
                if not (not l_params_0.nextPage or not l_params_0.nextPage.componentRefs) then
                    v18.push(l_params_0.nextPage.componentRefs);
                end;
            end
        });
    end;
    return v2.createElement(v8, {
        title = l_params_0.heading,
        buttons = v22
    }, {
        ListTable = v2.createElement(l_ScrollingListTable_0, {
            cells = v16,
            selectable = false
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local v1 = require(l_script_FirstAncestor_0.Parent.React);
local _ = require(l_script_FirstAncestor_0.Common.Types);
local v3 = require(l_script_FirstAncestor_0.Hooks.useAbuseReportingDesignTokens);
local v4 = require(l_script_FirstAncestor_0.Components.ReportActionBar);
local v5 = UDim2.fromScale(1, 1);
local v6 = UDim.new(0, 10);
return function(v7)
    local v8 = v3();
    local l_ReportStep_0 = v8.ReportStep;
    local v10 = not not l_ReportStep_0.size and l_ReportStep_0.size or v5;
    local v11 = l_ReportStep_0.verticalPadding or v6;
    local v12 = UDim.new((not not v8.ReportActionBar.size and v8.ReportActionBar.size.Y.Scale or 0) + 2 * v11.Scale, (not not v8.ReportActionBar.size and v8.ReportActionBar.size.Y.Offset or 0) + 2 * v11.Offset);
    return v1.createElement("Frame", {
        Size = v10,
        BackgroundTransparency = 1
    }, {
        Layout = v1.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            Padding = v11,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        Title = not not v7.title and v1.createElement("TextLabel", {
            AutomaticSize = Enum.AutomaticSize.XY,
            BackgroundTransparency = 1,
            Text = v7.title,
            Font = l_ReportStep_0.headerFontStyle and l_ReportStep_0.headerFontStyle.Font,
            TextColor3 = l_ReportStep_0.headerTextColor and l_ReportStep_0.headerTextColor.Color3,
            TextSize = l_ReportStep_0.headerFontStyle and l_ReportStep_0.headerFontStyle.FontSize,
            LineHeight = l_ReportStep_0.headerFontStyle and l_ReportStep_0.headerFontStyle.LineHeight,
            LayoutOrder = 1
        }) or nil,
        Body = v1.createElement("Frame", {
            LayoutOrder = 2,
            Size = UDim2.new(1, 0, 1 - v12.Scale, -v12.Offset),
            BackgroundTransparency = 1
        }, v7.children),
        Actions = v1.createElement(v4, {
            layoutOrder = 3,
            buttons = v7.buttons,
            tokens = v8.ReportActionBar
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.UIBlox);
local v4 = require(l_Parent_0.Cryo);
local v5 = require(l_Parent_0.SharedFlags);
local v6 = require(l_Parent_0.DsaIllegalContentReporting);
local v7 = require(l_script_FirstAncestor_0.Hooks.useAbuseReportingDesignTokens);
local l_useLocalization_0 = require(l_Parent_0.Localization).Hooks.useLocalization;
local v9 = require(script.Parent.ReportStep);
local _ = require(script.Parent.Parent.Common.Types);
local l_ButtonType_0 = v3.App.Button.Enum.ButtonType;
local l_GetFFlagDSAIllegalContentReporting_0 = v5.GetFFlagDSAIllegalContentReporting;
local l_isSelectedDataDSAIllegalContent_0 = v6.isSelectedDataDSAIllegalContent;
local l_isInDSAFeaturesOverrideList_0 = v6.isInDSAFeaturesOverrideList;
local v15 = UDim2.new(1, 0, 0, 100);
local v16 = UDim.new(0, 5);
return function(v17)
    local l_ReportSubmission_0 = v7().ReportSubmission;
    local l_params_0 = v17.params;
    v2.useEffect(v2.useCallback(v17.onMounted), {});
    local v20 = l_useLocalization_0({
        cancelText = "Feature.Chat.Action.Cancel"
    });
    local v21 = l_ReportSubmission_0.entrySize or v15;
    local v22 = l_ReportSubmission_0.entryInnerVerticalPadding or v16;
    local v23 = l_ReportSubmission_0.dividerVerticalPadding or 5;
    local v24 = l_ReportSubmission_0.dividerHeight or 2;
    local v25 = not not l_ReportSubmission_0.dividerColor and l_ReportSubmission_0.dividerColor.Transparency or 0.8;
    local v26 = {};
    for _, v28 in v17.report, nil, nil do
        table.insert(v26, (v2.createElement("Frame", {
            Size = v21,
            BackgroundTransparency = 1,
            LayoutOrder = v28.index,
            AutomaticSize = Enum.AutomaticSize.None
        }, {
            Layout = v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                VerticalAlignment = Enum.VerticalAlignment.Center,
                SortOrder = Enum.SortOrder.LayoutOrder,
                Padding = v22
            }),
            Title = v2.createElement("TextLabel", {
                AutomaticSize = Enum.AutomaticSize.Y,
                Size = UDim2.fromScale(1, 0),
                BackgroundTransparency = 1,
                Text = v28.heading,
                Font = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.Font,
                TextXAlignment = Enum.TextXAlignment.Left,
                TextColor3 = l_ReportSubmission_0.entryTitleColor and l_ReportSubmission_0.entryTitleColor.Color3,
                TextSize = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.FontSize,
                LineHeight = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.LineHeight,
                LayoutOrder = 1
            }),
            Subtitle = v2.createElement("TextLabel", {
                AutomaticSize = Enum.AutomaticSize.Y,
                Size = UDim2.fromScale(1, 0),
                BackgroundTransparency = 1,
                Text = v28.humanReadableText,
                Font = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.Font,
                TextXAlignment = Enum.TextXAlignment.Left,
                TextColor3 = l_ReportSubmission_0.entryTextColor and l_ReportSubmission_0.entryTextColor.Color3,
                TextSize = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.FontSize,
                LineHeight = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.LineHeight,
                LayoutOrder = 2
            }),
            Decoration = v2.createElement("Frame", {
                Size = UDim2.new(1, 0, 0, v23),
                BackgroundTransparency = 1,
                LayoutOrder = 3
            }, {
                Divider = v2.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, v24),
                    AnchorPoint = Vector2.new(0.5, 0.5),
                    Position = UDim2.fromScale(0.5, 0.5),
                    BackgroundColor3 = l_ReportSubmission_0.dividerColor and l_ReportSubmission_0.dividerColor.Color3,
                    BackgroundTransparency = v25
                })
            })
        })));
    end;
    local v29 = {
        {
            text = v20.cancelText,
            onActivated = function()
                v17.onCancel(v17);
            end
        }
    };
    local v30;
    if not l_GetFFlagDSAIllegalContentReporting_0() then
        v30 = l_isInDSAFeaturesOverrideList_0();
        if not v30 then
            goto label0;
        end;
    end;
    v30 = false;
    if l_params_0.text ~= "" then
        v30 = l_isSelectedDataDSAIllegalContent_0(v17.report);
    end;
    ::label0::;
    if not v30 then
        table.insert(v29, {
            text = l_params_0.buttonText,
            buttonType = l_ButtonType_0.PrimarySystem,
            onActivated = function()
                v17.onSubmit(v17);
            end
        });
    else
        table.insert(v26, (v2.createElement("Frame", {
            Size = UDim2.new(1, 0, 0, 0),
            BackgroundTransparency = 1,
            LayoutOrder = 10,
            AutomaticSize = Enum.AutomaticSize.Y
        }, {
            UIListLayout = v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Horizontal,
                VerticalAlignment = Enum.VerticalAlignment.Center,
                HorizontalAlignment = Enum.HorizontalAlignment.Center
            }),
            Text = v2.createElement("TextLabel", {
                AutomaticSize = Enum.AutomaticSize.Y,
                Size = UDim2.new(0, 800, 0, 100),
                BackgroundTransparency = 1,
                Text = l_params_0.text,
                TextWrapped = true,
                Font = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.Font,
                TextXAlignment = Enum.TextXAlignment.Center,
                TextColor3 = l_ReportSubmission_0.entryTitleColor and l_ReportSubmission_0.entryTitleColor.Color3,
                TextSize = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.FontSize,
                LineHeight = l_ReportSubmission_0.entryFontStyle and l_ReportSubmission_0.entryFontStyle.LineHeight,
                LayoutOrder = 1
            })
        })));
    end;
    return v2.createElement(v9, {
        title = l_params_0.heading,
        buttons = v29
    }, v4.Dictionary.join({
        Layout = v2.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            SortOrder = Enum.SortOrder.LayoutOrder
        })
    }, v26 or {}));
end;


local l_CorePackages_0 = game:GetService("CorePackages");
local _ = require(l_CorePackages_0.Workspace.Packages.RobloxAppHooks);
local _ = require(l_CorePackages_0.Workspace.Packages.Style);
return function(_, v4)
    return {
        ReportBackground = {
            backgroundColor = v4.Global.Color.Black,
            gradientRotation = 90,
            gradientTransparency = NumberSequence.new({
                NumberSequenceKeypoint.new(0, 0.5),
                NumberSequenceKeypoint.new(0.5, 0.5),
                NumberSequenceKeypoint.new(1, 1)
            })
        },
        ReportHeader = {
            size = UDim2.new(0.9, 0, 0, 200),
            verticalPadding = 36,
            titleFontStyle = v4.Semantic.Typography.Title,
            subtitleFontStyle = v4.Semantic.Typography.Header,
            titleTextColor = v4.Semantic.Color.Text.Emphasis,
            subtitleTextColor = v4.Semantic.Color.Text.Default,
            dividerColor = v4.Semantic.Color.Common.Divider,
            dividerHeight = 2,
            dividerVerticalPadding = 36
        },
        ReportActionBar = {
            size = UDim2.new(0.33, 0, 0, 200),
            buttonListHorizontalPadding = v4.Global.Space_100,
            buttonHeight = v4.Global.Size_450,
            buttonWidth = 450
        },
        ReportStep = {
            size = UDim2.new(0.75, 0, 0.7, 0),
            headerFontStyle = v4.Semantic.Typography.Header,
            headerTextColor = v4.Semantic.Color.Text.Emphasis,
            verticalPadding = UDim.new(0, 24)
        },
        ReportListSelection = {
            listEntrySize = UDim2.new(1, 0, 0, 64)
        },
        ReportSubmission = {
            entrySize = UDim2.new(0.6, 0, 0, 100),
            entryTitleColor = v4.Semantic.Color.Text.Default,
            entryTextColor = v4.Semantic.Color.Text.Emphasis,
            entryFontStyle = v4.Semantic.Typography.Subheader,
            entryInnerVerticalPadding = UDim.new(0, 5),
            dividerColor = v4.Semantic.Color.Common.Divider,
            dividerHeight = 2,
            dividerVerticalPadding = 5
        }
    };
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local v1 = require(l_script_FirstAncestor_0.Parent.Cryo);
local _ = require(l_script_FirstAncestor_0.Common.Types);
local v3 = {
    UserProfile = "user_profile",
    Place = "place"
};
local v4 = {
    Experience = "experience",
    Profile = "profile",
    Item = "item"
};
local v5 = {
    AssetId = "REPORT_TARGET_ASSET_ID",
    UserId = "REPORT_TARGET_USER_ID"
};
local function v12(v6)
    local v7 = {};
    for _, v9 in v6, nil, nil do
        if v9.tagValues then
            for _, v11 in v9.tagValues, nil, nil do
                table.insert(v7, {
                    data = v11
                });
            end;
        end;
    end;
    return v7;
end;
local function _(v13)
    return function(v14)
        return {
            REPORTED_ABUSE_VECTOR = {
                valueList = {
                    {
                        data = if v14.context == v4.Experience then v3.Place else if v14.context == v4.Profile then v3.UserProfile else v14.reportAbuseVector
                    }
                }
            },
            [v13] = {
                valueList = {
                    {
                        data = v14.assetId
                    }
                }
            }
        };
    end;
end;
local v16 = {};
local l_AssetId_0 = v5.AssetId;
local l_l_AssetId_0_0 = l_AssetId_0 --[[ copy: 11 -> 12 ]];
v16.item = function(v19)
    return {
        REPORTED_ABUSE_VECTOR = {
            valueList = {
                {
                    data = if v19.context == v4.Experience then v3.Place else if v19.context == v4.Profile then v3.UserProfile else v19.reportAbuseVector
                }
            }
        },
        [l_l_AssetId_0_0] = {
            valueList = {
                {
                    data = v19.assetId
                }
            }
        }
    };
end;
l_AssetId_0 = v5.UserId;
local l_l_AssetId_0_1 = l_AssetId_0 --[[ copy: 11 -> 13 ]];
v16.profile = function(v21)
    return {
        REPORTED_ABUSE_VECTOR = {
            valueList = {
                {
                    data = if v21.context == v4.Experience then v3.Place else if v21.context == v4.Profile then v3.UserProfile else v21.reportAbuseVector
                }
            }
        },
        [l_l_AssetId_0_1] = {
            valueList = {
                {
                    data = v21.assetId
                }
            }
        }
    };
end;
l_AssetId_0 = v5.AssetId;
v16.experience = function(v22)
    return {
        REPORTED_ABUSE_VECTOR = {
            valueList = {
                {
                    data = if v22.context == v4.Experience then v3.Place else if v22.context == v4.Profile then v3.UserProfile else v22.reportAbuseVector
                }
            }
        },
        [l_AssetId_0] = {
            valueList = {
                {
                    data = v22.assetId
                }
            }
        }
    };
end;
return function(v23, v24)
    local v25 = {
        ENTRY_POINT = {
            valueList = {
                {
                    data = v24.platform
                }
            }
        },
        REPORTED_ABUSE_CATEGORY = {
            valueList = v12(v23)
        }
    };
    local v26 = v16[v24.context];
    if v26 then
        v25 = v1.Dictionary.join(v26(v24), v25);
    end;
    return v25;
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local l_CorePackages_0 = game:GetService("CorePackages");
local v2 = require(l_CorePackages_0.Packages.React);
local l_useDesignTokens_0 = require(l_CorePackages_0.Workspace.Packages.Style).useDesignTokens;
local _ = require(l_script_FirstAncestor_0.Common.Types);
local function v6(v5)
    return v5.LuaApps.AbuseReporting or {
        ReportBackground = {},
        ReportHeader = {},
        ReportActionBar = {},
        ReportStep = {},
        ReportListSelection = {},
        ReportSubmission = {}
    };
end;
return function()
    local v7 = l_useDesignTokens_0(v6);
    local l_backgroundColor_0 = v7.ReportBackground.backgroundColor;
    local l_gradientRotation_0 = v7.ReportBackground.gradientRotation;
    local l_gradientTransparency_0 = v7.ReportBackground.gradientTransparency;
    local v11 = {
        backgroundColor = l_backgroundColor_0,
        gradientRotation = l_gradientRotation_0,
        gradientTransparency = l_gradientTransparency_0
    };
    local l_size_0 = v7.ReportHeader.size;
    local l_verticalPadding_0 = v7.ReportHeader.verticalPadding;
    local l_titleFontStyle_0 = v7.ReportHeader.titleFontStyle;
    local l_subtitleFontStyle_0 = v7.ReportHeader.subtitleFontStyle;
    local l_titleTextColor_0 = v7.ReportHeader.titleTextColor;
    local l_subtitleTextColor_0 = v7.ReportHeader.subtitleTextColor;
    local l_dividerColor_0 = v7.ReportHeader.dividerColor;
    local l_dividerHeight_0 = v7.ReportHeader.dividerHeight;
    local l_dividerVerticalPadding_0 = v7.ReportHeader.dividerVerticalPadding;
    local v21 = {
        size = l_size_0,
        verticalPadding = l_verticalPadding_0,
        titleFontStyle = l_titleFontStyle_0,
        subtitleFontStyle = l_subtitleFontStyle_0,
        titleTextColor = l_titleTextColor_0,
        subtitleTextColor = l_subtitleTextColor_0,
        dividerColor = l_dividerColor_0,
        dividerHeight = l_dividerHeight_0,
        dividerVerticalPadding = l_dividerVerticalPadding_0
    };
    local l_size_1 = v7.ReportActionBar.size;
    local l_buttonListHorizontalPadding_0 = v7.ReportActionBar.buttonListHorizontalPadding;
    local l_buttonHeight_0 = v7.ReportActionBar.buttonHeight;
    local l_buttonWidth_0 = v7.ReportActionBar.buttonWidth;
    local v26 = {
        size = l_size_1,
        buttonListHorizontalPadding = l_buttonListHorizontalPadding_0,
        buttonHeight = l_buttonHeight_0,
        buttonWidth = l_buttonWidth_0
    };
    local l_size_2 = v7.ReportStep.size;
    local l_headerFontStyle_0 = v7.ReportStep.headerFontStyle;
    local l_headerTextColor_0 = v7.ReportStep.headerTextColor;
    local l_verticalPadding_1 = v7.ReportStep.verticalPadding;
    local v31 = {
        size = l_size_2,
        headerFontStyle = l_headerFontStyle_0,
        headerTextColor = l_headerTextColor_0,
        verticalPadding = l_verticalPadding_1
    };
    local l_listEntrySize_0 = v7.ReportListSelection.listEntrySize;
    local v33 = {
        listEntrySize = l_listEntrySize_0
    };
    local l_entryTitleColor_0 = v7.ReportSubmission.entryTitleColor;
    local l_entryTextColor_0 = v7.ReportSubmission.entryTextColor;
    local l_entryFontStyle_0 = v7.ReportSubmission.entryFontStyle;
    local l_entrySize_0 = v7.ReportSubmission.entrySize;
    local l_entryInnerVerticalPadding_0 = v7.ReportSubmission.entryInnerVerticalPadding;
    local l_dividerHeight_1 = v7.ReportSubmission.dividerHeight;
    local l_dividerColor_1 = v7.ReportSubmission.dividerColor;
    local l_dividerVerticalPadding_1 = v7.ReportSubmission.dividerVerticalPadding;
    return v2.useMemo(function()
        return {
            ReportBackground = {
                backgroundColor = l_backgroundColor_0,
                gradientRotation = l_gradientRotation_0,
                gradientTransparency = l_gradientTransparency_0
            },
            ReportHeader = {
                size = l_size_0,
                verticalPadding = l_verticalPadding_0,
                titleFontStyle = l_titleFontStyle_0,
                subtitleFontStyle = l_subtitleFontStyle_0,
                titleTextColor = l_titleTextColor_0,
                subtitleTextColor = l_subtitleTextColor_0,
                dividerColor = l_dividerColor_0,
                dividerHeight = l_dividerHeight_0,
                dividerVerticalPadding = l_dividerVerticalPadding_0
            },
            ReportActionBar = {
                size = l_size_1,
                buttonListHorizontalPadding = l_buttonListHorizontalPadding_0,
                buttonHeight = l_buttonHeight_0,
                buttonWidth = l_buttonWidth_0
            },
            ReportStep = {
                size = l_size_2,
                headerFontStyle = l_headerFontStyle_0,
                headerTextColor = l_headerTextColor_0,
                verticalPadding = l_verticalPadding_1
            },
            ReportListSelection = {
                listEntrySize = l_listEntrySize_0
            },
            ReportSubmission = {
                entrySize = l_entrySize_0,
                entryTitleColor = l_entryTitleColor_0,
                entryTextColor = l_entryTextColor_0,
                entryFontStyle = l_entryFontStyle_0,
                entryInnerVerticalPadding = l_entryInnerVerticalPadding_0,
                dividerHeight = l_dividerHeight_1,
                dividerColor = l_dividerColor_1,
                dividerVerticalPadding = l_dividerVerticalPadding_1
            }
        };
    end, {
        v11,
        v21,
        v26,
        v31,
        v33,
        {
            entrySize = l_entrySize_0,
            entryTitleColor = l_entryTitleColor_0,
            entryTextColor = l_entryTextColor_0,
            entryFontStyle = l_entryFontStyle_0,
            entryInnerVerticalPadding = l_entryInnerVerticalPadding_0,
            dividerHeight = l_dividerHeight_1,
            dividerColor = l_dividerColor_1,
            dividerVerticalPadding = l_dividerVerticalPadding_1
        }
    });
end;


local l_LocalizationService_0 = game:GetService("LocalizationService");
local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v3 = require(l_Parent_0.React);
local v4 = require(l_script_FirstAncestor_0.Analytics);
local v5 = require(l_Parent_0.ServerUI);
local l_ReactServerUIView_0 = v5.ReactServerUIView;
local v7 = require(l_Parent_0.Cryo);
local l_Navigation_0 = v5.Navigation;
local v9 = require(l_Parent_0.HttpRequest);
local v10 = require(l_Parent_0.RoduxNetworking);
local v11 = require(l_Parent_0.ReactFocusNavigation);
local l_FocusNavigationEventNameEnum_0 = require(l_Parent_0.FocusNavigationUtils).FocusNavigationEventNameEnum;
local v13 = require(l_Parent_0.InputHandlers);
local v14 = require(l_Parent_0.ToastRodux);
local _ = require(l_script_FirstAncestor_0.Common.Types);
local l_useState_0 = v3.useState;
local l_useDispatch_0 = require(l_Parent_0.RoactUtils).Hooks.RoactRodux.useDispatch;
local v18 = require(l_script_FirstAncestor_0.Common.Constants);
local l_useNavigation_0 = require(l_Parent_0.RoactUtils).Hooks.useNavigation;
local v20 = require(l_script_FirstAncestor_0.Templates.ReportFullscreenTemplate);
local v21 = require(l_script_FirstAncestor_0.Transformers.DynamicDialogUITransformer);
local v22 = require(l_script_FirstAncestor_0.Components.ReportListSelection);
local v23 = require(l_script_FirstAncestor_0.Components.ReportSubmission);
local v24 = require(l_script_FirstAncestor_0.Components.constructAbuseReportTags);
local l_GetFFlagDSALuaGeoGateBEDUIDevMode_0 = require(l_Parent_0.SharedFlags).GetFFlagDSALuaGeoGateBEDUIDevMode;
local l_isInDSAFeaturesOverrideList_0 = require(l_Parent_0.DsaIllegalContentReporting).isInDSAFeaturesOverrideList;
local l_isShowEUDSAIllegalContentReportingLink_0 = require(l_Parent_0.DsaIllegalContentReporting).isShowEUDSAIllegalContentReportingLink;
local v28 = {
    ListSelection = "listSelection",
    Submission = "submission"
};
local v29 = {
    toastMessage = "Feature.ReportAbuse.Label.Confirmation.Title",
    toastSubMessage = "Feature.ReportAbuse.Label.Confirmation.Subheading",
    isLocalized = false,
    toastType = v14.Enums.ToastType.SuccessConfirmation
};
local v30 = {
    toastMessage = "Feature.ReportAbuse.Message.ErrorSubmit",
    isLocalized = false,
    toastType = v14.Enums.ToastType.NetworkingError
};
local function v64(v31)
    local v32 = l_useDispatch_0();
    local v33, v34 = l_useState_0({});
    local v35 = nil;
    local function _()
        if not v35 then
            v35 = v4.new(v31.platform, v31.context);
        end;
        return v35;
    end;
    local function _(v37, v38)
        v34(function(v39)
            local v40 = table.clone(v39);
            table.insert(v40, v7.Dictionary.join(v38, {
                tagKey = v37
            }));
            return v40;
        end);
    end;
    local v43 = v11.useEventHandler(l_FocusNavigationEventNameEnum_0.NavigateBack, (v3.useCallback(v13.onRelease(function(_)
        if not v35 then
            v35 = v4.new(v31.platform, v31.context);
        end;
        v35:onReportAbandoned();
    end), {
        v35
    })));
    local v44 = v10.config({
        keyPath = "AbuseReporting",
        networkImpl = v9.config({
            requestFunction = v9.requestFunctions.HttpRbxApi
        })
    });
    local v58 = v21.new({
        componentMap = {
            [v28.ListSelection] = {
                name = v28.ListSelection,
                component = v22,
                props = {
                    onItemSelected = function(v45, v46)
                        local l_params_0 = v45.params;
                        local l_tagKey_0 = l_params_0.tagKey;
                        local v49 = {
                            tagValues = v46.tagValues,
                            heading = l_params_0.heading,
                            humanReadableText = v46.humanReadableText
                        };
                        v34(function(v50)
                            local v51 = table.clone(v50);
                            table.insert(v51, v7.Dictionary.join(v49, {
                                tagKey = l_tagKey_0
                            }));
                            return v51;
                        end);
                        if not v35 then
                            v35 = v4.new(v31.platform, v31.context);
                        end;
                        v35:onSingleListItemSelected();
                    end,
                    onCancel = function()
                        if not v35 then
                            v35 = v4.new(v31.platform, v31.context);
                        end;
                        v35:onReportAbandoned();
                        v31.navigation.goBack();
                    end
                }
            },
            [v28.Submission] = {
                name = v28.Submission,
                component = v23,
                props = {
                    onCancel = function()
                        if not v35 then
                            v35 = v4.new(v31.platform, v31.context);
                        end;
                        v35:onReportAbandoned();
                        v31.navigation.goBack();
                    end,
                    onMounted = function()
                        if not v35 then
                            v35 = v4.new(v31.platform, v31.context);
                        end;
                        v35:onSubmissionPageMount();
                    end,
                    onSubmit = function(v52)
                        local l_url_0 = v52.params.url;
                        local v54 = {
                            safetyEvent = {
                                tags = v24(v52.report, {
                                    context = v31.context,
                                    platform = v31.platform,
                                    assetId = v31.assetId,
                                    reportAbuseVector = v31.reportAbuseVector
                                })
                            }
                        };
                        v32(v44.POST({
                            Name = "SubmitAbuseReport"
                        }, function(v55)
                            return v55(l_url_0):body(v54);
                        end).API()):andThen(function(_)
                            v32(v14.Actions.SetCurrentToastMessage(v29));
                        end):catch(function(_)
                            v32(v14.Actions.SetCurrentToastMessage(v30));
                        end);
                        if not v35 then
                            v35 = v4.new(v31.platform, v31.context);
                        end;
                        v35:onReportSubmitted();
                        v31.navigation.goBack();
                    end
                }
            }
        },
        templateMap = {
            default = {
                component = v20
            }
        }
    });
    local function v60(v59)
        if v59.name == v28.Submission then
            return {
                report = v33
            };
        else
            return {};
        end;
    end;
    local l_V1_0 = v18.BEDUI_VERSIONS.V1;
    if not l_GetFFlagDSALuaGeoGateBEDUIDevMode_0() then
        if l_isInDSAFeaturesOverrideList_0() then
            l_V1_0 = v18.BEDUI_VERSIONS.DEV;
        end;
    elseif l_isShowEUDSAIllegalContentReportingLink_0() then
        l_V1_0 = v18.BEDUI_VERSIONS.DEV;
    end;
    return v3.createElement(l_ReactServerUIView_0, {
        url = "abuse-reporting/v1/dynamic-dialog",
        queryArgs = {
            version = l_V1_0,
            surface = v31.platform,
            context = v31.context,
            locale = l_LocalizationService_0.RobloxLocaleId,
            target_type = v31.reportAbuseVector,
            target_id = v31.assetId
        },
        mapComponentPropsFromState = v60,
        transform = function(v62)
            return v58:transform(v62);
        end,
        onError = function(_)
            v32(v14.Actions.SetCurrentToastMessage(v30));
            v31.navigation.goBack();
        end,
        ref = v43
    });
end;
return function(v65)
    local v66 = l_useNavigation_0();
    return v3.createElement(l_Navigation_0, {}, {
        Screen = v3.createElement(v64, v7.Dictionary.join(v65, v66.getParam("reportData", {}), {
            navigation = v66
        }))
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("AbuseReporting");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.Cryo);
local v4 = require(l_script_FirstAncestor_0.Hooks.useAbuseReportingDesignTokens);
local v5 = require(l_script_FirstAncestor_0.Components.ReportHeader);
return v2.forwardRef(function(v6, v7)
    local v8 = v4();
    local v9 = UDim.new(not v8.ReportHeader.size and 0 or v8.ReportHeader.size.Y.Scale, not v8.ReportHeader.size and 0 or v8.ReportHeader.size.Y.Offset);
    return v2.createElement("Frame", {
        Size = UDim2.fromScale(1, 1),
        BackgroundColor3 = v8.ReportBackground.backgroundColor and v8.ReportBackground.backgroundColor.Color3,
        ref = v7
    }, {
        Gradient = v2.createElement("UIGradient", {
            Rotation = v8.ReportBackground.gradientRotation,
            Transparency = v8.ReportBackground.gradientTransparency
        }),
        Layout = v2.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        Header = v2.createElement(v5, {
            title = v6.title,
            subtitle = v6.subtitle,
            layoutOrder = 1,
            hasDivider = true
        }),
        Body = v2.createElement("Frame", {
            Size = UDim2.new(1, 0, 1 - v9.Scale, -v9.Offset),
            BackgroundTransparency = 1,
            LayoutOrder = 2
        }, v3.Dictionary.join({
            Layout = v6.children and v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                SortOrder = Enum.SortOrder.LayoutOrder
            } or nil)
        }, v6.children or {}))
    });
end);


local l_Parent_0 = script:FindFirstAncestor("AbuseReporting").Parent;
local v1 = require(l_Parent_0.ServerUI);
local v2 = require(l_Parent_0.Cryo);
local l_Constants_0 = v1.Constants;
local v4 = {};
v4.__index = v4;
v4.new = function(v5)
    local v6 = {
        templateMap = v5.templateMap,
        componentMap = v5.componentMap,
        defaultTemplateName = v5.defaultTemplateName or l_Constants_0.DEFAULT_TEMPLATE_NAME
    };
    setmetatable(v6, v4);
    return v6;
end;
v4.transform = function(v7, v8)
    local v9 = {
        name = not not v7.templateMap[v7.defaultTemplateName] and v7.templateMap[v7.defaultTemplateName].name or v7.defaultTemplateName,
        component = v7.templateMap[v7.defaultTemplateName].component,
        props = {},
        children = {}
    };
    local v10 = {
        templates = {
            [v9.name] = v9
        },
        components = {}
    };
    if not (not v8.dialog or not v8.dialog.componentRefs) then
        for _, v12 in ipairs(v8.dialog.componentRefs) do
            if v7.componentMap[v12] then
                table.insert(v9.children, v12);
            end;
        end;
    end;
    if v8.components then
        if v8.components.title then
            v9.props.title = v8.components.title.text;
        end;
        if v8.components.subtitle then
            v9.props.subtitle = v8.components.subtitle.text;
        end;
        if v8.components.artifacts then
            v9.props.artifacts = v8.components.artifacts;
        end;
        for v13, v14 in v7.componentMap, nil, nil do
            local v15 = v8.components[v13];
            if v15 then
                local v16 = v14.name or v13;
                v10.components[v16] = {
                    name = v16,
                    component = v14.component,
                    props = v2.Dictionary.join({
                        params = v15
                    }, v14.props or {})
                };
            end;
        end;
    end;
    return v10;
end;
return v4;


return {
    ReportScreen = require(script.Screens.ReportScreen),
    abuseReportingTokenMapper = require(script.Components.abuseReportingTokenMapper)
};


local l_Parent_0 = script.Parent.Parent;
return {
    projects = {
        require(l_Parent_0.PhoneUpsell)["jest.config"],
        require(l_Parent_0.AmpUpsell)["jest.config"]
    }
};


local v0 = require(script.Parent.Parent.dependencies);
local v1 = require(script.Parent.EventConstants);
local v2 = v0.Analytics.AnalyticsReporters.EventIngest.new((game:GetService("EventIngestService")));
return {
    sendPageLoadEvent = function(v3, v4, v5)
        v2:sendEventDeferred(v3, v1.eventNames.pageLoad, {
            origin = v4,
            state = v5
        });
    end,
    sendSelectEvent = function(v6, v7, v8)
        v2:sendEventDeferred(v6, v1.eventNames.buttonClick, {
            origin = v7,
            btn = v1.btn.select,
            state = v8
        });
    end,
    sendModalShownEvent = function(v9, v10)
        v2:sendEventDeferred(v9, v1.eventNames.modalShown, {
            origin = v10
        });
    end,
    sendButtonClickEvent = function(v11, v12, v13)
        v2:sendEventDeferred(v11, v1.eventNames.buttonClick, {
            origin = v12,
            btn = v13
        });
    end
};


return {
    eventNames = {
        buttonClick = "authButtonClick",
        pageLoad = "authPageload",
        modalShown = "authModalShown"
    },
    btn = {
        select = "select",
        addAccount = "addAccount",
        login = "login",
        signup = "signup"
    },
    ctx = {
        accountSwitcherAddAccount = "accountSwitcherAddAccount"
    }
};


local v0 = require(script.Parent.Parent.dependencies);
local l_React_0 = v0.React;
local l_UIBlox_0 = v0.UIBlox;
local l_Cell_0 = l_UIBlox_0.App.Table.Cell;
local l_LoadableImage_0 = l_UIBlox_0.App.Loading.LoadableImage;
local l_StyledTextLabel_0 = l_UIBlox_0.App.Text.StyledTextLabel;
local l_Images_0 = l_UIBlox_0.App.ImageSet.Images;
local l_ImageSetLabel_0 = l_UIBlox_0.Core.ImageSet.ImageSetLabel;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local l_getStandardSizeAvatarHeadShotRbxthumb_0 = v0.UserLib.Utils.getStandardSizeAvatarHeadShotRbxthumb;
local l_useState_0 = l_React_0.useState;
local l_useDesignTokens_0 = v0.Style.useDesignTokens;
local v12 = require(script.Parent.SelectionRow);
local v13 = game:DefineFastFlag("ShouldUseSelectionRowInAccountSelectionRelease1", false);
return function(v14)
    local v15 = l_useStyle_0();
    local v16 = l_useDesignTokens_0();
    local v17, v18 = l_useState_0(false);
    local function v19()
        if not (v14.isDisabled or v14.user.isUnselectable) then
            v18(true);
            v14.onAccountSelection(v14.user.id);
        end;
    end;
    if not v13 then
        local function v20()
            return l_React_0.createElement(l_LoadableImage_0, {
                Size = UDim2.new(0, 48, 0, 48),
                Image = l_getStandardSizeAvatarHeadShotRbxthumb_0((tostring(v14.user.id))),
                useShimmerAnimationWhileLoading = true,
                cornerRadius = UDim.new(0.5, 0),
                shouldHandleReloads = true
            });
        end;
        local function v21()
            return l_React_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = v16.Global.Opacity_0
            }, {
                VerticalLayout = l_React_0.createElement("UIListLayout", {
                    SortOrder = Enum.SortOrder.LayoutOrder,
                    FillDirection = Enum.FillDirection.Vertical,
                    HorizontalAlignment = Enum.HorizontalAlignment.Left
                }),
                DisplayName = l_React_0.createElement(l_StyledTextLabel_0, {
                    text = v14.user.displayName,
                    fontStyle = v15.Font.Header2,
                    colorStyle = v15.Theme.TextEmphasis,
                    layoutOrder = 0
                }),
                UserName = l_React_0.createElement(l_StyledTextLabel_0, {
                    text = "@" .. v14.user.name,
                    fontStyle = v15.Font.Body,
                    colorStyle = v15.Theme.TextDefault,
                    layoutOrder = 1
                })
            });
        end;
        return l_React_0.createElement(l_Cell_0, {
            onActivated = v19,
            isSelected = v17,
            head = (function()
                return l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 1, 0),
                    BackgroundTransparency = v16.Global.Opacity_0
                }, {
                    Layout = l_React_0.createElement("UIListLayout", {
                        FillDirection = Enum.FillDirection.Horizontal,
                        HorizontalAlignment = Enum.HorizontalAlignment.Center,
                        Padding = UDim.new(0, v16.Global.Space_100)
                    }),
                    AvatarThumbnail = v20(),
                    Names = v21()
                });
            end)(),
            tail = not not v17 and l_React_0.createElement(l_ImageSetLabel_0, {
                Size = UDim2.fromOffset(28, 28),
                Image = l_Images_0["icons/status/success_large"],
                ImageColor3 = v15.Theme.Success.Color,
                BackgroundTransparency = 1
            }) or l_React_0.createElement("Frame"),
            background = (function()
                return l_React_0.createElement("Frame", {
                    Size = UDim2.fromScale(1, 1),
                    BackgroundColor3 = v15.Theme.BackgroundUIDefault.Color,
                    BackgroundTransparency = v15.Theme.BackgroundUIDefault.BackgroundTransparency,
                    BorderColor3 = v15.Theme.BackgroundUIDefault.Color
                });
            end)(),
            size = UDim2.new(1, 0, 0, v16.Global.Size_800)
        });
    else
        return l_React_0.createElement(v12, {
            titleContent = v14.user.displayName,
            subtitleContent = "@" .. (v14.user.name or ""),
            renderImage = function()
                return l_React_0.createElement(l_LoadableImage_0, {
                    Size = UDim2.new(0, 48, 0, 48),
                    Image = l_getStandardSizeAvatarHeadShotRbxthumb_0((tostring(v14.user.id))),
                    useShimmerAnimationWhileLoading = true,
                    cornerRadius = UDim.new(0.5, 0),
                    shouldHandleReloads = true
                });
            end,
            iconKey = v14.user.iconKey,
            onAccountSelection = v19,
            userInteractionEnabled = not v14.user.isUnselectable
        });
    end;
end;


local v0 = require(script.Parent.Parent.dependencies);
local l_React_0 = v0.React;
local l_UIBlox_0 = v0.UIBlox;
local l_Dash_0 = v0.Dash;
local l_ScrollingListTable_0 = l_UIBlox_0.App.Table.ScrollingListTable;
local l_ListTable_0 = l_UIBlox_0.App.Table.ListTable;
local v6 = require(script.Parent.AccountSelection);
local v7 = game:DefineFastFlag("DisableAccountSelectionListScrollingRelease2", false);
return function(v8)
    local function v10(v9)
        return l_React_0.createElement(v6, {
            user = v9,
            onAccountSelection = v8.onAccountSelection,
            isDisabled = v8.isDisabled
        });
    end;
    if v7 and not v8.isScrollable then
        return l_React_0.createElement(l_ListTable_0, {
            size = UDim2.new(1, 0, 0, v8.height),
            showDividers = false,
            cells = l_Dash_0.map(v8.users, v10)
        });
    else
        return l_React_0.createElement(l_ScrollingListTable_0, {
            size = UDim2.new(1, 0, 0, v8.height),
            cells = l_Dash_0.map(v8.users, v10)
        });
    end;
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_React_0 = v1.React;
local l_UIBlox_0 = v1.UIBlox;
local l_PartialPageModal_0 = l_UIBlox_0.App.Dialog.Modal.PartialPageModal;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local l_useState_0 = l_React_0.useState;
local l_useEffect_0 = l_React_0.useEffect;
local l_useLocalization_0 = v1.Localization.Hooks.useLocalization;
local l_useDesignTokens_0 = v1.Style.useDesignTokens;
local v10 = require(script.Parent.AccountSelectionList);
local _ = require(script.Parent.AccountSelection);
local v12 = require(l_Parent_0.Analytics.AnalyticsEvents);
return function(v13)
    local v14 = l_useStyle_0();
    local v15 = l_useDesignTokens_0();
    local v16, v17 = l_useState_0(false);
    local l_BaseSize_0 = v14.Font.BaseSize;
    local l_Size_800_0 = v15.Global.Size_800;
    local v20 = #v13.users < 7 and l_Size_800_0 * #v13.users or l_Size_800_0 * 7.5;
    local v21 = l_useLocalization_0({
        titleText = v13.titleTextKey,
        helpText = v13.helpTextKey
    });
    local v22 = l_PartialPageModal_0:getMiddleContentWidth(v13.screenSize.X);
    local v23 = l_React_0.useRef(false);
    l_useEffect_0(function()
        local v24 = "";
        for _, v26 in v13.users, nil, nil do
            v24 = v24 .. tostring(v26.id) .. ",";
        end;
        v12.sendPageLoadEvent(v13.context, v13.origin, (v24:sub(1, -2)));
        return function()
            if not v23.current then
                v13.onAccountSelectionAbandoned();
            end;
        end;
    end, {});
    return l_React_0.createElement(l_PartialPageModal_0, {
        screenSize = v13.screenSize,
        title = v21.titleText,
        onCloseClicked = v13.onAccountSelectionAbandoned
    }, {
        ViewContainer = l_React_0.createElement("Frame", {
            Size = UDim2.new(1, 0, 0, 0),
            BackgroundTransparency = 1,
            AutomaticSize = Enum.AutomaticSize.Y
        }, {
            ContentPadding = l_React_0.createElement("UIPadding", {
                PaddingTop = UDim.new(0, 12),
                PaddingBottom = UDim.new(0, 24)
            }),
            UIListLayout = l_React_0.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                SortOrder = Enum.SortOrder.LayoutOrder,
                Padding = UDim.new(0, 6),
                HorizontalAlignment = Enum.HorizontalAlignment.Center
            }),
            HelpText = l_React_0.createElement("TextLabel", {
                LayoutOrder = 0,
                BackgroundTransparency = 1,
                Text = v21.helpText,
                TextSize = l_BaseSize_0,
                TextColor3 = v14.Theme.TextDefault.Color,
                TextTransparency = v14.Theme.TextDefault.Transparency,
                Font = v14.Font.Body.Font,
                TextXAlignment = Enum.TextXAlignment.Left,
                TextWrapped = true,
                Size = UDim2.new(0, v22, 0, 0),
                AutomaticSize = Enum.AutomaticSize.Y
            }),
            AccountSelectionContent = l_React_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 0, v20),
                BackgroundTransparency = 1,
                LayoutOrder = 1
            }, {
                AccountSelectionList = l_React_0.createElement(v10, {
                    users = v13.users,
                    onAccountSelection = function(v27)
                        v17(true);
                        v13.onAccountSelection(v27);
                        v12.sendSelectEvent(v13.context, v13.origin, (tostring(v27)));
                        v23.current = true;
                    end,
                    height = v20,
                    isDisabled = v16,
                    isScrollable = true
                })
            })
        })
    });
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_React_0 = v1.React;
local l_UIBlox_0 = v1.UIBlox;
local l_PeekView_0 = v1.PeekView.PeekView;
local l_Cryo_0 = v1.Cryo;
local l_RoactNavigation_0 = v1.RoactNavigation;
local l_PeekViewState_0 = v1.PeekView.PeekViewState;
local l_useNavigation_0 = v1.Hooks.useNavigation;
local l_useState_0 = l_React_0.useState;
local l_useEffect_0 = l_React_0.useEffect;
local l_useLocalization_0 = v1.Localization.Hooks.useLocalization;
local l_useDesignTokens_0 = v1.Style.useDesignTokens;
local l_useSelector_0 = v1.RoactUtils.Hooks.RoactRodux.useSelector;
local v14 = require(script.Parent.AccountSelectionList);
local _ = require(script.Parent.AccountSelection);
local v16 = require(l_Parent_0.Analytics.AnalyticsEvents);
local v17 = game:DefineFastFlag("AddMaxLimitToAccountSelector", false);
local v18 = game:DefineFastInt("AccountSelectorInitialRowsShown", 6);
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local v48 = l_RoactNavigation_0.withNavigationFocus(function(v20)
    local v21 = l_useStyle_0();
    local v22 = l_useNavigation_0();
    local v23, v24 = l_useState_0(false);
    local v25, v26 = l_useState_0(l_PeekViewState_0.Full);
    local l_BaseSize_0 = v21.Font.BaseSize;
    local v28 = v21.Font.Header1.RelativeSize * l_BaseSize_0;
    local v29 = l_useDesignTokens_0();
    local v30 = #v20.users;
    local l_Size_800_0 = v29.Global.Size_800;
    local v32 = l_Size_800_0 * 100.5;
    local v33 = l_Size_800_0 * ((v30 + 1.25) + 1);
    if v17 then
        v33 = l_Size_800_0 * ((math.min(v18, v30) + 1.25) + 1);
    end;
    local v34 = v30 < 100 and l_Size_800_0 * v30 or v32;
    local v35 = l_useLocalization_0({
        titleText = v20.titleTextKey,
        helpText = v20.helpTextKey
    });
    local v37 = l_useSelector_0(function(v36)
        return v36.ScreenSize;
    end);
    local v38 = v37.X - 48;
    local v39 = l_React_0.useRef(false);
    local l_Color_0 = v21.Theme.BackgroundDefault.Color;
    l_useEffect_0(function()
        local v41 = "";
        for _, v43 in v20.users, nil, nil do
            v41 = v41 .. tostring(v43.id) .. ",";
        end;
        v16.sendPageLoadEvent(v20.context, v20.origin, (v41:sub(1, -2)));
        return function()
            if not v39.current then
                v20.onAccountSelectionAbandoned();
            end;
        end;
    end, {});
    return l_React_0.createElement("Frame", {
        Size = UDim2.new(1, 0, 0, v37.Y),
        BackgroundColor3 = v21.Theme.Overlay.Color,
        BackgroundTransparency = 0.5
    }, {
        PeekView = l_React_0.createElement(l_PeekView_0, {
            briefViewContentHeight = UDim.new(0, v33),
            superBriefViewContentHeight = UDim.new(0, 40),
            peekHeaderClose = false,
            style = v21,
            canDragFullViewToBrief = true,
            stateOnMount = l_PeekViewState_0.Brief,
            mountAnimation = true,
            returnToFullView = true,
            peekHeaderPositionYChange = function(v44)
                if v44 < 10 then
                    v26(l_PeekViewState_0.Closed);
                end;
            end,
            thumbstickScrollEnabled = true,
            showDraggerInClosedState = true,
            viewStateChanged = function(v45, _)
                v26(v45);
                if not (v45 ~= l_PeekViewState_0.Closed) or v45 == l_PeekViewState_0.Hidden then
                    v22.goBack();
                end;
            end,
            peekViewState = v25
        }, {
            Content = l_React_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 0, 0),
                BackgroundTransparency = 0,
                BorderColor3 = l_Color_0,
                BackgroundColor3 = l_Color_0,
                AutomaticSize = Enum.AutomaticSize.Y
            }, {
                ContentPadding = l_React_0.createElement("UIPadding", {
                    PaddingBottom = UDim.new(0, 48)
                }),
                UIListLayout = l_React_0.createElement("UIListLayout", {
                    FillDirection = Enum.FillDirection.Vertical,
                    SortOrder = Enum.SortOrder.LayoutOrder,
                    Padding = UDim.new(0, 12),
                    HorizontalAlignment = Enum.HorizontalAlignment.Center
                }),
                TitleFrame = l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 0),
                    LayoutOrder = 0,
                    BackgroundTransparency = 1,
                    AutomaticSize = Enum.AutomaticSize.Y
                }, {
                    ContentPadding = l_React_0.createElement("UIPadding", {
                        PaddingLeft = UDim.new(0, 24),
                        PaddingRight = UDim.new(0, 24)
                    }),
                    TitleText = l_React_0.createElement("TextLabel", {
                        BackgroundTransparency = 1,
                        Text = v35.titleText,
                        TextSize = v28,
                        TextColor3 = v21.Theme.TextEmphasis.Color,
                        TextTransparency = v21.Theme.TextDefault.Transparency,
                        Font = v21.Font.Header2.Font,
                        TextXAlignment = Enum.TextXAlignment.Center,
                        TextWrapped = true,
                        Size = UDim2.new(0, v38, 0, 0),
                        AutomaticSize = Enum.AutomaticSize.Y
                    })
                }),
                Divider = l_React_0.createElement("Frame", {
                    LayoutOrder = 1,
                    Size = UDim2.new(1, 0, 0, 1),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v21.Theme.Divider.Color,
                    BackgroundTransparency = v21.Theme.Divider.Transparency
                }),
                HelpText = if not v35.helpText then nil else l_React_0.createElement("TextLabel", {
                    LayoutOrder = 2,
                    BackgroundTransparency = 1,
                    Text = v35.helpText,
                    TextSize = l_BaseSize_0,
                    TextColor3 = v21.Theme.TextDefault.Color,
                    TextTransparency = v21.Theme.TextDefault.Transparency,
                    Font = v21.Font.Body.Font,
                    TextXAlignment = Enum.TextXAlignment.Left,
                    TextWrapped = true,
                    Size = UDim2.new(0, v38, 0, 0),
                    AutomaticSize = Enum.AutomaticSize.Y
                }),
                AccountSelectionContent = l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 0),
                    AutomaticSize = Enum.AutomaticSize.Y,
                    BackgroundTransparency = 1,
                    LayoutOrder = 3
                }, {
                    UIListLayout = l_React_0.createElement("UIListLayout", {
                        FillDirection = Enum.FillDirection.Vertical,
                        SortOrder = Enum.SortOrder.LayoutOrder,
                        HorizontalAlignment = Enum.HorizontalAlignment.Center
                    }),
                    AccountSelectionList = l_React_0.createElement(v14, {
                        users = v20.users,
                        onAccountSelection = function(v47)
                            v26(l_PeekViewState_0.Closed);
                            v24(true);
                            v20.onAccountSelection(v47);
                            v16.sendSelectEvent(v20.context, v20.origin, (tostring(v47)));
                            v39.current = true;
                        end,
                        height = v34,
                        isDisabled = v23,
                        LayoutOrder = 0,
                        isScrollable = false
                    }),
                    FooterContent = l_React_0.createElement("Frame", {
                        Size = UDim2.new(1, 0, 0, 0),
                        BackgroundColor3 = v21.Theme.BackgroundUIDefault.Color,
                        BackgroundTransparency = 1,
                        LayoutOrder = 1,
                        AutomaticSize = Enum.AutomaticSize.Y
                    }, {
                        Contents = if not v20.renderFooterComponent then nil else v20.renderFooterComponent()
                    })
                })
            })
        })
    });
end);
return l_React_0.forwardRef(function(v49, v50)
    return l_React_0.createElement(v48, l_Cryo_0.Dictionary.join(v49, {
        defaultChildRef = v50
    }));
end);


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_RoactRodux_0 = v1.RoactRodux;
local l_useSelector_0 = v1.RoactUtils.Hooks.RoactRodux.useSelector;
local l_UIBlox_0 = v1.UIBlox;
local l_useLocalization_0 = v1.Localization.Hooks.useLocalization;
local l_React_0 = v1.React;
local l_useEffect_0 = l_React_0.useEffect;
local v8 = require(l_Parent_0.Analytics.AnalyticsEvents);
local v9 = require(l_Parent_0.Analytics.EventConstants);
local l_Button_0 = l_UIBlox_0.App.Button.Button;
local l_ButtonType_0 = l_UIBlox_0.App.Button.Enum.ButtonType;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local l_useNavigation_0 = v1.Hooks.useNavigation;
local l_AppPage_0 = v1.RobloxAppEnums.AppPage;
local l_NavigateDown_0 = v1.NavigationRodux.Thunks.NavigateDown;
local l_PeekView_0 = v1.PeekView.PeekView;
local l_PeekViewState_0 = v1.PeekView.PeekViewState;
local l_useState_0 = l_React_0.useState;
return (l_RoactRodux_0.connect(nil, function(v19)
    return {
        navigateToLogin = function()
            v19(l_NavigateDown_0({
                name = l_AppPage_0.Login
            }));
        end,
        navigateToSignUp = function()
            v19(l_NavigateDown_0({
                name = l_AppPage_0.SinglePageSignUp
            }));
        end
    };
end)(function(v20)
    local v21 = l_useStyle_0();
    local v22 = l_useNavigation_0();
    local l_Color_0 = v21.Theme.BackgroundDefault.Color;
    local v24, v25 = l_useState_0(l_PeekViewState_0.Full);
    local v26 = v21.Font.Header1.RelativeSize * v21.Font.BaseSize;
    local v28 = l_useSelector_0(function(v27)
        return v27.ScreenSize;
    end);
    local v29 = v28.X - 48;
    local v30 = l_useLocalization_0({
        titleText = "Authentication.AccountSwitch.Action.AddAccount",
        loginText = "Authentication.Login.Heading.LoginRobloxAccountSwitching",
        createText = "Authentication.AccountSwitch.Action.CreateNewAccount"
    });
    local function v32(v31)
        if v31 < 10 then
            v25(l_PeekViewState_0.Closed);
        end;
    end;
    local function v35(v33, _)
        v25(v33);
        if not (v33 ~= l_PeekViewState_0.Closed) or v33 == l_PeekViewState_0.Hidden then
            v22.goBack();
        end;
    end;
    l_useEffect_0(function()
        v8.sendModalShownEvent(v9.ctx.accountSwitcherAddAccount, v20.origin);
    end, {});
    return l_React_0.createElement("Frame", {
        Size = UDim2.new(1, 0, 0, v28.Y),
        BackgroundColor3 = v21.Theme.Overlay.Color,
        BackgroundTransparency = 0.5
    }, {
        l_React_0.createElement(l_PeekView_0, {
            screenSize = v28,
            briefViewContentHeight = UDim.new(0, 240),
            superBriefViewContentHeight = UDim.new(0, 40),
            peekHeaderClose = false,
            style = v21,
            canDragFullViewToBrief = true,
            stateOnMount = l_PeekViewState_0.Brief,
            returnToFullView = true,
            peekHeaderPositionYChange = v32,
            thumbstickScrollEnabled = true,
            showDraggerInClosedState = true,
            viewStateChanged = v35,
            peekViewState = v24
        }, {
            Content = l_React_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 0, 0),
                BackgroundTransparency = 0,
                BorderColor3 = l_Color_0,
                BackgroundColor3 = l_Color_0,
                AutomaticSize = Enum.AutomaticSize.Y
            }, {
                ContentPadding = l_React_0.createElement("UIPadding", {
                    PaddingBottom = UDim.new(0, 48)
                }),
                UIListLayout = l_React_0.createElement("UIListLayout", {
                    FillDirection = Enum.FillDirection.Vertical,
                    SortOrder = Enum.SortOrder.LayoutOrder,
                    Padding = UDim.new(0, 12),
                    HorizontalAlignment = Enum.HorizontalAlignment.Center
                }),
                TitleFrame = l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 0),
                    LayoutOrder = 0,
                    BackgroundTransparency = 1,
                    AutomaticSize = Enum.AutomaticSize.Y
                }, {
                    ContentPadding = l_React_0.createElement("UIPadding", {
                        PaddingLeft = UDim.new(0, 24),
                        PaddingRight = UDim.new(0, 24)
                    }),
                    TitleText = l_React_0.createElement("TextLabel", {
                        BackgroundTransparency = 1,
                        Text = v30.titleText,
                        TextSize = v26,
                        TextColor3 = v21.Theme.TextEmphasis.Color,
                        TextTransparency = v21.Theme.TextDefault.Transparency,
                        Font = v21.Font.Header2.Font,
                        TextXAlignment = Enum.TextXAlignment.Center,
                        TextWrapped = true,
                        Size = UDim2.new(0, v29, 0, 0),
                        AutomaticSize = Enum.AutomaticSize.Y
                    })
                }),
                Divider = l_React_0.createElement("Frame", {
                    LayoutOrder = 1,
                    Size = UDim2.new(1, 0, 0, 1),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v21.Theme.Divider.Color,
                    BackgroundTransparency = v21.Theme.Divider.Transparency
                }),
                ButtonContentFrame = l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 0),
                    AutomaticSize = Enum.AutomaticSize.Y,
                    BackgroundTransparency = 1,
                    LayoutOrder = 3
                }, {
                    UIListLayout = l_React_0.createElement("UIListLayout", {
                        FillDirection = Enum.FillDirection.Vertical,
                        SortOrder = Enum.SortOrder.LayoutOrder,
                        HorizontalAlignment = Enum.HorizontalAlignment.Center
                    }),
                    UIPadding = l_React_0.createElement("UIPadding", {
                        PaddingTop = UDim.new(0, 24)
                    }),
                    LoginButton = l_React_0.createElement("Frame", {
                        LayoutOrder = 1,
                        Size = UDim2.new(1, -40, 0, 48),
                        BackgroundTransparency = 1
                    }, {
                        UIPadding = l_React_0.createElement("UIPadding", {
                            PaddingBottom = UDim.new(0, 60)
                        }),
                        Button = l_React_0.createElement(l_Button_0, {
                            buttonType = l_ButtonType_0.PrimarySystem,
                            size = UDim2.new(1, 0, 0, 48),
                            text = v30.loginText,
                            onActivated = function()
                                v8.sendButtonClickEvent(v9.ctx.accountSwitcherAddAccount, v20.origin, v9.btn.login);
                                v20.navigateToLogin();
                            end
                        })
                    }),
                    SignupButton = l_React_0.createElement("Frame", {
                        LayoutOrder = 2,
                        Size = UDim2.new(1, -40, 0, 48),
                        BackgroundTransparency = 1
                    }, {
                        Button = l_React_0.createElement(l_Button_0, {
                            buttonType = l_ButtonType_0.Secondary,
                            size = UDim2.new(1, 0, 0, 48),
                            text = v30.createText,
                            onActivated = function()
                                v8.sendButtonClickEvent(v9.ctx.accountSwitcherAddAccount, v20.origin, v9.btn.signup);
                                v20.navigateToSignUp();
                            end
                        })
                    })
                })
            })
        })
    });
end));


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_React_0 = v1.React;
local l_UIBlox_0 = v1.UIBlox;
local l_ImageSetLabel_0 = l_UIBlox_0.Core.ImageSet.ImageSetLabel;
local v5 = require(script.Parent.SelectionRow);
local l_useLocalization_0 = v1.Localization.Hooks.useLocalization;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local l_Images_0 = l_UIBlox_0.App.ImageSet.Images;
local v9 = require(l_Parent_0.Analytics.AnalyticsEvents);
local v10 = require(l_Parent_0.Analytics.EventConstants);
return function(v11)
    local v12 = l_useLocalization_0({
        addAccountText = "Authentication.AccountSwitch.Action.AddAccount"
    });
    local v13 = l_useStyle_0();
    return l_React_0.createElement(v5, {
        titleContent = v12.addAccountText,
        subtitleContent = "",
        renderImage = function()
            return l_React_0.createElement("Frame", {
                Size = UDim2.new(0, 48, 0, 48),
                BackgroundColor3 = v13.Theme.IconDefault.Color,
                BackgroundTransparency = 0.6
            }, {
                UICorner = l_React_0.createElement("UICorner", {
                    CornerRadius = UDim.new(0, 24)
                }),
                Icon = l_React_0.createElement(l_ImageSetLabel_0, {
                    Size = UDim2.new(0, 16, 0, 16),
                    Image = l_Images_0["icons/common/plus_small"],
                    BorderSizePixel = 0,
                    BackgroundTransparency = 1,
                    Position = UDim2.new(0.5, 0, 0.5, 0),
                    AnchorPoint = Vector2.new(0.5, 0.5),
                    ImageColor3 = v13.Theme.BackgroundDefault.Color
                })
            });
        end,
        onAccountSelection = function()
            v11.onRowClicked();
            v9.sendButtonClickEvent(v11.context, v11.origin, v10.btn.addAccount);
        end,
        userInteractionEnabled = true
    });
end;


local v0 = require(script.Parent.Parent.dependencies);
local l_React_0 = v0.React;
local l_UIBlox_0 = v0.UIBlox;
local l_useLocalization_0 = v0.Localization.Hooks.useLocalization;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
return function()
    local v5 = l_useLocalization_0({
        maxAccountsReachedText = "Authentication.AccountSwitch.Label.AccountLimitReached.2"
    });
    local v6 = l_useStyle_0();
    return l_React_0.createElement("TextLabel", {
        Text = v5.maxAccountsReachedText,
        TextSize = v6.Font.BaseSize,
        TextColor3 = v6.Theme.TextDefault.Color,
        TextTransparency = v6.Theme.TextDefault.Transparency,
        BackgroundColor3 = v6.Theme.BackgroundUIDefault.Color,
        BackgroundTransparency = 1,
        Font = v6.Font.Body.Font,
        TextXAlignment = Enum.TextXAlignment.Center,
        TextWrapped = true,
        Size = UDim2.new(1, 0, 0, 0),
        AutomaticSize = Enum.AutomaticSize.Y
    }, {
        UIPadding = l_React_0.createElement("UIPadding", {
            PaddingTop = UDim.new(0, 12),
            PaddingBottom = UDim.new(0, 12)
        })
    });
end;


local v0 = require(script.Parent.Parent.dependencies);
local l_React_0 = v0.React;
local l_UIBlox_0 = v0.UIBlox;
local l_Cell_0 = l_UIBlox_0.App.Table.Cell;
local l_StyledTextLabel_0 = l_UIBlox_0.App.Text.StyledTextLabel;
local l_Images_0 = l_UIBlox_0.App.ImageSet.Images;
local l_ImageSetLabel_0 = l_UIBlox_0.Core.ImageSet.ImageSetLabel;
local l_useStyle_0 = l_UIBlox_0.Core.Style.useStyle;
local l_useDesignTokens_0 = v0.Style.useDesignTokens;
return function(v9)
    local v10 = l_useStyle_0();
    local v11 = l_useDesignTokens_0();
    local function v12()
        if v9.userInteractionEnabled then
            v9.onAccountSelection();
        end;
    end;
    local function v13()
        return l_React_0.createElement("Frame", {
            Size = UDim2.new(1, 0, 1, 0),
            BackgroundTransparency = v11.Global.Opacity_0
        }, {
            VerticalLayout = l_React_0.createElement("UIListLayout", {
                SortOrder = Enum.SortOrder.LayoutOrder,
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Left,
                VerticalAlignment = Enum.VerticalAlignment.Center
            }),
            TitleText = if not not v9.titleContent and v9.titleContent ~= "" then l_React_0.createElement(l_StyledTextLabel_0, {
                text = v9.titleContent,
                fontStyle = v10.Font.Header2,
                colorStyle = v10.Theme.TextEmphasis,
                layoutOrder = 0
            }) else nil,
            SubtitleText = if not not v9.subtitleContent and v9.subtitleContent ~= "" then l_React_0.createElement(l_StyledTextLabel_0, {
                text = v9.subtitleContent,
                fontStyle = v10.Font.Body,
                colorStyle = v10.Theme.TextEmphasis,
                layoutOrder = 1
            }) else nil
        });
    end;
    return l_React_0.createElement("Frame", {
        Size = UDim2.new(1, 0, 0, v11.Global.Size_800),
        BackgroundTransparency = 0,
        BackgroundColor3 = v10.Theme.BackgroundDefault.Color,
        BorderColor3 = v10.Theme.BackgroundDefault.Color
    }, {
        Cell = l_React_0.createElement(l_Cell_0, {
            BorderColor3 = v10.Theme.BackgroundDefault.Color,
            onActivated = v12,
            head = (function()
                return l_React_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 1, 0),
                    BackgroundTransparency = v11.Global.Opacity_0,
                    BorderColor3 = v10.Theme.BackgroundDefault.Color
                }, {
                    UIPadding = l_React_0.createElement("UIPadding", {
                        PaddingLeft = UDim.new(0, 24)
                    }),
                    Layout = l_React_0.createElement("UIListLayout", {
                        FillDirection = Enum.FillDirection.Horizontal,
                        HorizontalAlignment = Enum.HorizontalAlignment.Center,
                        Padding = UDim.new(0, v11.Global.Space_150)
                    }),
                    AvatarThumbnail = v9.renderImage(),
                    Names = v13()
                });
            end)(),
            tail = (function()
                if v9.iconKey and v9.iconKey ~= nil then
                    return (l_React_0.createElement(l_ImageSetLabel_0, {
                        Size = UDim2.fromOffset(28, 28),
                        Image = l_Images_0[v9.iconKey],
                        ImageColor3 = v9.iconColor or v10.Theme.Success.Color,
                        BackgroundTransparency = 1
                    }));
                else
                    return l_React_0.createElement("Frame", {
                        BorderSizePixel = 0
                    });
                end;
            end)(),
            userInteractionEnabled = v9.userInteractionEnabled,
            size = UDim2.new(1, 0, 0, v11.Global.Size_800)
        })
    });
end;


local l_Parent_0 = script.Parent.Parent;
return {
    Analytics = require(l_Parent_0.Analytics),
    CentralOverlay = require(l_Parent_0.CentralOverlay),
    Cryo = require(l_Parent_0.Cryo),
    Dash = require(l_Parent_0.Dash),
    Localization = require(l_Parent_0.Localization),
    React = require(l_Parent_0.React),
    RoactNavigation = require(l_Parent_0.RoactNavigation),
    Style = require(l_Parent_0.Style),
    UIBlox = require(l_Parent_0.UIBlox),
    UserLib = require(l_Parent_0.UserLib),
    PeekView = require(l_Parent_0.PeekView),
    Hooks = {
        useNavigation = require(l_Parent_0.RoactUtils).Hooks.useNavigation
    },
    RoactRodux = require(l_Parent_0.RoactRodux),
    RoactUtils = require(l_Parent_0.RoactUtils),
    RobloxAppEnums = require(l_Parent_0.RobloxAppEnums),
    NavigationRodux = require(l_Parent_0.NavigationRodux)
};


return {
    AccountSelectorOverlay = require(script.Components.AccountSelectorOverlay),
    AccountSwitchingAddAccountPeekView = require(script.Components.AccountSwitchingAddAccountPeekView),
    AccountSelectorPeekView = require(script.Components.AccountSelectorPeekView),
    AddAccountRow = require(script.Components.AddAccountRow),
    MaxAccountsReachedText = require(script.Components.MaxAccountsReachedText),
    dependencies = require(script.dependencies),
    ["jest.config"] = script["jest.config"]
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "AccountSelector",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local v0 = require(script.Parent.Parent.dependencies);
local v1 = require(script.Parent.EventConstants);
local v2 = v0.Analytics.AnalyticsReporters.EventIngest.new((game:GetService("EventIngestService")));
return {
    sendModalShownEvent = function(v3, v4)
        v2:sendEventDeferred(v3, v1.eventNames.modalShown, {
            state = v4
        });
    end,
    sendButtonClickEvent = function(v5, v6, v7)
        v2:sendEventDeferred(v5, v1.eventNames.buttonClick, {
            btn = v6,
            state = v7
        });
    end
};


return {
    eventNames = {
        modalShown = "authModalShown",
        buttonClick = "authButtonClick"
    },
    ctx = {
        accountSwitcherConfirmation = "accountSwitcherConfirmation"
    },
    btn = {
        primaryButton = "primaryButton",
        secondaryButton = "secondaryButton"
    }
};


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_React_0 = v1.React;
local l_useEffect_0 = l_React_0.useEffect;
local l_RoactRodux_0 = v1.RoactRodux;
local l_useLocalization_0 = v1.Localization.Hooks.useLocalization;
local l_CloseCentralOverlay_0 = v1.CentralOverlay.Thunks.CloseCentralOverlay;
local l_UIBlox_0 = v1.UIBlox;
local l_InteractiveAlert_0 = l_UIBlox_0.App.Dialog.Alert.InteractiveAlert;
local l_withStyle_0 = l_UIBlox_0.Style.withStyle;
local l_ButtonType_0 = l_UIBlox_0.App.Button.Enum.ButtonType;
local v11 = require(l_Parent_0.Analytics.AnalyticsEvents);
local v12 = require(l_Parent_0.Analytics.EventConstants);
return (l_RoactRodux_0.connect(nil, function(v13)
    return {
        closeCentralOverlay = function()
            return v13(l_CloseCentralOverlay_0());
        end
    };
end)(function(v14)
    local v15 = false;
    if v14.primaryButtonTextKey ~= nil then
        v15 = false;
        if v14.primaryButtonTextKey ~= "" then
            v15 = v14.primaryButtonCallback ~= nil;
        end;
    end;
    local v16 = false;
    if v14.secondaryButtonTextKey ~= nil then
        v16 = false;
        if v14.secondaryButtonTextKey ~= "" then
            v16 = v14.secondaryButtonCallback ~= nil;
        end;
    end;
    local v17 = l_useLocalization_0({
        titleText = v14.titleTextKey,
        bodyTextKey = v14.bodyTextKey,
        primaryButtonTextKey = v14.primaryButtonTextKey,
        secondaryButtonTextKey = v14.secondaryButtonTextKey
    });
    local v18 = {};
    if v16 then
        table.insert(v18, {
            buttonType = l_ButtonType_0.Secondary,
            props = {
                text = v17.secondaryButtonTextKey,
                onActivated = function()
                    v11.sendButtonClickEvent(v12.ctx.accountSwitcherConfirmation, v12.btn.secondaryButton, v14.errorType);
                    v14.secondaryButtonCallback();
                end
            }
        });
    end;
    if v15 then
        table.insert(v18, {
            buttonType = l_ButtonType_0.PrimarySystem,
            props = {
                text = v17.primaryButtonTextKey,
                onActivated = function()
                    v11.sendButtonClickEvent(v12.ctx.accountSwitcherConfirmation, v12.btn.primaryButton, v14.errorType);
                    v14.primaryButtonCallback();
                end
            }
        });
    end;
    l_useEffect_0(function()
        v11.sendModalShownEvent(v12.ctx.accountSwitcherConfirmation, v14.errorType);
    end, {});
    return l_withStyle_0(function(v19)
        return l_React_0.createElement("TextButton", {
            Size = UDim2.new(1, 0, 1, 0),
            Position = UDim2.new(0, 0, 0, 0),
            BackgroundColor3 = v19.Theme.Overlay.Color,
            AutoButtonColor = false,
            BackgroundTransparency = v19.Theme.Overlay.Transparency,
            Visible = true,
            [l_React_0.Event.Activated] = function()
                v14.closeCentralOverlay();
            end
        }, {
            Alert = l_React_0.createElement(l_InteractiveAlert_0, {
                title = v17.titleText,
                bodyText = v17.bodyTextKey,
                buttonStackInfo = {
                    buttons = v18
                },
                position = UDim2.fromScale(0.5, 0.5),
                screenSize = Vector2.new(400, nil)
            })
        });
    end);
end));


local l_Parent_0 = script.Parent.Parent;
return {
    Analytics = require(l_Parent_0.Analytics),
    CentralOverlay = require(l_Parent_0.CentralOverlay),
    Cryo = require(l_Parent_0.Cryo),
    Dash = require(l_Parent_0.Dash),
    Localization = require(l_Parent_0.Localization),
    React = require(l_Parent_0.React),
    RoactNavigation = require(l_Parent_0.RoactNavigation),
    Style = require(l_Parent_0.Style),
    UIBlox = require(l_Parent_0.UIBlox),
    UserLib = require(l_Parent_0.UserLib),
    PeekView = require(l_Parent_0.PeekView),
    Hooks = {
        useNavigation = require(l_Parent_0.RoactUtils).Hooks.useNavigation,
        useDispatch = require(l_Parent_0.RoactUtils).Hooks.RoactRodux.useDispatch
    },
    RoactRodux = require(l_Parent_0.RoactRodux),
    RoactUtils = require(l_Parent_0.RoactUtils),
    RobloxAppEnums = require(l_Parent_0.RobloxAppEnums),
    NavigationRodux = require(l_Parent_0.NavigationRodux)
};


return {
    AccountSwitchingErrorOverlay = require(script.Components.AccountSwitchingErrorOverlay),
    dependencies = require(script.dependencies),
    ["jest.config"] = script["jest.config"]
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "AccountSwitching",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("Achievements");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.Promise);
local _ = require(l_Parent_0.LuauPolyfill);
local _ = require(l_Parent_0.Signal);
local v5 = require(script.Parent.AchievementRules);
local v6 = require(l_Parent_0.AwardProtocol);
local l_default_0 = v6.AwardProtocol.default;
local v8 = require(l_script_FirstAncestor_0.Logger);
local v9 = {
    NAMES = v6.AWARD_NAMES
};
local v10 = game:DefineFastFlag("CacheHasAchieved", false);
v9._init = function(v11, v12, v13, v14)
    v11.awardProtocol = v14 or l_default_0;
    v11.awardName = v12;
    v11.achievementRule = v5[v12];
    v11.achievementAwardedCallbacks = {};
    assert(v11.achievementRule, "Achievement rule not found for " .. tostring(v12));
    if not v10 then
        v11:hasAchieved():andThen(function(v15)
            if not v15 then
                v11.achievementDataSubscription = v13:subscribe(function(v16)
                    if v11.achievementRule(v16) then
                        v11:grantAchievement();
                    end;
                end);
            end;
        end):catch(function(v17)
            v8:warning("There was an issue checking " .. v12 .. " has been achieved with error: " .. tostring(v17));
        end);
    else
        v11.hasAchievedCache = nil;
        local v18, v19 = v11:hasAchieved():awaitStatus();
        if v18 == "Resolved" then
            v11.hasAchievedCache = v19;
            if not v11.hasAchievedCache then
                v11.achievementDataSubscription = v13:subscribe(function(v20)
                    if v11.achievementRule(v20) then
                        v11:grantAchievement();
                    end;
                end);
                return ;
            end;
        else
            v8:warning("There was an issue checking " .. v12 .. " has been achieved with error: " .. tostring(v19));
            return ;
        end;
    end;
end;
v9.hasAchieved = function(v21)
    if not v10 then
        return v21.awardProtocol:isAvailable():andThen(function(v22)
            if not v22 then
                return v2.reject("AwardProtocol is not available to grant achievement: " .. v21.awardName);
            else
                return v21.awardProtocol:hasAchievedAward(v21.awardName);
            end;
        end);
    elseif v21.hasAchievedCache == nil then
        return v21.awardProtocol:isAvailable():andThen(function(v23)
            if not v23 then
                return v2.reject("AwardProtocol is not available to grant achievement: " .. v21.awardName);
            else
                return v21.awardProtocol:hasAchievedAward(v21.awardName);
            end;
        end);
    else
        return v2.resolve(v21.hasAchievedCache);
    end;
end;
v9.registerOnAchievementAwardedListener = function(v24, v25)
    v24.achievementAwardedCallbacks[v25] = v25;
    return {
        unsubscribe = function()
            v24.achievementAwardedCallbacks[v25] = nil;
        end
    };
end;
v9.grantAchievement = function(v26)
    return v26:_tryAwardAchievement(v26.awardName);
end;
v9._tryAwardAchievement = function(v27, v28)
    return v27:hasAchieved():andThen(function(v29)
        return v29 or v27.awardProtocol:grantAward(v28);
    end):andThen(function(v30)
        if v30 then
            if v10 then
                v27.hasAchievedCache = true;
            end;
            v27.achievementDataSubscription:unsubscribe();
            for _, v32 in v27.achievementAwardedCallbacks, nil, nil do
                v32(v28);
            end;
        end;
    end):catch(function(v33)
        v8:warning("There was an issue granting " .. v28 .. " with error: " .. tostring(v33));
        return false;
    end);
end;
v9.new = function(v34, v35, v36)
    local v37 = {};
    setmetatable(v37, {
        __index = v9
    });
    v37:_init(v34, v35, v36);
    return v37;
end;
v9.newWithRefresher = function(v38, v39, v40, v41)
    local v42 = v9.new(v38, v39, v41);
    v42:hasAchieved():andThen(function(v43)
        if not v43 then
            v40:start();
            v42:registerOnAchievementAwardedListener(function()
                v40:stop();
            end);
        end;
    end, function(v44)
        v8:warning(v44);
    end);
    return v42;
end;
return v9;


return {
    AwardPollster = function(v0)
        return v0 >= 5;
    end,
    AwardDeepDiver = function(v1)
        return v1 >= 3600;
    end,
    Award20DayRoll = function(v2)
        return v2 >= 20;
    end,
    Award10DayRoll = function(v3)
        return v3 >= 10;
    end,
    Award3DayRoll = function(v4)
        return v4 >= 3;
    end,
    AwardFoursCompany = function(v5)
        return v5 >= 3;
    end,
    AwardOneNameManyFaces = function(v6)
        return v6;
    end,
    AwardStrengthInNumbers = function(v7)
        return v7 > 1;
    end,
    AwardWorldTraveler = function(v8)
        return v8 >= 15;
    end,
    AwardSampler = function(v9)
        return v9 >= 5;
    end,
    AwardYouDidIt = function(v10)
        return v10 >= 1;
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("Achievements");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_script_FirstAncestor_0.Logger);
local _ = require(l_Parent_0.Signal);
return {
    init = function(v4, v5, v6)
        v4.fireFriendCountChanged = v5;
        v4.playersService = v6;
        v4.friendIds = {};
        v4.friendCount = 0;
    end,
    start = function(v7)
        v7.friendIds = v7:_getFriendIds();
        for _, v9 in pairs(v7.playersService:GetPlayers()) do
            v7:_onPlayerAdded(v9);
        end;
        v7.playerAdded = v7.playersService.PlayerAdded:Connect(function(v10)
            v7:_onPlayerAdded(v10);
        end);
        v7.playerRemoving = v7.playersService.PlayerRemoving:Connect(function(v11)
            v7:_onPlayerRemoving(v11);
        end);
    end,
    _getFriendIds = function(v12)
        local _ = function(v13)
            return coroutine.wrap(function()
                local v14 = 1;
                while true do
                    for _, v16 in ipairs(v13:GetCurrentPage()) do
                        coroutine.yield(v16, v14);
                    end;
                    if not v13.IsFinished then
                        v13:AdvanceToNextPageAsync();
                        v14 = v14 + 1;
                    else
                        break;
                    end;
                end;
            end);
        end;
        local l_status_0, l_result_0 = pcall(function()
            local v18 = {};
            if v12.playersService.LocalPlayer then
                local l_FriendsAsync_0 = v12.playersService:GetFriendsAsync(v12.playersService.LocalPlayer.UserId);
                for v23, _ in coroutine.wrap(function()
                    local v20 = 1;
                    while true do
                        for _, v22 in ipairs(l_FriendsAsync_0:GetCurrentPage()) do
                            coroutine.yield(v22, v20);
                        end;
                        if not l_FriendsAsync_0.IsFinished then
                            l_FriendsAsync_0:AdvanceToNextPageAsync();
                            v20 = v20 + 1;
                        else
                            break;
                        end;
                    end;
                end) do
                    v18[v23.Id] = true;
                end;
            end;
            return v18;
        end);
        if not l_status_0 then
            v2:warning(l_result_0);
        end;
        return not not l_status_0 and l_result_0 or {};
    end,
    _onPlayerAdded = function(v27, v28)
        if v27.friendIds[v28.UserId] then
            v27.friendCount = v27.friendCount + 1;
            v27.fireFriendCountChanged(v27.friendCount);
        end;
    end,
    _onPlayerRemoving = function(v29, v30)
        if v29.friendIds[v30.UserId] then
            v29.friendCount = v29.friendCount - 1;
            v29.fireFriendCountChanged(v29.friendCount);
        end;
    end,
    stop = function(v31)
        if v31.playerAdded then
            v31.playerAdded:Disconnect();
            v31.playerAdded = nil;
        end;
        if v31.playerRemoving then
            v31.playerRemoving:Disconnect();
            v31.playerRemoving = nil;
        end;
        v31.friendIds = {};
        v31.friendCount = 0;
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("Achievements");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.LuauPolyfill);
local l_clearInterval_0 = v2.clearInterval;
local l_setInterval_0 = v2.setInterval;
local v5 = require(l_script_FirstAncestor_0.Logger);
local _ = require(l_Parent_0.Signal);
return {
    init = function(v7, v8, v9)
        v7.fireDataChanged = v8;
        v7.intervalInSec = v9;
    end,
    start = function(v10)
        v10.timerId = l_setInterval_0(v10.check, v10.intervalInSec * 1000, v10);
        v10.startTime = os.time();
    end,
    check = function(v11)
        if not v11.startTime then
            v5:error("No recorded start time");
            return ;
        else
            v11.fireDataChanged(os.time() - v11.startTime);
            return ;
        end;
    end,
    stop = function(v12)
        if v12.timerId then
            l_clearInterval_0(v12.timerId);
            v12.startTime = nil;
        end;
    end
};


local l_Parent_0 = script:FindFirstAncestor("Achievements").Parent;
local v1 = require(l_Parent_0.Cryo);
local v10 = require(l_Parent_0.Rodux).createReducer({
    gameVoteStatus = {},
    voteCountSinceAppStart = 0,
    lastUniverseId = -1
}, {
    SetUserGameVotes = function(v2, v3)
        local l_universeId_0 = v3.universeId;
        local l_userVote_0 = v3.userVote;
        local l_canVote_0 = v3.canVote;
        local l_gameVoteStatus_0 = v2.gameVoteStatus;
        local l_voteCountSinceAppStart_0 = v2.voteCountSinceAppStart;
        local l_lastUniverseId_0 = v2.lastUniverseId;
        if (not (not l_canVote_0 or not l_gameVoteStatus_0[l_universeId_0]) and l_gameVoteStatus_0[l_universeId_0] ~= l_userVote_0) and l_userVote_0 ~= "NotVoted" then
            l_voteCountSinceAppStart_0 = l_voteCountSinceAppStart_0 + 1;
            l_lastUniverseId_0 = l_universeId_0;
        end;
        return v1.Dictionary.join(v2, {
            gameVoteStatus = v1.Dictionary.join(l_gameVoteStatus_0, {
                [l_universeId_0] = l_userVote_0
            }),
            voteCountSinceAppStart = l_voteCountSinceAppStart_0,
            lastUniverseId = l_lastUniverseId_0
        });
    end
});
return function(v11, v12)
    return v10(v11, v12);
end;


local l_Url_0 = require(script:FindFirstAncestor("Achievements").Parent.Http).Url;
return function(v1)
    return v1(string.format("%svoting-api/user/get-vote-count?targetType=Place", l_Url_0.APIS_URL), "GET");
end;


local l_Url_0 = require(script:FindFirstAncestor("Achievements").Parent.Http).Url;
return function(v1)
    return v1(string.format("%sv1/xbox/get-login-consecutive-days", l_Url_0.AUTH_URL), "GET");
end;


return {
    InAppAchievementManager = require(script.InAppAchievementManager),
    InExpAchievementManager = require(script.InExpAchievementManager),
    Reducers = {
        LocalUserGameVoteCounter = require(script.Reducers.LocalUserGameVoteCounter)
    },
    Requests = {
        GetUserRecentExperiences = require(script.Requests.GetUserRecentExperiences),
        GetUserVoteCount = require(script.Requests.GetUserVoteCount),
        GetXboxLoginConsecutiveDays = require(script.Requests.GetXboxLoginConsecutiveDays)
    },
    ["jest.config"] = script["jest.config"]
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "Achievements",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


return {
    ["jest.config"] = script["jest.config"],
    starterScript = require(script.starterScript)
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "AdGuiInteractivity",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local l_Parent_0 = script:FindFirstAncestor("Ads").Parent;
local v1 = require(l_Parent_0.Cryo);
local v2 = require(l_Parent_0.React);
local l_useLocalization_0 = require(l_Parent_0.Localization).Hooks.useLocalization;
local l_IconWithTooltip_0 = require(l_Parent_0.AppBlox).IconWithTooltip;
return function(v5)
    return v2.createElement(l_IconWithTooltip_0, v1.Dictionary.join(v5, {
        hoverText = l_useLocalization_0({
            SponsoredDisclosure = "CoreScripts.Ads.Label.SponsoredAdsDisclosureStatic"
        }).SponsoredDisclosure,
        triggerPointName = "SponsoredTooltip"
    }));
end;


return {
    Flags = require(script.Flags),
    SponsoredTooltipHover = require(script.SponsoredTooltipHover)
};