new strategy to handle envelope and idl