made the compiler IDL agnostic