This isn't entirely complete yet, the remaining cases have a slightly changed semantics with the upcoming new system.