def extract_item
      weight = Random.rand(@total_weight)
      @weights.each do |range, item|
        return item if range === weight
      end
    end
def extract_item
      weight = Random.rand(@total_weight)
      @weights.each do |range, item|
        return item if range === weight
      end
    end
Extract item based on weights distribution

 @return [Object]