sub reduce { ($x,$y)=@_;($x,$y)=($y%$x,$x)while$x;map$_/$y,@_ }