function MaidClass.Mark(j,T)local y=typeof(T)if DESTRUCTORS[y]then j.Trash[T]=y else error(FORMAT_STR:format(y),2)end end function MaidClass.Unmark(j,T)if T then j.Trash[T]=nil else j.Trash={}end end function MaidClass.Sweep(T)for T,j in next,T.Trash do DESTRUCTORS[j](T)end T.Trash={}end


function MaidClass:Mark(item)
	local tof = typeof(item)
	
	if (DESTRUCTORS[tof]) then
		self.Trash[item] = tof
	else
		error(FORMAT_STR:format(tof), 2)
	end
end

function MaidClass:Unmark(item)
	if (item) then
		self.Trash[item] = nil
	else
		self.Trash = {}
	end
end

function MaidClass:Sweep()
	for item, tof in next, self.Trash do
		DESTRUCTORS[tof](item)
	end
	self.Trash = {}
end
