We characterize the connected components of the subset CN * of H ∞ formed by the products bh, where b is Carleson-Newman Blaschke product and h ∈ H ∞ is an invertible function. We use this result to show that, except for finite Blaschke products, no inner function in the little Bloch space is in the closure of one of these components. Our main result says that every inner function can be connected with an element of CN * within the set of products uh, where u is inner and h is invertible. We also study some of these issues in the context of Douglas algebras. Problem 1.1. For any inner function u and ε > 0, does there exist an interpolating Blaschke product b such that u − b ∞ < ε? This question was posed in [13] and [5, pp. 420], and it is one of the most important open problems in the area. The following weaker version of Problem 1.1 is also open. Problem 1.2. For any inner function u and ε > 0, does there exist an interpolating Blaschke product b and an invertible function h ∈ H ∞ such that u − bh ∞ < ε? This is really a question of approximation in BMO. Recall that a function f ∈ L 1 (∂D) is in the space BMO if f * = sup 1 |I| I |f − f I | < ∞, where the supremum is taken over all arcs I ⊂ ∂D of the unit circle and f I = |I| −1 I f is the mean of f over the arc I. A classical result by Fefferman and Stein says that a function f ∈ L 1 (∂D) is in BMO if and only if f can be written as f = r +s, where r, s ∈ L ∞ (∂D). Heres means the harmonic conjugate of s. Moreover, f * is comparable to f BM O = inf{ r ∞ + s ∞ }, where the infimum is taken over all possible decompositions f = r +s + c, where c is a constant. It is easy to see that Problem 1.2 has a positive answer if and only if for any inner function u and any ε > 0, there exists an interpolating Blaschke product b such that a suitable branch Arg(u/b) of the argument of the function u(ξ)/b(ξ), ξ ∈ ∂D, satisfies Arg(u/b) BM O ≤ ε.