code: def or(value=nil, &block)
        return Failure(block.call(@value)) if failure? && block_given?
        return Failure(value) if failure?
        return self
      end
docs: If it is a Failure it will return a new Failure with the provided value
   @return [Success, Failure]