class CaesarCipher
  ALFABET = ('a'..'z').to_a
  CHARS = 'a-zA-Z'.freeze

  def initialize(shift)
    lkey = ALFABET.rotate(shift).join
    @key = lkey + lkey.upcase
  end

  def encrypt(str)
    str.tr(CHARS, @key)
  end

  def decrypt(str)
    str.tr(@key, CHARS)
  end
end

z = CaesarCipher.new(9)
p z.encrypt('huj pizda dzigurda')