# File lib/quiz1/t/solutions/Jamis Buck/lib/cipher.rb, line 131
  def decrypt( message )
    raise "bad decrypt message: #{message.inspect}" if message =~ /[^A-Z ]/

    reset
    chars = message.split(//).reject { |c| c == " " }.map { |c| c[0] - 64 }
    key = generate_key( chars.length )
    chars.zip( key ).map { |c,k| ( k >= c ? c + 26 - k : c - k ) }.map { |c| (c+64).chr }.join
  end