N, M = gets.split.map(&:to_i).sort
S, T = [gets.chomp, gets.chomp].sort_by(&:length)

if N.lcm(M) == N
    U = M.times.select{|v| v % N == 0}.map{ |v| T[v] }.join('')
    puts U == S ? N.lcm(M) : -1
else
    a = (N.lcm(M) / N).lcm(N.lcm(M) / M)
    U = N.times.select { |v| v % a == 0 }.map { |v| S[v] }.join('')
    V = M.times.select { |v| v % a == 0 }.map { |v| T[v] }.join('')
    puts U == V ? N.lcm(M) : -1
end
