I would do keep two lists `construct_inline_exclude = list(exclude)` and append to each of them, passing `construct_inline_exclude` to `construct_instance()`, rather than the list comprehension. A commend as two why we need the two different variables would be helpful.