support for fields and better module shim