@evancz on this PR this was previously a function that was extracted out, and you mention it was called in two places. It didn't seem like an efficiency concern based on tracing the system calls, but I cleaned things up anyway so it's clear we're not reading the interfaces twice. Instead of passing the flag indicating whether we're using the Prelude interfaces, I just read the ones that are required here and then pass them to the functions we call later instead of passing the noPrelude flag.