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: png.rb
    path of file: ./repos/squib/lib/squib/dsl
    
    the code of the file until where you have to start completion: require_relative '../errors_warnings/warn_unexpected
    
      def run(opts)
        warn_if_unexpected opts
        Dir.chdir(deck.img_dir) do
          range = Args.extract_range opts, deck
          paint = Args.extract_paint opts, deck
          box   = Args.extract_scale_box opts, deck
          trans = Args.extract_transform opts, deck
          ifile = Args.extract_input_file opts, deck
          deck.progress_bar.start('Loading PNG(s)', range.size) do |bar|
            range.each do |i|
              deck.cards[i].png(ifile[i].file, box[i], paint[i], trans[i])
              bar.increment
            end
          end
        end

      end