local l_Parent_0 = script.Parent.Parent;
local l_Array_0 = require(l_Parent_0.LuauPolyfill).Array;
local l_console_0 = require(l_Parent_0.Shared).console;
local _ = require(l_Parent_0.Shared);
local _ = require(l_Parent_0.Shared);
local l_ReactCurrentDispatcher_0 = require(l_Parent_0.Shared).ReactSharedInternals.ReactCurrentDispatcher;
local function _()
    local l_current_0 = l_ReactCurrentDispatcher_0.current;
    if _G.__DEV__ and l_current_0 == nil then
        l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
    end;
    return l_current_0;
end;
return {
    useContext = function(v8, v9, ...)
        local l_current_1 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_1 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        local l_l_current_1_0 = l_current_1;
        if _G.__DEV__ then
            if v9 ~= nil then
                l_console_0.error("useContext() second argument is reserved for future " .. "use in React. Passing it is not supported. " .. "You passed: %s.%s", v9, (typeof(v9) == "number" and l_Array_0.isArray({
                    ...
                })) and "\n\nDid you call Array.map(useContext)? " .. "Calling Hooks inside a loop is not supported. " .. "Learn more at https://reactjs.org/link/rules-of-hooks" or "");
            end;
            if v8._context ~= nil then
                l_current_1 = v8._context;
                if l_current_1.Consumer == v8 then
                    l_console_0.error("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be " .. "removed in a future major release. Did you mean to call useContext(Context) instead?");
                elseif l_current_1.Provider == v8 then
                    l_console_0.error("Calling useContext(Context.Provider) is not supported. " .. "Did you mean to call useContext(Context) instead?");
                end;
            end;
        end;
        return l_l_current_1_0.useContext(v8, v9);
    end,
    useState = function(v12, ...)
        local l_current_2 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_2 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_2.useState(v12, ...);
    end,
    useReducer = function(v14, v15, v16)
        local l_current_3 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_3 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_3.useReducer(v14, v15, v16);
    end,
    useRef = function(v18)
        local l_current_4 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_4 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_4.useRef(v18);
    end,
    useBinding = function(v20)
        local l_current_5 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_5 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_5.useBinding(v20);
    end,
    useEffect = function(v22, v23)
        local l_current_6 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_6 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_6.useEffect(v22, v23);
    end,
    useLayoutEffect = function(v25, v26)
        local l_current_7 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_7 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_7.useLayoutEffect(v25, v26);
    end,
    useCallback = function(v28, v29)
        local l_current_8 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_8 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_8.useCallback(v28, v29);
    end,
    useMemo = function(v31, v32)
        local l_current_9 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_9 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_9.useMemo(v31, v32);
    end,
    useImperativeHandle = function(v34, v35, v36)
        local l_current_10 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_10 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_10.useImperativeHandle(v34, v35, v36);
    end,
    useDebugValue = function(v38, v39)
        if not _G.__DEV__ then
            return nil;
        else
            local l_current_11 = l_ReactCurrentDispatcher_0.current;
            if _G.__DEV__ and l_current_11 == nil then
                l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
            end;
            return l_current_11.useDebugValue(v38, v39);
        end;
    end,
    emptyObject = {},
    useOpaqueIdentifier = function()
        local l_current_12 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_12 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_12.useOpaqueIdentifier();
    end,
    useMutableSource = function(v42, v43, v44)
        local l_current_13 = l_ReactCurrentDispatcher_0.current;
        if _G.__DEV__ and l_current_13 == nil then
            l_console_0.error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for" .. " one of the following reasons:\n" .. "1. You might have mismatching versions of React and the renderer (such as React DOM)\n" .. "2. You might be breaking the Rules of Hooks\n" .. "3. You might have more than one copy of React in the same app\n" .. "See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
        end;
        return l_current_13.useMutableSource(v42, v43, v44);
    end
};


local l_Parent_0 = script.Parent.Parent;
local l_console_0 = require(l_Parent_0.Shared).console;
local l_inspect_0 = require(l_Parent_0.LuauPolyfill).util.inspect;
local _ = require(l_Parent_0.Shared);
local l_REACT_LAZY_TYPE_0 = require(l_Parent_0.Shared).ReactSymbols.REACT_LAZY_TYPE;
lazyInitializer = function(v5)
    if v5._status == -1 then
        local v6 = v5._result();
        v5._status = 0;
        v5._result = v6;
        v6:andThen(function(v7)
            if v5._status == 0 then
                local l_default_0 = v7.default;
                if _G.__DEV__ and l_default_0 == nil then
                    l_console_0.error("lazy: Expected the result of a dynamic import() call. " .. "Instead received: `%s`\n\nYour code should look like: \n  " .. "local MyComponent = lazy(function() return req" .. "quire(script.Parent.MyComponent) end)", l_inspect_0(v7));
                end;
                local l_v5_0 = v5;
                l_v5_0._status = 1;
                l_v5_0._result = l_default_0;
            end;
        end, function(v10)
            if v5._status == 0 then
                local l_v5_1 = v5;
                l_v5_1._status = 2;
                l_v5_1._result = v10;
            end;
        end);
    end;
    if v5._status == 1 then
        return v5._result;
    else
        error(v5._result);
        return ;
    end;
end;
return {
    lazy = function(v12)
        local v13 = {
            ["$$typeof"] = l_REACT_LAZY_TYPE_0,
            _payload = {
                _status = -1,
                _result = v12
            },
            _init = lazyInitializer
        };
        if _G.__DEV__ then
            local v14 = nil;
            local v15 = nil;
            do
                local l_v14_0, l_v15_0 = v14, v15;
                setmetatable(v13, {
                    __index = function(_, v19)
                        if v19 == "defaultProps" then
                            return l_v14_0;
                        elseif v19 == "propTypes" then
                            return l_v15_0;
                        else
                            return ;
                        end;
                    end,
                    __newindex = function(v20, v21, v22)
                        if v21 == "defaultProps" then
                            l_console_0.error("React.lazy(...): It is not supported to assign `defaultProps` to " .. "a lazy component import. Either specify them where the component " .. "is defined, or create a wrapping component around it.");
                            l_v14_0 = v22;
                            setmetatable(v20, {
                                __index = function()
                                end,
                                __newindex = function()
                                end
                            });
                        end;
                        if v21 == "propTypes" then
                            l_console_0.error("React.lazy(...): It is not supported to assign `propTypes` to " .. "a lazy component import. Either specify them where the component " .. "is defined, or create a wrapping component around it.");
                            l_v15_0 = v22;
                            setmetatable(v20, {
                                __index = function()
                                end,
                                __newindex = function()
                                end
                            });
                        end;
                    end
                });
            end;
        end;
        return v13;
    end
};


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.Shared);
local l_console_0 = v1.console;
local v3 = require(l_Parent_0.LuauPolyfill);
local l_Array_0 = v3.Array;
local l_Object_0 = v3.Object;
local l_inspect_0 = v3.util.inspect;
local l_ReactSymbols_0 = v1.ReactSymbols;
local l_REACT_MEMO_TYPE_0 = l_ReactSymbols_0.REACT_MEMO_TYPE;
local l_REACT_ELEMENT_TYPE_0 = l_ReactSymbols_0.REACT_ELEMENT_TYPE;
local l_isValidElementType_0 = v1.isValidElementType;
local l_getComponentName_0 = v1.getComponentName;
return {
    memo = function(v12, v13)
        if not (not _G.__DEV__ or l_isValidElementType_0(v12)) then
            local v14 = "";
            if not (v12 ~= nil) or typeof(v12) == "table" and #l_Object_0.keys(v12) == 0 then
                v14 = v14 .. " You likely forgot to export your component from the file " .. "it's defined in, or you might have mixed up default and named imports.";
            end;
            local v15 = nil;
            if v12 == nil then
                v15 = "nil";
            elseif not l_Array_0.isArray(v12) then
                if (v12 ~= nil and typeof(v12) == "table") and v12["$$typeof"] == l_REACT_ELEMENT_TYPE_0 then
                    v15 = string.format("<%s />", l_getComponentName_0(v12.type) or "UNKNOWN");
                    v14 = " Did you accidentally export a JSX literal or Element instead of a component?";
                else
                    v15 = typeof(v12);
                    if v12 ~= nil then
                        v14 = "\n" .. l_inspect_0(v12);
                    end;
                end;
            else
                v15 = "array";
            end;
            l_console_0.error("memo: The first argument must be a component. Instead received: `%s`.%s", v15, v14);
        end;
        local v16 = {
            ["$$typeof"] = l_REACT_MEMO_TYPE_0,
            type = v12,
            compare = v13 or nil
        };
        if _G.__DEV__ then
            local v17 = nil;
            do
                local l_v17_0 = v17;
                setmetatable(v16, {
                    __index = function(v19, v20)
                        if v20 == "displayName" then
                            return l_v17_0;
                        else
                            return (rawget(v19, v20));
                        end;
                    end,
                    __newindex = function(v21, v22, v23)
                        if v22 == "displayName" then
                            l_v17_0 = v23;
                            if typeof(v12) == "table" and v12.displayName == nil then
                                v12.displayName = l_v17_0;
                                return ;
                            end;
                        else
                            rawset(v21, v22, v23);
                        end;
                    end
                });
            end;
        end;
        return v16;
    end
};


local _ = require(script.Parent.Parent.Shared);
return function(v1, v2)
    local v3 = {
        _getVersion = v2,
        _source = v1,
        _workInProgressVersionPrimary = nil,
        _workInProgressVersionSecondary = nil
    };
    if _G.__DEV__ then
        v3._currentPrimaryRenderer = nil;
        v3._currentSecondaryRenderer = nil;
    end;
    return v3;
end;


local l_console_0 = require(script.Parent.Parent.Shared).console;
local v1 = {};
local function _(v2, v3)
    if _G.__DEV__ then
        local v4 = v2.__componentName or "ReactClass";
        local v5 = v4 .. "." .. v3;
        if not v1[v5] then
            l_console_0.error("Can't call %s on a component that is not yet mounted. " .. "This is a no-op, but it might indicate a bug in your application. " .. "Instead, assign to `self.state` directly with the desired state in " .. "the %s component's `init` method.", v3, v4);
            v1[v5] = true;
        else
            return ;
        end;
    end;
end;
return {
    isMounted = function(_)
        return false;
    end,
    enqueueForceUpdate = function(v8, _, _)
        if _G.__DEV__ then
            local v11 = v8.__componentName or "ReactClass";
            local v12 = v11 .. "." .. "forceUpdate";
            if not v1[v12] then
                l_console_0.error("Can't call %s on a component that is not yet mounted. " .. "This is a no-op, but it might indicate a bug in your application. " .. "Instead, assign to `self.state` directly with the desired state in " .. "the %s component's `init` method.", "forceUpdate", v11);
                v1[v12] = true;
            else
                return ;
            end;
        end;
    end,
    enqueueReplaceState = function(v13, _, _, _)
        if _G.__DEV__ then
            local v17 = v13.__componentName or "ReactClass";
            local v18 = v17 .. "." .. "replaceState";
            if not v1[v18] then
                l_console_0.error("Can't call %s on a component that is not yet mounted. " .. "This is a no-op, but it might indicate a bug in your application. " .. "Instead, assign to `self.state` directly with the desired state in " .. "the %s component's `init` method.", "replaceState", v17);
                v1[v18] = true;
            else
                return ;
            end;
        end;
    end,
    enqueueSetState = function(v19, _, _, _)
        if _G.__DEV__ then
            local v23 = v19.__componentName or "ReactClass";
            local v24 = v23 .. "." .. "setState";
            if not v1[v24] then
                l_console_0.error("Can't call %s on a component that is not yet mounted. " .. "This is a no-op, but it might indicate a bug in your application. " .. "Instead, assign to `self.state` directly with the desired state in " .. "the %s component's `init` method.", "setState", v23);
                v1[v24] = true;
            else
                return ;
            end;
        end;
    end
};


return function()
    local v0 = {};
    local v1 = {};
    local v2 = false;
    return function(v3)
        assert(typeof(v3) == "function", "Can only subscribe to signals with a function.");
        local v4 = {
            callback = v3,
            disconnected = false
        };
        if not (not v2 or v0[v3]) then
            v1[v3] = v4;
        end;
        v0[v3] = v4;
        return function()
            assert(not v4.disconnected, "Listeners can only be disconnected once.");
            v4.disconnected = true;
            v0[v3] = nil;
            v1[v3] = nil;
        end;
    end, function(...)
        v2 = true;
        for v5, v6 in v0, nil, nil do
            if not (v6.disconnected or v1[v5]) then
                v5(...);
            end;
        end;
        v2 = false;
        table.clear(v1);
    end;
end;


local l_Parent_0 = script.Parent;
local _ = require(l_Parent_0.LuauPolyfill);
local v2 = require(script.React);
local _ = require(script.ReactLazy);
local _ = require(l_Parent_0.Shared);
return v2;


local l_Parent_0 = script.Parent.Parent;
local v1 = require(l_Parent_0.LuauPolyfill);
local l_Array_0 = v1.Array;
local l_Error_0 = v1.Error;
local l_Map_0 = v1.Map;
local l_Object_0 = v1.Object;
local l_String_0 = v1.String;
local v7 = {};
local _ = require(l_Parent_0.Shared);
local _ = require(l_Parent_0.ReactReconciler);
local _ = require(l_Parent_0.Shared);
local v11 = require(l_Parent_0.ReactReconciler)({});
local l_NoMode_0 = v11.ReactTypeOfMode.NoMode;
local v16 = {
    parse = function(v13)
        if v13.stack == nil then
            return {};
        else
            return l_Array_0.map(l_Array_0.filter(string.split(v13.stack, "\n"), function(v14)
                return string.find(v14, "^LoadedCode") ~= nil;
            end), function(v15)
                return {
                    source = v15,
                    functionName = string.match(v15, "function (%w+)$")
                };
            end);
        end;
    end
};
local v17 = require(l_Parent_0.Shared);
local l_ReactSharedInternals_0 = v17.ReactSharedInternals;
local l_REACT_OPAQUE_ID_TYPE_0 = v17.ReactSymbols.REACT_OPAQUE_ID_TYPE;
local l_ReactWorkTags_0 = v11.ReactWorkTags;
local l_FunctionComponent_0 = l_ReactWorkTags_0.FunctionComponent;
local l_SimpleMemoComponent_0 = l_ReactWorkTags_0.SimpleMemoComponent;
local l_ContextProvider_0 = l_ReactWorkTags_0.ContextProvider;
local l_ForwardRef_0 = l_ReactWorkTags_0.ForwardRef;
local l_Block_0 = l_ReactWorkTags_0.Block;
local v26 = {};
local v27 = nil;
local v28 = nil;
local v29 = nil;
local function v38()
    if v27 == nil then
        local v30 = l_Map_0.new();
        local v31 = nil;
        local l_status_0, l_result_0 = pcall(function()
            v29.useContext({
                _currentValue = nil
            });
            v29.useState(nil);
            v29.useReducer(function(v32, _)
                return v32;
            end, nil);
            v29.useRef(nil);
            v29.useLayoutEffect(function()
            end);
            v29.useEffect(function()
            end);
            v29.useImperativeHandle(nil, function()
                return nil;
            end);
            v29.useDebugValue(nil);
            v29.useCallback(function()
            end);
            v29.useMemo(function()
                return nil;
            end);
        end);
        v31 = v26;
        v26 = {};
        if not l_status_0 then
            error(l_result_0);
        end;
        for v36 = 1, #v31 do
            local v37 = v31[v36];
            v30:set(v37.primitive, v16.parse(v37.stackError));
        end;
        v27 = v30;
    end;
    return v27;
end;
local v39 = nil;
local function _()
    local l_v39_0 = v39;
    if l_v39_0 ~= nil then
        v39 = l_v39_0.next;
    end;
    return l_v39_0;
end;
v29 = {
    readContext = function(v42, _)
        return v42._currentValue;
    end,
    useCallback = function(v44, _)
        local l_v39_1 = v39;
        if l_v39_1 ~= nil then
            v39 = l_v39_1.next;
        end;
        local l_l_v39_1_0 = l_v39_1;
        table.insert(v26, {
            primitive = "Callback",
            stackError = l_Error_0.new(),
            value = if l_l_v39_1_0 ~= nil then l_l_v39_1_0.memoizedState[1] else v44
        });
        return v44;
    end,
    useContext = function(v48, _)
        table.insert(v26, {
            primitive = "Context",
            stackError = l_Error_0.new(),
            value = v48._currentValue
        });
        return v48._currentValue;
    end,
    useEffect = function(v50, _)
        local l_v39_2 = v39;
        if l_v39_2 ~= nil then
            v39 = l_v39_2.next;
        end;
        table.insert(v26, {
            primitive = "Effect",
            stackError = l_Error_0.new(),
            value = v50
        });
    end,
    useImperativeHandle = function(v53, _, _)
        local l_v39_3 = v39;
        if l_v39_3 ~= nil then
            v39 = l_v39_3.next;
        end;
        l_v39_3 = nil;
        if v53 ~= nil and typeof(v53) == "table" then
            l_v39_3 = v53.current;
        end;
        table.insert(v26, {
            primitive = "ImperativeHandle",
            stackError = l_Error_0.new(),
            value = l_v39_3
        });
    end,
    useDebugValue = function(v57, v58)
        table.insert(v26, {
            primitive = "DebugValue",
            stackError = l_Error_0.new(),
            value = if typeof(v58) == "function" then v58(v57) else v57
        });
    end,
    useLayoutEffect = function(v59, _)
        local l_v39_4 = v39;
        if l_v39_4 ~= nil then
            v39 = l_v39_4.next;
        end;
        table.insert(v26, {
            primitive = "LayoutEffect",
            stackError = l_Error_0.new(),
            value = v59
        });
    end,
    useMemo = function(v62, _)
        local l_v39_5 = v39;
        if l_v39_5 ~= nil then
            v39 = l_v39_5.next;
        end;
        local l_l_v39_5_0 = l_v39_5;
        l_v39_5 = if l_l_v39_5_0 ~= nil then l_l_v39_5_0.memoizedState[1] else {
            v62()
        };
        table.insert(v26, {
            primitive = "Memo",
            stackError = l_Error_0.new(),
            value = l_v39_5
        });
        return table.unpack(l_v39_5);
    end,
    useReducer = function(_, v67, v68)
        local l_v39_6 = v39;
        if l_v39_6 ~= nil then
            v39 = l_v39_6.next;
        end;
        local l_l_v39_6_0 = l_v39_6;
        l_v39_6 = nil;
        l_v39_6 = if l_l_v39_6_0 ~= nil then l_l_v39_6_0.memoizedState else if v68 ~= nil then v68(v67) else v67;
        table.insert(v26, {
            primitive = "Reducer",
            stackError = l_Error_0.new(),
            value = l_v39_6
        });
        return l_v39_6, function(_)
        end;
    end,
    useRef = function(v72)
        local l_v39_7 = v39;
        if l_v39_7 ~= nil then
            v39 = l_v39_7.next;
        end;
        local l_l_v39_7_0 = l_v39_7;
        l_v39_7 = if l_l_v39_7_0 ~= nil then l_l_v39_7_0.memoizedState else {
            current = v72
        };
        table.insert(v26, {
            primitive = "Ref",
            stackError = l_Error_0.new(),
            value = l_v39_7.current
        });
        return l_v39_7;
    end,
    useBinding = function(v75)
        local l_v39_8 = v39;
        if l_v39_8 ~= nil then
            v39 = l_v39_8.next;
        end;
        local l_l_v39_8_0 = l_v39_8;
        l_v39_8 = if l_l_v39_8_0 ~= nil then l_l_v39_8_0.memoizedState else {
            getValue = function(_)
                return v75;
            end
        };
        table.insert(v26, {
            primitive = "Binding",
            stackError = l_Error_0.new(),
            value = l_v39_8:getValue()
        });
        return l_v39_8, function(_)
        end;
    end,
    useState = function(v80)
        local l_v39_9 = v39;
        if l_v39_9 ~= nil then
            v39 = l_v39_9.next;
        end;
        local l_l_v39_9_0 = l_v39_9;
        l_v39_9 = if l_l_v39_9_0 ~= nil then l_l_v39_9_0.memoizedState else if typeof(v80) == "function" then v80() else v80;
        table.insert(v26, {
            primitive = "State",
            stackError = l_Error_0.new(),
            value = l_v39_9
        });
        return l_v39_9, function(_)
        end;
    end,
    useMutableSource = function(v84, v85, _)
        local l_v39_10 = v39;
        if l_v39_10 ~= nil then
            v39 = l_v39_10.next;
        end;
        l_v39_10 = v39;
        if l_v39_10 ~= nil then
            v39 = l_v39_10.next;
        end;
        l_v39_10 = v39;
        if l_v39_10 ~= nil then
            v39 = l_v39_10.next;
        end;
        l_v39_10 = v39;
        if l_v39_10 ~= nil then
            v39 = l_v39_10.next;
        end;
        l_v39_10 = v85(v84._source);
        table.insert(v26, {
            primitive = "MutableSource",
            stackError = l_Error_0.new(),
            value = l_v39_10
        });
        return l_v39_10;
    end,
    useOpaqueIdentifier = function()
        local l_v39_11 = v39;
        if l_v39_11 ~= nil then
            v39 = l_v39_11.next;
        end;
        local l_l_v39_11_0 = l_v39_11;
        if v28 and v28.mode == l_NoMode_0 then
            l_v39_11 = v39;
            if l_v39_11 ~= nil then
                v39 = l_v39_11.next;
            end;
        end;
        l_v39_11 = if l_l_v39_11_0 == nil then nil else l_l_v39_11_0.memoizedState and (l_v39_11["$$typeof"] == l_REACT_OPAQUE_ID_TYPE_0 and nil);
        table.insert(v26, {
            primitive = "OpaqueIdentifier",
            stackError = l_Error_0.new(),
            value = l_v39_11
        });
        return l_v39_11;
    end
};
local v90 = 1;
local function v99(v91, v92, v93)
    local l_source_0 = v92[v93].source;
    for v95 = 1, #v91 do
        if v91[v95].source == l_source_0 then
            local v96 = v93 + 1;
            local v97 = v95 + 1;
            local v98 = false;
            while v96 <= #v92 and v97 <= #v91 do
                if v91[v97].source ~= v92[v96].source then
                    v98 = true;
                    break;
                else
                    v96 = v96 + 1;
                    v97 = v97 + 1;
                end;
            end;
            if not v98 then
                return v95;
            end;
        end;
    end;
    return -1;
end;
local function v104(v100, v101)
    local v102 = v99(v101, v100, v90);
    if v102 ~= -1 then
        return v102;
    else
        for v103 = 1, math.min(#v100, 5) do
            v102 = v99(v101, v100, v103);
            if v102 ~= -1 then
                v90 = v103;
                return v102;
            end;
        end;
        return -1;
    end;
end;
local function _(v105, v106)
    if not v105 or v105 == "" then
        return false;
    else
        local v107 = "use" .. tostring(v106);
        if string.len(v105) < string.len(v107) then
            return false;
        else
            return l_String_0.lastIndexOf(v105, v107) == (string.len(v105) - string.len(v107)) + 1;
        end;
    end;
end;
local function v122(v109, v110)
    local v111 = v38():get(v110.primitive);
    if v111 == nil then
        return -1;
    else
        for v112 = 1, math.min(#v111, #v109) do
            local l_v112_0 = v112;
            if v111[l_v112_0].source ~= v109[l_v112_0].source then
                if l_v112_0 < #v109 then
                    local l_functionName_0 = v109[l_v112_0].functionName;
                    local l_primitive_0 = v110.primitive;
                    local v116;
                    if not l_functionName_0 or l_functionName_0 == "" then
                        v116 = false;
                    else
                        local v117 = "use" .. tostring(l_primitive_0);
                        v116 = string.len(l_functionName_0) >= string.len(v117) and l_String_0.lastIndexOf(l_functionName_0, v117) == (string.len(l_functionName_0) - string.len(v117)) + 1;
                    end;
                    if v116 then
                        l_v112_0 = l_v112_0 + 1;
                    end;
                end;
                if l_v112_0 < #v109 then
                    local l_functionName_1 = v109[l_v112_0].functionName;
                    local l_primitive_1 = v110.primitive;
                    local v120;
                    if not l_functionName_1 or l_functionName_1 == "" then
                        v120 = false;
                    else
                        local v121 = "use" .. tostring(l_primitive_1);
                        v120 = string.len(l_functionName_1) >= string.len(v121) and l_String_0.lastIndexOf(l_functionName_1, v121) == (string.len(l_functionName_1) - string.len(v121)) + 1;
                    end;
                    if v120 then
                        l_v112_0 = l_v112_0 + 1;
                    end;
                end;
                return l_v112_0;
            end;
        end;
        return -1;
    end;
end;
local function v128(v123, v124)
    local v125 = v16.parse(v124.stackError);
    local v126 = v104(v123, v125);
    local v127 = v122(v125, v124);
    if not (v126 ~= -1 and v127 ~= -1) or v126 - v127 < 2 then
        return nil;
    else
        return l_Array_0.slice(v125, v127, v126 - 1);
    end;
end;
local function _(v129)
    if v129 then
        local v130 = l_String_0.lastIndexOf(v129, ".");
        if v130 == -1 then
            v130 = 1;
        end;
        if l_String_0.substr(v129, v130, 3) == "use" then
            v130 = v130 + 3;
        end;
        return l_String_0.substr(v129, v130);
    else
        return "";
    end;
end;
local v132 = nil;
local function v157(v133, v134)
    local v135 = {};
    local v136 = nil;
    local l_v135_0 = v135;
    local v138 = 1;
    local v139 = {};
    for v140 = 1, #v134 do
        local v141 = v134[v140];
        local v142 = v128(v133, v141);
        if v142 ~= nil then
            local v143 = 0;
            if v136 ~= nil then
                while (v143 < #v142 and v143 < #v136) and v142[#v142 - v143].source == v136[#v136 - v143].source do
                    v143 = v143 + 1;
                end;
                for _ = #v136 - 1, v143 + 1, -1 do
                    l_v135_0 = table.remove(v139);
                end;
            end;
            for v145 = #v142 - v143, 2, -1 do
                local v146 = {};
                local v147 = {
                    id = nil,
                    isStateEditable = false
                };
                local l_functionName_2 = v142[v145 - 1].functionName;
                local v149;
                if l_functionName_2 then
                    local v150 = l_String_0.lastIndexOf(l_functionName_2, ".");
                    if v150 == -1 then
                        v150 = 1;
                    end;
                    if l_String_0.substr(l_functionName_2, v150, 3) == "use" then
                        v150 = v150 + 3;
                    end;
                    v149 = l_String_0.substr(l_functionName_2, v150);
                else
                    v149 = "";
                end;
                v147.name = v149;
                v147.value = nil;
                v147.subHooks = v146;
                table.insert(l_v135_0, v147);
                table.insert(v139, l_v135_0);
                l_v135_0 = v146;
            end;
            v136 = v142;
        end;
        local function _()
            local l_v138_0 = v138;
            v138 = v138 + 1;
            return l_v138_0;
        end;
        local l_primitive_2 = v141.primitive;
        local v154;
        if not (l_primitive_2 ~= "Context") or l_primitive_2 == "DebugValue" then
            v154 = nil;
        else
            local l_v138_1 = v138;
            v138 = v138 + 1;
            v154 = l_v138_1;
        end;
        local v156 = true;
        if l_primitive_2 ~= "Reducer" then
            v156 = l_primitive_2 == "State";
        end;
        table.insert(l_v135_0, {
            id = v154,
            isStateEditable = v156,
            name = l_primitive_2,
            value = v141.value,
            subHooks = {}
        });
    end;
    v132(v135, nil);
    return v135;
end;
v132 = function(v158, v159)
    local v160 = {};
    local v161 = 1;
    while v161 <= #v158 do
        local v162 = v158[v161];
        if v162.name == "DebugValue" and #v162.subHooks == 0 then
            l_Array_0.splice(v158, v161, 1);
            v161 = v161 - 1;
            table.insert(v160, v162);
        else
            v132(v162.subHooks, v162);
        end;
        v161 = v161 + 1;
    end;
    if v159 ~= nil then
        if #v160 == 1 then
            v159.value = v160[1].value;
            return ;
        elseif #v160 > 1 then
            v159.value = l_Array_0.map(v160, function(v163)
                return v163.value;
            end);
        end;
    end;
end;
local function v172(v164, v165, v166)
    if v166 == nil then
        v166 = l_ReactSharedInternals_0.ReactCurrentDispatcher;
    end;
    local l_current_0 = v166.current;
    local v168 = nil;
    v166.current = v29;
    local v169 = nil;
    local l_status_1, l_result_1 = pcall(function()
        v169 = l_Error_0.new();
        v164(v165);
    end);
    v168 = v26;
    v26 = {};
    v166.current = l_current_0;
    if not l_status_1 then
        error(l_result_1);
    end;
    return (v157(v16.parse(v169), v168));
end;
v7.inspectHooks = v172;
local function v177(v173, v174)
    local l_v174_0 = v174;
    while l_v174_0 do
        if l_v174_0.tag == l_ContextProvider_0 then
            local l__context_0 = l_v174_0.type._context;
            if not v173:has(l__context_0) then
                v173:set(l__context_0, l__context_0._currentValue);
                l__context_0._currentValue = l_v174_0.memoizedProps.value;
            end;
        end;
        l_v174_0 = l_v174_0.return_;
    end;
end;
local _ = function(v178)
    for _, v180 in v178, nil, nil do
        v180[1]._currentValue = v180[2];
    end;
end;
local function v191(v182, v183, v184, v185)
    local l_current_1 = v185.current;
    local v187 = nil;
    v185.current = v29;
    local v188 = nil;
    local l_status_2, l_result_2 = pcall(function()
        v188 = l_Error_0.new();
        v182(v183, v184);
    end);
    v187 = v26;
    v26 = {};
    v185.current = l_current_1;
    if not l_status_2 then
        error(l_result_2);
    end;
    return (v157(v16.parse(v188), v187));
end;
local function v197(v192, v193)
    if not (typeof(v192) == "table") or not v192.defaultProps then
        return v193;
    else
        local v194 = l_Object_0.assign({}, v193);
        local l_defaultProps_0 = v192.defaultProps;
        for v196 in l_defaultProps_0, nil, nil do
            if v194[v196] == nil then
                v194[v196] = l_defaultProps_0[v196];
            end;
        end;
        return v194;
    end;
end;
v7.inspectHooksOfFiber = function(v198, v199)
    if v199 == nil then
        v199 = l_ReactSharedInternals_0.ReactCurrentDispatcher;
    end;
    v28 = v198;
    if ((v198.tag ~= l_FunctionComponent_0 and v198.tag ~= l_SimpleMemoComponent_0) and v198.tag ~= l_ForwardRef_0) and v198.tag ~= l_Block_0 then
        error(l_Error_0.new("Unknown Fiber. Needs to be a function component to inspect hooks."));
    end;
    v38();
    local l_type_0 = v198.type;
    local l_memoizedProps_0 = v198.memoizedProps;
    if l_type_0 ~= v198.elementType then
        l_memoizedProps_0 = v197(l_type_0, l_memoizedProps_0);
    end;
    v39 = v198.memoizedState;
    local v202 = l_Map_0.new();
    local l_status_3, l_result_3 = pcall(function()
        v177(v202, v198);
        if v198.tag == l_ForwardRef_0 then
            return (v191(l_type_0.render, l_memoizedProps_0, v198.ref, v199));
        else
            return (v172(l_type_0, l_memoizedProps_0, v199));
        end;
    end);
    v39 = nil;
    for _, v206 in v202, nil, nil do
        v206[1]._currentValue = v206[2];
    end;
    if not l_status_3 then
        error(l_result_3);
    end;
    return l_result_3;
end;
return v7;


local v0 = {};
local v1 = require(script.Parent.ReactDebugHooks);
local l_inspectHooks_0 = v1.inspectHooks;
local l_inspectHooksOfFiber_0 = v1.inspectHooksOfFiber;
v0.inspectHooks = l_inspectHooks_0;
v0.inspectHooksOfFiber = l_inspectHooksOfFiber_0;
return v0;


local l_Parent_0 = script.Parent.Parent;
local _ = require(l_Parent_0.LuauPolyfill);
return {
    setup = function(v2)
        local v3 = {};
        local v4 = require(l_Parent_0.ReactDevtoolsShared);
        local l_backend_0 = v4.backend;
        local l_agent_0 = l_backend_0.agent;
        local l_bridge_0 = v4.bridge;
        local l_initBackend_0 = l_backend_0.initBackend;
        local v17 = l_bridge_0.new({
            listen = function(v9)
                table.insert(v3, v9);
                return function()
                    for v10, v11 in v3, nil, nil do
                        if v11 == v9 then
                            table.remove(v3, v10);
                            return ;
                        end;
                    end;
                end;
            end,
            send = function(v12, v13, _)
                for _, v16 in v3, nil, nil do
                    v16({
                        source = "react-devtools-bridge",
                        event = v12,
                        payload = v13
                    });
                end;
            end
        });
        local v18 = l_agent_0.new(v17);
        v18:addListener("shutdown", function()
            v2.emit("shutdown");
        end);
        l_initBackend_0(v2, v18, _G);
        v17:send("extensionBackendInitialized");
        return {
            agent = v18,
            hook = v2,
            bridge = v17
        };
    end
};


local l_Parent_0 = script.Parent;
return {
    setup = function(v1)
        _G.__DEV__ = true;
        _G.__DEBUG__ = v1 or false;
        _G.__PROFILE__ = true;
        _G.__EXPERIMENTAL__ = true;
        _G.__REACT_DEVTOOLS_COMPONENT_FILTERS__ = {};
        local v2 = require(l_Parent_0.ReactDevtoolsShared);
        local l_setup_0 = require(l_Parent_0.ReactDevtoolsExtensions.backend).setup;
        local l_installHook_0 = v2.hook.installHook;
        local l_store_0 = v2.devtools.store;
        l_installHook_0(_G);
        require(l_Parent_0.React);
        require(l_Parent_0.ReactRoblox);
        local l___REACT_DEVTOOLS_GLOBAL_HOOK___0 = _G.__REACT_DEVTOOLS_GLOBAL_HOOK__;
        if not require(l_Parent_0.Shared).ReactFeatureFlags.enableSchedulingProfiler then
            warn("[DeveloperTools] React was initialized before DeveloperTools. Call inspector.setupReactDevtools before requiring React to enable profiling.");
        end;
        local v7 = l_setup_0(l___REACT_DEVTOOLS_GLOBAL_HOOK___0);
        return {
            agent = v7.agent,
            bridge = v7.bridge,
            hook = v7.hook,
            store = l_store_0.new(v7.bridge)
        };
    end
};


return {
    CONCURRENT_MODE_NUMBER = 60111,
    CONCURRENT_MODE_SYMBOL_STRING = "Symbol(react.concurrent_mode)",
    CONTEXT_NUMBER = 60110,
    CONTEXT_SYMBOL_STRING = "Symbol(react.context)",
    DEPRECATED_ASYNC_MODE_SYMBOL_STRING = "Symbol(react.async_mode)",
    ELEMENT_NUMBER = 60103,
    ELEMENT_SYMBOL_STRING = "Symbol(react.element)",
    DEBUG_TRACING_MODE_NUMBER = 60129,
    DEBUG_TRACING_MODE_SYMBOL_STRING = "Symbol(react.debug_trace_mode)",
    FORWARD_REF_NUMBER = 60112,
    FORWARD_REF_SYMBOL_STRING = "Symbol(react.forward_ref)",
    FRAGMENT_NUMBER = 60107,
    FRAGMENT_SYMBOL_STRING = "Symbol(react.fragment)",
    LAZY_NUMBER = 60116,
    LAZY_SYMBOL_STRING = "Symbol(react.lazy)",
    MEMO_NUMBER = 60115,
    MEMO_SYMBOL_STRING = "Symbol(react.memo)",
    OPAQUE_ID_NUMBER = 60128,
    OPAQUE_ID_SYMBOL_STRING = "Symbol(react.opaque.id)",
    PORTAL_NUMBER = 60106,
    PORTAL_SYMBOL_STRING = "Symbol(react.portal)",
    PROFILER_NUMBER = 60114,
    PROFILER_SYMBOL_STRING = "Symbol(react.profiler)",
    PROVIDER_NUMBER = 60109,
    PROVIDER_SYMBOL_STRING = "Symbol(react.provider)",
    SCOPE_NUMBER = 60119,
    SCOPE_SYMBOL_STRING = "Symbol(react.scope)",
    STRICT_MODE_NUMBER = 60108,
    STRICT_MODE_SYMBOL_STRING = "Symbol(react.strict_mode)",
    SUSPENSE_NUMBER = 60113,
    SUSPENSE_SYMBOL_STRING = "Symbol(react.suspense)",
    SUSPENSE_LIST_NUMBER = 60120,
    SUSPENSE_LIST_SYMBOL_STRING = "Symbol(react.suspense_list)"
};


local l_console_0 = require(script.Parent.Parent.Parent.LuauPolyfill).console;
local l_HttpService_0 = game:GetService("HttpService");
local l__G_0 = _G;
local v3 = require(script.Parent.Parent.events);
local _ = function(v4, _)
    return v4;
end;
local v7 = require(script.Parent.Parent.constants);
local l_SESSION_STORAGE_LAST_SELECTION_KEY_0 = v7.SESSION_STORAGE_LAST_SELECTION_KEY;
local l_SESSION_STORAGE_RELOAD_AND_PROFILE_KEY_0 = v7.SESSION_STORAGE_RELOAD_AND_PROFILE_KEY;
local l_SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY_0 = v7.SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY;
local l___DEBUG___0 = v7.__DEBUG__;
local v12 = require(script.Parent.Parent.storage);
local l_sessionStorageGetItem_0 = v12.sessionStorageGetItem;
local l_sessionStorageRemoveItem_0 = v12.sessionStorageRemoveItem;
local l_sessionStorageSetItem_0 = v12.sessionStorageSetItem;
local _ = function(_, _)
end;
local _ = function(_)
end;
local _ = function(_)
end;
local _ = function(_)
end;
local function _()
end;
local _ = require(script.Parent.Parent.bridge);
local _ = require(script.Parent.types);
local _ = require(script.Parent.Parent.types);
local function v30(v29, ...)
    if l___DEBUG___0 then
        print(v29, ...);
    end;
end;
local v31 = setmetatable({}, {
    __index = v3
});
local v32 = {
    __index = v31
};
v31.new = function(v33)
    local v34 = setmetatable(v3.new(), v32);
    v34._bridge = v33;
    v34._isProfiling = false;
    v34._recordChangeDescriptions = false;
    v34._rendererInterfaces = {};
    v34._persistedSelection = nil;
    v34._persistedSelectionMatch = nil;
    v34._traceUpdatesEnabled = false;
    if l_sessionStorageGetItem_0(l_SESSION_STORAGE_RELOAD_AND_PROFILE_KEY_0) == "true" then
        v34._recordChangeDescriptions = l_sessionStorageGetItem_0(l_SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY_0) == "true";
        v34._isProfiling = true;
        l_sessionStorageRemoveItem_0(l_SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY_0);
        l_sessionStorageRemoveItem_0(l_SESSION_STORAGE_RELOAD_AND_PROFILE_KEY_0);
    end;
    local v35 = l_sessionStorageGetItem_0(l_SESSION_STORAGE_LAST_SELECTION_KEY_0);
    if v35 ~= nil then
        v34._persistedSelection = l_HttpService_0.JSONDecode(v35);
    end;
    local function _(v36)
        return function(...)
            v36(v34, ...);
        end;
    end;
    local v38 = "copyElementPath";
    local l_copyElementPath_0 = v34.copyElementPath;
    local l_l_copyElementPath_0_0 = l_copyElementPath_0 --[[ copy: 8 -> 9 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_0(v34, ...);
    end);
    v38 = "deletePath";
    l_copyElementPath_0 = v34.deletePath;
    local l_l_copyElementPath_0_1 = l_copyElementPath_0 --[[ copy: 8 -> 10 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_1(v34, ...);
    end);
    v38 = "getProfilingData";
    l_copyElementPath_0 = v34.getProfilingData;
    local l_l_copyElementPath_0_2 = l_copyElementPath_0 --[[ copy: 8 -> 11 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_2(v34, ...);
    end);
    v38 = "getProfilingStatus";
    l_copyElementPath_0 = v34.getProfilingStatus;
    local l_l_copyElementPath_0_3 = l_copyElementPath_0 --[[ copy: 8 -> 12 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_3(v34, ...);
    end);
    v38 = "getOwnersList";
    l_copyElementPath_0 = v34.getOwnersList;
    local l_l_copyElementPath_0_4 = l_copyElementPath_0 --[[ copy: 8 -> 13 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_4(v34, ...);
    end);
    v38 = "inspectElement";
    l_copyElementPath_0 = v34.inspectElement;
    local l_l_copyElementPath_0_5 = l_copyElementPath_0 --[[ copy: 8 -> 14 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_5(v34, ...);
    end);
    v38 = "logElementToConsole";
    l_copyElementPath_0 = v34.logElementToConsole;
    local l_l_copyElementPath_0_6 = l_copyElementPath_0 --[[ copy: 8 -> 15 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_6(v34, ...);
    end);
    v38 = "overrideSuspense";
    l_copyElementPath_0 = v34.overrideSuspense;
    local l_l_copyElementPath_0_7 = l_copyElementPath_0 --[[ copy: 8 -> 16 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_7(v34, ...);
    end);
    v38 = "overrideValueAtPath";
    l_copyElementPath_0 = v34.overrideValueAtPath;
    local l_l_copyElementPath_0_8 = l_copyElementPath_0 --[[ copy: 8 -> 17 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_8(v34, ...);
    end);
    v38 = "reloadAndProfile";
    l_copyElementPath_0 = v34.reloadAndProfile;
    local l_l_copyElementPath_0_9 = l_copyElementPath_0 --[[ copy: 8 -> 18 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_9(v34, ...);
    end);
    v38 = "renamePath";
    l_copyElementPath_0 = v34.renamePath;
    local l_l_copyElementPath_0_10 = l_copyElementPath_0 --[[ copy: 8 -> 19 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_10(v34, ...);
    end);
    v38 = "setTraceUpdatesEnabled";
    l_copyElementPath_0 = v34.setTraceUpdatesEnabled;
    local l_l_copyElementPath_0_11 = l_copyElementPath_0 --[[ copy: 8 -> 20 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_11(v34, ...);
    end);
    v38 = "startProfiling";
    l_copyElementPath_0 = v34.startProfiling;
    local l_l_copyElementPath_0_12 = l_copyElementPath_0 --[[ copy: 8 -> 21 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_12(v34, ...);
    end);
    v38 = "stopProfiling";
    l_copyElementPath_0 = v34.stopProfiling;
    local l_l_copyElementPath_0_13 = l_copyElementPath_0 --[[ copy: 8 -> 22 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_13(v34, ...);
    end);
    v38 = "storeAsGlobal";
    l_copyElementPath_0 = v34.storeAsGlobal;
    local l_l_copyElementPath_0_14 = l_copyElementPath_0 --[[ copy: 8 -> 23 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_14(v34, ...);
    end);
    v38 = "syncSelectionFromNativeElementsPanel";
    l_copyElementPath_0 = v34.syncSelectionFromNativeElementsPanel;
    local l_l_copyElementPath_0_15 = l_copyElementPath_0 --[[ copy: 8 -> 24 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_15(v34, ...);
    end);
    v38 = "shutdown";
    l_copyElementPath_0 = v34.shutdown;
    local l_l_copyElementPath_0_16 = l_copyElementPath_0 --[[ copy: 8 -> 25 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_16(v34, ...);
    end);
    v38 = "updateConsolePatchSettings";
    l_copyElementPath_0 = v34.updateConsolePatchSettings;
    local l_l_copyElementPath_0_17 = l_copyElementPath_0 --[[ copy: 8 -> 26 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_17(v34, ...);
    end);
    v38 = "updateComponentFilters";
    l_copyElementPath_0 = v34.updateComponentFilters;
    local l_l_copyElementPath_0_18 = l_copyElementPath_0 --[[ copy: 8 -> 27 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_18(v34, ...);
    end);
    v38 = "viewAttributeSource";
    l_copyElementPath_0 = v34.viewAttributeSource;
    local l_l_copyElementPath_0_19 = l_copyElementPath_0 --[[ copy: 8 -> 28 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_19(v34, ...);
    end);
    v38 = "viewElementSource";
    l_copyElementPath_0 = v34.viewElementSource;
    local l_l_copyElementPath_0_20 = l_copyElementPath_0 --[[ copy: 8 -> 29 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_20(v34, ...);
    end);
    v38 = "overrideContext";
    l_copyElementPath_0 = v34.overrideContext;
    local l_l_copyElementPath_0_21 = l_copyElementPath_0 --[[ copy: 8 -> 30 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_21(v34, ...);
    end);
    v38 = "overrideHookState";
    l_copyElementPath_0 = v34.overrideHookState;
    local l_l_copyElementPath_0_22 = l_copyElementPath_0 --[[ copy: 8 -> 31 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_22(v34, ...);
    end);
    v38 = "overrideProps";
    l_copyElementPath_0 = v34.overrideProps;
    local l_l_copyElementPath_0_23 = l_copyElementPath_0 --[[ copy: 8 -> 32 ]];
    v33:addListener(v38, function(...)
        l_l_copyElementPath_0_23(v34, ...);
    end);
    v38 = "overrideState";
    l_copyElementPath_0 = v34.overrideState;
    v33:addListener(v38, function(...)
        l_copyElementPath_0(v34, ...);
    end);
    if v34._isProfiling then
        v33:send("profilingStatus", true);
    end;
    v33:send("isBackendStorageAPISupported", true);
    return v34;
end;
v31.getRendererInterfaces = function(v64)
    return v64._rendererInterfaces;
end;
v31.copyElementPath = function(v65, v66)
    local l_id_0 = v66.id;
    local l_path_0 = v66.path;
    local l_rendererID_0 = v66.rendererID;
    local v70 = v65._rendererInterfaces[l_rendererID_0];
    if v70 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_0, l_id_0));
        return ;
    else
        v70.copyElementPath(l_id_0, l_path_0);
        return ;
    end;
end;
v31.deletePath = function(v71, v72)
    local l_hookID_0 = v72.hookID;
    local l_id_1 = v72.id;
    local l_path_1 = v72.path;
    local l_rendererID_1 = v72.rendererID;
    local l_type_0 = v72.type;
    local v78 = v71._rendererInterfaces[l_rendererID_1];
    if v78 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_1, l_id_1));
        return ;
    else
        v78.deletePath(l_type_0, l_id_1, l_hookID_0, l_path_1);
        return ;
    end;
end;
v31.getInstanceAndStyle = function(v79, v80)
    local l_id_2 = v80.id;
    local l_rendererID_2 = v80.rendererID;
    local v83 = v79._rendererInterfaces[l_rendererID_2];
    if v83 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\"", l_rendererID_2));
        return nil;
    else
        return v83.getInstanceAndStyle(l_id_2);
    end;
end;
v31.getIDForNode = function(v84, v85)
    for _, v87 in v84._rendererInterfaces, nil, nil do
        local l_status_0, l_result_0 = pcall(v87.getFiberIDForNative, v85, true);
        if l_status_0 and l_result_0 ~= nil then
            return l_result_0;
        end;
    end;
    return nil;
end;
v31.getProfilingData = function(v90, v91)
    local l_rendererID_3 = v91.rendererID;
    local v93 = v90._rendererInterfaces[l_rendererID_3];
    if v93 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\"", l_rendererID_3));
    end;
    v90._bridge:send("profilingData", v93.getProfilingData());
end;
v31.getProfilingStatus = function(v94)
    v94._bridge:send("profilingStatus", v94._isProfiling);
end;
v31.getOwnersList = function(v95, v96)
    local l_id_3 = v96.id;
    local l_rendererID_4 = v96.rendererID;
    local v99 = v95._rendererInterfaces[l_rendererID_4];
    if v99 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_4, l_id_3));
        return ;
    else
        v95._bridge:send("ownersList", {
            id = l_id_3,
            owners = v99.getOwnersList(l_id_3)
        });
        return ;
    end;
end;
v31.inspectElement = function(v100, v101)
    local l_id_4 = v101.id;
    local l_path_2 = v101.path;
    local l_rendererID_5 = v101.rendererID;
    local v105 = v100._rendererInterfaces[l_rendererID_5];
    if v105 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_5, l_id_4));
        return ;
    else
        v100._bridge:send("inspectedElement", v105.inspectElement(l_id_4, l_path_2));
        if not (v100._persistedSelectionMatch ~= nil) or v100._persistedSelectionMatch.id ~= l_id_4 then
            v100._persistedSelection = nil;
            v100._persistedSelectionMatch = nil;
            v105.setTrackedPath(nil);
            v100:_throttledPersistSelection(l_rendererID_5, l_id_4);
        end;
        return ;
    end;
end;
v31.logElementToConsole = function(v106, v107)
    local l_id_5 = v107.id;
    local l_rendererID_6 = v107.rendererID;
    local v110 = v106._rendererInterfaces[l_rendererID_6];
    if v110 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_6, l_id_5));
        return ;
    else
        v110.logElementToConsole(l_id_5);
        return ;
    end;
end;
v31.overrideSuspense = function(v111, v112)
    local l_id_6 = v112.id;
    local l_rendererID_7 = v112.rendererID;
    local l_forceFallback_0 = v112.forceFallback;
    local v116 = v111._rendererInterfaces[l_rendererID_7];
    if v116 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_7, l_id_6));
        return ;
    else
        v116.overrideSuspense(l_id_6, l_forceFallback_0);
        return ;
    end;
end;
v31.overrideValueAtPath = function(v117, v118)
    local l_hookID_1 = v118.hookID;
    local l_id_7 = v118.id;
    local l_path_3 = v118.path;
    local l_rendererID_8 = v118.rendererID;
    local l_type_1 = v118.type;
    local l_value_0 = v118.value;
    local v125 = v117._rendererInterfaces[l_rendererID_8];
    if v125 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_8, l_id_7));
        return ;
    else
        v125.overrideValueAtPath(l_type_1, l_id_7, l_hookID_1, l_path_3, l_value_0);
        return ;
    end;
end;
v31.overrideContext = function(v126, v127)
    local l_id_8 = v127.id;
    local l_path_4 = v127.path;
    local l_rendererID_9 = v127.rendererID;
    local l_wasForwarded_0 = v127.wasForwarded;
    local l_value_1 = v127.value;
    if not l_wasForwarded_0 then
        v126:overrideValueAtPath({
            id = l_id_8,
            path = l_path_4,
            rendererID = l_rendererID_9,
            type = "context",
            value = l_value_1
        });
    end;
end;
v31.overrideHookState = function(v133, v134)
    local l_id_9 = v134.id;
    local _ = v134.hookID;
    local l_path_5 = v134.path;
    local l_rendererID_10 = v134.rendererID;
    local l_wasForwarded_1 = v134.wasForwarded;
    local l_value_2 = v134.value;
    if not l_wasForwarded_1 then
        v133:overrideValueAtPath({
            id = l_id_9,
            path = l_path_5,
            rendererID = l_rendererID_10,
            type = "hooks",
            value = l_value_2
        });
    end;
end;
v31.overrideProps = function(v141, v142)
    local l_id_10 = v142.id;
    local l_path_6 = v142.path;
    local l_rendererID_11 = v142.rendererID;
    local l_wasForwarded_2 = v142.wasForwarded;
    local l_value_3 = v142.value;
    if not l_wasForwarded_2 then
        v141:overrideValueAtPath({
            id = l_id_10,
            path = l_path_6,
            rendererID = l_rendererID_11,
            type = "props",
            value = l_value_3
        });
    end;
end;
v31.overrideState = function(v148, v149)
    local l_id_11 = v149.id;
    local l_path_7 = v149.path;
    local l_rendererID_12 = v149.rendererID;
    local l_wasForwarded_3 = v149.wasForwarded;
    local l_value_4 = v149.value;
    if not l_wasForwarded_3 then
        v148:overrideValueAtPath({
            id = l_id_11,
            path = l_path_7,
            rendererID = l_rendererID_12,
            type = "state",
            value = l_value_4
        });
    end;
end;
v31.reloadAndProfile = function(v155, v156)
    l_sessionStorageSetItem_0(l_SESSION_STORAGE_RELOAD_AND_PROFILE_KEY_0, "true");
    l_sessionStorageSetItem_0(l_SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY_0, not v156 and "false" or "true");
    v155._bridge:send("reloadAppForProfiling");
end;
v31.renamePath = function(v157, v158)
    local l_hookID_3 = v158.hookID;
    local l_id_12 = v158.id;
    local l_newPath_0 = v158.newPath;
    local l_oldPath_0 = v158.oldPath;
    local l_rendererID_13 = v158.rendererID;
    local l_type_2 = v158.type;
    local v165 = v157._rendererInterfaces[l_rendererID_13];
    if v165 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_13, l_id_12));
        return ;
    else
        v165.renamePath(l_type_2, l_id_12, l_hookID_3, l_oldPath_0, l_newPath_0);
        return ;
    end;
end;
v31.selectNode = function(v166, v167)
    local v168 = v166:getIDForNode(v167);
    if v168 ~= nil then
        v166._bridge:send("selectFiber", v168);
    end;
end;
v31.setRendererInterface = function(v169, v170, v171)
    v169._rendererInterfaces[v170] = v171;
    if v169._isProfiling then
        v171.startProfiling(v169._recordChangeDescriptions);
    end;
    v171.setTraceUpdatesEnabled(v169._traceUpdatesEnabled);
    local l__persistedSelection_0 = v169._persistedSelection;
    if l__persistedSelection_0 ~= nil and l__persistedSelection_0.rendererID == v170 then
        v171.setTrackedPath(l__persistedSelection_0.path);
    end;
end;
v31.setTraceUpdatesEnabled = function(v173, v174)
    v173._traceUpdatesEnabled = v174;
    for _, v176 in v173._rendererInterfaces, nil, nil do
        v176.setTraceUpdatesEnabled(v174);
    end;
end;
v31.syncSelectionFromNativeElementsPanel = function(v177)
    local v178 = l__G_0.__REACT_DEVTOOLS_GLOBAL_HOOK__["$0"];
    if v178 == nil then
        return ;
    else
        v177:selectNode(v178);
        return ;
    end;
end;
v31.shutdown = function(v179)
    v179:emit("shutdown");
end;
v31.startProfiling = function(v180, v181)
    v180._recordChangeDescriptions = v181;
    v180._isProfiling = true;
    for _, v183 in v180._rendererInterfaces, nil, nil do
        v183.startProfiling(v181);
    end;
    v180._bridge:send("profilingStatus", v180._isProfiling);
end;
v31.stopProfiling = function(v184)
    v184._isProfiling = false;
    v184._recordChangeDescriptions = false;
    for _, v186 in v184._rendererInterfaces, nil, nil do
        v186.stopProfiling();
    end;
    v184._bridge:send("profilingStatus", v184._isProfiling);
end;
v31.storeAsGlobal = function(v187, v188)
    local l_count_0 = v188.count;
    local l_id_13 = v188.id;
    local l_path_8 = v188.path;
    local l_rendererID_14 = v188.rendererID;
    local v193 = v187._rendererInterfaces[l_rendererID_14];
    if v193 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_14, l_id_13));
        return ;
    else
        v193.storeAsGlobal(l_id_13, l_path_8, l_count_0);
        return ;
    end;
end;
v31.updateConsolePatchSettings = function(_, v195)
    local l_appendComponentStack_0 = v195.appendComponentStack;
    local l_breakOnConsoleErrors_0 = v195.breakOnConsoleErrors;
    if not l_appendComponentStack_0 and not l_breakOnConsoleErrors_0 then
        return ;
    else
        local _ = {
            appendComponentStack = l_appendComponentStack_0,
            breakOnConsoleErrors = l_breakOnConsoleErrors_0
        };
        return ;
    end;
end;
v31.updateComponentFilters = function(v199, v200)
    for _, v202 in v199._rendererInterfaces, nil, nil do
        v202.updateComponentFilters(v200);
    end;
end;
v31.viewAttributeSource = function(v203, v204)
    local l_id_14 = v204.id;
    local l_path_9 = v204.path;
    local l_rendererID_15 = v204.rendererID;
    local v208 = v203._rendererInterfaces[l_rendererID_15];
    if v208 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_15, l_id_14));
        return ;
    else
        v208.prepareViewAttributeSource(l_id_14, l_path_9);
        return ;
    end;
end;
v31.viewElementSource = function(v209, v210)
    local l_id_15 = v210.id;
    local l_rendererID_16 = v210.rendererID;
    local v213 = v209._rendererInterfaces[l_rendererID_16];
    if v213 == nil then
        l_console_0.warn(string.format("Invalid renderer id \"%d\" for element \"%d\"", l_rendererID_16, l_id_15));
        return ;
    else
        v213.prepareViewElementSource(l_id_15);
        return ;
    end;
end;
v31.onTraceUpdates = function(v214, v215)
    v214:emit("traceUpdates", v215);
end;
v31.onHookOperations = function(v216, v217)
    if l__G_0.__DEBUG__ then
        v30("onHookOperations", v217);
    end;
    v216._bridge:send("operations", v217);
    if v216._persistedSelection ~= nil then
        local v218 = v217[1];
        if v216._persistedSelection.rendererID == v218 then
            local v219 = v216._rendererInterfaces[v218];
            if v219 == nil then
                l_console_0.warn(string.format("Invalid renderer id \"%d\"", v218));
                return ;
            else
                local l__persistedSelectionMatch_0 = v216._persistedSelectionMatch;
                local v221 = v219.getBestMatchForTrackedPath();
                v216._persistedSelectionMatch = v221;
                local v222 = if l__persistedSelectionMatch_0 ~= nil then l__persistedSelectionMatch_0.id else nil;
                local v223 = if v221 ~= nil then v221.id else nil;
                if v222 ~= v223 and v223 ~= nil then
                    v216._bridge:send("selectFiber", v223);
                end;
                if not (not (v221 ~= nil) or not v221.isFullMatch) then
                    v216._persistedSelection = nil;
                    v216._persistedSelectionMatch = nil;
                    v219.setTrackedPath(nil);
                end;
            end;
        end;
    end;
end;
v31.onUnsupportedRenderer = function(v224, v225)
    v224._bridge:send("unsupportedRendererVersion", v225);
end;
v31._throttledPersistSelection = function(v226, v227, v228)
    local v229 = v226._rendererInterfaces[v227];
    local v230 = if v229 ~= nil then v229.getPathForElement(v228) else nil;
    if v230 ~= nil then
        l_sessionStorageSetItem_0(l_SESSION_STORAGE_LAST_SELECTION_KEY_0, l_HttpService_0:JSONEncode({
            rendererID = v227,
            path = v230
        }));
        return ;
    else
        l_sessionStorageRemoveItem_0(l_SESSION_STORAGE_LAST_SELECTION_KEY_0);
        return ;
    end;
end;
return v31;


local _ = require(script.Parent.types);
return {
    patch = function(_)
    end,
    unpatch = function()
    end,
    error = function(...)
        error(...);
    end,
    warn = function(...)
        warn(...);
    end,
    log = function(...)
        print(...);
    end,
    registerRenderer = function(_)
    end
};


local l_Array_0 = require(script.Parent.Parent.LuauPolyfill).Array;
local _ = require(script.agent);
local _ = require(script.types);
return {
    initBackend = function(v3, v4, v5)
        if v3 == nil then
            return function()
            end;
        else
            local v10 = {
                v3.sub("renderer-attached", function(v6)
                    local l_id_0 = v6.id;
                    local l_rendererInterface_0 = v6.rendererInterface;
                    v4:setRendererInterface(l_id_0, l_rendererInterface_0);
                    l_rendererInterface_0.flushInitialOperations();
                end),
                v3.sub("unsupported-renderer-version", function(v9)
                    v4:onUnsupportedRenderer(v9);
                end),
                v3.sub("operations", function(...)
                    v4:onHookOperations(...);
                end),
                v3.sub("traceUpdates", function(...)
                    v4:onTraceUpdates(...);
                end)
            };
            local function v15(v11, v12)
                local l_attach_0 = require(script.renderer).attach;
                local v14 = v3.rendererInterfaces:get(v11);
                if v14 == nil then
                    if type(v12.findFiberByHostInstance) == "function" then
                        v14 = l_attach_0(v3, v11, v12, v5);
                    elseif not v12.ComponentTree then
                    end;
                    if v14 ~= nil then
                        v3.rendererInterfaces:set(v11, v14);
                    end;
                end;
                if v14 ~= nil then
                    v3.emit("renderer-attached", {
                        id = v11,
                        renderer = v12,
                        rendererInterface = v14
                    });
                    return ;
                else
                    v3.emit("unsupported-renderer-version", v11);
                    return ;
                end;
            end;
            v3.renderers:forEach(function(v16, v17)
                v15(v17, v16);
            end);
            table.insert(v10, v3.sub("renderer", function(v18)
                v15(v18.id, v18.renderer);
            end));
            v3.emit("react-devtools", v4);
            v3.reactDevtoolsAgent = v4;
            local function v21()
                l_Array_0.forEach(v10, function(v19)
                    v19();
                end);
                v3.rendererInterfaces:forEach(function(v20)
                    v20.cleanup();
                end);
                v3.reactDevtoolsAgent = nil;
            end;
            v4:addListener("shutdown", v21);
            table.insert(v10, function()
                v4:removeListener("shutdown", v21);
            end);
            return function()
                for _, v23 in v10, nil, nil do
                    v23();
                end;
            end;
        end;
    end,
    agent = require(script.agent),
    NativeStyleEditor = {
        types = require(script.NativeStyleEditor.types)
    }
};