local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.LuauPolyfill);
local l_Array_0 = v1.Array;
local l_WeakMap_0 = v1.WeakMap;
local l_Number_0 = v1.Number;
local l_Object_0 = v1.Object;
local l_HttpService_0 = game:GetService("HttpService");
local v7 = {};
local l_getComponentName_0 = require(l_Parent_0.Shared).getComponentName;
local v9 = require(l_Parent_0.ReactIs);
local l_isElement_0 = v9.isElement;
local l_typeOf_0 = v9.typeOf;
local l_ContextConsumer_0 = v9.ContextConsumer;
local l_ContextProvider_0 = v9.ContextProvider;
local l_ForwardRef_0 = v9.ForwardRef;
local l_Fragment_0 = v9.Fragment;
local l_Lazy_0 = v9.Lazy;
local l_Memo_0 = v9.Memo;
local l_Portal_0 = v9.Portal;
local l_Profiler_0 = v9.Profiler;
local l_StrictMode_0 = v9.StrictMode;
local l_Suspense_0 = v9.Suspense;
local l_REACT_SUSPENSE_LIST_TYPE_0 = require(l_Parent_0.Shared).ReactSymbols.REACT_SUSPENSE_LIST_TYPE;
local v23 = require(script.Parent.constants);
local l_TREE_OPERATION_ADD_0 = v23.TREE_OPERATION_ADD;
local l_TREE_OPERATION_REMOVE_0 = v23.TREE_OPERATION_REMOVE;
local l_TREE_OPERATION_REORDER_CHILDREN_0 = v23.TREE_OPERATION_REORDER_CHILDREN;
local l_TREE_OPERATION_UPDATE_TREE_BASE_DURATION_0 = v23.TREE_OPERATION_UPDATE_TREE_BASE_DURATION;
local v28 = require(script.Parent.types);
local l_ElementTypeRoot_0 = v28.ElementTypeRoot;
local l_LOCAL_STORAGE_FILTER_PREFERENCES_KEY_0 = v23.LOCAL_STORAGE_FILTER_PREFERENCES_KEY;
local l_LOCAL_STORAGE_SHOULD_BREAK_ON_CONSOLE_ERRORS_0 = v23.LOCAL_STORAGE_SHOULD_BREAK_ON_CONSOLE_ERRORS;
local l_LOCAL_STORAGE_SHOULD_PATCH_CONSOLE_KEY_0 = v23.LOCAL_STORAGE_SHOULD_PATCH_CONSOLE_KEY;
local l_ComponentFilterElementType_0 = v28.ComponentFilterElementType;
local l_ElementTypeHostComponent_0 = v28.ElementTypeHostComponent;
local l_ElementTypeClass_0 = v28.ElementTypeClass;
local l_ElementTypeForwardRef_0 = v28.ElementTypeForwardRef;
local l_ElementTypeFunction_0 = v28.ElementTypeFunction;
local l_ElementTypeMemo_0 = v28.ElementTypeMemo;
local v39 = require(script.Parent.storage);
local l_localStorageGetItem_0 = v39.localStorageGetItem;
local l_localStorageSetItem_0 = v39.localStorageSetItem;
local l_meta_0 = require(script.Parent.hydration).meta;
local v43 = l_WeakMap_0.new();
v7.alphaSortKeys = function(v44, v45)
    return tostring(v45) < tostring(v44);
end;
v7.getAllEnumerableKeys = function(v46)
    return l_Object_0.keys(v46);
end;
v7.getDisplayName = function(v47, v48)
    v48 = v48 or "Anonymous";
    local v49 = v43:get(v47);
    if v49 ~= nil then
        return v49;
    else
        local l_v48_0 = v48;
        if typeof(v47) == "table" and typeof(v47.__componentName) == "string" then
            l_v48_0 = v47.__componentName;
        elseif (typeof(v47) == "table" and typeof(v47.name) == "string") and v47.name ~= "" then
            l_v48_0 = v47.name;
        elseif typeof(v47) == "function" then
            l_v48_0 = l_getComponentName_0(v47) or l_v48_0;
        end;
        v43:set(v47, l_v48_0);
        return l_v48_0;
    end;
end;
local v51 = 0;
v7.getUID = function()
    v51 = v51 + 1;
    return v51;
end;
v7.printOperationsArray = function(v52)
    local v53 = {
        string.format("operations for renderer:%s and root:%s", tostring(v52[1]), (tostring(v52[2])))
    };
    local v54 = 3;
    local function _()
        local l_v54_0 = v54;
        v54 = v54 + 1;
        return l_v54_0;
    end;
    local v57 = {
        ""
    };
    local l_v54_1 = v54;
    v54 = v54 + 1;
    local v59 = v54 + v52[l_v54_1];
    while v54 < v59 do
        local l_v54_2 = v54;
        v54 = v54 + 1;
        table.insert(v57, v52[l_v54_2]);
    end;
    while v54 < #v52 do
        l_v54_1 = v52[v54];
        if l_v54_1 == l_TREE_OPERATION_ADD_0 then
            local v61 = v52[v54 + 1];
            local v62 = v52[v54 + 2];
            v54 = v54 + 3;
            if v62 == l_ElementTypeRoot_0 then
                table.insert(v53, string.format("Add new root node %d", v61));
                v54 = v54 + 1;
                v54 = v54 + 1;
            else
                local v63 = v52[v54];
                v54 = v54 + 1;
                v54 = v54 + 1;
                local v64 = v57[v52[v54] + 1];
                v54 = v54 + 1;
                v54 = v54 + 1;
                table.insert(v53, string.format("Add node %d (%s) as child of %d", v61, v64 or "null", v63));
            end;
        elseif l_v54_1 == l_TREE_OPERATION_REMOVE_0 then
            local v65 = v52[v54 + 1];
            v54 = v54 + 2;
            for _ = 1, v65 do
                local v67 = v52[v54];
                v54 = v54 + 1;
                table.insert(v53, string.format("Remove node %d", v67));
            end;
        elseif l_v54_1 == l_TREE_OPERATION_REORDER_CHILDREN_0 then
            local v68 = v52[v54 + 1];
            local v69 = v52[v54 + 2];
            v54 = v54 + 3;
            local v70 = l_Array_0.slice(v52, v54, v54 + v69);
            v54 = v54 + v69;
            table.insert(v53, string.format("Re-order node %d children %s", v68, l_Array_0.join(v70, ",")));
        elseif l_v54_1 == l_TREE_OPERATION_UPDATE_TREE_BASE_DURATION_0 then
            v54 = v54 + 3;
        else
            error(string.format("Unsupported Bridge operation %d", l_v54_1));
        end;
    end;
    print(table.concat(v53, "\n  "));
end;
v7.getDefaultComponentFilters = function()
    return {
        {
            type = l_ComponentFilterElementType_0,
            value = l_ElementTypeHostComponent_0,
            isEnabled = true
        }
    };
end;
v7.getSavedComponentFilters = function()
    local l_status_0, l_result_0 = pcall(function()
        local v71 = l_localStorageGetItem_0(l_LOCAL_STORAGE_FILTER_PREFERENCES_KEY_0);
        if v71 ~= nil then
            return l_HttpService_0:JSONDecode(v71);
        else
            return nil;
        end;
    end);
    if l_status_0 then
        return l_result_0;
    else
        return v7.getDefaultComponentFilters();
    end;
end;
v7.saveComponentFilters = function(v74)
    l_localStorageSetItem_0(l_LOCAL_STORAGE_FILTER_PREFERENCES_KEY_0, l_HttpService_0:JSONEncode(v74));
end;
v7.getAppendComponentStack = function()
    local l_status_1, l_result_1 = pcall(function()
        local v75 = l_localStorageGetItem_0(l_LOCAL_STORAGE_SHOULD_PATCH_CONSOLE_KEY_0);
        if v75 ~= nil then
            return l_HttpService_0:JSONDecode(v75);
        else
            return nil;
        end;
    end);
    if l_status_1 then
        return l_result_1;
    else
        return true;
    end;
end;
v7.setAppendComponentStack = function(v78)
    l_localStorageSetItem_0(l_LOCAL_STORAGE_SHOULD_PATCH_CONSOLE_KEY_0, l_HttpService_0:JSONEncode(v78));
end;
v7.getBreakOnConsoleErrors = function()
    local l_status_2, l_result_2 = pcall(function()
        local v79 = l_localStorageGetItem_0(l_LOCAL_STORAGE_SHOULD_BREAK_ON_CONSOLE_ERRORS_0);
        if v79 ~= nil then
            return l_HttpService_0:JSONDecode(v79);
        else
            return nil;
        end;
    end);
    if not l_status_2 then
        return false;
    else
        return l_result_2;
    end;
end;
v7.setBreakOnConsoleErrors = function(v82)
    l_localStorageSetItem_0(l_LOCAL_STORAGE_SHOULD_BREAK_ON_CONSOLE_ERRORS_0, l_HttpService_0:JSONEncode(v82));
end;
v7.separateDisplayNameAndHOCs = function(v83, v84)
    if v83 == nil then
        return nil, nil;
    else
        local v85 = nil;
        if not (not (not ((v84 ~= l_ElementTypeClass_0 and v84 ~= l_ElementTypeForwardRef_0) and v84 ~= l_ElementTypeFunction_0) or v84 == l_ElementTypeMemo_0) or not string.find(v83, "(", 1, true)) then
            local v86 = {};
            for v87 in string.gmatch(v83, "[^()]+") do
                table.insert(v86, v87);
            end;
            local v88 = #v86;
            local v89 = v86[v88];
            v86[v88] = nil;
            v83 = v89;
            v85 = v86;
        end;
        if v84 == l_ElementTypeMemo_0 then
            if v85 == nil then
                v85 = {
                    "Memo"
                };
            else
                l_Array_0.unshift(v85, "Memo");
            end;
        elseif v84 == l_ElementTypeForwardRef_0 then
            if v85 == nil then
                v85 = {
                    "ForwardRef"
                };
            else
                l_Array_0.unshift(v85, "ForwardRef");
            end;
        end;
        return v83, v85;
    end;
end;
v7.shallowDiffers = function(v90, v91)
    for v92, v93 in v90, nil, nil do
        if v91[v92] ~= v93 then
            return true;
        end;
    end;
    return false;
end;
v7.getInObject = function(v94, v95)
    return l_Array_0.reduce(v95, function(v96, v97)
        if v96 and v96[v97] ~= nil then
            return v96[v97];
        else
            return nil;
        end;
    end, v94);
end;
v7.deletePathInObject = function(v98, v99)
    local v100 = #v99;
    local v101 = v99[v100];
    if v98 ~= nil then
        local v102 = v7.getInObject(v98, l_Array_0.slice(v99, 0, v100));
        if v102 then
            if not l_Array_0.isArray(v102) then
                v102[v101] = nil;
            else
                l_Array_0.splice(v102, v101, 1);
                return ;
            end;
        end;
    end;
end;
v7.renamePathInObject = function(v103, v104, v105)
    local v106 = #v104;
    if v103 ~= nil then
        local v107 = v7.getInObject(v103, l_Array_0.slice(v104, 1, v106));
        if v107 then
            local v108 = v104[v106];
            v107[v105[v106]] = v107[v108];
            if not l_Array_0.isArray(v107) then
                v107[v108] = nil;
            else
                l_Array_0.splice(v107, v108, 1);
                return ;
            end;
        end;
    end;
end;
v7.setInObject = function(v109, v110, v111)
    local v112 = #v110;
    local v113 = v110[v112];
    if v109 ~= nil then
        local v114 = v7.getInObject(v109, l_Array_0.slice(v110, 1, v112));
        if v114 then
            v114[v113] = v111;
        end;
    end;
end;
v7.getDataType = function(v115)
    if v115 == nil then
        return "null";
    elseif not l_isElement_0(v115) then
        local v116 = typeof(v115);
        if v116 == "bigint" then
            return "bigint";
        elseif v116 == "boolean" then
            return "boolean";
        elseif v116 == "function" then
            return "function";
        elseif v116 == "number" then
            if not l_Number_0.isNaN(v115) then
                if l_Number_0.isFinite(v115) then
                    return "number";
                else
                    return "infinity";
                end;
            else
                return "nan";
            end;
        elseif v116 == "object" then
            if not l_Array_0.isArray(v115) then
                return "object";
            else
                return "array";
            end;
        elseif v116 == "string" then
            return "string";
        elseif v116 == "nil" then
            return "nil";
        else
            return "unknown";
        end;
    else
        return "react_element";
    end;
end;
v7.getDisplayNameForReactElement = function(v117)
    local v118 = l_typeOf_0(v117);
    if v118 == l_ContextConsumer_0 then
        return "ContextConsumer";
    elseif v118 == l_ContextProvider_0 then
        return "ContextProvider";
    elseif v118 == l_ForwardRef_0 then
        return "ForwardRef";
    elseif v118 == l_Fragment_0 then
        return "Fragment";
    elseif v118 == l_Lazy_0 then
        return "Lazy";
    elseif v118 == l_Memo_0 then
        return "Memo";
    elseif v118 == l_Portal_0 then
        return "Portal";
    elseif v118 == l_Profiler_0 then
        return "Profiler";
    elseif v118 == l_StrictMode_0 then
        return "StrictMode";
    elseif v118 == l_Suspense_0 then
        return "Suspense";
    elseif v118 == l_REACT_SUSPENSE_LIST_TYPE_0 then
        return "SuspenseList";
    else
        local v119 = if not v117 then nil else v117.type;
        if typeof(v119) == "string" then
            return v119;
        elseif typeof(v119) == "function" then
            return v7.getDisplayName(v119, "Anonymous");
        elseif v119 ~= nil then
            return "NotImplementedInDevtools";
        else
            return "Element";
        end;
    end;
end;
local function v122(v120, v121)
    v121 = v121 or 50;
    if v121 < string.len(v120) then
        return string.sub(v120, 1, v121 + 1) .. "\226\128\166";
    else
        return v120;
    end;
end;
v7.formatDataForPreview = function(v123, v124)
    if v123[l_meta_0.type] ~= nil then
        if not v124 then
            return v123[l_meta_0.preview_short];
        else
            return v123[l_meta_0.preview_long];
        end;
    else
        local v125 = v7.getDataType(v123);
        if v125 == "html_element" then
            local l_format_0 = string.format;
            local v127 = "<%s />";
            local v128, v129 = string.lower(v123.tagName);
            v129 = v129 or 50;
            return l_format_0(v127, if v129 < string.len(v128) then string.sub(v128, 1, v129 + 1) .. "\226\128\166" else v128);
        elseif v125 == "function" then
            local v130, v131 = string.format("\198\146 %s() {}", typeof(v123.name) == "function" and "" or v123.name);
            v131 = v131 or 50;
            if v131 < string.len(v130) then
                return string.sub(v130, 1, v131 + 1) .. "\226\128\166";
            else
                return v130;
            end;
        elseif v125 == "string" then
            return string.format("\"%s\"", (tostring(v123)));
        elseif v125 == "react_element" then
            local l_format_1 = string.format;
            local v133 = "<%s />";
            local v134 = v7.getDisplayNameForReactElement(v123) or "Unknown";
            local v135 = nil or 50;
            return l_format_1(v133, if v135 < string.len(v134) then string.sub(v134, 1, v135 + 1) .. "\226\128\166" else v134);
        elseif v125 == "array" then
            if not v124 then
                return string.format("Array(%s)", if v123[#l_meta_0] ~= nil then v123[#l_meta_0] else #v123);
            else
                local v136 = "";
                for v137 = 1, #v123 do
                    if v137 > 1 then
                        v136 = v136 .. ", ";
                    end;
                    v136 = v136 .. v7.formatDataForPreview(v123[v137], false);
                    if not (string.len(v136) <= 50) then
                        break;
                    end;
                end;
                local l_format_2 = string.format;
                local v139 = "[%s]";
                local l_v136_0 = v136;
                local v141 = nil or 50;
                return l_format_2(v139, if v141 < string.len(l_v136_0) then string.sub(l_v136_0, 1, v141 + 1) .. "\226\128\166" else l_v136_0);
            end;
        elseif v125 == "object" then
            if not v124 then
                return "{\226\128\166}";
            else
                local v142 = v7.getAllEnumerableKeys(v123);
                table.sort(v142, v7.alphaSortKeys);
                local v143 = "";
                for v144 = 1, #v142 do
                    local v145 = v142[v144];
                    if v144 > 1 then
                        v143 = v143 .. ", ";
                    end;
                    v143 = v143 .. string.format("%s: %s", tostring(v145), v7.formatDataForPreview(v123[v145], false));
                    if not (string.len(v143) <= 50) then
                        break;
                    end;
                end;
                local l_format_3 = string.format;
                local v147 = "{%s}";
                local l_v143_0 = v143;
                local v149 = nil or 50;
                return l_format_3(v147, if v149 < string.len(l_v143_0) then string.sub(l_v143_0, 1, v149 + 1) .. "\226\128\166" else l_v143_0);
            end;
        elseif not ((((v125 ~= "boolean" and v125 ~= "number") and v125 ~= "infinity") and v125 ~= "nan") and v125 ~= "null") or v125 == "undefined" then
            return (tostring(v123));
        else
            local l_status_3, l_result_3 = pcall(v122, "" .. tostring(v123));
            if not l_status_3 then
                return "unserializable";
            else
                return l_result_3;
            end;
        end;
    end;
end;
return v7;


local l_Parent_0 = script.Parent.Parent;
local _ = require(l_Parent_0.FocusNavigation);
local v2 = require(l_Parent_0.FocusBehaviors);
local v3 = require(l_Parent_0.React);
local l_default_0 = v2.default;
local l_mostRecent_0 = v2.mostRecent;
local l_mostRecentOrDefault_0 = v2.mostRecentOrDefault;
local v7 = require(script.Parent.useContainerFocusBehavior);
return {
    useDefaultFocusBehavior = function(v8)
        local v9, v10 = v3.useState(nil);
        return v10, (v7(v3.useMemo(function()
            return l_default_0(v9);
        end, {
            v9
        }), v8));
    end,
    useMostRecentFocusBehavior = function(v11)
        return v7(v3.useMemo(l_mostRecent_0, {}), v11);
    end,
    useMostRecentOrDefaultFocusBehavior = function(v12)
        local v13, v14 = v3.useState(nil);
        return v14, (v7(v3.useMemo(function()
            return l_mostRecentOrDefault_0(v13);
        end, {
            v13
        }), v12));
    end
};


local l_Parent_0 = script.Parent.Parent;
local _ = require(l_Parent_0.FocusNavigation);
return require(l_Parent_0.React).createContext(nil);


local v0 = require(script.Parent.FocusNavigation);
local v1 = require(script.FocusNavigationContext);
local v2 = require(script.useActiveEventMap);
local v3 = require(script.useFocusedGuiObject);
local v4 = require(script.useLastInputMethod);
local v5 = require(script.useLastInputMode);
local v6 = require(script.useFocusGuiObject);
local v7 = require(script.useEventMap);
local v8 = require(script.useEventHandler);
local v9 = require(script.useEventHandlerMap);
local v10 = require(script.useContainerFocusBehavior);
local v11 = require(script.FocusBehaviorHooks);
return {
    FocusNavigationService = v0.FocusNavigationService,
    EngineInterface = v0.EngineInterface,
    FocusNavigationContext = v1,
    useActiveEventMap = v2,
    useFocusedGuiObject = v3,
    useLastInputMethod = v4,
    useLastInputMode = v5,
    useFocusGuiObject = v6,
    useEventMap = v7,
    useEventHandler = v8,
    useEventHandlerMap = v9,
    useContainerFocusBehavior = v10,
    useDefaultFocusBehavior = v11.useDefaultFocusBehavior,
    useMostRecentFocusBehavior = v11.useMostRecentFocusBehavior,
    useMostRecentOrDefaultFocusBehavior = v11.useMostRecentOrDefaultFocusBehavior
};


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.FocusNavigation);
local v3 = require(script.Parent.FocusNavigationContext);
return function()
    local v4 = v1.useContext(v3);
    local v5 = if not v4 then {} else v4.activeEventMap:getValue();
    local v6, v7 = v1.useState(v5);
    v1.useEffect(function()
        if v6 ~= v5 then
            v7(v5);
        end;
        if not v4 then
            return nil;
        else
            local v8 = v4.activeEventMap:subscribe(v7);
            return function()
                v8:unsubscribe();
            end;
        end;
    end, {
        v4
    });
    return v6;
end;


local v0 = require(script.Parent.Parent.React);
local function _(v1, v2)
    if type(v1) == "function" then
        v1(v2);
        return ;
    else
        if type(v1) == "table" then
            v1.current = v2;
        end;
        return ;
    end;
end;
return function(v4, v5)
    return (v0.useCallback(function(v6)
        local l_v4_0 = v4;
        if type(l_v4_0) == "function" then
            l_v4_0(v6);
        elseif type(l_v4_0) == "table" then
            l_v4_0.current = v6;
        end;
        l_v4_0 = v5;
        if type(l_v4_0) == "function" then
            l_v4_0(v6);
            return ;
        else
            if type(l_v4_0) == "table" then
                l_v4_0.current = v6;
            end;
            return ;
        end;
    end, {
        v4,
        v5
    }));
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.FocusNavigation);
local v3 = require(script.Parent.FocusNavigationContext);
local v4 = require(script.Parent.useComposedRef);
local v5 = require(script.Parent.useEventLifecycleRef);
return function(v6, v7)
    local v8 = v1.useContext(v3);
    return v4(v5(v1.useCallback(function(v9)
        if v8 then
            assert(v9:IsA("GuiObject"), "FocusBehaviors can only be applied to GuiObjects");
            v8:registerFocusBehavior(v9, v6);
        end;
    end, {
        v8,
        v6
    }), (v1.useCallback(function(v10)
        if v8 then
            assert(v10:IsA("GuiObject"), "FocusBehaviors can only be applied to GuiObjects");
            v8:deregisterFocusBehavior(v10, v6);
        end;
    end, {
        v8,
        v6
    }))), v7);
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.FocusNavigation);
local v3 = require(script.Parent.FocusNavigationContext);
local v4 = require(script.Parent.useComposedRef);
local v5 = require(script.Parent.useEventLifecycleRef);
return function(v6, v7, v8, v9)
    local v10 = v1.useContext(v3);
    return v4(v5(v1.useCallback(function(v11)
        if v10 then
            assert(v11:IsA("GuiObject"), "Event handlers can only be applied to GuiObjects");
            v10:registerEventHandler(v11, v6, v7, v8);
        end;
    end, {
        v10,
        v6,
        v7,
        v8
    }), (v1.useCallback(function(v12)
        if v10 then
            assert(v12:IsA("GuiObject"), "Event handlers can only be applied to GuiObjects");
            v10:deregisterEventHandler(v12, v6, v7, v8);
        end;
    end, {
        v10,
        v6,
        v7,
        v8
    }))), v9);
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.FocusNavigation);
local v3 = require(script.Parent.FocusNavigationContext);
local v4 = require(script.Parent.useComposedRef);
local v5 = require(script.Parent.useEventLifecycleRef);
return function(v6, v7)
    local v8 = v1.useContext(v3);
    return v4(v5(v1.useCallback(function(v9)
        if v8 then
            assert(v9:IsA("GuiObject"), "Event handler maps can only be applied to GuiObjects");
            v8:registerEventHandlers(v9, v6);
        end;
    end, {
        v8,
        v6
    }), (v1.useCallback(function(v10)
        if v8 then
            assert(v10:IsA("GuiObject"), "Event handler maps can only be applied to GuiObjects");
            v8:deregisterEventHandlers(v10, v6);
        end;
    end, {
        v8,
        v6
    }))), v7);
end;


local v0 = require(script.Parent.Parent.React);
return function(v1, v2)
    local v3 = v0.useRef(nil);
    return (v0.useCallback(function(v4)
        if not (not v3.current or not v2) then
            v2(v3.current);
        end;
        if v4 then
            v1(v4);
        end;
        v3.current = v4;
    end, {
        v1,
        v2
    }));
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.FocusNavigation);
local v3 = require(script.Parent.FocusNavigationContext);
local v4 = require(script.Parent.useComposedRef);
local v5 = require(script.Parent.useEventLifecycleRef);
return function(v6, v7)
    local v8 = v1.useContext(v3);
    return v4(v5(v1.useCallback(function(v9)
        if v8 then
            assert(v9:IsA("GuiObject"), "EventMaps can only be mapped to GuiObjects");
            v8:registerEventMap(v9, v6);
        end;
    end, {
        v8,
        v6
    }), (v1.useCallback(function(v10)
        if v8 then
            assert(v10:IsA("GuiObject"), "EventMaps can only be mapped to GuiObjects");
            v8:deregisterEventMap(v10, v6);
        end;
    end, {
        v8,
        v6
    }))), v7);
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local l_mockableWarn_0 = require(l_Parent_0.FocusNavigationUtils).mockableWarn;
local v3 = require(script.Parent.FocusNavigationContext);
return function()
    local v4 = v1.useContext(v3);
    return v1.useCallback(function(v5, v6)
        if not v4 then
            if _G.__DEV__ then
                l_mockableWarn_0("Could not capture focus with no FocusNavigationService.\n\n" .. "Introduce a ReactFocusNavigation.FocusNavigationProvider " .. "above this component in the tree and provide it with a " .. "value returned from FocusNavigationService.new(...)");
            end;
            return ;
        else
            v4:focusGuiObject(v5, not not v6);
            return ;
        end;
    end, {
        v4
    });
end;


local v0 = require(script.Parent.Parent.React);
local v1 = require(script.Parent.FocusNavigationContext);
return function()
    local v2 = v0.useContext(v1);
    local v3 = if not v2 then nil else v2.focusedGuiObject:getValue();
    local v4, v5 = v0.useState(v3);
    v0.useEffect(function()
        if v4 ~= v3 then
            v5(v3);
        end;
        if not v2 then
            return nil;
        else
            local v6 = v2.focusedGuiObject:subscribe(v5);
            return function()
                v6:unsubscribe();
            end;
        end;
    end, {
        v2
    });
    return v4;
end;


local l_UserInputService_0 = game:GetService("UserInputService");
local v1 = require(script.Parent.Parent.React);
local v2 = {
    [Enum.UserInputType.MouseButton1] = "Mouse",
    [Enum.UserInputType.MouseButton2] = "Mouse",
    [Enum.UserInputType.MouseButton3] = "Mouse",
    [Enum.UserInputType.MouseWheel] = "Mouse",
    [Enum.UserInputType.MouseMovement] = "Mouse",
    [Enum.UserInputType.Touch] = "Touch",
    [Enum.UserInputType.Keyboard] = "Keyboard",
    [Enum.UserInputType.Focus] = nil,
    [Enum.UserInputType.Accelerometer] = nil,
    [Enum.UserInputType.Gyro] = nil,
    [Enum.UserInputType.Gamepad1] = "Gamepad",
    [Enum.UserInputType.Gamepad2] = "Gamepad",
    [Enum.UserInputType.Gamepad3] = "Gamepad",
    [Enum.UserInputType.Gamepad4] = "Gamepad",
    [Enum.UserInputType.Gamepad5] = "Gamepad",
    [Enum.UserInputType.Gamepad6] = "Gamepad",
    [Enum.UserInputType.Gamepad7] = "Gamepad",
    [Enum.UserInputType.Gamepad8] = "Gamepad",
    [Enum.UserInputType.TextInput] = nil,
    [Enum.UserInputType.InputMethod] = nil,
    [Enum.UserInputType.None] = nil
};
return function()
    local v3, v4 = v1.useState(v2[l_UserInputService_0:GetLastInputType()] or "None");
    v1.useEffect(function()
        local v7 = l_UserInputService_0.LastInputTypeChanged:Connect(function(v5)
            local v6 = v2[v5];
            if v6 then
                v4(v6);
            end;
        end);
        return function()
            v7:Disconnect();
        end;
    end, {});
    return v3;
end;


local v0 = require(script.Parent.useLastInputMethod);
local v1 = {
    Keyboard = "Focus",
    Gamepad = "Focus",
    Mouse = "Cursor",
    Touch = "Cursor",
    None = "None"
};
return function()
    return v1[v0()];
end;


local l_Parent_0 = script.Parent;
local l_console_0 = require(l_Parent_0.Shared).console;
local v2 = {};
local l_ReactSymbols_0 = require(l_Parent_0.Shared).ReactSymbols;
local l_REACT_CONTEXT_TYPE_0 = l_ReactSymbols_0.REACT_CONTEXT_TYPE;
local l_REACT_ELEMENT_TYPE_0 = l_ReactSymbols_0.REACT_ELEMENT_TYPE;
local l_REACT_FORWARD_REF_TYPE_0 = l_ReactSymbols_0.REACT_FORWARD_REF_TYPE;
local l_REACT_FRAGMENT_TYPE_0 = l_ReactSymbols_0.REACT_FRAGMENT_TYPE;
local l_REACT_LAZY_TYPE_0 = l_ReactSymbols_0.REACT_LAZY_TYPE;
local l_REACT_MEMO_TYPE_0 = l_ReactSymbols_0.REACT_MEMO_TYPE;
local l_REACT_PORTAL_TYPE_0 = l_ReactSymbols_0.REACT_PORTAL_TYPE;
local l_REACT_PROFILER_TYPE_0 = l_ReactSymbols_0.REACT_PROFILER_TYPE;
local l_REACT_PROVIDER_TYPE_0 = l_ReactSymbols_0.REACT_PROVIDER_TYPE;
local l_REACT_STRICT_MODE_TYPE_0 = l_ReactSymbols_0.REACT_STRICT_MODE_TYPE;
local l_REACT_SUSPENSE_TYPE_0 = l_ReactSymbols_0.REACT_SUSPENSE_TYPE;
local l_REACT_SUSPENSE_LIST_TYPE_0 = l_ReactSymbols_0.REACT_SUSPENSE_LIST_TYPE;
local l_isValidElementType_0 = require(l_Parent_0.Shared).isValidElementType;
local l_REACT_BINDING_TYPE_0 = l_ReactSymbols_0.REACT_BINDING_TYPE;
local function v22(v18)
    if typeof(v18) == "table" and v18 ~= nil then
        local v19 = v18["$$typeof"];
        if v19 == l_REACT_ELEMENT_TYPE_0 then
            local l_type_0 = v18.type;
            if not (((l_type_0 ~= l_REACT_FRAGMENT_TYPE_0 and l_type_0 ~= l_REACT_PROFILER_TYPE_0) and l_type_0 ~= l_REACT_STRICT_MODE_TYPE_0) and l_type_0 ~= l_REACT_SUSPENSE_TYPE_0) or l_type_0 == l_REACT_SUSPENSE_LIST_TYPE_0 then
                return l_type_0;
            else
                local l_l_type_0_0 = l_type_0;
                if l_l_type_0_0 then
                    l_l_type_0_0 = false;
                    if typeof(l_type_0) == "table" then
                        l_l_type_0_0 = l_type_0["$$typeof"];
                    end;
                end;
                if not (((l_l_type_0_0 ~= l_REACT_CONTEXT_TYPE_0 and l_l_type_0_0 ~= l_REACT_FORWARD_REF_TYPE_0) and l_l_type_0_0 ~= l_REACT_LAZY_TYPE_0) and l_l_type_0_0 ~= l_REACT_MEMO_TYPE_0) or l_l_type_0_0 == l_REACT_PROVIDER_TYPE_0 then
                    return l_l_type_0_0;
                else
                    return v19;
                end;
            end;
        elseif not (v19 ~= l_REACT_PORTAL_TYPE_0) or v19 == l_REACT_BINDING_TYPE_0 then
            return v19;
        end;
    end;
    return nil;
end;
v2.typeOf = v22;
v2.ContextConsumer = l_REACT_CONTEXT_TYPE_0;
v2.ContextProvider = l_REACT_PROVIDER_TYPE_0;
v2.Element = l_REACT_ELEMENT_TYPE_0;
v2.ForwardRef = l_REACT_FORWARD_REF_TYPE_0;
v2.Fragment = l_REACT_FRAGMENT_TYPE_0;
v2.Lazy = l_REACT_LAZY_TYPE_0;
v2.Memo = l_REACT_MEMO_TYPE_0;
v2.Portal = l_REACT_PORTAL_TYPE_0;
v2.Profiler = l_REACT_PROFILER_TYPE_0;
v2.StrictMode = l_REACT_STRICT_MODE_TYPE_0;
v2.Suspense = l_REACT_SUSPENSE_TYPE_0;
v2.Binding = l_ReactSymbols_0.REACT_BINDING_TYPE;
v2.isValidElementType = l_isValidElementType_0;
local v23 = false;
local v24 = false;
v2.isAsyncMode = function(_)
    if not (not _G.__DEV__ or v23) then
        v23 = true;
        l_console_0.warn("The ReactIs.isAsyncMode() alias has been deprecated, " .. "and will be removed in React 18+.");
    end;
    return false;
end;
v2.isConcurrentMode = function(_)
    if not (not _G.__DEV__ or v24) then
        v24 = true;
        l_console_0.warn("The ReactIs.isConcurrentMode() alias has been deprecated, " .. "and will be removed in React 18+.");
    end;
    return false;
end;
v2.isContextConsumer = function(v27)
    return v22(v27) == l_REACT_CONTEXT_TYPE_0;
end;
v2.isContextProvider = function(v28)
    return v22(v28) == l_REACT_PROVIDER_TYPE_0;
end;
v2.isElement = function(v29)
    local v30 = false;
    if typeof(v29) == "table" then
        v30 = false;
        if v29 ~= nil then
            v30 = v29["$$typeof"] == l_REACT_ELEMENT_TYPE_0;
        end;
    end;
    return v30;
end;
v2.isForwardRef = function(v31)
    return v22(v31) == l_REACT_FORWARD_REF_TYPE_0;
end;
v2.isFragment = function(v32)
    return v22(v32) == l_REACT_FRAGMENT_TYPE_0;
end;
v2.isLazy = function(v33)
    return v22(v33) == l_REACT_LAZY_TYPE_0;
end;
v2.isMemo = function(v34)
    return v22(v34) == l_REACT_MEMO_TYPE_0;
end;
v2.isPortal = function(v35)
    return v22(v35) == l_REACT_PORTAL_TYPE_0;
end;
v2.isProfiler = function(v36)
    return v22(v36) == l_REACT_PROFILER_TYPE_0;
end;
v2.isStrictMode = function(v37)
    return v22(v37) == l_REACT_STRICT_MODE_TYPE_0;
end;
v2.isSuspense = function(v38)
    return v22(v38) == l_REACT_SUSPENSE_TYPE_0;
end;
v2.isBinding = function(v39)
    return v22(v39) == l_REACT_BINDING_TYPE_0;
end;
return v2;


local v0 = require(script.Parent.Otter);
return {
    useAnimatedBinding = require(script.useAnimatedBinding),
    useMotor = require(script.useMotor),
    spring = v0.spring,
    instant = v0.instant
};


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local _ = require(l_Parent_0.Otter);
local v3 = require(script.Parent.useMotor);
return function(v4, v5)
    local v6, v7 = v1.useBinding(v4);
    return v6, (v3(v4, v7, v5));
end;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.React);
local v2 = require(l_Parent_0.Otter);
return function(v3, v4, v5)
    local v6 = v1.useRef(nil);
    local v7 = v1.useRef(nil);
    if not v6.current then
        local v8 = nil;
        v8 = if typeof(v3) == "number" then v2.createSingleMotor(v3) else v2.createGroupMotor(v3);
        do
            local l_v8_0 = v8;
            v7.current = function(v10)
                l_v8_0:setGoal(v10);
            end;
            v6.current = l_v8_0;
        end;
    end;
    v1.useEffect(function()
        local v11 = nil;
        local v12 = nil;
        if v6.current then
            if v5 then
                v11 = v6.current:onComplete(v5);
            end;
            v12 = v6.current:onStep(v4);
        end;
        return function()
            if v11 then
                v11();
            end;
            if v12 then
                v12();
            end;
        end;
    end, {
        v4,
        v5
    });
    v1.useEffect(function()
        return function()
            if v6.current then
                v6.current:destroy();
                v6.current = nil;
            end;
        end;
    end, {
        v6.current
    });
    return v7.current;
end;


local l_Parent_0 = script.Parent.Parent;
local l_console_0 = require(l_Parent_0.Shared).console;
local v2 = {};
local v3 = nil;
local _ = require(script.Parent.ReactFiberLane);
local l_enableDebugTracing_0 = require(l_Parent_0.Shared).ReactFeatureFlags.enableDebugTracing;
local v6 = nil;
local v7 = {};
local v8 = 0;
decimalToBinaryString = function(v9)
    local v10 = "";
    while true do
        local v11, v12 = math.modf(v9 / 2);
        v9 = v11;
        v10 = math.ceil(v12) .. v10;
        if not (v9 ~= 0) then
            break;
        end;
    end;
    return string.rep("0", 31 - string.len(v10)) .. v10;
end;
local function _(v13)
    return "0b" .. decimalToBinaryString(v13);
end;
local function v17(...)
    for _, v16 in {
        ...
    }, nil, nil do
        table.insert(v7, v16);
    end;
    if v6 == nil then
        v6 = l_console_0.log;
        l_console_0.log = v3;
    end;
end;
local function v18()
    table.remove(v7, 1);
    while #v7 < v8 do
        l_console_0.groupEnd();
        v8 = v8 - 1;
    end;
    if #v7 == 0 then
        l_console_0.log = v6;
        v6 = nil;
    end;
end;
v3 = function(...)
    if v8 < #v7 then
        for v19 = v8 + 1, #v7 do
            l_console_0.group(v7[v19]);
        end;
        v8 = #v7;
    end;
    if typeof(v6) == "function" then
        v6(...);
        return ;
    else
        l_console_0.log(...);
        return ;
    end;
end;
v2.logCommitStarted = function(v20)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v17(string.format("* commit (%s)", "0b" .. decimalToBinaryString(v20)), "", "", "");
    end;
end;
v2.logCommitStopped = function()
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v18();
    end;
end;
v2.logComponentSuspended = function(v21, v22)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v3(string.format("* %s suspended", v21));
        v22:andThen(function()
            v3(string.format("* %s resolved", v21));
        end, function()
            v3(string.format("* %s rejected", v21));
        end);
    end;
end;
v2.logLayoutEffectsStarted = function(v23)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v17(string.format("* layout effects (%s)", "0b" .. decimalToBinaryString(v23)));
    end;
end;
v2.logLayoutEffectsStopped = function()
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v18();
    end;
end;
v2.logPassiveEffectsStarted = function(v24)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v17(string.format("* passive effects (%s)", "0b" .. decimalToBinaryString(v24)));
    end;
end;
v2.logPassiveEffectsStopped = function()
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v18();
    end;
end;
v2.logRenderStarted = function(v25)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v17(string.format("* render (%s)", "0b" .. decimalToBinaryString(v25)));
    end;
end;
v2.logRenderStopped = function()
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v18();
    end;
end;
v2.logForceUpdateScheduled = function(v26, v27)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v3(string.format("* %s forced update (%s)", v26, "0b" .. decimalToBinaryString(v27)));
    end;
end;
v2.logStateUpdateScheduled = function(v28, v29, _)
    if not (not _G.__DEV__ or not l_enableDebugTracing_0) then
        v3(string.format("* %s updated state (%s)", v28, "0b" .. decimalToBinaryString(v29)));
    end;
end;
return v2;


local _ = require(script.Parent.ReactInternalTypes);
local l_getStackByFiberInDevAndProd_0 = require(script.Parent.ReactFiberComponentStack).getStackByFiberInDevAndProd;
return {
    createCapturedValue = function(v2, v3)
        return {
            value = v2,
            source = v3,
            stack = l_getStackByFiberInDevAndProd_0(v3)
        };
    end
};


local l___DEV___0 = _G.__DEV__;
local l_Parent_0 = script.Parent.Parent;
local v2 = require(l_Parent_0.LuauPolyfill);
local l_Array_0 = v2.Array;
local l_Error_0 = v2.Error;
local l_console_0 = require(l_Parent_0.Shared).console;
local l_describeError_0 = require(l_Parent_0.Shared).describeError;
local _ = require(l_Parent_0.Shared);
local _ = require(l_Parent_0.React);
local _ = require(script.Parent.ReactInternalTypes);
local _ = require(script.Parent.ReactFiberLane);
local l_getComponentName_0 = require(l_Parent_0.Shared).getComponentName;
local v12 = require(script.Parent.ReactFiberFlags);
local l_Placement_0 = v12.Placement;
local l_Deletion_0 = v12.Deletion;
local l_ReactSymbols_0 = require(l_Parent_0.Shared).ReactSymbols;
local l_getIteratorFn_0 = l_ReactSymbols_0.getIteratorFn;
local l_REACT_ELEMENT_TYPE_0 = l_ReactSymbols_0.REACT_ELEMENT_TYPE;
local l_REACT_FRAGMENT_TYPE_0 = l_ReactSymbols_0.REACT_FRAGMENT_TYPE;
local l_REACT_PORTAL_TYPE_0 = l_ReactSymbols_0.REACT_PORTAL_TYPE;
local l_REACT_LAZY_TYPE_0 = l_ReactSymbols_0.REACT_LAZY_TYPE;
local l_REACT_BLOCK_TYPE_0 = l_ReactSymbols_0.REACT_BLOCK_TYPE;
local v22 = require(script.Parent.ReactWorkTags);
local _ = v22.FunctionComponent;
local _ = v22.ClassComponent;
local l_HostText_0 = v22.HostText;
local l_HostPortal_0 = v22.HostPortal;
local _ = v22.ForwardRef;
local l_Fragment_0 = v22.Fragment;
local _ = v22.SimpleMemoComponent;
local l_Block_0 = v22.Block;
local l_invariant_0 = require(l_Parent_0.Shared).invariant;
local l_ReactFeatureFlags_0 = require(l_Parent_0.Shared).ReactFeatureFlags;
local l_enableLazyElements_0 = l_ReactFeatureFlags_0.enableLazyElements;
local l_enableBlocksAPI_0 = l_ReactFeatureFlags_0.enableBlocksAPI;
local v35 = require(script.Parent["ReactFiber.new"]);
local l_createWorkInProgress_0 = v35.createWorkInProgress;
local l_resetWorkInProgress_0 = v35.resetWorkInProgress;
local l_createFiberFromElement_0 = v35.createFiberFromElement;
local l_createFiberFromFragment_0 = v35.createFiberFromFragment;
local l_createFiberFromText_0 = v35.createFiberFromText;
local l_createFiberFromPortal_0 = v35.createFiberFromPortal;
local v42 = {};
local v43 = nil;
local v44 = nil;
local v45 = nil;
local function v48(_, _)
end;
if l___DEV___0 then
    v43 = false;
    v44 = {};
    v45 = {};
    v48 = function(v49, v50)
        if not (v49 ~= nil) or type(v49) ~= "table" then
            return ;
        elseif (not v49._store or v49._store.validated) or v49.key ~= nil then
            return ;
        else
            local l_l_invariant_0_0 = l_invariant_0;
            local v52 = false;
            if v49._store ~= nil then
                v52 = type(v49._store) == "table";
            end;
            l_l_invariant_0_0(v52, "React Component in warnForMissingKey should have a _store. " .. "This error is likely caused by a bug in React. Please file an issue.");
            v49._store.validated = true;
            l_l_invariant_0_0 = l_getComponentName_0(v50.type) or "Component";
            if not v44[l_l_invariant_0_0] then
                v44[l_l_invariant_0_0] = true;
                l_console_0.error("Each child in a list should have a unique " .. "\"key\" prop. See https://reactjs.org/link/warning-keys for " .. "more information.");
                return ;
            else
                return ;
            end;
        end;
    end;
end;
local l_isArray_0 = l_Array_0.isArray;
coerceRef = function(v54, _, v56)
    local l_ref_0 = v56.ref;
    if l_ref_0 ~= nil and type(l_ref_0) == "string" then
        if (not v56._owner or not v56._self) or v56._owner.stateNode == v56._self then
            local _ = nil;
            error(l_Error_0.new(string.format("Component \"%s\" contains the string ref \"%s\". Support for string refs " .. "has been removed. We recommend using " .. "useRef() or createRef() instead. " .. "Learn more about using refs safely here: " .. "https://reactjs.org/link/strict-mode-string-ref", not l___DEV___0 and "<enable __DEV__ mode for component names>" or (l_getComponentName_0(v54.type) or "Component"), (tostring(l_ref_0)))));
        end;
        if not v56._owner then
            error("Expected ref to be a function or an object returned by React.createRef(), or nil.");
        end;
    end;
    return l_ref_0;
end;
local function _(v59)
    if l___DEV___0 then
        local v60 = l_getComponentName_0(v59.type) or "Component";
        if not v45[v60] then
            v45[v60] = true;
            l_console_0.error("Functions are not valid as a React child. This may happen if " .. "you return a Component instead of <Component /> from render. " .. "Or maybe you meant to call this function rather than return it.");
        else
            return ;
        end;
    end;
end;
resolveLazyType = function(v62)
    local v63, v64 = xpcall(v62._init, l_describeError_0, v62._payload);
    if v63 then
        return v64;
    else
        return v62;
    end;
end;
local function v357(v65)
    local function _(v66, v67)
        if v65 then
            local l_deletions_0 = v66.deletions;
            if l_deletions_0 == nil then
                v66.deletions = {
                    v67
                };
                v66.flags = bit32.bor(v66.flags, l_Deletion_0);
                return ;
            else
                table.insert(l_deletions_0, v67);
                return ;
            end;
        else
            return ;
        end;
    end;
    local function _(v70, v71)
        if v65 then
            local l_v71_0 = v71;
            while l_v71_0 ~= nil do
                local l_l_v71_0_0 = l_v71_0;
                if v65 then
                    local l_deletions_1 = v70.deletions;
                    if l_deletions_1 == nil then
                        v70.deletions = {
                            l_l_v71_0_0
                        };
                        v70.flags = bit32.bor(v70.flags, l_Deletion_0);
                    else
                        table.insert(l_deletions_1, l_l_v71_0_0);
                    end;
                end;
                l_v71_0 = l_v71_0.sibling;
            end;
            return nil;
        else
            return nil;
        end;
    end;
    local function v80(_, v77)
        local v78 = {};
        local l_v77_0 = v77;
        while l_v77_0 ~= nil do
            if l_v77_0.key ~= nil then
                v78[l_v77_0.key] = l_v77_0;
            else
                v78[l_v77_0.index] = l_v77_0;
            end;
            l_v77_0 = l_v77_0.sibling;
        end;
        return v78;
    end;
    local function _(v81, v82)
        local v83 = l_createWorkInProgress_0(v81, v82);
        v83.index = 1;
        v83.sibling = nil;
        return v83;
    end;
    local function _(v85, v86, v87)
        v85.index = v87;
        if v65 then
            local l_alternate_0 = v85.alternate;
            if l_alternate_0 ~= nil then
                local l_index_0 = l_alternate_0.index;
                if l_index_0 < v86 then
                    v85.flags = bit32.bor(v85.flags, l_Placement_0);
                    return v86;
                else
                    return l_index_0;
                end;
            else
                v85.flags = bit32.bor(v85.flags, l_Placement_0);
                return v86;
            end;
        else
            return v86;
        end;
    end;
    local function _(v91)
        if v65 and v91.alternate == nil then
            v91.flags = bit32.bor(v91.flags, l_Placement_0);
        end;
        return v91;
    end;
    local function _(v93, v94, v95, v96)
        if not (v94 ~= nil) or v94.tag ~= l_HostText_0 then
            local v97 = l_createFiberFromText_0(v95, v93.mode, v96);
            v97.return_ = v93;
            return v97;
        else
            local v98 = l_createWorkInProgress_0(v94, v95);
            v98.index = 1;
            v98.sibling = nil;
            local l_v98_0 = v98;
            l_v98_0.return_ = v93;
            return l_v98_0;
        end;
    end;
    local function v111(v101, v102, v103, v104)
        if v102 ~= nil then
            if v102.elementType == v103.type then
                local v105 = l_createWorkInProgress_0(v102, v103.props);
                v105.index = 1;
                v105.sibling = nil;
                local l_v105_0 = v105;
                l_v105_0.ref = coerceRef(v101, v102, v103);
                l_v105_0.return_ = v101;
                if l___DEV___0 then
                    l_v105_0._debugSource = v103._source;
                    l_v105_0._debugOwner = v103._owner;
                end;
                return l_v105_0;
            elseif l_enableBlocksAPI_0 and v102.tag == l_Block_0 then
                local l_type_0 = v103.type;
                if type(l_type_0) == "table" and l_type_0["$$typeof"] == l_REACT_LAZY_TYPE_0 then
                    l_type_0 = resolveLazyType(l_type_0);
                end;
                if l_type_0["$$typeof"] == l_REACT_BLOCK_TYPE_0 and l_type_0._render == v102.type._render then
                    local v108 = l_createWorkInProgress_0(v102, v103.props);
                    v108.index = 1;
                    v108.sibling = nil;
                    local l_v108_0 = v108;
                    l_v108_0.return_ = v101;
                    l_v108_0.type = l_type_0;
                    if l___DEV___0 then
                        l_v108_0._debugSource = v103._source;
                        l_v108_0._debugOwner = v103._owner;
                    end;
                    return l_v108_0;
                end;
            end;
        end;
        local v110 = l_createFiberFromElement_0(v103, v101.mode, v104);
        v110.ref = coerceRef(v101, v102, v103);
        v110.return_ = v101;
        return v110;
    end;
    local function v119(v112, v113, v114, v115)
        if not ((v113 ~= nil and v113.tag == l_HostPortal_0) and v113.stateNode.containerInfo == v114.containerInfo) or v113.stateNode.implementation ~= v114.implementation then
            local v116 = l_createFiberFromPortal_0(v114, v112.mode, v115);
            v116.return_ = v112;
            return v116;
        else
            local v117 = l_createWorkInProgress_0(v113, v114.children or {});
            v117.index = 1;
            v117.sibling = nil;
            local l_v117_0 = v117;
            l_v117_0.return_ = v112;
            return l_v117_0;
        end;
    end;
    local function _(v120, v121, v122, v123, v124)
        if not (v121 ~= nil) or v121.tag ~= l_Fragment_0 then
            local v125 = l_createFiberFromFragment_0(v122, v120.mode, v123, v124);
            v125.return_ = v120;
            return v125;
        else
            local v126 = l_createWorkInProgress_0(v121, v122);
            v126.index = 1;
            v126.sibling = nil;
            local l_v126_0 = v126;
            l_v126_0.return_ = v120;
            return l_v126_0;
        end;
    end;
    local function _(v129, v130)
        if v130.key == nil then
            local v131 = type(v129);
            if not (v131 ~= "string") or v131 == "number" then
                v130.key = v129;
                return ;
            elseif v131 == "table" then
                v130.key = tostring(v129);
            end;
        end;
    end;
    local function v133(v134, v135, v136, v137)
        if v135 == nil then
            return nil;
        else
            local v138 = type(v135);
            if v138 == "table" then
                if v135.key == nil then
                    local v139 = type(v137);
                    if not (v139 ~= "string") or v139 == "number" then
                        v135.key = v137;
                    elseif v139 == "table" then
                        v135.key = tostring(v137);
                    end;
                end;
                local v140 = v135["$$typeof"];
                if v140 == l_REACT_ELEMENT_TYPE_0 then
                    local v141 = l_createFiberFromElement_0(v135, v134.mode, v136);
                    v141.ref = coerceRef(v134, nil, v135);
                    v141.return_ = v134;
                    return v141;
                elseif v140 == l_REACT_PORTAL_TYPE_0 then
                    local v142 = l_createFiberFromPortal_0(v135, v134.mode, v136);
                    v142.return_ = v134;
                    return v142;
                elseif not (v140 == l_REACT_LAZY_TYPE_0) or not l_enableLazyElements_0 then
                    local v143 = l_createFiberFromFragment_0(v135, v134.mode, v136, nil);
                    v143.return_ = v134;
                    return v143;
                else
                    return v133(v134, v135._init(v135._payload), v136);
                end;
            elseif not (v138 ~= "string") or v138 == "number" then
                local v144 = l_createFiberFromText_0(tostring(v135), v134.mode, v136);
                v144.return_ = v134;
                return v144;
            else
                if not (not (l___DEV___0 and v138 == "function") or not l___DEV___0) then
                    local v145 = l_getComponentName_0(v134.type) or "Component";
                    if not v45[v145] then
                        v45[v145] = true;
                        l_console_0.error("Functions are not valid as a React child. This may happen if " .. "you return a Component instead of <Component /> from render. " .. "Or maybe you meant to call this function rather than return it.");
                    end;
                end;
                return nil;
            end;
        end;
    end;
    local function v146(v147, v148, v149, v150, v151)
        if v149 == nil then
            return nil;
        else
            local v152 = if v148 ~= nil then v148.key else nil;
            local v153 = type(v149);
            if v153 == "table" then
                if v149.key == nil then
                    local v154 = type(v151);
                    if not (v154 ~= "string") or v154 == "number" then
                        v149.key = v151;
                    elseif v154 == "table" then
                        v149.key = tostring(v151);
                    end;
                end;
                local v155 = v149["$$typeof"];
                if v155 == l_REACT_ELEMENT_TYPE_0 then
                    if v149.key == v152 then
                        if v149.type == l_REACT_FRAGMENT_TYPE_0 then
                            local l_children_0 = v149.props.children;
                            if not (v148 ~= nil) or v148.tag ~= l_Fragment_0 then
                                local v157 = l_createFiberFromFragment_0(l_children_0, v147.mode, v150, v152);
                                v157.return_ = v147;
                                return v157;
                            else
                                local v158 = l_createWorkInProgress_0(v148, l_children_0);
                                v158.index = 1;
                                v158.sibling = nil;
                                local l_v158_0 = v158;
                                l_v158_0.return_ = v147;
                                return l_v158_0;
                            end;
                        else
                            return (v111(v147, v148, v149, v150));
                        end;
                    else
                        return nil;
                    end;
                elseif v155 == l_REACT_PORTAL_TYPE_0 then
                    if v149.key == v152 then
                        return (v119(v147, v148, v149, v150));
                    else
                        return nil;
                    end;
                elseif not (v155 == l_REACT_LAZY_TYPE_0) or not l_enableLazyElements_0 then
                    if v152 ~= nil then
                        return nil;
                    elseif not (v148 ~= nil) or v148.tag ~= l_Fragment_0 then
                        local v160 = l_createFiberFromFragment_0(v149, v147.mode, v150, nil);
                        v160.return_ = v147;
                        return v160;
                    else
                        local v161 = l_createWorkInProgress_0(v148, v149);
                        v161.index = 1;
                        v161.sibling = nil;
                        local l_v161_0 = v161;
                        l_v161_0.return_ = v147;
                        return l_v161_0;
                    end;
                else
                    return v146(v147, v148, v149._init(v149._payload), v150);
                end;
            elseif not (v153 ~= "string") or v153 == "number" then
                if v152 ~= nil then
                    return nil;
                else
                    local v163 = tostring(v149);
                    if not (v148 ~= nil) or v148.tag ~= l_HostText_0 then
                        local v164 = l_createFiberFromText_0(v163, v147.mode, v150);
                        v164.return_ = v147;
                        return v164;
                    else
                        local v165 = l_createWorkInProgress_0(v148, v163);
                        v165.index = 1;
                        v165.sibling = nil;
                        local l_v165_0 = v165;
                        l_v165_0.return_ = v147;
                        return l_v165_0;
                    end;
                end;
            else
                if not (not (l___DEV___0 and v153 == "function") or not l___DEV___0) then
                    local v167 = l_getComponentName_0(v147.type) or "Component";
                    if not v45[v167] then
                        v45[v167] = true;
                        l_console_0.error("Functions are not valid as a React child. This may happen if " .. "you return a Component instead of <Component /> from render. " .. "Or maybe you meant to call this function rather than return it.");
                    end;
                end;
                return nil;
            end;
        end;
    end;
    local function v168(v169, v170, v171, v172, v173, v174)
        if v172 == nil then
            return nil;
        else
            local v175 = type(v172);
            if v175 == "table" then
                if v172.key == nil then
                    local v176 = type(v174);
                    if not (v176 ~= "string") or v176 == "number" then
                        v172.key = v174;
                    elseif v176 == "table" then
                        v172.key = tostring(v174);
                    end;
                end;
                local _ = nil;
                local v178 = v172["$$typeof"];
                if v178 == l_REACT_ELEMENT_TYPE_0 then
                    local v179 = v169[if v172.key == nil then v171 else v172.key];
                    if v172.type == l_REACT_FRAGMENT_TYPE_0 then
                        local l_children_1 = v172.props.children;
                        local l_key_0 = v172.key;
                        if not (v179 ~= nil) or v179.tag ~= l_Fragment_0 then
                            local v182 = l_createFiberFromFragment_0(l_children_1, v170.mode, v173, l_key_0);
                            v182.return_ = v170;
                            return v182;
                        else
                            local v183 = l_createWorkInProgress_0(v179, l_children_1);
                            v183.index = 1;
                            v183.sibling = nil;
                            local l_v183_0 = v183;
                            l_v183_0.return_ = v170;
                            return l_v183_0;
                        end;
                    else
                        return (v111(v170, v179, v172, v173));
                    end;
                elseif v178 == l_REACT_PORTAL_TYPE_0 then
                    return (v119(v170, v169[if v172.key == nil then v171 else v172.key], v172, v173));
                elseif not (v178 == l_REACT_LAZY_TYPE_0) or not l_enableLazyElements_0 then
                    local v185 = v169[v171];
                    if not (v185 ~= nil) or v185.tag ~= l_Fragment_0 then
                        local v186 = l_createFiberFromFragment_0(v172, v170.mode, v173, nil);
                        v186.return_ = v170;
                        return v186;
                    else
                        local v187 = l_createWorkInProgress_0(v185, v172);
                        v187.index = 1;
                        v187.sibling = nil;
                        local l_v187_0 = v187;
                        l_v187_0.return_ = v170;
                        return l_v187_0;
                    end;
                else
                    return v168(v169, v170, v171, v172._init(v172._payload), v173);
                end;
            elseif not (v175 ~= "string") or v175 == "number" then
                local v189 = v169[v171] or nil;
                local v190 = tostring(v172);
                if not (v189 ~= nil) or v189.tag ~= l_HostText_0 then
                    local v191 = l_createFiberFromText_0(v190, v170.mode, v173);
                    v191.return_ = v170;
                    return v191;
                else
                    local v192 = l_createWorkInProgress_0(v189, v190);
                    v192.index = 1;
                    v192.sibling = nil;
                    local l_v192_0 = v192;
                    l_v192_0.return_ = v170;
                    return l_v192_0;
                end;
            else
                if not (not (l___DEV___0 and v175 == "function") or not l___DEV___0) then
                    local v194 = l_getComponentName_0(v170.type) or "Component";
                    if not v45[v194] then
                        v45[v194] = true;
                        l_console_0.error("Functions are not valid as a React child. This may happen if " .. "you return a Component instead of <Component /> from render. " .. "Or maybe you meant to call this function rather than return it.");
                    end;
                end;
                return nil;
            end;
        end;
    end;
    local function v195(v196, v197, v198)
        if l___DEV___0 then
            if not (v196 ~= nil) or type(v196) ~= "table" then
                return v197;
            else
                local v199 = v196["$$typeof"];
                if not (v199 ~= l_REACT_ELEMENT_TYPE_0) or v199 == l_REACT_PORTAL_TYPE_0 then
                    v48(v196, v198);
                    local l_key_1 = v196.key;
                    if type(l_key_1) ~= "string" then
                        return v197;
                    elseif v197 == nil then
                        return {
                            [l_key_1] = true
                        };
                    elseif v197[l_key_1] then
                        l_console_0.error("Encountered two children with the same key, `%s`. " .. "Keys should be unique so that components maintain their identity " .. "across updates. Non-unique keys may cause children to be " .. "duplicated and/or omitted \226\128\148 the behavior is unsupported and " .. "could change in a future version.", l_key_1);
                        return v197;
                    else
                        v197[l_key_1] = true;
                        return v197;
                    end;
                elseif not (not (v199 == l_REACT_LAZY_TYPE_0) or not l_enableLazyElements_0) then
                    v195(v196._init(v196._payload), v197, v198);
                end;
            end;
        end;
        return v197;
    end;
    local function v241(v201, v202, v203, v204)
        if l___DEV___0 then
            local v205 = nil;
            for _, v207 in v203, nil, nil do
                v205 = v195(v207, v205, v201);
            end;
        end;
        local v208 = nil;
        local v209 = nil;
        local l_v202_0 = v202;
        local v211 = 1;
        local v212 = 1;
        local v213 = nil;
        local v214 = #v203;
        while l_v202_0 ~= nil and v212 <= v214 do
            if v212 < l_v202_0.index then
                v213 = l_v202_0;
                l_v202_0 = nil;
            else
                v213 = l_v202_0.sibling;
            end;
            local v215 = nil;
            local v216 = v203[v212];
            v215 = if (v216 ~= nil and type(v216) == "table") and v216["$$typeof"] ~= nil then v146(v201, l_v202_0, v216, v204, v212) else v146(v201, l_v202_0, v216, v204);
            if v215 == nil then
                if l_v202_0 == nil then
                    l_v202_0 = v213;
                    break;
                else
                    break;
                end;
            else
                if not (not v65 or not l_v202_0) and v215.alternate == nil then
                    local l_l_v202_0_0 = l_v202_0;
                    if v65 then
                        local l_deletions_2 = v201.deletions;
                        if l_deletions_2 == nil then
                            v201.deletions = {
                                l_l_v202_0_0
                            };
                            v201.flags = bit32.bor(v201.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_2, l_l_v202_0_0);
                        end;
                    end;
                end;
                local l_v215_0 = v215;
                local l_v211_0 = v211;
                l_v215_0.index = v212;
                if v65 then
                    local l_alternate_1 = l_v215_0.alternate;
                    if l_alternate_1 ~= nil then
                        local l_index_1 = l_alternate_1.index;
                        if l_index_1 < l_v211_0 then
                            l_v215_0.flags = bit32.bor(l_v215_0.flags, l_Placement_0);
                            v211 = l_v211_0;
                        else
                            v211 = l_index_1;
                        end;
                    else
                        l_v215_0.flags = bit32.bor(l_v215_0.flags, l_Placement_0);
                        v211 = l_v211_0;
                    end;
                else
                    v211 = l_v211_0;
                end;
                if v209 == nil then
                    v208 = v215;
                else
                    v209.sibling = v215;
                end;
                v209 = v215;
                l_v202_0 = v213;
                v212 = v212 + 1;
            end;
        end;
        if v214 < v212 then
            local l_l_v202_0_1 = l_v202_0;
            if v65 then
                local l_l_l_v202_0_1_0 = l_l_v202_0_1;
                while l_l_l_v202_0_1_0 ~= nil do
                    local l_l_l_l_v202_0_1_0_0 = l_l_l_v202_0_1_0;
                    if v65 then
                        local l_deletions_3 = v201.deletions;
                        if l_deletions_3 == nil then
                            v201.deletions = {
                                l_l_l_l_v202_0_1_0_0
                            };
                            v201.flags = bit32.bor(v201.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_3, l_l_l_l_v202_0_1_0_0);
                        end;
                    end;
                    l_l_l_v202_0_1_0 = l_l_l_v202_0_1_0.sibling;
                end;
                return v208;
            else
                return v208;
            end;
        elseif l_v202_0 == nil then
            while v212 <= v214 do
                local v227 = nil;
                local v228 = v203[v212];
                v227 = if (v228 ~= nil and type(v228) == "table") and v228["$$typeof"] ~= nil then v133(v201, v228, v204, v212) else v133(v201, v228, v204);
                if v227 == nil then
                    v212 = v212 + 1;
                else
                    local l_v227_0 = v227;
                    local l_v211_1 = v211;
                    l_v227_0.index = v212;
                    if v65 then
                        local l_alternate_2 = l_v227_0.alternate;
                        if l_alternate_2 ~= nil then
                            local l_index_2 = l_alternate_2.index;
                            if l_index_2 < l_v211_1 then
                                l_v227_0.flags = bit32.bor(l_v227_0.flags, l_Placement_0);
                                v211 = l_v211_1;
                            else
                                v211 = l_index_2;
                            end;
                        else
                            l_v227_0.flags = bit32.bor(l_v227_0.flags, l_Placement_0);
                            v211 = l_v211_1;
                        end;
                    else
                        v211 = l_v211_1;
                    end;
                    if v209 == nil then
                        v208 = v227;
                    else
                        v209.sibling = v227;
                    end;
                    v209 = v227;
                    v212 = v212 + 1;
                end;
            end;
            return v208;
        else
            local v233 = v80(v201, l_v202_0);
            while v212 <= v214 do
                local v234 = v168(v233, v201, v212, v203[v212], v204, v212);
                if v234 ~= nil then
                    if v65 and v234.alternate ~= nil then
                        v233[if v234.key == nil then v212 else v234.key] = nil;
                    end;
                    local l_v211_2 = v211;
                    v234.index = v212;
                    if v65 then
                        local l_alternate_3 = v234.alternate;
                        if l_alternate_3 ~= nil then
                            local l_index_3 = l_alternate_3.index;
                            if l_index_3 < l_v211_2 then
                                v234.flags = bit32.bor(v234.flags, l_Placement_0);
                                v211 = l_v211_2;
                            else
                                v211 = l_index_3;
                            end;
                        else
                            v234.flags = bit32.bor(v234.flags, l_Placement_0);
                            v211 = l_v211_2;
                        end;
                    else
                        v211 = l_v211_2;
                    end;
                    if v209 == nil then
                        v208 = v234;
                    else
                        v209.sibling = v234;
                    end;
                    v209 = v234;
                end;
                v212 = v212 + 1;
            end;
            if v65 then
                for _, v239 in v233, nil, nil do
                    if v65 then
                        local l_deletions_4 = v201.deletions;
                        if l_deletions_4 == nil then
                            v201.deletions = {
                                v239
                            };
                            v201.flags = bit32.bor(v201.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_4, v239);
                        end;
                    end;
                end;
            end;
            return v208;
        end;
    end;
    local function v280(v242, v243, v244, v245, v246)
        if l___DEV___0 then
            if v244.entries == v246 then
                if not v43 then
                    l_console_0.error("Using Maps as children is not supported. " .. "Use an array of keyed ReactElements instead.");
                end;
                v43 = true;
            end;
            local v247 = v246(v244);
            if v247 then
                local v248 = nil;
                local v249 = v247.next();
                while not v249.done do
                    v249 = v247.next();
                    v248 = v195(v249.value, v248, v242);
                end;
            end;
        end;
        local v250 = v246(v244);
        local v251 = nil;
        local v252 = nil;
        local l_v243_0 = v243;
        local v254 = 1;
        local v255 = 1;
        local v256 = nil;
        local v257 = v250.next();
        while not (not (l_v243_0 ~= nil) or v257.done) do
            if v255 < l_v243_0.index then
                v256 = l_v243_0;
                l_v243_0 = nil;
            else
                v256 = l_v243_0.sibling;
            end;
            local v258 = v146(v242, l_v243_0, v257.value, v245, v257.key);
            if v258 == nil then
                if l_v243_0 == nil then
                    l_v243_0 = v256;
                    break;
                else
                    break;
                end;
            else
                if not (not v65 or not l_v243_0) and v258.alternate == nil then
                    local l_l_v243_0_0 = l_v243_0;
                    if v65 then
                        local l_deletions_5 = v242.deletions;
                        if l_deletions_5 == nil then
                            v242.deletions = {
                                l_l_v243_0_0
                            };
                            v242.flags = bit32.bor(v242.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_5, l_l_v243_0_0);
                        end;
                    end;
                end;
                local l_v254_0 = v254;
                v258.index = v255;
                if v65 then
                    local l_alternate_4 = v258.alternate;
                    if l_alternate_4 ~= nil then
                        local l_index_4 = l_alternate_4.index;
                        if l_index_4 < l_v254_0 then
                            v258.flags = bit32.bor(v258.flags, l_Placement_0);
                            v254 = l_v254_0;
                        else
                            v254 = l_index_4;
                        end;
                    else
                        v258.flags = bit32.bor(v258.flags, l_Placement_0);
                        v254 = l_v254_0;
                    end;
                else
                    v254 = l_v254_0;
                end;
                if v252 == nil then
                    v251 = v258;
                else
                    v252.sibling = v258;
                end;
                v252 = v258;
                l_v243_0 = v256;
                v255 = v255 + 1;
                v257 = v250.next();
            end;
        end;
        if not v257.done then
            if l_v243_0 == nil then
                while not v257.done do
                    local v264 = v133(v242, v257.value, v245, v257.key);
                    if v264 == nil then
                        v255 = v255 + 1;
                        v257 = v250.next();
                    else
                        local l_v254_1 = v254;
                        v264.index = v255;
                        if v65 then
                            local l_alternate_5 = v264.alternate;
                            if l_alternate_5 ~= nil then
                                local l_index_5 = l_alternate_5.index;
                                if l_index_5 < l_v254_1 then
                                    v264.flags = bit32.bor(v264.flags, l_Placement_0);
                                    v254 = l_v254_1;
                                else
                                    v254 = l_index_5;
                                end;
                            else
                                v264.flags = bit32.bor(v264.flags, l_Placement_0);
                                v254 = l_v254_1;
                            end;
                        else
                            v254 = l_v254_1;
                        end;
                        if v252 == nil then
                            v251 = v264;
                        else
                            v252.sibling = v264;
                        end;
                        v252 = v264;
                        v255 = v255 + 1;
                        v257 = v250.next();
                    end;
                end;
                return v251;
            else
                local v268 = nil;
                while not v257.done do
                    if not v268 then
                        v268 = v80(v242, l_v243_0);
                    end;
                    local v269 = v168(v268, v242, v255, v257.value, v245, v257.key);
                    if v269 ~= nil then
                        if v65 and v269.alternate ~= nil then
                            if v269.key == nil then
                                v268[v255] = nil;
                            else
                                v268[v269.key] = nil;
                            end;
                        end;
                        local l_v254_2 = v254;
                        v269.index = v255;
                        if v65 then
                            local l_alternate_6 = v269.alternate;
                            if l_alternate_6 ~= nil then
                                local l_index_6 = l_alternate_6.index;
                                if l_index_6 < l_v254_2 then
                                    v269.flags = bit32.bor(v269.flags, l_Placement_0);
                                    v254 = l_v254_2;
                                else
                                    v254 = l_index_6;
                                end;
                            else
                                v269.flags = bit32.bor(v269.flags, l_Placement_0);
                                v254 = l_v254_2;
                            end;
                        else
                            v254 = l_v254_2;
                        end;
                        if v252 == nil then
                            v251 = v269;
                        else
                            v252.sibling = v269;
                        end;
                        v252 = v269;
                    end;
                    v255 = v255 + 1;
                    v257 = v250.next();
                end;
                if v65 then
                    for _, v274 in v268, nil, nil do
                        if v65 then
                            local l_deletions_6 = v242.deletions;
                            if l_deletions_6 == nil then
                                v242.deletions = {
                                    v274
                                };
                                v242.flags = bit32.bor(v242.flags, l_Deletion_0);
                            else
                                table.insert(l_deletions_6, v274);
                            end;
                        end;
                    end;
                end;
                return v251;
            end;
        else
            local l_l_v243_0_1 = l_v243_0;
            if v65 then
                local l_l_l_v243_0_1_0 = l_l_v243_0_1;
                while l_l_l_v243_0_1_0 ~= nil do
                    local l_l_l_l_v243_0_1_0_0 = l_l_l_v243_0_1_0;
                    if v65 then
                        local l_deletions_7 = v242.deletions;
                        if l_deletions_7 == nil then
                            v242.deletions = {
                                l_l_l_l_v243_0_1_0_0
                            };
                            v242.flags = bit32.bor(v242.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_7, l_l_l_l_v243_0_1_0_0);
                        end;
                    end;
                    l_l_l_v243_0_1_0 = l_l_l_v243_0_1_0.sibling;
                end;
                return v251;
            else
                return v251;
            end;
        end;
    end;
    local function v294(v281, v282, v283, v284)
        if v282 ~= nil and v282.tag == l_HostText_0 then
            local l_sibling_0 = v282.sibling;
            if v65 then
                local l_l_sibling_0_0 = l_sibling_0;
                while l_l_sibling_0_0 ~= nil do
                    local l_l_l_sibling_0_0_0 = l_l_sibling_0_0;
                    if v65 then
                        local l_deletions_8 = v281.deletions;
                        if l_deletions_8 == nil then
                            v281.deletions = {
                                l_l_l_sibling_0_0_0
                            };
                            v281.flags = bit32.bor(v281.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_8, l_l_l_sibling_0_0_0);
                        end;
                    end;
                    l_l_sibling_0_0 = l_l_sibling_0_0.sibling;
                end;
            end;
            local v289 = l_createWorkInProgress_0(v282, v283);
            v289.index = 1;
            v289.sibling = nil;
            l_sibling_0 = v289;
            l_sibling_0.return_ = v281;
            return l_sibling_0;
        else
            if v65 then
                local l_v282_0 = v282;
                while l_v282_0 ~= nil do
                    local l_l_v282_0_0 = l_v282_0;
                    if v65 then
                        local l_deletions_9 = v281.deletions;
                        if l_deletions_9 == nil then
                            v281.deletions = {
                                l_l_v282_0_0
                            };
                            v281.flags = bit32.bor(v281.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_9, l_l_v282_0_0);
                        end;
                    end;
                    l_v282_0 = l_v282_0.sibling;
                end;
            end;
            local v293 = l_createFiberFromText_0(v283, v281.mode, v284);
            v293.return_ = v281;
            return v293;
        end;
    end;
    local function v319(v295, v296, v297, v298)
        local l_key_2 = v297.key;
        local l_v296_0 = v296;
        while l_v296_0 ~= nil do
            if l_v296_0.key == l_key_2 then
                if l_v296_0.tag == l_Fragment_0 then
                    if v297.type == l_REACT_FRAGMENT_TYPE_0 then
                        local l_sibling_1 = l_v296_0.sibling;
                        if v65 then
                            local l_l_sibling_1_0 = l_sibling_1;
                            while l_l_sibling_1_0 ~= nil do
                                local l_l_l_sibling_1_0_0 = l_l_sibling_1_0;
                                if v65 then
                                    local l_deletions_10 = v295.deletions;
                                    if l_deletions_10 == nil then
                                        v295.deletions = {
                                            l_l_l_sibling_1_0_0
                                        };
                                        v295.flags = bit32.bor(v295.flags, l_Deletion_0);
                                    else
                                        table.insert(l_deletions_10, l_l_l_sibling_1_0_0);
                                    end;
                                end;
                                l_l_sibling_1_0 = l_l_sibling_1_0.sibling;
                            end;
                        end;
                        local v305 = l_createWorkInProgress_0(l_v296_0, v297.props.children);
                        v305.index = 1;
                        v305.sibling = nil;
                        l_sibling_1 = v305;
                        l_sibling_1.return_ = v295;
                        if l___DEV___0 then
                            l_sibling_1._debugSource = v297._source;
                            l_sibling_1._debugOwner = v297._owner;
                        end;
                        return l_sibling_1;
                    end;
                elseif l_v296_0.elementType == v297.type then
                    local l_sibling_2 = l_v296_0.sibling;
                    if v65 then
                        local l_l_sibling_2_0 = l_sibling_2;
                        while l_l_sibling_2_0 ~= nil do
                            local l_l_l_sibling_2_0_0 = l_l_sibling_2_0;
                            if v65 then
                                local l_deletions_11 = v295.deletions;
                                if l_deletions_11 == nil then
                                    v295.deletions = {
                                        l_l_l_sibling_2_0_0
                                    };
                                    v295.flags = bit32.bor(v295.flags, l_Deletion_0);
                                else
                                    table.insert(l_deletions_11, l_l_l_sibling_2_0_0);
                                end;
                            end;
                            l_l_sibling_2_0 = l_l_sibling_2_0.sibling;
                        end;
                    end;
                    local v310 = l_createWorkInProgress_0(l_v296_0, v297.props);
                    v310.index = 1;
                    v310.sibling = nil;
                    l_sibling_2 = v310;
                    l_sibling_2.ref = coerceRef(v295, l_v296_0, v297);
                    l_sibling_2.return_ = v295;
                    if l___DEV___0 then
                        l_sibling_2._debugSource = v297._source;
                        l_sibling_2._debugOwner = v297._owner;
                    end;
                    return l_sibling_2;
                end;
                local l_l_v296_0_0 = l_v296_0;
                if v65 then
                    local l_l_l_v296_0_0_0 = l_l_v296_0_0;
                    while true do
                        if l_l_l_v296_0_0_0 ~= nil then
                            local l_l_l_l_v296_0_0_0_0 = l_l_l_v296_0_0_0;
                            if v65 then
                                local l_deletions_12 = v295.deletions;
                                if l_deletions_12 == nil then
                                    v295.deletions = {
                                        l_l_l_l_v296_0_0_0_0
                                    };
                                    v295.flags = bit32.bor(v295.flags, l_Deletion_0);
                                else
                                    table.insert(l_deletions_12, l_l_l_l_v296_0_0_0_0);
                                end;
                            end;
                            l_l_l_v296_0_0_0 = l_l_l_v296_0_0_0.sibling;
                        else
                            goto label0;
                        end;
                    end;
                else
                    break;
                end;
            else
                local l_l_v296_0_1 = l_v296_0;
                if v65 then
                    local l_deletions_13 = v295.deletions;
                    if l_deletions_13 == nil then
                        v295.deletions = {
                            l_l_v296_0_1
                        };
                        v295.flags = bit32.bor(v295.flags, l_Deletion_0);
                    else
                        table.insert(l_deletions_13, l_l_v296_0_1);
                    end;
                end;
                l_v296_0 = l_v296_0.sibling;
            end;
        end;
        ::label0::;
        if v297.type == l_REACT_FRAGMENT_TYPE_0 then
            local v317 = l_createFiberFromFragment_0(v297.props.children, v295.mode, v298, v297.key);
            v317.return_ = v295;
            return v317;
        else
            local v318 = l_createFiberFromElement_0(v297, v295.mode, v298);
            v318.ref = coerceRef(v295, v296, v297);
            v318.return_ = v295;
            return v318;
        end;
    end;
    local function v338(v320, v321, v322, v323)
        local l_key_3 = v322.key;
        local l_v321_0 = v321;
        while l_v321_0 ~= nil do
            if l_v321_0.key == l_key_3 then
                if (l_v321_0.tag == l_HostPortal_0 and l_v321_0.stateNode.containerInfo == v322.containerInfo) and l_v321_0.stateNode.implementation == v322.implementation then
                    local l_sibling_3 = l_v321_0.sibling;
                    if v65 then
                        local l_l_sibling_3_0 = l_sibling_3;
                        while l_l_sibling_3_0 ~= nil do
                            local l_l_l_sibling_3_0_0 = l_l_sibling_3_0;
                            if v65 then
                                local l_deletions_14 = v320.deletions;
                                if l_deletions_14 == nil then
                                    v320.deletions = {
                                        l_l_l_sibling_3_0_0
                                    };
                                    v320.flags = bit32.bor(v320.flags, l_Deletion_0);
                                else
                                    table.insert(l_deletions_14, l_l_l_sibling_3_0_0);
                                end;
                            end;
                            l_l_sibling_3_0 = l_l_sibling_3_0.sibling;
                        end;
                    end;
                    local v330 = l_createWorkInProgress_0(l_v321_0, v322.children or {});
                    v330.index = 1;
                    v330.sibling = nil;
                    l_sibling_3 = v330;
                    l_sibling_3.return_ = v320;
                    return l_sibling_3;
                else
                    local l_l_v321_0_0 = l_v321_0;
                    if v65 then
                        local l_l_l_v321_0_0_0 = l_l_v321_0_0;
                        while true do
                            if l_l_l_v321_0_0_0 ~= nil then
                                local l_l_l_l_v321_0_0_0_0 = l_l_l_v321_0_0_0;
                                if v65 then
                                    local l_deletions_15 = v320.deletions;
                                    if l_deletions_15 == nil then
                                        v320.deletions = {
                                            l_l_l_l_v321_0_0_0_0
                                        };
                                        v320.flags = bit32.bor(v320.flags, l_Deletion_0);
                                    else
                                        table.insert(l_deletions_15, l_l_l_l_v321_0_0_0_0);
                                    end;
                                end;
                                l_l_l_v321_0_0_0 = l_l_l_v321_0_0_0.sibling;
                            else
                                goto label1;
                            end;
                        end;
                    else
                        break;
                    end;
                end;
            else
                local l_l_v321_0_1 = l_v321_0;
                if v65 then
                    local l_deletions_16 = v320.deletions;
                    if l_deletions_16 == nil then
                        v320.deletions = {
                            l_l_v321_0_1
                        };
                        v320.flags = bit32.bor(v320.flags, l_Deletion_0);
                    else
                        table.insert(l_deletions_16, l_l_v321_0_1);
                    end;
                end;
                l_v321_0 = l_v321_0.sibling;
            end;
        end;
        ::label1::;
        local v337 = l_createFiberFromPortal_0(v322, v320.mode, v323);
        v337.return_ = v320;
        return v337;
    end;
    local function v339(v340, v341, v342, v343)
        local v344 = type(v342);
        local v345 = false;
        if v342 ~= nil then
            v345 = false;
            if v344 == "table" then
                v345 = false;
                if v342.type == l_REACT_FRAGMENT_TYPE_0 then
                    v345 = v342.key == nil;
                end;
            end;
        end;
        if v345 then
            v342 = v342.props.children;
            v344 = type(v342);
        end;
        local v346 = l_isArray_0(v342);
        local v347 = false;
        if v342 ~= nil then
            v347 = false;
            if v344 == "table" then
                v347 = not v346;
            end;
        end;
        if not v347 then
            if not v346 then
                if not (v344 ~= "string") or v344 == "number" then
                    local v348 = v294(v340, v341, tostring(v342), v343);
                    if v65 and v348.alternate == nil then
                        v348.flags = bit32.bor(v348.flags, l_Placement_0);
                    end;
                    return v348;
                end;
            else
                return (v241(v340, v341, v342, v343));
            end;
        else
            local v349 = v342["$$typeof"];
            if v349 == l_REACT_ELEMENT_TYPE_0 then
                local v350 = v319(v340, v341, v342, v343);
                if v65 and v350.alternate == nil then
                    v350.flags = bit32.bor(v350.flags, l_Placement_0);
                end;
                return v350;
            elseif v349 == l_REACT_PORTAL_TYPE_0 then
                local v351 = v338(v340, v341, v342, v343);
                if v65 and v351.alternate == nil then
                    v351.flags = bit32.bor(v351.flags, l_Placement_0);
                end;
                return v351;
            elseif not (not (v349 == l_REACT_LAZY_TYPE_0) or not l_enableLazyElements_0) then
                return v339(v340, v341, v342._init(v342._payload), v343);
            end;
        end;
        local v352 = l_getIteratorFn_0(v342);
        if not v352 then
            if not (not (l___DEV___0 and v344 == "function") or not l___DEV___0) then
                local v353 = l_getComponentName_0(v340.type) or "Component";
                if not v45[v353] then
                    v45[v353] = true;
                    l_console_0.error("Functions are not valid as a React child. This may happen if " .. "you return a Component instead of <Component /> from render. " .. "Or maybe you meant to call this function rather than return it.");
                end;
            end;
            if not (v342 == nil and v345) then
            end;
            if v65 then
                local l_v341_0 = v341;
                while l_v341_0 ~= nil do
                    local l_l_v341_0_0 = l_v341_0;
                    if v65 then
                        local l_deletions_17 = v340.deletions;
                        if l_deletions_17 == nil then
                            v340.deletions = {
                                l_l_v341_0_0
                            };
                            v340.flags = bit32.bor(v340.flags, l_Deletion_0);
                        else
                            table.insert(l_deletions_17, l_l_v341_0_0);
                        end;
                    end;
                    l_v341_0 = l_v341_0.sibling;
                end;
                return nil;
            else
                return nil;
            end;
        else
            return (v280(v340, v341, v342, v343, v352));
        end;
    end;
    return v339;
end;
v42.reconcileChildFibers = v357(true);
v42.mountChildFibers = v357(false);
v42.cloneChildFibers = function(_, v359)
    if v359.child == nil then
        return ;
    else
        local l_child_0 = v359.child;
        local v361 = l_createWorkInProgress_0(l_child_0, l_child_0.pendingProps);
        v359.child = v361;
        v361.return_ = v359;
        while l_child_0.sibling ~= nil do
            l_child_0 = l_child_0.sibling;
            v361.sibling = l_createWorkInProgress_0(l_child_0, l_child_0.pendingProps);
            v361 = v361.sibling;
            v361.return_ = v359;
        end;
        v361.sibling = nil;
        return ;
    end;
end;
v42.resetChildFibers = function(v362, v363)
    local l_child_1 = v362.child;
    while l_child_1 ~= nil do
        l_resetWorkInProgress_0(l_child_1, v363);
        l_child_1 = l_child_1.sibling;
    end;
end;
return v42;


local l___DEV___0 = _G.__DEV__;
local l_Parent_0 = script.Parent.Parent;
local _ = require(script.Parent.ReactInternalTypes);
local l_ReactSharedInternals_0 = require(l_Parent_0.Shared).ReactSharedInternals;
local l_getStackByFiberInDevAndProd_0 = require(script.Parent.ReactFiberComponentStack).getStackByFiberInDevAndProd;
local l_getComponentName_0 = require(l_Parent_0.Shared).getComponentName;
local l_ReactDebugCurrentFrame_0 = l_ReactSharedInternals_0.ReactDebugCurrentFrame;
local v7 = {
    current = nil,
    isRendering = false
};
v7.getCurrentFiberOwnerNameInDevOrNull = function()
    if l___DEV___0 then
        if v7.current == nil then
            return nil;
        else
            local l__debugOwner_0 = v7.current._debugOwner;
            if l__debugOwner_0 then
                return l_getComponentName_0(l__debugOwner_0.type);
            end;
        end;
    end;
    return nil;
end;
local function v9()
    if not l___DEV___0 then
        return "";
    elseif v7.current == nil then
        return "";
    else
        return l_getStackByFiberInDevAndProd_0(v7.current);
    end;
end;
v7.resetCurrentFiber = function()
    if l___DEV___0 then
        l_ReactDebugCurrentFrame_0.getCurrentStack = nil;
        v7.current = nil;
        v7.isRendering = false;
    end;
end;
v7.setCurrentFiber = function(v10)
    if l___DEV___0 then
        l_ReactDebugCurrentFrame_0.getCurrentStack = v9;
        v7.current = v10;
        v7.isRendering = false;
    end;
end;
v7.setIsRendering = function(v11)
    if l___DEV___0 then
        v7.isRendering = v11;
    end;
end;
v7.getIsRendering = function()
    if not l___DEV___0 then
        return false;
    else
        return v7.isRendering;
    end;
end;
return v7;