function Option.__eq(T,z)if Option.Is(z)then if T:IsSome()and z:IsSome()then return T:Unwrap()==z:Unwrap()elseif T:IsNone()and z:IsNone()then return true end end return false end

function Option:__eq(opt)
	if Option.Is(opt) then
		if self:IsSome() and opt:IsSome() then
			return (self:Unwrap() == opt:Unwrap())
		elseif self:IsNone() and opt:IsNone() then
			return true
		end
	end
	return false
end
