return function(q)q:RegisterHook("\066\101\102\111\114\101\082\117\110",function(U)if U.Group=="\068\101\102\097\117\108\116\065\100\109\105\110"and U.Executor.UserId~=game.CreatorId then return"\089\111\117 \100\111\110\'\116 \104\097\118\101 \112\101\114\109\105\115\115\105\111\110 \116\111 \114\117\110 \116\104\105\115 \099\111\109\109\097\110\100"end q:RegisterHook("\065\102\116\101\114\082\117\110",function(q)print(q.Response)return"\067\111\109\109\097\110\100 \104\097\115 \098\101\101\110 \114\117\110\046"end)end)end
--local GROUP_ID = replace with wanted group ID(s), separate with comma
--local GROUP_RANK = replace with wanted group rank(s), e.g. 255, separate wtih comma

return function(registry)
	registry:RegisterHook("BeforeRun", function(context)
		if context.Group == "DefaultAdmin" and context.Executor.UserId ~= game.CreatorId then
			return "You don't have permission to run this command"
		end
		--if context.Group == "DefaultAdmin" and not (context.Executor:GetRankInGroup(GROUP_ID) == GROUP_RANK) then
		--return "You don't have permission to run this command"
		--end
		--remove --s here to enable for group usage
		registry:RegisterHook("AfterRun", function(context)
			print(context.Response) -- see the actual response from the command execution
			return "Command has been run."
		end)
	end)
end
