You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: cli.rb
    path of file: ./repos/gitlabhq/qa/qa/vendor/one_password
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

require 'benchmark'

module QA
  module Vendor
    module OnePassword
      class CLI
   
    
        def new_otp(old_otp = "")
          # Fetches a new OTP that is not equal to the old OTP
          new_otp = ""
          time = Benchmark.realtime do
            # An otp is valid for 30 seconds so 64 attempts with 0.5 interval are enough to ensure a new OTP is obtained
            Support::Retrier.retry_until(max_attempts: 64, sleep_interval: 0.5) do
              new_otp = current_otp
              new_otp != old_otp
            end
          end

          QA::Runtime::Logger.info("Fetched new OTP in: #{time} seconds")

          new_otp
        end