local ReceiverBase = {}

function ReceiverBase:new(o)
	o = o or {}
	setmetatable(o, self)
	self.__index = self
	return o
end

function ReceiverBase:p1Dispatcher(code)
	self[code] = function(self, x, ...)
		local N = select(1, ...)
		return nil, self[code..tostring(N)](self, x, select(2, ...))
	end
end

return ReceiverBase