def lscan; gets.split.map(&:to_i); end require 'prime' x,a,y,b = lscan xx = x.prime_division.map{|q,c| [q,c*a]}.to_h yy = y.prime_division.map{|q,c| [q,c*b]}.to_h res = yy.all? {|yq, yc| xx[yq] && yc <= xx[yq] } puts res ? 'Yes' : 'No'