A, B = gets.split.map(&:to_i) ans = (1 .. A + B).inject(Float::INFINITY) do |r, c| break -1 if r < c m, d = (A + B).divmod(c) next m if d > 0 break c if (A + c) % B == 0 && (B + c) % A == 0 break m if (A + m) % B == 0 && (B + m) % A == 0 next m end puts ans