# frozen_string_literal: true N, M, K = gets.chomp.split.map(&:to_i) ROW = gets.chomp.split OP = ROW[0].intern BS = ROW[1..-1].map(&:to_i) AS = N.times.map do gets.to_i end puts(case OP when :+ ((AS.sum * M) % K + (BS.sum * N) % K) % K else BS_SUM = BS.sum AS.map { |a| (a * BS_SUM) % K }.sum % K end)