Build interface dynamically.