N, M = gets.split.map(&:to_i).sort
S, T = [gets.chomp, gets.chomp].sort{|a, b| a.length <=> b.length}

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