For $x, y \in U$ given, how can I find a $C^\infty$ diffeomorphism $F: U\to U$ satisfying $F(x)=y$? The problem is:

Given $x, y\in U\subset \Bbb{R}^n$, where $U$ is open and connected, find a $C^\infty$ diffeomorphism $F: U \to U$ such that $F(x)=y$.

This is a problem in basic Real Analysis. I am looking for a solution without using the concept of flow, like this one. (Maybe using bump function? Or something easier?)
 A: Here's an idea: In one variable, suppose $x_1,x_2\in (a,b).$ Then there exists a diffeormorphism of $\mathbb R$ onto $\mathbb R$ such that $f(x_1) = x_2$ and $f(x) = x$ in an open set containing $(-\infty,a]\cup [b,\infty).$ Thus the diffeomorphism $f$ is the identity outside of a compact subset of $(a,b),$ $f$ maps $(a,b)$ onto $(a,b),$ and $f(x_1) = f(x_2).$ 
Suppose for simplicity we're now in $\mathbb R^2.$ Choose an open square $S=(a,b)\times (c,d)$ with $\bar {S}\subset U.$ Let $(x_1,y_1),(x_2,y_2)\in S.$ Choose two maps $f,g$ like the above with respect to the intervals $(a,b),(c,d),$ such that $f(x_1)=x_2,g(y_1) = y_2.$ The map $(x,y) \to (f(x),g(y))$ is then a diffeormorphism of $\mathbb R^2$ onto $\mathbb R^2$ that maps $S$ onto $S,$ is the identity off of a compact subset of $S,$ such that $(x_1,y_1) \to (x_2,y_2).$
Thus we can move points around in any open square whose closure in contained in $U.$ Finitely many iterations of such maps, based on the connectedness of $U,$ should then give the desired result.
