local k=require(script.Parent.Parent:WaitForChild("\109\097\105\110"))local J=k.func local i=k.event local c=k.getProp local O=k.setProp local h=k.setProps local z=k.destroyer local t=(k("\105\111"))({(J("\046\115\097\118\101\084\111\073\110\116\101\114\110\097\108"))(function(k,J,i)k[J]=i end);(J("\046\103\101\116\070\114\111\109\073\110\116\101\114\110\097\108"))(function(k,J)return k[J]end),(J("\046\112\114\105\110\116\102"))(function(k,J,...)print(J:format(...))end),(J("\046\112\114\105\110\116\073\110\116\101\114\110\097\108"))(function(k)table.foreach(k,print)end)})local y=t.new()y.saveToInternal("\072\101\108\108\111","\119\111\114\108\100\033")print("\072\101\108\108\111\044 "..y.getFromInternal("\072\101\108\108\111"))y.printf("\072\101\108\108\111\044 \037\115","\119\111\114\108\100\033")y.printInternal()return nil
local Class = require(script.Parent.Parent:WaitForChild("main"))
local def = Class.func
local event = Class.event
local get = Class.getProp
local set = Class.setProp
local prop = Class.setProps
local destroyer = Class.destroyer

local ioClass = Class "io" {
    def ".saveToInternal" (function(internal, key, value)
        internal[key] = value
    end);

    def ".getFromInternal" (function(internal, key)
        return internal[key]
    end);

    def ".printf" (function(internal, str, ...)
        print(str:format(...))
    end);

    def ".printInternal" (function(internal)
        table.foreach(internal, print)
    end);
}

local io = ioClass.new()

io.saveToInternal("Hello", "world!")
print("Hello, " .. io.getFromInternal("Hello"))

io.printf("Hello, %s", "world!")
io.printInternal()

return nil