if not game:IsLoaded() then game.Loaded:Wait() end local a = (cloneref and cloneref(game:GetService("Players"))) or game:GetService("Players") local b = (cloneref and cloneref(game:GetService("TextChatService"))) or game:GetService("TextChatService") local c = (cloneref and cloneref(game:GetService("Chat"))) or game:GetService("Chat") local d = (cloneref and cloneref(game:GetService("CoreGui"))) or game:GetService("CoreGui") local e = a.LocalPlayer local function f() local g = d:FindFirstChild("ExperienceChat") if g then local h = g:FindFirstChild("appLayout") local i = h and h:FindFirstChild("chatInputBar") local j = i and i:FindFirstChild("Background") local k = j and j:FindFirstChild("Container") local l = k and k.TextContainer:FindFirstChild("TextBoxContainer") if l then return l:FindFirstChild("TextBox") end end local m = e:WaitForChild("PlayerGui"):FindFirstChild("Chat") local n = m and m:FindFirstChild("Frame") local o = n and n:FindFirstChild("ChatBar") return o and o:FindFirstChild("TextBox") end local function p(q) local r local s = pcall(function() r = c:FilterStringForBroadcast(q, e) end) return not s or r ~= q end local function t(u) pcall(function() b.TextChannels.RBXGeneral:SendAsync(u) end) end local v = f() if v then v.FocusLost:Connect(function(w) if w and v.Text ~= "" then local x = v.Text v.Text = "" if p(x) then chat(x) else t(x) end end end) end