l = gets.split.map(&:to_i) result = l[0...-1].inject do |m, i| (m * (i % l[-1])) % l[-1] end puts result