STDOUT.sync=true m=gets.to_i.times{gets.split.map(&:to_f)} puts '? 0 0' dx,dy=gets.split.map(&:to_f) puts '? 1 1' cms,cps=gets.split.map(&:to_f) cms-=dx cps-=dy c=(cms+cps)/2 s=(cps-cms)/2 puts '!' m.each{|x,y| puts '%f %f'%[x*c-y*s+dx,x*s+y*c+dy] }